(file_progress_show_total): use 'copied_bytes' to show numeric value.
[midnight-commander.git] / misc / syntax / js.syntax
blob5f41798032cfb0e614ce8fcbcf7a3e78688feb69
2 # JavaScript syntax highlighting
3 # for MC Editor/CoolEdit
5 # Authors:
6 #    * Vlad Romanenko <VladRomanenko@ukr.net>
7 #    * Timur Shemsedinov <timur.shemsedinov@gmail.com>
8 #    * Pavel Roskin <proski@gnu.org>
9 # Based on c.syntax
11 # 2022-08-17  Timur Shemsedinov <timur.shemsedinov@gmail.com>
12 #    * Support latest ECMAScript syntax
13 #    * Support ECMAScript global identifiers
14 #    * Support node.js specific identifiers
16 # 2002-09-17  Vlad Romanenko <VladRomanenko@ukr.net>
17 #    * More C and Java consistency by Pavel Roskin <proski@gnu.org>
18 #    * Advanced number highlighting
20 # 2002-09-16  Vlad Romanenko <VladRomanenko@ukr.net>
21 #    * Initial public release
24 context default
26     #=========================
27     # Keywords
28     keyword whole arguments yellow
29     keyword whole async yellow
30     keyword whole await yellow
31     keyword whole break yellow
32     keyword whole caller yellow
33     keyword whole case yellow
34     keyword whole catch yellow
35     keyword whole class yellow
36     keyword whole const yellow
37     keyword whole constructor yellow
38     keyword whole continue yellow
39     keyword whole debugger yellow
40     keyword whole default yellow
41     keyword whole delete yellow
42     keyword whole do yellow
43     keyword whole else yellow
44     keyword whole export yellow
45     keyword whole extends yellow
46     keyword whole finally yellow
47     keyword whole for yellow
48     keyword whole function yellow
49     keyword whole if yellow
50     keyword whole import yellow
51     keyword whole in yellow
52     keyword whole instanceof yellow
53     keyword whole let yellow
54     keyword whole new yellow
55     keyword whole of yellow
56     keyword whole prototype yellow
57     keyword whole return yellow
58     keyword whole super yellow
59     keyword whole switch yellow
60     keyword whole this yellow
61     keyword whole throw yellow
62     keyword whole try yellow
63     keyword whole typeof yellow
64     keyword whole var yellow
65     keyword whole void yellow
66     keyword whole while yellow
67     keyword whole with yellow
68     keyword whole yield yellow
70     #=========================
71     # Objects
72     keyword whole AbortController yellow
73     keyword whole AbortSignal yellow
74     keyword whole AggregateError yellow
75     keyword whole Array yellow
76     keyword whole ArrayBuffer yellow
77     keyword whole AsyncFunction yellow
78     keyword whole AsyncGenerator yellow
79     keyword whole AsyncGeneratorFunction yellow
80     keyword whole Atomics yellow
81     keyword whole BigInt64Array yellow
82     keyword whole BigInt yellow
83     keyword whole BigUint64Array yellow
84     keyword whole Blob yellowOB
85     keyword whole Boolean yellow
86     keyword whole Buffer yellow
87     keyword whole DataView yellow
88     keyword whole Date yellow
89     keyword whole DOMException yellow
90     keyword whole Error yellow
91     keyword whole EvalError yellow
92     keyword whole Float32Array yellow
93     keyword whole Float64Array yellow
94     keyword whole Function yellow
95     keyword whole Generator yellow
96     keyword whole GeneratorFunction yellow
97     keyword whole global yellow
98     keyword whole globalThis yellow
99     keyword whole Image yellow
100     keyword whole Infinity yellow
101     keyword whole Int16Array yellow
102     keyword whole Int32Array yellow
103     keyword whole Int8Array yellow
104     keyword whole Intl yellow
105     keyword whole JSON yellow
106     keyword whole Map yellow
107     keyword whole Math yellow
108     keyword whole Number yellow
109     keyword whole Object yellow
110     keyword whole Promise yellow
111     keyword whole Promise yellow
112     keyword whole Proxy yellow
113     keyword whole RangeError yellow
114     keyword whole ReferenceError yellow
115     keyword whole Reflect yellow
116     keyword whole RegExp yellow
117     keyword whole Set yellow
118     keyword whole SharedArrayBuffer yellow
119     keyword whole Symbol yellow
120     keyword whole SyntaxError yellow
121     keyword whole TextDecoder yellow
122     keyword whole TypeError yellow
123     keyword whole Uint16Array yellow
124     keyword whole Uint32Array yellow
125     keyword whole Uint8Array yellow
126     keyword whole Uint8ClampedArray yellow
127     keyword whole URIError yellow
128     keyword whole URL yellow
129     keyword whole URLSearchParams yellow
130     keyword whole WeakMap yellow
131     keyword whole WeakSet yellow
132     keyword whole WebAssembly yellow
133     keyword whole window yellow
135     #=========================
136     # Most common functions
137     keyword whole alert yellow
138     keyword whole clearInterval yellow
139     keyword whole clearTimeout yellow
140     keyword whole console yellow
141     keyword whole decodeURIComponent yellow
142     keyword whole decodeURI yellow
143     keyword whole encodeURIComponent yellow
144     keyword whole escape yellow
145     keyword whole eval yellow
146     keyword whole fetch yellow
147     keyword whole isFinite yellow
148     keyword whole isNaN yellow
149     keyword whole module yellow
150     keyword whole parseFloat yellow
151     keyword whole parseInt yellow
152     keyword whole performance yellow
153     keyword whole process yellow
154     keyword whole queueMicrotask yellow
155     keyword whole require yellow
156     keyword whole setImmediate yellow
157     keyword whole setInterval yellow
158     keyword whole setTimeout yellow
159     keyword whole structuredClone yellow
160     keyword whole unescape yellow
162     #=========================
163     # Constants
164     keyword whole true brightgreen
165     keyword whole false brightgreen
166     keyword whole null brightgreen
167     keyword whole undefined yellow
168     keyword whole NaN yellow
169     keyword whole __dirname yellow
170     keyword whole __filename yellow
172     #=========================
173     # Comments
174     keyword /\* brown
175     keyword \*/ brown
176     keyword // brown
178     #=========================
179     # Numbers
180     wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_.
182     keyword whole 0\{xX\}\{0123456789abcdefABCDEF\}\[0123456789abcdefABCDEF\] brightgreen
183     keyword whole \{0123456789\}\[0123456789\] brightgreen
184     keyword whole \[0123456789\]\.\{0123456789\}\[0123456789\] brightgreen
185     keyword whole \{0123456789\}\[0123456789\]\.\[0123456789\] brightgreen
186     keyword whole \{0123456789\}\[0123456789\]\{eE\}\{0123456789\}\[0123456789\] brightgreen
187     keyword whole \{0123456789\}\[0123456789\]\{eE\}\{\-\+\}\{0123456789\}\[0123456789\] brightgreen
188     keyword whole \{0123456789\}\[0123456789\]\.\{0123456789\}\[0123456789\]\{eE\}\{0123456789\}\[0123456789\] brightgreen
189     keyword whole \{0123456789\}\[0123456789\]\.\{0123456789\}\[0123456789\]\{eE\}\{\-\+\}\{0123456789\}\[0123456789\] brightgreen
191     #=========================
192     # Special symbols
193     keyword => brightcyan
194     keyword \. yellow
195     keyword \* yellow
196     keyword \+ yellow
197     keyword - yellow
198     keyword / yellow
199     keyword % yellow
200     keyword = yellow
201     keyword ! yellow
202     keyword & yellow
203     keyword | yellow
204     keyword ^ yellow
205     keyword ~ yellow
206     keyword > yellow
207     keyword < yellow
209     #=========================
210     # Separators
211     keyword { brightcyan
212     keyword } brightcyan
213     keyword ( brightcyan
214     keyword ) brightcyan
215     keyword [ brightcyan
216     keyword ] brightcyan
217     keyword , brightcyan
218     keyword ? brightcyan
219     keyword : brightcyan
220     keyword ; brightmagenta
223 #=============================
224 # Comments
226 context exclusive /\* \*/ brown
227     spellcheck
228     keyword whole BUG brightred
229     keyword whole FixMe brightred
230     keyword whole FIXME brightred
231     keyword whole Note brightred
232     keyword whole NOTE brightred
233     keyword whole ToDo brightred
234     keyword whole TODO brightred
235     keyword !!\[!\] brightred
236     keyword ??\[?\] brightred
239 context exclusive // \n brown
240     spellcheck
241     keyword whole BUG brightred
242     keyword whole FixMe brightred
243     keyword whole FIXME brightred
244     keyword whole Note brightred
245     keyword whole NOTE brightred
246     keyword whole ToDo brightred
247     keyword whole TODO brightred
248     keyword !!\[!\] brightred
249     keyword ??\[?\] brightred
252 #=============================
253 # Strings
255 context " " green
256     spellcheck
257     keyword \\\{\\'"abtnvfr\} brightgreen
258     keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen
260     keyword ' brightgreen
262 context ' ' green
263     spellcheck
264     keyword \\\{\\'"abtnvfr\} brightgreen
265     keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen
267     keyword " brightgreen
269 context ` ` green
270     spellcheck
271     keyword \\\{\\'"abtnvfr\} brightgreen
272     keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen
273     keyword ${*} yellow