mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-24 10:38:38 +00:00
Fix Isearch prompt when invoked with an argument
* lisp/isearch.el (isearch--describe-regexp-mode): With `search-default-mode' set to nil, if user does C-u C-s, the minibuffer now displays "Regexp I-search: " again. But if the user has set `search-default-mode' to t, and then does C-s, the minibuffer now displays "I-search: " because the default search mode is now regexp mode. Comments have been added to explain the priority of conditions in the `cond' form. (Bug#22991)
This commit is contained in:
parent
f3033d4d02
commit
0ce37eac45
@ -2574,15 +2574,26 @@ the word mode."
|
||||
(when (eq regexp-function t)
|
||||
(setq regexp-function #'word-search-regexp))
|
||||
(let ((description
|
||||
;; Don't use a description on the default search mode.
|
||||
(cond ((equal regexp-function search-default-mode) "")
|
||||
(cond
|
||||
;; 1. Do not use a description on the default search mode,
|
||||
;; but only if the default search mode is non-nil.
|
||||
((or (and search-default-mode
|
||||
(equal search-default-mode regexp-function))
|
||||
;; Special case where `search-default-mode' is t
|
||||
;; (defaults to regexp searches).
|
||||
(and (eq search-default-mode t)
|
||||
(eq search-default-mode isearch-regexp))) "")
|
||||
;; 2. Use the `isearch-message-prefix' set for
|
||||
;; `regexp-function' if available.
|
||||
(regexp-function
|
||||
(and (symbolp regexp-function)
|
||||
(or (get regexp-function 'isearch-message-prefix)
|
||||
"")))
|
||||
;; 3. Else if `isearch-regexp' is non-nil, set description
|
||||
;; to "regexp ".
|
||||
(isearch-regexp "regexp ")
|
||||
;; We're in literal mode. If the default mode is not
|
||||
;; literal, then describe it.
|
||||
;; 4. And finally, if we're in literal mode (and if the
|
||||
;; default mode is also not literal), describe it.
|
||||
((functionp search-default-mode) "literal "))))
|
||||
(if space-before
|
||||
;; Move space from the end to the beginning.
|
||||
|
Loading…
Reference in New Issue
Block a user