Mercurial > yakumo_izuru > aya
comparison vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.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>Fish</name> | |
4 <alias>fish</alias> | |
5 <alias>fishshell</alias> | |
6 <filename>*.fish</filename> | |
7 <filename>*.load</filename> | |
8 <mime_type>application/x-fish</mime_type> | |
9 </config> | |
10 <rules> | |
11 <state name="paren"> | |
12 <rule pattern="\)"> | |
13 <token type="Keyword"/> | |
14 <pop depth="1"/> | |
15 </rule> | |
16 <rule> | |
17 <include state="root"/> | |
18 </rule> | |
19 </state> | |
20 <state name="math"> | |
21 <rule pattern="\)\)"> | |
22 <token type="Keyword"/> | |
23 <pop depth="1"/> | |
24 </rule> | |
25 <rule pattern="[-+*/%^|&]|\*\*|\|\|"> | |
26 <token type="Operator"/> | |
27 </rule> | |
28 <rule pattern="\d+#\d+"> | |
29 <token type="LiteralNumber"/> | |
30 </rule> | |
31 <rule pattern="\d+#(?! )"> | |
32 <token type="LiteralNumber"/> | |
33 </rule> | |
34 <rule pattern="\d+"> | |
35 <token type="LiteralNumber"/> | |
36 </rule> | |
37 <rule> | |
38 <include state="root"/> | |
39 </rule> | |
40 </state> | |
41 <state name="root"> | |
42 <rule> | |
43 <include state="basic"/> | |
44 </rule> | |
45 <rule> | |
46 <include state="interp"/> | |
47 </rule> | |
48 <rule> | |
49 <include state="data"/> | |
50 </rule> | |
51 </state> | |
52 <state name="interp"> | |
53 <rule pattern="\$\(\("> | |
54 <token type="Keyword"/> | |
55 <push state="math"/> | |
56 </rule> | |
57 <rule pattern="\("> | |
58 <token type="Keyword"/> | |
59 <push state="paren"/> | |
60 </rule> | |
61 <rule pattern="\$#?(\w+|.)"> | |
62 <token type="NameVariable"/> | |
63 </rule> | |
64 </state> | |
65 <state name="basic"> | |
66 <rule pattern="(?<=(?:^|\A|;|&&|\|\||\||\b(continue|function|return|switch|begin|while|break|count|false|block|echo|case|true|else|exit|test|set|cdh|and|pwd|for|end|not|if|cd|or)\b)\s*)(continue|function|return|switch|begin|while|break|count|false|block|test|case|true|echo|exit|else|set|cdh|and|pwd|for|end|not|if|cd|or)(?=;?\b)"> | |
67 <token type="Keyword"/> | |
68 </rule> | |
69 <rule pattern="(?<=for\s+\S+\s+)in\b"> | |
70 <token type="Keyword"/> | |
71 </rule> | |
72 <rule pattern="\b(fish_update_completions|fish_command_not_found|fish_breakpoint_prompt|fish_status_to_signal|fish_right_prompt|fish_is_root_user|fish_mode_prompt|fish_vcs_prompt|fish_key_reader|fish_svn_prompt|fish_git_prompt|fish_hg_prompt|fish_greeting|fish_add_path|commandline|fish_prompt|fish_indent|fish_config|fish_pager|breakpoint|fish_title|prompt_pwd|functions|set_color|realpath|funcsave|contains|complete|argparse|fish_opt|history|builtin|getopts|suspend|command|mimedb|printf|ulimit|disown|string|source|funced|status|random|isatty|fishd|prevd|vared|umask|nextd|alias|pushd|emit|jobs|popd|help|psub|wait|fish|read|time|exec|eval|math|trap|type|dirs|dirh|abbr|kill|bind|hash|open|fc|bg|fg)\s*\b(?!\.)"> | |
73 <token type="NameBuiltin"/> | |
74 </rule> | |
75 <rule pattern="#!.*\n"> | |
76 <token type="CommentHashbang"/> | |
77 </rule> | |
78 <rule pattern="#.*\n"> | |
79 <token type="Comment"/> | |
80 </rule> | |
81 <rule pattern="\\[\w\W]"> | |
82 <token type="LiteralStringEscape"/> | |
83 </rule> | |
84 <rule pattern="(\b\w+)(\s*)(=)"> | |
85 <bygroups> | |
86 <token type="NameVariable"/> | |
87 <token type="Text"/> | |
88 <token type="Operator"/> | |
89 </bygroups> | |
90 </rule> | |
91 <rule pattern="[\[\]()={}]"> | |
92 <token type="Operator"/> | |
93 </rule> | |
94 <rule pattern="(?<=\[[^\]]+)\.\.|-(?=[^\[]+\])"> | |
95 <token type="Operator"/> | |
96 </rule> | |
97 <rule pattern="<<-?\s*(\'?)\\?(\w+)[\w\W]+?\2"> | |
98 <token type="LiteralString"/> | |
99 </rule> | |
100 <rule pattern="(?<=set\s+(?:--?[^\d\W][\w-]*\s+)?)\w+"> | |
101 <token type="NameVariable"/> | |
102 </rule> | |
103 <rule pattern="(?<=for\s+)\w[\w-]*(?=\s+in)"> | |
104 <token type="NameVariable"/> | |
105 </rule> | |
106 <rule pattern="(?<=function\s+)\w(?:[^\n])*?(?= *[-\n])"> | |
107 <token type="NameFunction"/> | |
108 </rule> | |
109 <rule pattern="(?<=(?:^|\b(?:and|or|sudo)\b|;|\|\||&&|\||\(|(?:\b\w+\s*=\S+\s)) *)\w[\w-]*"> | |
110 <token type="NameFunction"/> | |
111 </rule> | |
112 </state> | |
113 <state name="data"> | |
114 <rule pattern="(?s)\$?"(\\\\|\\[0-7]+|\\.|[^"\\$])*""> | |
115 <token type="LiteralStringDouble"/> | |
116 </rule> | |
117 <rule pattern="""> | |
118 <token type="LiteralStringDouble"/> | |
119 <push state="string"/> | |
120 </rule> | |
121 <rule pattern="(?s)\$'(\\\\|\\[0-7]+|\\.|[^'\\])*'"> | |
122 <token type="LiteralStringSingle"/> | |
123 </rule> | |
124 <rule pattern="(?s)'.*?'"> | |
125 <token type="LiteralStringSingle"/> | |
126 </rule> | |
127 <rule pattern=";"> | |
128 <token type="Punctuation"/> | |
129 </rule> | |
130 <rule pattern="&&|\|\||&|\||\^|<|>"> | |
131 <token type="Operator"/> | |
132 </rule> | |
133 <rule pattern="\s+"> | |
134 <token type="Text"/> | |
135 </rule> | |
136 <rule pattern="\b\d+\b"> | |
137 <token type="LiteralNumber"/> | |
138 </rule> | |
139 <rule pattern="(?<=\s+)--?[^\d][\w-]*"> | |
140 <token type="NameAttribute"/> | |
141 </rule> | |
142 <rule pattern=".+?"> | |
143 <token type="Text"/> | |
144 </rule> | |
145 </state> | |
146 <state name="string"> | |
147 <rule pattern="""> | |
148 <token type="LiteralStringDouble"/> | |
149 <pop depth="1"/> | |
150 </rule> | |
151 <rule pattern="(?s)(\\\\|\\[0-7]+|\\.|[^"\\$])+"> | |
152 <token type="LiteralStringDouble"/> | |
153 </rule> | |
154 <rule> | |
155 <include state="interp"/> | |
156 </rule> | |
157 </state> | |
158 </rules> | |
159 </lexer> |