2017-02-18 20:17:07 +00:00
|
|
|
filetype: json
|
|
|
|
|
|
2017-03-21 19:07:39 +00:00
|
|
|
detect:
|
2017-02-18 20:17:07 +00:00
|
|
|
filename: "\\.json$"
|
2024-03-23 20:44:27 +00:00
|
|
|
header: "^\\{$"
|
2017-02-18 20:17:07 +00:00
|
|
|
|
|
|
|
|
rules:
|
2017-03-21 19:07:39 +00:00
|
|
|
- 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"
|
2024-03-22 16:56:09 +00:00
|
|
|
- constant.string:
|
2017-03-21 19:07:39 +00:00
|
|
|
start: "\""
|
2017-03-28 00:53:08 +00:00
|
|
|
end: "\""
|
2017-03-29 13:45:16 +00:00
|
|
|
skip: "\\\\."
|
2017-03-21 19:07:39 +00:00
|
|
|
rules:
|
|
|
|
|
- constant.specialChar: "\\\\."
|
|
|
|
|
- constant.string:
|
|
|
|
|
start: "'"
|
2017-03-28 00:53:08 +00:00
|
|
|
end: "'"
|
2017-03-29 13:45:16 +00:00
|
|
|
skip: "\\\\."
|
2017-03-21 19:07:39 +00:00
|
|
|
rules:
|
|
|
|
|
- constant.specialChar: "\\\\."
|
2017-03-29 13:45:16 +00:00
|
|
|
|
2017-02-18 20:17:07 +00:00
|
|
|
- statement: "\\\"(\\\\\"|[^\"])*\\\"[[:space:]]*:\" \"'(\\'|[^'])*'[[:space:]]*:"
|
|
|
|
|
- constant: "\\\\u[0-9a-fA-F]{4}|\\\\[bfnrt'\"/\\\\]"
|
2024-08-19 20:16:42 +00:00
|
|
|
|
|
|
|
|
- comment:
|
|
|
|
|
start: "//"
|
|
|
|
|
end: "$"
|
|
|
|
|
rules:
|
|
|
|
|
- todo: "(TODO|XXX|FIXME):?"
|
|
|
|
|
|
|
|
|
|
- comment:
|
|
|
|
|
start: "/\\*"
|
|
|
|
|
end: "\\*/"
|
|
|
|
|
rules:
|
|
|
|
|
- todo: "(TODO|XXX|FIXME):?"
|