xref: /386bsd/usr/local/info/vip-2 (revision a2142627)
1This is Info file ../info/vip, produced by Makeinfo-1.54 from the input
2file vip.texi.
3
4Distribution
5************
6
7   Copyright (C) 1987 Masahiko Sato.
8
9   Permission is granted to make and distribute verbatim copies of this
10manual provided the copyright notice and this permission notice are
11preserved on all copies.
12
13   Permission is granted to copy and distribute modified versions of
14this manual under the conditions for verbatim copying, provided that
15the entire resulting derived work is distributed under the terms of a
16permission notice identical to this one.
17
18   Permission is granted to copy and distribute translations of this
19manual into another language, under the same conditions as for modified
20versions.
21
22
23File: vip,  Node: Commands in Insert Mode,  Next: Ex Commands,  Prev: Other Vi Commands,  Up: Vi Commands
24
25Insert Mode
26===========
27
28   You can enter insert mode by one of the following commands.  In
29addition to these, you will enter insert mode if you give a change
30command with a line command as the motion command.  Insert commands are
31also modifying commands and you can repeat them by the repeat command
32`.' (`vip-repeat').
33
34`i'
35     Enter insert mode at point (`vip-insert').
36
37`I'
38     Enter insert mode at the first non white character on the line
39     (`vip-Insert').
40
41`a'
42     Move point forward by one character and then enter insert mode
43     (`vip-append').
44
45`A'
46     Enter insert mode at end of line (`vip-Append').
47
48`o'
49     Open a new line below the current line and enter insert mode
50     (`vip-open-line').
51
52`O'
53     Open a new line above the current line and enter insert mode
54     (`vip-Open-line').
55
56`C-o'
57     Insert a newline and leave point before it, and then enter insert
58     mode
59     (`vip-open-line-at-point').
60
61   Insert mode is almost like emacs mode.  Only the following 4 keys
62behave differently from emacs mode.
63
64`ESC'
65     This key will take you back to vi mode (`vip-change-mode-to-vi').
66
67`C-h'
68     Delete previous character (`delete-backward-char').
69
70`C-w'
71     Delete previous word (`vip-delete-backward-word').
72
73`C-z'
74     This key simulates ESC key in emacs mode.  For instance, typing
75     `C-z x' in insert mode iw the same as typing `ESC x' in emacs mode
76     (`vip-ESC').
77
78You can also bind `C-h' to `help-command' if you like.  (*Note
79Customizing Key Bindings::, for details.)  Binding `C-h' to
80`help-command' has the effect of making the meaning of `C-h' uniform
81among emacs, vi and insert modes.
82
83   When you enter insert mode, VIP records point as the start point of
84insertion, and when you leave insert mode the region between point and
85start point is saved for later use by repeat command etc.  Therefore,
86repeat command will not really repeat insertion if you move point by
87emacs commands while in insert mode.
88
89
90File: vip,  Node: Ex Commands,  Next: Ex Command Reference,  Prev: Commands in Insert Mode,  Up: Top
91
92Ex Commands
93***********
94
95   In vi mode, you can execute an Ex command EX-COMMAND by typing:
96     `: EX-COMMAND RET'
97   Every Ex command follows the following pattern:
98     ADDRESS COMMAND `!' PARAMETERS COUNT FLAGS
99
100where all parts are optional.  For the syntax of "address", the reader
101is referred to the reference manual of Ex.
102
103   In the current version of VIP, searching by Ex commands is always
104"magic".  That is, search patterns are always treated as "regular
105expressions".  For example, a typical forward search would be invoked by
106`:/PAT/'.  If you wish to include `/' as part of PAT you must preceded
107it by `\'.  VIP strips off these `\''s before `/' and the resulting PAT
108becomes the actual search pattern.  Emacs provides a different and
109richer class or regular expressions than Vi/Ex, and VIP uses Emacs'
110regular expressions.  See GNU Emacs Manual for details of regular
111expressions.
112
113   Several Ex commands can be entered in a line by separating them by a
114pipe character `|'.
115
116* Menu:
117
118* Ex Command Reference::	Explain all the Ex commands available in VIP.
119
120
121File: vip,  Node: Ex Command Reference,  Next: Customization,  Prev: Ex Commands,  Up: Ex Commands
122
123Ex Command Reference
124====================
125
126   In this section we briefly explain all the Ex commands supported by
127VIP.  Most Ex commands expect ADDRESS as their argument, and they use
128default addresses if they are not explicitly given.  In the following,
129such default addresses will be shown in parentheses.
130
131   Most command names can and preferably be given in abbreviated forms.
132In the following, optional parts of command names will be enclosed in
133brackets.  For example, `co[py]' will mean that copy command can be
134give as `co' or `cop' or `copy'.
135
136   If COMMAND is empty, point will move to the beginning of the line
137specified by the ADDRESS.  If ADDRESS is also empty, point will move to
138the beginning of the current line.
139
140   Some commands accept "flags" which are one of `p', `l' and `#'.  If
141FLAGS are given, the text affected by the commands will be displayed on
142a temporary window, and you will be asked to hit return to continue.
143In this way, you can see the text affected by the commands before the
144commands will be executed.  If you hit `C-g' instead of RET then the
145commands will be aborted.  Note that the meaning of FLAGS is different
146in VIP from that in Vi/Ex.
147
148`(.,.) co[py] ADDR FLAGS'
149`(.,.) t ADDR FLAGS'
150     Place a copy of specified lines after ADDR.  If ADDR is `0', it
151     will be placed before the first line.
152
153`(.,.) d[elete] REGISTER COUNT FLAGS'
154     Delete specified lines.  Text will be saved in a named REGISTER if
155     a lower case letter is given, and appended to a register if a
156     capital letter is given.
157
158`e[dit] ! +ADDR FILE'
159`e[x] ! +ADDR FILE'
160`vi[sual] ! +ADDR FILE'
161     Edit a new file FILE in the current window.  The command will abort
162     if current buffer is modified, which you can override by giving
163     `!'.  If `+'ADDR is given, ADDR becomes the current line.
164
165`file'
166     Give information about the current file.
167
168`(1,$) g[lobal] ! /PAT/ CMDS'
169`(1,$) v /PAT/ CMDS'
170     Among specified lines first mark each line which matches the
171     regular expression PAT, and then execute CMDS on each marked line.
172     If `!' is given, CMDS will be executed on each line not matching
173     PAT.  `v' is same as `g!'.
174
175`(.,.+1) j[oin] ! COUNT FLAGS'
176     Join specified lines into a line.  Without `!', a space character
177     will be inserted at each junction.
178
179`(.) k CH'
180`(.) mar[k] CH'
181     Mark specified line by a lower case character CH.  Then the
182     addressing form `''CH will refer to this line.  No white space is
183     required between `k' and CH.  A white space is necessary between
184     `mark' and CH, however.
185
186`map CH RHS'
187     Define a macro for vi mode.  After this command, the character CH
188     will be expanded to RHS in vi mode.
189
190`(.,.) m[ove] ADDR'
191     Move specified lines after ADDR.
192
193`(.) pu[t] REGISTER'
194     Put back previously deleted or yanked text.  If REGISTER is given,
195     the text saved in the register will be put back; otherwise, last
196     deleted or yanked text will be put back.
197
198`q[uit] !'
199     Quit from Emacs.  If modified buffers with associated files exist,
200     you will be asked whether you wish to save each of them.  At this
201     point, you may choose not to quit, by hitting `C-g'.  If `!' is
202     given, exit from Emacs without saving modified buffers.
203
204`(.) r[ead] FILE'
205     Read in the content of the file FILE after the specified line.
206
207`(.) r[ead] ! COMMAND'
208     Read in the output of the shell command COMMAND after the specified
209     line.
210
211`se[t]'
212     Set a variable's value.  *Note Customizing Constants::, for the
213     list of variables you can set.
214
215`sh[ell]'
216     Run a subshell in a window.
217
218`(.,.) s[ubstitute] /PAT/REPL/ OPTIONS COUNT FLAGS'
219`(.,.) & OPTIONS COUNT FLAGS'
220     On each specified line, the first occurrence of string matching
221     regular expression PAT is replaced by replacement pattern REPL.
222     Option characters are `g' and `c'.  If global option character `g'
223     appears as part of OPTIONS, all occurrences are substituted.  If
224     confirm option character `c' appears, you will be asked to give
225     confirmation before each substitution.  If `/PAT/REPL/' is
226     missing, the last substitution is repeated.
227
228`st[op]'
229     Suspend Emacs.
230
231`ta[g] TAG'
232     Find first definition of TAG.  If no TAG is given, previously
233     given TAG is used and next alternate definition is find.  By
234     default, the file `TAGS' in the current directory becomes the
235     "selected tag table".  You can select another tag table by `set'
236     command.  *Note Customizing Constants::, for details.
237
238`und[o]'
239     Undo the last change.
240
241`unm[ap] CH'
242     The macro expansion associated with CH is removed.
243
244`ve[rsion]'
245     Tell the version number of VIP.
246
247`(1,$) w[rite] ! FILE'
248     Write out specified lines into file FILE.  If no FILE is given,
249     text will be written to the file associated to the current buffer.
250     Unless `!' is given, if FILE is different from the file
251     associated to the current buffer and if the file FILE exists, the
252     command will not be executed.  Unlike Ex, FILE becomes the file
253     associated to the current buffer.
254
255`(1,$) w[rite]>> FILE'
256     Write out specified lines at the end of file FILE.  FILE becomes
257     the file associated to the current buffer.
258
259`(1,$) wq ! FILE'
260     Same as `write' and then `quit'.  If `!' is given, same as `write
261     !' then `quit'.
262
263`(.,.) y[ank] REGISTER COUNT'
264     Save specified lines into register REGISTER.  If no register is
265     specified, text will be saved in an anonymous register.
266
267`ADDR ! COMMAND'
268     Execute shell command COMMAND.  The output will be shown in a new
269     window.  If ADDR is given, specified lines will be used as standard
270     input to COMMAND.
271
272`($) ='
273     Print the line number of the addressed line.
274
275`(.,.) > COUNT FLAGS'
276     Shift specified lines to the right.  The variable `vip-shift-width'
277     (default value is 8) determines the amount of shift.
278
279`(.,.) < COUNT FLAGS'
280     Shift specified lines to the left.  The variable `vip-shift-width'
281     (default value is 8) determines the amount of shift.
282
283`(.,.) ~ OPTIONS COUNT FLAGS'
284     Repeat the previous `substitute' command using previous search
285     pattern as PAT for matching.
286
287   The following Ex commands are available in Vi, but not implemented
288in VIP.
289     `abbreviate', `list', `next', `print', `preserve', `recover', `rewind', `source',
290     `unabbreviate', `xit', `z'
291
292
293File: vip,  Node: Customization,  Next: Customizing Constants,  Prev: Ex Command Reference,  Up: Top
294
295Customization
296*************
297
298   If you have a file called `.vip' in your home directory, then it
299will also be loaded when VIP is loaded.  This file is thus useful for
300customizing VIP.
301
302* Menu:
303
304* Customizing Constants::	How to change values of constants.
305* Customizing Key Bindings::	How to change key bindings.
306
307
308File: vip,  Node: Customizing Constants,  Next: Customizing Key Bindings,  Prev: Customization,  Up: Customization
309
310Customizing Constants
311=====================
312
313   An easy way to customize VIP is to change the values of constants
314used in VIP.  Here is the list of the constants used in VIP and their
315default values.
316
317`vip-shift-width 8'
318     The number of columns shifted by `>' and `<' command.
319
320`vip-re-replace nil'
321     If `t' then do regexp replace, if `nil' then do string replace.
322
323`vip-search-wrap-around t'
324     If `t', search wraps around the buffer.
325
326`vip-re-search nil'
327     If `t' then search is reg-exp search, if `nil' then vanilla search.
328
329`vip-case-fold-search nil'
330     If `t' search ignores cases.
331
332`vip-re-query-replace nil'
333     If `t' then do reg-exp replace in query replace.
334
335`vip-open-with-indent nil'
336     If `t' then indent to the previous current line when open a new
337     line by `o' or `O' command.
338
339`vip-tags-file-name "TAGS"'
340     The name of the file used as the tag table.
341
342`vip-help-in-insert-mode nil'
343     If `t' then C-h is bound to `help-command' in insert mode, if
344     `nil' then it sis bound to `delete-backward-char'.
345
346You can reset these constants in VIP by the Ex command `set'.  Or you
347can include a line like this in your `.vip' file:
348     (setq vip-case-fold-search t)
349
350
351File: vip,  Node: Customizing Key Bindings,  Prev: Customizing Constants,  Up: Customization
352
353Customizing Key Bindings
354========================
355
356   VIP uses `vip-command-mode-map' as the "local keymap" for vi mode.
357For example, in vi mode, SPC is bound to the function `vip-scroll'.
358But, if you wish to make SPC and some other keys  behave like Vi, you
359can include the following lines in your `.vip' file.
360
361     (define-key vip-command-mode-map "\C-g" 'vip-info-on-file)
362     (define-key vip-command-mode-map "\C-h" 'vip-backward-char)
363     (define-key vip-command-mode-map "\C-m" 'vip-next-line-at-bol)
364     (define-key vip-command-mode-map " " 'vip-forward-char)
365     (define-key vip-command-mode-map "g" 'vip-keyboard-quit)
366     (define-key vip-command-mode-map "s" 'vip-substitute)
367     (define-key vip-command-mode-map "C" 'vip-change-to-eol)
368     (define-key vip-command-mode-map "R" 'vip-change-to-eol)
369     (define-key vip-command-mode-map "S" 'vip-substitute-line)
370     (define-key vip-command-mode-map "X" 'vip-delete-backward-char)
371
372Key Index
373*********
374
375* Menu:
376
377* 000 C-@ (set-mark-command):           Other Vi Commands.
378* 001 C-a (vip-beginning-of-line):      New Commands.
379* 002 C-b (vip-scroll-back):            Viewing the Buffer.
380* 003 C-c (vip-ctl-c):                  New Commands.
381* 003 C-c (vip-ctl-c):                  Important Keys.
382* 004 C-d (vip-scroll-up):              Viewing the Buffer.
383* 005 C-e (vip-scroll-up-one):          Viewing the Buffer.
384* 006 C-f (vip-scroll-back):            Viewing the Buffer.
385* 007 C-g (vip-keyboard-quit):          Changing.
386* 007 C-g (vip-keyboard-quit):          Important Keys.
387* 007 C-g (vip-keyboard-quit):          New Bindings.
388* 010 C-h (delete-backward-char) (insert mode): Commands in Insert Mode.
389* 010 C-h (vip-delete-backward-char) (insert mode): Insert Mode.
390* 011 TAB (indent-for-tab-command):     Other Vi Commands.
391* 012 LFD (newline-and-indent):         Other Vi Commands.
392* 013 C-k (kill-line):                  Other Vi Commands.
393* 014 C-l (recenter):                   Important Keys.
394* 014 C-l (recenter):                   Other Vi Commands.
395* 015 RET (vip-scroll-back):            New Bindings.
396* 015 RET (vip-scroll-back):            Viewing the Buffer.
397* 016 C-n (vip-next-window):            Window Commands.
398* 016 C-n (vip-next-window):            Buffers and Windows.
399* 016 C-n (vip-next-window):            New Commands.
400* 017 C-o (vip-open-line-at-point):     New Commands.
401* 017 C-o (vip-open-line-at-point):     Commands in Insert Mode.
402* 020 C-p (previous-line):              Other Vi Commands.
403* 021 C-q (quoted-insert):              Other Vi Commands.
404* 022 C-r (isearch-backward):           Other Vi Commands.
405* 022 C-r (isearch-backward):           New Commands.
406* 022 C-r (isearch-backward):           Searching and Replacing.
407* 023 C-s (isearch-forward):            Other Vi Commands.
408* 023 C-s (isearch-forward):            New Commands.
409* 023 C-s (isearch-forward):            Searching and Replacing.
410* 024 C-t (transpose-chars):            Other Vi Commands.
411* 025 C-u (vip-scroll-down):            Viewing the Buffer.
412* 026 C-v (scroll-up):                  Other Vi Commands.
413* 027 C-w (kill-region):                Other Vi Commands.
414* 027 C-w (vip-delete-backward-word) (insert mode): Insert Mode.
415* 027 C-w (vip-delete-backward-word) (insert mode): Commands in Insert Mode.
416* 0300 C-x (vip-ctl-x):                 Important Keys.
417* 0300 C-x (vip-ctl-x):                 New Commands.
418* 0301 C-x C-z (suspend-emacs):         Modes in VIP.
419* 031 C-y (vip-scroll-down-one):        Viewing the Buffer.
420* 032 C-z (vip-change-mode-to-vi):      Modes in VIP.
421* 032 C-z (vip-change-mode-to-vi):      Emacs Mode.
422* 032 C-z (vip-ESC) (insert mode):      Insert Mode.
423* 032 C-z (vip-ESC) (insert mode):      Commands in Insert Mode.
424* 033 ESC (vip-change-mode-to-vi) (insert mode): Commands in Insert Mode.
425* 033 ESC (vip-change-mode-to-vi) (insert mode): Insert Mode.
426* 033 ESC (vip-ESC):                    Important Keys.
427* 033 ESC (vip-ESC):                    New Commands.
428* 040 SPC (vip-scroll):                 New Bindings.
429* 040 SPC (vip-scroll):                 Viewing the Buffer.
430* 041 ! (vip-command-argument):         Other Vi Commands.
431* 042 " (vip-command-argument):         Delete Commands.
432* 0430 # (vip-command-argument):        New Commands.
433* 0431 # C (upcase-region):             New Commands.
434* 0432 # c (downcase-region):           New Commands.
435* 0432 # g (vip-global-execute):        New Commands.
436* 0432 # q (vip-quote-region):          New Commands.
437* 0432 # s (spell-region):              New Commands.
438* 044 $ (vip-goto-eol):                 Motion Commands.
439* 045 % (vip-paren-match):              Motion Commands.
440* 046 & (vip-nil):                      Other Vi Commands.
441* 047 ' (vip-goto-mark-and-skip-white): Motion Commands.
442* 050 ( (vip-backward-sentence):        Motion Commands.
443* 051 ) (vip-forward-sentence):         Motion Commands.
444* 052 * (vip-call-last-kbd-macro):      Other Vi Commands.
445* 052 * (vip-call-last-kbd-macro):      New Commands.
446* 052 * (vip-call-last-kbd-macro):      Misc Commands.
447* 053 + (vip-next-line-at-bol):         Motion Commands.
448* 054 , (vip-repeat-find-opposite):     Motion Commands.
449* 055 - (vip-previous-line-at-bol):     Motion Commands.
450* 056 . (vip-repeat):                   Undoing.
451* 056 . (vip-repeat):                   Repeating and Undoing Modifications.
452* 057 / (vip-search-forward):           Searching and Replacing.
453* 057 / (vip-search-forward):           Counts.
454* 057 / (vip-search-forward):           Searching.
455* 060 0 (vip-beginning-of-line):        Motion Commands.
456* 061 1 (numeric argument):             Numeric Arguments.
457* 062 2 (numeric argument):             Numeric Arguments.
458* 063 3 (numeric argument):             Numeric Arguments.
459* 064 4 (numeric argument):             Numeric Arguments.
460* 065 5 (numeric argument):             Numeric Arguments.
461* 066 6 (numeric argument):             Numeric Arguments.
462* 067 7 (numeric argument):             Numeric Arguments.
463* 068 8 (numeric argument):             Numeric Arguments.
464* 069 9 (numeric argument):             Numeric Arguments.
465* 072 : (vip-ex):                       Ex Commands.
466* 073 ; (vip-repeat-find):              Motion Commands.
467* 074 < (vip-command-argument):         Other Vi Commands.
468* 075 = (vip-command-argument):         Other Vi Commands.
469* 076 > (vip-command-argument):         Other Vi Commands.
470* 077 ? (vip-search-backward):          Counts.
471* 077 ? (vip-search-backward):          Searching and Replacing.
472* 077 ? (vip-search-backward):          Searching.
473* 100 @ (vip-nil):                      Other Vi Commands.
474* 101 A (vip-Append):                   Commands in Insert Mode.
475* 102 B (vip-backward-Word):            Motion Commands.
476* 103 C (vip-ctl-c-equivalent):         New Bindings.
477* 103 C (vip-ctl-c-equivalent):         Important Keys.
478* 104 D (vip-kill-line):                Delete Commands.
479* 105 E (vip-end-of-Word):              Motion Commands.
480* 106 F (vip-find-char-backward):       Motion Commands.
481* 107 G (vip-goto-line):                Motion Commands.
482* 110 H (vip-window-top):               Motion Commands.
483* 111 I (vip-Insert):                   Commands in Insert Mode.
484* 112 J (vip-join-lines):               Other Vi Commands.
485* 113 K (vip-kill-buffer):              New Commands.
486* 113 K (vip-kill-buffer):              Buffer Commands.
487* 113 K (vip-kill-buffer):              Buffers and Windows.
488* 114 L (vip-window-bottom):            Motion Commands.
489* 115 M (vip-window-middle):            Motion Commands.
490* 116 N (vip-search-Next):              Searching and Replacing.
491* 117 O (vip-Open-line):                Commands in Insert Mode.
492* 117 O (vip-Open-line):                Counts.
493* 120 P (vip-Put-back):                 Put Back Commands.
494* 120 P (vip-Put-back):                 Counts.
495* 121 Q (vip-query-replace):            Searching and Replacing.
496* 121 Q (vip-query-replace):            New Commands.
497* 122 R (vip-replace-string):           Searching and Replacing.
498* 122 R (vip-replace-string):           New Commands.
499* 123 S (vip-switch-to-buffer-other-window): Buffers and Windows.
500* 123 S (vip-switch-to-buffer-other-window): New Bindings.
501* 123 S (vip-switch-to-buffer-other-window): Buffer Commands.
502* 124 T (vip-goto-char-backward):       Motion Commands.
503* 125 U (vip-nil):                      Other Vi Commands.
504* 126 V (vip-find-file-other-window):   File Commands.
505* 126 V (vip-find-file-other-window):   New Commands.
506* 126 V (vip-find-file-other-window):   Files.
507* 127 W (vip-forward-Word):             Motion Commands.
508* 1300 X (vip-ctl-x-equivalent):        Important Keys.
509* 1300 X (vip-ctl-x-equivalent):        New Bindings.
510* 1301 X ( (start-kbd-macro):           Misc Commands.
511* 1301 X ) (end-kbd-macro):             Misc Commands.
512* 1301 X 1 (delete-other-windows):      Buffers and Windows.
513* 1301 X 1 (delete-other-windows):      Window Commands.
514* 1301 X 2 (split-window-vertically):   Buffers and Windows.
515* 1301 X 2 (split-window-vertically):   Window Commands.
516* 1301 X 3 (vip-buffer-in-two-windows): Buffers and Windows.
517* 1301 X 3 (vip-buffer-in-two-windows): Window Commands.
518* 1301 X 3 (vip-buffer-in-two-windows): New Bindings.
519* 1302 X B (list-buffers):              Buffers and Windows.
520* 1302 X I (insert-file):               Files.
521* 1302 X I (insert-file):               File Commands.
522* 1302 X S (save-buffer):               Files.
523* 1302 X S (save-buffer):               Buffer Commands.
524* 1302 X W (write-file):                File Commands.
525* 1302 X W (write-file):                Files.
526* 1302 X Z (suspend-emacs):             Misc Commands.
527* 131 Y (vip-yank-line):                Yank Commands.
528* 132 Z Z (save-buffers-kill-emacs):    Other Vi Commands.
529* 133 [ (vip-nil):                      Other Vi Commands.
530* 134 \ (vip-escape-to-emacs):          Important Keys.
531* 134 \ (vip-escape-to-emacs):          New Commands.
532* 135 ] (vip-nil):                      Other Vi Commands.
533* 136 ^ (vip-bol-and-skip-white):       Motion Commands.
534* 137 _ (vip-nil):                      Other Vi Commands.
535* 140 ` (vip-goto-mark):                Motion Commands.
536* 141 a (vip-append):                   Commands in Insert Mode.
537* 142 b (vip-backward-word):            Motion Commands.
538* 1430 c (vip-command-argument):        Change Commands.
539* 1431 c R:                             Change Commands.
540* 1432 c c:                             Change Commands.
541* 1432 c r:                             Change Commands.
542* 1440 d (vip-command-argument):        Delete Commands.
543* 1441 d R:                             Delete Commands.
544* 1442 d d:                             Delete Commands.
545* 1442 d r:                             Delete Commands.
546* 145 e (vip-end-of-word):              Motion Commands.
547* 146 f (vip-find-char-forward):        Motion Commands.
548* 147 g (vip-info-on-file):             Files.
549* 147 g (vip-info-on-file):             New Bindings.
550* 150 h (vip-backward-char):            Motion Commands.
551* 151 i (vip-insert):                   Commands in Insert Mode.
552* 152 j (vip-next-line):                Motion Commands.
553* 153 k (vip-previous-line):            Motion Commands.
554* 154 l (vip-forward-char):             Motion Commands.
555* 155 m (vip-mark-point):               Marking.
556* 155 m (vip-mark-point):               Mark Commands.
557* 156 n (vip-search-next):              Searching and Replacing.
558* 157 o (vip-open-line):                Counts.
559* 157 o (vip-open-line):                Commands in Insert Mode.
560* 160 p (vip-put-back):                 Counts.
561* 160 p (vip-put-back):                 Put Back Commands.
562* 161 q (vip-nil):                      Other Vi Commands.
563* 162 r (vip-replace-char):             Searching and Replacing.
564* 163 s (vip-switch-to-buffer):         New Bindings.
565* 163 s (vip-switch-to-buffer):         Buffer Commands.
566* 163 s (vip-switch-to-buffer):         Buffers and Windows.
567* 164 t (vip-goto-char-forward):        Motion Commands.
568* 165 u (vip-undo):                     Repeating and Undoing Modifications.
569* 165 u (vip-undo):                     Undoing.
570* 166 v (vip-find-file):                New Commands.
571* 166 v (vip-find-file):                File Commands.
572* 166 v (vip-find-file):                Files.
573* 167 w (vip-forward-word):             Motion Commands.
574* 170 x (vip-delete-char):              Delete Commands.
575* 1710 y (vip-command-argument):        Yank Commands.
576* 1711 y R:                             Yank Commands.
577* 1712 y r:                             Yank Commands.
578* 1712 y y (vip-yank-line):             Yank Commands.
579* 1721 z RET (vip-line-to-top):         Viewing the Buffer.
580* 1721 z RET (vip-line-to-top):         z Command.
581* 1722 z - (vip-line-to-bottom):        z Command.
582* 1722 z - (vip-line-to-bottom):        Viewing the Buffer.
583* 1722 z . (vip-line-to-middle):        z Command.
584* 1722 z . (vip-line-to-middle):        Viewing the Buffer.
585* 1723 z H (vip-line-to-top):           Viewing the Buffer.
586* 1723 z H (vip-line-to-top):           z Command.
587* 1723 z L (vip-line-to-bottom):        Viewing the Buffer.
588* 1723 z L (vip-line-to-bottom):        z Command.
589* 1723 z M (vip-line-to-middle):        Viewing the Buffer.
590* 1723 z M (vip-line-to-middle):        z Command.
591* 173 { (vip-backward-paragraph):       Motion Commands.
592* 174 | (vip-goto-col):                 Motion Commands.
593* 175 } (vip-forward-paragraph):        Motion Commands.
594* 176 ~ (vip-nil):                      Other Vi Commands.
595* 177 DEL (vip-delete-backward-char):   Delete Commands.
596
597Concept Index
598*************
599
600* Menu:
601
602* address:                              Ex Commands.
603* buffer:                               Basic Concepts.
604* buffer:                               Buffers and Windows.
605* buffer name completion:               Buffers and Windows.
606* count:                                Numeric Arguments.
607* current buffer:                       Buffers and Windows.
608* default directory:                    Files.
609* emacs mode:                           Modes in VIP.
610* end (of buffer):                      Basic Concepts.
611* expanding (region):                   Modifying Commands.
612* file name completion:                 Files.
613* flag:                                 Ex Command Reference.
614* global keymap:                        Basic Concepts.
615* insert mode:                          Modes in VIP.
616* keymap:                               Basic Concepts.
617* line commands:                        Modifying Commands.
618* local keymap:                         Customizing Key Bindings.
619* local keymap:                         Basic Concepts.
620* looking at:                           Basic Concepts.
621* magic:                                Ex Commands.
622* mark:                                 Basic Concepts.
623* mark ring:                            Mark Commands.
624* mode:                                 Basic Concepts.
625* mode line:                            Modes in VIP.
626* modified (buffer):                    Buffers and Windows.
627* number register:                      Put Back Commands.
628* numeric arguments:                    Numeric Arguments.
629* point:                                Basic Concepts.
630* point commands:                       Modifying Commands.
631* region:                               Basic Concepts.
632* region:                               Region Commands.
633* regular expression:                   Ex Commands.
634* regular expression (replacement):     Searching and Replacing.
635* regular expression (search):          Searching and Replacing.
636* selected buffer:                      Buffers and Windows.
637* selected tag table:                   Ex Command Reference.
638* syntax table:                         Motion Commands.
639* tag:                                  Ex Command Reference.
640* text:                                 Basic Concepts.
641* vanilla (replacement):                Searching and Replacing.
642* vi mode:                              Modes in VIP.
643* visiting (a file):                    Files.
644* window:                               Basic Concepts.
645* window:                               Buffers and Windows.
646* word:                                 Motion Commands.
647* yank:                                 Yank Commands.
648
649
650