From: Mattias EngdegÄrd Date: Thu, 7 Sep 2023 16:06:34 +0000 (+0200) Subject: Translate backslash-saturated regexp to rx X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e95d8562c06c08d701330a640a6e9d8adda99580;p=emacs.git Translate backslash-saturated regexp to rx * lisp/minibuffer.el (minibuffer--regexp-propertize): The original regexp had 83 backslashes in 147 characters which may be some kind of record. This transformation cuts it down to 6, and the generated regexp string is about 14 % shorter. --- diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 8c642b15a4d..2120e31775e 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -4676,8 +4676,14 @@ and `blink-matching-paren' more user-friendly." (remove-text-properties (point-min) (point-max) '(syntax-table nil)) (goto-char (point-min)) (while (re-search-forward - "\\(\\\\\\\\\\)\\|\\(?:\\(?:\\\\\\)\\(?:\\([(){}]\\)\\|\\(\\[\\)\\|\\(\\]\\)\\)\\)\ -\\|\\(\\[:[a-zA-Z]+:\\]\\)\\|\\(\\[\\)\\|\\(\\]\\)\\|\\([(){}]\\)" + (rx (| (group "\\\\") + (: "\\" (| (group (in "(){}")) + (group "[") + (group "]"))) + (group "[:" (+ (in "A-Za-z")) ":]") + (group "[") + (group "]") + (group (in "(){}")))) (point-max) 'noerror) (cond ((match-beginning 1)) ; \\, skip