| 1 |
@c This is part of the Emacs manual. |
|---|
| 2 |
@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, |
|---|
| 3 |
@c 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. |
|---|
| 4 |
@c See file emacs.texi for copying conditions. |
|---|
| 5 |
@node Fixit, Keyboard Macros, Search, Top |
|---|
| 6 |
@chapter Commands for Fixing Typos |
|---|
| 7 |
@cindex typos, fixing |
|---|
| 8 |
@cindex mistakes, correcting |
|---|
| 9 |
|
|---|
| 10 |
In this chapter we describe the commands that are especially useful for |
|---|
| 11 |
the times when you catch a mistake in your text just after you have made |
|---|
| 12 |
it, or change your mind while composing text on the fly. |
|---|
| 13 |
|
|---|
| 14 |
The most fundamental command for correcting erroneous editing is the |
|---|
| 15 |
undo command, @kbd{C-x u} or @kbd{C-_} or @kbd{C-/}. This command |
|---|
| 16 |
undoes a single command (usually), a part of a command (in the case of |
|---|
| 17 |
@code{query-replace}), or several consecutive self-inserting |
|---|
| 18 |
characters. Consecutive repetitions of the undo command undo earlier |
|---|
| 19 |
and earlier changes, back to the limit of the undo information |
|---|
| 20 |
available. @xref{Undo}, for more information. |
|---|
| 21 |
|
|---|
| 22 |
@menu |
|---|
| 23 |
* Undo:: The Undo commands. |
|---|
| 24 |
* Kill Errors:: Commands to kill a batch of recently entered text. |
|---|
| 25 |
* Transpose:: Exchanging two characters, words, lines, lists... |
|---|
| 26 |
* Fixing Case:: Correcting case of last word entered. |
|---|
| 27 |
* Spelling:: Apply spelling checker to a word, or a whole file. |
|---|
| 28 |
@end menu |
|---|
| 29 |
|
|---|
| 30 |
@node Undo |
|---|
| 31 |
@section Undo |
|---|
| 32 |
@cindex undo |
|---|
| 33 |
@cindex changes, undoing |
|---|
| 34 |
|
|---|
| 35 |
The @dfn{undo} commands undo recent changes in the buffer's text. |
|---|
| 36 |
Each buffer records changes individually, and the undo command always |
|---|
| 37 |
applies to the current buffer. You can undo all the changes in a |
|---|
| 38 |
buffer for as far as back these records go. Usually each editing |
|---|
| 39 |
command makes a separate entry in the undo records, but some commands |
|---|
| 40 |
such as @code{query-replace} divide their changes into multiple |
|---|
| 41 |
entries for flexibility in undoing. Meanwhile, self-inserting |
|---|
| 42 |
characters are usually grouped to make undoing less tedious. |
|---|
| 43 |
|
|---|
| 44 |
@table @kbd |
|---|
| 45 |
@item C-x u |
|---|
| 46 |
@itemx C-_ |
|---|
| 47 |
@itemx C-/ |
|---|
| 48 |
Undo one entry in the current buffer's undo records (@code{undo}). |
|---|
| 49 |
@end table |
|---|
| 50 |
|
|---|
| 51 |
@kindex C-x u |
|---|
| 52 |
@kindex C-_ |
|---|
| 53 |
@kindex C-/ |
|---|
| 54 |
@findex undo |
|---|
| 55 |
To begin to undo, type the command @kbd{C-x u} (or its aliases, |
|---|
| 56 |
@kbd{C-_} or @kbd{C-/}). This undoes the most recent change in the |
|---|
| 57 |
buffer, and moves point back to where it was before that change. |
|---|
| 58 |
|
|---|
| 59 |
Consecutive repetitions of @kbd{C-x u} (or its aliases) undo earlier |
|---|
| 60 |
and earlier changes in the current buffer, back to the limit of the |
|---|
| 61 |
current buffer's undo records. If all the recorded changes have |
|---|
| 62 |
already been undone, the undo command just signals an error. |
|---|
| 63 |
|
|---|
| 64 |
If you notice that a buffer has been modified accidentally, the |
|---|
| 65 |
easiest way to recover is to type @kbd{C-_} repeatedly until the stars |
|---|
| 66 |
disappear from the front of the mode line. At this time, all the |
|---|
| 67 |
modifications you made have been canceled. Whenever an undo command |
|---|
| 68 |
makes the stars disappear from the mode line, it means that the buffer |
|---|
| 69 |
contents are the same as they were when the file was last read in or |
|---|
| 70 |
saved. |
|---|
| 71 |
|
|---|
| 72 |
If you do not remember whether you changed the buffer deliberately, |
|---|
| 73 |
type @kbd{C-_} once. When you see the last change you made undone, you |
|---|
| 74 |
will see whether it was an intentional change. If it was an accident, |
|---|
| 75 |
leave it undone. If it was deliberate, redo the change as described |
|---|
| 76 |
below. |
|---|
| 77 |
|
|---|
| 78 |
@findex undo-only |
|---|
| 79 |
Any command other than an undo command breaks the sequence of undo |
|---|
| 80 |
commands. Starting from that moment, the previous undo commands |
|---|
| 81 |
become ordinary changes that you can undo. Thus, to redo changes you |
|---|
| 82 |
have undone, type @kbd{C-f} or any other command that will harmlessly |
|---|
| 83 |
break the sequence of undoing, then type undo commands again. On the |
|---|
| 84 |
other hand, if you want to resume undoing, without redoing previous |
|---|
| 85 |
undo commands, use @kbd{M-x undo-only}. This is like @code{undo}, but |
|---|
| 86 |
will not redo changes you have just undone. |
|---|
| 87 |
|
|---|
| 88 |
@cindex selective undo |
|---|
| 89 |
@kindex C-u C-x u |
|---|
| 90 |
Ordinary undo applies to all changes made in the current buffer. You |
|---|
| 91 |
can also perform @dfn{selective undo}, limited to the region. |
|---|
| 92 |
|
|---|
| 93 |
To do this, specify the region you want, then run the @code{undo} |
|---|
| 94 |
command with a prefix argument (the value does not matter): @kbd{C-u |
|---|
| 95 |
C-x u} or @kbd{C-u C-_}. This undoes the most recent change in the |
|---|
| 96 |
region. To undo further changes in the same region, repeat the |
|---|
| 97 |
@code{undo} command (no prefix argument is needed). In Transient Mark |
|---|
| 98 |
mode (@pxref{Transient Mark}), any use of @code{undo} when there is an |
|---|
| 99 |
active region performs selective undo; you do not need a prefix |
|---|
| 100 |
argument. |
|---|
| 101 |
|
|---|
| 102 |
Some specialized buffers do not make undo records. Buffers |
|---|
| 103 |
whose names start with spaces never do; these buffers are used |
|---|
| 104 |
internally by Emacs and its extensions to hold text that users don't |
|---|
| 105 |
normally look at or edit. |
|---|
| 106 |
|
|---|
| 107 |
@vindex undo-limit |
|---|
| 108 |
@vindex undo-strong-limit |
|---|
| 109 |
@vindex undo-outer-limit |
|---|
| 110 |
@cindex undo limit |
|---|
| 111 |
When the undo records for a buffer becomes too large, Emacs |
|---|
| 112 |
discards the oldest undo records from time to time (during garbage |
|---|
| 113 |
collection). You can specify how much undo records to keep by |
|---|
| 114 |
setting three variables: @code{undo-limit}, @code{undo-strong-limit}, |
|---|
| 115 |
and @code{undo-outer-limit}. Their values are expressed in units of |
|---|
| 116 |
bytes of space. |
|---|
| 117 |
|
|---|
| 118 |
The variable @code{undo-limit} sets a soft limit: Emacs keeps undo |
|---|
| 119 |
data for enough commands to reach this size, and perhaps exceed it, |
|---|
| 120 |
but does not keep data for any earlier commands beyond that. Its |
|---|
| 121 |
default value is 20000. The variable @code{undo-strong-limit} sets a |
|---|
| 122 |
stricter limit: a previous command (not the most recent one) which |
|---|
| 123 |
pushes the size past this amount is itself forgotten. The default |
|---|
| 124 |
value of @code{undo-strong-limit} is 30000. |
|---|
| 125 |
|
|---|
| 126 |
Regardless of the values of those variables, the most recent change |
|---|
| 127 |
is never discarded unless it gets bigger than @code{undo-outer-limit} |
|---|
| 128 |
(normally 3,000,000). At that point, Emacs discards the undo data and |
|---|
| 129 |
warns you about it. This is the only situation in which you cannot |
|---|
| 130 |
undo the last command. If this happens, you can increase the value of |
|---|
| 131 |
@code{undo-outer-limit} to make it even less likely to happen in the |
|---|
| 132 |
future. But if you didn't expect the command to create such large |
|---|
| 133 |
undo data, then it is probably a bug and you should report it. |
|---|
| 134 |
@xref{Bugs,, Reporting Bugs}. |
|---|
| 135 |
|
|---|
| 136 |
The reason the @code{undo} command has three key bindings, @kbd{C-x |
|---|
| 137 |
u}, @kbd{C-_} and @kbd{C-/}, is that it is worthy of a |
|---|
| 138 |
single-character key, but @kbd{C-x u} is more straightforward for |
|---|
| 139 |
beginners to remember and type. Meanwhile, @kbd{C--} on a text-only |
|---|
| 140 |
terminal is really @kbd{C-_}, which makes it a natural and easily |
|---|
| 141 |
typed binding for undoing. |
|---|
| 142 |
|
|---|
| 143 |
@node Kill Errors |
|---|
| 144 |
@section Killing Your Mistakes |
|---|
| 145 |
|
|---|
| 146 |
@table @kbd |
|---|
| 147 |
@item @key{DEL} |
|---|
| 148 |
Delete last character (@code{delete-backward-char}). |
|---|
| 149 |
@item M-@key{DEL} |
|---|
| 150 |
Kill last word (@code{backward-kill-word}). |
|---|
| 151 |
@item C-x @key{DEL} |
|---|
| 152 |
Kill to beginning of sentence (@code{backward-kill-sentence}). |
|---|
| 153 |
@end table |
|---|
| 154 |
|
|---|
| 155 |
The @key{DEL} character (@code{delete-backward-char}) is the most |
|---|
| 156 |
important correction command. It deletes the character before point. |
|---|
| 157 |
When @key{DEL} follows a self-inserting character command, you can think |
|---|
| 158 |
of it as canceling that command. However, avoid the confusion of thinking |
|---|
| 159 |
of @key{DEL} as a general way to cancel a command! |
|---|
| 160 |
|
|---|
| 161 |
When your mistake is longer than a couple of characters, it might be |
|---|
| 162 |
more convenient to use @kbd{M-@key{DEL}} or @kbd{C-x @key{DEL}}. |
|---|
| 163 |
@kbd{M-@key{DEL}} kills back to the start of the last word, and @kbd{C-x |
|---|
| 164 |
@key{DEL}} kills back to the start of the last sentence. @kbd{C-x |
|---|
| 165 |
@key{DEL}} is particularly useful when you change your mind about the |
|---|
| 166 |
phrasing of the text you are writing. @kbd{M-@key{DEL}} and @kbd{C-x |
|---|
| 167 |
@key{DEL}} save the killed text for @kbd{C-y} and @kbd{M-y} to |
|---|
| 168 |
retrieve. @xref{Yanking}.@refill |
|---|
| 169 |
|
|---|
| 170 |
@kbd{M-@key{DEL}} is often useful even when you have typed only a few |
|---|
| 171 |
characters wrong, if you know you are confused in your typing and aren't |
|---|
| 172 |
sure exactly what you typed. At such a time, you cannot correct with |
|---|
| 173 |
@key{DEL} except by looking at the screen to see what you did. Often it |
|---|
| 174 |
requires less thought to kill the whole word and start again. |
|---|
| 175 |
|
|---|
| 176 |
@node Transpose |
|---|
| 177 |
@section Transposing Text |
|---|
| 178 |
|
|---|
| 179 |
@table @kbd |
|---|
| 180 |
@item C-t |
|---|
| 181 |
Transpose two characters (@code{transpose-chars}). |
|---|
| 182 |
@item M-t |
|---|
| 183 |
Transpose two words (@code{transpose-words}). |
|---|
| 184 |
@item C-M-t |
|---|
| 185 |
Transpose two balanced expressions (@code{transpose-sexps}). |
|---|
| 186 |
@item C-x C-t |
|---|
| 187 |
Transpose two lines (@code{transpose-lines}). |
|---|
| 188 |
@end table |
|---|
| 189 |
|
|---|
| 190 |
@kindex C-t |
|---|
| 191 |
@findex transpose-chars |
|---|
| 192 |
The common error of transposing two characters can be fixed, when they |
|---|
| 193 |
are adjacent, with the @kbd{C-t} command (@code{transpose-chars}). Normally, |
|---|
| 194 |
@kbd{C-t} transposes the two characters on either side of point. When |
|---|
| 195 |
given at the end of a line, rather than transposing the last character of |
|---|
| 196 |
the line with the newline, which would be useless, @kbd{C-t} transposes the |
|---|
| 197 |
last two characters on the line. So, if you catch your transposition error |
|---|
| 198 |
right away, you can fix it with just a @kbd{C-t}. If you don't catch it so |
|---|
| 199 |
fast, you must move the cursor back between the two transposed |
|---|
| 200 |
characters before you type @kbd{C-t}. If you transposed a space with |
|---|
| 201 |
the last character of the word before it, the word motion commands are |
|---|
| 202 |
a good way of getting there. Otherwise, a reverse search (@kbd{C-r}) |
|---|
| 203 |
is often the best way. @xref{Search}. |
|---|
| 204 |
|
|---|
| 205 |
@kindex C-x C-t |
|---|
| 206 |
@findex transpose-lines |
|---|
| 207 |
@kindex M-t |
|---|
| 208 |
@findex transpose-words |
|---|
| 209 |
@c Don't index C-M-t and transpose-sexps here, they are indexed in |
|---|
| 210 |
@c programs.texi, in the "List Commands" node. |
|---|
| 211 |
@c @kindex C-M-t |
|---|
| 212 |
@c @findex transpose-sexps |
|---|
| 213 |
@kbd{M-t} transposes the word before point with the word after point |
|---|
| 214 |
(@code{transpose-words}). It moves point forward over a word, |
|---|
| 215 |
dragging the word preceding or containing point forward as well. The |
|---|
| 216 |
punctuation characters between the words do not move. For example, |
|---|
| 217 |
@w{@samp{FOO, BAR}} transposes into @w{@samp{BAR, FOO}} rather than |
|---|
| 218 |
@samp{@w{BAR FOO,}}. |
|---|
| 219 |
|
|---|
| 220 |
@kbd{C-M-t} (@code{transpose-sexps}) is a similar command for |
|---|
| 221 |
transposing two expressions (@pxref{Expressions}), and @kbd{C-x C-t} |
|---|
| 222 |
(@code{transpose-lines}) exchanges lines. They work like @kbd{M-t} |
|---|
| 223 |
except as regards what units of text they transpose. |
|---|
| 224 |
|
|---|
| 225 |
A numeric argument to a transpose command serves as a repeat count: it |
|---|
| 226 |
tells the transpose command to move the character (word, expression, line) |
|---|
| 227 |
before or containing point across several other characters (words, |
|---|
| 228 |
expressions, lines). For example, @kbd{C-u 3 C-t} moves the character before |
|---|
| 229 |
point forward across three other characters. It would change |
|---|
| 230 |
@samp{f@point{}oobar} into @samp{oobf@point{}ar}. This is equivalent to |
|---|
| 231 |
repeating @kbd{C-t} three times. @kbd{C-u - 4 M-t} moves the word |
|---|
| 232 |
before point backward across four words. @kbd{C-u - C-M-t} would cancel |
|---|
| 233 |
the effect of plain @kbd{C-M-t}.@refill |
|---|
| 234 |
|
|---|
| 235 |
A numeric argument of zero is assigned a special meaning (because |
|---|
| 236 |
otherwise a command with a repeat count of zero would do nothing): to |
|---|
| 237 |
transpose the character (word, expression, line) ending after point |
|---|
| 238 |
with the one ending after the mark. |
|---|
| 239 |
|
|---|
| 240 |
@node Fixing Case |
|---|
| 241 |
@section Case Conversion |
|---|
| 242 |
|
|---|
| 243 |
@table @kbd |
|---|
| 244 |
@item M-- M-l |
|---|
| 245 |
Convert last word to lower case. Note @kbd{Meta--} is Meta-minus. |
|---|
| 246 |
@item M-- M-u |
|---|
| 247 |
Convert last word to all upper case. |
|---|
| 248 |
@item M-- M-c |
|---|
| 249 |
Convert last word to lower case with capital initial. |
|---|
| 250 |
@end table |
|---|
| 251 |
|
|---|
| 252 |
@kindex M-@t{-} M-l |
|---|
| 253 |
@kindex M-@t{-} M-u |
|---|
| 254 |
@kindex M-@t{-} M-c |
|---|
| 255 |
A very common error is to type words in the wrong case. Because of this, |
|---|
| 256 |
the word case-conversion commands @kbd{M-l}, @kbd{M-u} and @kbd{M-c} have a |
|---|
| 257 |
special feature when used with a negative argument: they do not move the |
|---|
| 258 |
cursor. As soon as you see you have mistyped the last word, you can simply |
|---|
| 259 |
case-convert it and go on typing. @xref{Case}.@refill |
|---|
| 260 |
|
|---|
| 261 |
@node Spelling |
|---|
| 262 |
@section Checking and Correcting Spelling |
|---|
| 263 |
@cindex spelling, checking and correcting |
|---|
| 264 |
@cindex checking spelling |
|---|
| 265 |
@cindex correcting spelling |
|---|
| 266 |
|
|---|
| 267 |
This section describes the commands to check the spelling of a single |
|---|
| 268 |
word or of a portion of a buffer. These commands work with the spelling |
|---|
| 269 |
checker programs Aspell and Ispell, which are not part of Emacs. |
|---|
| 270 |
@ifnottex |
|---|
| 271 |
@xref{Top, Aspell,, aspell, The Aspell Manual}. |
|---|
| 272 |
@end ifnottex |
|---|
| 273 |
|
|---|
| 274 |
@table @kbd |
|---|
| 275 |
@item M-x flyspell-mode |
|---|
| 276 |
Enable Flyspell mode, which highlights all misspelled words. |
|---|
| 277 |
@item M-x flyspell-prog-mode |
|---|
| 278 |
Enable Flyspell mode for comments and strings only. |
|---|
| 279 |
@item M-$ |
|---|
| 280 |
Check and correct spelling of the word at point (@code{ispell-word}). |
|---|
| 281 |
@item M-@key{TAB} |
|---|
| 282 |
@itemx @key{ESC} @key{TAB} |
|---|
| 283 |
Complete the word before point based on the spelling dictionary |
|---|
| 284 |
(@code{ispell-complete-word}). |
|---|
| 285 |
@item M-x ispell |
|---|
| 286 |
Spell-check the active region or the current buffer. |
|---|
| 287 |
@item M-x ispell-buffer |
|---|
| 288 |
Check and correct spelling of each word in the buffer. |
|---|
| 289 |
@item M-x ispell-region |
|---|
| 290 |
Check and correct spelling of each word in the region. |
|---|
| 291 |
@item M-x ispell-message |
|---|
| 292 |
Check and correct spelling of each word in a draft mail message, |
|---|
| 293 |
excluding cited material. |
|---|
| 294 |
@item M-x ispell-change-dictionary @key{RET} @var{dict} @key{RET} |
|---|
| 295 |
Restart the Aspell or Ispell process, using @var{dict} as the dictionary. |
|---|
| 296 |
@item M-x ispell-kill-ispell |
|---|
| 297 |
Kill the Aspell or Ispell subprocess. |
|---|
| 298 |
@end table |
|---|
| 299 |
|
|---|
| 300 |
@cindex Flyspell mode |
|---|
| 301 |
@findex flyspell-mode |
|---|
| 302 |
Flyspell mode is a fully-automatic way to check spelling as you edit |
|---|
| 303 |
in Emacs. It operates by checking words as you change or insert them. |
|---|
| 304 |
When it finds a word that it does not recognize, it highlights that |
|---|
| 305 |
word. This does not interfere with your editing, but when you see the |
|---|
| 306 |
highlighted word, you can move to it and fix it. Type @kbd{M-x |
|---|
| 307 |
flyspell-mode} to enable or disable this mode in the current buffer. |
|---|
| 308 |
|
|---|
| 309 |
When Flyspell mode highlights a word as misspelled, you can click on |
|---|
| 310 |
it with @kbd{Mouse-2} to display a menu of possible corrections and |
|---|
| 311 |
actions. You can also correct the word by editing it manually in any |
|---|
| 312 |
way you like. |
|---|
| 313 |
|
|---|
| 314 |
@findex flyspell-prog-mode |
|---|
| 315 |
Flyspell Prog mode works just like ordinary Flyspell mode, except that |
|---|
| 316 |
it only checks words in comments and string constants. This feature |
|---|
| 317 |
is useful for editing programs. Type @kbd{M-x flyspell-prog-mode} to |
|---|
| 318 |
enable or disable this mode in the current buffer. |
|---|
| 319 |
|
|---|
| 320 |
The other Emacs spell-checking features check or look up words when |
|---|
| 321 |
you give an explicit command to do so. |
|---|
| 322 |
|
|---|
| 323 |
@kindex M-$ |
|---|
| 324 |
@findex ispell-word |
|---|
| 325 |
To check the spelling of the word around or before point, and |
|---|
| 326 |
optionally correct it as well, use the command @kbd{M-$} |
|---|
| 327 |
(@code{ispell-word}). If the word is not correct, the command offers |
|---|
| 328 |
you various alternatives for what to do about it. |
|---|
| 329 |
|
|---|
| 330 |
@findex ispell-buffer |
|---|
| 331 |
@findex ispell-region |
|---|
| 332 |
To check the entire current buffer, use @kbd{M-x ispell-buffer}. Use |
|---|
| 333 |
@kbd{M-x ispell-region} to check just the current region. To check |
|---|
| 334 |
spelling in an email message you are writing, use @kbd{M-x |
|---|
| 335 |
ispell-message}; that command checks the whole buffer, except for |
|---|
| 336 |
material that is indented or appears to be cited from other messages. |
|---|
| 337 |
|
|---|
| 338 |
@findex ispell |
|---|
| 339 |
@cindex spell-checking the active region |
|---|
| 340 |
The @kbd{M-x ispell} command spell-checks the active region if the |
|---|
| 341 |
Transient Mark mode is on (@pxref{Transient Mark}), otherwise it |
|---|
| 342 |
spell-checks the current buffer. |
|---|
| 343 |
|
|---|
| 344 |
Each time these commands encounter an incorrect word, they ask you |
|---|
| 345 |
what to do. They display a list of alternatives, usually including |
|---|
| 346 |
several ``near-misses''---words that are close to the word being |
|---|
| 347 |
checked. Then you must type a single-character response. Here are |
|---|
| 348 |
the valid responses: |
|---|
| 349 |
|
|---|
| 350 |
@table @kbd |
|---|
| 351 |
@item @key{SPC} |
|---|
| 352 |
Skip this word---continue to consider it incorrect, but don't change it |
|---|
| 353 |
here. |
|---|
| 354 |
|
|---|
| 355 |
@item r @var{new} @key{RET} |
|---|
| 356 |
Replace the word (just this time) with @var{new}. (The replacement |
|---|
| 357 |
string will be rescanned for more spelling errors.) |
|---|
| 358 |
|
|---|
| 359 |
@item R @var{new} @key{RET} |
|---|
| 360 |
Replace the word with @var{new}, and do a @code{query-replace} so you |
|---|
| 361 |
can replace it elsewhere in the buffer if you wish. (The replacements |
|---|
| 362 |
will be rescanned for more spelling errors.) |
|---|
| 363 |
|
|---|
| 364 |
@item @var{digit} |
|---|
| 365 |
Replace the word (just this time) with one of the displayed |
|---|
| 366 |
near-misses. Each near-miss is listed with a digit; type that digit to |
|---|
| 367 |
select it. |
|---|
| 368 |
|
|---|
| 369 |
@item a |
|---|
| 370 |
Accept the incorrect word---treat it as correct, but only in this |
|---|
| 371 |
editing session. |
|---|
| 372 |
|
|---|
| 373 |
@item A |
|---|
| 374 |
Accept the incorrect word---treat it as correct, but only in this |
|---|
| 375 |
editing session and for this buffer. |
|---|
| 376 |
|
|---|
| 377 |
@item i |
|---|
| 378 |
Insert this word in your private dictionary file so that Aspell or Ispell will |
|---|
| 379 |
consider it correct from now on, even in future sessions. |
|---|
| 380 |
|
|---|
| 381 |
@item u |
|---|
| 382 |
Insert the lower-case version of this word in your private dic@-tion@-ary |
|---|
| 383 |
file. |
|---|
| 384 |
|
|---|
| 385 |
@item m |
|---|
| 386 |
Like @kbd{i}, but you can also specify dictionary completion |
|---|
| 387 |
information. |
|---|
| 388 |
|
|---|
| 389 |
@item l @var{word} @key{RET} |
|---|
| 390 |
Look in the dictionary for words that match @var{word}. These words |
|---|
| 391 |
become the new list of ``near-misses''; you can select one of them as |
|---|
| 392 |
the replacement by typing a digit. You can use @samp{*} in @var{word} as a |
|---|
| 393 |
wildcard. |
|---|
| 394 |
|
|---|
| 395 |
@item C-g |
|---|
| 396 |
Quit interactive spell checking, leaving point at the word that was |
|---|
| 397 |
being checked. You can restart checking again afterward with @kbd{C-u |
|---|
| 398 |
M-$}. |
|---|
| 399 |
|
|---|
| 400 |
@item X |
|---|
| 401 |
Same as @kbd{C-g}. |
|---|
| 402 |
|
|---|
| 403 |
@item x |
|---|
| 404 |
Quit interactive spell checking and move point back to where it was |
|---|
| 405 |
when you started spell checking. |
|---|
| 406 |
|
|---|
| 407 |
@item q |
|---|
| 408 |
Quit interactive spell checking and kill the Ispell subprocess. |
|---|
| 409 |
|
|---|
| 410 |
@item C-l |
|---|
| 411 |
Refresh the screen. |
|---|
| 412 |
|
|---|
| 413 |
@item C-z |
|---|
| 414 |
This key has its normal command meaning (suspend Emacs or iconify this |
|---|
| 415 |
frame). |
|---|
| 416 |
|
|---|
| 417 |
@item ? |
|---|
| 418 |
Show the list of options. |
|---|
| 419 |
@end table |
|---|
| 420 |
|
|---|
| 421 |
@findex ispell-complete-word |
|---|
| 422 |
The command @code{ispell-complete-word}, which is bound to the key |
|---|
| 423 |
@kbd{M-@key{TAB}} in Text mode and related modes, shows a list of |
|---|
| 424 |
completions based on spelling correction. Insert the beginning of a |
|---|
| 425 |
word, and then type @kbd{M-@key{TAB}}; the command displays a |
|---|
| 426 |
completion list window. (If your window manager intercepts |
|---|
| 427 |
@kbd{M-@key{TAB}}, type @kbd{@key{ESC} @key{TAB}} or @kbd{C-M-i}.) To |
|---|
| 428 |
choose one of the completions listed, click @kbd{Mouse-2} or |
|---|
| 429 |
@kbd{Mouse-1} fast on it, or move the cursor there in the completions |
|---|
| 430 |
window and type @key{RET}. @xref{Text Mode}. |
|---|
| 431 |
|
|---|
| 432 |
@ignore |
|---|
| 433 |
@findex reload-ispell |
|---|
| 434 |
The first time you use any of the spell checking commands, it starts |
|---|
| 435 |
an Ispell subprocess. The first thing the subprocess does is read your |
|---|
| 436 |
private dictionary, which defaults to the file @file{~/ispell.words}. |
|---|
| 437 |
Words that you ``insert'' with the @kbd{i} command are added to that |
|---|
| 438 |
file, but not right away---only at the end of the interactive |
|---|
| 439 |
replacement procedure. Use the @kbd{M-x reload-ispell} command to |
|---|
| 440 |
reload your private dictionary if you edit the file outside of Ispell. |
|---|
| 441 |
@end ignore |
|---|
| 442 |
|
|---|
| 443 |
@cindex @code{ispell} program |
|---|
| 444 |
@findex ispell-kill-ispell |
|---|
| 445 |
Once started, the Aspell or Ispell subprocess continues to run |
|---|
| 446 |
(waiting for something to do), so that subsequent spell checking |
|---|
| 447 |
commands complete more quickly. If you want to get rid of the |
|---|
| 448 |
process, use @kbd{M-x ispell-kill-ispell}. This is not usually |
|---|
| 449 |
necessary, since the process uses no time except when you do spelling |
|---|
| 450 |
correction. |
|---|
| 451 |
|
|---|
| 452 |
@vindex ispell-dictionary |
|---|
| 453 |
Ispell and Aspell use two dictionaries together for spell checking: the |
|---|
| 454 |
standard dictionary and your private dictionary. The variable |
|---|
| 455 |
@code{ispell-dictionary} specifies the file name to use for the |
|---|
| 456 |
standard dictionary; a value of @code{nil} selects the default |
|---|
| 457 |
dictionary. The command @kbd{M-x ispell-change-dictionary} sets this |
|---|
| 458 |
variable and then restarts the subprocess, so that it will use |
|---|
| 459 |
a different standard dictionary. |
|---|
| 460 |
|
|---|
| 461 |
@vindex ispell-complete-word-dict |
|---|
| 462 |
Aspell and Ispell use a separate dictionary for word completion. |
|---|
| 463 |
The variable @code{ispell-complete-word-dict} specifies the file name |
|---|
| 464 |
of this dictionary. The completion dictionary must be different |
|---|
| 465 |
because it cannot use root and affix information. For some languages |
|---|
| 466 |
there is a spell checking dictionary but no word completion |
|---|
| 467 |
dictionary. |
|---|
| 468 |
|
|---|
| 469 |
@ignore |
|---|
| 470 |
arch-tag: 3359a443-96ed-448f-9f05-c8111ba8eac0 |
|---|
| 471 |
@end ignore |
|---|