* Re: Scan of regexp mistakes
2019-03-03 18:01 Scan of regexp mistakes Mattias Engdegård
@ 2019-03-05 2:04 ` Paul Eggert
2019-03-05 4:30 ` Clément Pit-Claudel
2019-03-05 15:06 ` Mattias Engdegård
0 siblings, 2 replies; 17+ messages in thread
From: Paul Eggert @ 2019-03-05 2:04 UTC (permalink / raw)
To: Mattias Engdegård; +Cc: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 637 bytes --]
On 3/3/19 10:01 AM, Mattias Engdegård wrote:
> The errors were gathered by the rather hacky trawl.el, attached (in case you want to run it on other code). It only requires xr (1.4 or later). To use, run trawl-directory or trawl-file.
Thanks for reporting that. I fixed the glitches as best I could by
applying the attached patch. I didn't see any false alarms, which is good.
It'd be nice if we could catch such typos on a regular basis. Is there
some easy way to do that? A simple way might be for you to run your
trawler once a month (say) and report back here. A nicer way would be
for "make check" to run the trawler.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Fix-regular-expression-glitches-and-typos.patch --]
[-- Type: text/x-patch; name="0001-Fix-regular-expression-glitches-and-typos.patch", Size: 93699 bytes --]
From cbaad88e158b14d9b19971ed68b3f55183a440b2 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Mon, 4 Mar 2019 18:00:00 -0800
Subject: [PATCH] Fix regular-expression glitches and typos
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Problems reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-03/msg00085.html
* admin/admin.el (set-version):
* lisp/allout.el (allout-latexify-one-item):
* lisp/arc-mode.el (archive-arc-rename-entry)
(archive-rar-summarize):
* lisp/calc/calc-graph.el (calc-graph-set-styles)
(calc-graph-hide):
* lisp/calc/calc-help.el (calc-describe-key):
* lisp/calc/calc-lang.el (math-compose-tex-func, eqn):
* lisp/calc/calc.el (calcDigit-key):
* lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
* lisp/cedet/ede/speedbar.el (ede-tag-expand):
* lisp/cedet/semantic/sb.el (semantic-sb-show-extra)
(semantic-sb-expand-group):
* lisp/comint.el (comint-substitute-in-file-name):
* lisp/dired.el (dired-actual-switches):
* lisp/emacs-lisp/chart.el (chart-rmail-from):
* lisp/emacs-lisp/eieio-opt.el (eieio-sb-expand):
* lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar-object-expand):
* lisp/emacs-lisp/rx.el (rx-not, rx-atomic-p):
* lisp/emulation/viper-ex.el (viper-get-ex-token)
(viper-get-ex-pat, ex-set-read-variable):
* lisp/epg.el (epg--status-SIG_CREATED):
* lisp/erc/erc-speedbar.el (erc-speedbar-expand-user):
(erc-speedbar-expand-channel, erc-speedbar-expand-server)
* lisp/erc/erc.el (erc-is-message-ctcp-and-not-action-p)
(erc-banlist-update):
* lisp/eshell/em-dirs.el (eshell-parse-drive-letter, eshell/pwd):
* lisp/find-dired.el (find-dired):
* lisp/frame.el (frame-set-background-mode):
* lisp/generic-x.el (apache-log-generic-mode):
* lisp/gnus/gnus-art.el (gnus-button-valid-localpart-regexp):
* lisp/gnus/gnus.el (gnus-short-group-name):
* lisp/gnus/message.el (message-mailer-swallows-blank-line):
* lisp/ibuffer.el (ibuffer-fontification-alist):
* lisp/ido.el (ido-set-matches-1):
* lisp/info-xref.el (info-xref-lock-file-p):
* lisp/info.el (Info-dir-remove-duplicates)
(Info-unescape-quotes, Info-split-parameter-string)
(Info-speedbar-expand-node):
* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
* lisp/isearch.el (isearch-pre-command-hook):
* lisp/language/ethio-util.el (ethio-fidel-to-tex-buffer):
* lisp/mail/rmail.el (rmail-collect-deleted):
* lisp/mh-e/mh-alias.el (mh-alias-suggest-alias):
* lisp/mh-e/mh-comp.el (mh-forward):
* lisp/mh-e/mh-search.el (mh-index-next-folder)
(mh-index-create-imenu-index):
* lisp/mh-e/mh-xface.el (mh-picon-get-image):
* lisp/minibuffer.el (completion--embedded-envvar-re):
* lisp/net/ange-ftp.el (ange-ftp-ls-parser):
* lisp/net/goto-addr.el (goto-address-mail-regexp)
(goto-address-find-address-at-point):
* lisp/net/pop3.el (pop3-read-response, pop3-user)
(pop3-pass, pop3-apop):
* lisp/net/tramp.el (tramp-ipv6-regexp)
(tramp-replace-environment-variables):
* lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
* lisp/nxml/rng-uri.el (rng-uri-escape-multibyte):
* lisp/nxml/rng-xsd.el (rng-xsd-convert-any-uri):
* lisp/obsolete/pgg.el (pgg-fetch-key):
* lisp/obsolete/vip.el (vip-get-ex-token):
* lisp/org/ob-core.el (org-babel-string-read):
* lisp/org/org-agenda.el:
(org-agenda-add-entry-to-org-agenda-diary-file):
* lisp/org/org-element.el (org-element-keyword-parser):
* lisp/org/org-list.el (org-list-indent-item-generic):
* lisp/org/org-mhe.el (org-mhe-get-message-folder-from-index):
* lisp/org/org-mobile.el (org-mobile-apply):
* lisp/org/org-mouse.el (org-mouse-context-menu):
* lisp/org/org-plot.el (org-plot/gnuplot):
* lisp/org/org-protocol.el (org-protocol-flatten-greedy):
* lisp/org/org-table.el (org-table-copy-down)
(org-table-formula-make-cmp-string)
(org-table-get-stored-formulas, org-table-recalculate)
(org-table-edit-formulas):
* lisp/org/org.el (org-translate-link-from-planner)
(org-fill-line-break-nobreak-p):
* lisp/org/ox-ascii.el (org-ascii-item):
* lisp/org/ox-latex.el (org-latex-clean-invalid-line-breaks):
* lisp/org/ox.el (org-export-expand-include-keyword):
* lisp/progmodes/ada-xref.el (ada-treat-cmd-string):
* lisp/progmodes/cfengine.el (cfengine2-font-lock-keywords):
* lisp/progmodes/cperl-mode.el (cperl-to-comment-or-eol)
(cperl-find-pods-heres, cperl-fix-line-spacing)
(cperl-have-help-regexp, cperl-word-at-point-hard)
(cperl-make-regexp-x):
* lisp/progmodes/dcl-mode.el (dcl-option-value-offset):
* lisp/progmodes/etags.el (tag-implicit-name-match-p):
* lisp/progmodes/fortran.el (fortran-fill):
* lisp/progmodes/gdb-mi.el (gdb-speedbar-expand-node)
(gdb-locals-handler-custom):
* lisp/progmodes/grep.el (grep-mode-font-lock-keywords):
* lisp/progmodes/gud.el (gud-jdb-find-source-using-classpath):
* lisp/progmodes/js.el (js--continued-expression-p):
* lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
* lisp/progmodes/meta-mode.el (meta-indent-level-count):
* lisp/progmodes/mixal-mode.el (mixal-font-lock-keywords):
* lisp/progmodes/opascal.el (opascal-find-unit-in-directory):
* lisp/progmodes/pascal.el (pascal-progbeg-re):
* lisp/progmodes/ruby-mode.el (ruby-expression-expansion-re)
(ruby-expr-beg, ruby-parse-partial)
(ruby-toggle-string-quotes, ruby-font-lock-keywords):
* lisp/progmodes/sql.el (sql--make-help-docstring):
* lisp/progmodes/verilog-mode.el (verilog-coverpoint-re)
(verilog-skip-forward-comment-p)
(verilog-read-sub-decls-gate)
(verilog-read-auto-template-middle):
* lisp/progmodes/vhdl-mode.el (vhdl-resolve-env-variable)
(vhdl-speedbar-expand-project, vhdl-speedbar-expand-entity)
(vhdl-speedbar-expand-architecture)
(vhdl-speedbar-expand-config, vhdl-speedbar-expand-package)
(vhdl-speedbar-dired):
* lisp/speedbar.el (speedbar-dired, speedbar-tag-file)
(speedbar-tag-expand):
* lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
* lisp/textmodes/flyspell.el (flyspell-debug-signal-word-checked):
* lisp/textmodes/ispell.el (ispell-process-line):
* lisp/textmodes/reftex-cite.el (reftex-end-of-bib-entry):
* lisp/textmodes/reftex-ref.el (reftex-replace-prefix-escapes):
* lisp/url/url-parse.el (url-generic-parse-url):
* lisp/url/url-util.el (url-truncate-url-for-viewing):
* lisp/vc/diff-mode.el (diff-unified->context):
* lisp/vc/vc-bzr.el (vc-bzr-error-regexp-alist):
* lisp/vc/vc-cvs.el (vc-cvs-parse-status):
* lisp/woman.el (woman0-el, woman-if-ignore)
(woman-change-fonts):
* lisp/xdg.el (xdg--substitute-home-env):
Fix regular-expression infelicities and typos.
Fix regular expression typos
Fix typos reported by Mattias Engdegård in:
that occurred in preloaded modules.
* lisp/frame.el (frame-set-background-mode):
* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
* lisp/isearch.el (isearch-pre-command-hook):
* lisp/minibuffer.el (completion--embedded-envvar-re):
---
admin/admin.el | 2 +-
lisp/allout.el | 2 +-
lisp/arc-mode.el | 4 ++--
lisp/calc/calc-graph.el | 4 ++--
lisp/calc/calc-help.el | 2 +-
lisp/calc/calc-lang.el | 6 +++---
lisp/calc/calc.el | 2 +-
lisp/cedet/ede/makefile-edit.el | 2 +-
lisp/cedet/ede/speedbar.el | 2 +-
lisp/cedet/semantic/sb.el | 4 ++--
lisp/comint.el | 2 +-
lisp/dired.el | 2 +-
lisp/emacs-lisp/chart.el | 2 +-
lisp/emacs-lisp/eieio-opt.el | 2 +-
lisp/emacs-lisp/eieio-speedbar.el | 2 +-
lisp/emacs-lisp/rx.el | 4 ++--
lisp/emulation/viper-ex.el | 16 ++++++++--------
lisp/epg.el | 2 +-
lisp/erc/erc-speedbar.el | 6 +++---
lisp/erc/erc.el | 4 ++--
lisp/eshell/em-dirs.el | 4 ++--
lisp/find-dired.el | 2 +-
lisp/frame.el | 2 +-
lisp/generic-x.el | 2 +-
lisp/gnus/gnus-art.el | 2 +-
lisp/gnus/gnus.el | 2 +-
lisp/gnus/message.el | 2 +-
lisp/ibuffer.el | 2 +-
lisp/ido.el | 4 ++--
lisp/info-xref.el | 2 +-
lisp/info.el | 8 ++++----
lisp/international/mule.el | 2 +-
lisp/isearch.el | 3 ++-
lisp/language/ethio-util.el | 2 +-
lisp/mail/rmail.el | 2 +-
lisp/mh-e/mh-alias.el | 2 +-
lisp/mh-e/mh-comp.el | 2 +-
lisp/mh-e/mh-search.el | 10 +++++-----
lisp/mh-e/mh-xface.el | 2 +-
lisp/minibuffer.el | 2 +-
lisp/net/ange-ftp.el | 2 +-
lisp/net/goto-addr.el | 4 ++--
lisp/net/pop3.el | 8 ++++----
lisp/net/tramp.el | 4 ++--
lisp/nxml/nxml-maint.el | 4 ++--
lisp/nxml/rng-uri.el | 2 +-
lisp/nxml/rng-xsd.el | 2 +-
lisp/obsolete/pgg.el | 2 +-
lisp/obsolete/vip.el | 10 +++++-----
lisp/org/ob-core.el | 2 +-
lisp/org/org-agenda.el | 2 +-
lisp/org/org-element.el | 2 +-
lisp/org/org-list.el | 2 +-
lisp/org/org-mhe.el | 2 +-
lisp/org/org-mobile.el | 4 ++--
lisp/org/org-mouse.el | 2 +-
lisp/org/org-plot.el | 2 +-
lisp/org/org-protocol.el | 2 +-
lisp/org/org-table.el | 11 ++++++-----
lisp/org/org.el | 4 ++--
lisp/org/ox-ascii.el | 4 ++--
lisp/org/ox-latex.el | 2 +-
lisp/org/ox.el | 2 +-
lisp/progmodes/ada-xref.el | 2 +-
lisp/progmodes/cfengine.el | 4 ++--
lisp/progmodes/cperl-mode.el | 24 ++++++++++++------------
lisp/progmodes/dcl-mode.el | 2 +-
lisp/progmodes/etags.el | 2 +-
lisp/progmodes/fortran.el | 2 +-
lisp/progmodes/gdb-mi.el | 4 ++--
lisp/progmodes/grep.el | 6 +++---
lisp/progmodes/gud.el | 2 +-
lisp/progmodes/js.el | 2 +-
lisp/progmodes/m4-mode.el | 2 +-
lisp/progmodes/meta-mode.el | 2 +-
lisp/progmodes/mixal-mode.el | 2 +-
lisp/progmodes/opascal.el | 2 +-
lisp/progmodes/pascal.el | 2 +-
lisp/progmodes/ruby-mode.el | 14 +++++++-------
lisp/progmodes/sql.el | 4 ++--
lisp/progmodes/verilog-mode.el | 8 ++++----
lisp/progmodes/vhdl-mode.el | 14 +++++++-------
lisp/speedbar.el | 6 +++---
lisp/textmodes/dns-mode.el | 4 ++--
lisp/textmodes/flyspell.el | 4 ++--
lisp/textmodes/ispell.el | 2 +-
lisp/textmodes/reftex-cite.el | 4 ++--
lisp/textmodes/reftex-ref.el | 2 +-
lisp/url/url-parse.el | 2 +-
lisp/url/url-util.el | 2 +-
lisp/vc/diff-mode.el | 2 +-
lisp/vc/vc-bzr.el | 2 +-
lisp/vc/vc-cvs.el | 2 +-
lisp/woman.el | 6 +++---
lisp/xdg.el | 2 +-
95 files changed, 177 insertions(+), 175 deletions(-)
diff --git a/admin/admin.el b/admin/admin.el
index 90aac3d43d..650cf47b80 100644
--- a/admin/admin.el
+++ b/admin/admin.el
@@ -144,7 +144,7 @@ set-version
(unless (> (length newversion) 2) ; pretest or release candidate?
(with-temp-buffer
(insert-file-contents newsfile)
- (if (re-search-forward "^\\(+++ *\\|--- *\\)$" nil t)
+ (if (re-search-forward "^\\(\\+\\+\\+ *\\|--- *\\)$" nil t)
(display-warning 'admin
"NEWS file still contains temporary markup.
Documentation changes might not have been completed!"))))
diff --git a/lisp/allout.el b/lisp/allout.el
index c2b3187e8a..b3b87e533b 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -5788,7 +5788,7 @@ allout-latexify-one-item
; "\end{verbatim}" in text,
; it's special:
(if (and body-content
- (setq bop (string-match "\\end{verbatim}" curr-line)))
+ (setq bop (string-match "\\\\end{verbatim}" curr-line)))
(setq curr-line (concat (substring curr-line 0 bop)
">"
(substring curr-line bop))))
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index 8de0103019..2afde7ee75 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -1534,7 +1534,7 @@ archive-arc-summarize
(apply #'vector (nreverse files))))
(defun archive-arc-rename-entry (newname descr)
- (if (string-match "[:\\\\/]" newname)
+ (if (string-match "[:\\/]" newname)
(error "File names in arc files must not contain a directory component"))
(if (> (length newname) 12)
(error "File names in arc files are limited to 12 characters"))
@@ -2016,7 +2016,7 @@ archive-rar-summarize
(call-process "lsar" nil t nil "-l" (or file copy))
(if copy (delete-file copy))
(goto-char (point-min))
- (re-search-forward "^\\(\s+=+\s?+\\)+\n")
+ (re-search-forward "^\\(\s+=+\s+\\)+\n")
(while (looking-at (concat "^\s+[0-9.]+\s+D?-+\s+" ; Flags
"\\([0-9-]+\\)\s+" ; Size
"\\([-0-9.%]+\\|-+\\)\s+" ; Ratio
diff --git a/lisp/calc/calc-graph.el b/lisp/calc/calc-graph.el
index 317f403ead..56f11c6711 100644
--- a/lisp/calc/calc-graph.el
+++ b/lisp/calc/calc-graph.el
@@ -1121,7 +1121,7 @@ calc-graph-set-styles
(eval (intern
(concat "var-"
(save-excursion
- (re-search-backward ":\\(.*\\)\\}")
+ (re-search-backward ":\\(.*\\)}")
(match-string 1))))))
(error nil)))
(if yerr
@@ -1186,7 +1186,7 @@ calc-graph-hide
(or (looking-at "{")
(error "Can't hide this curve (wrong format)"))
(forward-char 1)
- (if (looking-at "*")
+ (if (looking-at "\\*")
(if (or (null flag) (<= (prefix-numeric-value flag) 0))
(delete-char 1))
(if (or (null flag) (> (prefix-numeric-value flag) 0))
diff --git a/lisp/calc/calc-help.el b/lisp/calc/calc-help.el
index cf7574e738..d9e8fe779b 100644
--- a/lisp/calc/calc-help.el
+++ b/lisp/calc/calc-help.el
@@ -172,7 +172,7 @@ calc-describe-key
(setq desc (concat "M-" (substring desc 4))))
(while (string-match "^M-# \\(ESC \\|C-\\)" desc)
(setq desc (concat "M-# " (substring desc (match-end 0)))))
- (if (string-match "\\(DEL\\|\\LFD\\|RET\\|SPC\\|TAB\\)" desc)
+ (if (string-match "\\(DEL\\|LFD\\|RET\\|SPC\\|TAB\\)" desc)
(setq desc (replace-match "<\\&>" nil nil desc)))
(if briefly
(let ((msg (with-current-buffer (get-buffer-create "*Calc Summary*")
diff --git a/lisp/calc/calc-lang.el b/lisp/calc/calc-lang.el
index 3f55fb15d5..ee107df39c 100644
--- a/lisp/calc/calc-lang.el
+++ b/lisp/calc/calc-lang.el
@@ -753,8 +753,8 @@ math-compose-tex-func
right " \\right)"))
((and (eq (aref func 0) ?\\)
(not (or
- (string-match "\\hbox{" func)
- (string-match "\\text{" func)))
+ (string-match "\\\\hbox{" func)
+ (string-match "\\\\text{" func)))
(= (length a) 2)
(or (Math-realp (nth 1 a))
(memq (car (nth 1 a)) '(var *))))
@@ -1127,7 +1127,7 @@ math-eqn-ignore-words
(math-read-token)))))))
(put 'eqn 'math-lang-read
- '((eq (string-match "->\\|<-\\|+-\\|\\\\dots\\|~\\|\\^"
+ '((eq (string-match "->\\|<-\\|\\+-\\|\\\\dots\\|~\\|\\^"
math-exp-str math-exp-pos)
math-exp-pos)
(progn
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el
index 7390ea350e..35f13f9656 100644
--- a/lisp/calc/calc.el
+++ b/lisp/calc/calc.el
@@ -2430,7 +2430,7 @@ calcDigit-key
(beep)
(and (not (calc-minibuffer-contains "[-+]?\\(1[5-9]\\|[2-9][0-9]\\)#.*"))
(search-forward "e" nil t))
- (if (looking-at "+")
+ (if (looking-at "\\+")
(delete-char 1))
(if (looking-at "-")
(delete-char 1)
diff --git a/lisp/cedet/ede/makefile-edit.el b/lisp/cedet/ede/makefile-edit.el
index 7d8a44bd9a..1472108ad5 100644
--- a/lisp/cedet/ede/makefile-edit.el
+++ b/lisp/cedet/ede/makefile-edit.el
@@ -105,7 +105,7 @@ makefile-macro-file-list
(let ((e (save-excursion
(makefile-end-of-command)
(point))))
- (while (re-search-forward "\\s-**\\([-a-zA-Z0-9./_@$%(){}]+\\)\\s-*" e t)
+ (while (re-search-forward "\\s-*\\([-a-zA-Z0-9./_@$%(){}]+\\)\\s-*" e t)
(let ((var nil)(varexp nil)
(match (buffer-substring-no-properties
(match-beginning 1)
diff --git a/lisp/cedet/ede/speedbar.el b/lisp/cedet/ede/speedbar.el
index cd56228498..a5ccb66664 100644
--- a/lisp/cedet/ede/speedbar.el
+++ b/lisp/cedet/ede/speedbar.el
@@ -276,7 +276,7 @@ ede-tag-expand
Etags does not support this feature. TEXT will be the button
string. TOKEN will be the list, and INDENT is the current indentation
level."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
diff --git a/lisp/cedet/semantic/sb.el b/lisp/cedet/semantic/sb.el
index 6227ac618a..83d11e1658 100644
--- a/lisp/cedet/semantic/sb.el
+++ b/lisp/cedet/semantic/sb.el
@@ -279,7 +279,7 @@ semantic-sb-detail-parent
(defun semantic-sb-show-extra (text token indent)
"Display additional information about the token as an expansion.
TEXT TOKEN and INDENT are the details."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
@@ -325,7 +325,7 @@ semantic-sb-token-jump
(defun semantic-sb-expand-group (text token indent)
"Expand a group which has semantic tokens.
TEXT TOKEN and INDENT are the details."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
diff --git a/lisp/comint.el b/lisp/comint.el
index a51413dc65..a5fca7ea2a 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -3092,7 +3092,7 @@ comint-substitute-in-file-name
(let (env-var-name
env-var-val)
(save-match-data
- (while (string-match "%\\([^\\\\/]*\\)%" name)
+ (while (string-match "%\\([^\\/]*\\)%" name)
(setq env-var-name (match-string 1 name))
(setq env-var-val (or (getenv env-var-name) ""))
(setq name (replace-match env-var-val t t name))))))
diff --git a/lisp/dired.el b/lisp/dired.el
index 3cb645eea7..98f493ecc6 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -325,7 +325,7 @@ dired-actual-switches
(put 'dired-actual-switches 'safe-local-variable 'dired-safe-switches-p)
-(defvar dired-re-inode-size "[0-9 \t]*[.,0-9]*[BkKMGTPEZY]?[ \t]*"
+(defvar dired-re-inode-size "[0-9 \t]*[.,0-9]*[BkKMGTPEZY]?[ \t]*"
"Regexp for optional initial inode and file size as made by `ls -i -s'.")
;; These regexps must be tested at beginning-of-line, but are also
diff --git a/lisp/emacs-lisp/chart.el b/lisp/emacs-lisp/chart.el
index 708f41237b..9c29297da0 100644
--- a/lisp/emacs-lisp/chart.el
+++ b/lisp/emacs-lisp/chart.el
@@ -704,7 +704,7 @@ chart-rmail-from
(cntlst nil))
(save-excursion
(goto-char (point-min))
- (while (re-search-forward "\\-[A-Z][a-z][a-z] +\\(\\w+\\)@\\w+" nil t)
+ (while (re-search-forward "-[A-Z][a-z][a-z] +\\(\\w+\\)@\\w+" nil t)
(let* ((nam (buffer-substring (match-beginning 1) (match-end 1)))
(m (member nam nmlst)))
(message "Scanned username %s" nam)
diff --git a/lisp/emacs-lisp/eieio-opt.el b/lisp/emacs-lisp/eieio-opt.el
index e93d317d93..193f92bc2c 100644
--- a/lisp/emacs-lisp/eieio-opt.el
+++ b/lisp/emacs-lisp/eieio-opt.el
@@ -327,7 +327,7 @@ eieio-class-button
(defun eieio-sb-expand (text class indent)
"For button TEXT, expand CLASS at the current location.
Argument INDENT is the depth of indentation."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
diff --git a/lisp/emacs-lisp/eieio-speedbar.el b/lisp/emacs-lisp/eieio-speedbar.el
index 52dd6fea3f..2dd9a5eda6 100644
--- a/lisp/emacs-lisp/eieio-speedbar.el
+++ b/lisp/emacs-lisp/eieio-speedbar.el
@@ -348,7 +348,7 @@ eieio-speedbar-object-click
(defun eieio-speedbar-object-expand (text token indent)
"Expand object represented by TEXT.
TOKEN is the object. INDENT is the current indentation level."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(oset token expanded t)
(speedbar-with-writable
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el
index ca756efb49..f6deb45d44 100644
--- a/lisp/emacs-lisp/rx.el
+++ b/lisp/emacs-lisp/rx.el
@@ -609,7 +609,7 @@ rx-not
(rx-check form)
(let ((result (rx-form (cadr form) '!))
case-fold-search)
- (cond ((string-match "\\`\\[^" result)
+ (cond ((string-match "\\`\\[\\^" result)
(cond
((equal result "[^]") "[^^]")
((and (= (length result) 4) (null (eq rx-parent '!)))
@@ -787,7 +787,7 @@ rx-atomic-p
((= l 3) (string-match "\\`\\(?:\\\\[cCsS_]\\|\\[[^^]\\]\\)" r))
((null lax)
(cond
- ((string-match "\\`\\[^?\]?\\(?:\\[:[a-z]+:]\\|[^]]\\)*\\]\\'" r))
+ ((string-match "\\`\\[\\^?]?\\(?:\\[:[a-z]+:]\\|[^]]\\)*]\\'" r))
((string-match "\\`\\\\(\\(?:[^\\]\\|\\\\[^)]\\)*\\\\)\\'" r)))))))
diff --git a/lisp/emulation/viper-ex.el b/lisp/emulation/viper-ex.el
index 41c9a3973a..4496f1cf7d 100644
--- a/lisp/emulation/viper-ex.el
+++ b/lisp/emulation/viper-ex.el
@@ -427,18 +427,18 @@ viper-get-ex-token
(forward-char 1)
(setq ex-token-type 'whole))
((= char ?+)
- (cond ((or (looking-at "+[-+]") (looking-at "+[\n|]"))
+ (cond ((looking-at "\\+[-+\n|]")
(forward-char 1)
(insert "1")
(backward-char 1)
(setq ex-token-type 'plus))
- ((looking-at "+[0-9]")
+ ((looking-at "\\+[0-9]")
(forward-char 1)
(setq ex-token-type 'plus))
(t
(error viper-BadAddress))))
((= char ?-)
- (cond ((or (looking-at "-[-+]") (looking-at "-[\n|]"))
+ (cond ((looking-at "-[-+\n|]")
(forward-char 1)
(insert "1")
(backward-char 1)
@@ -455,7 +455,7 @@ viper-get-ex-token
(while (and (not (eolp)) cont)
;;(re-search-forward "[^/]*/")
(re-search-forward "[^/]*\\(/\\|\n\\)")
- (if (not (looking-back "[^\\\\]\\(\\\\\\\\\\)*\\\\/"
+ (if (not (looking-back "[^\\]\\(\\\\\\\\\\)*\\\\/"
(line-beginning-position 0)))
(setq cont nil))))
(backward-char 1)
@@ -469,7 +469,7 @@ viper-get-ex-token
(while (and (not (eolp)) cont)
;;(re-search-forward "[^\\?]*\\?")
(re-search-forward "[^\\?]*\\(\\?\\|\n\\)")
- (if (not (looking-back "[^\\\\]\\(\\\\\\\\\\)*\\\\\\?"
+ (if (not (looking-back "[^\\]\\(\\\\\\\\\\)*\\\\\\?"
(line-beginning-position 0)))
(setq cont nil))
(backward-char 1)
@@ -744,7 +744,7 @@ viper-get-ex-pat
(error
"Global regexp must be inside matching non-alphanumeric chars"))
((= c ??) (error "`?' is not an allowed pattern delimiter here")))
- (if (looking-at "[^\\\\\n]")
+ (if (looking-at "[^\\\n]")
(progn
(forward-char 1)
(set-mark (point))
@@ -757,7 +757,7 @@ viper-get-ex-pat
(error "Missing closing delimiter for global regexp")
(goto-char (point-max))))
(if (not (looking-back
- (format "[^\\\\]\\(\\\\\\\\\\)*\\\\%c" c)
+ (format "[^\\]\\(\\\\\\\\\\)*\\\\%c" c)
(line-beginning-position 0)))
(setq cont nil)
;; we are at an escaped delimiter: unescape it and continue
@@ -1686,7 +1686,7 @@ ex-set-read-variable
(message ":set <Variable> [= <Value>]")
(or batch (sit-for 2))
- (while (string-match "^[ \\t\\n]*$"
+ (while (string-match "^[ \t\n]*$"
(setq str
(completing-read ":set " ex-variable-alist)))
(message ":set <Variable> [= <Value>]")
diff --git a/lisp/epg.el b/lisp/epg.el
index dd490ad0b2..e06cc06a7d 100644
--- a/lisp/epg.el
+++ b/lisp/epg.el
@@ -1144,7 +1144,7 @@ epg--status-DELETE_PROBLEM
(defun epg--status-SIG_CREATED (context string)
(if (string-match "\\`\\([DCS]\\) \\([0-9]+\\) \\([0-9]+\\) \
-\\([0-9A-Fa-F][0-9A-Fa-F]\\) \\(.*\\) " string)
+\\([0-9A-Fa-f][0-9A-Fa-f]\\) \\(.*\\) " string)
(epg-context-set-result-for
context 'sign
(cons (epg-make-new-signature
diff --git a/lisp/erc/erc-speedbar.el b/lisp/erc/erc-speedbar.el
index 3d43457dd2..0a1e38fe24 100644
--- a/lisp/erc/erc-speedbar.el
+++ b/lisp/erc/erc-speedbar.el
@@ -140,7 +140,7 @@ erc-speedbar-server-buttons
t))))
(defun erc-speedbar-expand-server (text server indent)
- (cond ((string-match "+" text)
+ (cond ((string-match "\\+" text)
(speedbar-change-expand-button-char ?-)
(if (speedbar-with-writable
(save-excursion
@@ -185,7 +185,7 @@ erc-speedbar-expand-channel
"For the line matching TEXT, in CHANNEL, expand or contract a line.
INDENT is the current indentation level."
(cond
- ((string-match "+" text)
+ ((string-match "\\+" text)
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
@@ -285,7 +285,7 @@ erc-speedbar-update-channel
(erc-speedbar-expand-channel "+" buffer 1)))))
(defun erc-speedbar-expand-user (text token indent)
- (cond ((string-match "+" text)
+ (cond ((string-match "\\+" text)
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 101a5a05bf..bcaa3e4525 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -4285,7 +4285,7 @@ erc-is-message-ctcp-p
(defun erc-is-message-ctcp-and-not-action-p (message)
"Check if MESSAGE is a CTCP message or not."
(and (erc-is-message-ctcp-p message)
- (not (string-match "^\C-a\\ACTION.*\C-a$" message))))
+ (not (string-match "^\C-aACTION.*\C-a$" message))))
(defun erc-format-privmessage (nick msg privp msgp)
"Format a PRIVMSG in an insertable fashion."
@@ -4491,7 +4491,7 @@ erc-banlist-update
(mapcar #'upcase
(cdr (split-string mode)))))
erc-channel-banlist)))
- ((string-match "^+" mode)
+ ((string-match "^\\+" mode)
;; Add the banned mask(s) to the ban list
(mapc
(lambda (mask)
diff --git a/lisp/eshell/em-dirs.el b/lisp/eshell/em-dirs.el
index 8e79189acf..31588a472a 100644
--- a/lisp/eshell/em-dirs.el
+++ b/lisp/eshell/em-dirs.el
@@ -272,7 +272,7 @@ eshell-parse-user-reference
(defun eshell-parse-drive-letter ()
"An argument beginning with X:[^/] is a drive letter reference."
(when (and (not eshell-current-argument)
- (looking-at "\\([A-Za-z]:\\)\\([^/\\\\]\\|\\'\\)"))
+ (looking-at "\\([A-Za-z]:\\)\\([^/\\]\\|\\'\\)"))
(goto-char (match-end 1))
(let* ((letter (match-string 1))
(regexp (concat "\\`" letter))
@@ -307,7 +307,7 @@ eshell/pwd
(if (and (> len 1)
(eq (aref path (1- len)) ?/)
(not (and (eshell-under-windows-p)
- (string-match "\\`[A-Za-z]:[\\\\/]\\'" path))))
+ (string-match "\\`[A-Za-z]:[\\/]\\'" path))))
(setq path (substring path 0 (1- (length path)))))
(if eshell-pwd-convert-function
(funcall eshell-pwd-convert-function path)
diff --git a/lisp/find-dired.el b/lisp/find-dired.el
index 1935db00f2..ef137be9bb 100644
--- a/lisp/find-dired.el
+++ b/lisp/find-dired.el
@@ -175,7 +175,7 @@ find-dired
" " args " "
(shell-quote-argument ")")
" "))
- (if (string-match "\\`\\(.*\\) {} \\(\\\\;\\|+\\)\\'"
+ (if (string-match "\\`\\(.*\\) {} \\(\\\\;\\|\\+\\)\\'"
(car find-ls-option))
(format "%s %s %s"
(match-string 1 (car find-ls-option))
diff --git a/lisp/frame.el b/lisp/frame.el
index 7fe3282eb5..d71a3fe5e8 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -1072,7 +1072,7 @@ frame-set-background-mode
(default-bg-mode
(if (or (window-system frame)
(and tty-type
- (string-match "^\\(xterm\\|\\rxvt\\|dtterm\\|eterm\\)"
+ (string-match "^\\(xterm\\|rxvt\\|dtterm\\|eterm\\)"
tty-type)))
'light
'dark))
diff --git a/lisp/generic-x.el b/lisp/generic-x.el
index 47dfd2822d..c430be78ab 100644
--- a/lisp/generic-x.el
+++ b/lisp/generic-x.el
@@ -294,7 +294,7 @@ apache-log-generic-mode
nil
nil
;; Hostname ? user date request return-code number-of-bytes
- '(("^\\([-a-zA-z0-9.]+\\) - [-A-Za-z]+ \\(\\[.*\\]\\)"
+ '(("^\\([-a-zA-Z0-9.]+\\) - [-A-Za-z]+ \\(\\[.*\\]\\)"
(1 font-lock-constant-face)
(2 font-lock-variable-name-face)))
'("access_log\\'")
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index 06f7be3da7..fa3abfac58 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -7378,7 +7378,7 @@ gnus-button-valid-fqdn-regexp
;; Regexp suggested by Felix Wiemann in <87oeuomcz9.fsf@news2.ososo.de>
(defcustom gnus-button-valid-localpart-regexp
- "[a-z0-9$%(*-=?[_][^<>\")!;:,{}\n\t @]*"
+ "[a-z$%(*-=?[_][^<>\")!;:,{}\n\t @]*"
"Regular expression that matches a localpart of mail addresses or MIDs."
:version "22.1"
:group 'gnus-article-buttons
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index e5574d4f4f..0bd15f3e39 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -3751,7 +3751,7 @@ gnus-short-group-name
;; otherwise collapse to select method.
(let* ((colon (string-match ":" group))
(server (and colon (substring group 0 colon)))
- (plus (and server (string-match "+" server))))
+ (plus (and server (string-match "\\+" server))))
(when server
(if plus
(setq foreign (substring server (+ 1 plus)
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 0085337940..d490f0ca74 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -1288,7 +1288,7 @@ message-mailer-swallows-blank-line
;; According to RFC 822 and its successors, the field name must
;; consist of printable US-ASCII characters other than colon,
;; i.e., decimal 33-56 and 59-126.
- '(looking-at "[ \t]\\|[][!\"#$%&'()*+,-./0-9;<=>?@A-Z\\\\^_`a-z{|}~]+:"))
+ '(looking-at "[ \t]\\|[][!\"#$%&'()*+,-./0-9;<=>?@A-Z\\^_`a-z{|}~]+:"))
"Set this non-nil if the system's mailer runs the header and body together.
\(This problem exists on Sunos 4 when sendmail is run in remote mode.)
The value should be an expression to test whether the problem will
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index f34930af8e..2d3c140536 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -155,7 +155,7 @@ ibuffer-fontification-alist
(string-match ibuffer-compressed-file-name-regexp
buffer-file-name))
font-lock-doc-face)
- (20 (string-match "^*" (buffer-name)) font-lock-keyword-face)
+ (20 (string-match "^\\*" (buffer-name)) font-lock-keyword-face)
(25 (and (string-match "^ " (buffer-name))
(null buffer-file-name))
italic)
diff --git a/lisp/ido.el b/lisp/ido.el
index 8078d184db..c268289a18 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -3788,13 +3788,13 @@ ido-set-matches-1
(not (and (eq ido-cur-item 'buffer)
ido-buffer-disable-smart-matches))
(not ido-enable-regexp)
- (not (string-match "$\\'" rex0))
+ (not (string-match "\\$\\'" rex0))
(concat "\\`" rex0 (if slash "/" "") "\\'")))
(suffix-re (and do-full slash
(not (and (eq ido-cur-item 'buffer)
ido-buffer-disable-smart-matches))
(not ido-enable-regexp)
- (not (string-match "$\\'" rex0))
+ (not (string-match "\\$\\'" rex0))
(concat rex0 "/\\'")))
(prefix-re (and full-re (not ido-enable-prefix)
(concat "\\`" rexq)))
diff --git a/lisp/info-xref.el b/lisp/info-xref.el
index e8750a7db7..c55398b73f 100644
--- a/lisp/info-xref.el
+++ b/lisp/info-xref.el
@@ -71,7 +71,7 @@ info-xref-case-fold
(defun info-xref-lock-file-p (filename)
"Return non-nil if FILENAME is an Emacs lock file.
A lock file is \".#foo.txt\" etc per `lock-buffer'."
- (string-match "\\(\\`\\|\\/\\)\\.#" filename))
+ (string-match "\\(\\`\\|/\\)\\.#" filename))
(defun info-xref-subfile-p (filename)
"Return t if FILENAME is an info subfile.
diff --git a/lisp/info.el b/lisp/info.el
index 6038273c37..c650d88257 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -1531,7 +1531,7 @@ Info-dir-remove-duplicates
(save-restriction
(narrow-to-region start (point))
(goto-char (point-min))
- (while (re-search-forward "^* \\([^:\n]+:\\(:\\|[^.\n]+\\).\\)" nil 'move)
+ (while (re-search-forward "^\\* \\([^:\n]+:\\(:\\|[^.\n]+\\).\\)" nil 'move)
;; Fold case straight away; `member-ignore-case' here wasteful.
(let ((x (downcase (match-string 1))))
(if (member x seen)
@@ -1602,7 +1602,7 @@ Info-unescape-quotes
"Unescape double quotes and backslashes in VALUE."
(let ((start 0)
(unquote value))
- (while (string-match "[^\\\"]*\\(\\\\\\)[\\\\\"]" unquote start)
+ (while (string-match "[^\\\"]*\\(\\\\\\)[\\\"]" unquote start)
(setq unquote (replace-match "" t t unquote 1))
(setq start (- (match-end 0) 1)))
unquote))
@@ -1619,7 +1619,7 @@ Info-split-parameter-string
(let ((start 0)
(parameter-alist))
(while (string-match
- "\\s *\\([^=]+\\)=\\(?:\\([^\\s \"]+\\)\\|\\(?:\"\\(\\(?:[^\\\"]\\|\\\\[\\\\\"]\\)*\\)\"\\)\\)"
+ "\\s *\\([^=]+\\)=\\(?:\\([^\\s \"]+\\)\\|\\(?:\"\\(\\(?:[^\\\"]\\|\\\\[\\\"]\\)*\\)\"\\)\\)"
parameter-string start)
(setq start (match-end 0))
(push (cons (match-string 1 parameter-string)
@@ -5204,7 +5204,7 @@ Info-speedbar-expand-node
TEXT is the text of the button we clicked on, a + or - item.
TOKEN is data related to this node (NAME . FILE).
INDENT is the current indentation depth."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(if (speedbar-with-writable
(save-excursion
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 023fcbc5d1..5393958013 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -2545,7 +2545,7 @@ sgml-html-meta-auto-coding-function
;; (allowing for whitespace at bob). Note: 'DOCTYPE NETSCAPE' is
;; useful for Mozilla bookmark files.
(when (and (re-search-forward "\\`[[:space:]\n]*\\(<!doctype[[:space:]\n]+\\(html\\|netscape\\)\\|<html\\)" size t)
- (re-search-forward "<meta\\s-+\\(http-equiv=[\"']?content-type[\"']?\\s-+content=[\"']text/\\sw+;\\s-*\\)?charset=[\"']?\\(.+?\\)[\"'\\s-/>]" size t))
+ (re-search-forward "<meta\\s-+\\(http-equiv=[\"']?content-type[\"']?\\s-+content=[\"']text/\\sw+;\\s-*\\)?charset=[\"']?\\(.+?\\)[\"'[:space:]/>]" size t))
(let* ((match (match-string 2))
(sym (intern (downcase match))))
(if (coding-system-p sym)
diff --git a/lisp/isearch.el b/lisp/isearch.el
index b9441336f9..6280afebdc 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -2874,7 +2874,8 @@ isearch-pre-command-hook
(or (eq (get this-command 'isearch-move) 'enabled)
(and (eq isearch-yank-on-move t)
(stringp (nth 1 (interactive-form this-command)))
- (string-match-p "^^" (nth 1 (interactive-form this-command))))
+ (string-match-p "^\\^"
+ (nth 1 (interactive-form this-command))))
(and (eq isearch-yank-on-move 'shift)
this-command-keys-shift-translated)))
(setq this-command-keys-shift-translated nil)
diff --git a/lisp/language/ethio-util.el b/lisp/language/ethio-util.el
index afc2239fbf..512d49b9c5 100644
--- a/lisp/language/ethio-util.el
+++ b/lisp/language/ethio-util.el
@@ -804,7 +804,7 @@ ethio-fidel-to-tex-buffer
;; Special Ethiopic punctuation.
(goto-char (point-min))
- (while (re-search-forward "\\ce[»\\.\\?]\\|«\\ce" nil t)
+ (while (re-search-forward "\\ce[»\\.?]\\|«\\ce" nil t)
(cond
((= (setq ch (preceding-char)) ?\»)
(delete-char -1)
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 7f7f0e967d..91291b8d33 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -2575,7 +2575,7 @@ rmail-collect-deleted
(save-excursion
(setq deleted-head
(cons (if (and (search-forward (concat rmail-attribute-header ": ") message-end t)
- (looking-at "?D"))
+ (looking-at "\\?D"))
?D
?\s) deleted-head))))
diff --git a/lisp/mh-e/mh-alias.el b/lisp/mh-e/mh-alias.el
index 49f55475a7..c6cdfc40c9 100644
--- a/lisp/mh-e/mh-alias.el
+++ b/lisp/mh-e/mh-alias.el
@@ -338,7 +338,7 @@ mh-alias-suggest-alias
;; Two words -> first.last
(downcase
(format "%s.%s" (match-string 1 string) (match-string 2 string))))
- ((string-match "^\\([-a-zA-Z0-9._]+\\)@[-a-zA-z0-9_]+\\.+[a-zA-Z0-9]+$"
+ ((string-match "^\\([-a-zA-Z0-9._]+\\)@[-a-zA-Z0-9_]+\\.+[a-zA-Z0-9]+$"
string)
;; email only -> downcase username
(downcase (match-string 1 string)))
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el
index 706e64dd77..b96ef74538 100644
--- a/lisp/mh-e/mh-comp.el
+++ b/lisp/mh-e/mh-comp.el
@@ -612,7 +612,7 @@ mh-forward
(goto-char (mh-mail-header-end))
(while
(re-search-forward
- "^#forw \\[\\([^]]+\\)\\] \\(+\\S-+\\) \\(.*\\)$"
+ "^#forw \\[\\([^]]+\\)\\] \\(\\+\\S-+\\) \\(.*\\)$"
(point-max) t)
(let ((description (if (equal (match-string 1)
"forwarded messages")
diff --git a/lisp/mh-e/mh-search.el b/lisp/mh-e/mh-search.el
index 1a14f4f3dc..c017baec66 100644
--- a/lisp/mh-e/mh-search.el
+++ b/lisp/mh-e/mh-search.el
@@ -495,16 +495,16 @@ mh-index-next-folder
(let ((point (point)))
(forward-line (if backward-flag 0 1))
(cond ((if backward-flag
- (re-search-backward "^+" (point-min) t)
- (re-search-forward "^+" (point-max) t))
+ (re-search-backward "^\\+" (point-min) t)
+ (re-search-forward "^\\+" (point-max) t))
(beginning-of-line))
((and (if backward-flag
(goto-char (point-max))
(goto-char (point-min)))
nil))
((if backward-flag
- (re-search-backward "^+" (point-min) t)
- (re-search-forward "^+" (point-max) t))
+ (re-search-backward "^\\+" (point-min) t)
+ (re-search-forward "^\\+" (point-max) t))
(beginning-of-line))
(t (goto-char point))))))
@@ -1429,7 +1429,7 @@ mh-index-create-imenu-index
(setq which-func-mode t))
(let ((alist ()))
(goto-char (point-min))
- (while (re-search-forward "^+" nil t)
+ (while (re-search-forward "^\\+" nil t)
(save-excursion
(beginning-of-line)
(push (cons (buffer-substring-no-properties
diff --git a/lisp/mh-e/mh-xface.el b/lisp/mh-e/mh-xface.el
index 9a03fef110..ddb001ac8f 100644
--- a/lisp/mh-e/mh-xface.el
+++ b/lisp/mh-e/mh-xface.el
@@ -197,7 +197,7 @@ mh-picon-get-image
(mh-funcall-if-exists ietf-drums-parse-address
from-field))))
(host (and from
- (string-match "\\([^+]*\\)\\(+.*\\)?@\\(.*\\)" from)
+ (string-match "\\([^+]*\\)\\(\\+.*\\)?@\\(.*\\)" from)
(downcase (match-string 3 from))))
(user (and host (downcase (match-string 1 from))))
(canonical-address (format "%s@%s" user host))
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 9fe961d748..c5d714846d 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -2311,7 +2311,7 @@ completion--embedded-envvar-re
;; We can't reuse env--substitute-vars-regexp because we need to match only
;; potentially-unfinished envvars at end of string.
(concat "\\(?:^\\|[^$]\\(?:\\$\\$\\)*\\)"
- "$\\([[:alnum:]_]*\\|{\\([^}]*\\)\\)\\'"))
+ "\\$\\([[:alnum:]_]*\\|{\\([^}]*\\)\\)\\'"))
(defun completion--embedded-envvar-table (string _pred action)
"Completion table for envvars embedded in a string.
diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el
index f2ee895049..428bf32947 100644
--- a/lisp/net/ange-ftp.el
+++ b/lisp/net/ange-ftp.el
@@ -2728,7 +2728,7 @@ ange-ftp-ls-parser
;; seem to believe in the F-switch
(if (or (and symlink (string-match "@\\'" file))
(and directory (string-match "/\\'" file))
- (and executable (string-match "*\\'" file))
+ (and executable (string-match "\\*\\'" file))
(and socket (string-match "=\\'" file)))
(setq file (substring file 0 -1)))))
(puthash file (or symlink directory) tbl)
diff --git a/lisp/net/goto-addr.el b/lisp/net/goto-addr.el
index 43659d2820..c25d787391 100644
--- a/lisp/net/goto-addr.el
+++ b/lisp/net/goto-addr.el
@@ -98,7 +98,7 @@ goto-address-fontify-maximum-size
(defvar goto-address-mail-regexp
;; Actually pretty much any char could appear in the username part. -stef
- "[-a-zA-Z0-9=._+]+@\\([-a-zA-z0-9_]+\\.\\)+[a-zA-Z0-9]+"
+ "[-a-zA-Z0-9=._+]+@\\([-a-zA-Z0-9_]+\\.\\)+[a-zA-Z0-9]+"
"A regular expression probably matching an e-mail address.")
(defvar goto-address-url-regexp
@@ -246,7 +246,7 @@ goto-address-find-address-at-point
"Find e-mail address around or before point.
Then search backwards to beginning of line for the start of an e-mail
address. If no e-mail address found, return nil."
- (re-search-backward "[^-_A-z0-9.@]" (line-beginning-position) 'lim)
+ (re-search-backward "[^-_A-Za-z0-9.@]" (line-beginning-position) 'lim)
(if (or (looking-at goto-address-mail-regexp) ; already at start
(and (re-search-forward goto-address-mail-regexp
(line-end-position) 'lim)
diff --git a/lisp/net/pop3.el b/lisp/net/pop3.el
index cd6a113bff..599e2305f7 100644
--- a/lisp/net/pop3.el
+++ b/lisp/net/pop3.el
@@ -585,7 +585,7 @@ pop3-read-response
(goto-char pop3-read-point)
(if (looking-at "-ERR")
(error "%s" (buffer-substring (point) (- match-end 2)))
- (if (not (looking-at "+OK"))
+ (if (not (looking-at "\\+OK"))
(progn (setq pop3-read-point match-end) nil)
(setq pop3-read-point match-end)
(if return
@@ -684,14 +684,14 @@ pop3-user
"Send USER information to POP3 server."
(pop3-send-command process (format "USER %s" user))
(let ((response (pop3-read-response process t)))
- (if (not (and response (string-match "+OK" response)))
+ (if (not (and response (string-match "\\+OK" response)))
(error "USER %s not valid" user))))
(defun pop3-pass (process)
"Send authentication information to the server."
(pop3-send-command process (format "PASS %s" pop3-password))
(let ((response (pop3-read-response process t)))
- (if (not (and response (string-match "+OK" response)))
+ (if (not (and response (string-match "\\+OK" response)))
(pop3-quit process))))
(defun pop3-apop (process user)
@@ -704,7 +704,7 @@ pop3-apop
(let ((hash (md5 (concat pop3-timestamp pass) nil nil 'binary)))
(pop3-send-command process (format "APOP %s %s" user hash))
(let ((response (pop3-read-response process t)))
- (if (not (and response (string-match "+OK" response)))
+ (if (not (and response (string-match "\\+OK" response)))
(pop3-quit process)))))
))
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 420a72d42e..b35b36eac7 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -870,7 +870,7 @@ tramp-prefix-ipv6-regexp
;; The following regexp is a bit sloppy. But it shall serve our
;; purposes. It covers also IPv4 mapped IPv6 addresses, like in
;; "::ffff:192.168.0.1".
-(defconst tramp-ipv6-regexp "\\(?:\\(?:[a-zA-Z0-9]+\\)?:\\)+[a-zA-Z0-9.]+"
+(defconst tramp-ipv6-regexp "\\(?:[a-zA-Z0-9]*:\\)+[a-zA-Z0-9.]+"
"Regexp matching IPv6 addresses.")
(defconst tramp-postfix-ipv6-format-alist
@@ -2087,7 +2087,7 @@ tramp-replace-environment-variables
(tramp-compat-funcall 'substitute-env-vars filename 'only-defined))
;; We need an own implementation.
(save-match-data
- (let ((idx (string-match "$\\(\\w+\\)" filename)))
+ (let ((idx (string-match "\\$\\(\\w+\\)" filename)))
;; `$' is coded as `$$'.
(when (and idx
(or (zerop idx) (not (eq ?$ (aref filename (1- idx)))))
diff --git a/lisp/nxml/nxml-maint.el b/lisp/nxml/nxml-maint.el
index 2570e51af5..2956efb736 100644
--- a/lisp/nxml/nxml-maint.el
+++ b/lisp/nxml/nxml-maint.el
@@ -34,10 +34,10 @@ nxml-insert-target-repertoire-glyph-set
(let (lst head)
(with-current-buffer (find-file-noselect file)
(goto-char (point-min))
- (while (re-search-forward "^ *\\([a-FA-F0-9]\\{2\\}\\)[ \t]+" nil t)
+ (while (re-search-forward "^ *\\([a-fA-F0-9]\\{2\\}\\)[ \t]+" nil t)
(let ((row (match-string 1))
(eol (line-end-position)))
- (while (re-search-forward "\\([a-FA-F0-9]\\{2\\}\\)-\\([a-FA-F0-9]\\{2\\}\\)\\|\\([a-FA-F0-9]\\{2\\}\\)" eol t)
+ (while (re-search-forward "\\([a-fA-F0-9]\\{2\\}\\)-\\([a-fA-F0-9]\\{2\\}\\)\\|\\([a-fA-F0-9]\\{2\\}\\)" eol t)
(setq lst
(cons (if (match-beginning 3)
(concat "#x" row (match-string 3))
diff --git a/lisp/nxml/rng-uri.el b/lisp/nxml/rng-uri.el
index 0e458cfd2f..d8f2884f5e 100644
--- a/lisp/nxml/rng-uri.el
+++ b/lisp/nxml/rng-uri.el
@@ -42,7 +42,7 @@ rng-file-name-uri
(defun rng-uri-escape-multibyte (uri)
"Escape multibyte characters in URI."
- (replace-regexp-in-string "[:nonascii:]"
+ (replace-regexp-in-string "[[:nonascii:]]"
'rng-percent-encode
(encode-coding-string uri 'utf-8)))
diff --git a/lisp/nxml/rng-xsd.el b/lisp/nxml/rng-xsd.el
index 6cd1688fe4..f308b049f3 100644
--- a/lisp/nxml/rng-xsd.el
+++ b/lisp/nxml/rng-xsd.el
@@ -360,7 +360,7 @@ rng-xsd-base64-binary-length
n)))
(defun rng-xsd-convert-any-uri (string)
- (and (string-match "\\`\\(?:[^%]\\|%[0-9a-fA-F][0-9a-fA-F]\\)?*\\'" string)
+ (and (string-match "\\`\\(?:[^%]\\|%[0-9a-fA-F][0-9a-fA-F]\\)*\\'" string)
(string-match "\\`[^#]*\\(?:#[^#]*\\)?\\'" string)
(string-match "\\`\\(?:[a-zA-Z][-+.A-Za-z0-9]*:.+\\|[^:]*\\(?:[#/?].*\\)?\\)\\'" string)
string))
diff --git a/lisp/obsolete/pgg.el b/lisp/obsolete/pgg.el
index 86f30a3cf9..18b63fc3ee 100644
--- a/lisp/obsolete/pgg.el
+++ b/lisp/obsolete/pgg.el
@@ -572,7 +572,7 @@ pgg-fetch-key
(with-current-buffer (get-buffer-create pgg-output-buffer)
(buffer-disable-undo)
(erase-buffer)
- (let ((proto (if (string-match "^[a-zA-Z\\+\\.\\\\-]+:" keyserver)
+ (let ((proto (if (string-match "^[a-zA-Z\\+.-]+:" keyserver)
(substring keyserver 0 (1- (match-end 0))))))
(save-excursion
(funcall pgg-insert-url-function
diff --git a/lisp/obsolete/vip.el b/lisp/obsolete/vip.el
index 9260ee92e5..0360db9bca 100644
--- a/lisp/obsolete/vip.el
+++ b/lisp/obsolete/vip.el
@@ -2187,19 +2187,19 @@ vip-get-ex-token
((looking-at "%")
(forward-char 1)
(setq ex-token-type "whole"))
- ((looking-at "+")
- (cond ((or (looking-at "+[-+]") (looking-at "+[\n|]"))
+ ((looking-at "\\+")
+ (cond ((looking-at "\\+[-+\n|]")
(forward-char 1)
(insert "1")
(backward-char 1)
(setq ex-token-type "plus"))
- ((looking-at "+[0-9]")
+ ((looking-at "\\+[0-9]")
(forward-char 1)
(setq ex-token-type "plus"))
(t
(error "Badly formed address"))))
((looking-at "-")
- (cond ((or (looking-at "-[-+]") (looking-at "-[\n|]"))
+ (cond ((looking-at "-[-+\n|]")
(forward-char 1)
(insert "1")
(backward-char 1)
@@ -2520,7 +2520,7 @@ vip-get-ex-file
ex-variant t)
(forward-char 2)
(skip-chars-forward " \t")))
- (if (looking-at "+")
+ (if (looking-at "\\+")
(progn
(forward-char 1)
(set-mark (point))
diff --git a/lisp/org/ob-core.el b/lisp/org/ob-core.el
index 93b8c13aa2..b6c54a92ab 100644
--- a/lisp/org/ob-core.el
+++ b/lisp/org/ob-core.el
@@ -2955,7 +2955,7 @@ org-babel-import-elisp-from-file
(defun org-babel-string-read (cell)
"Strip nested \"s from around strings."
(org-babel-read (or (and (stringp cell)
- (string-match "\\\"\\(.+\\)\\\"" cell)
+ (string-match "\"\\(.+\\)\"" cell)
(match-string 1 cell))
cell) t))
diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el
index 6593c6d8fa..e416f5f062 100644
--- a/lisp/org/org-agenda.el
+++ b/lisp/org/org-agenda.el
@@ -9446,7 +9446,7 @@ org-agenda-add-entry-to-org-agenda-diary-file
(goto-char (point-min))
(cond
((eq type 'anniversary)
- (or (re-search-forward "^*[ \t]+Anniversaries" nil t)
+ (or (re-search-forward "^\\*[ \t]+Anniversaries" nil t)
(progn
(or (org-at-heading-p t)
(progn
diff --git a/lisp/org/org-element.el b/lisp/org/org-element.el
index 690dcd139e..04e2fda55e 100644
--- a/lisp/org/org-element.el
+++ b/lisp/org/org-element.el
@@ -2119,7 +2119,7 @@ org-element-keyword-parser
;; this corner case.
(let ((begin (or (car affiliated) (point)))
(post-affiliated (point))
- (key (progn (looking-at "[ \t]*#\\+\\(\\S-+*\\):")
+ (key (progn (looking-at "[ \t]*#\\+\\(\\S-*\\):")
(upcase (match-string-no-properties 1))))
(value (org-trim (buffer-substring-no-properties
(match-end 0) (point-at-eol))))
diff --git a/lisp/org/org-list.el b/lisp/org/org-list.el
index 96c8f55d3a..ef85b402f0 100644
--- a/lisp/org/org-list.el
+++ b/lisp/org/org-list.el
@@ -2678,7 +2678,7 @@ org-list-indent-item-generic
(error "Cannot outdent beyond margin")
;; Change bullet if necessary.
(when (and (= (+ top-ind offset) 0)
- (string-match "*"
+ (string-match "\\*"
(org-list-get-bullet beg struct)))
(org-list-set-bullet beg struct
(org-list-bullet-string "-")))
diff --git a/lisp/org/org-mhe.el b/lisp/org/org-mhe.el
index 969bff3cc6..a37c41ad06 100644
--- a/lisp/org/org-mhe.el
+++ b/lisp/org/org-mhe.el
@@ -142,7 +142,7 @@ org-mhe-get-message-folder-from-index
"Return the name of the message folder in an index folder buffer."
(save-excursion
(mh-index-previous-folder)
- (if (re-search-forward "^\\(+.*\\)$" nil t)
+ (if (re-search-forward "^\\(\\+.*\\)$" nil t)
(message "%s" (match-string 1)))))
(defun org-mhe-get-message-folder ()
diff --git a/lisp/org/org-mobile.el b/lisp/org/org-mobile.el
index 1ff6358403..83dcc7b0d1 100644
--- a/lisp/org/org-mobile.el
+++ b/lisp/org/org-mobile.el
@@ -845,11 +845,11 @@ org-mobile-apply
(cl-incf cnt-error)
(throw 'next t))
(move-marker bos-marker (point))
- (if (re-search-forward "^** Old value[ \t]*$" eos t)
+ (if (re-search-forward "^\\*\\* Old value[ \t]*$" eos t)
(setq old (buffer-substring
(1+ (match-end 0))
(progn (outline-next-heading) (point)))))
- (if (re-search-forward "^** New value[ \t]*$" eos t)
+ (if (re-search-forward "^\\*\\* New value[ \t]*$" eos t)
(setq new (buffer-substring
(1+ (match-end 0))
(progn (outline-next-heading)
diff --git a/lisp/org/org-mouse.el b/lisp/org/org-mouse.el
index ac75decb92..a3dcb77554 100644
--- a/lisp/org/org-mouse.el
+++ b/lisp/org/org-mouse.el
@@ -643,7 +643,7 @@ org-mouse-context-menu
,@(org-mouse-list-options-menu (mapcar 'car org-startup-options)
'org-mode-restart))))
((or (eolp)
- (and (looking-at "\\( \\|\t\\)\\(+:[0-9a-zA-Z_:]+\\)?\\( \\|\t\\)+$")
+ (and (looking-at "\\( \\|\t\\)\\(\\+:[0-9a-zA-Z_:]+\\)?\\( \\|\t\\)+$")
(looking-back " \\|\t" (- (point) 2)
(line-beginning-position))))
(org-mouse-popup-global-menu))
diff --git a/lisp/org/org-plot.el b/lisp/org/org-plot.el
index aa34e4011a..a5635e326d 100644
--- a/lisp/org/org-plot.el
+++ b/lisp/org/org-plot.el
@@ -336,7 +336,7 @@ org-plot/gnuplot
(insert "\n")
(insert-file-contents (plist-get params :script))
(goto-char (point-min))
- (while (re-search-forward "$datafile" nil t)
+ (while (re-search-forward "\\$datafile" nil t)
(replace-match data-file nil nil)))
(insert (org-plot/gnuplot-script data-file num-cols params)))
;; Graph table.
diff --git a/lisp/org/org-protocol.el b/lisp/org/org-protocol.el
index c31ac66bac..016105ef53 100644
--- a/lisp/org/org-protocol.el
+++ b/lisp/org/org-protocol.el
@@ -331,7 +331,7 @@ org-protocol-flatten-greedy
(len 0)
dir
ret)
- (when (string-match "^\\(.*\\)\\(org-protocol:/+[a-zA-z0-9][-_a-zA-z0-9]*:/+\\)\\(.*\\)" trigger)
+ (when (string-match "^\\(.*\\)\\(org-protocol:/+[a-zA-Z0-9][-_a-zA-Z0-9]*:/+\\)\\(.*\\)" trigger)
(setq dir (match-string 1 trigger))
(setq len (length dir))
(setcar l (concat dir (match-string 3 trigger))))
diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el
index 765a1ee5c9..b6e864fc9c 100644
--- a/lisp/org/org-table.el
+++ b/lisp/org/org-table.el
@@ -1182,7 +1182,7 @@ org-table-copy-down
(- (org-time-string-to-absolute txt)
(org-time-string-to-absolute txt-up)))
((string-match org-ts-regexp3 txt) 1)
- ((string-match "\\([-+]\\)?\\(?:[0-9]+\\)?\\(?:\.[0-9]+\\)?" txt-up)
+ ((string-match "\\([-+]\\)?[0-9]*\\(?:\\.[0-9]+\\)?" txt-up)
(- (string-to-number txt)
(string-to-number (match-string 0 txt-up))))
(t 1)))
@@ -2307,7 +2307,7 @@ org-table-store-formulas
"\n"))))
(defsubst org-table-formula-make-cmp-string (a)
- (when (string-match "\\`$[<>]" a)
+ (when (string-match "\\`\\$[<>]" a)
(let ((arrow (string-to-char (substring a 1))))
;; Fake a high number to make sure this is sorted at the end.
(setq a (org-table-formula-handle-first/last-rc a))
@@ -2355,7 +2355,7 @@ org-table-get-stored-formulas
(cond
((not (match-end 2)) m)
;; Is it a column reference?
- ((string-match-p "\\`$\\([0-9]+\\|[<>]+\\)\\'" m) m)
+ ((string-match-p "\\`\\$\\([0-9]+\\|[<>]+\\)\\'" m) m)
;; Since named columns are not possible in
;; LHS, assume this is a named field.
(t (match-string 2 string)))))
@@ -3216,7 +3216,7 @@ org-table-recalculate
(cond
((string-match "\\`@-?I+" old-lhs)
(user-error "Can't assign to hline relative reference"))
- ((string-match "\\`$[<>]" old-lhs)
+ ((string-match "\\`\\$[<>]" old-lhs)
(let ((new (org-table-formula-handle-first/last-rc
old-lhs)))
(when (assoc new eqlist)
@@ -3639,7 +3639,8 @@ org-table-edit-formulas
(setq startline (org-current-line))
(dolist (entry eql)
(let* ((type (cond
- ((string-match "\\`$\\([0-9]+\\|[<>]+\\)\\'" (car entry))
+ ((string-match "\\`\\$\\([0-9]+\\|[<>]+\\)\\'"
+ (car entry))
'column)
((equal (string-to-char (car entry)) ?@) 'field)
(t 'named)))
diff --git a/lisp/org/org.el b/lisp/org/org.el
index 8a11a8f75e..3a434d12df 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -10467,7 +10467,7 @@ org-translate-link-from-planner
((and (equal type "lisp") (string-match "^/" path))
;; Planner has a slash, we do not.
(setq type "elisp" path (substring path 1)))
- ((string-match "^//\\(.?*\\)/\\(<.*>\\)$" path)
+ ((string-match "^//\\(.*\\)/\\(<.*>\\)$" path)
;; A typical message link. Planner has the id after the final slash,
;; we separate it with a hash mark
(setq path (concat (match-string 1 path) "#"
@@ -22838,7 +22838,7 @@ org-fill-line-break-nobreak-p
(save-excursion
(skip-chars-backward "[ \t]")
(skip-chars-backward "\\\\")
- (looking-at "\\\\\\\\\\($\\|[^\\\\]\\)")))
+ (looking-at "\\\\\\\\\\($\\|[^\\]\\)")))
(defun org-fill-paragraph-with-timestamp-nobreak-p ()
"Non-nil when a new line at point would split a timestamp."
diff --git a/lisp/org/ox-ascii.el b/lisp/org/ox-ascii.el
index c20536184e..7c9920f64c 100644
--- a/lisp/org/ox-ascii.el
+++ b/lisp/org/ox-ascii.el
@@ -1474,8 +1474,8 @@ org-ascii-item
(replace-regexp-in-string
"-" "•"
(replace-regexp-in-string
- "+" "⁃"
- (replace-regexp-in-string "*" "‣" bul))))))))
+ "\\+" "⁃"
+ (replace-regexp-in-string "\\*" "‣" bul))))))))
(indentation (if (eq list-type 'descriptive) org-ascii-quote-margin
(string-width bullet))))
(concat
diff --git a/lisp/org/ox-latex.el b/lisp/org/ox-latex.el
index d3e6286149..d711530bf7 100644
--- a/lisp/org/ox-latex.el
+++ b/lisp/org/ox-latex.el
@@ -1613,7 +1613,7 @@ org-latex-math-block-options-filter
(defun org-latex-clean-invalid-line-breaks (data _backend _info)
(replace-regexp-in-string
- "\\(\\end{[A-Za-z0-9*]+}\\|^\\)[ \t]*\\\\\\\\[ \t]*$" "\\1"
+ "\\(\\\\end{[A-Za-z0-9*]+}\\|^\\)[ \t]*\\\\\\\\[ \t]*$" "\\1"
data))
\f
diff --git a/lisp/org/ox.el b/lisp/org/ox.el
index 8813968332..58bc9b0ffb 100644
--- a/lisp/org/ox.el
+++ b/lisp/org/ox.el
@@ -3322,7 +3322,7 @@ org-export-expand-include-keyword
(setq value (replace-match "" nil nil value)))))
(lines
(and (string-match
- ":lines +\"\\(\\(?:[0-9]+\\)?-\\(?:[0-9]+\\)?\\)\""
+ ":lines +\"\\([0-9]*-[0-9]*\\)\""
value)
(prog1 (match-string 1 value)
(setq value (replace-match "" nil nil value)))))
diff --git a/lisp/progmodes/ada-xref.el b/lisp/progmodes/ada-xref.el
index 7f0e166328..28c52b0653 100644
--- a/lisp/progmodes/ada-xref.el
+++ b/lisp/progmodes/ada-xref.el
@@ -416,7 +416,7 @@ ada-treat-cmd-string
file, minus extension but with directory, and ${full_current} is
replaced by the name including the extension."
- (while (string-match "\\(-[^-$IO]*[IO]\\)?${\\([^}]+\\)}" cmd-string)
+ (while (string-match "\\(-[^-$IO]*[IO]\\)?\\${\\([^}]+\\)}" cmd-string)
(let (value
(name (match-string 2 cmd-string)))
(cond
diff --git a/lisp/progmodes/cfengine.el b/lisp/progmodes/cfengine.el
index a86cb53ceb..efe648bc03 100644
--- a/lisp/progmodes/cfengine.el
+++ b/lisp/progmodes/cfengine.el
@@ -852,8 +852,8 @@ cfengine2-font-lock-keywords
;; Classes.
("^[ \t]*\\([[:alnum:]_().|!]+\\)::" 1 font-lock-function-name-face)
;; Variables.
- ("$(\\([[:alnum:]_]+\\))" 1 font-lock-variable-name-face)
- ("${\\([[:alnum:]_]+\\)}" 1 font-lock-variable-name-face)
+ ("\\$(\\([[:alnum:]_]+\\))" 1 font-lock-variable-name-face)
+ ("\\${\\([[:alnum:]_]+\\)}" 1 font-lock-variable-name-face)
;; Variable definitions.
("\\_<\\([[:alnum:]_]+\\)[ \t]*=[ \t]*(" 1 font-lock-variable-name-face)
;; File, acl &c in group: { token ... }
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index cb69a43b63..0fe4b106c5 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -3145,12 +3145,12 @@ cperl-to-comment-or-eol
(cond
((looking-at "\\(s\\|tr\\)\\>")
(or (re-search-forward
- "\\=\\w+[ \t]*#\\([^\n\\\\#]\\|\\\\[\\\\#]\\)*#\\([^\n\\\\#]\\|\\\\[\\\\#]\\)*"
+ "\\=\\w+[ \t]*#\\([^\n\\#]\\|\\\\[\\#]\\)*#\\([^\n\\#]\\|\\\\[\\#]\\)*"
lim 'move)
(setq stop-in t)))
((looking-at "\\(m\\|q\\([qxwr]\\)?\\)\\>")
(or (re-search-forward
- "\\=\\w+[ \t]*#\\([^\n\\\\#]\\|\\\\[\\\\#]\\)*#"
+ "\\=\\w+[ \t]*#\\([^\n\\#]\\|\\\\[\\#]\\)*#"
lim 'move)
(setq stop-in t)))
(t ; It was fair comment
@@ -3749,7 +3749,7 @@ cperl-find-pods-heres
state-point b nil nil state)
state-point b)
(if (or (nth 3 state) (nth 4 state)
- (looking-at "\\(cut\\|\\end\\)\\>"))
+ (looking-at "\\(cut\\|end\\)\\>"))
(if (or (nth 3 state) (nth 4 state) ignore-max)
nil ; Doing a chunk only
(message "=cut is not preceded by a POD section")
@@ -3762,10 +3762,10 @@ cperl-find-pods-heres
b1 nil) ; error condition
;; We do not search to max, since we may be called from
;; some hook of fontification, and max is random
- (or (re-search-forward "^\n=\\(cut\\|\\end\\)\\>" stop-point 'toend)
+ (or (re-search-forward "^\n=\\(cut\\|end\\)\\>" stop-point 'toend)
(progn
(goto-char b)
- (if (re-search-forward "\n=\\(cut\\|\\end\\)\\>" stop-point 'toend)
+ (if (re-search-forward "\n=\\(cut\\|end\\)\\>" stop-point 'toend)
(progn
(message "=cut is not preceded by an empty line")
(setq b1 t)
@@ -5003,7 +5003,7 @@ cperl-fix-line-spacing
;; Looking at:
;; else {
(if (looking-at
- "[ \t]*}?[ \t]*\\<\\(\\els\\(e\\|if\\)\\|continue\\|unless\\|if\\|while\\|for\\(each\\)?\\|until\\)\\>\\(\t*\\|[ \t][ \t]+\\)[^ \t\n#]")
+ "[ \t]*}?[ \t]*\\<\\(els\\(e\\|if\\)\\|continue\\|unless\\|if\\|while\\|for\\(each\\)?\\|until\\)\\>\\(\t*\\|[ \t][ \t]+\\)[^ \t\n#]")
(progn
(forward-word-strictly 1)
(delete-horizontal-space)
@@ -5031,7 +5031,7 @@ cperl-fix-line-spacing
;; Looking at (with or without "}" at start, ending after "({"):
;; } foreach my $var () OR {
(if (looking-at
- "[ \t]*\\(}[ \t]*\\)?\\<\\(\\els\\(e\\|if\\)\\|continue\\|if\\|unless\\|while\\|for\\(each\\)?\\(\\([ \t]+\\(state\\|my\\|local\\|our\\)\\)?[ \t]*\\$[_a-zA-Z0-9]+\\)?\\|until\\)\\>\\([ \t]*(\\|[ \t\n]*{\\)\\|[ \t]*{")
+ "[ \t]*\\(}[ \t]*\\)?\\<\\(els\\(e\\|if\\)\\|continue\\|if\\|unless\\|while\\|for\\(each\\)?\\(\\([ \t]+\\(state\\|my\\|local\\|our\\)\\)?[ \t]*\\$[_a-zA-Z0-9]+\\)?\\|until\\)\\>\\([ \t]*(\\|[ \t\n]*{\\)\\|[ \t]*{")
(progn
(setq ml (match-beginning 8)) ; "(" or "{" after control word
(re-search-forward "[({]")
@@ -7347,7 +7347,7 @@ cperl-have-help-regexp
"-[a-zA-Z]" ; File test
"\\\\[a-zA-Z0]" ; Special chars
"^=[a-z][a-zA-Z0-9_]*" ; POD sections
- "[-!&*+,-./<=>?\\\\^|~]+" ; Operator
+ "[-!&*+,./<=>?\\^|~]+" ; Operator
"[a-zA-Z_0-9:]+" ; symbol or number
"x="
"#!")
@@ -7364,7 +7364,7 @@ cperl-word-at-point-hard
;; Does not save-excursion
;; Get to the something meaningful
(or (eobp) (eolp) (forward-char 1))
- (re-search-backward "[-a-zA-Z0-9_:!&*+,-./<=>?\\\\^|~$%@]"
+ (re-search-backward "[-a-zA-Z0-9_:!&*+,./<=>?\\^|~$%@]"
(point-at-bol)
'to-beg)
;; (cond
@@ -7391,8 +7391,8 @@ cperl-word-at-point-hard
(forward-char -1))
((and (looking-at "\\^") (eq (preceding-char) ?\$)) ; $^I
(forward-char -1))
- ((looking-at "[-!&*+,-./<=>?\\\\^|~]")
- (skip-chars-backward "-!&*+,-./<=>?\\\\^|~")
+ ((looking-at "[-!&*+,./<=>?\\^|~]")
+ (skip-chars-backward "-!&*+,./<=>?\\^|~")
(cond
((and (eq (preceding-char) ?\$)
(not (eq (char-after (- (point) 2)) ?\$))) ; $-
@@ -8145,7 +8145,7 @@ cperl-make-regexp-x
;; Protect fragile " ", "#"
(if have-x nil
(goto-char (1+ b))
- (while (re-search-forward "\\(\\=\\|[^\\\\]\\)\\(\\\\\\\\\\)*[ \t\n#]" e t) ; Need to include (?#) too?
+ (while (re-search-forward "\\(\\=\\|[^\\]\\)\\(\\\\\\\\\\)*[ \t\n#]" e t) ; Need to include (?#) too?
(forward-char -1)
(insert "\\")
(forward-char 1)))
diff --git a/lisp/progmodes/dcl-mode.el b/lisp/progmodes/dcl-mode.el
index 17137cf303..d5803c77bb 100644
--- a/lisp/progmodes/dcl-mode.el
+++ b/lisp/progmodes/dcl-mode.el
@@ -1580,7 +1580,7 @@ dcl-option-value-offset
Returns the column offset."
(save-excursion
(beginning-of-line)
- (re-search-forward "^$[ \t]*" nil t)
+ (re-search-forward "^\\$[ \t]*" nil t)
(current-column)))
diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el
index a2392328ba..c2715be537 100644
--- a/lisp/progmodes/etags.el
+++ b/lisp/progmodes/etags.el
@@ -1645,7 +1645,7 @@ tag-implicit-name-match-p
;; a textual description of the four rules.
(and (string-match "^[^ \t()=,;]+$" tag) ;rule #1
;; Rules #2 and #4, and a check that there's no explicit name.
- (looking-at "[ \t()=,;]?\177\\(?:[0-9]+\\)?,\\(?:[0-9]+\\)?$")
+ (looking-at "[ \t()=,;]?\177[0-9]*,[0-9]*$")
(save-excursion
(backward-char (1+ (length tag)))
(looking-at "[\n \t()=,;]")))) ;rule #3
diff --git a/lisp/progmodes/fortran.el b/lisp/progmodes/fortran.el
index be272c0922..c1a267f4c5 100644
--- a/lisp/progmodes/fortran.el
+++ b/lisp/progmodes/fortran.el
@@ -2052,7 +2052,7 @@ fortran-fill
(when (<= (point) bos)
(move-to-column (1+ fill-column))
;; What is this doing???
- (or (re-search-forward "[\t\n,'+-/*)=]" eol t)
+ (or (re-search-forward "[-\t\n,'+./*)=]" eol t)
(goto-char bol)))
(if (bolp)
(re-search-forward "[ \t]" opoint t))
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index b9654dd5c2..75e2deaa4c 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -1373,7 +1373,7 @@ gdb-speedbar-expand-node
TEXT is the text of the button we clicked on, a + or - item.
TOKEN is data related to this node.
INDENT is the current indentation depth."
- (cond ((string-match "+" text) ;expand this node
+ (cond ((string-match "\\+" text) ;expand this node
(let* ((var (assoc token gdb-var-list))
(expr (nth 1 var)) (children (nth 2 var)))
(if (or (<= (string-to-number children) gdb-max-children)
@@ -4153,7 +4153,7 @@ gdb-locals-handler-custom
(when (not value)
(setq value "<complex data type>"))
(if (or (not value)
- (string-match "\\0x" value))
+ (string-match "0x" value))
(add-text-properties 0 (length name)
`(mouse-face highlight
help-echo "mouse-2: create watch expression"
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index 3fd2a7e701..a5427dd8b7 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -457,13 +457,13 @@ grep-mode-font-lock-keywords
(": \\(.+\\): \\(?:Permission denied\\|No such \\(?:file or directory\\|device or address\\)\\)$"
1 grep-error-face)
;; remove match from grep-regexp-alist before fontifying
- ("^Grep[/a-zA-z]* started.*"
+ ("^Grep[/a-zA-Z]* started.*"
(0 '(face nil compilation-message nil help-echo nil mouse-face nil) t))
- ("^Grep[/a-zA-z]* finished with \\(?:\\(\\(?:[0-9]+ \\)?matches found\\)\\|\\(no matches found\\)\\).*"
+ ("^Grep[/a-zA-Z]* finished with \\(?:\\(\\(?:[0-9]+ \\)?matches found\\)\\|\\(no matches found\\)\\).*"
(0 '(face nil compilation-message nil help-echo nil mouse-face nil) t)
(1 compilation-info-face nil t)
(2 compilation-warning-face nil t))
- ("^Grep[/a-zA-z]* \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?.*"
+ ("^Grep[/a-zA-Z]* \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?.*"
(0 '(face nil compilation-message nil help-echo nil mouse-face nil) t)
(1 grep-error-face)
(2 grep-error-face nil t))
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index d8cae41899..92f5205a6d 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -2237,7 +2237,7 @@ gud-jdb-find-source-using-classpath
(split-string
;; Eliminate any subclass references in the class
;; name string. These start with a "$"
- (if (string-match "$.*" p)
+ (if (string-match "\\$.*" p)
(replace-match "" t t p) p)
"\\.") "/")
".java"))
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 532739daae..f1ec5ceea5 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -1838,7 +1838,7 @@ js--continued-expression-p
(save-excursion (backward-char) (not (looking-at "[/*]/\\|=>")))
(js--looking-at-operator-p)
(and (progn (backward-char)
- (not (looking-at "+\\+\\|--\\|/[/*]"))))))))))
+ (not (looking-at "\\+\\+\\|--\\|/[/*]"))))))))))
(defun js--skip-term-backward ()
"Skip a term before point; return t if a term was skipped."
diff --git a/lisp/progmodes/m4-mode.el b/lisp/progmodes/m4-mode.el
index 9c9bee1c51..98b812f52f 100644
--- a/lisp/progmodes/m4-mode.el
+++ b/lisp/progmodes/m4-mode.el
@@ -65,7 +65,7 @@ m4-program-options
(defvar m4-font-lock-keywords
'(("\\(\\_<\\(m4_\\)?dnl\\_>\\).*$" . font-lock-comment-face)
("\\$[*#@0-9]" . font-lock-variable-name-face)
- ("\\$\\@" . font-lock-variable-name-face)
+ ("\\$@" . font-lock-variable-name-face)
("\\$\\*" . font-lock-variable-name-face)
("\\_<\\(m4_\\)?\\(builtin\\|change\\(com\\|quote\\|word\\)\\|d\\(e\\(bug\\(file\\|mode\\)\\|cr\\|f\\(ine\\|n\\)\\)\\|iv\\(ert\\|num\\)\\|nl\\|umpdef\\)\\|e\\(rrprint\\|syscmd\\|val\\)\\|f\\(ile\\|ormat\\)\\|gnu\\|i\\(f\\(def\\|else\\)\\|n\\(c\\(lude\\|r\\)\\|d\\(ex\\|ir\\)\\)\\)\\|l\\(en\\|ine\\)\\|m\\(4\\(exit\\|wrap\\)\\|aketemp\\)\\|p\\(atsubst\\|opdef\\|ushdef\\)\\|regexp\\|s\\(hift\\|include\\|ubstr\\|ys\\(cmd\\|val\\)\\)\\|tra\\(ceo\\(ff\\|n\\)\\|nslit\\)\\|un\\(d\\(efine\\|ivert\\)\\|ix\\)\\)\\_>" . font-lock-keyword-face))
"Default `font-lock-keywords' for M4 mode.")
diff --git a/lisp/progmodes/meta-mode.el b/lisp/progmodes/meta-mode.el
index 34b8bbbd39..8d3745be7c 100644
--- a/lisp/progmodes/meta-mode.el
+++ b/lisp/progmodes/meta-mode.el
@@ -666,7 +666,7 @@ meta-indent-level-count
(let ((count 0))
(narrow-to-region
(point) (save-excursion
- (re-search-forward "[^\\\\\"]%\\|\n\\|\\'" nil t)
+ (re-search-forward "[^\\\"]%\\|\n\\|\\'" nil t)
(backward-char) (point)))
(while (re-search-forward "\\<\\sw+\\>\\|(\\|)" nil t)
(save-excursion
diff --git a/lisp/progmodes/mixal-mode.el b/lisp/progmodes/mixal-mode.el
index 1ea4b33093..a759709b5c 100644
--- a/lisp/progmodes/mixal-mode.el
+++ b/lisp/progmodes/mixal-mode.el
@@ -1044,7 +1044,7 @@ mixal-font-lock-keywords
. mixal-font-lock-operation-code-face)
(,(regexp-opt mixal-assembly-pseudoinstructions 'words)
. mixal-font-lock-assembly-pseudoinstruction-face)
- ("^[A-Z0-9a-z]*[ \t]+[A-ZO-9a-z]+[ \t]+\\(=.*=\\)"
+ ("^[A-Z0-9a-z]*[ \t]+[A-Z0-9a-z]+[ \t]+\\(=.*=\\)"
(1 font-lock-constant-face)))
"Keyword highlighting specification for `mixal-mode'.")
;; (makunbound 'mixal-font-lock-keywords)
diff --git a/lisp/progmodes/opascal.el b/lisp/progmodes/opascal.el
index 7cc6882f8b..7d51816bf4 100644
--- a/lisp/progmodes/opascal.el
+++ b/lisp/progmodes/opascal.el
@@ -1519,7 +1519,7 @@ opascal-find-unit-in-directory
(setq dir-name (match-string 1 dir-name)
recurse t))
;; Ensure the trailing slash is removed.
- (if (string-match "^\\(.+\\)[\\\\/]$" dir-name)
+ (if (string-match "^\\(.+\\)[\\/]$" dir-name)
(setq dir-name (match-string 1 dir-name)))
(opascal-search-directory unit dir-name recurse)))
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index 81fff826bc..cae514aa75 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -117,7 +117,7 @@ pascal-symbol-re
(defconst pascal-beg-block-re "\\<\\(begin\\|case\\|record\\|repeat\\)\\>")
(defconst pascal-end-block-re "\\<\\(end\\|until\\)\\>")
(defconst pascal-declaration-re "\\<\\(const\\|label\\|type\\|var\\)\\>")
-(defconst pascal-progbeg-re "\\<\\program\\>")
+(defconst pascal-progbeg-re "\\<program\\>")
(defconst pascal-defun-re "\\<\\(function\\|procedure\\|program\\)\\>")
(defconst pascal-sub-block-re "\\<\\(if\\|else\\|for\\|while\\|with\\)\\>")
(defconst pascal-noindent-re "\\<\\(begin\\|end\\|until\\|else\\)\\>")
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index e83778af94..e575d6cc16 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -108,7 +108,7 @@ ruby-singleton-class-re
"Regexp to match the beginning of a heredoc.")
(defconst ruby-expression-expansion-re
- "\\(?:[^\\]\\|\\=\\)\\(\\\\\\\\\\)*\\(#\\({[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\|\\(\\$\\|@\\|@@\\)\\(\\w\\|_\\)+\\|\\$[^a-zA-Z \n]\\)\\)"))
+ "\\(?:[^\\]\\|\\=\\)\\(\\\\\\\\\\)*\\(#\\({[^}\n\\]*\\(\\\\.[^}\n\\]*\\)*}\\|\\(\\$\\|@\\|@@\\)\\(\\w\\|_\\)+\\|\\$[^a-zA-Z \n]\\)\\)"))
(defun ruby-here-doc-end-match ()
"Return a regexp to find the end of a heredoc.
@@ -929,9 +929,9 @@ ruby-expr-beg
(goto-char (match-end 0))
(not (looking-at "\\s_")))
((eq option 'expr-qstr)
- (looking-at "[a-zA-Z][a-zA-z0-9_]* +%[^ \t]"))
+ (looking-at "[a-zA-Z][a-zA-Z0-9_]* +%[^ \t]"))
((eq option 'expr-re)
- (looking-at "[a-zA-Z][a-zA-z0-9_]* +/[^ \t]"))
+ (looking-at "[a-zA-Z][a-zA-Z0-9_]* +/[^ \t]"))
(t nil)))))))))
(defun ruby-forward-string (term &optional end no-error expand)
@@ -1047,7 +1047,7 @@ ruby-parse-partial
((looking-at "\\?") ;skip ?char
(cond
((and (ruby-expr-beg)
- (looking-at "?\\(\\\\C-\\|\\\\M-\\)*\\\\?."))
+ (looking-at "\\?\\(\\\\C-\\|\\\\M-\\)*\\\\?."))
(goto-char (match-end 0)))
(t
(goto-char pnt))))
@@ -1794,8 +1794,8 @@ ruby-toggle-string-quotes
(buffer-substring-no-properties (1+ min) (1- max))))
(setq content
(if (equal string-quote "'")
- (replace-regexp-in-string "\\\\\"" "\"" (replace-regexp-in-string "\\(\\`\\|[^\\\\]\\)'" "\\1\\\\'" content))
- (replace-regexp-in-string "\\\\'" "'" (replace-regexp-in-string "\\(\\`\\|[^\\\\]\\)\"" "\\1\\\\\"" content))))
+ (replace-regexp-in-string "\\\\\"" "\"" (replace-regexp-in-string "\\(\\`\\|[^\\]\\)'" "\\1\\\\'" content))
+ (replace-regexp-in-string "\\\\'" "'" (replace-regexp-in-string "\\(\\`\\|[^\\]\\)\"" "\\1\\\\\"" content))))
(let ((orig-point (point)))
(delete-region min max)
(insert
@@ -2178,7 +2178,7 @@ ruby-font-lock-keywords
font-lock-constant-face)
nil t))
;; Special globals.
- (,(concat "\\$\\(?:[:\"!@;,/\\._><\\$?~=*&`'+0-9]\\|-[0adFiIlpvw]\\|"
+ (,(concat "\\$\\(?:[:\"!@;,/._><\\$?~=*&`'+0-9]\\|-[0adFiIlpvw]\\|"
(regexp-opt '("LOAD_PATH" "LOADED_FEATURES" "PROGRAM_NAME"
"ERROR_INFO" "ERROR_POSITION"
"FS" "FIELD_SEPARATOR"
diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el
index 2a42e7f451..6d91d84fa7 100644
--- a/lisp/progmodes/sql.el
+++ b/lisp/progmodes/sql.el
@@ -3225,11 +3225,11 @@ sql--make-help-docstring
"Return a docstring for `sql-help' listing loaded SQL products."
(let ((doc sql--help-docstring))
;; Insert FREE software list
- (when (string-match "^\\(\\s-*\\)[\\\\][\\\\]FREE\\s-*$" doc 0)
+ (when (string-match "^\\(\\s-*\\)[\\][\\]FREE\\s-*$" doc 0)
(setq doc (replace-match (sql-help-list-products (match-string 1 doc) t)
t t doc 0)))
;; Insert non-FREE software list
- (when (string-match "^\\(\\s-*\\)[\\\\][\\\\]NONFREE\\s-*$" doc 0)
+ (when (string-match "^\\(\\s-*\\)[\\][\\]NONFREE\\s-*$" doc 0)
(setq doc (replace-match (sql-help-list-products (match-string 1 doc) nil)
t t doc 0)))
doc))
diff --git a/lisp/progmodes/verilog-mode.el b/lisp/progmodes/verilog-mode.el
index a949a461c1..e1003378b2 100644
--- a/lisp/progmodes/verilog-mode.el
+++ b/lisp/progmodes/verilog-mode.el
@@ -2786,7 +2786,7 @@ verilog-inst-comment-re
(defconst verilog-behavioral-block-beg-re
(eval-when-compile (verilog-regexp-words '("initial" "final" "always" "always_comb" "always_latch" "always_ff"
"function" "task"))))
-(defconst verilog-coverpoint-re "\\w+\\s*:\\s*\\(coverpoint\\|cross\\constraint\\)" )
+(defconst verilog-coverpoint-re "\\w+\\s-*:\\s-*\\(coverpoint\\|cross\\constraint\\)" )
(defconst verilog-in-constraint-re ; keywords legal in constraint blocks starting a statement/block
(eval-when-compile (verilog-regexp-words '("if" "else" "solve" "foreach"))))
@@ -6559,7 +6559,7 @@ verilog-skip-forward-comment-p
(skip-chars-forward " \t\n\f")
(while
(cond
- ((looking-at "\\/\\*")
+ ((looking-at "/\\*")
(progn
(setq h (point))
(goto-char (match-end 0))
@@ -8952,7 +8952,7 @@ verilog-read-sub-decls-gate
(error "%s: Unmatched (* *), at char %d" (verilog-point-text) (point))))
;; On pins, parse and advance to next pin
;; Looking at pin, but *not* an // Output comment, or ) to end the inst
- ((looking-at "\\s-*[a-zA-Z0-9`_$({}\\\\][^,]*")
+ ((looking-at "\\s-*[a-zA-Z0-9`_$({}\\][^,]*")
(goto-char (match-end 0))
(setq verilog-read-sub-decls-gate-ios (or (car iolist) "input")
iolist (cdr iolist))
@@ -9357,7 +9357,7 @@ verilog-read-auto-template-middle
;; Regexp form??
((looking-at
;; Regexp bug in XEmacs disallows ][ inside [], and wants + last
- "\\s-*\\.\\(\\([a-zA-Z0-9`_$+@^.*?|---]\\|[][]\\|\\\\[()|]\\)+\\)\\s-*(\\(.*\\))\\s-*\\(,\\|)\\s-*;\\)")
+ "\\s-*\\.\\(\\([-a-zA-Z0-9`_$+@^.*?]\\|[][]\\|\\\\[()|]\\)+\\)\\s-*(\\(.*\\))\\s-*\\(,\\|)\\s-*;\\)")
(setq rep (match-string-no-properties 3))
(goto-char (match-end 0))
(setq tpl-wild-list
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el
index b8297c4847..1dc0c61d06 100644
--- a/lisp/progmodes/vhdl-mode.el
+++ b/lisp/progmodes/vhdl-mode.el
@@ -2474,7 +2474,7 @@ vhdl-project-p
(defun vhdl-resolve-env-variable (string)
"Resolve environment variables in STRING."
- (while (string-match "\\(.*\\)${?\\(\\(\\w\\|_\\)+\\)}?\\(.*\\)" string)
+ (while (string-match "\\(.*\\)\\${?\\(\\(\\w\\|_\\)+\\)}?\\(.*\\)" string)
(setq string (concat (match-string 1 string)
(getenv (match-string 2 string))
(match-string 4 string))))
@@ -15115,7 +15115,7 @@ vhdl-speedbar-expand-all
(defun vhdl-speedbar-expand-project (text token indent)
"Expand/contract the project under the cursor."
(cond
- ((string-match "+" text) ; expand project
+ ((string-match "\\+" text) ; expand project
(speedbar-change-expand-button-char ?-)
(unless (member token vhdl-speedbar-shown-project-list)
(setq vhdl-speedbar-shown-project-list
@@ -15137,7 +15137,7 @@ vhdl-speedbar-expand-project
(defun vhdl-speedbar-expand-entity (text token indent)
"Expand/contract the entity under the cursor."
(cond
- ((string-match "+" text) ; expand entity
+ ((string-match "\\+" text) ; expand entity
(let* ((key (vhdl-speedbar-line-key indent))
(ent-alist (vhdl-aget vhdl-entity-alist key))
(ent-entry (vhdl-aget ent-alist token))
@@ -15206,7 +15206,7 @@ vhdl-speedbar-expand-entity
(defun vhdl-speedbar-expand-architecture (text token indent)
"Expand/contract the architecture under the cursor."
(cond
- ((string-match "+" text) ; expand architecture
+ ((string-match "\\+" text) ; expand architecture
(let* ((key (vhdl-speedbar-line-key (1- indent)))
(ent-alist (vhdl-aget vhdl-entity-alist key))
(conf-alist (vhdl-aget vhdl-config-alist key))
@@ -15266,7 +15266,7 @@ vhdl-speedbar-expand-architecture
(defun vhdl-speedbar-expand-config (text token indent)
"Expand/contract the configuration under the cursor."
(cond
- ((string-match "+" text) ; expand configuration
+ ((string-match "\\+" text) ; expand configuration
(let* ((key (vhdl-speedbar-line-key indent))
(conf-alist (vhdl-aget vhdl-config-alist key))
(conf-entry (vhdl-aget conf-alist token))
@@ -15324,7 +15324,7 @@ vhdl-speedbar-expand-config
(defun vhdl-speedbar-expand-package (text token indent)
"Expand/contract the package under the cursor."
(cond
- ((string-match "+" text) ; expand package
+ ((string-match "\\+" text) ; expand package
(let* ((key (vhdl-speedbar-line-key indent))
(pack-alist (vhdl-aget vhdl-package-alist key))
(pack-entry (vhdl-aget pack-alist token))
@@ -15729,7 +15729,7 @@ vhdl-speedbar-insert-dirs
(defun vhdl-speedbar-dired (text token indent)
"Speedbar click handler for directory expand button in hierarchy mode."
- (cond ((string-match "+" text) ; we have to expand this dir
+ (cond ((string-match "\\+" text) ; we have to expand this dir
(setq speedbar-shown-directories
(cons (expand-file-name
(concat (speedbar-line-directory indent) token "/"))
diff --git a/lisp/speedbar.el b/lisp/speedbar.el
index 5a8f300195..46b3f2ea90 100644
--- a/lisp/speedbar.el
+++ b/lisp/speedbar.el
@@ -3353,7 +3353,7 @@ speedbar-dired
Clicking this button expands or contracts a directory. TEXT is the
button clicked which has either a + or -. TOKEN is the directory to be
expanded. INDENT is the current indentation level."
- (cond ((string-match "+" text) ;we have to expand this dir
+ (cond ((string-match "\\+" text) ;we have to expand this dir
(setq speedbar-shown-directories
(cons (expand-file-name
(concat (speedbar-line-directory indent) token "/"))
@@ -3402,7 +3402,7 @@ speedbar-tag-file
The parameter TEXT and TOKEN are required, where TEXT is the button
clicked, and TOKEN is the file to expand. INDENT is the current
indentation level."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(let* ((fn (expand-file-name (concat (speedbar-line-directory indent)
token)))
(lst (speedbar-fetch-dynamic-tags fn)))
@@ -3443,7 +3443,7 @@ speedbar-tag-expand
"Expand a tag sublist. Imenu will return sub-lists of specialized tag types.
Etags does not support this feature. TEXT will be the button string.
TOKEN will be the list, and INDENT is the current indentation level."
- (cond ((string-match "+" text) ;we have to expand this file
+ (cond ((string-match "\\+" text) ;we have to expand this file
(speedbar-change-expand-button-char ?-)
(speedbar-with-writable
(save-excursion
diff --git a/lisp/textmodes/dns-mode.el b/lisp/textmodes/dns-mode.el
index 07463e4e39..b303e1918e 100644
--- a/lisp/textmodes/dns-mode.el
+++ b/lisp/textmodes/dns-mode.el
@@ -114,9 +114,9 @@ dns-mode-class-face
"26.1" 'set)
(defcustom dns-mode-font-lock-keywords
- `((,(concat "^$" (regexp-opt dns-mode-control-entities))
+ `((,(concat "^\\$" (regexp-opt dns-mode-control-entities))
0 ,dns-mode-control-entity-face)
- ("^$[a-z0-9A-Z]+" 0 ,dns-mode-bad-control-entity-face)
+ ("^\\$[a-z0-9A-Z]+" 0 ,dns-mode-bad-control-entity-face)
(,(regexp-opt dns-mode-classes) 0 ,dns-mode-class-face)
(,(regexp-opt dns-mode-types) 0 ,dns-mode-type-face))
"Font lock keywords used to highlight text in DNS master file mode."
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index 5e6ea52bff..d18916dfd0 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -929,7 +929,7 @@ flyspell-debug-signal-word-checked
(or (string= "" ispell-otherchars)
(not (looking-at ispell-otherchars)))
(or flyspell-consider-dash-as-word-delimiter-flag
- (not (looking-at "\\-")))
+ (not (looking-at "-")))
2)))))
(format " because : %S\n"
(cond
@@ -947,7 +947,7 @@ flyspell-debug-signal-word-checked
(or (string= "" ispell-otherchars)
(not (looking-at ispell-otherchars)))
(or flyspell-consider-dash-as-word-delimiter-flag
- (not (looking-at "\\-")))))))
+ (not (looking-at "-")))))))
;; Yes because we have reached or typed a word delimiter.
'separator)
((not (integerp flyspell-delay))
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index cc8ec2652f..35dae7bc43 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -3475,7 +3475,7 @@ ispell-process-line
;; Error in tex mode when a potential math mode change exists.
(if (and replace (listp replace) (= 2 (length replace)))
(if (and (eq ispell-parser 'tex)
- (string-match "[\\\\][]()[]\\|\\\\begin\\|\\$"
+ (string-match "[\\][]()[]\\|\\\\begin\\|\\$"
(regexp-quote string)))
(error
"Don't start query replace on a line with math characters"
diff --git a/lisp/textmodes/reftex-cite.el b/lisp/textmodes/reftex-cite.el
index 851e46ca2d..5b42b25f77 100644
--- a/lisp/textmodes/reftex-cite.el
+++ b/lisp/textmodes/reftex-cite.el
@@ -172,7 +172,7 @@ reftex-end-of-bib-entry
(if item
(progn (end-of-line)
(re-search-forward
- "\\\\bibitem\\|\\end{thebibliography}")
+ "\\\\bibitem\\|\\\\end{thebibliography}")
(1- (match-beginning 0)))
(progn (forward-list 1) (point)))
(error (min (point-max) (+ 300 (point)))))))
@@ -447,7 +447,7 @@ reftex-get-bib-names
(setq names (reftex-get-bib-field "editor" entry)))
(while (string-match "\\band\\b[ \t]*" names)
(setq names (replace-match "\n" nil t names)))
- (while (string-match "[\\.a-zA-Z\\-]+\\.[ \t]*\\|,.*\\|[{}]+" names)
+ (while (string-match "[-.a-zA-Z]+\\.[ \t]*\\|,.*\\|[{}]+" names)
(setq names (replace-match "" nil t names)))
(while (string-match "^[ \t]+\\|[ \t]+$" names)
(setq names (replace-match "" nil t names)))
diff --git a/lisp/textmodes/reftex-ref.el b/lisp/textmodes/reftex-ref.el
index 5833ab32ed..3ec96aa67d 100644
--- a/lisp/textmodes/reftex-ref.el
+++ b/lisp/textmodes/reftex-ref.el
@@ -308,7 +308,7 @@ reftex-replace-prefix-escapes
;; Replace %escapes in a label prefix
(save-match-data
(let (letter (num 0) replace)
- (while (string-match "\\%\\([a-zA-Z]\\)" prefix num)
+ (while (string-match "%\\([a-zA-Z]\\)" prefix num)
(setq letter (match-string 1 prefix))
(setq replace
(save-match-data
diff --git a/lisp/url/url-parse.el b/lisp/url/url-parse.el
index a15ec953f6..1f72f51d76 100644
--- a/lisp/url/url-parse.el
+++ b/lisp/url/url-parse.el
@@ -209,7 +209,7 @@ url-generic-parse-url
;; 3.3. Path
(skip-chars-forward "^?#")
;; 3.4. Query
- (when (looking-at "?")
+ (when (looking-at "\\?")
(skip-chars-forward "^#"))
(setq file (buffer-substring save-pos (point)))
;; 3.5 Fragment
diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el
index 1d0ecb4436..cb80ec6cef 100644
--- a/lisp/url/url-util.el
+++ b/lisp/url/url-util.el
@@ -503,7 +503,7 @@ url-truncate-url-for-viewing
(urlobj nil))
;; The first thing that can go are the search strings
(if (and (>= str-width fr-width)
- (string-match "?" url))
+ (string-match "\\?" url))
(setq url (concat (substring url 0 (match-beginning 0)) "?...")
str-width (length url)))
(if (< str-width fr-width)
diff --git a/lisp/vc/diff-mode.el b/lisp/vc/diff-mode.el
index 2c790a2856..40204404e7 100644
--- a/lisp/vc/diff-mode.el
+++ b/lisp/vc/diff-mode.el
@@ -1065,7 +1065,7 @@ diff-unified->context
" ----\n" hunk))
;;(goto-char (point-min))
(forward-line 1)
- (if (not (save-excursion (re-search-forward "^+" nil t)))
+ (if (not (save-excursion (re-search-forward "^\\+" nil t)))
(delete-region (point) (point-max))
(let ((modif nil) (delete nil))
(if (save-excursion (re-search-forward "^\\+.*\n-"
diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el
index e29013cdb4..ab5a449cd3 100644
--- a/lisp/vc/vc-bzr.el
+++ b/lisp/vc/vc-bzr.el
@@ -332,7 +332,7 @@ vc-bzr-file-name-relative
(file-relative-name filename* rootdir))))
(defvar vc-bzr-error-regexp-alist
- '(("^\\( M[* ]\\|+N \\|-D \\|\\| \\*\\|R[M ] \\) \\(.+\\)" 2 nil nil 1)
+ '(("^\\( M[* ]\\|\\+N \\|-D \\|\\| \\*\\|R[M ] \\) \\(.+\\)" 2 nil nil 1)
("^C \\(.+\\)" 2)
("^Text conflict in \\(.+\\)" 1 nil nil 2)
("^Using saved parent location: \\(.+\\)" 1 nil nil 0))
diff --git a/lisp/vc/vc-cvs.el b/lisp/vc/vc-cvs.el
index a4ff1cb4cd..3bbd0ed49b 100644
--- a/lisp/vc/vc-cvs.el
+++ b/lisp/vc/vc-cvs.el
@@ -910,7 +910,7 @@ vc-cvs-parse-status
state."
(let (file status missing)
(goto-char (point-min))
- (while (looking-at "? \\(.*\\)")
+ (while (looking-at "\\? \\(.*\\)")
(setq file (expand-file-name (match-string 1)))
(vc-file-setprop file 'vc-state 'unregistered)
(forward-line 1))
diff --git a/lisp/woman.el b/lisp/woman.el
index 38e083a961..a351f788ec 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -2624,7 +2624,7 @@ woman0-el
(t ; Ignore -- leave in buffer
;; This does not work too well, but it's only for debugging!
(skip-chars-forward "^ \t")
- (if (looking-at "[ \t]*\\{") (search-forward "\\}"))
+ (if (looking-at "[ \t]*{") (search-forward "}"))
(forward-line 1))))
;; request is not used dynamically by any callees.
@@ -2636,7 +2636,7 @@ woman-if-ignore
;; Ignore -- leave in buffer
;; This does not work too well, but it's only for debugging!
(skip-chars-forward "^ \t")
- (if (looking-at "[ \t]*\\{") (search-forward "\\}"))
+ (if (looking-at "[ \t]*{") (search-forward "}"))
(forward-line 1)))
(defun woman0-so ()
@@ -3268,7 +3268,7 @@ woman-change-fonts
(while
;; Find font requests, paragraph macros and font escapes:
(re-search-forward
- "^[.'][ \t]*\\(\\(\\ft\\)\\|\\(.P\\)\\)\\|\\(\\\\f\\)" nil 1)
+ "^[.'][ \t]*\\(\\(ft\\)\\|\\(.P\\)\\)\\|\\(\\\\f\\)" nil 1)
(let (font beg notfont fescape)
;; Match font indicator and leave point at end of sequence:
(cond ((match-beginning 2)
diff --git a/lisp/xdg.el b/lisp/xdg.el
index 65e35b7b35..e5a3de4828 100644
--- a/lisp/xdg.el
+++ b/lisp/xdg.el
@@ -117,7 +117,7 @@ xdg-user-dirs
(defun xdg--substitute-home-env (str)
(if (file-name-absolute-p str) str
(save-match-data
- (and (string-match "^$HOME/" str)
+ (and (string-match "^\\$HOME/" str)
(replace-match "~/" t nil str 0)))))
(defun xdg--user-dirs-parse-line ()
--
2.20.1
^ permalink raw reply related [flat|nested] 17+ messages in thread