32 lines
13 KiB
JavaScript
32 lines
13 KiB
JavaScript
|
const lang = Object.freeze({ "displayName": "Hjson", "fileTypes": ["hjson"], "foldingStartMarker": "(?x: # turn on extended mode\n ^ # a line beginning with\n \\s* # some optional space\n [{\\[] # the start of an object or array\n (?! # but not followed by\n .* # whatever\n [}\\]] # and the close of an object or array\n ,? # an optional comma\n \\s* # some optional space\n $ # at the end of the line\n )\n | # ...or...\n [{\\[] # the start of an object or array\n \\s* # some optional space\n $ # at the end of the line\n )", "foldingStopMarker": "(?x: # turn on extended mode\n ^ # a line beginning with\n \\s* # some optional space\n [}\\]] # and the close of an object or array\n )", "name": "hjson", "patterns": [{ "include": "#comments" }, { "include": "#value" }, { "match": "[^\\s]", "name": "invalid.illegal.excess-characters.hjson" }], "repository": { "array": { "begin": "\\[", "beginCaptures": { "0": { "name": "punctuation.definition.array.begin.hjson" } }, "end": "(\\])(?:\\s*([^,\\s]+))?", "endCaptures": { "1": { "name": "punctuation.definition.array.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "meta.structure.array.hjson", "patterns": [{ "include": "#arrayContent" }] }, "arrayArray": { "begin": "\\[", "beginCaptures": { "0": { "name": "punctuation.definition.array.begin.hjson" } }, "end": "(\\])(?:\\s*([^,\\s\\]]+))?", "endCaptures": { "1": { "name": "punctuation.definition.array.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "meta.structure.array.hjson", "patterns": [{ "include": "#arrayContent" }] }, "arrayConstant": { "captures": { "1": { "name": "constant.language.hjson" }, "2": { "name": "punctuation.separator.array.after-const.hjson" } }, "match": "\\b(true|false|null)(?:[\\t ]*(?=,)|[\\t ]*(?:(,)[\\t ]*)?(?=$|#|/\\*|//|\\]))" }, "arrayContent": { "name": "meta.structure.array.hjson", "patterns": [{ "include": "#comments" }, { "include": "#arrayValue" }, { "begin": "(?<=\\[)|,", "beginCaptures": { "1": { "name": "punctuation.separator.dictionary.pair.hjson" } }, "end": "(?=[^\\s,/#])|(?=/[^/*])", "patterns": [{ "include": "#comments" }, { "match": ",", "name": "invalid.illegal.extra-comma.hjson" }] }, { "match": ",", "name": "punctuation.separator.array.hjson" }, { "match": "[^\\s\\]]", "name": "invalid.illegal.expected-array-separator.hjson" }] }, "arrayJstring": { "patterns": [{ "begin": '"', "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": '(")(?:\\s*((?:[^,\\s\\]#/]|/[^/*])+))?', "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.double.hjson", "patterns": [{ "include": "#jstringDoubleContent" }] }, { "begin": "'", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": "(')(?:\\s*((?:[^,\\s\\]#/]|/[^/*])+))?", "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.single.hjson", "patterns": [{ "include": "#jstringSingleContent" }] }] }, "arrayMstring": { "begin": "'''", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": "(''')(?:\\s*((?:[^,\\s\\]#/]|/[^/*])+))?", "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.multiline.hjson" }, "arrayNumber": { "captures": { "1": { "name": "constant.numeric.hjson" }, "2": { "name": "punctuation.separator.array.after-num.hjson" } }, "match": "(-?(?:0|(?:[1-9]\\d*))(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)(?:[\\t ]*(?=,)|[\\t ]*(?:(,)[\\t ]*)?(?=$|#|/\\*|//|\\]))" }, "arrayObject": { "begin": "\\{", "beginCaptures": { "0": { "name": "punctuation.definition.dictionary.begin.hjson" } }, "end": "(\\}|(?<=\\}))(?:\\s*([^,\\s\\]]+))?", "endCaptures": { "1": { "name": "punctuation.definition.dictionary.end.hjson" }, "2": { "name": "invalid.ill
|
||
|
(
|
||
|
(?:[^:,\\{\\}\\[\\]\\s"'][^:,\\{\\}\\[\\]\\s]*) |
|
||
|
(?:
|
||
|
'
|
||
|
(?:
|
||
|
[^\\\\'] |
|
||
|
(\\\\(?:["'\\\\\\/bfnrt]|u[0-9a-fA-F]{4})) |
|
||
|
(\\\\.)
|
||
|
)*
|
||
|
'
|
||
|
) |
|
||
|
(?:
|
||
|
"
|
||
|
(?:
|
||
|
[^\\\\"] |
|
||
|
(\\\\(?:["'\\\\\\/bfnrt]|u[0-9a-fA-F]{4})) |
|
||
|
(\\\\.)
|
||
|
)*
|
||
|
"
|
||
|
)
|
||
|
)
|
||
|
\\s*
|
||
|
(?!\\n)
|
||
|
([,\\{\\}\\[\\]]*)
|
||
|
)`, "beginCaptures": { "0": { "name": "meta.structure.key-value.begin.hjson" }, "1": { "name": "support.type.property-name.hjson" }, "2": { "name": "constant.character.escape.hjson" }, "3": { "name": "invalid.illegal.unrecognized-string-escape.hjson" }, "4": { "name": "constant.character.escape.hjson" }, "5": { "name": "invalid.illegal.unrecognized-string-escape.hjson" }, "6": { "name": "invalid.illegal.separator.hjson" }, "7": { "name": "invalid.illegal.property-name.hjson" } }, "end": "(?<!^|:)\\s*\\n|(?=})|(,)", "endCaptures": { "1": { "name": "punctuation.separator.dictionary.pair.hjson" } }, "patterns": [{ "include": "#commentsNewline" }, { "include": "#keyValue" }, { "match": "[^\\s]", "name": "invalid.illegal.object-property.hjson" }] }, "keyValue": { "begin": "(?x:\n\\s*\n(:)\n\\s*\n([,\\}\\]]*)\n)", "beginCaptures": { "1": { "name": "punctuation.separator.dictionary.key-value.hjson" }, "2": { "name": "invalid.illegal.object-property.hjson" } }, "end": "(?<!^)\\s*(?=\\n)|(?=[},])", "name": "meta.structure.key-value.hjson", "patterns": [{ "include": "#comments" }, { "match": "^\\s+" }, { "include": "#objectValue" }, { "captures": { "1": { "name": "invalid.illegal.object-property.closing-bracket.hjson" } }, "match": "^\\s*(\\})" }, { "match": "[^\\s]", "name": "invalid.illegal.object-property.hjson" }] }, "mstring": { "begin": "'''", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": "(''')(?:\\s*((?:[^\\s#/]|/[^/*]).*)$)?", "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.multiline.hjson" }, "number": { "captures": { "1": { "name": "constant.numeric.hjson" } }, "match": "(-?(?:0|(?:[1-9]\\d*))(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)[\\t ]*(?=$|#|/\\*|//|\\])" }, "object": { "begin": "\\{", "beginCaptures": { "0": { "name": "punctuation.definition.dictionary.begin.hjson" } }, "end": "(\\}|(?<=\\}))(?:\\s*([^,\\s]+))?", "endCaptures": { "1": { "name": "punctuation.definition.dictionary.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "meta.structure.dictionary.hjson", "patterns": [{ "include": "#objectContent" }] }, "objectArray": { "begin": "\\[", "beginCaptures": { "0": { "name": "punctuation.definition.array.begin.hjson" } }, "end": "(\\])(?:\\s*([^,\\s\\}]+))?", "endCaptures": { "1": { "name": "punctuation.definition.array.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "meta.structure.array.hjson", "patterns": [{ "include": "#arrayContent" }] }, "objectConstant": { "captures": { "1": { "name": "constant.language.hjson" }, "2": { "name": "punctuation.separator.dictionary.pair.after-const.hjson" } }, "match": "\\b(true|false|null)(?:[\\t ]*(?=,)|[\\t ]*(?:(,)[\\t ]*)?(?=$|#|/\\*|//|\\}))" }, "objectContent": { "patterns": [{ "include": "#comments" }, { "include": "#key" }, { "match": ":[.|\\s]", "name": "invalid.illegal.object-property.hjson" }, { "begin": "(?<=\\{|,)|,", "beginCaptures": { "1": { "name": "punctuation.separator.dictionary.pair.hjson" } }, "end": "(?=[^\\s,/#])|(?=/[^/*])", "patterns": [{ "include": "#comments" }, { "match": ",", "name": "invalid.illegal.extra-comma.hjson" }] }, { "match": "[^\\s]", "name": "invalid.illegal.object-property.hjson" }] }, "objectJstring": { "patterns": [{ "begin": '"', "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": '(")(?:\\s*((?:[^,\\s\\}#/]|/[^/*])+))?', "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.double.hjson", "patterns": [{ "include": "#jstringDoubleContent" }] }, { "begin": "'", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.hjson" } }, "end": "(')(?:\\s*((?:[^,\\s\\}#/]|/[^/*])+))?", "endCaptures": { "1": { "name": "punctuation.definition.string.end.hjson" }, "2": { "name": "invalid.illegal.value.hjson" } }, "name": "string.quoted.single.hjson", "patterns": [{ "include": "#jstringSingleContent" }] }] }, "objectMstr
|
||
|
var hjson = [
|
||
|
lang
|
||
|
];
|
||
|
|
||
|
export { hjson as default };
|