X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=runtime%2Fsyntax%2Fjson.yaml;h=c590bd388d00db9416db1090e5b10dcbd147a856;hb=4f35eed615cfc534b013f93f9527fc38c5c18490;hp=bc8d55b332577261f555e9808007fb93f3e8bad6;hpb=b977bf5cca84f7dc762fe8d9967831502ee5cc87;p=micro.git diff --git a/runtime/syntax/json.yaml b/runtime/syntax/json.yaml index bc8d55b3..c590bd38 100644 --- a/runtime/syntax/json.yaml +++ b/runtime/syntax/json.yaml @@ -1,18 +1,27 @@ filetype: json -detect: +detect: filename: "\\.json$" header: "^\\{$" rules: - - constant.number: "\\b[\\-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\\b" - - constant.number: "\\b[\\-+]?([0-9]+\\.[0-9]*|[0-9]*\\.[0-9]+)([EePp][+\\-]?[0-9]+)?[fFlL]?" - - constant.number: "\\b[\\-+]?([0-9]+[EePp][+\\-]?[0-9]+)[fFlL]?" - - constant.bool: "\\b(null)\\b" - - constant.bool.true: "\\b(true)\\b" - - constant.bool.false: "\\b(false)\\b" - - constant.string: "\"(\\\\.|[^\"])*\"|'(\\\\.|[^'])*'" + - constant.number: "\\b[-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\\b" + - constant.number: "\\b[-+]?([0-9]+\\.[0-9]*|[0-9]*\\.[0-9]+)([EePp][+-]?[0-9]+)?[fFlL]?" + - constant.number: "\\b[-+]?([0-9]+[EePp][+-]?[0-9]+)[fFlL]?" + - constant: "\\b(null)\\b" + - constant: "\\b(true|false)\\b" + - constant.string: + start: "\"" + end: "\"" + skip: "\\\\." + rules: + - constant.specialChar: "\\\\." + - constant.string: + start: "'" + end: "'" + skip: "\\\\." + rules: + - constant.specialChar: "\\\\." + - statement: "\\\"(\\\\\"|[^\"])*\\\"[[:space:]]*:\" \"'(\\'|[^'])*'[[:space:]]*:" - constant: "\\\\u[0-9a-fA-F]{4}|\\\\[bfnrt'\"/\\\\]" - - indent-char.whitespace: "[[:space:]]+$" - - indent-char: " + +| + +"