diff options
author | Artur Malabarba <bruce.connor.am@gmail.com> | 2015-11-29 22:04:33 +0000 |
---|---|---|
committer | Artur Malabarba <bruce.connor.am@gmail.com> | 2015-11-29 22:09:39 +0000 |
commit | d976561ba29a0de87b692fb985aebe68f3645cdc (patch) | |
tree | d02bbeca0b5d398c84fa554e830dcf9ba5dcfe29 | |
parent | 0887bdf90bed0749813632cc67a5663fbed64371 (diff) | |
download | emacs-d976561ba29a0de87b692fb985aebe68f3645cdc.tar.gz emacs-d976561ba29a0de87b692fb985aebe68f3645cdc.tar.bz2 emacs-d976561ba29a0de87b692fb985aebe68f3645cdc.zip |
* lisp/isearch.el (isearch-search-fun-default): Nicer error
message when the search fails.
-rw-r--r-- | lisp/isearch.el | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/lisp/isearch.el b/lisp/isearch.el index eb5e5baf0b9..6cbe612d72e 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -2643,16 +2643,23 @@ Can be changed via `isearch-search-fun-function' for special needs." (isearch-regexp isearch-regexp-lax-whitespace) (t isearch-lax-whitespace)) search-whitespace-regexp))) - (funcall - (if isearch-forward #'re-search-forward #'re-search-backward) - (cond (isearch-regexp-function - (let ((lax (isearch--lax-regexp-function-p))) - (if (functionp isearch-regexp-function) - (funcall isearch-regexp-function string lax) - (word-search-regexp string lax)))) - (isearch-regexp string) - (t (regexp-quote string))) - bound noerror count)))) + (condition-case er + (funcall + (if isearch-forward #'re-search-forward #'re-search-backward) + (cond (isearch-regexp-function + (let ((lax (isearch--lax-regexp-function-p))) + (if (functionp isearch-regexp-function) + (funcall isearch-regexp-function string lax) + (word-search-regexp string lax)))) + (isearch-regexp string) + (t (regexp-quote string))) + bound noerror count) + (search-failed + (signal (car er) + (let ((prefix (get isearch-regexp-function 'isearch-message-prefix))) + (if (and isearch-regexp-function (stringp prefix)) + (list (format "%s [using %ssearch]" string prefix)) + (cdr er))))))))) (defun isearch-search-string (string bound noerror) "Search for the first occurrence of STRING or its translation. |