...

Text file src/github.com/alecthomas/chroma/v2/lexers/embedded/angular2.xml

Documentation: github.com/alecthomas/chroma/v2/lexers/embedded

     1<lexer>
     2  <config>
     3    <name>Angular2</name>
     4    <alias>ng2</alias>
     5  </config>
     6  <rules>
     7    <state name="attr">
     8      <rule pattern="&#34;.*?&#34;">
     9        <token type="LiteralString"/>
    10        <pop depth="1"/>
    11      </rule>
    12      <rule pattern="&#39;.*?&#39;">
    13        <token type="LiteralString"/>
    14        <pop depth="1"/>
    15      </rule>
    16      <rule pattern="[^\s&gt;]+">
    17        <token type="LiteralString"/>
    18        <pop depth="1"/>
    19      </rule>
    20    </state>
    21    <state name="root">
    22      <rule pattern="[^{([*#]+">
    23        <token type="Other"/>
    24      </rule>
    25      <rule pattern="(\{\{)(\s*)">
    26        <bygroups>
    27          <token type="CommentPreproc"/>
    28          <token type="Text"/>
    29        </bygroups>
    30        <push state="ngExpression"/>
    31      </rule>
    32      <rule pattern="([([]+)([\w:.-]+)([\])]+)(\s*)(=)(\s*)">
    33        <bygroups>
    34          <token type="Punctuation"/>
    35          <token type="NameAttribute"/>
    36          <token type="Punctuation"/>
    37          <token type="Text"/>
    38          <token type="Operator"/>
    39          <token type="Text"/>
    40        </bygroups>
    41        <push state="attr"/>
    42      </rule>
    43      <rule pattern="([([]+)([\w:.-]+)([\])]+)(\s*)">
    44        <bygroups>
    45          <token type="Punctuation"/>
    46          <token type="NameAttribute"/>
    47          <token type="Punctuation"/>
    48          <token type="Text"/>
    49        </bygroups>
    50      </rule>
    51      <rule pattern="([*#])([\w:.-]+)(\s*)(=)(\s*)">
    52        <bygroups>
    53          <token type="Punctuation"/>
    54          <token type="NameAttribute"/>
    55          <token type="Punctuation"/>
    56          <token type="Operator"/>
    57        </bygroups>
    58        <push state="attr"/>
    59      </rule>
    60      <rule pattern="([*#])([\w:.-]+)(\s*)">
    61        <bygroups>
    62          <token type="Punctuation"/>
    63          <token type="NameAttribute"/>
    64          <token type="Punctuation"/>
    65        </bygroups>
    66      </rule>
    67    </state>
    68    <state name="ngExpression">
    69      <rule pattern="\s+(\|\s+)?">
    70        <token type="Text"/>
    71      </rule>
    72      <rule pattern="\}\}">
    73        <token type="CommentPreproc"/>
    74        <pop depth="1"/>
    75      </rule>
    76      <rule pattern=":?(true|false)">
    77        <token type="LiteralStringBoolean"/>
    78      </rule>
    79      <rule pattern=":?&#34;(\\\\|\\&#34;|[^&#34;])*&#34;">
    80        <token type="LiteralStringDouble"/>
    81      </rule>
    82      <rule pattern=":?&#39;(\\\\|\\&#39;|[^&#39;])*&#39;">
    83        <token type="LiteralStringSingle"/>
    84      </rule>
    85      <rule pattern="[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|0[xX][0-9a-fA-F]+[Ll]?">
    86        <token type="LiteralNumber"/>
    87      </rule>
    88      <rule pattern="[a-zA-Z][\w-]*(\(.*\))?">
    89        <token type="NameVariable"/>
    90      </rule>
    91      <rule pattern="\.[\w-]+(\(.*\))?">
    92        <token type="NameVariable"/>
    93      </rule>
    94      <rule pattern="(\?)(\s*)([^}\s]+)(\s*)(:)(\s*)([^}\s]+)(\s*)">
    95        <bygroups>
    96          <token type="Operator"/>
    97          <token type="Text"/>
    98          <token type="LiteralString"/>
    99          <token type="Text"/>
   100          <token type="Operator"/>
   101          <token type="Text"/>
   102          <token type="LiteralString"/>
   103          <token type="Text"/>
   104        </bygroups>
   105      </rule>
   106    </state>
   107  </rules>
   108</lexer>

View as plain text