about summary refs log blame commit diff
path: root/third_party/gerrit/0003-Syntax-highlight-rules.pl.patch
blob: e85cbb9db20a0f2dcea1e362e1d99c839566c2d6 (plain) (tree)
1
2
3
4
5
6
7
8
9








                                                                       
                                                                                                                                                    
                                   

                                                                        
                                           









                                                 
                                                                        















                                                                           


      
From c3603950e5ae377514febbebf9aa26c31e07cd5d Mon Sep 17 00:00:00 2001
From: Luke Granger-Brown <git@lukegb.com>
Date: Thu, 2 Jul 2020 23:02:43 +0100
Subject: [PATCH 3/4] Syntax highlight rules.pl

---
 .../elements/diff/gr-syntax-layer/gr-syntax-layer.js   | 10 ++++++++++
 1 file changed, 10 insertions(+)

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 cc937cff67..2145bc169b 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
@@ -105,6 +105,10 @@ const LANGUAGE_MAP = {
 };
 const ASYNC_DELAY = 10;
 
+const FILENAME_OVERRIDES = {
+  'rules.pl': 'prolog',
+};
+
 const CLASS_WHITELIST = {
   'gr-diff gr-syntax gr-syntax-attr': true,
   'gr-diff gr-syntax gr-syntax-attribute': true,
@@ -236,10 +240,16 @@ class GrSyntaxLayer extends GestureEventListeners(
     }
   }
 
+  _basename(filename) {
+    const pieces = filename.split(/\//);
+    return pieces[pieces.length-1];
+  }
+
   _getLanguage(diffFileMetaInfo) {
     // The Gerrit API provides only content-type, but for other users of
     // gr-diff it may be more convenient to specify the language directly.
     return diffFileMetaInfo.language ||
+        FILENAME_OVERRIDES[this._basename(diffFileMetaInfo.name)] ||
         LANGUAGE_MAP[diffFileMetaInfo.content_type];
   }
 
-- 
2.25.1