9 lines
29 KiB
JavaScript
9 lines
29 KiB
JavaScript
|
import javascript from './javascript.mjs'
|
||
|
|
||
|
const lang = Object.freeze(JSON.parse("{\"displayName\":\"CoffeeScript\",\"name\":\"coffee\",\"patterns\":[{\"include\":\"#jsx\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.new.coffee\"},\"2\":{\"name\":\"storage.type.class.coffee\"},\"3\":{\"name\":\"entity.name.type.instance.coffee\"},\"4\":{\"name\":\"entity.name.type.instance.coffee\"}},\"match\":\"(new)\\\\s+(?:(?:(class)\\\\s+(\\\\w+(?:\\\\.\\\\w*)*)?)|(\\\\w+(?:\\\\.\\\\w*)*))\",\"name\":\"meta.class.instance.constructor.coffee\"},{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.coffee\"}},\"end\":\"'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.coffee\"}},\"name\":\"string.quoted.single.heredoc.coffee\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.escape.backslash.coffee\"}},\"match\":\"(\\\\\\\\).\",\"name\":\"constant.character.escape.backslash.coffee\"}]},{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.coffee\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.coffee\"}},\"name\":\"string.quoted.double.heredoc.coffee\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.escape.backslash.coffee\"}},\"match\":\"(\\\\\\\\).\",\"name\":\"constant.character.escape.backslash.coffee\"},{\"include\":\"#interpolated_coffee\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.coffee\"},\"2\":{\"name\":\"source.js.embedded.coffee\",\"patterns\":[{\"include\":\"source.js\"}]},\"3\":{\"name\":\"punctuation.definition.string.end.coffee\"}},\"match\":\"(`)(.*)(`)\",\"name\":\"string.quoted.script.coffee\"},{\"begin\":\"(?<!#)###(?!#)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.coffee\"}},\"end\":\"###\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.coffee\"}},\"name\":\"comment.block.coffee\",\"patterns\":[{\"match\":\"(?<=^|\\\\s)@\\\\w*(?=\\\\s)\",\"name\":\"storage.type.annotation.coffee\"}]},{\"begin\":\"#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.coffee\"}},\"end\":\"$\",\"name\":\"comment.line.number-sign.coffee\"},{\"begin\":\"///\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.coffee\"}},\"end\":\"(///)[gimuy]*\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.coffee\"}},\"name\":\"string.regexp.multiline.coffee\",\"patterns\":[{\"include\":\"#heregexp\"}]},{\"begin\":\"(?<![\\\\w$])(/)(?=(?![/*+?])(.+)(/)[gimuy]*(?!\\\\s*[\\\\w$/(]))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.coffee\"}},\"end\":\"(/)[gimuy]*(?!\\\\s*[\\\\w$/(])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.coffee\"}},\"name\":\"string.regexp.coffee\",\"patterns\":[{\"include\":\"source.js.regexp\"}]},{\"match\":\"\\\\b(?<![\\\\.\\\\$])(break|by|catch|continue|else|finally|for|in|of|if|return|switch|then|throw|try|unless|when|while|until|loop|do|export|import|default|from|as|yield|async|await|(?<=for)\\\\s+own)(?!\\\\s*:)\\\\b\",\"name\":\"keyword.control.coffee\"},{\"match\":\"\\\\b(?<![\\\\.\\\\$])(delete|instanceof|new|typeof)(?!\\\\s*:)\\\\b\",\"name\":\"keyword.operator.$1.coffee\"},{\"match\":\"\\\\b(?<![\\\\.\\\\$])(case|function|var|void|with|const|let|enum|native|__hasProp|__extends|__slice|__bind|__indexOf|implements|interface|package|private|protected|public|static)(?!\\\\s*:)\\\\b\",\"name\":\"keyword.reserved.coffee\"},{\"begin\":\"(?<=\\\\s|^)((@)?[a-zA-Z_$][\\\\w$]*)\\\\s*([:=])\\\\s*(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.coffee\"},\"2\":{\"name\":\"variable.other.readwrite.instance.coffee\"},\"3\":{\"name\":\"keyword.operator.assignment.coffee\"}},\"end\":\"[=-]>\",\"endCaptures\":{\"0\":{\"name\":\"storage.type.function.coffee\"}},\"name\":\"meta.function.coffee\",\"patterns\":[{\"include\":\"#function_params\"}]},{\"begin\":\"(?<=\\\\s|^)(?:((')([^']*?)('))|((\\\")([^\\\"]*?)(\\\")))\\\\s*([:=])\\\\s*(?=(\\
|
||
|
|
||
|
export default [
|
||
|
...javascript,
|
||
|
lang
|
||
|
]
|