From: Paul Eggert Date: Sun, 4 Aug 2019 22:54:17 +0000 (-0700) Subject: Fix one more 2019-08-04 regex lint X-Git-Tag: emacs-27.0.90~1702 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=543568b602bcf2f3496d0a340317682c48a9a923;p=emacs.git Fix one more 2019-08-04 regex lint 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. --- diff --git a/lisp/isearch.el b/lisp/isearch.el index 97c75b2978b..09729034d74 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -2184,16 +2184,19 @@ matches arbitrary non-symbol whitespace. Otherwise if LAX is non-nil, 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