# # JavaScript syntax highlighting # for MC Editor/CoolEdit # # Authors: # * Vlad Romanenko # * Timur Shemsedinov # * Pavel Roskin # Based on c.syntax # # 2022-08-17 Timur Shemsedinov # * Support latest ECMAScript syntax # * Support ECMAScript global identifiers # * Support node.js specific identifiers # # 2002-09-17 Vlad Romanenko # * More C and Java consistency by Pavel Roskin # * Advanced number highlighting # # 2002-09-16 Vlad Romanenko # * Initial public release # context default #========================= # Keywords keyword whole arguments yellow keyword whole async yellow keyword whole await yellow keyword whole break yellow keyword whole caller yellow keyword whole case yellow keyword whole catch yellow keyword whole class yellow keyword whole const yellow keyword whole constructor yellow keyword whole continue yellow keyword whole debugger yellow keyword whole default yellow keyword whole delete yellow keyword whole do yellow keyword whole else yellow keyword whole export yellow keyword whole extends yellow keyword whole finally yellow keyword whole for yellow keyword whole function yellow keyword whole if yellow keyword whole import yellow keyword whole in yellow keyword whole instanceof yellow keyword whole let yellow keyword whole new yellow keyword whole of yellow keyword whole prototype yellow keyword whole return yellow keyword whole super yellow keyword whole switch yellow keyword whole this yellow keyword whole throw yellow keyword whole try yellow keyword whole typeof yellow keyword whole var yellow keyword whole void yellow keyword whole while yellow keyword whole with yellow keyword whole yield yellow #========================= # Objects keyword whole AbortController yellow keyword whole AbortSignal yellow keyword whole AggregateError yellow keyword whole Array yellow keyword whole ArrayBuffer yellow keyword whole AsyncFunction yellow keyword whole AsyncGenerator yellow keyword whole AsyncGeneratorFunction yellow keyword whole Atomics yellow keyword whole BigInt64Array yellow keyword whole BigInt yellow keyword whole BigUint64Array yellow keyword whole Blob yellowOB keyword whole Boolean yellow keyword whole Buffer yellow keyword whole DataView yellow keyword whole Date yellow keyword whole DOMException yellow keyword whole Error yellow keyword whole EvalError yellow keyword whole Float32Array yellow keyword whole Float64Array yellow keyword whole Function yellow keyword whole Generator yellow keyword whole GeneratorFunction yellow keyword whole global yellow keyword whole globalThis yellow keyword whole Image yellow keyword whole Infinity yellow keyword whole Int16Array yellow keyword whole Int32Array yellow keyword whole Int8Array yellow keyword whole Intl yellow keyword whole JSON yellow keyword whole Map yellow keyword whole Math yellow keyword whole Number yellow keyword whole Object yellow keyword whole Promise yellow keyword whole Promise yellow keyword whole Proxy yellow keyword whole RangeError yellow keyword whole ReferenceError yellow keyword whole Reflect yellow keyword whole RegExp yellow keyword whole Set yellow keyword whole SharedArrayBuffer yellow keyword whole Symbol yellow keyword whole SyntaxError yellow keyword whole TextDecoder yellow keyword whole TypeError yellow keyword whole Uint16Array yellow keyword whole Uint32Array yellow keyword whole Uint8Array yellow keyword whole Uint8ClampedArray yellow keyword whole URIError yellow keyword whole URL yellow keyword whole URLSearchParams yellow keyword whole WeakMap yellow keyword whole WeakSet yellow keyword whole WebAssembly yellow keyword whole window yellow #========================= # Most common functions keyword whole alert yellow keyword whole clearInterval yellow keyword whole clearTimeout yellow keyword whole console yellow keyword whole decodeURIComponent yellow keyword whole decodeURI yellow keyword whole encodeURIComponent yellow keyword whole escape yellow keyword whole eval yellow keyword whole fetch yellow keyword whole isFinite yellow keyword whole isNaN yellow keyword whole module yellow keyword whole parseFloat yellow keyword whole parseInt yellow keyword whole performance yellow keyword whole process yellow keyword whole queueMicrotask yellow keyword whole require yellow keyword whole setImmediate yellow keyword whole setInterval yellow keyword whole setTimeout yellow keyword whole structuredClone yellow keyword whole unescape yellow #========================= # Constants keyword whole true brightgreen keyword whole false brightgreen keyword whole null brightgreen keyword whole undefined yellow keyword whole NaN yellow keyword whole __dirname yellow keyword whole __filename yellow #========================= # Comments keyword /\* brown keyword \*/ brown keyword // brown #========================= # Numbers wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_. keyword whole 0\{xX\}\{0123456789abcdefABCDEF\}\[0123456789abcdefABCDEF\] brightgreen keyword whole \{0123456789\}\[0123456789\] brightgreen keyword whole \[0123456789\]\.\{0123456789\}\[0123456789\] brightgreen keyword whole \{0123456789\}\[0123456789\]\.\[0123456789\] brightgreen keyword whole \{0123456789\}\[0123456789\]\{eE\}\{0123456789\}\[0123456789\] brightgreen keyword whole \{0123456789\}\[0123456789\]\{eE\}\{\-\+\}\{0123456789\}\[0123456789\] brightgreen keyword whole \{0123456789\}\[0123456789\]\.\{0123456789\}\[0123456789\]\{eE\}\{0123456789\}\[0123456789\] brightgreen keyword whole \{0123456789\}\[0123456789\]\.\{0123456789\}\[0123456789\]\{eE\}\{\-\+\}\{0123456789\}\[0123456789\] brightgreen #========================= # Special symbols keyword => brightcyan keyword \. yellow keyword \* yellow keyword \+ yellow keyword - yellow keyword / yellow keyword % yellow keyword = yellow keyword ! yellow keyword & yellow keyword | yellow keyword ^ yellow keyword ~ yellow keyword > yellow keyword < yellow #========================= # Separators keyword { brightcyan keyword } brightcyan keyword ( brightcyan keyword ) brightcyan keyword [ brightcyan keyword ] brightcyan keyword , brightcyan keyword ? brightcyan keyword : brightcyan keyword ; brightmagenta #============================= # Comments context exclusive /\* \*/ brown spellcheck keyword whole BUG brightred keyword whole FixMe brightred keyword whole FIXME brightred keyword whole Note brightred keyword whole NOTE brightred keyword whole ToDo brightred keyword whole TODO brightred keyword !!\[!\] brightred keyword ??\[?\] brightred context exclusive // \n brown spellcheck keyword whole BUG brightred keyword whole FixMe brightred keyword whole FIXME brightred keyword whole Note brightred keyword whole NOTE brightred keyword whole ToDo brightred keyword whole TODO brightred keyword !!\[!\] brightred keyword ??\[?\] brightred #============================= # Strings context " " green spellcheck keyword \\\{\\'"abtnvfr\} brightgreen keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen keyword ' brightgreen context ' ' green spellcheck keyword \\\{\\'"abtnvfr\} brightgreen keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen keyword " brightgreen context ` ` green spellcheck keyword \\\{\\'"abtnvfr\} brightgreen keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen keyword ${*} yellow