]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't treat ' as a string delimiter in RPM spec files
authorWilfred Hughes <me@wilfred.me.uk>
Tue, 23 May 2017 17:48:19 +0000 (18:48 +0100)
committerWilfred Hughes <me@wilfred.me.uk>
Tue, 23 May 2017 17:48:19 +0000 (18:48 +0100)
' is commonly used as an apostrophe in the prose sections of spec
files, which was erroneously highlighted as strings. See for example
http://kmymoney2.sourceforge.net/phb/rpm-example.html

* lisp/progmodes/sh-script.el (sh-mode-syntax-table): Treat ' as
  punctuation in RPM spec files.

lisp/progmodes/sh-script.el

index db965c5a58cc3d41f5ebd861d61dce5bf9191540..35b555e687978646d2dd054f8444cb20272525e0 100644 (file)
@@ -492,7 +492,10 @@ name symbol."
 This is buffer-local in every such buffer.")
 
 (defvar sh-mode-syntax-table-input
-  '((sh . nil))
+  `((sh . nil)
+    ;; Treat ' as punctuation rather than a string delimiter, as RPM
+    ;; files often contain prose with apostrophes.
+    (rpm . (,sh-mode-syntax-table ?\' ".")))
   "Syntax-table used in Shell-Script mode.  See `sh-feature'.")
 
 (defvar sh-mode-map