annotate vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml @ 66:787b5ee0289d draft

Use vendored modules Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author yakumo.izuru
date Sun, 23 Jul 2023 13:18:53 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
1 <lexer>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
2 <config>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
3 <name>Awk</name>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
4 <alias>awk</alias>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
5 <alias>gawk</alias>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
6 <alias>mawk</alias>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
7 <alias>nawk</alias>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
8 <filename>*.awk</filename>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
9 <mime_type>application/x-awk</mime_type>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
10 </config>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
11 <rules>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
12 <state name="root">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
13 <rule pattern="^(?=\s|/)">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
14 <token type="Text"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
15 <push state="slashstartsregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
16 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
17 <rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
18 <include state="commentsandwhitespace"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
19 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
20 <rule pattern="\+\+|--|\|\||&amp;&amp;|in\b|\$|!?~|\|&amp;|(\*\*|[-&lt;&gt;+*%\^/!=|])=?">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
21 <token type="Operator"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
22 <push state="slashstartsregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
23 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
24 <rule pattern="[{(\[;,]">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
25 <token type="Punctuation"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
26 <push state="slashstartsregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
27 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
28 <rule pattern="[})\].]">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
29 <token type="Punctuation"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
30 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
31 <rule pattern="(break|continue|do|while|exit|for|if|else|return|switch|case|default)\b">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
32 <token type="Keyword"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
33 <push state="slashstartsregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
34 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
35 <rule pattern="function\b">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
36 <token type="KeywordDeclaration"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
37 <push state="slashstartsregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
38 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
39 <rule pattern="(atan2|cos|exp|int|log|rand|sin|sqrt|srand|gensub|gsub|index|length|match|split|patsplit|sprintf|sub|substr|tolower|toupper|close|fflush|getline|next(file)|print|printf|strftime|systime|mktime|delete|system|strtonum|and|compl|lshift|or|rshift|asorti?|isarray|bindtextdomain|dcn?gettext|@(include|load|namespace))\b">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
40 <token type="KeywordReserved"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
41 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
42 <rule pattern="(ARGC|ARGIND|ARGV|BEGIN(FILE)?|BINMODE|CONVFMT|ENVIRON|END(FILE)?|ERRNO|FIELDWIDTHS|FILENAME|FNR|FPAT|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS|PROCINFO|RLENGTH|RS|RSTART|RT|SUBSEP|TEXTDOMAIN)\b">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
43 <token type="NameBuiltin"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
44 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
45 <rule pattern="[@$a-zA-Z_]\w*">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
46 <token type="NameOther"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
47 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
48 <rule pattern="[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
49 <token type="LiteralNumberFloat"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
50 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
51 <rule pattern="0x[0-9a-fA-F]+">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
52 <token type="LiteralNumberHex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
53 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
54 <rule pattern="[0-9]+">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
55 <token type="LiteralNumberInteger"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
56 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
57 <rule pattern="&#34;(\\\\|\\&#34;|[^&#34;])*&#34;">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
58 <token type="LiteralStringDouble"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
59 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
60 <rule pattern="&#39;(\\\\|\\&#39;|[^&#39;])*&#39;">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
61 <token type="LiteralStringSingle"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
62 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
63 </state>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
64 <state name="commentsandwhitespace">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
65 <rule pattern="\s+">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
66 <token type="Text"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
67 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
68 <rule pattern="#.*$">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
69 <token type="CommentSingle"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
70 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
71 </state>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
72 <state name="slashstartsregex">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
73 <rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
74 <include state="commentsandwhitespace"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
75 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
76 <rule pattern="/(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/\B">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
77 <token type="LiteralStringRegex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
78 <pop depth="1"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
79 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
80 <rule pattern="(?=/)">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
81 <token type="Text"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
82 <push state="#pop" state="badregex"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
83 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
84 <rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
85 <pop depth="1"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
86 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
87 </state>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
88 <state name="badregex">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
89 <rule pattern="\n">
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
90 <token type="Text"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
91 <pop depth="1"/>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
92 </rule>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
93 </state>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
94 </rules>
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
95 </lexer>