annotate man/xemacs/fixit.texi @ 1633:baca156a450b

[xemacs-hg @ 2003-08-19 02:11:46 by james] Make modules build and run on Cygwin and MinGW. This is the second commit to get the toplevel files that were not committed the first time.
author james
date Tue, 19 Aug 2003 02:11:49 +0000
parents 376386a54a3c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 @node Fixit, Files, Search, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 @chapter Commands for Fixing Typos
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 @cindex typos
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 @cindex mistakes, correcting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 This chapter describes commands that are especially useful when you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 catch a mistake in your text just after you have made it, or when you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 change your mind while composing text on line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 * Kill Errors:: Commands to kill a batch of recently entered text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 * Transpose:: Exchanging two characters, words, lines, lists...
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 * Fixing Case:: Correcting case of last word entered.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 * Spelling:: Apply spelling checker to a word, or a whole file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 @node Kill Errors, Transpose, Fixit, Fixit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 @section Killing Your Mistakes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 @item @key{DEL}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 Delete last character (@code{delete-backward-char}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 @item M-@key{DEL}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 Kill last word (@code{backward-kill-word}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 @item C-x @key{DEL}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 Kill to beginning of sentence (@code{backward-kill-sentence}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 @kindex DEL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 @findex delete-backward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 The @key{DEL} character (@code{delete-backward-char}) is the most
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 important correction command. When used among graphic (self-inserting)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 characters, it can be thought of as canceling the last character typed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 @kindex M-DEL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 @kindex C-x DEL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 @findex backward-kill-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 @findex backward-kill-sentence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 When your mistake is longer than a couple of characters, it might be more
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 convenient to use @kbd{M-@key{DEL}} or @kbd{C-x @key{DEL}}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 @kbd{M-@key{DEL}} kills back to the start of the last word, and @kbd{C-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 @key{DEL}} kills back to the start of the last sentence. @kbd{C-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 @key{DEL}} is particularly useful when you are thinking of what to write as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 you type it, in case you change your mind about phrasing.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 @kbd{M-@key{DEL}} and @kbd{C-x @key{DEL}} save the killed text for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 @kbd{C-y} and @kbd{M-y} to retrieve. @xref{Yanking}.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 @kbd{M-@key{DEL}} is often useful even when you have typed only a few
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 characters wrong, if you know you are confused in your typing and aren't
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 sure exactly what you typed. At such a time, you cannot correct with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 @key{DEL} except by looking at the screen to see what you did. It requires
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 less thought to kill the whole word and start over.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 @node Transpose, Fixing Case, Kill Errors, Fixit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 @section Transposing Text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 @item C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 Transpose two characters (@code{transpose-chars}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 @item M-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62 Transpose two words (@code{transpose-words}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 @item C-M-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 Transpose two balanced expressions (@code{transpose-sexps}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 @item C-x C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 Transpose two lines (@code{transpose-lines}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 @cindex transposition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70 @kindex C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 @findex transpose-chars
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 The common error of transposing two adjacent characters can be fixed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 with the @kbd{C-t} command (@code{transpose-chars}). Normally,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 @kbd{C-t} transposes the two characters on either side of point. When
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 given at the end of a line, @kbd{C-t} transposes the last two characters
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
76 on the line, rather than transposing the last character of the line with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77 the newline, which would be useless. If you catch a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 transposition error right away, you can fix it with just @kbd{C-t}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79 If you catch the error later, move the cursor back to between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 the two transposed characters. If you transposed a space with the last
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
81 character of the word before it, the word motion commands are a good way
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
82 of getting there. Otherwise, a reverse search (@kbd{C-r}) is often the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
83 best way. @xref{Search}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
84
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85 @kindex C-x C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 @findex transpose-lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 @kindex M-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88 @findex transpose-words
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89 @kindex C-M-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90 @findex transpose-sexps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 @kbd{Meta-t} (@code{transpose-words}) transposes the word before point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92 with the word after point. It moves point forward over a word, dragging
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93 the word preceding or containing point forward as well. The punctuation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 characters between the words do not move. For example, @w{@samp{FOO, BAR}}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95 transposes into @w{@samp{BAR, FOO}} rather than @samp{@w{BAR FOO,}}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 @kbd{C-M-t} (@code{transpose-sexps}) is a similar command for transposing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 two expressions (@pxref{Lists}), and @kbd{C-x C-t} (@code{transpose-lines})
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
99 exchanges lines. It works like @kbd{M-t} but in determines the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100 division of the text into syntactic units differently.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102 A numeric argument to a transpose command serves as a repeat count: it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 tells the transpose command to move the character (word, sexp, line) before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 or containing point across several other characters (words, sexps, lines).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105 For example, @kbd{C-u 3 C-t} moves the character before point forward
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 across three other characters. This is equivalent to repeating @kbd{C-t}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 three times. @kbd{C-u - 4 M-t} moves the word before point backward across
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108 four words. @kbd{C-u - C-M-t} would cancel the effect of plain
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109 @kbd{C-M-t}.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 A numeric argument of zero transposes the character (word, sexp, line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 ending after point with the one ending after the mark (otherwise a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 command with a repeat count of zero would do nothing).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 @node Fixing Case, Spelling, Transpose, Fixit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 @section Case Conversion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 @item M-- M-l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
120 Convert last word to lower case. Note that @kbd{Meta--} is ``Meta-minus.''
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
121 @item M-- M-u
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 Convert last word to all upper case.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 @item M-- M-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124 Convert last word to lower case with capital initial.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127 @findex downcase-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
128 @findex upcase-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
129 @findex capitalize-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
130 @kindex M-@t{-} M-l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
131 @kindex M-@t{-} M-u
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132 @kindex M-@t{-} M-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
133 @cindex case conversion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
134 @cindex words
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
135 A common error is to type words in the wrong case. Because of this,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
136 the word case-conversion commands @kbd{M-l}, @kbd{M-u}, and @kbd{M-c} do
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
137 not move the cursor when used with a negative argument.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
138 As soon as you see you have mistyped the last word, you can simply
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
139 case-convert it and continue typing. @xref{Case}.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
140
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
141 @node Spelling,, Fixing Case, Fixit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
142 @section Checking and Correcting Spelling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
143 @cindex spelling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
144
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145 @c doublewidecommands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 @item M-$
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
148 Check and correct spelling of word (@code{spell-word}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
149 @item M-x spell-buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
150 Check and correct spelling of each word in the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 @item M-x spell-region
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 Check and correct spelling of each word in the region.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
153 @item M-x spell-string
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 Check spelling of specified word.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157 @kindex M-$
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 @findex spell-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
159 To check the spelling of the word before point, and optionally correct
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
160 it, use the command @kbd{M-$} (@code{spell-word}). This command runs an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161 inferior process containing the @code{spell} program to see whether the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162 word is correct English. If it is not, it asks you to edit the word (in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
163 the minibuffer) into a corrected spelling, and then performs a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
164 @code{query-replace} to substitute the corrected spelling for the old
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
165 one throughout the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
167 If you exit the minibuffer without altering the original spelling, it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 means you do not want to do anything to that word. In that case, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169 @code{query-replace} is not done.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171 @findex spell-buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 @kbd{M-x spell-buffer} checks each word in the buffer the same way that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173 @code{spell-word} does, doing a @code{query-replace} for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174 every incorrect word if appropriate.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 @findex spell-region
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177 @kbd{M-x spell-region} is similar to @code{spell-buffer} but operates
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 only on the region, not the entire buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 @findex spell-string
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 @kbd{M-x spell-string} reads a string as an argument and checks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 whether that is a correctly spelled English word. It prints a message
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 giving the answer in the echo area.