From: Wilfred Hughes Date: Tue, 23 May 2017 17:48:19 +0000 (+0100) Subject: Don't treat ' as a string delimiter in RPM spec files X-Git-Tag: emacs-26.0.90~521^2~294 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=63d0a3c63f833faad7a04fb4bf384d55ae6ae8d1;p=emacs.git Don't treat ' as a string delimiter in RPM spec files ' 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. --- diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el index db965c5a58c..35b555e6879 100644 --- a/lisp/progmodes/sh-script.el +++ b/lisp/progmodes/sh-script.el @@ -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