emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 955e370: Highlight zsh glob flags and qualifiers in


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] master 955e370: Highlight zsh glob flags and qualifiers in sh-mode
Date: Tue, 25 Jun 2019 17:01:21 -0400 (EDT)

branch: master
commit 955e3703736d3de5a3d0784f3b70a95132a4f7bd
Author: Jonathan Shin Hayase <address@hidden>
Commit: Lars Ingebrigtsen <address@hidden>

    Highlight zsh glob flags and qualifiers in sh-mode
    
    * lisp/progmode/sh-script.el (sh-syntax-propertize-function):
    Add regexps to highlight zsh glob flags and alternate qualifiers
    without mistaking them for comments. (bug#19455).
---
 lisp/progmodes/sh-script.el | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 853a350..aa6ada9 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -1141,7 +1141,13 @@ subshells can nest."
     ;; metacharacters.  The list of special chars is taken from
     ;; the single-unix spec of the shell command language (under
     ;; `quoting') but with `$' removed.
-    ("\\(?:[^|&;<>()`\\\"' \t\n]\\|\\${\\)\\(#+\\)" (1 "_"))
+    ("\\(?:[^|&;<>(`\\\"' \t\n]\\|\\${\\)\\(#+\\)" (1 "_"))
+    ;; In addition, `#' at the beginning of closed parentheses
+    ;; does not start a comment if the parentheses are not isolated
+    ;; by metacharacters, excluding [()].
+    ;; (e.g. `foo(#q/)' and `(#b)foo' in zsh)
+    ("[^|&;<>(`\\\"' \t\n](\\(#+\\)" (1 "_"))
+    ("(\\(#\\)[^)]+?)[^|&;<>)`\\\"' \t\n]" (1 "_"))
     ;; In a '...' the backslash is not escaping.
     ("\\(\\\\\\)'" (1 (sh-font-lock-backslash-quote)))
     ;; Make sure $@ and $? are correctly recognized as sexps.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]