]> git.wh0rd.org Git - nano.git/commitdiff
Adding syntax colouring for JSON files.
authorBenno Schulenberg <bensberg@justemail.net>
Sat, 17 May 2014 11:44:35 +0000 (11:44 +0000)
committerBenno Schulenberg <bensberg@justemail.net>
Sat, 17 May 2014 11:44:35 +0000 (11:44 +0000)
New file, originally from Aapo Rantalainen,
but heavily edited, extended, and improved.

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4901 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
doc/syntax/Makefile.am
doc/syntax/json.nanorc [new file with mode: 0644]

index 1b549541e2dbb67ac5b5c3b35bc00366f985b0d9..47c2f4e0edf9e5a8d62e44f5df70905860ac64e6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-17  Benno Schulenberg  <bensberg@justemail.net>
+       * doc/syntax/json.nanorc: New file, originally from Aapo Rantalainen,
+       but edited, extended, and improved.  See Savannah patch #7410.
+
 2014-05-16  Benno Schulenberg  <bensberg@justemail.net>
        * src/text.c, src/winio.c: Remove some more double spaces.
        * doc/syntax/patch.nanorc: Show trailing whitespace on added lines.
index 8060ef478d86424a0e4f85cfed907917a8477967..458c8165155e8b0d1ce38ec86b7c4389d56ae558 100644 (file)
@@ -12,6 +12,7 @@ pkgdata_DATA =        asm.nanorc \
                html.nanorc \
                java.nanorc \
                javascript.nanorc \
+               json.nanorc \
                lua.nanorc \
                makefile.nanorc \
                man.nanorc \
diff --git a/doc/syntax/json.nanorc b/doc/syntax/json.nanorc
new file mode 100644 (file)
index 0000000..0f799f1
--- /dev/null
@@ -0,0 +1,32 @@
+## Syntax highlighting for JSON files.
+
+# See:  http://www.json.org/
+# Original author:  Aapo Rantalainen
+# License:  GPLv3 or newer
+
+syntax "json" "\.json$"
+
+# Numbers (used as value).
+color green ":[[:space:]]*\-?(0|[1-9][0-9]*)(\.[0-9]+)?([Ee]?[-+]?[0-9]+)?"
+# Values (well, any string).
+color brightmagenta "\".+\""
+# Hex numbers (used as value).
+color green ":[[:space:]]*\"#[0-9abcdefABCDEF]+\""
+# Escapes.
+color green "\\\\" "\\\"" "\\[bfnrt]" "\\u[0-9abcdefABCDEF]{4})"
+# Special words.
+color green "(true|false|null)"
+
+# Names (very unlikely to contain a quote).
+color brightblue "\"[^"]+\"[[:space:]]*:"
+
+# Brackets, braces, and separators.
+color brightblue "\[" "\]"
+color brightred "\{" "\}"
+color brightred "," ":"
+
+# Comments.
+color cyan "(^|[[:space:]]+)(//|#).*$"
+
+# Trailing whitespace.
+color ,green "[[:space:]]+$"