Mercurial > yakumo_izuru > aya
comparison vendor/github.com/alecthomas/chroma/v2/lexers/embedded/snobol.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 |
comparison
equal
deleted
inserted
replaced
65:6d985efa0f7a | 66:787b5ee0289d |
---|---|
1 <lexer> | |
2 <config> | |
3 <name>Snobol</name> | |
4 <alias>snobol</alias> | |
5 <filename>*.snobol</filename> | |
6 <mime_type>text/x-snobol</mime_type> | |
7 </config> | |
8 <rules> | |
9 <state name="heredoc"> | |
10 <rule pattern=".*\n"> | |
11 <token type="LiteralStringHeredoc"/> | |
12 </rule> | |
13 </state> | |
14 <state name="root"> | |
15 <rule pattern="\*.*\n"> | |
16 <token type="Comment"/> | |
17 </rule> | |
18 <rule pattern="[+.] "> | |
19 <token type="Punctuation"/> | |
20 <push state="statement"/> | |
21 </rule> | |
22 <rule pattern="-.*\n"> | |
23 <token type="Comment"/> | |
24 </rule> | |
25 <rule pattern="END\s*\n"> | |
26 <token type="NameLabel"/> | |
27 <push state="heredoc"/> | |
28 </rule> | |
29 <rule pattern="[A-Za-z$][\w$]*"> | |
30 <token type="NameLabel"/> | |
31 <push state="statement"/> | |
32 </rule> | |
33 <rule pattern="\s+"> | |
34 <token type="Text"/> | |
35 <push state="statement"/> | |
36 </rule> | |
37 </state> | |
38 <state name="statement"> | |
39 <rule pattern="\s*\n"> | |
40 <token type="Text"/> | |
41 <pop depth="1"/> | |
42 </rule> | |
43 <rule pattern="\s+"> | |
44 <token type="Text"/> | |
45 </rule> | |
46 <rule pattern="(?<=[^\w.])(LT|LE|EQ|NE|GE|GT|INTEGER|IDENT|DIFFER|LGT|SIZE|REPLACE|TRIM|DUPL|REMDR|DATE|TIME|EVAL|APPLY|OPSYN|LOAD|UNLOAD|LEN|SPAN|BREAK|ANY|NOTANY|TAB|RTAB|REM|POS|RPOS|FAIL|FENCE|ABORT|ARB|ARBNO|BAL|SUCCEED|INPUT|OUTPUT|TERMINAL)(?=[^\w.])"> | |
47 <token type="NameBuiltin"/> | |
48 </rule> | |
49 <rule pattern="[A-Za-z][\w.]*"> | |
50 <token type="Name"/> | |
51 </rule> | |
52 <rule pattern="\*\*|[?$.!%*/#+\-@|&\\=]"> | |
53 <token type="Operator"/> | |
54 </rule> | |
55 <rule pattern=""[^"]*""> | |
56 <token type="LiteralString"/> | |
57 </rule> | |
58 <rule pattern="'[^']*'"> | |
59 <token type="LiteralString"/> | |
60 </rule> | |
61 <rule pattern="[0-9]+(?=[^.EeDd])"> | |
62 <token type="LiteralNumberInteger"/> | |
63 </rule> | |
64 <rule pattern="[0-9]+(\.[0-9]*)?([EDed][-+]?[0-9]+)?"> | |
65 <token type="LiteralNumberFloat"/> | |
66 </rule> | |
67 <rule pattern=":"> | |
68 <token type="Punctuation"/> | |
69 <push state="goto"/> | |
70 </rule> | |
71 <rule pattern="[()<>,;]"> | |
72 <token type="Punctuation"/> | |
73 </rule> | |
74 </state> | |
75 <state name="goto"> | |
76 <rule pattern="\s*\n"> | |
77 <token type="Text"/> | |
78 <pop depth="2"/> | |
79 </rule> | |
80 <rule pattern="\s+"> | |
81 <token type="Text"/> | |
82 </rule> | |
83 <rule pattern="F|S"> | |
84 <token type="Keyword"/> | |
85 </rule> | |
86 <rule pattern="(\()([A-Za-z][\w.]*)(\))"> | |
87 <bygroups> | |
88 <token type="Punctuation"/> | |
89 <token type="NameLabel"/> | |
90 <token type="Punctuation"/> | |
91 </bygroups> | |
92 </rule> | |
93 </state> | |
94 </rules> | |
95 </lexer> |