diff options
Diffstat (limited to 'man/search.texi')
-rw-r--r-- | man/search.texi | 43 |
1 files changed, 30 insertions, 13 deletions
diff --git a/man/search.texi b/man/search.texi index 4577ac4b33e..f07976f9aa2 100644 --- a/man/search.texi +++ b/man/search.texi @@ -78,7 +78,7 @@ would exit the search and then move to the beginning of the line. @key{RET} is necessary only if the next command you want to type is a printing character, @key{DEL}, @key{RET}, or another character that is special within searches (@kbd{C-q}, @kbd{C-w}, @kbd{C-r}, @kbd{C-s}, -@kbd{C-y}, @kbd{M-y}, @kbd{M-r}, @kbd{M-s}, and some other +@kbd{C-y}, @kbd{M-y}, @kbd{M-r}, @kbd{M-c}, @kbd{M-e}, and some other meta-characters). Sometimes you search for @samp{FOO} and find one, but not the one you @@ -95,7 +95,9 @@ incremental search, and the second @kbd{C-s} means ``search again.'' To reuse earlier search strings, use the @dfn{search ring}. The commands @kbd{M-p} and @kbd{M-n} move through the ring to pick a search string to reuse. These commands leave the selected search ring element -in the minibuffer, where you can edit it. Type @kbd{C-s} or @kbd{C-r} +in the minibuffer, where you can edit it. To edit the current search +string in the minibuffer without replacing it with items from the +search ring, type @kbd{M-e}. Type @kbd{C-s} or @kbd{C-r} to terminate editing the string and search for it. If your string is not found at all, the echo area says @samp{Failing @@ -181,7 +183,7 @@ a key runs a command (@code{isearch-backward}) to search backward. A backward search finds matches that are entirely before the starting point, just as a forward search finds matches that begin after it. - The characters @kbd{C-y} and @kbd{C-w} can be used in incremental + The characters @kbd{C-w} and @kbd{C-y} can be used in incremental search to grab text from the buffer into the search string. This makes it convenient to search for another occurrence of text at point. @kbd{C-w} copies the character or word after point as part of the @@ -195,6 +197,14 @@ current line into the search string. Both @kbd{C-y} and @kbd{C-w} convert the text they copy to lower case if the search is currently not case-sensitive; this is so the search remains case-insensitive. + @kbd{C-M-w} and @kbd{C-M-y} modify the search string by only one +character at a time: @kbd{C-M-w} deletes the last character from the +search string and @kbd{C-M-y} copies the character after point to the +end of the search string. An alternative method to add the character +after point into the search string is to enter the minibuffer by +@kbd{M-e} and to type @kbd{C-f} at the end of the search string in the +minibuffer. + The character @kbd{M-y} copies text from the kill ring into the search string. It uses the same text that @kbd{C-y} as a command would yank. @kbd{Mouse-2} in the echo area does the same. @@ -205,6 +215,11 @@ string. It uses the same text that @kbd{C-y} as a command would yank. there. In Transient Mark mode, incremental search sets the mark without activating it, and does so only if the mark is not already active. + @kbd{M-%} or @kbd{C-M-%} exits the incremental search and starts an +interactive command @code{query-replace} or @code{query-replace-regexp} +with the last search string inserted in the minibuffer as initial input +for the string to replace. + @cindex lazy search highlighting @vindex isearch-lazy-highlight When you pause for a little while during incremental search, it @@ -231,18 +246,18 @@ of bindings, look at the documentation of @code{isearch-mode} with Vertical scrolling during incremental search can be enabled by setting the customizable variable @code{isearch-allow-scroll} to a -non-nil value. +non-@code{nil} value. You can then use the vertical scroll-bar or certain keyboard commands such as @kbd{@key{PRIOR}} (@code{scroll-down}), @kbd{@key{NEXT}} (@code{scroll-up}) and @kbd{C-l} (@code{recenter}) within the search, thus letting you see more of the text near the current match. You must run these commands via their key sequences to -stay in the search - typing M-x @var{comand-name} will always +stay in the search---typing M-x @var{comand-name} will always terminate a search. You can give prefix arguments to these commands in the usual way. -The current match cannot be scrolled out of the window - this is +The current match cannot be scrolled out of the window---this is intentional. Several other commands, such as @kbd{C-x 2} @@ -371,14 +386,16 @@ nonincremental ways to search for a match for a regexp. @kindex C-M-r @findex isearch-backward-regexp Incremental search for a regexp is done by typing @kbd{C-M-s} -(@code{isearch-forward-regexp}), or by invoking @kbd{C-s} with a -prefix argument (whose value does not matter). This command reads a +(@code{isearch-forward-regexp}), by invoking @kbd{C-s} with a +prefix argument (whose value does not matter), or by typing @kbd{M-r} +within a forward incremental search. This command reads a search string incrementally just like @kbd{C-s}, but it treats the search string as a regexp rather than looking for an exact match against the text in the buffer. Each time you add text to the search string, you make the regexp longer, and the new regexp is searched for. To search backward for a regexp, use @kbd{C-M-r} -(@code{isearch-backward-regexp}), or @kbd{C-r} with a prefix argument. +(@code{isearch-backward-regexp}), @kbd{C-r} with a prefix argument, +or @kbd{M-r} within a backward incremental search. All of the control characters that do special things within an ordinary incremental search have the same function in incremental regexp @@ -847,7 +864,7 @@ history matching commands (@pxref{Minibuffer History}). @vindex isearch-allow-scroll Scrolling, etc., during incremental search is enabled by setting the -customizable variable @code{isearch-allow-scroll} to a non-nil value. +customizable variable @code{isearch-allow-scroll} to a non-@code{nil} value. @c See Subject: Info file: How do I get an itemized list without blank lines? @c Date: Sat, 12 Apr 2003 09:45:31 +0000 in gnu.emacs.help @@ -893,7 +910,7 @@ For example: You should only thus configure commands which are ``safe'': i.e., they won't leave emacs in an inconsistent state when executed within a -search - that is to say, the following things may be changed by a +search---that is to say, the following things may be changed by a command only temporarily, and must be restored before the command finishes: @@ -913,7 +930,7 @@ not itself attempt an incremental search. It may, however, change the window's size, or create or delete other windows and frames. Note that an attempt by a command to scroll the text -@emph{horizontally} won't work, although it will do no harm - any such +@emph{horizontally} won't work, although it will do no harm---any such scrolling will be overriden and nullified by the display code. @node Replace, Other Repeating Search, Configuring Scrolling, Search @@ -925,7 +942,7 @@ scrolling will be overriden and nullified by the display code. Global search-and-replace operations are not needed often in Emacs, but they are available. In addition to the simple @kbd{M-x -replace-string} command which is like that found in most editors, +replace-string} command which replaces all occurrences, there is a @kbd{M-x query-replace} command which finds each occurrence of the pattern and asks you whether to replace it. |