...

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

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

     1<lexer>
     2  <config>
     3    <name>ISCdhcpd</name>
     4    <alias>iscdhcpd</alias>
     5    <filename>*.conf</filename>
     6  </config>
     7  <rules>
     8    <state name="interpol">
     9      <rule pattern="\$[{(]">
    10        <token type="LiteralStringInterpol"/>
    11        <push/>
    12      </rule>
    13      <rule pattern="[})]">
    14        <token type="LiteralStringInterpol"/>
    15        <pop depth="1"/>
    16      </rule>
    17      <rule pattern="[^${()}]+">
    18        <token type="LiteralStringInterpol"/>
    19      </rule>
    20    </state>
    21    <state name="root">
    22      <rule pattern="#.*?\n">
    23        <token type="Comment"/>
    24      </rule>
    25      <rule pattern="(hardware|packet|leased-address|host-decl-name|lease-time|max-lease-time|client-state|config-option|option|filename|next-server|allow|deny|match|ignore)\b">
    26         <token type="Keyword"/>
    27      </rule>
    28      <rule pattern="(include|group|host|subnet|subnet6|netmask|class|subclass|pool|failover|include|shared-network|range|range6|prefix6)\b">
    29         <token type="KeywordType"/>
    30      </rule>
    31      <rule pattern="(on|off|true|false|none)\b">
    32        <token type="KeywordConstant"/>
    33      </rule>
    34      <rule pattern="(if|elsif|else)\b">
    35        <token type="Keyword"/>
    36      </rule>
    37      <rule pattern="(exists|known|static)\b">
    38        <token type="KeywordConstant"/>
    39      </rule>
    40      <rule pattern="(and|or|not)\b">
    41        <token type="OperatorWord"/>
    42      </rule>
    43      <rule pattern="(==|!=|~=|~~|=)">
    44        <token type="Operator"/>
    45      </rule>
    46      <rule pattern="[{},;\)]">
    47        <token type="Punctuation"/>
    48      </rule>
    49      <rule pattern="\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d{1,2}">
    50        <token type="LiteralNumberFloat"/>
    51      </rule>
    52      <rule pattern="\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}">
    53        <token type="LiteralNumberFloat"/>
    54      </rule>
    55      <rule pattern="[a-fA-F0-9]{1,2}:[a-fA-F0-9]{1,2}:[a-fA-F0-9]{1,2}:[a-fA-F0-9]{1,2}:[a-fA-F0-9]{1,2}:[a-fA-F0-9]{1,2}">
    56        <token type="LiteralNumberHex"/>
    57      </rule>
    58      <rule pattern="&#34;">
    59        <token type="LiteralString"/>
    60        <push state="doublequotestring"/>
    61      </rule>
    62      <rule pattern="([\w\-.]+)(\s*)(\()">
    63        <bygroups>
    64          <token type="NameFunction"/>
    65          <token type="Text"/>
    66          <token type="Punctuation"/>
    67        </bygroups>
    68      </rule>
    69      <rule pattern="[\w\-.]+">
    70        <token type="NameVariable"/>
    71      </rule>
    72      <rule pattern="\s+">
    73        <token type="Text"/>
    74      </rule>
    75    </state>
    76    <state name="doublequotestring">
    77      <rule pattern="\$[{(]">
    78        <token type="LiteralStringInterpol"/>
    79        <push state="interpol"/>
    80      </rule>
    81      <rule pattern="\\.">
    82        <token type="LiteralStringEscape"/>
    83      </rule>
    84      <rule pattern="&#34;">
    85        <token type="LiteralString"/>
    86        <pop depth="1"/>
    87      </rule>
    88      <rule pattern="\n">
    89        <token type="LiteralString"/>
    90      </rule>
    91      <rule pattern=".">
    92        <token type="LiteralString"/>
    93      </rule>
    94    </state>
    95  </rules>
    96</lexer>

View as plain text