avoid casts in left hand sides of assignments.
[nvi.git] / docs / vitut / vi.chars
blob62c6df2c47a23c00a943bb38fa4771848bc22527
1 .\" Copyright (c) 1980, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" %sccs.include.redist.roff%
5 .\"
6 .\"     $Id: vi.chars,v 8.3 1996/06/27 19:53:17 bostic Exp $ (Berkeley) $Date: 1996/06/27 19:53:17 $
7 .\"
8 .bd S 3
9 .pn 21
10 .de iP
11 .IP "\fB\\$1\fR" \\$2
13 .SH
14 Appendix: character functions
15 .PP
16 This appendix gives the uses the editor makes of each character.  The
17 characters are presented in their order in the \s-2ASCII\s0 character
18 set:  Control characters come first, then most special characters, then
19 the digits, upper and then lower case characters.
20 .PP
21 For each character we tell a meaning it has as a command and any meaning it
22 has during an insert.
23 If it has only meaning as a command, then only this is discussed.
24 Section numbers in parentheses indicate where the character is discussed;
25 a `f' after the section number means that the character is mentioned
26 in a footnote.
27 .iP "^@" 15
28 Not a command character.
29 If typed as the first character of an insertion it is replaced with the
30 last text inserted, and the insert terminates.  Only 128 characters are
31 saved from the last insert; if more characters were inserted the mechanism
32 is not available.
33 A \fB^@\fR cannot be part of the file due to the editor implementation
34 (7.5f).
35 .iP "^A" 15
36 Unused.
37 .iP "^B" 15
38 Backward window.
39 A count specifies repetition.
40 Two lines of continuity are kept if possible (2.1, 6.1, 7.2).
41 .iP "^C" 15
42 Unused.
43 .iP "^D" 15
44 As a command, scrolls down a half-window of text.  
45 A count gives the number of (logical) lines to scroll, and is remembered
46 for future \fB^D\fR and \fB^U\fR commands (2.1, 7.2).
47 During an insert, backtabs over \fIautoindent\fR white space at the beginning
48 of a line (6.6, 7.5); this white space cannot be backspaced over.
49 .iP "^E" 15
50 Exposes one more line below the current screen in the file, leaving
51 the cursor where it is if possible.
52 (Version 3 only.)
53 .iP "^F" 15
54 Forward window.  A count specifies repetition.
55 Two lines of continuity are kept if possible (2.1, 6.1, 7.2).
56 .iP "^G" 15
57 Equivalent to \fB:f\fR\s-2CR\s0, printing the current file, whether
58 it has been modified, the current line number and the number of lines
59 in the file, and the percentage of the way through the file that you
60 are.
61 .iP "^H (\fR\s-2BS\s0\fP)" 15
62 Same as
63 .B "left arrow" .
64 (See
65 .B h ).
66 During an insert, eliminates the last input character, backing over it
67 but not erasing it; it remains so you can see what you typed if you
68 wish to type something only slightly different (3.1, 7.5).
69 .iP "^I\ (\fR\s-2TAB\s0\fP)" 15
70 Not a command character.
71 When inserted it prints as some
72 number of spaces.
73 When the cursor is at a tab character it rests at the last of the spaces
74 which represent the tab.
75 The spacing of tabstops is controlled by the \fItabstop\fR option (4.1, 6.6).
76 .iP "^J\ (\fR\s-2LF\s0\fP)" 15
77 Same as
78 .B "down arrow"
79 (see
80 .B j ).
81 .iP "^K" 15
82 Unused.
83 .iP "^L" 15
84 The \s-2ASCII\s0 formfeed character, this causes the screen to be cleared
85 and redrawn.  This is useful after a transmission error, if characters
86 typed by a program other than the editor scramble the screen,
87 or after output is stopped by an interrupt (5.4, 7.2f).
88 .ne 1i
89 .iP "^M\ (\fR\s-2CR\s0\fP)" 15
90 A carriage return advances to the next line, at the first non-white position
91 in the line.  Given a count, it advances that many lines (2.3).
92 During an insert, a \s-2CR\s0 causes the insert to continue onto
93 another line (3.1).
94 .iP "^N" 15
95 Same as
96 .B "down arrow"
97 (see
98 .B j ).
99 .iP "^O" 15
100 Unused.
101 .iP "^P" 15
102 Same as
103 .B "up arrow"
104 (see
105 .B k ).
106 .iP "^Q" 15
107 Not a command character.
108 In input mode,
109 .B ^Q
110 quotes the next character, the same as
111 .B ^V ,
112 except that some teletype drivers will eat the
113 .B ^Q
114 so that the editor never sees it.
115 .iP "^R" 15
116 Redraws the current screen, eliminating logical lines not corresponding
117 to physical lines (lines with only a single @ character on them).
118 On hardcopy terminals in \fIopen\fR mode, retypes the current line
119 (5.4, 7.2, 7.8).
120 .iP "^S" 15
121 Unused.  Some teletype drivers use
122 .B ^S
123 to suspend output until
124 .B ^Q is pressed.
125 .iP "^T" 15
126 Not a command character.
127 During an insert, with \fIautoindent\fR set and at the beginning of the
128 line, inserts \fIshiftwidth\fR white space.
129 .iP "^U" 15
130 Scrolls the screen up, inverting \fB^D\fR which scrolls down.  Counts work as
131 they do for \fB^D\fR, and the previous scroll amount is common to both.
132 On a dumb terminal, \fB^U\fR will often necessitate clearing and redrawing
133 the screen further back in the file (2.1, 7.2).
134 .iP "^V" 15
135 Not a command character.
136 In input mode, quotes the next character so that it is possible
137 to insert non-printing and special characters into the file (4.2, 7.5).
138 .iP "^W" 15
139 Not a command character.
140 During an insert, backs up as \fBb\fR would in command mode; the deleted
141 characters remain on the display (see \fB^H\fR) (7.5).
142 .iP "^X" 15
143 Unused.
144 .iP "^Y" 15
145 Exposes one more line above the current screen, leaving the cursor where
146 it is if possible.  (No mnemonic value for this key; however, it is next
147 to \fB^U\fR which scrolls up a bunch.)
148 (Version 3 only.)
149 .iP "^Z" 15
150 If supported by the Unix system,
151 stops the editor, exiting to the top level shell.
152 Same as \fB:stop\fP\s-2CR\s0.
153 Otherwise, unused.
154 .iP "^[\ (\fR\s-2ESC\s0\fP)" 15
155 Cancels a partially formed command, such as a \fBz\fR when no following
156 character has yet been given; terminates inputs on the last line (read
157 by commands such as \fB: /\fR and \fB?\fR); ends insertions of new text
158 into the buffer.
159 If an \s-2ESC\s0 is given when quiescent in command state, the editor
160 rings the bell or flashes the screen.  You can thus hit \s-2ESC\s0 if
161 you don't know what is happening till the editor rings the bell.
162 If you don't know if you are in insert mode you can type \s-2ESC\s0\fBa\fR,
163 and then material to be input; the material will be inserted correctly
164 whether or not you were in insert mode when you started (1.5, 3.1, 7.5).
165 .iP "^\e" 15
166 Unused.
167 .iP "^]" 15
168 Searches for the word which is after the cursor as a tag.  Equivalent
169 to typing \fB:ta\fR, this word, and then a \s-2CR\s0.
170 Mnemonically, this command is ``go right to'' (7.3).
171 .iP "^\(ua" 15
172 Equivalent to \fB:e #\fR\s-2CR\s0, returning to the previous position
173 in the last edited file, or editing a file which you specified if you
174 got a `No write since last change diagnostic' and do not want to have
175 to type the file name again (7.3).
176 (You have to do a \fB:w\fR before \fB^\(ua\fR
177 will work in this case.  If you do not wish to write the file you should
178 do \fB:e!\ #\fR\s-2CR\s0 instead.)
179 .iP "^_" 15
180 Unused.
181 Reserved as the command character for the
182 Tektronix 4025 and 4027 terminal.
183 .iP "\fR\s-2SPACE\s0\fP" 15
184 Same as
185 .B "right arrow"
186 (see
187 .B l ).
188 .iP "!" 15
189 An operator, which processes lines from the buffer with reformatting commands.
190 Follow \fB!\fR with the object to be processed, and then the command name
191 terminated by \s-2CR\s0.  Doubling \fB!\fR and preceding it by a count
192 causes count lines to be filtered; otherwise the count
193 is passed on to the object after the \fB!\fR.  Thus \fB2!}\fR\fIfmt\fR\s-2CR\s0
194 reformats the next two paragraphs by running them through the program
195 \fIfmt\fR.  If you are working on \s-2LISP\s0,
196 the command \fB!%\fR\fIgrind\fR\s-2CR\s0,*
198 *Both
199 .I fmt
201 .I grind
202 are Berkeley programs and may not be present at all installations.
204 given at the beginning of a
205 function, will run the text of the function through the \s-2LISP\s0 grinder
206 (6.7, 7.3).
207 To read a file or the output of a command into the buffer use \fB:r\fR (7.3).
208 To simply execute a command use \fB:!\fR (7.3).
209 .tr \a"
210 .iP \a 15
211 Precedes a named buffer specification.  There are named buffers \fB1\-9\fR
212 used for saving deleted text and named buffers \fBa\-z\fR into which you can
213 place text (4.3, 6.3)
214 .tr \a\a
215 .iP "#" 15
216 The macro character which, when followed by a number, will substitute
217 for a function key on terminals without function keys (6.9).
218 In input mode, 
219 if this is your erase character, it will delete the last character
220 you typed in input mode, and must be preceded with a \fB\e\fR to insert
221 it, since it normally backs over the last input character you gave.
222 .iP "$" 15
223 Moves to the end of the current line.  If you \fB:se list\fR\s-2CR\s0,
224 then the end of each line will be shown by printing a \fB$\fR after the
225 end of the displayed text in the line.  Given a count, advances to the
226 count'th following end of line; thus \fB2$\fR advances to the end of the
227 following line.
228 .iP "%" 15
229 Moves to the parenthesis or brace \fB{ }\fR which balances the parenthesis
230 or brace at the current cursor position.
231 .iP "&" 15
232 A synonym for \fB:&\fR\s-2CR\s0, by analogy with the
233 .I ex
234 .B &
235 command.
236 .iP "\(aa" 15
237 When followed by a \fB\(aa\fR returns to the previous context at the
238 beginning of a line.  The previous context is set whenever the current
239 line is moved in a non-relative way.
240 When followed by a letter \fBa\fR\-\fBz\fR, returns to the line which
241 was marked with this letter with a \fBm\fR command, at the first non-white
242 character in the line. (2.2, 5.3).
243 When used with an operator such as \fBd\fR, the operation takes place
244 over complete lines; if you use \fB\(ga\fR, the operation takes place
245 from the exact marked place to the current cursor position within the
246 line.
247 .iP "(" 15
248 Retreats to the beginning of a
249 sentence, or to the beginning of a \s-2LISP\s0 s-expression
250 if the \fIlisp\fR option is set.
251 A sentence ends at a \fB. !\fR or \fB?\fR which is followed by either
252 the end of a line or by two spaces.  Any number of closing \fB) ] "\fR
253 and \fB\(aa\fR characters may appear after the \fB. !\fR or \fB?\fR,
254 and before the spaces or end of line.  Sentences also begin
255 at paragraph and section boundaries
256 (see \fB{\fR and \fB[[\fR below).
257 A count advances that many sentences (4.2, 6.8).
258 .iP ")" 15
259 Advances to the beginning of a sentence.
260 A count repeats the effect.
261 See \fB(\fR above for the definition of a sentence (4.2, 6.8).
262 .iP "*" 15
263 Unused.
264 .iP "+" 15
265 Same as \s-2CR\s0 when used as a command.
266 .iP "," 15
267 Reverse of the last \fBf F t\fR or \fBT\fR command, looking the other way
268 in the current line.  Especially useful after hitting too many \fB;\fR
269 characters.  A count repeats the search.
270 .iP "\-" 15
271 Retreats to the previous line at the first non-white character.
272 This is the inverse of \fB+\fR and \s-2RETURN\s0.
273 If the line moved to is not on the screen, the screen is scrolled, or
274 cleared and redrawn if this is not possible.
275 If a large amount of scrolling would be required the screen is also cleared
276 and redrawn, with the current line at the center (2.3).
277 .iP "\&." 15
278 Repeats the last command which changed the buffer.  Especially useful
279 when deleting words or lines; you can delete some words/lines and then
280 hit \fB.\fR to delete more and more words/lines.
281 Given a count, it passes it on to the command being repeated.  Thus after
282 a \fB2dw\fR, \fB3.\fR deletes three words (3.3, 6.3, 7.2, 7.4).
283 .iP "/" 15
284 Reads a string from the last line on the screen, and scans forward for
285 the next occurrence of this string.  The normal input editing sequences may
286 be used during the input on the bottom line; an returns to command state
287 without ever searching.
288 The search begins when you hit \s-2CR\s0 to terminate the pattern;
289 the cursor moves to the beginning of the last line to indicate that the search
290 is in progress; the search may then
291 be terminated with a \s-2DEL\s0 or \s-2RUB\s0, or by backspacing when
292 at the beginning of the bottom line, returning the cursor to
293 its initial position.
294 Searches normally wrap end-around to find a string
295 anywhere in the buffer.
297 When used with an operator the enclosed region is normally affected.
298 By mentioning an
299 offset from the line matched by the pattern you can force whole lines
300 to be affected.  To do this give a pattern with a closing
301 a closing \fB/\fR and then an offset \fB+\fR\fIn\fR or \fB\-\fR\fIn\fR.
303 To include the character \fB/\fR in the search string, you must escape
304 it with a preceding \fB\e\fR.
305 A \fB\(ua\fR at the beginning of the pattern forces the match to occur
306 at the beginning of a line only; this speeds the search.  A \fB$\fR at
307 the end of the pattern forces the match to occur at the end of a line
308 only.
309 More extended pattern matching is available, see section 7.4;
310 unless you set \fBnomagic\fR in your \fI\&.exrc\fR file you will have
311 to preceed the characters \fB. [ *\fR and \fB~\fR in the search pattern
312 with a \fB\e\fR to get them to work as you would naively expect (1.5, 2,2,
313 6.1, 7.2, 7.4).
314 .iP "0" 15
315 Moves to the first character on the current line.
316 Also used, in forming numbers, after an initial \fB1\fR\-\fB9\fR.
317 .iP "1\-9" 15
318 Used to form numeric arguments to commands (2.3, 7.2).
319 .iP ":" 15
320 A prefix to a set of commands for file and option manipulation and escapes
321 to the system.  Input is given on the bottom line and terminated with
322 an \s-2CR\s0, and the command then executed.  You can return to where
323 you were by hitting \s-2DEL\s0 or \s-2RUB\s0 if you hit \fB:\fR accidentally
324 (see primarily 6.2 and 7.3).
325 .iP ";" 15
326 Repeats the last single character find which used \fBf F t\fR or \fBT\fR.
327 A count iterates the basic scan (4.1).
328 .iP "<" 15
329 An operator which shifts lines left one \fIshiftwidth\fR, normally 8
330 spaces.  Like all operators, affects lines when repeated, as in
331 \fB<<\fR.  Counts are passed through to the basic object, thus \fB3<<\fR
332 shifts three lines (6.6, 7.2).
333 .iP "=" 15
334 Reindents line for \s-2LISP\s0, as though they were typed in with \fIlisp\fR
335 and \fIautoindent\fR set (6.8).
336 .iP ">" 15
337 An operator which shifts lines right one \fIshiftwidth\fR, normally 8
338 spaces.  Affects lines when repeated as in \fB>>\fR.  Counts repeat the
339 basic object (6.6, 7.2).
340 .iP "?" 15
341 Scans backwards, the opposite of \fB/\fR.  See the \fB/\fR description
342 above for details on scanning (2.2, 6.1, 7.4).
343 .iP "@" 15
344 A macro character (6.9).  If this is your kill character, you must escape it with a \e
345 to type it in during input mode, as it normally backs over the input you
346 have given on the current line (3.1, 3.4, 7.5).
347 .iP "A" 15
348 Appends at the end of line, a synonym for \fB$a\fR (7.2).
349 .iP "B" 15
350 Backs up a word, where words are composed of non-blank sequences, placing
351 the cursor at the beginning of the word.  A count repeats the effect
352 (2.4).
353 .iP "C" 15
354 Changes the rest of the text on the current line; a synonym for \fBc$\fR.
355 .iP "D" 15
356 Deletes the rest of the text on the current line; a synonym for \fBd$\fR.
357 .iP "E" 15
358 Moves forward to the end of a word, defined as blanks and non-blanks,
359 like \fBB\fR and \fBW\fR.  A count repeats the effect.
360 .iP "F" 15
361 Finds a single following character, backwards in the current line.
362 A count repeats this search that many times (4.1).
363 .iP "G" 15
364 Goes to the line number given as preceding argument, or the end of the
365 file if no preceding count is given.  The screen is redrawn with the
366 new current line in the center if necessary (7.2).
367 .iP "H" 15
368 .B "Home arrow" .
369 Homes the cursor to the top line on the screen.  If a count is given,
370 then the cursor is moved to the count'th line on the screen.
371 In any case the cursor is moved to the first non-white character on the
372 line.  If used as the target of an operator, full lines are affected
373 (2.3, 3.2).
374 .iP "I" 15
375 Inserts at the beginning of a line; a synonym for \fB\(uai\fR.
376 .iP "J" 15
377 Joins together lines, supplying appropriate white space: one space between
378 words, two spaces after a \fB.\fR, and no spaces at all if the first
379 character of the joined on line is \fB)\fR.  A count causes that many
380 lines to be joined rather than the default two (6.5, 7.1f).
381 .iP "K" 15
382 Unused.
383 .iP "L" 15
384 Moves the cursor to the first non-white character of the last line on
385 the screen.  With a count, to the first non-white of the count'th line
386 from the bottom.  Operators affect whole lines when used with \fBL\fR
387 (2.3).
388 .iP "M" 15
389 Moves the cursor to the middle line on the screen, at the first non-white
390 position on the line (2.3).
391 .iP "N" 15
392 Scans for the next match of the last pattern given to
393 \fB/\fR or \fB?\fR, but in the reverse direction; this is the reverse
394 of \fBn\fR.
395 .iP "O" 15
396 Opens a new line above the current line and inputs text there up to an
397 \s-2ESC\s0.  A count can be used on dumb terminals to specify a number
398 of lines to be opened; this is generally obsolete, as the \fIslowopen\fR
399 option works better (3.1).
400 .iP "P" 15
401 Puts the last deleted text back before/above the cursor.  The text goes
402 back as whole lines above the cursor if it was deleted as whole lines.
403 Otherwise the text is inserted between the characters before and at the
404 cursor.  May be preceded by a named buffer specification \fB"\fR\fIx\fR
405 to retrieve the contents of the buffer; buffers \fB1\fR\-\fB9\fR contain
406 deleted material, buffers \fBa\fR\-\fBz\fR are available for general
407 use (6.3).
408 .iP "Q" 15
409 Quits from \fIvi\fR to \fIex\fR command mode.  In this mode, whole lines
410 form commands, ending with a \s-2RETURN\s0.  You can give all the \fB:\fR
411 commands; the editor supplies the \fB:\fR as a prompt (7.7).
412 .iP "R" 15
413 Replaces characters on the screen with characters you type (overlay fashion).
414 Terminates with an \s-2ESC\s0.
415 .iP "S" 15
416 Changes whole lines, a synonym for \fBcc\fR.  A count substitutes for
417 that many lines.  The lines are saved in the numeric buffers, and erased
418 on the screen before the substitution begins.
419 .iP "T" 15
420 Takes a single following character, locates the character before the
421 cursor in the current line, and places the cursor just after that character.
422 A count repeats the effect.  Most useful with operators such as \fBd\fR
423 (4.1).
424 .iP "U" 15
425 Restores the current line to its state before you started changing it
426 (3.5).
427 .iP "V" 15
428 Unused.
429 .iP "W" 15
430 Moves forward to the beginning of a word in the current line,
431 where words are defined as sequences of blank/non-blank characters.
432 A count repeats the effect (2.4).
433 .iP "X" 15
434 Deletes the character before the cursor.  A count repeats the effect,
435 but only characters on the current line are deleted.
436 .iP "Y" 15
437 Yanks a copy of the current line into the unnamed buffer, to be put back
438 by a later \fBp\fR or \fBP\fR; a very useful synonym for \fByy\fR. 
439 A count yanks that many lines.  May be preceded by a buffer name to put
440 lines in that buffer (7.4).
441 .iP "ZZ" 15
442 Exits the editor.
443 (Same as \fB:x\fP\s-2CR\s0.)
444 If any changes have been made, the buffer is written out to the current file.
445 Then the editor quits.
446 .iP "[[" 15
447 Backs up to the previous section boundary.  A section begins at each
448 macro in the \fIsections\fR option,
449 normally a `.NH' or `.SH' and also at lines which which start
450 with a formfeed \fB^L\fR.  Lines beginning with \fB{\fR also stop \fB[[\fR;
451 this makes it useful for looking backwards, a function at a time, in C
452 programs.  If the option \fIlisp\fR is set, stops at each \fB(\fR at the
453 beginning of a line, and is thus useful for moving backwards at the top
454 level \s-2LISP\s0 objects. (4.2, 6.1, 6.6, 7.2).
455 .iP "\e" 15
456 Unused.
457 .iP "]]" 15
458 Forward to a section boundary, see \fB[[\fR for a definition (4.2, 6.1,
459 6.6, 7.2).
460 .iP "\(ua" 15
461 Moves to the first non-white position on the current line (4.4).
462 .iP "_" 15
463 Unused.
464 .iP "\(ga" 15
465 When followed by a \fB\(ga\fR returns to the previous context.
466 The previous context is set whenever the current
467 line is moved in a non-relative way.
468 When followed by a letter \fBa\fR\-\fBz\fR, returns to the position which
469 was marked with this letter with a \fBm\fR command.
470 When used with an operator such as \fBd\fR, the operation takes place
471 from the exact marked place to the current position within the line;
472 if you use \fB\(aa\fR, the operation takes place over complete lines
473 (2.2, 5.3).
474 .iP "a" 15
475 Appends arbitrary text after the current cursor position; the insert
476 can continue onto multiple lines by using \s-2RETURN\s0 within the insert.
477 A count causes the inserted text to be replicated, but only if the inserted
478 text is all on one line.
479 The insertion terminates with an \s-2ESC\s0 (3.1, 7.2).
480 .iP "b" 15
481 Backs up to the beginning of a word in the current line.  A word is a
482 sequence of alphanumerics, or a sequence of special characters.
483 A count repeats the effect (2.4).
484 .iP "c" 15
485 An operator which changes the following object, replacing it with the
486 following input text up to an \s-2ESC\s0.  If more than part of a single
487 line is affected, the text which is changed away is saved in the numeric named
488 buffers.  If only part of the current line is affected, then the last
489 character to be changed away is marked with a \fB$\fR.
490 A count causes that many objects to be affected, thus both
491 \fB3c)\fR and \fBc3)\fR change the following three sentences (7.4).
492 .iP "d" 15
493 An operator which deletes the following object.  If more than part of
494 a line is affected, the text is saved in the numeric buffers.
495 A count causes that many objects to be affected; thus \fB3dw\fR is the
496 same as \fBd3w\fR (3.3, 3.4, 4.1, 7.4).
497 .iP "e" 15
498 Advances to the end of the next word, defined as for \fBb\fR and \fBw\fR.
499 A count repeats the effect (2.4, 3.1).
500 .iP "f" 15
501 Finds the first instance of the next character following the cursor on
502 the current line.  A count repeats the find (4.1).
503 .iP "g" 15
504 Unused.
506 Arrow keys
507 .B h ,
508 .B j ,
509 .B k ,
510 .B l ,
512 .B H .
513 .iP "h" 15
514 .B "Left arrow" .
515 Moves the cursor one character to the left.
516 Like the other arrow keys, either
517 .B h ,
519 .B "left arrow"
520 key, or one of the synonyms (\fB^H\fP) has the same effect.
521 On v2 editors, arrow keys on certain kinds of terminals
522 (those which send escape sequences, such as vt52, c100, or hp)
523 cannot be used.
524 A count repeats the effect (3.1, 7.5).
525 .iP "i" 15
526 Inserts text before the cursor, otherwise like \fBa\fR (7.2).
527 .iP "j" 15
528 .B "Down arrow" .
529 Moves the cursor one line down in the same column.
530 If the position does not exist,
531 .I vi
532 comes as close as possible to the same column.
533 Synonyms include
534 .B ^J
535 (linefeed) and
536 .B ^N .
537 .iP "k" 15
538 .B "Up arrow" .
539 Moves the cursor one line up.
540 .B ^P
541 is a synonym.
542 .iP "l" 15
543 .B "Right arrow" .
544 Moves the cursor one character to the right.
545 \s-2SPACE\s0 is a synonym.
546 .iP "m" 15
547 Marks the current position of the cursor in the mark register which is
548 specified by the next character \fBa\fR\-\fBz\fR.  Return to this position
549 or use with an operator using \fB\(ga\fR or \fB\(aa\fR (5.3).
550 .iP "n" 15
551 Repeats the last \fB/\fR or \fB?\fR scanning commands (2.2).
552 .iP "o" 15
553 Opens new lines below the current line; otherwise like \fBO\fR (3.1).
554 .iP "p" 15
555 Puts text after/below the cursor; otherwise like \fBP\fR (6.3).
556 .iP "q" 15
557 Unused.
558 .iP "r" 15
559 Replaces the single character at the cursor with a single character you
560 type.  The new character may be a \s-2RETURN\s0; this is the easiest
561 way to split lines.  A count replaces each of the following count characters
562 with the single character given; see \fBR\fR above which is the more
563 usually useful iteration of \fBr\fR (3.2).
564 .iP "s" 15
565 Changes the single character under the cursor to the text which follows
566 up to an \s-2ESC\s0; given a count, that many characters from the current
567 line are changed.  The last character to be changed is marked with \fB$\fR
568 as in \fBc\fR (3.2).
569 .iP "t" 15
570 Advances the cursor upto the character before the next character typed.
571 Most useful with operators such as \fBd\fR and \fBc\fR to delete the
572 characters up to a following character.  You can use \fB.\fR to delete
573 more if this doesn't delete enough the first time (4.1).
574 .iP "u" 15
575 Undoes the last change made to the current buffer.  If repeated, will
576 alternate between these two states, thus is its own inverse. When used
577 after an insert which inserted text on more than one line, the lines are
578 saved in the numeric named buffers (3.5).
579 .iP "v" 15
580 Unused.
581 .iP "w" 15
582 Advances to the beginning of the next word, as defined by \fBb\fR (2.4).
583 .iP "x" 15
584 Deletes the single character under the cursor.  With a count deletes
585 deletes that many characters forward from the cursor position, but only
586 on the current line (6.5).
587 .iP "y" 15
588 An operator, yanks the following object into the unnamed temporary buffer.
589 If preceded by a named buffer specification, \fB"\fR\fIx\fR, the text
590 is placed in that buffer also.  Text can be recovered by a later \fBp\fR
591 or \fBP\fR (7.4).
592 .iP "z" 15
593 Redraws the screen with the current line placed as specified by the following
594 character: \s-2RETURN\s0 specifies the top of the screen, \fB.\fR the
595 center of the screen, and \fB\-\fR at the bottom of the screen.
596 A count may be given after the \fBz\fR and before the following character
597 to specify the new screen size for the redraw.
598 A count before the \fBz\fR gives the number of the line to place in the
599 center of the screen instead of the default current line. (5.4)
600 .iP "{" 15
601 Retreats to the beginning of the beginning of the preceding paragraph.
602 A paragraph begins at each macro in the \fIparagraphs\fR option, normally
603 `.IP', `.LP', `.PP', `.QP' and `.bp'.
604 A paragraph also begins after a completely
605 empty line, and at each section boundary (see \fB[[\fR above) (4.2, 6.8,
606 7.6).
607 .iP "|" 15
608 Places the cursor on the character in the column specified
609 by the count (7.1, 7.2).
610 .iP "}" 15
611 Advances to the beginning of the next paragraph.  See \fB{\fR for the
612 definition of paragraph (4.2, 6.8, 7.6).
613 .iP "~" 15
614 Unused.
615 .iP "^?\ (\s-2\fRDEL\fP\s0)" 15
616 Interrupts the editor, returning it to command accepting state (1.5,
617 7.5)