From: Yuan Fu Date: Sun, 5 Mar 2023 22:16:58 +0000 (-0800) Subject: Add string-interpolation feature to bash-ts-mode X-Git-Tag: emacs-29.0.90~240 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=80e1037df44;p=emacs.git Add string-interpolation feature to bash-ts-mode * lisp/progmodes/sh-script.el: (bash-ts-mode): Add string-interpolation feature. (sh-mode--treesit-settings): Add rule for string-interpolation feature. --- diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el index 4c06efc8146..29820049636 100644 --- a/lisp/progmodes/sh-script.el +++ b/lisp/progmodes/sh-script.el @@ -1619,7 +1619,8 @@ not written in Bash or sh." (setq-local treesit-font-lock-feature-list '(( comment function) ( command declaration-command keyword string) - ( builtin-variable constant heredoc number variable) + ( builtin-variable constant heredoc number + string-interpolation variable) ( bracket delimiter misc-punctuation operator))) (setq-local treesit-font-lock-settings sh-mode--treesit-settings) @@ -3289,6 +3290,12 @@ See `sh-mode--treesit-other-keywords' and :language 'bash '([(string) (raw_string)] @font-lock-string-face) + :feature 'string-interpolation + :language 'bash + :override t + '((command_substitution) @sh-quoted-exec + (string (expansion (variable_name) @font-lock-variable-name-face))) + :feature 'heredoc :language 'bash '([(heredoc_start) (heredoc_body)] @sh-heredoc)