...

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

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

     1<lexer>
     2  <config>
     3    <name>Sieve</name>
     4    <alias>sieve</alias>
     5    <filename>*.siv</filename>
     6    <filename>*.sieve</filename>
     7  </config>
     8  <rules>
     9    <state name="root">
    10      <rule pattern="\s+">
    11        <token type="Text"/>
    12      </rule>
    13      <rule pattern="[();,{}\[\]]">
    14        <token type="Punctuation"/>
    15      </rule>
    16      <rule pattern="(?i)require">
    17        <token type="KeywordNamespace"/>
    18      </rule>
    19      <rule pattern="(?i)(:)(addresses|all|contains|content|create|copy|comparator|count|days|detail|domain|fcc|flags|from|handle|importance|is|localpart|length|lowerfirst|lower|matches|message|mime|options|over|percent|quotewildcard|raw|regex|specialuse|subject|text|under|upperfirst|upper|value)">
    20        <bygroups>
    21          <token type="NameTag"/>
    22          <token type="NameTag"/>
    23        </bygroups>
    24      </rule>
    25      <rule pattern="(?i)(address|addflag|allof|anyof|body|discard|elsif|else|envelope|ereject|exists|false|fileinto|if|hasflag|header|keep|notify_method_capability|notify|not|redirect|reject|removeflag|setflag|size|spamtest|stop|string|true|vacation|virustest)">
    26        <token type="NameBuiltin"/>
    27      </rule>
    28      <rule pattern="(?i)set">
    29        <token type="KeywordDeclaration"/>
    30      </rule>
    31      <rule pattern="([0-9.]+)([kmgKMG])?">
    32        <bygroups>
    33          <token type="LiteralNumber"/>
    34          <token type="LiteralNumber"/>
    35        </bygroups>
    36      </rule>
    37      <rule pattern="#.*$">
    38        <token type="CommentSingle"/>
    39      </rule>
    40      <rule pattern="/\*.*\*/">
    41        <token type="CommentMultiline"/>
    42      </rule>
    43      <rule pattern="&#34;[^&#34;]*?&#34;">
    44        <token type="LiteralString"/>
    45      </rule>
    46      <rule pattern="text:">
    47        <token type="NameTag"/>
    48        <push state="text"/>
    49      </rule>
    50    </state>
    51    <state name="text">
    52      <rule pattern="[^.].*?\n">
    53        <token type="LiteralString"/>
    54      </rule>
    55      <rule pattern="^\.">
    56        <token type="Punctuation"/>
    57        <pop depth="1"/>
    58      </rule>
    59    </state>
    60  </rules>
    61</lexer>

View as plain text