diff options
| author | Luc Teirlinck | 2005-07-07 23:09:00 +0000 |
|---|---|---|
| committer | Luc Teirlinck | 2005-07-07 23:09:00 +0000 |
| commit | c778ed49552c6c931d16955221ef29470e1dbe3a (patch) | |
| tree | daf6ef198d98b02425b7d09f88a9f8422ccb9a41 | |
| parent | 401bc3117157b58a70542fd95542cbd295134fa3 (diff) | |
| download | emacs-c778ed49552c6c931d16955221ef29470e1dbe3a.tar.gz emacs-c778ed49552c6c931d16955221ef29470e1dbe3a.zip | |
(Isearch Scroll): Add example of using the `isearch-scroll' property.
(Slow Isearch): Reference anchor for `baud-rate' instead of entire
`Display Custom' node.
(Regexp Replace): Put text that requires Emacs Lisp knowledge last
and de-emphasize it.
(Other Repeating Search): `occur' currently can not correctly
handle multiline matches. Correct, clarify and update description
of `flush-lines' and `keep-lines'.
| -rw-r--r-- | man/search.texi | 74 |
1 files changed, 45 insertions, 29 deletions
diff --git a/man/search.texi b/man/search.texi index de530f7ee01..e0bd00d7beb 100644 --- a/man/search.texi +++ b/man/search.texi | |||
| @@ -294,7 +294,7 @@ commands such as @kbd{@key{PRIOR}} (@code{scroll-down}), | |||
| 294 | @kbd{@key{NEXT}} (@code{scroll-up}) and @kbd{C-l} (@code{recenter}) | 294 | @kbd{@key{NEXT}} (@code{scroll-up}) and @kbd{C-l} (@code{recenter}) |
| 295 | within the search, thus letting you see more of the text near the | 295 | within the search, thus letting you see more of the text near the |
| 296 | current match. You must run these commands via their key sequences to | 296 | current match. You must run these commands via their key sequences to |
| 297 | stay in the search---typing M-x @var{comand-name} will always | 297 | stay in the search---typing M-x @var{command-name} will always |
| 298 | terminate a search. | 298 | terminate a search. |
| 299 | 299 | ||
| 300 | You can give prefix arguments to these commands in the usual way. | 300 | You can give prefix arguments to these commands in the usual way. |
| @@ -309,6 +309,16 @@ handy during a search. | |||
| 309 | 309 | ||
| 310 | You can make other commands usable within an incremental search by | 310 | You can make other commands usable within an incremental search by |
| 311 | giving the command a non-@code{nil} @code{isearch-scroll} property. | 311 | giving the command a non-@code{nil} @code{isearch-scroll} property. |
| 312 | For example, to make @kbd{C-h l} usable within an incremental search | ||
| 313 | in all future Emacs sessions, use @kbd{C-h c} to find what command it | ||
| 314 | runs. (You type @kbd{C-h c C-h l}; it says @code{view-lossage}.) Then | ||
| 315 | you can put the following line in your @file{.emacs} file (@pxref{Init File}): | ||
| 316 | |||
| 317 | @example | ||
| 318 | (put 'view-lossage 'isearch-scroll t) | ||
| 319 | @end example | ||
| 320 | |||
| 321 | @noindent | ||
| 312 | This works for commands that don't permanently change point, the | 322 | This works for commands that don't permanently change point, the |
| 313 | buffer contents, the match data, the current buffer, or the selected | 323 | buffer contents, the match data, the current buffer, or the selected |
| 314 | window and frame. The command must not delete the current window and | 324 | window and frame. The command must not delete the current window and |
| @@ -331,7 +341,8 @@ its new position of point. | |||
| 331 | @vindex search-slow-speed | 341 | @vindex search-slow-speed |
| 332 | The slow terminal style of display is used when the terminal baud rate is | 342 | The slow terminal style of display is used when the terminal baud rate is |
| 333 | less than or equal to the value of the variable @code{search-slow-speed}, | 343 | less than or equal to the value of the variable @code{search-slow-speed}, |
| 334 | initially 1200. See @code{baud-rate} in @ref{Display Custom}. | 344 | initially 1200. See also the discussion of the variable @code{baud-rate} |
| 345 | (@pxref{baud-rate,, Customization of Display}). | ||
| 335 | 346 | ||
| 336 | @vindex search-slow-window-lines | 347 | @vindex search-slow-window-lines |
| 337 | The number of lines to use in slow terminal search display is controlled | 348 | The number of lines to use in slow terminal search display is controlled |
| @@ -1012,7 +1023,15 @@ M-x replace-regexp @key{RET} \(c[ad]+r\)-safe @key{RET} \1 @key{RET} | |||
| 1012 | performs the inverse transformation. To include a @samp{\} in the | 1023 | performs the inverse transformation. To include a @samp{\} in the |
| 1013 | text to replace with, you must enter @samp{\\}. | 1024 | text to replace with, you must enter @samp{\\}. |
| 1014 | 1025 | ||
| 1015 | You can also use Lisp expressions to calculate parts of the | 1026 | If you want to enter part of the replacement string by hand each |
| 1027 | time, use @samp{\?} in the replacement string. Each replacement will | ||
| 1028 | ask you to edit the replacement string in the minibuffer, putting | ||
| 1029 | point where the @samp{\?} was. | ||
| 1030 | |||
| 1031 | The remainder of this subsection is intended for specialized tasks | ||
| 1032 | and requires knowledge of Lisp. Most readers can skip it. | ||
| 1033 | |||
| 1034 | You can use Lisp expressions to calculate parts of the | ||
| 1016 | replacement string. To do this, write @samp{\,} followed by the | 1035 | replacement string. To do this, write @samp{\,} followed by the |
| 1017 | expression in the replacement string. Each replacement calculates the | 1036 | expression in the replacement string. Each replacement calculates the |
| 1018 | value of the expression and converts it to text without quoting (if | 1037 | value of the expression and converts it to text without quoting (if |
| @@ -1050,22 +1069,6 @@ M-x replace-regexp @key{RET} ^.\@{0,72\@}$ @key{RET} | |||
| 1050 | \,(format "%-72sABC%05d" \& \#) @key{RET} | 1069 | \,(format "%-72sABC%05d" \& \#) @key{RET} |
| 1051 | @end example | 1070 | @end example |
| 1052 | 1071 | ||
| 1053 | If you want to enter part of the replacement string by hand each | ||
| 1054 | time, use @samp{\?} in the replacement string. Each replacement will | ||
| 1055 | ask you to edit the replacement string in the minibuffer, putting | ||
| 1056 | point where the @samp{\?} was. For example, | ||
| 1057 | |||
| 1058 | @example | ||
| 1059 | M-x replace-regexp @key{RET} \\footnote@{ @key{RET} | ||
| 1060 | \&\\label@{fn:\#\?@} @key{RET} | ||
| 1061 | @end example | ||
| 1062 | |||
| 1063 | @noindent | ||
| 1064 | will add labels starting with @samp{\label@{fn:0@}} to occurrences of | ||
| 1065 | @samp{\footnote@{}, but letting you edit each replacement before | ||
| 1066 | performing it. To number the labels starting at 1, use @samp{\,(1+ | ||
| 1067 | \#)} instead of @samp{\#}. | ||
| 1068 | |||
| 1069 | @node Replacement and Case, Query Replace, Regexp Replace, Replace | 1072 | @node Replacement and Case, Query Replace, Regexp Replace, Replace |
| 1070 | @subsection Replace Commands and Case | 1073 | @subsection Replace Commands and Case |
| 1071 | 1074 | ||
| @@ -1257,7 +1260,8 @@ Display a list showing each line in the buffer that contains a match | |||
| 1257 | for @var{regexp}. To limit the search to part of the buffer, narrow | 1260 | for @var{regexp}. To limit the search to part of the buffer, narrow |
| 1258 | to that part (@pxref{Narrowing}). A numeric argument @var{n} | 1261 | to that part (@pxref{Narrowing}). A numeric argument @var{n} |
| 1259 | specifies that @var{n} lines of context are to be displayed before and | 1262 | specifies that @var{n} lines of context are to be displayed before and |
| 1260 | after each matching line. | 1263 | after each matching line. Currently, @code{occur} can not correctly |
| 1264 | handle multiline matches. | ||
| 1261 | 1265 | ||
| 1262 | @kindex RET @r{(Occur mode)} | 1266 | @kindex RET @r{(Occur mode)} |
| 1263 | @kindex o @r{(Occur mode)} | 1267 | @kindex o @r{(Occur mode)} |
| @@ -1271,7 +1275,7 @@ searched and moves point to the original of the chosen occurrence. | |||
| 1271 | does not select it. | 1275 | does not select it. |
| 1272 | 1276 | ||
| 1273 | Occur mode supports the @code{next-error} functionality described in | 1277 | Occur mode supports the @code{next-error} functionality described in |
| 1274 | in @ref{Compilation Mode}. | 1278 | @ref{Compilation Mode}. |
| 1275 | 1279 | ||
| 1276 | @item M-x list-matching-lines | 1280 | @item M-x list-matching-lines |
| 1277 | Synonym for @kbd{M-x occur}. | 1281 | Synonym for @kbd{M-x occur}. |
| @@ -1290,19 +1294,31 @@ after point. In Transient Mark mode, if the region is active, the | |||
| 1290 | command operates on the region instead. | 1294 | command operates on the region instead. |
| 1291 | 1295 | ||
| 1292 | @item M-x flush-lines @key{RET} @var{regexp} @key{RET} | 1296 | @item M-x flush-lines @key{RET} @var{regexp} @key{RET} |
| 1293 | Delete each line that contains a match for @var{regexp}, operating on | 1297 | This command deletes each line that contains a match for @var{regexp}, |
| 1294 | the text after point. In Transient Mark mode, if the region is | 1298 | operating on the text after point; it deletes the current line |
| 1295 | active, the command operates on the region instead. | 1299 | if it contains a match starting after point. In Transient Mark mode, |
| 1300 | if the region is active, the command operates on the region instead; | ||
| 1301 | it deletes a line partially contained in the region if it contains a | ||
| 1302 | match entirely contained in the region. | ||
| 1303 | |||
| 1304 | If a match is split across lines, @code{flush-lines} deletes all those | ||
| 1305 | lines. It deletes the lines before starting to look for the next | ||
| 1306 | match; hence, it ignores a match starting on the same line at which | ||
| 1307 | another match ended. | ||
| 1296 | 1308 | ||
| 1297 | @item M-x keep-lines @key{RET} @var{regexp} @key{RET} | 1309 | @item M-x keep-lines @key{RET} @var{regexp} @key{RET} |
| 1298 | Delete each line that @emph{does not} contain a match for | 1310 | This command deletes each line that @emph{does not} contain a match for |
| 1299 | @var{regexp}, operating on the text after point. In Transient Mark | 1311 | @var{regexp}, operating on the text after point; if point is not at the |
| 1300 | mode, if the region is active, the command operates on the region | 1312 | beginning of a line, it always keeps the current line. In Transient |
| 1301 | instead. | 1313 | Mark mode, if the region is active, the command operates on the region |
| 1314 | instead; it never deletes lines that are only partially contained in | ||
| 1315 | the region (a newline that ends a line counts as part of that line). | ||
| 1316 | |||
| 1317 | If a match is split across lines, this command keeps all those lines. | ||
| 1302 | @end table | 1318 | @end table |
| 1303 | 1319 | ||
| 1304 | You can also search multiple files under control of a tags table | 1320 | You can also search multiple files under control of a tags table |
| 1305 | (@pxref{Tags Search}) or through Dired @kbd{A} command | 1321 | (@pxref{Tags Search}) or through the Dired @kbd{A} command |
| 1306 | (@pxref{Operating on Files}), or ask the @code{grep} program to do it | 1322 | (@pxref{Operating on Files}), or ask the @code{grep} program to do it |
| 1307 | (@pxref{Grep Searching}). | 1323 | (@pxref{Grep Searching}). |
| 1308 | 1324 | ||