From 00e6e5205a3eee2f965f5649fc3f98dd37c94437 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 4 Aug 2019 15:54:17 -0700 Subject: [PATCH] Fix one more 2019-08-04 regex lint MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Problem clarified by Mattias EngdegÄrd in: https://lists.gnu.org/r/emacs-devel/2019-08/msg00087.html * lisp/isearch.el (isearch-symbol-regexp): Remove \s@ from regexp as it cannot match. --- lisp/isearch.el | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/lisp/isearch.el b/lisp/isearch.el index 97c75b2978..09729034d7 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -2184,16 +2184,19 @@ isearch-symbol-regexp the beginning or the end of the string need not match a symbol boundary." (let ((not-word-symbol-re ;; This regexp matches all syntaxes except word and symbol syntax. - ;; FIXME: Replace it with something shorter if possible (bug#14602). - "\\(?:\\s-\\|\\s.\\|\\s(\\|\\s)\\|\\s\"\\|\\s\\\\|\\s/\\|\\s$\\|\\s'\\|\\s<\\|\\s>\\|\\s@\\|\\s!\\|\\s|\\)+")) + "\\(?:\\s-\\|\\s.\\|\\s(\\|\\s)\\|\\s\"\\|\\s\\\\|\\s/\\|\\s$\\|\\s'\\|\\s<\\|\\s>\\|\\s!\\|\\s|\\)+")) (cond ((equal string "") "") - ((string-match-p (format "\\`%s\\'" not-word-symbol-re) string) not-word-symbol-re) + ((string-match-p (format "\\`%s\\'" not-word-symbol-re) string) + not-word-symbol-re) (t (concat - (if (string-match-p (format "\\`%s" not-word-symbol-re) string) not-word-symbol-re + (if (string-match-p (format "\\`%s" not-word-symbol-re) string) + not-word-symbol-re "\\_<") - (mapconcat 'regexp-quote (split-string string not-word-symbol-re t) not-word-symbol-re) - (if (string-match-p (format "%s\\'" not-word-symbol-re) string) not-word-symbol-re + (mapconcat 'regexp-quote (split-string string not-word-symbol-re t) + not-word-symbol-re) + (if (string-match-p (format "%s\\'" not-word-symbol-re) string) + not-word-symbol-re (unless lax "\\_>"))))))) ;; Search with lax whitespace -- 2.17.1