From 3c94c7bc02fcacb4a101188dddb0c44d53444178 Mon Sep 17 00:00:00 2001 From: Paul Eggert 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=utf8 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 90aac3d43de..650cf47b807 100644 --- a/admin/admin.el +++ b/admin/admin.el @@ -144,7 +144,7 @@ Root must be the root of an Emacs source tree." (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 c2b3187e8ae..b3b87e533b9 100644 --- a/lisp/allout.el +++ b/lisp/allout.el @@ -5788,7 +5788,7 @@ BULLET string, and a list of TEXT strings for the body." ; "\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 8de01030195..2afde7ee75a 100644 --- a/lisp/arc-mode.el +++ b/lisp/arc-mode.el @@ -1534,7 +1534,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (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 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (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 317f403ead6..56f11c67119 100644 --- a/lisp/calc/calc-graph.el +++ b/lisp/calc/calc-graph.el @@ -1121,7 +1121,7 @@ This \"dumb\" driver will be present in Gnuplot 3.0." (eval (intern (concat "var-" (save-excursion - (re-search-backward ":\\(.*\\)\\}") + (re-search-backward ":\\(.*\\)}") (match-string 1)))))) (error nil))) (if yerr @@ -1186,7 +1186,7 @@ This \"dumb\" driver will be present in Gnuplot 3.0." (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 cf7574e7385..d9e8fe779bf 100644 --- a/lisp/calc/calc-help.el +++ b/lisp/calc/calc-help.el @@ -172,7 +172,7 @@ C-w Describe how there is no warranty for Calc." (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 3f55fb15d56..ee107df39c1 100644 --- a/lisp/calc/calc-lang.el +++ b/lisp/calc/calc-lang.el @@ -753,8 +753,8 @@ 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-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 7390ea350e1..35f13f9656a 100644 --- a/lisp/calc/calc.el +++ b/lisp/calc/calc.el @@ -2430,7 +2430,7 @@ the United States." (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 7d8a44bd9aa..1472108ad5e 100644 --- a/lisp/cedet/ede/makefile-edit.el +++ b/lisp/cedet/ede/makefile-edit.el @@ -105,7 +105,7 @@ STOP-BEFORE is a regular expression matching a file name." (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 cd562284987..a5ccb666644 100644 --- a/lisp/cedet/ede/speedbar.el +++ b/lisp/cedet/ede/speedbar.el @@ -276,7 +276,7 @@ INDENT is the current indentation level." 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 6227ac618a9..83d11e16583 100644 --- a/lisp/cedet/semantic/sb.el +++ b/lisp/cedet/semantic/sb.el @@ -279,7 +279,7 @@ Optional MODIFIERS is additional text needed for variables." (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 @@ TEXT TOKEN and INDENT are the details." (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 a51413dc655..a5fca7ea2a1 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -3092,7 +3092,7 @@ interpreter (e.g., the percent notation of cmd.exe on Windows)." (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 3cb645eea70..98f493ecc65 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -325,7 +325,7 @@ The directory name must be absolute, but need not be fully expanded.") (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 708f41237b5..9c29297da02 100644 --- a/lisp/emacs-lisp/chart.el +++ b/lisp/emacs-lisp/chart.el @@ -704,7 +704,7 @@ SORT-PRED if desired." (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 e93d317d936..193f92bc2ce 100644 --- a/lisp/emacs-lisp/eieio-opt.el +++ b/lisp/emacs-lisp/eieio-opt.el @@ -327,7 +327,7 @@ current expansion depth." (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 52dd6fea3fc..2dd9a5eda64 100644 --- a/lisp/emacs-lisp/eieio-speedbar.el +++ b/lisp/emacs-lisp/eieio-speedbar.el @@ -348,7 +348,7 @@ The object is at indentation level INDENT." (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 ca756efb493..f6deb45d44e 100644 --- a/lisp/emacs-lisp/rx.el +++ b/lisp/emacs-lisp/rx.el @@ -609,7 +609,7 @@ ARG is optional." (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 @@ of all atomic regexps." ((= 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 41c9a3973a6..4496f1cf7d5 100644 --- a/lisp/emulation/viper-ex.el +++ b/lisp/emulation/viper-ex.el @@ -427,18 +427,18 @@ reversed." (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 @@ reversed." (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 @@ reversed." (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 @@ reversed." (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 @@ reversed." (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 @@ reversed." (message ":set [= ]") (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 [= ]") diff --git a/lisp/epg.el b/lisp/epg.el index dd490ad0b2b..e06cc06a7d1 100644 --- a/lisp/epg.el +++ b/lisp/epg.el @@ -1144,7 +1144,7 @@ callback data (if any)." (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 3d43457dd2f..0a1e38fe248 100644 --- a/lisp/erc/erc-speedbar.el +++ b/lisp/erc/erc-speedbar.el @@ -140,7 +140,7 @@ This will add a speedbar major display mode." 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 @@ This will add a speedbar major display mode." "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 @@ is only done when the channel is actually expanded already." (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 101a5a05bf6..bcaa3e45258 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -4285,7 +4285,7 @@ and as second argument the event parsed as a vector." (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 @@ See also: `erc-echo-notice-in-user-buffers', (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 8e79189acf5..31588a472ab 100644 --- a/lisp/eshell/em-dirs.el +++ b/lisp/eshell/em-dirs.el @@ -272,7 +272,7 @@ Thus, this does not include the current directory.") (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 @@ Thus, this does not include the current directory.") (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 1935db00f2c..ef137be9bbf 100644 --- a/lisp/find-dired.el +++ b/lisp/find-dired.el @@ -175,7 +175,7 @@ use in place of \"-ls\" as the final argument." " " 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 7fe3282eb59..d71a3fe5e8e 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -1072,7 +1072,7 @@ face specs for the new 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 47dfd2822d4..c430be78ab7 100644 --- a/lisp/generic-x.el +++ b/lisp/generic-x.el @@ -294,7 +294,7 @@ your changes into effect." 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 06f7be3da7d..fa3abfac585 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -7378,7 +7378,7 @@ groups." ;; 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 e5574d4f4f0..0bd15f3e392 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -3751,7 +3751,7 @@ just the host 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 00853379400..d490f0ca74c 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -1288,7 +1288,7 @@ called and its result is inserted." ;; 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 f34930af8ec..2d3c140536c 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -155,7 +155,7 @@ elisp byte-compiler." (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 8078d184db7..c268289a18f 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -3788,13 +3788,13 @@ frame, rather than all frames, regardless of value of `ido-all-frames'." (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 e8750a7db72..c55398b73f9 100644 --- a/lisp/info-xref.el +++ b/lisp/info-xref.el @@ -71,7 +71,7 @@ you should set this variable to nil." (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 6038273c371..c650d882572 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -1531,7 +1531,7 @@ is non-nil)." (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 @@ is non-nil)." "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 @@ escaped (\\\",\\\\)." (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 @@ The INDENT level is ignored." 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 023fcbc5d13..5393958013b 100644 --- a/lisp/international/mule.el +++ b/lisp/international/mule.el @@ -2545,7 +2545,7 @@ This function is intended to be added to `auto-coding-functions'." ;; (allowing for whitespace at bob). Note: 'DOCTYPE NETSCAPE' is ;; useful for Mozilla bookmark files. (when (and (re-search-forward "\\`[[:space:]\n]*\\(]" size t)) + (re-search-forward "]" 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 b9441336f9e..6280afebdc5 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -2874,7 +2874,8 @@ See more for options in `search-exit-option'." (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 afc2239fbf5..512d49b9c5d 100644 --- a/lisp/language/ethio-util.el +++ b/lisp/language/ethio-util.el @@ -804,7 +804,7 @@ The 2nd and 3rd arguments BEGIN and END specify the region." ;; 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 7f7f0e967d0..91291b8d330 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -2575,7 +2575,7 @@ the message. Point is at the beginning of the message." (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 49f55475a72..c6cdfc40c94 100644 --- a/lisp/mh-e/mh-alias.el +++ b/lisp/mh-e/mh-alias.el @@ -338,7 +338,7 @@ NO-COMMA-SWAP is non-nil." ;; 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 706e64dd77a..b96ef745383 100644 --- a/lisp/mh-e/mh-comp.el +++ b/lisp/mh-e/mh-comp.el @@ -612,7 +612,7 @@ See also `mh-compose-forward-as-mime-flag', (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 1a14f4f3dc3..c017baec66b 100644 --- a/lisp/mh-e/mh-search.el +++ b/lisp/mh-e/mh-search.el @@ -495,16 +495,16 @@ group of results." (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 @@ being the list of messages originally from that folder." (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 9a03fef1108..ddb001ac8fe 100644 --- a/lisp/mh-e/mh-xface.el +++ b/lisp/mh-e/mh-xface.el @@ -197,7 +197,7 @@ The directories are searched for in the order they appear in the list.") (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 9fe961d748c..c5d714846d7 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -2311,7 +2311,7 @@ Useful to give the user default values that won't be substituted." ;; 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 f2ee8950494..428bf32947b 100644 --- a/lisp/net/ange-ftp.el +++ b/lisp/net/ange-ftp.el @@ -2728,7 +2728,7 @@ The main reason for this alist is to deal with file versions in VMS.") ;; 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 43659d2820e..c25d7873918 100644 --- a/lisp/net/goto-addr.el +++ b/lisp/net/goto-addr.el @@ -98,7 +98,7 @@ A value of t means there is no limit--fontify regardless of the 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 @@ there, then load the URL at or before 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 cd6a113bffe..599e2305f77 100644 --- a/lisp/net/pop3.el +++ b/lisp/net/pop3.el @@ -585,7 +585,7 @@ Return the response string if optional second argument is non-nil." (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 @@ If NOW, use that time instead." "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 @@ If NOW, use that time instead." (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 420a72d42ef..b35b36eac7d 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -870,7 +870,7 @@ Derived from `tramp-prefix-ipv6-format'.") ;; 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 @@ Return the string with the replaced 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 2570e51af51..2956efb736e 100644 --- a/lisp/nxml/nxml-maint.el +++ b/lisp/nxml/nxml-maint.el @@ -34,10 +34,10 @@ (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 0e458cfd2f4..d8f2884f5e6 100644 --- a/lisp/nxml/rng-uri.el +++ b/lisp/nxml/rng-uri.el @@ -42,7 +42,7 @@ escape them using %HH." (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 6cd1688fe46..f308b049f3b 100644 --- a/lisp/nxml/rng-xsd.el +++ b/lisp/nxml/rng-xsd.el @@ -360,7 +360,7 @@ trailing digits. For example, -0021.0430 would be represented by [-1 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 86f30a3cf95..18b63fc3ee6 100644 --- a/lisp/obsolete/pgg.el +++ b/lisp/obsolete/pgg.el @@ -572,7 +572,7 @@ within the region." (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 9260ee92e50..0360db9bca0 100644 --- a/lisp/obsolete/vip.el +++ b/lisp/obsolete/vip.el @@ -2187,19 +2187,19 @@ a token has type \(command, address, end-mark\) and value." ((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 @@ a token has type \(command, address, end-mark\) and value." 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 93b8c13aa2d..b6c54a92ab6 100644 --- a/lisp/org/ob-core.el +++ b/lisp/org/ob-core.el @@ -2955,7 +2955,7 @@ If the table is trivial, then return it as a scalar." (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 6593c6d8fa1..e416f5f062a 100644 --- a/lisp/org/org-agenda.el +++ b/lisp/org/org-agenda.el @@ -9446,7 +9446,7 @@ the resulting entry will not be shown. When TEXT is empty, switch to (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 690dcd139ef..04e2fda55e3 100644 --- a/lisp/org/org-element.el +++ b/lisp/org/org-element.el @@ -2119,7 +2119,7 @@ containing `:key', `:value', `:begin', `:end', `:post-blank' and ;; 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 96c8f55d3a5..ef85b402f08 100644 --- a/lisp/org/org-list.el +++ b/lisp/org/org-list.el @@ -2678,7 +2678,7 @@ Return t if successful." (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 969bff3cc64..a37c41ad06e 100644 --- a/lisp/org/org-mhe.el +++ b/lisp/org/org-mhe.el @@ -142,7 +142,7 @@ So if you use sequences, it will now work." "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 1ff6358403c..83dcc7b0d13 100644 --- a/lisp/org/org-mobile.el +++ b/lisp/org/org-mobile.el @@ -845,11 +845,11 @@ If BEG and END are given, only do this in that region." (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 ac75decb925..a3dcb77554c 100644 --- a/lisp/org/org-mouse.el +++ b/lisp/org/org-mouse.el @@ -643,7 +643,7 @@ This means, between the beginning of line and the point." ,@(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 aa34e4011ae..a5635e326d4 100644 --- a/lisp/org/org-plot.el +++ b/lisp/org/org-plot.el @@ -336,7 +336,7 @@ line directly before or after the table." (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 c31ac66bacb..016105ef53b 100644 --- a/lisp/org/org-protocol.el +++ b/lisp/org/org-protocol.el @@ -331,7 +331,7 @@ returned list." (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 765a1ee5c92..b6e864fc9c9 100644 --- a/lisp/org/org-table.el +++ b/lisp/org/org-table.el @@ -1182,7 +1182,7 @@ to a number. In the case of a timestamp, increment by days." (- (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 @@ LOCATION instead." "\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 @@ LOCATION is a buffer position, consider the formulas there." (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 @@ known that the table will be realigned a little later anyway." (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 @@ Parameters get priority." (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 8a11a8f75ef..3a434d12dfd 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el @@ -10467,7 +10467,7 @@ This is still an experimental function, your mileage may vary." ((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 @@ assumed to be significant there." (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 c20536184ea..7c9920f64c5 100644 --- a/lisp/org/ox-ascii.el +++ b/lisp/org/ox-ascii.el @@ -1474,8 +1474,8 @@ contextual information." (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 d3e62861499..d711530bf71 100644 --- a/lisp/org/ox-latex.el +++ b/lisp/org/ox-latex.el @@ -1613,7 +1613,7 @@ INFO is a plist used as a communication channel." (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)) diff --git a/lisp/org/ox.el b/lisp/org/ox.el index 8813968332e..58bc9b0ffb0 100644 --- a/lisp/org/ox.el +++ b/lisp/org/ox.el @@ -3322,7 +3322,7 @@ storing and resolving footnotes. It is created automatically." (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 7f0e1663284..28c52b0653b 100644 --- a/lisp/progmodes/ada-xref.el +++ b/lisp/progmodes/ada-xref.el @@ -416,7 +416,7 @@ As a special case, ${current} is replaced with the name of the current 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 a86cb53ceb9..efe648bc034 100644 --- a/lisp/progmodes/cfengine.el +++ b/lisp/progmodes/cfengine.el @@ -852,8 +852,8 @@ This includes those for cfservd as well as cfagent.") ;; 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 cb69a43b63f..0fe4b106c53 100644 --- a/lisp/progmodes/cperl-mode.el +++ b/lisp/progmodes/cperl-mode.el @@ -3145,12 +3145,12 @@ Returns true if comment is found. In POD will not move the point." (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 @@ the sections using `cperl-pod-head-face', `cperl-pod-face', 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 @@ the sections using `cperl-pod-head-face', `cperl-pod-face', 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 @@ Returns some position at the last line." ;; 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 @@ Returns some position at the last line." ;; 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 @@ Currently it is tuned to C and Perl syntax." "-[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 @@ Currently it is tuned to C and Perl syntax." ;; 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 @@ Currently it is tuned to C and Perl syntax." (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 @@ prototype \\&SUB Returns prototype of the function given a reference. ;; 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 17137cf3036..d5803c77bb4 100644 --- a/lisp/progmodes/dcl-mode.el +++ b/lisp/progmodes/dcl-mode.el @@ -1580,7 +1580,7 @@ Find the column of the first non-blank character on the line. 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 a2392328bac..c2715be5370 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el @@ -1645,7 +1645,7 @@ Point should be just after a string that matches TAG." ;; 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 be272c09226..c1a267f4c5e 100644 --- a/lisp/progmodes/fortran.el +++ b/lisp/progmodes/fortran.el @@ -2052,7 +2052,7 @@ If ALL is nil, only match comments that start in column > 0." (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 b9654dd5c27..75e2deaa4ce 100644 --- a/lisp/progmodes/gdb-mi.el +++ b/lisp/progmodes/gdb-mi.el @@ -1373,7 +1373,7 @@ With arg, enter name of variable to be watched in the minibuffer." 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 @@ member." (when (not value) (setq value "")) (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 3fd2a7e701c..a5427dd8b7e 100644 --- a/lisp/progmodes/grep.el +++ b/lisp/progmodes/grep.el @@ -457,13 +457,13 @@ abbreviated part can also be toggled with (": \\(.+\\): \\(?: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 d8cae41899b..92f5205a6d6 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el @@ -2237,7 +2237,7 @@ relative to a classpath directory." (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 532739daae1..f1ec5ceea56 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el @@ -1838,7 +1838,7 @@ This performs fontification according to `js--class-styles'." (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 9c9bee1c51c..98b812f52f6 100644 --- a/lisp/progmodes/m4-mode.el +++ b/lisp/progmodes/m4-mode.el @@ -65,7 +65,7 @@ If m4 is not in your PATH, set this to an absolute file name." (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 34b8bbbd399..8d3745be7c9 100644 --- a/lisp/progmodes/meta-mode.el +++ b/lisp/progmodes/meta-mode.el @@ -666,7 +666,7 @@ If the list was changed, sort the list and remove duplicates first." (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 1ea4b330935..a759709b5c8 100644 --- a/lisp/progmodes/mixal-mode.el +++ b/lisp/progmodes/mixal-mode.el @@ -1044,7 +1044,7 @@ EXECUTION-TIME holds info about the time it takes, number or string.") . 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 7cc6882f8b8..7d51816bf40 100644 --- a/lisp/progmodes/opascal.el +++ b/lisp/progmodes/opascal.el @@ -1519,7 +1519,7 @@ value of `opascal-tab-always-indents' and the current line position." (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 81fff826bcb..cae514aa75b 100644 --- a/lisp/progmodes/pascal.el +++ b/lisp/progmodes/pascal.el @@ -117,7 +117,7 @@ (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 "\\") (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 e83778af946..e575d6cc16c 100644 --- a/lisp/progmodes/ruby-mode.el +++ b/lisp/progmodes/ruby-mode.el @@ -108,7 +108,7 @@ "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 @@ Can be one of `heredoc', `modifier', `expr-qstr', `expr-re'." (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 @@ delimiter." ((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 @@ If the result is do-end block, it will always be multiline." (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 @@ It will be properly highlighted even when the call omits parens.") 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 2a42e7f4515..6d91d84fa70 100644 --- a/lisp/progmodes/sql.el +++ b/lisp/progmodes/sql.el @@ -3225,11 +3225,11 @@ appended to the SQLi buffer without disturbing your SQL buffer.") "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 a949a461c11..e1003378b2e 100644 --- a/lisp/progmodes/verilog-mode.el +++ b/lisp/progmodes/verilog-mode.el @@ -2786,7 +2786,7 @@ find the errors." (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 @@ Return >0 for nested struct." (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 @@ Inserts the list of signals found." (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 @@ Returns REGEXP and list of ( (signal_name connection_name)... )." ;; 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 b8297c4847e..1dc0c61d063 100644 --- a/lisp/progmodes/vhdl-mode.el +++ b/lisp/progmodes/vhdl-mode.el @@ -2474,7 +2474,7 @@ specified." (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 @@ otherwise use cached data." (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 @@ otherwise use cached data." (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 @@ otherwise use cached data." (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 @@ otherwise use cached data." (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 @@ otherwise use cached data." (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 @@ NO-POSITION non-nil means do not re-position cursor." (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 5a8f300195a..46b3f2ea90b 100644 --- a/lisp/speedbar.el +++ b/lisp/speedbar.el @@ -3353,7 +3353,7 @@ Handles end-of-sublist smartly." 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 @@ INDENT is the current indentation level and is unused." 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 @@ INDENT is the current indentation level." "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 07463e4e390..b303e1918eb 100644 --- a/lisp/textmodes/dns-mode.el +++ b/lisp/textmodes/dns-mode.el @@ -114,9 +114,9 @@ "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 5e6ea52bff0..d18916dfd01 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el @@ -929,7 +929,7 @@ Mostly we check word delimiters." (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 @@ Mostly we check word delimiters." (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 cc8ec2652f7..35dae7bc432 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el @@ -3475,7 +3475,7 @@ Returns the sum SHIFT due to changes in word replacements." ;; 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 851e46ca2d5..5b42b25f772 100644 --- a/lisp/textmodes/reftex-cite.el +++ b/lisp/textmodes/reftex-cite.el @@ -172,7 +172,7 @@ If RETURN is non-nil, just return the entry and restore point." (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 @@ If FIELD is empty try \"editor\" field." (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 5833ab32ed2..3ec96aa67db 100644 --- a/lisp/textmodes/reftex-ref.el +++ b/lisp/textmodes/reftex-ref.el @@ -308,7 +308,7 @@ also applies `reftex-translate-to-ascii-function' to the string." ;; 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 a15ec953f62..1f72f51d769 100644 --- a/lisp/url/url-parse.el +++ b/lisp/url/url-parse.el @@ -209,7 +209,7 @@ parses to ;; 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 1d0ecb4436a..cb80ec6cefb 100644 --- a/lisp/url/url-util.el +++ b/lisp/url/url-util.el @@ -503,7 +503,7 @@ WIDTH defaults to the current frame width." (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 2c790a28561..40204404e77 100644 --- a/lisp/vc/diff-mode.el +++ b/lisp/vc/diff-mode.el @@ -1065,7 +1065,7 @@ else cover the whole buffer." " ----\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 e29013cdb4e..ab5a449cd3d 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -332,7 +332,7 @@ in the repository root directory of FILE." (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 a4ff1cb4cd2..3bbd0ed49b1 100644 --- a/lisp/vc/vc-cvs.el +++ b/lisp/vc/vc-cvs.el @@ -910,7 +910,7 @@ essential information. Note that this can never set the `ignored' 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 38e083a961a..a351f788ece 100644 --- a/lisp/woman.el +++ b/lisp/woman.el @@ -2624,7 +2624,7 @@ If DELETE is non-nil then delete from point." (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 @@ If DELETE is non-nil then delete from point." ;; 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 @@ If optional arg CONCAT is non-nil then join arguments." (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 65e35b7b35c..e5a3de48289 100644 --- a/lisp/xdg.el +++ b/lisp/xdg.el @@ -117,7 +117,7 @@ file:///foo/bar.jpg" (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.39.2