2014-05-17 11:44:35 +00:00
|
|
|
## Syntax highlighting for JSON files.
|
|
|
|
|
2020-04-20 17:15:43 +00:00
|
|
|
## Original author: Aapo Rantalainen
|
|
|
|
## License: GPL version 3 or newer
|
2014-05-17 11:44:35 +00:00
|
|
|
|
2018-02-07 10:25:46 +00:00
|
|
|
syntax json "\.json$"
|
2016-05-25 20:13:50 +00:00
|
|
|
# No comments are permitted in JSON.
|
|
|
|
comment ""
|
2014-05-17 11:44:35 +00:00
|
|
|
|
|
|
|
# Numbers (used as value).
|
|
|
|
color green ":[[:space:]]*\-?(0|[1-9][0-9]*)(\.[0-9]+)?([Ee]?[-+]?[0-9]+)?"
|
|
|
|
# Values (well, any string).
|
2020-07-27 08:47:27 +00:00
|
|
|
color brightmagenta "".+""
|
2014-05-17 11:44:35 +00:00
|
|
|
# Hex numbers (used as value).
|
2020-07-27 08:47:27 +00:00
|
|
|
color green ":[[:space:]]*"#[0-9abcdefABCDEF]+""
|
2014-05-17 11:44:35 +00:00
|
|
|
# Escapes.
|
2020-07-27 08:47:27 +00:00
|
|
|
color green "\\\\" "\\"" "\\[bfnrt]" "\\u[0-9abcdefABCDEF]{4})"
|
2014-05-17 11:44:35 +00:00
|
|
|
# Special words.
|
2020-04-21 10:47:08 +00:00
|
|
|
color green "\<(true|false|null)\>"
|
2014-05-17 11:44:35 +00:00
|
|
|
|
|
|
|
# Names (very unlikely to contain a quote).
|
2020-07-27 08:47:27 +00:00
|
|
|
color brightblue ""[^"]+"[[:space:]]*:"
|
2014-05-17 11:44:35 +00:00
|
|
|
|
|
|
|
# Brackets, braces, and separators.
|
|
|
|
color brightblue "\[" "\]"
|
|
|
|
color brightred "\{" "\}"
|
|
|
|
color brightred "," ":"
|
|
|
|
|
|
|
|
# Comments.
|
2018-11-03 20:12:44 +00:00
|
|
|
color cyan "(^|[[:space:]]+)(//|#).*"
|
2014-05-17 11:44:35 +00:00
|
|
|
|
|
|
|
# Trailing whitespace.
|
|
|
|
color ,green "[[:space:]]+$"
|