Support variable-unquoting syntax in bat-mode

* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Fontify
argument numbers in %~n.  Suggested by Jostein Kjønigsen
<jostein@secure.kjonigsen.net> in emacs-devel.

* test/lisp/progmodes/bat-mode-tests.el
(bat-test-fontification-iter-var-1): Update the test to check also
the %~n construct.
This commit is contained in:
Eli Zaretskii 2018-03-15 15:23:01 +02:00
parent 5c585b8b99
commit 9e73c9d038
2 changed files with 5 additions and 2 deletions

View file

@ -84,6 +84,8 @@
. 'bat-label-face)
("\\_<\\(defined\\|set\\)\\_>[ \t]*\\(\\(\\sw\\|\\s_\\)+\\)"
(2 font-lock-variable-name-face))
("%~\\([0-9]\\)"
(1 font-lock-variable-name-face))
("%\\([^%~ \n]+\\)%?"
(1 font-lock-variable-name-face))
("!\\([^!%~ \n]+\\)!?" ; delayed-expansion !variable!

View file

@ -63,10 +63,11 @@
"Test fontification of iteration variables."
(should
(equal
(bat-test-fontify "echo %%a\necho %%~dp1\necho %%~$PATH:I")
(bat-test-fontify "echo %%a\necho %%~dp1\necho %%~$PATH:I\necho %%~1")
"<span class=\"builtin\">echo</span> %%<span class=\"variable-name\">a</span>
<span class=\"builtin\">echo</span> %%~dp<span class=\"variable-name\">1</span>
<span class=\"builtin\">echo</span> %%~$<span class=\"variable-name\">PATH</span>:<span class=\"variable-name\">I</span>")))
<span class=\"builtin\">echo</span> %%~$<span class=\"variable-name\">PATH</span>:<span class=\"variable-name\">I</span>
<span class=\"builtin\">echo</span> %%~<span class=\"variable-name\">1</span>")))
(defun bat-test-fill-paragraph (str)
"Return the result of invoking `fill-paragraph' on STR in a `bat-mode' buffer."