aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias EngdegÄrd2020-02-17 18:26:47 +0100
committerMattias EngdegÄrd2020-02-20 16:03:30 +0100
commit8dc4034ed6f86455c294f22a3d345b00cd4aa143 (patch)
tree62a6795b8918bda84fa682d102d685bcbf6ac1f1
parentd950a61fc8d14faf71e3b546c59a72b6f711b5df (diff)
downloademacs-8dc4034ed6f86455c294f22a3d345b00cd4aa143.tar.gz
emacs-8dc4034ed6f86455c294f22a3d345b00cd4aa143.zip
Add and remove backslashes in regexps
These irregularities were found by relint; see https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html . * doc/lispref/modes.texi (Example Major Modes): * etc/srecode/el.srt: * lisp/cedet/data-debug.el (data-debug-mode): * lisp/cedet/semantic/grammar.el (semantic-grammar-mode): * lisp/cedet/srecode/srt-mode.el (srecode-template-mode): * lisp/comint.el (comint--unquote&requote-argument): * lisp/emacs-lisp/lisp-mode.el (lisp-mode): * lisp/gnus/mm-uu.el (mm-uu-type-alist): * lisp/progmodes/cc-awk.el (c-awk-harmless-pattern-characters*): * lisp/progmodes/cfengine.el (cfengine-common-settings): * lisp/progmodes/cperl-mode.el (cperl-after-sub-regexp, cperl-init-faces): * lisp/shell.el (shell-chdrive-regexp, shell--unquote&requote-argument): * lisp/textmodes/tex-mode.el (tex-common-initialization): Remove duplicated backslashes in character alternatives. * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): * lisp/progmodes/opascal.el (opascal--syntax-propertize): * lisp/progmodes/pascal.el (pascal--syntax-propertize): Remove backslashes escaping non-special characters. * lisp/progmodes/fortran.el (fortran-font-lock-keywords-3): Escape '*'. * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Escape '^'.
-rw-r--r--doc/lispref/modes.texi2
-rw-r--r--etc/srecode/el.srt2
-rw-r--r--lisp/cedet/data-debug.el2
-rw-r--r--lisp/cedet/semantic/grammar.el2
-rw-r--r--lisp/cedet/srecode/srt-mode.el2
-rw-r--r--lisp/comint.el2
-rw-r--r--lisp/emacs-lisp/lisp-mode.el6
-rw-r--r--lisp/gnus/mm-uu.el2
-rw-r--r--lisp/progmodes/cc-awk.el2
-rw-r--r--lisp/progmodes/cfengine.el2
-rw-r--r--lisp/progmodes/cperl-mode.el8
-rw-r--r--lisp/progmodes/fortran.el2
-rw-r--r--lisp/progmodes/opascal.el2
-rw-r--r--lisp/progmodes/pascal.el2
-rw-r--r--lisp/progmodes/perl-mode.el2
-rw-r--r--lisp/shell.el4
-rw-r--r--lisp/textmodes/tex-mode.el6
17 files changed, 25 insertions, 25 deletions
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index f380f1669e0..f8cf4578fc2 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -1428,7 +1428,7 @@ or to switch back to an existing one."
1428 (lisp-mode-variables nil t) 1428 (lisp-mode-variables nil t)
1429 (setq-local find-tag-default-function 'lisp-find-tag-default) 1429 (setq-local find-tag-default-function 'lisp-find-tag-default)
1430 (setq-local comment-start-skip 1430 (setq-local comment-start-skip
1431 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *") 1431 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *")
1432 (setq imenu-case-fold-search t)) 1432 (setq imenu-case-fold-search t))
1433@end group 1433@end group
1434@end smallexample 1434@end smallexample
diff --git a/etc/srecode/el.srt b/etc/srecode/el.srt
index 3473fb693c1..7d5c64c86c0 100644
--- a/etc/srecode/el.srt
+++ b/etc/srecode/el.srt
@@ -102,7 +102,7 @@ $<MODEFCN:declaration:function$
102 comment-start ";;" 102 comment-start ";;"
103 comment-end "") 103 comment-end "")
104 (set (make-local-variable 'comment-start-skip) 104 (set (make-local-variable 'comment-start-skip)
105 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\);+ *") 105 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\);+ *")
106 (set-syntax-table $MODESYM$-mode-syntax-table) 106 (set-syntax-table $MODESYM$-mode-syntax-table)
107 (use-local-map $MODESYM$-mode-map) 107 (use-local-map $MODESYM$-mode-map)
108 (set (make-local-variable 'font-lock-defaults) 108 (set (make-local-variable 'font-lock-defaults)
diff --git a/lisp/cedet/data-debug.el b/lisp/cedet/data-debug.el
index 78a72dd889c..075e122e79d 100644
--- a/lisp/cedet/data-debug.el
+++ b/lisp/cedet/data-debug.el
@@ -880,7 +880,7 @@ If PARENT is non-nil, it is somehow related as a parent to thing."
880 comment-end "" 880 comment-end ""
881 buffer-read-only t) 881 buffer-read-only t)
882 (setq-local comment-start-skip 882 (setq-local comment-start-skip
883 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\);+ *") 883 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\);+ *")
884 (buffer-disable-undo) 884 (buffer-disable-undo)
885 (set (make-local-variable 'font-lock-global-modes) nil) 885 (set (make-local-variable 'font-lock-global-modes) nil)
886 (font-lock-mode -1) 886 (font-lock-mode -1)
diff --git a/lisp/cedet/semantic/grammar.el b/lisp/cedet/semantic/grammar.el
index 62c86f9d12d..2c3b24b9b16 100644
--- a/lisp/cedet/semantic/grammar.el
+++ b/lisp/cedet/semantic/grammar.el
@@ -1306,7 +1306,7 @@ the change bounds to encompass the whole nonterminal tag."
1306 ;; Look within the line for a ; following an even number of backslashes 1306 ;; Look within the line for a ; following an even number of backslashes
1307 ;; after either a non-backslash or the line beginning. 1307 ;; after either a non-backslash or the line beginning.
1308 (set (make-local-variable 'comment-start-skip) 1308 (set (make-local-variable 'comment-start-skip)
1309 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\);+ *") 1309 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\);+ *")
1310 (set (make-local-variable 'indent-line-function) 1310 (set (make-local-variable 'indent-line-function)
1311 'semantic-grammar-indent) 1311 'semantic-grammar-indent)
1312 (set (make-local-variable 'fill-paragraph-function) 1312 (set (make-local-variable 'fill-paragraph-function)
diff --git a/lisp/cedet/srecode/srt-mode.el b/lisp/cedet/srecode/srt-mode.el
index 6b8c3034a4c..4c1e030fceb 100644
--- a/lisp/cedet/srecode/srt-mode.el
+++ b/lisp/cedet/srecode/srt-mode.el
@@ -195,7 +195,7 @@ we can tell font lock about them.")
195 (set (make-local-variable 'comment-end) "") 195 (set (make-local-variable 'comment-end) "")
196 (set (make-local-variable 'parse-sexp-ignore-comments) t) 196 (set (make-local-variable 'parse-sexp-ignore-comments) t)
197 (set (make-local-variable 'comment-start-skip) 197 (set (make-local-variable 'comment-start-skip)
198 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\);+ *") 198 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\);+ *")
199 (set (make-local-variable 'font-lock-defaults) 199 (set (make-local-variable 'font-lock-defaults)
200 '(srecode-font-lock-keywords 200 '(srecode-font-lock-keywords
201 nil ;; perform string/comment fontification 201 nil ;; perform string/comment fontification
diff --git a/lisp/comint.el b/lisp/comint.el
index bf376a0b81c..5c521ff0fdf 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -3124,7 +3124,7 @@ See `comint-word'."
3124 "\\$\\(?:\\([[:alpha:]][[:alnum:]]*\\)" 3124 "\\$\\(?:\\([[:alpha:]][[:alnum:]]*\\)"
3125 "\\|{\\(?1:[^{}]+\\)}\\)" 3125 "\\|{\\(?1:[^{}]+\\)}\\)"
3126 (when (memq system-type '(ms-dos windows-nt)) 3126 (when (memq system-type '(ms-dos windows-nt))
3127 "\\|%\\(?1:[^\\\\/]*\\)%") 3127 "\\|%\\(?1:[^\\/]*\\)%")
3128 (when comint-file-name-quote-list 3128 (when comint-file-name-quote-list
3129 "\\|\\\\\\(.\\)"))) 3129 "\\|\\\\\\(.\\)")))
3130 (qupos nil) 3130 (qupos nil)
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index f66122d6d72..3b0f5493eeb 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -456,7 +456,7 @@ This will generate compile-time constants from BINDINGS."
456 (,(concat "\\_<:" lisp-mode-symbol-regexp "\\_>") 456 (,(concat "\\_<:" lisp-mode-symbol-regexp "\\_>")
457 (0 font-lock-builtin-face)) 457 (0 font-lock-builtin-face))
458 ;; ELisp and CLisp `&' keywords as types. 458 ;; ELisp and CLisp `&' keywords as types.
459 (,(concat "\\_<\\&" lisp-mode-symbol-regexp "\\_>") 459 (,(concat "\\_<&" lisp-mode-symbol-regexp "\\_>")
460 . font-lock-type-face) 460 . font-lock-type-face)
461 ;; ELisp regexp grouping constructs 461 ;; ELisp regexp grouping constructs
462 (,(lambda (bound) 462 (,(lambda (bound)
@@ -511,7 +511,7 @@ This will generate compile-time constants from BINDINGS."
511 (,(concat "\\_<:" lisp-mode-symbol-regexp "\\_>") 511 (,(concat "\\_<:" lisp-mode-symbol-regexp "\\_>")
512 (0 font-lock-builtin-face)) 512 (0 font-lock-builtin-face))
513 ;; ELisp and CLisp `&' keywords as types. 513 ;; ELisp and CLisp `&' keywords as types.
514 (,(concat "\\_<\\&" lisp-mode-symbol-regexp "\\_>") 514 (,(concat "\\_<&" lisp-mode-symbol-regexp "\\_>")
515 . font-lock-type-face) 515 . font-lock-type-face)
516 ;; This is too general -- rms. 516 ;; This is too general -- rms.
517 ;; A user complained that he has functions whose names start with `do' 517 ;; A user complained that he has functions whose names start with `do'
@@ -750,7 +750,7 @@ or to switch back to an existing one."
750 (setq-local lisp-indent-function 'common-lisp-indent-function) 750 (setq-local lisp-indent-function 'common-lisp-indent-function)
751 (setq-local find-tag-default-function 'lisp-find-tag-default) 751 (setq-local find-tag-default-function 'lisp-find-tag-default)
752 (setq-local comment-start-skip 752 (setq-local comment-start-skip
753 "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *") 753 "\\(\\(^\\|[^\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *")
754 (setq imenu-case-fold-search t)) 754 (setq imenu-case-fold-search t))
755 755
756(defun lisp-find-tag-default () 756(defun lisp-find-tag-default ()
diff --git a/lisp/gnus/mm-uu.el b/lisp/gnus/mm-uu.el
index 61bf0a78c0e..aedd6c948c2 100644
--- a/lisp/gnus/mm-uu.el
+++ b/lisp/gnus/mm-uu.el
@@ -192,7 +192,7 @@ This can be either \"inline\" or \"attachment\".")
192 ,(lambda () (mm-uu-verbatim-marks-extract 0 0)) 192 ,(lambda () (mm-uu-verbatim-marks-extract 0 0))
193 nil) 193 nil)
194 (LaTeX 194 (LaTeX
195 "^\\([\\\\%][^\n]+\n\\)*\\\\documentclass.*[[{%]" 195 "^\\([\\%][^\n]+\n\\)*\\\\documentclass.*[[{%]"
196 "^\\\\end{document}" 196 "^\\\\end{document}"
197 ,#'mm-uu-latex-extract 197 ,#'mm-uu-latex-extract
198 nil 198 nil
diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el
index fd61e3e3287..52e6da6f4ac 100644
--- a/lisp/progmodes/cc-awk.el
+++ b/lisp/progmodes/cc-awk.el
@@ -1003,7 +1003,7 @@ std\\(err\\|in\\|out\\)\\|user\\)\\)\\>\
1003;; Matches an unterminated string/regexp, NOT including the eol at the end. 1003;; Matches an unterminated string/regexp, NOT including the eol at the end.
1004 1004
1005(defconst c-awk-harmless-pattern-characters* 1005(defconst c-awk-harmless-pattern-characters*
1006 (concat "\\([^{;#/\"\\\\\n\r]\\|" c-awk-esc-pair-re "\\)*")) 1006 (concat "\\([^{;#/\"\\\n\r]\\|" c-awk-esc-pair-re "\\)*"))
1007;; Matches any "harmless" character in a pattern or an escaped character pair. 1007;; Matches any "harmless" character in a pattern or an escaped character pair.
1008 1008
1009(defun c-awk-at-statement-end-p () 1009(defun c-awk-at-statement-end-p ()
diff --git a/lisp/progmodes/cfengine.el b/lisp/progmodes/cfengine.el
index 9ddb2ab2bbb..18df372f2c6 100644
--- a/lisp/progmodes/cfengine.el
+++ b/lisp/progmodes/cfengine.el
@@ -1322,7 +1322,7 @@ Use it by enabling `eldoc-mode'."
1322 (set (make-local-variable 'parens-require-spaces) nil) 1322 (set (make-local-variable 'parens-require-spaces) nil)
1323 (set (make-local-variable 'comment-start) "# ") 1323 (set (make-local-variable 'comment-start) "# ")
1324 (set (make-local-variable 'comment-start-skip) 1324 (set (make-local-variable 'comment-start-skip)
1325 "\\(\\(?:^\\|[^\\\\\n]\\)\\(?:\\\\\\\\\\)*\\)#+[ \t]*") 1325 "\\(\\(?:^\\|[^\\\n]\\)\\(?:\\\\\\\\\\)*\\)#+[ \t]*")
1326 ;; Like Lisp mode. Without this, we lose with, say, 1326 ;; Like Lisp mode. Without this, we lose with, say,
1327 ;; `backward-up-list' when there's an unbalanced quote in a 1327 ;; `backward-up-list' when there's an unbalanced quote in a
1328 ;; preceding comment. 1328 ;; preceding comment.
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index 5fee2df5863..6f6da8e6b2e 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -1306,7 +1306,7 @@ the last)."
1306 cperl-maybe-white-and-comment-rex ; whitespace-comments 1306 cperl-maybe-white-and-comment-rex ; whitespace-comments
1307 "\\(\\sw\\|_\\)+" ; attr-name 1307 "\\(\\sw\\|_\\)+" ; attr-name
1308 ;; attr-arg (1 level of internal parens allowed!) 1308 ;; attr-arg (1 level of internal parens allowed!)
1309 "\\((\\(\\\\.\\|[^\\\\()]\\|([^\\\\()]*)\\)*)\\)?" 1309 "\\((\\(\\\\.\\|[^\\()]\\|([^\\()]*)\\)*)\\)?"
1310 "\\(" ; optional : (XXX allows trailing???) 1310 "\\(" ; optional : (XXX allows trailing???)
1311 cperl-maybe-white-and-comment-rex ; whitespace-comments 1311 cperl-maybe-white-and-comment-rex ; whitespace-comments
1312 ":\\)?" 1312 ":\\)?"
@@ -5659,16 +5659,16 @@ indentation and initial hashes. Behaves usually outside of comment."
5659 '("^[ \t]*format[ \t]+\\([a-zA-Z_][a-zA-Z_0-9:]*\\)[ \t]*=[ \t]*$" 5659 '("^[ \t]*format[ \t]+\\([a-zA-Z_][a-zA-Z_0-9:]*\\)[ \t]*=[ \t]*$"
5660 1 font-lock-function-name-face) 5660 1 font-lock-function-name-face)
5661 (cond ((featurep 'font-lock-extra) 5661 (cond ((featurep 'font-lock-extra)
5662 '("\\([]}\\\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}" 5662 '("\\([]}\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}"
5663 (2 font-lock-string-face t) 5663 (2 font-lock-string-face t)
5664 (0 '(restart 2 t)))) ; To highlight $a{bc}{ef} 5664 (0 '(restart 2 t)))) ; To highlight $a{bc}{ef}
5665 (font-lock-anchored 5665 (font-lock-anchored
5666 '("\\([]}\\\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}" 5666 '("\\([]}\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}"
5667 (2 font-lock-string-face t) 5667 (2 font-lock-string-face t)
5668 ("\\=[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}" 5668 ("\\=[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}"
5669 nil nil 5669 nil nil
5670 (1 font-lock-string-face t)))) 5670 (1 font-lock-string-face t))))
5671 (t '("\\([]}\\\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}" 5671 (t '("\\([]}\\%@>*&]\\|\\$[a-zA-Z0-9_:]*\\)[ \t]*{[ \t]*\\(-?[a-zA-Z0-9_:]+\\)[ \t]*}"
5672 2 font-lock-string-face t))) 5672 2 font-lock-string-face t)))
5673 '("[[ \t{,(]\\(-?[a-zA-Z0-9_:]+\\)[ \t]*=>" 1 5673 '("[[ \t{,(]\\(-?[a-zA-Z0-9_:]+\\)[ \t]*=>" 1
5674 font-lock-string-face t) 5674 font-lock-string-face t)
diff --git a/lisp/progmodes/fortran.el b/lisp/progmodes/fortran.el
index 811951eaaaf..abc860b9478 100644
--- a/lisp/progmodes/fortran.el
+++ b/lisp/progmodes/fortran.el
@@ -429,7 +429,7 @@ The only difference is, it returns t in a case when the default returns nil."
429 fortran-font-lock-keywords-1 429 fortran-font-lock-keywords-1
430 ;; All type specifiers plus their declared items. 430 ;; All type specifiers plus their declared items.
431 (list 431 (list
432 (list (concat fortran-type-types "[ \t(/]*\\(*\\)?") 432 (list (concat fortran-type-types "[ \t(/]*\\(\\*\\)?")
433 ;; Type specifier. 433 ;; Type specifier.
434 '(1 font-lock-type-face) 434 '(1 font-lock-type-face)
435 ;; Declaration item (or just /.../ block name). 435 ;; Declaration item (or just /.../ block name).
diff --git a/lisp/progmodes/opascal.el b/lisp/progmodes/opascal.el
index fcd9294f660..8c060991f42 100644
--- a/lisp/progmodes/opascal.el
+++ b/lisp/progmodes/opascal.el
@@ -1688,7 +1688,7 @@ comment block. If not in a // comment, just does a normal newline."
1688 ;; as comment starters. Fix it here by removing the "2" from the syntax 1688 ;; as comment starters. Fix it here by removing the "2" from the syntax
1689 ;; of the second char of such sequences. 1689 ;; of the second char of such sequences.
1690 ("/\\(\\*\\)" (1 ". 3b")) 1690 ("/\\(\\*\\)" (1 ". 3b"))
1691 ("(\\(\\/\\)" (1 (prog1 ". 1c" (forward-char -1) nil))) 1691 ("(\\(/\\)" (1 (prog1 ". 1c" (forward-char -1) nil)))
1692 ;; Pascal uses '' and "" rather than \' and \" to escape quotes. 1692 ;; Pascal uses '' and "" rather than \' and \" to escape quotes.
1693 ("''\\|\"\"" (0 (if (save-excursion 1693 ("''\\|\"\"" (0 (if (save-excursion
1694 (nth 3 (syntax-ppss (match-beginning 0)))) 1694 (nth 3 (syntax-ppss (match-beginning 0))))
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index 13505d04a2d..5036b793c55 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -187,7 +187,7 @@
187 ;; as comment starters. Fix it here by removing the "2" from the syntax 187 ;; as comment starters. Fix it here by removing the "2" from the syntax
188 ;; of the second char of such sequences. 188 ;; of the second char of such sequences.
189 ("/\\(\\*\\)" (1 ". 3b")) 189 ("/\\(\\*\\)" (1 ". 3b"))
190 ("(\\(\\/\\)" (1 (prog1 ". 1c" (forward-char -1) nil))) 190 ("(\\(/\\)" (1 (prog1 ". 1c" (forward-char -1) nil)))
191 ;; Pascal uses '' and "" rather than \' and \" to escape quotes. 191 ;; Pascal uses '' and "" rather than \' and \" to escape quotes.
192 ("''\\|\"\"" (0 (if (save-excursion 192 ("''\\|\"\"" (0 (if (save-excursion
193 (nth 3 (syntax-ppss (match-beginning 0)))) 193 (nth 3 (syntax-ppss (match-beginning 0))))
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el
index f864f6a34cd..ff0b6a331bc 100644
--- a/lisp/progmodes/perl-mode.el
+++ b/lisp/progmodes/perl-mode.el
@@ -235,7 +235,7 @@
235 (match-beginning 0)))))) 235 (match-beginning 0))))))
236 (string-to-syntax ". p")))) 236 (string-to-syntax ". p"))))
237 ;; Handle funny names like $DB'stop. 237 ;; Handle funny names like $DB'stop.
238 ("\\$ ?{?^?[_[:alpha:]][_[:alnum:]]*\\('\\)[_[:alpha:]]" (1 "_")) 238 ("\\$ ?{?\\^?[_[:alpha:]][_[:alnum:]]*\\('\\)[_[:alpha:]]" (1 "_"))
239 ;; format statements 239 ;; format statements
240 ("^[ \t]*format.*=[ \t]*\\(\n\\)" 240 ("^[ \t]*format.*=[ \t]*\\(\n\\)"
241 (1 (prog1 "\"" (perl-syntax-propertize-special-constructs end)))) 241 (1 (prog1 "\"" (perl-syntax-propertize-special-constructs end))))
diff --git a/lisp/shell.el b/lisp/shell.el
index ecebf937e29..1e2679f7235 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -252,7 +252,7 @@ This mirrors the optional behavior of tcsh."
252(defcustom shell-chdrive-regexp 252(defcustom shell-chdrive-regexp
253 (if (memq system-type '(ms-dos windows-nt)) 253 (if (memq system-type '(ms-dos windows-nt))
254 ; NetWare allows the five chars between upper and lower alphabetics. 254 ; NetWare allows the five chars between upper and lower alphabetics.
255 "[]a-zA-Z^_`\\[\\\\]:" 255 "[]a-zA-Z^_`[\\]:"
256 nil) 256 nil)
257 "If non-nil, is regexp used to track drive changes." 257 "If non-nil, is regexp used to track drive changes."
258 :type '(choice regexp 258 :type '(choice regexp
@@ -377,7 +377,7 @@ Thus, this does not include the shell's current directory.")
377 "\\|\\$\\(?:\\([[:alpha:]][[:alnum:]]*\\)" 377 "\\|\\$\\(?:\\([[:alpha:]][[:alnum:]]*\\)"
378 "\\|{\\(?1:[^{}]+\\)}\\)" 378 "\\|{\\(?1:[^{}]+\\)}\\)"
379 (when (memq system-type '(ms-dos windows-nt)) 379 (when (memq system-type '(ms-dos windows-nt))
380 "\\|%\\(?1:[^\\\\/]*\\)%") 380 "\\|%\\(?1:[^\\/]*\\)%")
381 (when comint-file-name-quote-list 381 (when comint-file-name-quote-list
382 "\\|\\\\\\(.\\)"))) 382 "\\|\\\\\\(.\\)")))
383 (qupos nil) 383 (qupos nil)
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index 0e28756ea75..f95979e2fcb 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -465,7 +465,7 @@ An alternative value is \" . \", if you use a font with a narrow period."
465; ("{\\\\bf\\([^}]+\\)}" 1 'bold keep) 465; ("{\\\\bf\\([^}]+\\)}" 1 'bold keep)
466; ("{\\\\\\(em\\|it\\|sl\\)\\([^}]+\\)}" 2 'italic keep) 466; ("{\\\\\\(em\\|it\\|sl\\)\\([^}]+\\)}" 2 'italic keep)
467; ("\\\\\\([a-zA-Z@]+\\|.\\)" . font-lock-keyword-face) 467; ("\\\\\\([a-zA-Z@]+\\|.\\)" . font-lock-keyword-face)
468; ("^[ \t\n]*\\\\def[\\\\@]\\(\\w+\\)" 1 font-lock-function-name-face keep)) 468; ("^[ \t\n]*\\\\def[\\@]\\(\\w+\\)" 1 font-lock-function-name-face keep))
469; ;; Rewritten and extended for LaTeX2e by Ulrik Dickow <dickow@nbi.dk>. 469; ;; Rewritten and extended for LaTeX2e by Ulrik Dickow <dickow@nbi.dk>.
470; '(("\\\\\\(begin\\|end\\|newcommand\\){\\([a-zA-Z0-9\\*]+\\)}" 470; '(("\\\\\\(begin\\|end\\|newcommand\\){\\([a-zA-Z0-9\\*]+\\)}"
471; 2 font-lock-function-name-face) 471; 2 font-lock-function-name-face)
@@ -1252,10 +1252,10 @@ Entering SliTeX mode runs the hook `text-mode-hook', then the hook
1252 ("\\\\[a-zA-Z]+\\( +\\|{}\\)[a-zA-Z]*" . "") 1252 ("\\\\[a-zA-Z]+\\( +\\|{}\\)[a-zA-Z]*" . "")
1253 ("%" . "$")))) 1253 ("%" . "$"))))
1254 ;; A line containing just $$ is treated as a paragraph separator. 1254 ;; A line containing just $$ is treated as a paragraph separator.
1255 (setq-local paragraph-start "[ \t]*$\\|[\f\\\\%]\\|[ \t]*\\$\\$") 1255 (setq-local paragraph-start "[ \t]*$\\|[\f\\%]\\|[ \t]*\\$\\$")
1256 ;; A line starting with $$ starts a paragraph, 1256 ;; A line starting with $$ starts a paragraph,
1257 ;; but does not separate paragraphs if it has more stuff on it. 1257 ;; but does not separate paragraphs if it has more stuff on it.
1258 (setq-local paragraph-separate "[ \t]*$\\|[\f\\\\%]\\|[ \t]*\\$\\$[ \t]*$") 1258 (setq-local paragraph-separate "[ \t]*$\\|[\f\\%]\\|[ \t]*\\$\\$[ \t]*$")
1259 (setq-local add-log-current-defun-function #'tex-current-defun-name) 1259 (setq-local add-log-current-defun-function #'tex-current-defun-name)
1260 (setq-local comment-start "%") 1260 (setq-local comment-start "%")
1261 (setq-local comment-add 1) 1261 (setq-local comment-add 1)