commit c7b0e5469094e21a2db19e6c6839642f82f457f8
parent 9af4751dcb9d53f1b7d4ce4f73d84fca3fb84a24
Author: Benno Schulenberg <bensberg@justemail.net>
Date: Sat, 17 May 2014 11:44:35 +0000
Adding syntax colouring for JSON files.
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
Diffstat:
3 files changed, 37 insertions(+), 0 deletions(-)
diff --git 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.
diff --git a/doc/syntax/Makefile.am b/doc/syntax/Makefile.am
@@ -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
@@ -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:]]+$"