1. <lexer>
    
  2.   <config>
    
  3.     <name>Julia</name>
    
  4.     <alias>julia</alias>
    
  5.     <alias>jl</alias>
    
  6.     <filename>*.jl</filename>
    
  7.     <mime_type>text/x-julia</mime_type>
    
  8.     <mime_type>application/x-julia</mime_type>
    
  9.   </config>
    
  10.   <rules>
    
  11.     <state name="string">
    
  12.       <rule pattern="(&#34;)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)|\d+)?">
    
  13.         <bygroups>
    
  14.           <token type="LiteralString"/>
    
  15.           <token type="LiteralStringAffix"/>
    
  16.         </bygroups>
    
  17.         <pop depth="1"/>
    
  18.       </rule>
    
  19.       <rule pattern="\\([\\&#34;\&#39;$nrbtfav]|(x|u|U)[a-fA-F0-9]+|\d+)">
    
  20.         <token type="LiteralStringEscape"/>
    
  21.       </rule>
    
  22.       <rule>
    
  23.         <include state="interp"/>
    
  24.       </rule>
    
  25.       <rule pattern="%[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]">
    
  26.         <token type="LiteralStringInterpol"/>
    
  27.       </rule>
    
  28.       <rule pattern="[^&#34;$%\\]+">
    
  29.         <token type="LiteralString"/>
    
  30.       </rule>
    
  31.       <rule pattern=".">
    
  32.         <token type="LiteralString"/>
    
  33.       </rule>
    
  34.     </state>
    
  35.     <state name="curly">
    
  36.       <rule pattern="\{">
    
  37.         <token type="Punctuation"/>
    
  38.         <push/>
    
  39.       </rule>
    
  40.       <rule pattern="\}">
    
  41.         <token type="Punctuation"/>
    
  42.         <pop depth="1"/>
    
  43.       </rule>
    
  44.       <rule pattern="(?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)">
    
  45.         <token type="KeywordType"/>
    
  46.       </rule>
    
  47.       <rule>
    
  48.         <include state="root"/>
    
  49.       </rule>
    
  50.     </state>
    
  51.     <state name="rawstring">
    
  52.       <rule pattern="&#34;">
    
  53.         <token type="LiteralString"/>
    
  54.         <pop depth="1"/>
    
  55.       </rule>
    
  56.       <rule pattern="\\&#34;">
    
  57.         <token type="LiteralStringEscape"/>
    
  58.       </rule>
    
  59.       <rule pattern="([^&#34;\\]|\\[^&#34;])+">
    
  60.         <token type="LiteralString"/>
    
  61.       </rule>
    
  62.     </state>
    
  63.     <state name="tqcommand">
    
  64.       <rule pattern="(```)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)|\d+)?">
    
  65.         <bygroups>
    
  66.           <token type="LiteralStringBacktick"/>
    
  67.           <token type="LiteralStringAffix"/>
    
  68.         </bygroups>
    
  69.         <pop depth="1"/>
    
  70.       </rule>
    
  71.       <rule pattern="\\\$">
    
  72.         <token type="LiteralStringEscape"/>
    
  73.       </rule>
    
  74.       <rule>
    
  75.         <include state="interp"/>
    
  76.       </rule>
    
  77.       <rule pattern="[^\\`$]+">
    
  78.         <token type="LiteralStringBacktick"/>
    
  79.       </rule>
    
  80.       <rule pattern=".">
    
  81.         <token type="LiteralStringBacktick"/>
    
  82.       </rule>
    
  83.     </state>
    
  84.     <state name="in-intp">
    
  85.       <rule pattern="\(">
    
  86.         <token type="Punctuation"/>
    
  87.         <push/>
    
  88.       </rule>
    
  89.       <rule pattern="\)">
    
  90.         <token type="Punctuation"/>
    
  91.         <pop depth="1"/>
    
  92.       </rule>
    
  93.       <rule>
    
  94.         <include state="root"/>
    
  95.       </rule>
    
  96.     </state>
    
  97.     <state name="tqstring">
    
  98.       <rule pattern="(&#34;&#34;&#34;)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)|\d+)?">
    
  99.         <bygroups>
    
  100.           <token type="LiteralString"/>
    
  101.           <token type="LiteralStringAffix"/>
    
  102.         </bygroups>
    
  103.         <pop depth="1"/>
    
  104.       </rule>
    
  105.       <rule pattern="\\([\\&#34;\&#39;$nrbtfav]|(x|u|U)[a-fA-F0-9]+|\d+)">
    
  106.         <token type="LiteralStringEscape"/>
    
  107.       </rule>
    
  108.       <rule>
    
  109.         <include state="interp"/>
    
  110.       </rule>
    
  111.       <rule pattern="[^&#34;$%\\]+">
    
  112.         <token type="LiteralString"/>
    
  113.       </rule>
    
  114.       <rule pattern=".">
    
  115.         <token type="LiteralString"/>
    
  116.       </rule>
    
  117.     </state>
    
  118.     <state name="interp">
    
  119.       <rule pattern="\$(?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)">
    
  120.         <token type="LiteralStringInterpol"/>
    
  121.       </rule>
    
  122.       <rule pattern="(\$)(\()">
    
  123.         <bygroups>
    
  124.           <token type="LiteralStringInterpol"/>
    
  125.           <token type="Punctuation"/>
    
  126.         </bygroups>
    
  127.         <push state="in-intp"/>
    
  128.       </rule>
    
  129.     </state>
    
  130.     <state name="tqregex">
    
  131.       <rule pattern="(&#34;&#34;&#34;)([imsxa]*)?">
    
  132.         <bygroups>
    
  133.           <token type="LiteralStringRegex"/>
    
  134.           <token type="LiteralStringAffix"/>
    
  135.         </bygroups>
    
  136.         <pop depth="1"/>
    
  137.       </rule>
    
  138.       <rule pattern="[^&#34;]+">
    
  139.         <token type="LiteralStringRegex"/>
    
  140.       </rule>
    
  141.     </state>
    
  142.     <state name="root">
    
  143.       <rule pattern="\n">
    
  144.         <token type="Text"/>
    
  145.       </rule>
    
  146.       <rule pattern="[^\S\n]+">
    
  147.         <token type="Text"/>
    
  148.       </rule>
    
  149.       <rule pattern="#=">
    
  150.         <token type="CommentMultiline"/>
    
  151.         <push state="blockcomment"/>
    
  152.       </rule>
    
  153.       <rule pattern="#.*$">
    
  154.         <token type="Comment"/>
    
  155.       </rule>
    
  156.       <rule pattern="[\[\](),;]">
    
  157.         <token type="Punctuation"/>
    
  158.       </rule>
    
  159.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))(\s*)(:)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))">
    
  160.         <bygroups>
    
  161.           <token type="Name"/>
    
  162.           <token type="Text"/>
    
  163.           <token type="Operator"/>
    
  164.           <token type="Name"/>
    
  165.         </bygroups>
    
  166.       </rule>
    
  167.       <rule pattern="(?&lt;![\]):&lt;&gt;\d.])(:(?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))">
    
  168.         <token type="LiteralStringSymbol"/>
    
  169.       </rule>
    
  170.       <rule pattern="(?&lt;=::)(\s*)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))\b(?![(\[])">
    
  171.         <bygroups>
    
  172.           <token type="Text"/>
    
  173.           <token type="KeywordType"/>
    
  174.         </bygroups>
    
  175.       </rule>
    
  176.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))(\s*)([&lt;&gt;]:)(\s*)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))\b(?![(\[])">
    
  177.         <bygroups>
    
  178.           <token type="KeywordType"/>
    
  179.           <token type="Text"/>
    
  180.           <token type="Operator"/>
    
  181.           <token type="Text"/>
    
  182.           <token type="KeywordType"/>
    
  183.         </bygroups>
    
  184.       </rule>
    
  185.       <rule pattern="([&lt;&gt;]:)(\s*)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))\b(?![(\[])">
    
  186.         <bygroups>
    
  187.           <token type="Operator"/>
    
  188.           <token type="Text"/>
    
  189.           <token type="KeywordType"/>
    
  190.         </bygroups>
    
  191.       </rule>
    
  192.       <rule pattern="\b((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))(\s*)([&lt;&gt;]:)">
    
  193.         <bygroups>
    
  194.           <token type="KeywordType"/>
    
  195.           <token type="Text"/>
    
  196.           <token type="Operator"/>
    
  197.         </bygroups>
    
  198.       </rule>
    
  199.       <rule pattern="(&gt;&gt;&gt;=|&lt;--&gt;|≕&#39;|⊻=|⇁|⥯|⥮|⥥|⥣|⥡|⥠|⥝|⥜|⥙|//=|⥘|⥕|÷=|⥔|&lt;&lt;=|&gt;&gt;=|↑|⥑|⥏|↓|≔|⩴|√|⥍|⥌|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⭄|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|↽|⇀|⥉|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|--&gt;|&lt;--|∛|⤓|⤒|⤋|≥|⤊|≤|⤉|===|≡|⤈|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⋷|⩚|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⟱|⟰|⇵|↓|…|⁝|⋮|⋱|⋰|⋯|↑|&gt;&gt;&gt;|⨟|⟗|⊕|⊖|⊞|⊟|⟖|∪|∨|⊔|⟕|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|⨝|▷|⌿|⊍|⫛|⩠|⋅|∘|⩟|⩞|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⩕|⩘|⋸|⩜|∜|\^=|:=|\$=|÷|¬|\|\||±|\+\+|&amp;&amp;|¦|//|&gt;&gt;|&lt;&lt;|::|-=|\*=|\|&gt;|&lt;\||&gt;:|&lt;:|!=|==|&lt;=|&gt;=|/=|%=|-&gt;|=&gt;|\\=|&amp;=|\|=|×|\+=|:|&lt;|\+|\^|\\|=|-|\$|~|\||\*|\?|!|/|%|&amp;|&gt;)[²³¹ʰʲʳʷʸˡˢˣᴬᴮᴰᴱᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾᴿᵀᵁᵂᵃᵇᵈᵉᵍᵏᵐᵒᵖᵗᵘᵛᵝᵞᵟᵠᵡᵢᵣᵤᵥᵦᵧᵨᵩᵪᶜᶠᶥᶦᶫᶰᶸᶻᶿ′″‴‵‶‷⁗⁰ⁱ⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₕₖₗₘₙₚₛₜⱼⱽ]*">
    
  200.         <token type="Operator"/>
    
  201.       </rule>
    
  202.       <rule pattern="(\.&gt;&gt;&gt;=|\.&lt;--&gt;|\.≕&#39;|\.⊻=|\.⇚|\.//=|\.⥯|\.⥮|\.÷=|\.⥥|\.&lt;&lt;=|\.&gt;&gt;=|\.↑|\.⥣|\.⥡|\.↓|\.≔|\.⩴|\.√|\.⥠|\.⥝|\.→|\.↔|\.↚|\.↛|\.↞|\.↠|\.↢|\.↣|\.↦|\.↤|\.↮|\.⇎|\.⇍|\.⇏|\.⇐|\.⇒|\.⇔|\.⇴|\.⇶|\.⇷|\.⇸|\.⇹|\.⇺|\.⇻|\.⇼|\.⇽|\.⇾|\.⇿|\.⟵|\.⟶|\.⟷|\.⟹|\.⟺|\.⟻|\.⟼|\.⟽|\.⟾|\.⟿|\.⤀|\.⤁|\.⤂|\.⤃|\.⤄|\.⤅|\.⤆|\.⤇|\.⤌|\.⤍|\.⤎|\.⤏|\.⤐|\.⤑|\.⤔|\.⤕|\.⤖|\.⤗|\.⤘|\.⤝|\.⤞|\.⤟|\.⤠|\.⥄|\.⥅|\.⥆|\.⥇|\.⥈|\.⥊|\.⥋|\.⥎|\.⥐|\.⥒|\.⥓|\.⥖|\.⥗|\.⥚|\.⥛|\.⥞|\.⥟|\.⥢|\.⥤|\.⥦|\.⥧|\.⥨|\.⥩|\.⥪|\.⥫|\.⥬|\.⥭|\.⥰|\.⧴|\.⬱|\.⬰|\.⬲|\.⬳|\.⬴|\.⬵|\.⬶|\.⬷|\.⬸|\.⬹|\.⬺|\.⬻|\.⬼|\.⬽|\.⬾|\.⬿|\.⭀|\.⭁|\.⭂|\.⭃|\.⭄|\.⭇|\.⭈|\.⭉|\.⭊|\.⭋|\.⭌|\.←|\.→|\.⇜|\.⇝|\.↜|\.↝|\.↩|\.↪|\.↫|\.↬|\.↼|\.↽|\.⇀|\.⇁|\.⇄|\.⇆|\.⇇|\.⇉|\.⇋|\.⇌|\.⥜|\.⇛|\.⇠|\.⇢|\.↷|\.↶|\.↺|\.↻|\.--&gt;|\.&lt;--|\.∛|\.⥙|\.⥘|\.⥕|\.≥|\.⥔|\.≤|\.⥑|\.===|\.≡|\.⥏|\.≠|\.!==|\.≢|\.∈|\.∉|\.∋|\.∌|\.⊆|\.⊈|\.⊂|\.⊄|\.⊊|\.∝|\.∊|\.∍|\.∥|\.∦|\.∷|\.∺|\.∻|\.∽|\.∾|\.≁|\.≃|\.≂|\.≄|\.≅|\.≆|\.≇|\.≈|\.≉|\.≊|\.≋|\.≌|\.≍|\.≎|\.≐|\.≑|\.≒|\.≓|\.≖|\.≗|\.≘|\.≙|\.≚|\.≛|\.≜|\.≝|\.≞|\.≟|\.≣|\.≦|\.≧|\.≨|\.≩|\.≪|\.≫|\.≬|\.≭|\.≮|\.≯|\.≰|\.≱|\.≲|\.≳|\.≴|\.≵|\.≶|\.≷|\.≸|\.≹|\.≺|\.≻|\.≼|\.≽|\.≾|\.≿|\.⊀|\.⊁|\.⊃|\.⊅|\.⊇|\.⊉|\.⊋|\.⊏|\.⊐|\.⊑|\.⊒|\.⊜|\.⊩|\.⊬|\.⊮|\.⊰|\.⊱|\.⊲|\.⊳|\.⊴|\.⊵|\.⊶|\.⊷|\.⋍|\.⋐|\.⋑|\.⋕|\.⋖|\.⋗|\.⋘|\.⋙|\.⋚|\.⋛|\.⋜|\.⋝|\.⋞|\.⋟|\.⋠|\.⋡|\.⋢|\.⋣|\.⋤|\.⋥|\.⋦|\.⋧|\.⋨|\.⋩|\.⋪|\.⋫|\.⋬|\.⋭|\.⋲|\.⋳|\.⋴|\.⋵|\.⋶|\.⋷|\.⋸|\.⋹|\.⋺|\.⋻|\.⟕|\.⋽|\.⋾|\.⋿|\.⟈|\.⟉|\.⟒|\.⦷|\.⧀|\.⧁|\.⧡|\.⧣|\.⧤|\.⧥|\.⩦|\.⩧|\.⩪|\.⩫|\.⩬|\.⩭|\.⩮|\.⩯|\.⩰|\.⩱|\.⩲|\.⩳|\.⩵|\.⩶|\.⩷|\.⩸|\.⩹|\.⩺|\.⩻|\.⩼|\.⩽|\.⩾|\.⩿|\.⪀|\.⪁|\.⪂|\.⪃|\.⪄|\.⪅|\.⪆|\.⪇|\.⪈|\.⪉|\.⪊|\.⪋|\.⪌|\.⪍|\.⪎|\.⪏|\.⪐|\.⪑|\.⪒|\.⪓|\.⪔|\.⪕|\.⪖|\.⪗|\.⪘|\.⪙|\.⪚|\.⪛|\.⪜|\.⪝|\.⪞|\.⪟|\.⪠|\.⪡|\.⪢|\.⪣|\.⪤|\.⪥|\.⪦|\.⪧|\.⪨|\.⪩|\.⪪|\.⪫|\.⪬|\.⪭|\.⪮|\.⪯|\.⪰|\.⪱|\.⪲|\.⪳|\.⪴|\.⪵|\.⪶|\.⪷|\.⪸|\.⪹|\.⪺|\.⪻|\.⪼|\.⪽|\.⪾|\.⪿|\.⫀|\.⫁|\.⫂|\.⫃|\.⫄|\.⫅|\.⫆|\.⫇|\.⫈|\.⫉|\.⫊|\.⫋|\.⫌|\.⫍|\.⫎|\.⫏|\.⫐|\.⫑|\.⫒|\.⫓|\.⫔|\.⫕|\.⫖|\.⫗|\.⫘|\.⫙|\.⫷|\.⫸|\.⫹|\.⫺|\.⊢|\.⊣|\.⟂|\.⥍|\.⥌|\.⥉|\.⤓|\.…|\.⁝|\.⋮|\.⋱|\.⋰|\.⋯|\.⤒|\.⤋|\.⤊|\.⤉|\.⊕|\.⊖|\.⊞|\.⊟|\.⤈|\.∪|\.∨|\.⊔|\.⟱|\.∓|\.∔|\.∸|\.≏|\.⊎|\.⊻|\.⊽|\.⋎|\.⋓|\.⧺|\.⧻|\.⨈|\.⨢|\.⨣|\.⨤|\.⨥|\.⨦|\.⨧|\.⨨|\.⨩|\.⨪|\.⨫|\.⨬|\.⨭|\.⨮|\.⨹|\.⨺|\.⩁|\.⩂|\.⩅|\.⩊|\.⩌|\.⩏|\.⩐|\.⩒|\.⩔|\.⩖|\.⩗|\.⩛|\.⩝|\.⩡|\.⩢|\.⩣|\.⟰|\.⇵|\.⌿|\.↓|\.↑|\.&gt;&gt;&gt;|\.⋅|\.∘|\.⨟|\.⟗|\.∩|\.∧|\.⊗|\.⊘|\.⊙|\.⊚|\.⊛|\.⊠|\.⊡|\.⊓|\.∗|\.∙|\.∤|\.⅋|\.≀|\.⊼|\.⋄|\.⋆|\.⋇|\.⋉|\.⋊|\.⋋|\.⋌|\.⋏|\.⋒|\.⟑|\.⦸|\.⦼|\.⦾|\.⦿|\.⧶|\.⧷|\.⨇|\.⨰|\.⨱|\.⨲|\.⨳|\.⨴|\.⨵|\.⨶|\.⨷|\.⨸|\.⨻|\.⨼|\.⨽|\.⩀|\.⩃|\.⩄|\.⩋|\.⩍|\.⩎|\.⩑|\.⩓|\.⩕|\.⩘|\.⩚|\.⩜|\.⩞|\.⩟|\.⩠|\.⫛|\.⊍|\.▷|\.⨝|\.⋼|\.⟖|\.∜|\.=&gt;|\.//|\.&gt;&gt;|\.&lt;&lt;|\.\+=|\.×|\.-=|\.÷|\.¬|\.\*=|\./=|\.\+\+|\.\\=|\.¦|\.\^=|\.!=|\.\|&gt;|\.&lt;\||\.&gt;:|\.&lt;:|\.±|\.==|\.&lt;=|\.&gt;=|\.%=|\.&amp;=|\.\|=|\.=|\.~|\.&gt;|\.\\|\.&lt;|\.-|\.\||\.\^|\.\*|\.!|\./|\.%|\.&amp;|\.\+)[²³¹ʰʲʳʷʸˡˢˣᴬᴮᴰᴱᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾᴿᵀᵁᵂᵃᵇᵈᵉᵍᵏᵐᵒᵖᵗᵘᵛᵝᵞᵟᵠᵡᵢᵣᵤᵥᵦᵧᵨᵩᵪᶜᶠᶥᶦᶫᶰᶸᶻᶿ′″‴‵‶‷⁗⁰ⁱ⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₕₖₗₘₙₚₛₜⱼⱽ]*">
    
  203.         <token type="Operator"/>
    
  204.       </rule>
    
  205.       <rule pattern="(\.\.\.|\.\.)">
    
  206.         <token type="Operator"/>
    
  207.       </rule>
    
  208.       <rule pattern="&#39;(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,3}|\\u[a-fA-F0-9]{1,4}|\\U[a-fA-F0-9]{1,6}|[^\\\&#39;\n])&#39;">
    
  209.         <token type="LiteralStringChar"/>
    
  210.       </rule>
    
  211.       <rule pattern="(?&lt;=[.\w)\]])(\&#39;[²³¹ʰʲʳʷʸˡˢˣᴬᴮᴰᴱᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾᴿᵀᵁᵂᵃᵇᵈᵉᵍᵏᵐᵒᵖᵗᵘᵛᵝᵞᵟᵠᵡᵢᵣᵤᵥᵦᵧᵨᵩᵪᶜᶠᶥᶦᶫᶰᶸᶻᶿ′″‴‵‶‷⁗⁰ⁱ⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₕₖₗₘₙₚₛₜⱼⱽ]*)+">
    
  212.         <token type="Operator"/>
    
  213.       </rule>
    
  214.       <rule pattern="(raw)(&#34;&#34;&#34;)">
    
  215.         <bygroups>
    
  216.           <token type="LiteralStringAffix"/>
    
  217.           <token type="LiteralString"/>
    
  218.         </bygroups>
    
  219.         <push state="tqrawstring"/>
    
  220.       </rule>
    
  221.       <rule pattern="(raw)(&#34;)">
    
  222.         <bygroups>
    
  223.           <token type="LiteralStringAffix"/>
    
  224.           <token type="LiteralString"/>
    
  225.         </bygroups>
    
  226.         <push state="rawstring"/>
    
  227.       </rule>
    
  228.       <rule pattern="(r)(&#34;&#34;&#34;)">
    
  229.         <bygroups>
    
  230.           <token type="LiteralStringAffix"/>
    
  231.           <token type="LiteralStringRegex"/>
    
  232.         </bygroups>
    
  233.         <push state="tqregex"/>
    
  234.       </rule>
    
  235.       <rule pattern="(r)(&#34;)">
    
  236.         <bygroups>
    
  237.           <token type="LiteralStringAffix"/>
    
  238.           <token type="LiteralStringRegex"/>
    
  239.         </bygroups>
    
  240.         <push state="regex"/>
    
  241.       </rule>
    
  242.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))?(&#34;&#34;&#34;)">
    
  243.         <bygroups>
    
  244.           <token type="LiteralStringAffix"/>
    
  245.           <token type="LiteralString"/>
    
  246.         </bygroups>
    
  247.         <push state="tqstring"/>
    
  248.       </rule>
    
  249.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))?(&#34;)">
    
  250.         <bygroups>
    
  251.           <token type="LiteralStringAffix"/>
    
  252.           <token type="LiteralString"/>
    
  253.         </bygroups>
    
  254.         <push state="string"/>
    
  255.       </rule>
    
  256.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))?(```)">
    
  257.         <bygroups>
    
  258.           <token type="LiteralStringAffix"/>
    
  259.           <token type="LiteralStringBacktick"/>
    
  260.         </bygroups>
    
  261.         <push state="tqcommand"/>
    
  262.       </rule>
    
  263.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))?(`)">
    
  264.         <bygroups>
    
  265.           <token type="LiteralStringAffix"/>
    
  266.           <token type="LiteralStringBacktick"/>
    
  267.         </bygroups>
    
  268.         <push state="command"/>
    
  269.       </rule>
    
  270.       <rule pattern="((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))(\{)">
    
  271.         <bygroups>
    
  272.           <token type="KeywordType"/>
    
  273.           <token type="Punctuation"/>
    
  274.         </bygroups>
    
  275.         <push state="curly"/>
    
  276.       </rule>
    
  277.       <rule pattern="(where)(\s+)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))">
    
  278.         <bygroups>
    
  279.           <token type="Keyword"/>
    
  280.           <token type="Text"/>
    
  281.           <token type="KeywordType"/>
    
  282.         </bygroups>
    
  283.       </rule>
    
  284.       <rule pattern="(\{)">
    
  285.         <token type="Punctuation"/>
    
  286.         <push state="curly"/>
    
  287.       </rule>
    
  288.       <rule pattern="(abstract[ \t]+type|primitive[ \t]+type|mutable[ \t]+struct|struct)([\s()]+)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*))">
    
  289.         <bygroups>
    
  290.           <token type="Keyword"/>
    
  291.           <token type="Text"/>
    
  292.           <token type="KeywordType"/>
    
  293.         </bygroups>
    
  294.       </rule>
    
  295.       <rule pattern="@(?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)">
    
  296.         <token type="NameDecorator"/>
    
  297.       </rule>
    
  298.       <rule pattern="@(&gt;&gt;&gt;=|&lt;--&gt;|≕&#39;|⊻=|↽|⥯|⥮|⥥|⥣|⥡|⥠|⥝|⥜|⥙|⥘|⥕|//=|⥔|⥑|÷=|⥏|&lt;&lt;=|&gt;&gt;=|↑|⥍|⥌|↓|≔|⩴|√|⥉|⤓|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⭄|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|⤒|⇀|⇁|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|--&gt;|&lt;--|∛|⤋|⤊|⤉|≥|⤈|≤|⟱|===|≡|⟰|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⩕|⋸|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⇵|↓|↑|&gt;&gt;&gt;|…|⁝|⋮|⋱|⋰|⋯|⨟|⟗|⟖|⟕|⊕|⊖|⊞|⊟|⨝|∪|∨|⊔|▷|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|⊍|⫛|⌿|⩠|⩟|⩞|⋅|∘|⩜|⩚|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⋷|⩘|∜|\\=|:=|\$=|÷|¬|\|\||±|\+\+|&amp;&amp;|¦|::|\.\.|//|&gt;&gt;|&lt;&lt;|\|&gt;|\+=|&lt;\||&gt;:|&lt;:|!=|==|&lt;=|&gt;=|-=|\*=|-&gt;|=&gt;|/=|&amp;=|\|=|%=|\^=|×|~|&gt;|&lt;|\^|=|\.|\+|-|\$|:|\||\*|\?|!|/|%|&amp;|\\)[²³¹ʰʲʳʷʸˡˢˣᴬᴮᴰᴱᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾᴿᵀᵁᵂᵃᵇᵈᵉᵍᵏᵐᵒᵖᵗᵘᵛᵝᵞᵟᵠᵡᵢᵣᵤᵥᵦᵧᵨᵩᵪᶜᶠᶥᶦᶫᶰᶸᶻᶿ′″‴‵‶‷⁗⁰ⁱ⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₕₖₗₘₙₚₛₜⱼⱽ]*">
    
  299.         <token type="NameDecorator"/>
    
  300.       </rule>
    
  301.       <rule pattern="(baremodule|continue|function|finally|module|import|elseif|return|export|global|macro|catch|where|begin|const|ccall|using|quote|break|while|local|else|let|isa|try|for|end|in|if|do)\b">
    
  302.         <token type="Keyword"/>
    
  303.       </rule>
    
  304.       <rule pattern="(ProcessFailedException|InvalidStateException|ReadOnlyMemoryError|TaskFailedException|InterruptException|StackOverflowError|CompositeException|AbstractIrrational|SubstitutionString|ExponentialBackOff|UndefKeywordError|CapturedException|DimensionMismatch|AbstractUnitRange|SegmentationFault|PermutedDimsArray|AbstractVecOrMat|UndefInitializer|CartesianIndices|OutOfMemoryError|ComposedFunction|MissingException|StringIndexError|PartialQuickSort|AbstractDisplay|AbstractPattern|StridedVecOrMat|AbstractChannel|LineNumberNode|AbstractVector|CartesianIndex|AssertionError|IndexCartesian|ErrorException|AbstractMatrix|AbstractString|OverflowError|UndefRefError|LinearIndices|DenseVecOrMat|ArgumentError|StridedVector|StridedMatrix|AbstractArray|AbstractRange|ReentrantLock|AbstractMatch|AbstractFloat|VersionNumber|UndefVarError|RoundingMode|StridedArray|StepRangeLen|OrdinalRange|AbstractChar|AbstractDict|InexactError|DenseVector|WeakKeyDict|MethodError|AbstractSet|IndexLinear|BoundsError|TextDisplay|DomainError|DenseMatrix|SystemError|DivideError|NamedTuple|IndexStyle|Cptrdiff_t|Cuintmax_t|DenseArray|ComplexF16|Irrational|VecElement|Culonglong|RegexMatch|ComplexF32|ComplexF64|BitMatrix|BitVector|Exception|GlobalRef|UnitRange|QuoteNode|TypeError|IOContext|LoadError|Clonglong|Condition|StepRange|Cintmax_t|SubString|InitError|Cssize_t|VecOrMat|BigFloat|Unsigned|UnionAll|Rational|EOFError|BitArray|IOStream|IOBuffer|KeyError|LinRange|Cwchar_t|SubArray|Function|DataType|Cwstring|Csize_t|Float64|Missing|Float32|Complex|Cstring|Float16|Nothing|Cdouble|Cushort|UInt128|Integer|WeakRef|Channel|TypeVar|Cshort|Cfloat|NTuple|IdDict|BitSet|BigInt|UInt16|Symbol|UInt32|Vector|Signed|Vararg|Culong|String|Int128|Number|UInt64|Cuchar|Matrix|Module|Method|Tuple|Int16|Colon|Cuint|UInt8|Regex|Clong|Cvoid|Cchar|Int32|RawFD|Array|Union|Int64|Timer|Pipe|Type|HTML|Text|UInt|MIME|Char|Cint|Some|Expr|Real|Enum|Pair|Dims|Int8|Dict|Task|Bool|Any|Cmd|Int|Set|Ref|Ptr|Val|IO)\b">
    
  305.         <token type="KeywordType"/>
    
  306.       </rule>
    
  307.       <rule pattern="(RoundNearestTiesAway|RoundNearestTiesUp|InsertionSort|RoundFromZero|PROGRAM_FILE|RoundNearest|RoundToZero|ENDIAN_BOM|DEPOT_PATH|RoundDown|QuickSort|MergeSort|LOAD_PATH|VERSION|missing|nothing|devnull|RoundUp|C_NULL|stdout|stderr|NaN32|NaN16|Inf64|Inf32|Inf16|false|stdin|undef|NaN64|true|ARGS|ℯ|NaN|Inf|ENV|im|π|pi)\b">
    
  308.         <token type="NameBuiltin"/>
    
  309.       </rule>
    
  310.       <rule pattern="(?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)">
    
  311.         <token type="Name"/>
    
  312.       </rule>
    
  313.       <rule pattern="(\d+((_\d+)+)?\.(?!\.)(\d+((_\d+)+)?)?|\.\d+((_\d+)+)?)([eEf][+-]?[0-9]+)?">
    
  314.         <token type="LiteralNumberFloat"/>
    
  315.       </rule>
    
  316.       <rule pattern="\d+((_\d+)+)?[eEf][+-]?[0-9]+">
    
  317.         <token type="LiteralNumberFloat"/>
    
  318.       </rule>
    
  319.       <rule pattern="0x[a-fA-F0-9]+((_[a-fA-F0-9]+)+)?(\.([a-fA-F0-9]+((_[a-fA-F0-9]+)+)?)?)?p[+-]?\d+">
    
  320.         <token type="LiteralNumberFloat"/>
    
  321.       </rule>
    
  322.       <rule pattern="0b[01]+((_[01]+)+)?">
    
  323.         <token type="LiteralNumberBin"/>
    
  324.       </rule>
    
  325.       <rule pattern="0o[0-7]+((_[0-7]+)+)?">
    
  326.         <token type="LiteralNumberOct"/>
    
  327.       </rule>
    
  328.       <rule pattern="0x[a-fA-F0-9]+((_[a-fA-F0-9]+)+)?">
    
  329.         <token type="LiteralNumberHex"/>
    
  330.       </rule>
    
  331.       <rule pattern="\d+((_\d+)+)?">
    
  332.         <token type="LiteralNumberInteger"/>
    
  333.       </rule>
    
  334.       <rule pattern="(\.)">
    
  335.         <token type="Operator"/>
    
  336.       </rule>
    
  337.     </state>
    
  338.     <state name="blockcomment">
    
  339.       <rule pattern="[^=#]">
    
  340.         <token type="CommentMultiline"/>
    
  341.       </rule>
    
  342.       <rule pattern="#=">
    
  343.         <token type="CommentMultiline"/>
    
  344.         <push/>
    
  345.       </rule>
    
  346.       <rule pattern="=#">
    
  347.         <token type="CommentMultiline"/>
    
  348.         <pop depth="1"/>
    
  349.       </rule>
    
  350.       <rule pattern="[=#]">
    
  351.         <token type="CommentMultiline"/>
    
  352.       </rule>
    
  353.     </state>
    
  354.     <state name="command">
    
  355.       <rule pattern="(`)((?:[a-zA-Z_¡-􏿿][a-zA-Z_0-9!¡-􏿿]*)|\d+)?">
    
  356.         <bygroups>
    
  357.           <token type="LiteralStringBacktick"/>
    
  358.           <token type="LiteralStringAffix"/>
    
  359.         </bygroups>
    
  360.         <pop depth="1"/>
    
  361.       </rule>
    
  362.       <rule pattern="\\[`$]">
    
  363.         <token type="LiteralStringEscape"/>
    
  364.       </rule>
    
  365.       <rule>
    
  366.         <include state="interp"/>
    
  367.       </rule>
    
  368.       <rule pattern="[^\\`$]+">
    
  369.         <token type="LiteralStringBacktick"/>
    
  370.       </rule>
    
  371.       <rule pattern=".">
    
  372.         <token type="LiteralStringBacktick"/>
    
  373.       </rule>
    
  374.     </state>
    
  375.     <state name="tqrawstring">
    
  376.       <rule pattern="&#34;&#34;&#34;">
    
  377.         <token type="LiteralString"/>
    
  378.         <pop depth="1"/>
    
  379.       </rule>
    
  380.       <rule pattern="([^&#34;]|&#34;[^&#34;][^&#34;])+">
    
  381.         <token type="LiteralString"/>
    
  382.       </rule>
    
  383.     </state>
    
  384.     <state name="regex">
    
  385.       <rule pattern="(&#34;)([imsxa]*)?">
    
  386.         <bygroups>
    
  387.           <token type="LiteralStringRegex"/>
    
  388.           <token type="LiteralStringAffix"/>
    
  389.         </bygroups>
    
  390.         <pop depth="1"/>
    
  391.       </rule>
    
  392.       <rule pattern="\\&#34;">
    
  393.         <token type="LiteralStringRegex"/>
    
  394.       </rule>
    
  395.       <rule pattern="[^\\&#34;]+">
    
  396.         <token type="LiteralStringRegex"/>
    
  397.       </rule>
    
  398.     </state>
    
  399.   </rules>
    
  400. </lexer>