of `read-from-minibuffer' when `regexp-flag' is non-nil.
(occur-read-primary-args): Use `read-regexp' instead of
`read-string'.
(multi-occur-in-matching-buffers): Use `read-regexp' instead of
`read-from-minibuffer'.
* lisp/isearch.el (isearch-occur): Use `read-regexp' instead of
`read-string'.
* lisp/dired.el (dired-read-regexp): Use `read-regexp' instead of
`read-from-minibuffer'.
* lisp/progmodes/grep.el (grep-read-regexp): Use `read-regexp' instead
of `read-string'.
Fixes: debbugs:7567
(replace-lax-whitespace, query-replace-regexp)
(query-replace-regexp-eval, replace-regexp): Doc fix.
(perform-replace, replace-highlight): Let-bind
isearch-lax-whitespace to replace-lax-whitespace and
isearch-regexp-lax-whitespace to replace-regexp-lax-whitespace.
* lisp/isearch.el (isearch-query-replace): Let-bind
replace-lax-whitespace to isearch-lax-whitespace and
replace-regexp-lax-whitespace to
isearch-regexp-lax-whitespace.
Fixes: debbugs:10885
(query-replace, query-replace-regexp, query-replace-regexp-eval)
(replace-string, replace-regexp): Mention it in docstrings.
(perform-replace, replace-highlight): Let-bind
isearch-lax-whitespace and isearch-regexp-lax-whitespace according
to the values of replace-lax-whitespace and regexp-flag.
Don't let-bind search-whitespace-regexp.
* lisp/isearch.el (isearch-query-replace): Let-bind
replace-lax-whitespace instead of let-binding
replace-search-function and replace-re-search-function.
(isearch-lazy-highlight-search): Let-bind isearch-lax-whitespace
and isearch-regexp-lax-whitespace to lazy-highlight variables.
(isearch-toggle-symbol): Set isearch-regexp to nil
in isearch-word mode (like in isearch-toggle-word).
Fixes: debbugs:10885
http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00008.html
* lisp/isearch.el (search-whitespace-regexp): Doc fix.
Remove cons cell customization.
(isearch-mode-map): Bind "\M-s " to isearch-toggle-lax-whitespace.
(isearch-lax-whitespace, isearch-regexp-lax-whitespace):
New variables.
(isearch-forward, isearch-forward-regexp): Doc fix.
(isearch-toggle-lax-whitespace): New command.
(search-forward-lax-whitespace, search-backward-lax-whitespace)
(re-search-forward-lax-whitespace)
(re-search-backward-lax-whitespace): New functions.
(isearch-whitespace-regexp): Remove function.
(isearch-query-replace): Let-bind replace-search-function and
replace-re-search-function.
(isearch-occur): Let-bind search-spaces-regexp according to the
value of isearch-lax-whitespace and isearch-regexp-lax-whitespace.
(isearch-quote-char): Check isearch-regexp-lax-whitespace in the
condition for C-q SPC.
(isearch-search-fun-default): Use new functions mentioned above.
(isearch-search-forward, isearch-search-backward): Remove functions.
(isearch-search): Don't let-bind search-spaces-regexp.
(isearch-lazy-highlight-space-regexp): Remove variable.
(isearch-lazy-highlight-lax-whitespace)
(isearch-lazy-highlight-regexp-lax-whitespace): New variables.
(isearch-lazy-highlight-new-loop): Use them.
(isearch-lazy-highlight-search): Don't let-bind search-spaces-regexp.
* lisp/isearch.el (search-whitespace-regexp): Make string and nil
values apply to both ordinary and regexp search. Allow a cons
cell value to distinguish between the two.
(isearch-whitespace-regexp, isearch-search-forward)
(isearch-search-backward): New functions.
(isearch-occur, isearch-search-fun-default, isearch-search)
(isearch-lazy-highlight-new-loop): Use them.
(isearch-forward, isearch-forward-regexp): Doc fix.
Bind `M-s c' to `isearch-toggle-case-fold'.
(search-map): Bind `M-s _' to `isearch-forward-symbol'.
(isearch-forward): Add `M-s _' to the docstring.
(isearch-forward-symbol, isearch-toggle-case-fold)
(isearch-symbol-regexp): New functions.
Fixes: debbugs:11381
(isearch-occur, isearch-search-and-update): If `isearch-word' is
a function, call it to get the regexp.
(isearch-message-prefix): If `isearch-word' holds a symbol, use its
property `isearch-message-prefix' instead of the string "word ".
(isearch-search-fun-default): For the case of `isearch-word',
return a lambda that calls re-search-forward/re-search-backward
with a regexp returned by `word-search-regexp' or by the function
in `isearch-word'.
Fixes: debbugs:11381
(isearch-search-fun): Move default part to the new function
`isearch-search-fun-default'.
(isearch-search-fun-function): Set the default value to
`isearch-search-fun-default'.
* lisp/comint.el (comint-history-isearch-end):
Use `isearch-search-fun-default'.
(comint-history-isearch-search): Use `isearch-search-fun-default'
and remove spacial case for `isearch-word'.
(comint-history-isearch-wrap): Remove spacial case for
`isearch-word'.
* lisp/hexl.el (hexl-isearch-search-function):
Use `isearch-search-fun-default'.
* lisp/info.el (Info-isearch-search): Use `isearch-search-fun-default'.
Use `word-search-regexp' for `isearch-word'.
* lisp/misearch.el (multi-isearch-search-fun):
Use `isearch-search-fun-default'.
* lisp/simple.el (minibuffer-history-isearch-search):
Use `isearch-search-fun-default' and remove spacial case for
`isearch-word'.
(minibuffer-history-isearch-wrap): Remove spacial case for
`isearch-word'.
* lisp/textmodes/reftex-global.el (reftex-isearch-wrap-function):
Remove spacial case for `isearch-word'.
(reftex-isearch-isearch-search): Use `isearch-search-fun-default'.
Fixes: debbugs:11381
* lisp/isearch.el (isearch-occur): Use `word-search-regexp' for
`isearch-word'.
(isearch-search-and-update): Add condition for `isearch-word' and
call `word-search-regexp'.
* src/search.c (Fword_search_regexp): New Lisp function created from
`wordify'. Change type of arg `lax' from `int' to `Lisp_Object'.
(Fword_search_backward, Fword_search_forward)
(Fword_search_backward_lax, Fword_search_forward_lax):
Use `Fword_search_regexp' instead of `wordify'. Doc fix.
(syms_of_search): Define `Sword_search_regexp'.
Fixes: debbugs:10145
Remove condition `(not isearch-error)'.
* lisp/misearch.el (multi-isearch-search-fun): Add condition
`(not bound)' to ignore lazy-highlighting search.
Add the search-failed message "end of multi" when the end of
multi-sequence is reached. Uncapitalize the search-failed
message "Repeat for next buffer".
* lisp/info.el (Info-search): Add the search-failed message
"end of the manual" when the end of the manual is reached
in Isearch mode.
Fixes: debbugs:9918
* lisp/isearch.el (isearch-edit-string): Bind `isearch-new-case-fold'
to `isearch-case-fold-search' and restore its original value
after the `isearch-mode' call.
http://lists.gnu.org/archive/html/emacs-devel/2011-09/msg00169.html
* lisp/isearch.el (isearch-fail-pos): Add new arg `msg'. Doc fix.
(isearch-edit-string): Use length of `isearch-string' when
`isearch-fail-pos' returns nil.
(isearch-message): Remove duplicate code and call
`isearch-fail-pos' with arg `t'.
* lisp/isearch.el (isearch-ring-adjust1): Start visiting previous
search strings from the index 0 (-1 + 1) instead of 1 (0 + 1).
(isearch-repeat, isearch-edit-string): Call `isearch-ring-adjust1'
for empty search string (when the last search string is reused
automatically) to adjust the isearch ring to the last element and
prepare the correct index for further M-p commands.
Fixes: debbugs:9185
* lisp/isearch.el (isearch-mode-map): Bind C-y to isearch-yank-kill,
and move isearch-yank-line to M-s C-e.
* doc/emacs/search.texi (Isearch Yank): C-y now bound to isearch-yank-kill.