From c7b0e5469094e21a2db19e6c6839642f82f457f8 Mon Sep 17 00:00:00 2001
From: Benno Schulenberg <bensberg@justemail.net>
Date: Sat, 17 May 2014 11:44:35 +0000
Subject: [PATCH] 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
---
 ChangeLog              |  4 ++++
 doc/syntax/Makefile.am |  1 +
 doc/syntax/json.nanorc | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 37 insertions(+)
 create mode 100644 doc/syntax/json.nanorc

diff --git a/ChangeLog b/ChangeLog
index 1b549541..47c2f4e0 100644
--- 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
index 8060ef47..458c8165 100644
--- 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
new file mode 100644
index 00000000..0f799f16
--- /dev/null
+++ 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:]]+$"
-- 
GitLab