From 5ae0e44d1b02231dff67388a7ac57cf82a14926b Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Sun, 14 Jun 2020 12:36:04 +0100 Subject: [PATCH] feat(gerrit): Syntax highlight .nix files. highlight.js supports syntax highlighting .nix files, but the Gerrit diff components doesn't map the .nix mimetype onto the nix language. .nix appears to already be taken by another mimetype that isn't Nix-related, but we just map that onto nix anyway. https://usercontent.irccloud-cdn.com/file/AVhoPvrb/highlighted.png Change-Id: I842b29c78355e5bec580e711e25d693284ab6f59 Reviewed-on: https://cl.tvl.fyi/c/depot/+/253 Reviewed-by: tazjin Reviewed-by: q3k --- third_party/gerrit/default.nix | 5 ++++- third_party/gerrit/syntax_highlight_nix.patch | 12 ++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 third_party/gerrit/syntax_highlight_nix.patch diff --git a/third_party/gerrit/default.nix b/third_party/gerrit/default.nix index de2fb7157..1db37afed 100644 --- a/third_party/gerrit/default.nix +++ b/third_party/gerrit/default.nix @@ -39,7 +39,10 @@ pkgs.buildBazelPackage { sha256 = "1xrckiqc2l07dib22rn6iicgvph8iyxjrzr15bs5x6jdg9cic1s8"; fetchSubmodules = true; }; - patches = [ ./use_detzip.patch ]; + patches = [ + ./use_detzip.patch + ./syntax_highlight_nix.patch + ]; bazelTarget = "release"; inherit bazel; diff --git a/third_party/gerrit/syntax_highlight_nix.patch b/third_party/gerrit/syntax_highlight_nix.patch new file mode 100644 index 000000000..2a7791c75 --- /dev/null +++ b/third_party/gerrit/syntax_highlight_nix.patch @@ -0,0 +1,12 @@ +diff --git a/polygerrit-ui/app/elements/diff/gr-syntax-layer/gr-syntax-layer.js b/polygerrit-ui/app/elements/diff/gr-syntax-layer/gr-syntax-layer.js +index 1a0bbd9f50..0f2786a911 100644 +--- a/polygerrit-ui/app/elements/diff/gr-syntax-layer/gr-syntax-layer.js ++++ b/polygerrit-ui/app/elements/diff/gr-syntax-layer/gr-syntax-layer.js +@@ -99,6 +99,7 @@ const LANGUAGE_MAP = { + 'text/x-vhdl': 'vhdl', + 'text/x-yaml': 'yaml', + 'text/vbscript': 'vbscript', ++ 'application/x-mix-transfer': 'nix', + }; + const ASYNC_DELAY = 10; +