Start anew
[msysgit.git] / share / vim / vim58 / doc / index.txt
blob8f79801f6bffa90c6bc7656be286bb04b8d4e91a
1 *index.txt*     For Vim version 5.8.  Last change: 2000 Apr 01
4                   VIM REFERENCE MANUAL    by Bram Moolenaar
7 This file contains a list of all commands for each mode, with a tag and a
8 short description.  The lists are sorted on ASCII value.
10 Tip: When looking for certain functionality, use a search command.  E.g.,
11 to look for deleting something, use: "/delete".
13 1. Insert mode                          |insert-index|
14 2. Normal mode                          |normal-index|
15    2.1. Text objects                    |objects|
16    2.2. Window commands                 |CTRL-W|
17    2.3. Square bracket commands         |[|
18    2.4. Commands starting with 'g'      |g|
19 3. Visual mode                          |visual-index|
20 4. Command-line editing                 |ex-edit-index|
21 5. EX commands                          |ex-cmd-index|
23 For an overview of options see help.txt |option-list|.
24 For a complete description of each option see options.txt |options|.
25 For a complete listing of all help items see |help-tags|.
27 ==============================================================================
28 1. Insert mode                                          *insert-index*
30 tag             char            action  ~
31 -----------------------------------------------------------------------
32 |i_CTRL-@|      CTRL-@          insert previously inserted text and stop
33                                 insert
34 |i_CTRL-A|      CTRL-A          insert previously inserted text
35                 CTRL-B          not used |i_CTRL-B-gone|
36 |i_CTRL-C|      CTRL-C          quit insert mode, without checking for
37                                 abbreviation, unless 'insertmode' set.
38 |i_CTRL-D|      CTRL-D          delete one shiftwidth of indent in the current
39                                 line
40 |i_CTRL-E|      CTRL-E          insert the character which is below the cursor
41                 CTRL-F          not used
42                 CTRL-G          reserved for future expansion
43 |i_<BS>|        <BS>            delete character before the cursor
44 |i_digraph|     {char1}<BS>{char2}
45                                 enter digraph (only when 'digraph' option set)
46 |i_CTRL-H|      CTRL-H          same as <BS>
47 |i_<Tab>|       <Tab>           insert a <Tab> character
48 |i_CTRL-I|      CTRL-I          same as <Tab>
49 |i_<NL>|        <NL>            same as <CR>
50 |i_CTRL-J|      CTRL-J          same as <CR>
51 |i_CTRL-K|      CTRL-K {char1} {char2}
52                                 enter digraph
53 |i_CTRL-L|      CTRL-L          when 'insertmode' set: Leave Insert mode
54 |i_<CR>|        <CR>            begin new line
55 |i_CTRL-M|      CTRL-M          same as <CR>
56 |i_CTRL-N|      CTRL-N          find next match for keyword in front of the
57                                 cursor
58 |i_CTRL-O|      CTRL-O          execute a single command and return to insert
59                                 mode
60 |i_CTRL-P|      CTRL-P          find previous match for keyword in front of
61                                 the cursor
62 |i_CTRL-Q|      CTRL-Q          same as CTRL-V (used for terminal control flow)
63 |i_CTRL-R|      CTRL-R {0-9a-z"%#*:=}
64                                 insert the contents of a register
65 |i_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:=}
66                                 insert the contents of a register literally
67 |i_CTRL-R_CTRL-O| CTRL-R CTRL-O {0-9a-z"%#*:=}
68                                 insert the contents of a register literally
69                                 and don't auto-indent
70 |i_CTRL-R_CTRL-P| CTRL-R CTRL-P {0-9a-z"%#*:=}
71                                 insert the contents of a register literally
72                                 and fix indent.
73                 CTRL-S          (used for terminal control flow)
74 |i_CTRL-T|      CTRL-T          insert one shiftwidth of indent in current
75                                 line
76 |i_CTRL-U|      CTRL-U          delete all entered characters in the current
77                                 line
78 |i_CTRL-V|      CTRL-V {char}   insert next non-digit literally
79 |i_CTRL-V_digit| CTRL-V {number} insert three digit decimal number as a single
80                                 byte.
81 |i_CTRL-W|      CTRL-W          delete word before the cursor
82 |i_CTRL-X|      CTRL-X {mode}   enter CTRL-X sub mode, see below
83 |i_CTRL-Y|      CTRL-Y          insert the character which is above the cursor
84 |i_CTRL-Z|      CTRL-Z          when 'insertmode' set: suspend Vim
85 |i_<Esc>|       <Esc>           end insert mode (unless 'insertmode' set)
86 |i_CTRL-[|      CTRL-[          same as <Esc>
87 |i_CTRL-\_CTRL-N| CTRL-\ CTRL-N  go to Normal mode
88                 CTRL-\ a - z    reserved for extensions
89                 CTRL-\ others   not used
90 |i_CTRL-]|      CTRL-]          trigger abbreviation
91                 CTRL-^          not used
92 |i_CTRL-_|      CTRL-_          When 'allowrevins' set: change language
93                                 (Hebrew, Farsi) {only when compiled with
94                                 +rightleft feature}
96                 <Space> to '~'  not used, except '0' and '^' followed by
97                                 CTRL-D
99 |i_0_CTRL-D|    0 CTRL-D        delete all indent in the current line
100 |i_^_CTRL-D|    ^ CTRL-D        delete all indent in the current line, restore
101                                 it in the next line
103 |i_<Del>|       <Del>           delete character under the cursor
105                 Meta characters (0x80 to 0xff, 128 to 255)
106                                 not used
108 |i_<Left>|      <Left>          cursor one character left
109 |i_<S-Left>|    <S-Left>        cursor one word left
110 |i_<C-Left>|    <C-Left>        cursor one word left
111 |i_<Right>|     <Right>         cursor one character right
112 |i_<S-Right>|   <S-Right>       cursor one word right
113 |i_<C-Right>|   <C-Right>       cursor one word right
114 |i_<Up>|        <Up>            cursor one line up
115 |i_<S-Up>|      <S-Up>          same as <PageUp>
116 |i_<Down>|      <Down>          cursor one line down
117 |i_<S-Down>|    <S-Down>        same as <PageDown>
118 |i_<Home>|      <Home>          cursor to start of line
119 |i_<C-Home>|    <C-Home>        cursor to start of file
120 |i_<End>|       <End>           cursor past end of line
121 |i_<C-End>|     <C-End>         cursor past end of file
122 |i_<PageUp>|    <PageUp>        one screenfull backward
123 |i_<PageDown>|  <PageDown>      one screenfull forward
124 |i_<F1>|        <F1>            same as <Help>
125 |i_<Help>|      <Help>          stop insert mode and display help window
126 |i_<Insert>|    <Insert>        toggle Insert/Replace mode
127 |i_<LeftMouse>| <LeftMouse>     cursor at mouse click
128 |i_<MouseDown>| <MouseDown>     scroll three lines downwards
129 |i_<S-MouseDown>| <S-MouseDown> scroll a full page downwards
130 |i_<MouseUp>|   <MouseUp>       scroll three lines upwards
131 |i_<S-MouseUp>| <S-MouseUp>     scroll a full page upwards
133 commands in CTRL-X submode
135 |i_CTRL-X_CTRL-D|       CTRL-X CTRL-D   complete defined identifiers
136 |i_CTRL-X_CTRL-E|       CTRL-X CTRL-E   scroll up
137 |i_CTRL-X_CTRL-F|       CTRL-X CTRL-F   complete file names
138 |i_CTRL-X_CTRL-I|       CTRL-X CTRL-I   complete identifiers
139 |i_CTRL-X_CTRL-K|       CTRL-X CTRL-K   complete identifiers from dictionary
140 |i_CTRL-X_CTRL-L|       CTRL-X CTRL-L   complete whole lines
141 |i_CTRL-X_CTRL-L|       CTRL-X CTRL-N   next completion
142 |i_CTRL-X_CTRL-L|       CTRL-X CTRL-P   previous completion
143 |i_CTRL-X_CTRL-Y|       CTRL-X CTRL-Y   scroll down
144 |i_CTRL-X_CTRL-]|       CTRL-X CTRL-]   complete tags
145 {not available when compiled without the +insert_expand feature}
147 ==============================================================================
148 2. Normal mode                                          *normal-index*
150 CHAR     any non-blank character
151 WORD     any sequences of non-blank characters
152 N        a number entered before the command
153 {motion} a cursor movement command
154 Nmove    the text that is moved over with a {motion}
155 SECTION  a section that possibly starts with '}' instead of '{'
157 note: 1 = cursor movement command; 2 = can be undone/redone
159 tag             char          note action in Normal mode        ~
160 ------------------------------------------------------------------------------
161                 CTRL-@             not used
162 |CTRL-A|        CTRL-A          2  add N to number at/after cursor
163 |CTRL-B|        CTRL-B          1  scroll N screens Backwards
164 |CTRL-C|        CTRL-C             interrupt current (search) command
165 |CTRL-D|        CTRL-D             scroll Down N lines (default: half a screen)
166 |CTRL-E|        CTRL-E             scroll N lines upwards (N lines Extra)
167 |CTRL-F|        CTRL-F          1  scroll N screens Forward
168 |CTRL-G|        CTRL-G             display current file name and position
169 |<BS>|          <BS>            1  same as "h"
170 |CTRL-H|        CTRL-H          1  same as "h"
171 |<Tab>|         <Tab>           1  go to N newer entry in jump list
172 |CTRL-I|        CTRL-I          1  same as <Tab>
173 |<NL>|          <NL>            1  same as "j"
174 |CTRL-J|        CTRL-J          1  same as "j"
175                 CTRL-K             not used
176 |CTRL-L|        CTRL-L             redraw screen
177 |<CR>|          <CR>            1  cursor to the first CHAR N lines lower
178 |CTRL-M|        CTRL-M>         1  same as <CR>
179 |CTRL-N|        CTRL-N          1  same as "j"
180 |CTRL-O|        CTRL-O          1  go to N older entry in jump list
181 |CTRL-P|        CTRL-P          1  cursor N lines upward
182                 CTRL-Q             (used for terminal control flow)
183 |CTRL-R|        CTRL-R          2  redo changes which were undone with 'u'
184                 CTRL-S             (used for terminal control flow)
185 |CTRL-T|        CTRL-T             jump to N older Tag in tag list
186 |CTRL-U|        CTRL-U             scroll N lines Upwards (default: half a
187                                    screen)
188 |CTRL-V|        CTRL-V             start blockwise Visual mode
189 |CTRL-W|        CTRL-W {char}      window commands, see |CTRL-W|
190 |CTRL-X|        CTRL-X          2  subtract N from number at/after cursor
191 |CTRL-Y|        CTRL-Y             scroll N lines downwards
192 |CTRL-Z|        CTRL-Z             suspend program (or start new shell)
193                 CTRL-[ <Esc>       not used
194 |CTRL-\_CTRL-N| CTRL-\ CTRL-N      go to Normal mode (no-op)
195                 CTRL-\ a - z       reserved for extensions
196                 CTRL-\ others      not used
197 |CTRL-]|        CTRL-]             :ta to ident under cursor
198 |CTRL-^|        CTRL-^             edit Nth alternate file (equivalent to
199                                    ":e #N")
200                 CTRL-_             not used
202 |<Space>|       <Space>         1  same as "l"
203 |!|             !{motion}{filter}
204                                 2  filter Nmove text through the {filter}
205                                    command
206 |!!|            !!{filter}      2  filter N lines through the {filter} command
207 |quote|         "{a-zA-Z0-9.%#:-"}  use buffer {a-zA-Z0-9.%#:-"} for next
208                                    delete, yank or put (upper case to append)
209                                    ({.%#:} only work with put)
210 |#|             #               1  search backward for the Nth occurrence of
211                                    the ident under the cursor
212 |$|             $               1  cursor to the end of Nth next line
213 |%|             %               1  find the next (curly/square) bracket on
214                                    this line and go to its match, or go to
215                                    matching comment bracket, or go to matching
216                                    preprocessor directive.
217 |N%|            {count}%        1  go to N percentage in the file
218 |&|             &               2  repeat last :s
219 |'|             '{a-zA-Z0-9}    1  cursor to the first CHAR on the line with
220                                    mark {a-zA-Z0-9}
221 |''|            ''              1  cursor to the first CHAR of the line where
222                                    the cursor was before the latest jump.
223 |'<|            '<              1  cursor to the first CHAR of the line where
224                                    highlighted area starts/started in the
225                                    current buffer.
226 |'>|            '>              1  cursor to the first CHAR of the line where
227                                    highlighted area ends/ended in the current
228                                    buffer.
229 |'[|            '[              1  cursor to the first CHAR on the line of the
230                                    start of last operated text or start of
231                                    putted text
232 |']|            ']              1  cursor to the first CHAR on the line of the
233                                    end of last operated text or end of putted
234                                    text
235 |(|             (               1  cursor N sentences backward
236 |)|             )               1  cursor N sentences forward
237 |star|          *               1  search forward for the Nth occurrence of
238                                    the ident under the cursor
239 |+|             +               1  cursor to the first CHAR N lines lower
240 |,|             ,               1  repeat latest f, t, F or T in opposite
241                                    direction N times
242 |-|             -               1  cursor to the first CHAR N lines higher
243 |.|             .               2  repeat last change with count replaced with
244                                    N
245 |/|             /{pattern}<CR>  1  search forward for the Nth occurrence of
246                                    {pattern}
247 |/<CR>|         /<CR>           1  search forward for {pattern} of last search
248 |count|         0               1  cursor to the first char of the line
249 |count|         1                  prepend to command to give a count
250 |count|         2                       "
251 |count|         3                       "
252 |count|         4                       "
253 |count|         5                       "
254 |count|         6                       "
255 |count|         7                       "
256 |count|         8                       "
257 |count|         9                       "
258 |:|             :                  start entering an Ex command
259 |N:|            {count}:           start entering an Ex command with range
260                                    from current line to N lines down
261 |;|             ;               1  repeat latest f, t, F or T N times
262 |<|             <{motion}       2  shift Nmove lines one 'shiftwidth'
263                                    leftwards
264 |<<|            <<              2  shift N lines one 'shiftwidth' leftwards
265 |=|             ={motion}       2  filter Nmove lines through "indent"
266 |==|            ==              2  filter N lines through "indent"
267 |>|             >{motion}       2  shift Nmove lines one 'shiftwidth'
268                                    rightwards
269 |>>|            >>              2  shift N lines one 'shiftwidth' rightwards
270 |?|             ?{pattern}<CR>  1  search backward for the Nth previous
271                                    occurrence of {pattern}
272 |?<CR>|         ?<CR>           1  search backward for {pattern} of last search
273 |@|             @{a-z}          2  execute the contents of named buffer {a-z}
274                                    N times
275 |@:|            @:                 repeat the previous ":" command N times
276 |@@|            @@              2  repeat the previous @{a-z} N times
277 |A|             A               2  append text after the end of the line N times
278 |B|             B               1  cursor N WORDS backward
279 |C|             ["x]C           2  change from the cursor position to the end
280                                    of the line, and N-1 more lines [into
281                                    buffer x]; synonym for "c$"
282 |D|             ["x]D           2  delete the characters under the cursor
283                                    until the end of the line and N-1 more
284                                    lines [into buffer x]; synonym for "d$"
285 |E|             E               1  cursor forward to the end of WORD N
286 |F|             F{char}         1  cursor to the Nth occurrence of {char} to
287                                    the left
288 |G|             G               1  cursor to line N, default last line
289 |H|             H               1  cursor to line N from top of screen
290 |I|             I               2  insert text before the first CHAR on the
291                                    line N times
292 |J|             J               2  Join N lines; default is 2
293 |K|             K                  lookup Keyword under the cursor with
294                                    'keywordprg'
295 |L|             L               1  cursor to line N from bottom of screen
296 |M|             M               1  cursor to middle line of screen
297 |N|             N               1  repeat the latest '/' or '?' N times in
298                                    opposite direction
299 |O|             O               2  begin a new line above the cursor and
300                                    insert text, repeat N times
301 |P|             ["x]P           2  put the text [from buffer x] before the
302                                    cursor N times
303 |Q|             Q                  switch to "Ex" mode
304 |R|             R               2  enter replace mode: overtype existing
305                                    characters, repeat the entered text N-1
306                                    times
307 |S|             ["x]S           2  delete N lines [into buffer x] and start
308                                    insert; synonym for "^cc" or "0cc",
309                                    depending on autoindent
310 |T|             T{char}         1  cursor till after Nth occurrence of {char}
311                                    to the left
312 |U|             U               2  undo all latest changes on one line
313 |V|             V                  start linewise Visual mode
314 |W|             W               1  cursor N WORDS forward
315 |X|             ["x]X           2  delete N characters before the cursor [into
316                                    buffer x]
317 |Y|             ["x]Y              yank N lines [into buffer x]; synonym for
318                                    "yy"
319 |ZZ|            ZZ                 store current file if modified, and exit
320 |ZQ|            ZQ                 exit current file always
321 |[|             [{char}            square bracket command (see below)
322                 \                  not used
323 |]|             ]{char}            square bracket command (see below)
324 |^|             ^               1  cursor to the first CHAR of the line
325 |_|             _               1  cursor to the first CHAR N - 1 lines lower
326 |`|             `{a-zA-Z0-9}    1  cursor to the mark {a-zA-Z0-9}
327 |`<|            `<              1  cursor to the start of the highlighted area
328 |`>|            `>              1  cursor to the end of the highlighted area
329 |`[|            `[              1  cursor to the start of last operated text
330                                    or start of putted text
331 |`]|            `]              1  cursor to the end of last operated text or
332                                    end of putted text
333 |``|            ``              1  cursor to the position before latest jump
334 |a|             a               2  append text after the cursor N times
335 |b|             b               1  cursor N words backward
336 |c|             ["x]c{motion}   2  delete Nmove text [into buffer x] and start
337                                    insert
338 |cc|            ["x]cc          2  delete N lines [into buffer x] and start
339                                    insert
340 |d|             ["x]d{motion}   2  delete Nmove text [into buffer x]
341 |dd|            ["x]dd          2  delete N lines [into buffer x]
342 |e|             e               1  cursor forward to the end of word N
343 |f|             f{char}         1  cursor to Nth occurrence of {char} to the
344                                    right
345 |g|             g{char}            extended commands, see below
346 |h|             h               1  cursor N chars to the left
347 |i|             i               2  insert text before the cursor N times
348 |j|             j               1  cursor N lines downward
349 |k|             k               1  cursor N lines upward
350 |l|             l               1  cursor N chars to the right
351 |m|             m{A-Za-z}          set mark {A-Za-z} at cursor position
352 |n|             n               1  repeat the latest '/' or '?' N times
353 |o|             o               2  begin a new line below the cursor and
354                                    insert text, repeat N times
355 |p|             ["x]p           2  put the text [from register x] after the
356                                    cursor N times
357 |q|             q{0-9a-zA-Z"}      record typed characters into named register
358                                    {0-9a-zA-Z"} (upper case to append)
359 |q|             q                  (while recording) stops recording
360 |r|             r{char}         2  replace N chars with {char}
361 |s|             ["x]s           2  (substitute) delete N characters [into
362                                    buffer x] and start insert
363 |t|             t{char}         1  cursor till before Nth occurrence of {char}
364                                    to the right
365 |u|             u               2  undo changes
366 |v|             v                  start characterwise Visual mode
367 |w|             w               1  cursor N words forward
368 |x|             ["x]x           2  delete N characters under and after the
369                                    cursor [into buffer x]
370 |y|             ["x]y{motion}      yank Nmove text [into buffer x]
371 |yy|            ["x]yy             yank N lines [into buffer x]
372 |z<CR>|         z<CR>              redraw, cursor line to top of window,
373                                    cursor on first non-blank
374 |zN<CR>|        z{height}<CR>      redraw, make window {height} lines high
375 |z+|            z+                 cursor on line N (default line below
376                                    window), otherwise like "z<CR>"
377 |z-|            z-                 redraw, cursor line at bottom of window,
378                                    cursor on first non-blank
379 |z.|            z.                 redraw, cursor line to center of window,
380                                    cursor on first non-blank
381 |z^|            z^                 cursor on line N (default line above
382                                    window), otherwise like "z-"
383 |zb|            zb                 redraw, cursor line at bottom of window
384 |ze|            ze                 when 'wrap' off scroll horizontally to
385                                    position the cursor at the end (right side)
386                                    of the screen
387 |zh|            zh                 when 'wrap' off scroll screen N characters
388                                    to the right
389 |zl|            zl                 when 'wrap' off scroll screen N characters
390                                    to the left
391 |zs|            zs                 when 'wrap' off scroll horizontally to
392                                    position the cursor at the start (left
393                                    side) of the screen
394 |zt|            zt                 redraw, cursor line at top of window
395 |zz|            zz                 redraw, cursor line at center of window
396 |z<Left>|       z<Left>            same as "zh"
397 |z<Right>|      z<Right>           same as "zl"
398 |{|             {               1  cursor N paragraphs backward
399 |bar|           |               1  cursor to column N
400 |}|             }               1  cursor N paragraphs forward
401 |~|             ~               2  'tildeop' off: switch case of N characters
402                                    under cursor and move the cursor N
403                                    characters to the right
404 |~|             ~{motion}          'tildeop' on: switch case of Nmove text
405 |<C-End>|       <C-End>         1  same as "G"
406 |<C-Home>|      <C-Home>        1  same as "gg"
407 |<C-Left>|      <C-Left>        1  same as "b"
408 |<C-LeftMouse>| <C-LeftMouse>      ":ta" to the keyword at the mouse click
409 |<C-Right>|     <C-Right>       1  same as "w"
410 |<C-RightMouse>| <C-RightMouse>    same as "CTRL-T"
411 |<Del>|         ["x]<Del>       2  same as "x"
412 |N<Del>|        {count}<Del>       remove the last digit from {count}
413 |<Down>|        <Down>          1  same as "j"
414 |<End>|         <End>           1  same as "$"
415 |<F1>|          <F1>               same as <Help>
416 |<Help>|        <Help>             open a help window
417 |<Home>|        <Home>          1  same as "0"
418 |<Insert>|      <Insert>        2  same as "i"
419 |<Left>|        <Left>          1  same as "h"
420 |<LeftMouse>|   <LeftMouse>     1  move cursor to the mouse click position
421 |<MiddleMouse>| <MiddleMouse>   2  same as "P" at the mouse click position
422 |<PageDown>|    <PageDown>         same as CTRL-F
423 |<PageUp>|      <PageUp>           same as CTRL-B
424 |<Right>|       <Right>         1  same as "l"
425 |<RightMouse>|  <RightMouse>       start Visual mode, move cursor to the mouse
426                                    click position
427 |<S-Down>|      <S-Down>        1  same as CTRL-F
428 |<S-Left>|      <S-Left>        1  same as "b"
429 |<S-LeftMouse>| <S-LeftMouse>      same as "*" at the mouse click position
430 |<S-Right>|     <S-Right>       1  same as "w"
431 |<S-RightMouse>| <S-RightMouse>    same as "#" at the mouse click position
432 |<S-Up>|        <S-Up>          1  same as CTRL-B
433 |<Undo>|        <Undo>          2  same as "u"
434 |<Up>|          <Up>            1  same as "k"
435 |<MouseDown>|   <MouseDown>        scroll three lines downwards
436 |<S-MouseDown>| <S-MouseDown>      scroll a full page downwards
437 |<MouseUp>|     <MouseUp>          scroll three lines upwards
438 |<S-MouseUp>|   <S-MouseUp>        scroll a full page upwards
440 ==============================================================================
441 2.1 Text objects                                                *objects*
443 These can be used after an operator or in Visual mode to select an object.
445 tag             command            action in Normal mode        ~
446 ------------------------------------------------------------------------------
447 |v_a(|          a(                 same as ab
448 |v_a)|          a)                 same as ab
449 |v_a<|          a<                 "a <>" from '<' to the matching '>'
450 |v_a>|          a>                 same as a<
451 |v_aB|          aB                 "a Block" from "[{" to "]}" (with brackets)
452 |v_aW|          aW                 "a WORD" (with white space)
453 |v_a[|          a[                 "a []" from '[' to the matching ']'
454 |v_a]|          a]                 same as a[
455 |v_ab|          ab                 "a block" from "[(" to "])" (with braces)
456 |v_ap|          ap                 "a paragraph" (with white space)
457 |v_as|          as                 "a sentence" (with white space)
458 |v_aw|          aw                 "a word" (with white space)
459 |v_a{|          a{                 same as aB
460 |v_a}|          a}                 same as aB
461 |v_i(|          i(                 same as ib
462 |v_i)|          i)                 same as ib
463 |v_i<|          i<                 "inner <>" from '<' to the matching '>'
464 |v_i>|          i>                 same as i<
465 |v_iB|          iB                 "inner Block" from "[{" and "]}"
466 |v_iW|          iW                 "inner WORD"
467 |v_i[|          i[                 "inner []" from '[' to the matching ']'
468 |v_i]|          i]                 same as i[
469 |v_ib|          ib                 "inner block" from "[(" to "])"
470 |v_ip|          ip                 "inner paragraph"
471 |v_is|          is                 "inner sentence"
472 |v_iw|          iw                 "inner word"
473 |v_i{|          i{                 same as iB
474 |v_i}|          i}                 same as iB
476 ==============================================================================
477 2.2 Window commands                                             *CTRL-W*
479 tag             command            action in Normal mode        ~
480 ------------------------------------------------------------------------------
481 |CTRL-W_CTRL-B| CTRL-W CTRL-B      same as "CTRL-W b"
482 |CTRL-W_CTRL-C| CTRL-W CTRL-C      same as "CTRL-W c"
483 |CTRL-W_CTRL-D| CTRL-W CTRL-D      same as "CTRL-W d"
484 |CTRL-W_CTRL-F| CTRL-W CTRL-F      same as "CTRL-W f"
485                 CTRL-W CTRL-G      same as "CTRL-W g .."
486 |CTRL-W_CTRL-I| CTRL-W CTRL-I      same as "CTRL-W i"
487 |CTRL-W_CTRL-J| CTRL-W CTRL-J      same as "CTRL-W j"
488 |CTRL-W_CTRL-K| CTRL-W CTRL-K      same as "CTRL-W k"
489 |CTRL-W_CTRL-N| CTRL-W CTRL-N      same as "CTRL-W n"
490 |CTRL-W_CTRL-O| CTRL-W CTRL-O      same as "CTRL-W o"
491 |CTRL-W_CTRL-P| CTRL-W CTRL-P      same as "CTRL-W p"
492 |CTRL-W_CTRL-Q| CTRL-W CTRL-Q      same as "CTRL-W q"
493 |CTRL-W_CTRL-R| CTRL-W CTRL-R      same as "CTRL-W r"
494 |CTRL-W_CTRL-S| CTRL-W CTRL-S      same as "CTRL-W s"
495 |CTRL-W_CTRL-T| CTRL-W CTRL-T      same as "CTRL-W t"
496 |CTRL-W_CTRL-W| CTRL-W CTRL-W      same as "CTRL-W w"
497 |CTRL-W_CTRL-X| CTRL-W CTRL-X      same as "CTRL-W x"
498 |CTRL-W_CTRL-Z| CTRL-W CTRL-Z      same as "CTRL-W z"
499 |CTRL-W_CTRL-]| CTRL-W CTRL-]      same as "CTRL-W ]"
500 |CTRL-W_CTRL-^| CTRL-W CTRL-^      same as "CTRL-W ^"
501 |CTRL-W_CTRL-_| CTRL-W CTRL-_      same as "CTRL-W _"
502 |CTRL-W_+|      CTRL-W +           increase current window height N lines
503 |CTRL-W_-|      CTRL-W -           decrease current window height N lines
504 |CTRL-W_=|      CTRL-W =           make all windows the same height
505 |CTRL-W_R|      CTRL-W R           rotate windows upwards N times
506 |CTRL-W_S|      CTRL-W S           same as "CTRL-W s"
507 |CTRL-W_W|      CTRL-W W           go to N previous window (wrap around)
508 |CTRL-W_]|      CTRL-W ]           split window and jump to tag under cursor
509 |CTRL-W_^|      CTRL-W ^           split current window and edit alternate
510                                    file N
511 |CTRL-W__|      CTRL-W _           set current window height to N (default:
512                                    very high)
513 |CTRL-W_b|      CTRL-W b           go to bottom window
514 |CTRL-W_c|      CTRL-W c           close current window (like |:close|)
515 |CTRL-W_d|      CTRL-W d           split window and jump to definition under
516                                    the cursor
517 |CTRL-W_f|      CTRL-W f           split window and edit file name under the
518                                    cursor
519 |CTRL-W_g_CTRL-]| CTRL-W g CTRL-]  split window and do |:tjump| to tag under
520                                    cursor
521 |CTRL-W_g]|     CTRL-W g ]         split window and do |:tselect| for tag
522                                    under cursor
523 |CTRL-W_g}|     CTRL-W g }         do a |:ptjump| to the tag under the cursor
524 |CTRL-W_i|      CTRL-W i           split window and jump to declaration of
525                                    identifier under the cursor
526 |CTRL-W_j|      CTRL-W j           go to N next window (stop at last window)
527 |CTRL-W_k|      CTRL-W k           go to N previous window (stop at first
528                                    window)
529 |CTRL-W_n|      CTRL-W n           open new window, N lines high
530 |CTRL-W_o|      CTRL-W o           close all but current window (like |:only|)
531 |CTRL-W_p|      CTRL-W p           go to previous (last accessed) window
532 |CTRL-W_q|      CTRL-W q           quit current window (like |:quit|)
533 |CTRL-W_r|      CTRL-W r           rotate windows downwards N times
534 |CTRL-W_s|      CTRL-W s           split current window in two parts, new
535                                    window N lines high
536 |CTRL-W_t|      CTRL-W t           go to top window
537 |CTRL-W_w|      CTRL-W w           go to N next window (wrap around)
538 |CTRL-W_x|      CTRL-W x           exchange current window with window N
539                                    (default: next window)
540 |CTRL-W_z|      CTRL-W z           close preview window
541 |CTRL-W_}|      CTRL-W }           show tag under cursor in preview window
542 |CTRL-W_<Down>| CTRL-W <Down>      same as "CTRL-W j"
543 |CTRL-W_<Up>|   CTRL-W <Up>        same as "CTRL-W k"
545 ==============================================================================
546 2.3 Square bracket commands                                     *[* *]*
548 tag             char          note action in Normal mode        ~
549 ------------------------------------------------------------------------------
550 |[_CTRL-D|      [_CTRL-D           jump to first #define found in current and
551                                    included files matching the word under the
552                                    cursor, start searching at beginning of
553                                    current file
554 |[_CTRL-I|      [_CTRL-I           jump to first line in current and included
555                                    files that contains the word under the
556                                    cursor, start searching at beginning of
557                                    current file
558 |[#|            [#              1  cursor to N previous unmatched #if, #else
559                                    or #ifdef
560 |[(|            [(              1  cursor N times back to unmatched '('
561 |[star|         [*              1  same as "[/"
562 |[/|            [/              1  cursor to N previous start of a C comment
563 |[D|            [D                 list all defines found in current and
564                                    included files matching the word under the
565                                    cursor, start searching at beginning of
566                                    current file
567 |[I|            [I                 list all lines found in current and
568                                    included files that contain the word under
569                                    the cursor, start searching at beginning of
570                                    current file
571 |[P|            [P              2  same as "[p"
572 |[[|            [[              1  cursor N sections backward
573 |[]|            []              1  cursor N SECTIONS backward
574 |[d|            [d                 show first #define found in current and
575                                    included files matching the word under the
576                                    cursor, start searching at beginning of
577                                    current file
578 |[f|            [f                 same as "gf"
579 |[i|            [i                 show first line found in current and
580                                    included files that contains the word under
581                                    the cursor, start searching at beginning of
582                                    current file
583 |[p|            [p              2  like "P", but adjust indent to current line
584 |[m|            [m              1  cursor N times back to start of member
585                                    function
586 |[{|            [{              1  cursor N times back to unmatched '{'
587 |[<MiddleMouse> [<MiddleMouse>  2  same as "[p"
589 |]_CTRL-D|      ]_CTRL-D           jump to first #define found in current and
590                                    included files matching the word under the
591                                    cursor, start searching at cursor position
592 |]_CTRL-I|      ]_CTRL-I           jump to first line in current and included
593                                    files that contains the word under the
594                                    cursor, start searching at cursor position
595 |]#|            ]#              1  cursor to N next unmatched #endif or #else
596 |])|            ])              1  cursor N times forward to unmatched ')'
597 |]star|         ]*              1  same as "]/"
598 |]/|            ]/              1  cursor to N next end of a C comment
599 |]D|            ]D                 list all #defines found in current and
600                                    included files matching the word under the
601                                    cursor, start searching at cursor position
602 |]I|            ]I                 list all lines found in current and
603                                    included files that contain the word under
604                                    the cursor, start searching at cursor
605                                    position
606 |]P|            ]P              2  same as "[p"
607 |][|            ][              1  cursor N SECTIONS forward
608 |]]|            ]]              1  cursor N sections forward
609 |]d|            ]d                 show first #define found in current and
610                                    included files matching the word under the
611                                    cursor, start searching at cursor position
612 |]f|            ]f                 same as "gf"
613 |]i|            ]i                 show first line found in current and
614                                    included files that contains the word under
615                                    the cursor, start searching at cursor
616                                    position
617 |]p|            ]p              2  like "p", but adjust indent to current line
618 |]m|            ]m              1  cursor N times forward to end of member
619                                    function
620 |]}|            ]}              1  cursor N times forward to unmatched '}'
621 |]<MiddleMouse> ]<MiddleMouse>  2  same as "]p"
623 ==============================================================================
624 2.4 Commands starting with 'g'                                          *g*
626 tag             char          note action in Normal mode        ~
627 ------------------------------------------------------------------------------
628 |g_CTRL-A|      g_CTRL-A           only when compiled with MEM_PROFILE
629                                    defined: dump a memory profile
630 |g_CTRL-G|      g_CTRL-G           show information about current cursor
631                                    position
632 |g_CTRL-H|      g_CTRL-H           start Select block mode
633 |g_CTRL-]|      g_CTRL-]           |:tjump| to the tag under the cursor
634 |g#|            g#              1  like "#", but without using "\<" and "\>"
635 |g$|            g$              1  when 'wrap' off go to rightmost character of
636                                    the current line that is on the screen;
637                                    when 'wrap' on go to the rightmost character
638                                    of the current screen line
639 |gstar|         g*              1  like "*", but without using "\<" and "\>"
640 |g0|            g0              1  when 'wrap' off go to leftmost character of
641                                    the current line that is on the screen;
642                                    when 'wrap' on go to the leftmost character
643                                    of the current screen line
644 |g?|            g?              2  Rot13 encoding operator
645 |g?g?|          g??             2  Rot13 encode current line
646 |g?g?|          g?g?            2  Rot13 encode current line
647 |gD|            gD              1  go to definition of word under the cursor
648                                    in current file
649 |gE|            gE              1  go backwards to the end of the previous
650                                    WORD
651 |gH|            gH                 start Select line mode
652 |gI|            gI              2  like "I", but always start in column 1
653 |gJ|            gJ              2  join lines without inserting space
654 |gP|            ["x]gP          2  put the text [from register x] before the
655                                    cursor N times, leave the cursor after it
656 |gR|            gR              2  enter virtual replace mode
657 |gU|            gU{motion}      2  make Nmove text uppercase
658 |gV|            gV                 don't reselect the previous Visual area
659                                    when executing a mapping or menu in Select
660                                    mode
661 |g]|            g]                 :tselect on the tag under the cursor
662 |g^|            g^              1  when 'wrap' off go to leftmost non-white
663                                    character of the current line that is on
664                                    the screen; when 'wrap' on go to the
665                                    leftmost non-white character of the current
666                                    screen line
667 |ga|            ga                 print ascii value of character under the
668                                    cursor
669 |gd|            gd              1  go to definition of word under the cursor
670                                    in current function
671 |ge|            ge              1  go backwards to the end of the previous
672                                    word
673 |gf|            gf                 start editing the file whose name is under
674                                    the cursor
675 |gg|            gg              1  cursor to line N, default first line
676 |gh|            gh                 start Select mode
677 |gj|            gj              1  like "j", but when 'wrap' on go N screen
678                                    lines down
679 |gk|            gk              1  like "k", but when 'wrap' on go N screen
680                                    lines up
681 |gm|            gm              1  go to character at middle of the screenline
682 |go|            go              1  cursor to byte N in the buffer
683 |gp|            ["x]gp          2  put the text [from register x] after the
684                                    cursor N times, leave the cursor after it
685 |gq|            gq{motion}      2  format Nmove text
686 |gr|            gr{char}        2  virtual replace N chars with {char}
687 |gs|            gs                 go to sleep for N seconds (default 1)
688 |gu|            gu{motion}      2  make Nmove text lowercase
689 |gv|            gv                 reselect the previous Visual area
690 |g~|            g~{motion}      2  swap case for Nmove text
691 |g<Down>|       g<Down>         1  same as "gj"
692 |g<End>|        g<End>          1  same as "g$"
693 |g<Home>|       g<Home>         1  same as "g0"
694 |g<LeftMouse>|  g<LeftMouse>       same as <C-LeftMouse>
695                 g<MiddleMouse>     same as <C-MiddleMouse>
696 |g<RightMouse>| g<RightMouse>      same as <C-RightMouse>
697 |g<Up>|         g<Up>           1  same as "gk"
699 ==============================================================================
700 3. Visual mode                                          *visual-index*
702 Most commands in Visual mode are the same as in Normal mode. The ones listed
703 here are those that are different.
705 tag             command       note action in Visual mode        ~
706 ------------------------------------------------------------------------------
707 |v_CTRL-\_CTRL-N| CTRL-\ CTRL-N    stop Visual mode
708 |v_CTRL-G|      CTRL-G             toggle between Visual mode and Select mode
709 |v_<BS>|        <BS>            2  Select mode: delete highlighted area
710 |v_CTRL-H|      CTRL-H          2  same as <BS>
711 |v_CTRL-O|      CTRL-O             switch from Select to Visual mode for one
712                                    command
713 |v_CTRL-V|      CTRL-V             make Visual mode blockwise or stop Visual
714                                    mode
715 |v_CTRL-]|      CTRL-]             jump to highlighted tag
716 |v_!|           !{filter}       2  filter the highlighted lines through the
717                                    external command {filter}
718 |v_:|           :                  start a command-line with the highlighted
719                                    lines as a range
720 |v_<|           <               2  shift the highlighted lines one
721                                    'shiftwidth' left
722 |v_=|           =               2  filter the highlighted lines through the
723                                    external program given with the 'equalprg'
724                                    option
725 |v_>|           >               2  shift the highlighted lines one
726                                    'shiftwidth' right
727 |v_b_A|         A               2  block mode: append same text in all lines,
728                                    after the highlighted area
729 |v_C|           C               2  delete the highlighted lines and start
730                                    insert
731 |v_D|           D               2  delete the highlighted lines
732 |v_b_I|         I               2  block mode: insert same text in all lines,
733                                    before the highlighted area
734 |v_J|           J               2  join the highlighted lines
735 |v_K|           K                  run 'keywordprg' on the highlighted area
736 |v_O|           O                  Move horizontally to other corner of area.
737                 Q                  does not start Ex mode
738 |v_R|           R               2  delete the highlighted lines and start
739                                    insert
740 |v_S|           S               2  delete the highlighted lines and start
741                                    insert
742 |v_U|           U               2  make highlighted area uppercase
743 |v_V|           V                  make Visual mode linewise or stop Visual
744                                    mode
745 |v_X|           X               2  delete the highlighted lines
746 |v_Y|           Y                  yank the highlighted lines
747 |v_a(|          a(                 same as ab
748 |v_a)|          a)                 same as ab
749 |v_a<|          a<                 extend highlighted area with a <> block
750 |v_a>|          a>                 same as a<
751 |v_aB|          aB                 extend highlighted area with a {} block
752 |v_aW|          aW                 extend highlighted area with "a WORD"
753 |v_a[|          a[                 extend highlighted area with a [] block
754 |v_a]|          a]                 same as a[
755 |v_ab|          ab                 extend highlighted area with a () block
756 |v_ap|          ap                 extend highlighted area with a paragraph
757 |v_as|          as                 extend highlighted area with a sentence
758 |v_aw|          aw                 extend highlighted area with "a word"
759 |v_a{|          a{                 same as aB
760 |v_a}|          a}                 same as aB
761 |v_c|           c               2  delete highlighted area and start insert
762 |v_d|           d               2  delete highlighted area
763 |v_gJ|          gJ              2  join the highlighted lines without
764                                    inserting spaces
765 |v_gq|          gq              2  format the highlighted lines
766 |v_gv|          gv                 exchange current and previous highlighted
767                                    area
768 |v_i(|          i(                 same as ib
769 |v_i)|          i)                 same as ib
770 |v_i<|          i<                 extend highlighted area with inner <> block
771 |v_i>|          i>                 same as i<
772 |v_iB|          iB                 extend highlighted area with inner {} block
773 |v_iW|          iW                 extend highlighted area with "inner WORD"
774 |v_i[|          i[                 extend highlighted area with inner [] block
775 |v_i]|          i]                 same as i[
776 |v_ib|          ib                 extend highlighted area with inner () block
777 |v_ip|          ip                 extend highlighted area with inner paragraph
778 |v_is|          is                 extend highlighted area with inner sentence
779 |v_iw|          iw                 extend highlighted area with "inner word"
780 |v_i{|          i{                 same as iB
781 |v_i}|          i}                 same as iB
782 |v_o|           o                  move cursor to other corner of area
783 |v_r|           r               2  delete highlighted area and start insert
784 |v_s|           s               2  delete highlighted area and start insert
785 |v_u|           u               2  make highlighted area lowercase
786 |v_v|           v                  make Visual mode characterwise or stop
787                                    Visual mode
788 |v_x|           x               2  delete the highlighted area
789 |v_y|           y                  yank the highlighted area
790 |v_~|           ~               2  swap case for the highlighted area
792 ==============================================================================
793 4. Command-line editing                                 *ex-edit-index*
795 Get to the command-line with the ':', '!', '/' or '?' commands.
796 Normal characters are inserted at the current cursor position.
797 "Completion" below refers to context-sensitive completion.  It will complete
798 file names, tags, commands etc. as appropriate.
800                 CTRL-@          not used
801 |c_CTRL-A|      CTRL-A          do completion on the pattern in front of the
802                                 cursor and insert all matches
803 |c_CTRL-B|      CTRL-B          cursor to begin of command-line
804 |c_CTRL-C|      CTRL-C          same as <ESC>
805 |c_CTRL-D|      CTRL-D          list completions that match the pattern in
806                                 front of the cursor
807 |c_CTRL-E|      CTRL-E          cursor to end of command-line
808                 CTRL-F          not used
809                 CTRL-G          not used
810 |c_<BS>|        <BS>            delete the character in front of the cursor
811 |c_digraph|     {char1} <BS> {char2}
812                                 enter digraph when 'digraph' is on
813 |c_CTRL-H|      CTRL-H          same as <BS>
814 |c_<Tab>|       <Tab>           if 'wildchar' is <Tab>: Do completion on
815                                 the pattern in front of the cursor
816 |c_<S-Tab>|     <S-Tab>         same as CTRL-P
817 |c_wildchar|    'wildchar'      Do completion on the pattern in front of the
818                                 cursor (default: <Tab>)
819 |c_CTRL-I|      CTRL-I          same as <Tab>
820 |c_<NL>|        <NL>            same as <CR>
821 |c_CTRL-J|      CTRL-J          same as <CR>
822 |c_CTRL-K|      CTRL-K {char1} {char2}
823                                 enter digraph
824 |c_CTRL-L|      CTRL-L          do completion on the pattern in front of the
825                                 cursor and insert the longest common part
826 |c_<CR>|        <CR>            execute entered command
827 |c_<CR>|        CTRL-M          same as <CR>
828 |c_CTRL-N|      CTRL-N          after using 'wildchar' with multiple matches:
829                                 go to next match, otherwise: same as <Down>
830                 CTRL-O          not used
831 |c_CTRL-P|      CTRL-P          after using 'wildchar' with multiple matches:
832                                 go to previous match, otherwise: same as <Up>
833 |c_CTRL-Q|      CTRL-Q          same as CTRL-V (used for terminal control flow)
834 |c_CTRL-R|      CTRL-R {0-9a-z"%#*:= CTRL-F CTRL-P CTRL-W CTRL-A}
835                                 insert the contents of a register or object
836                                 under the cursor as if typed
837 |c_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:= CTRL-F CTRL-P CTRL-W CTRL-A}
838                                 insert the contents of a register or object
839                                 under the cursor literally
840                 CTRL-S          (used for terminal control flow)
841 |c_CTRL-U|      CTRL-U          remove all characters
842 |c_CTRL-V|      CTRL-V          insert next non-digit literally, insert three
843                                 digit decimal number as a single byte.
844 |c_CTRL-W|      CTRL-W          delete the word in front of the cursor
845                 CTRL-X          not used (reserved for completion)
846                 CTRL-Y          not used
847                 CTRL-Z          not used (reserved for suspend)
848 |c_<Esc>|       <Esc>           abandon command-line without executing it
849 |c_<Esc>|       CTRL-[          same as <Esc>
850 |c_CTRL-\_CTRL-N| CTRL-\ CTRL-N  go to Normal mode, abandon command-line
851                 CTRL-\ a - z    reserved for extensions
852                 CTRL-\ others   not used
853                 CTRL-]          not used
854                 CTRL-^          not used
855 |c_CTRL-_|      CTRL-_          when 'allowrevins' set: change language
856                                 (Hebrew, Farsi)
857 |c_<Del>|       <Del>           delete the character under the cursor
859 |c_<Left>|      <Left>          cursor left
860 |c_<S-Left>|    <S-Left>        cursor one word left
861 |c_<C-Left>|    <C-Left>        cursor one word left
862 |c_<Right>|     <Right>         cursor right
863 |c_<S-Right>|   <S-Right>       cursor one word right
864 |c_<C-Right>|   <C-Right>       cursor one word right
865 |c_<Up>|        <Up>            recall previous command-line from history that
866                                 matches pattern in front of the cursor
867 |c_<S-Up>|      <S-Up>          recall previous command-line from history
868 |c_<Down>|      <Down>          recall next command-line from history that
869                                 matches pattern in front of the cursor
870 |c_<S-Down>|    <S-Down>        recall next command-line from history
871 |c_<Home>|      <Home>          cursor to start of command-line
872 |c_<End>|       <End>           cursor to end of command-line
873 |c_<PageDown>|  <PageDown>      same as <S-Down>
874 |c_<PageUp>|    <PageUp>        same as <S-Up>
875 |c_<Insert>|    <Insert>        toggle insert/overstrike mode
876 |c_<LeftMouse>| <LeftMouse>     cursor at mouse click
878 ==============================================================================
879 5. EX commands                                          *ex-cmd-index*
881 This is a brief but complete listing of all the ":" commands, without
882 mentioning any arguments.  The optional part of the command name is inside [].
883 The commands are sorted on the non-optional part of their name.
885 |:!|            :!              filter lines or execute an external command
886 |:!!|           :!!             repeat last ":!" command
887 |:#|            :#              same as ":number"
888 |:&|            :&              repeat last ":substitute"
889 |:star|         :*              execute contents of a register
890 |:<|            :<              shift lines one 'shiftwidth' left
891 |:=|            :=              print the cursor line number
892 |:>|            :>              shift lines one 'shiftwidth' right
893 |:@|            :@              execute contents of a register
894 |:@@|           :@@             repeat the previous ":@"
895 |:Next|         :N[ext]         go to previous file in the argument list
896 |:Print|        :P[rint]        print lines
897 |:X|            :X              ask for encryption key
898 |:append|       :a[ppend]       append text
899 |:abbreviate|   :ab[breviate]   enter abbreviation
900 |:abclear|      :abc[lear]      remove all abbreviations
901 |:all|          :al[l]          open a window for each file in the argument
902                                 list
903 |:amenu|        :am[enu]        enter new menu item for all modes
904 |:anoremenu|    :an[oremenu]    enter a new menu for all modes that will not
905                                 be remapped
906 |:args|         :ar[gs]         print the argument list
907 |:argument|     :argu[ment]     go to specific file in the argument list
908 |:ascii|        :as[cii]        print ascii value of character under the cursor
909 |:autocmd|      :au[tocmd]      enter or show autocommands
910 |:augroup|      :aug[roup]      select the autocommand group to use
911 |:aunmenu|      :aun[menu]      remove menu for all modes
912 |:buffer|       :b[uffer]       go to specific buffer in the buffer list
913 |:bNext|        :bN[ext]        go to next buffer in the buffer list
914 |:ball|         :ba[ll]         open a window for each file in the buffer list
915 |:badd|         :bad[d]         add file to the buffer list
916 |:bdelete|      :bd[elete]      delete specific files from the buffer list
917 |:behave|       :be[have]       set mouse and selection behavior
918 |:blast|        :bl[ast]        go to last file in the buffer list
919 |:bmodified|    :bm[odified]    go to next file in the buffer list that has
920                                 been modified
921 |:bnext|        :bn[ext]        go to next file in the buffer list
922 |:bprevious|    :bp[revious]    go to previous file in the buffer list
923 |:brewind|      :br[ewind]      go to last file in the buffer list
924 |:break|        :brea[k]        break out of while loop
925 |:browse|       :bro[wse]       use file selection dialog
926 |:buffers|      :buffers        list all files in the buffer list
927 |:bunload|      :bun[load]      unload a specific buffer
928 |:change|       :c[hange]       replace a line or series of lines
929 |:cNext|        :cN[ext]        go to previous error
930 |:cabbrev|      :ca[bbrev]      like ":abbreviate" but for Command-line mode
931 |:cabclear|     :cabc[lear]     clear all abbreviations for Command-line mode
932 |:call|         :cal[l]         call a function
933 |:cc|           :cc             go to specific error
934 |:cd|           :cd             change directory
935 |:center|       :ce[nter]       format lines at the center
936 |:cfile|        :cf[ile]        read the file with error messages
937 |:change|       :ch[ange]       delete and insert lines
938 |:chdir|        :chd[ir]        change directory
939 |:checkpath|    :che[ckpath]    list included files
940 |:clist|        :cl[ist]        list all errors
941 |:clast|        :cla[st]        go to the specified error, default last one
942 |:close|        :clo[se]        close current window
943 |:cmap|         :cm[ap]         like ":map" but for Command-line mode
944 |:cmapclear|    :cmapc[lear]    clear all mappings for Command-line mode
945 |:cmenu|        :cme[nu]        add menu for Command-line mode
946 |:cnext|        :cn[ext]        go to next error
947 |:cnewer|       :cnew[er]       go to newer error list
948 |:cnfile|       :cnf[ile]       go to first error in next file
949 |:cnoremap|     :cno[remap]     like ":noremap" but for Command-line mode
950 |:cnoreabbrev|  :cnorea[bbrev]  like ":noreabbrev" but for Command-line mode
951 |:cnoremenu|    :cnoreme[nu]    like ":noremenu" but for Command-line mode
952 |:copy|         :co[py]         copy lines
953 |:colder|       :col[der]       go to older error list
954 |:command|      :com[mand]      create user-defined command
955 |:comclear|     :comc[lear]     clear all user-defined commands
956 |:continue|     :con[tinue]     go back to :while
957 |:confirm|      :conf[irm]      prompt user when confirmation required
958 |:cprevious|    :cp[revious]    go to previous error
959 |:cquit|        :cq[uit]        quit Vim with an error code
960 |:crewind|      :cr[ewind]      go to the specified error, default first one
961 |:cscope|       :cs[cope]       execute cscope command
962 |:cstag|        :cst[ag]        use cscope to jump to a tag
963 |:cunmap|       :cu[nmap]       like ":unmap" but for Command-line mode
964 |:cunabbrev|    :cuna[bbrev]    like ":unabbrev" but for Command-line mode
965 |:cunmenu|      :cunme[nu]      remove menu for Command-line mode
966 |:delete|       :d[elete]       delete lines
967 |:delcommand|   :delc[ommand]   delete user-defined command
968 |:delfunction|  :delf[unction]  delete a user function
969 |:display|      :di[splay]      display registers
970 |:digraphs|     :dig[raphs]     show or enter digraphs
971 |:djump|        :dj[ump]        jump to #define
972 |:dlist|        :dl[ist]        list #defines
973 |:doautocmd|    :do[autocmd]    apply autocommands to current buffer
974 |:doautoall|    :doautoa[ll]    apply autocommands for all loaded buffers
975 |:dsearch|      :ds[earch]      list one #define
976 |:dsplit|       :dsp[lit]       split window and jump to #define
977 |:edit|         :e[dit]         edit a file
978 |:echo|         :ec[ho]         echoes the result of expressions
979 |:echohl|       :echoh[l]       set highlighting for echo commands
980 |:echon|        :echon          same as :echo, but without <EOL>
981 |:else|         :el[se]         part of an :if command
982 |:elseif|       :elsei[f]       part of an :if command
983 |:emenu|        :em[enu]        execute a menu by name
984 |:endif|        :en[dif]        end previous :if
985 |:endfunction|  :endf[unction]  end of a user function
986 |:endwhile|     :endw[hile]     end previous :while
987 |:ex|           :ex             same as ":edit"
988 |:execute|      :exe[cute]      execute result of expressions
989 |:exit|         :exi[t]         same as ":xit"
990 |:file|         :f[ile]         show or set the current file name
991 |:files|        :files          list all files in the buffer list
992 |:filetype|     :filet[ype]     switch file type detection on/off
993 |:find|         :fin[d]         find file in 'path' and edit it
994 |:fixdel|       :fix[del]       set key code of <Del>
995 |:function|     :fu[nction]     define a user function
996 |:global|       :g[lobal]       execute commands for matching lines
997 |:goto|         :go[to]         go to byte in the buffer
998 |:grep|         :gr[ep]         run 'grepprg' and jump to first match
999 |:gui|          :gu[i]          start the GUI
1000 |:gvim|         :gv[im]         start the GUI
1001 |:help|         :h[elp]         open a help window
1002 |:helpfind|     :helpf[ind]     dialog to open a help window
1003 |:highlight|    :hi[ghlight]    specify highlighting methods
1004 |:hide|         :hid[e]         hide current buffer for a command
1005 |:history|      :his[tory]      print a history list
1006 |:insert|       :i[nsert]       insert text
1007 |:iabbrev|      :ia[bbrev]      like ":abbrev" but for Insert mode
1008 |:iabclear|     :iabc[lear]     like ":abclear" but for Insert mode
1009 |:if|           :if             execute commands when condition met
1010 |:ijump|        :ij[ump]        jump to definition of identifier
1011 |:ilist|        :il[ist]        list lines where identifier matches
1012 |:imap|         :im[ap]         like ":map" but for Insert mode
1013 |:imapclear|    :imapc[lear]    like ":mapclear" but for Insert mode
1014 |:imenu|        :ime[nu]        add menu for Insert mode
1015 |:inoremap|     :ino[remap]     like ":noremap" but for Insert mode
1016 |:inoreabbrev|  :inorea[bbrev]  like ":noreabbrev" but for Insert mode
1017 |:inoremenu|    :inoreme[nu]    like ":noremenu" but for Insert mode
1018 |:intro|        :int[ro]        print the introductory message
1019 |:isearch|      :is[earch]      list one line where identifier matches
1020 |:isplit|       :isp[lit]       split window and jump to definition of
1021                                 identifier
1022 |:iunmap|       :iu[nmap]       like ":unmap" but for Insert mode
1023 |:iunabbrev|    :iuna[bbrev]    like ":unabbrev" but for Insert mode
1024 |:iunmenu|      :iunme[nu]      remove menu for Insert mode
1025 |:join|         :j[oin]         join lines
1026 |:jumps|        :ju[mps]        print the jump list
1027 |:k|            :k              set a mark
1028 |:list|         :l[ist]         print lines
1029 |:last|         :la[st]         go to the last file in the argument list
1030 |:left|         :le[ft]         left align lines
1031 |:let|          :let            assign a value to a variable or option
1032 |:ls|           :ls             list all buffers
1033 |:move|         :m[ove]         move lines
1034 |:mark|         :ma[rk]         set a mark
1035 |:make|         :mak[e]         execute external command 'makeprg' and parse
1036                                 error messages
1037 |:map|          :map            show or enter a mapping
1038 |:mapclear|     :mapc[lear]     clear all mappings for Normal and Visual mode
1039 |:marks|        :marks          list all marks
1040 |:menu|         :me[nu]         enter a new menu item
1041 |:messages|     :mes[sages]     view previously displayed messages
1042 |:mkexrc|       :mk[exrc]       write current mappings and settings to a file
1043 |:mksession|    :mks[ession]    write session info to a file
1044 |:mkvimrc|      :mkv[imrc]      write current mappings and settings to a file
1045 |:mode|         :mod[e]         show or change the screen mode
1046 |:next|         :n[ext]         go to next file in the argument list
1047 |:new|          :new            create a new empty window
1048 |:nmap|         :nm[ap]         like ":map" but for Normal mode
1049 |:nmapclear|    :nmapc[lear]    clear all mappings for Normal mode
1050 |:nmenu|        :nme[nu]        add menu for Normal mode
1051 |:nnoremap|     :nn[oremap]     like ":noremap" but for Normal mode
1052 |:nnoremenu|    :nnoreme[nu]    like ":noremenu" but for Normal mode
1053 |:noremap|      :no[remap]      enter a mapping that will not be remapped
1054 |:nohlsearch|   :noh[lsearch]   suspend 'hlsearch' highlighting
1055 |:noreabbrev|   :norea[bbrev]   enter an abbreviation that will not be
1056                                 remapped
1057 |:noremenu|     :noreme[nu]     enter a menu that will not be remapped
1058 |:normal|       :norm[al]       execute Normal mode commands
1059 |:number|       :nu[mber]       print lines with line number
1060 |:nunmap|       :nun[map]       like ":unmap" but for Normal mode
1061 |:nunmenu|      :nunme[nu]      remove menu for Normal mode
1062 |:open|         :o[pen]         start open mode (not implemented)
1063 |:omap|         :om[ap]         like ":map" but for Operator-pending mode
1064 |:omapclear|    :omapc[lear]    remove all mappings for Operator-pending mode
1065 |:omenu|        :ome[nu]        add menu for Operator-pending mode
1066 |:only|         :on[ly]         close all windows except current one
1067 |:onoremap|     :ono[remap]     like ":noremap" but for Operator-pending mode
1068 |:onoremenu|    :onoreme[nu]    like ":noremenu" but for Operator-pending mode
1069 |:options|      :opt[ions]      open the options-window
1070 |:ounmap|       :ou[nmap]       like ":unmap" but for Operator-pending mode
1071 |:ounmenu|      :ounme[nu]      remove menu for Operator-pending mode
1072 |:print|        :p[rint]        print lines
1073 |:pclose|       :pc[lose]       close preview window
1074 |:perl|         :pe[rl]         execute Perl command
1075 |:perldo|       :perld[o]       execute Perl command for each line
1076 |:pop|          :po[p]          jump to older entry in tag stack
1077 |:ppop|         :pp[op]         ":pop" in preview window
1078 |:preserve|     :pre[serve]     write all text to swap file
1079 |:previous|     :prev[ious]     go to previous file in argument list
1080 |:promptfind|   :pro[mptfind]   Search dialog
1081 |:promptrepl|   :promptr[epl]   Search/Replace dialog
1082 |:ptag|         :pt[ag]         show tag in preview window
1083 |:ptNext|       :ptN[ext]       |:tNext| in preview window
1084 |:ptjump|       :ptj[ump]       |:tjump| and show tag in preview window
1085 |:ptlast|       :ptl[ast]       |:tlast| in preview window
1086 |:ptnext|       :ptn[ext]       |:tnext| in preview window
1087 |:ptprevious|   :ptp[revious]   |:tprevious| in preview window
1088 |:ptrewind|     :ptr[ewind]     |:trewind| in preview window
1089 |:ptselect|     :pts[elect]     |:tselect| and show tag in preview window
1090 |:put|          :pu[t]          insert contents of register in the text
1091 |:pwd|          :pw[d]          print current directory
1092 |:python|       :py[thon]       execute Python command
1093 |:pyfile|       :pyf[ile]       execute Python script file
1094 |:quit|         :q[uit]         quit current window or Vim
1095 |:qall|         :qa[ll]         quit Vim
1096 |:read|         :r[ead]         read file into the text
1097 |:recover|      :rec[over]      recover a file from a swap file
1098 |:redo|         :red[o]         redo one undone change
1099 |:redir|        :redi[r]        redirect messages to a file or register
1100 |:registers|    :reg[isters]    display the contents of registers
1101 |:resize|       :res[ize]       change current window height
1102 |:retab|        :ret[ab]        change tab size
1103 |:return|       :retu[rn]       return from a user function
1104 |:rewind|       :rew[ind]       go to the first file in the argument list
1105 |:right|        :ri[ght]        right align text
1106 |:rviminfo|     :rv[iminfo]     read from viminfo file
1107 |:substitute|   :s[ubstitute]   find and replace text
1108 |:sNext|        :sN[ext]        split window and go to previous file in
1109                                 argument list
1110 |:sargument|    :sa[rgument]    split window and go to specific file in
1111                                 argument list
1112 |:sall|         :sal[l]         open a window for each file in argument list
1113 |:sbuffer|      :sb[uffer]      split window and go to specific file in the
1114                                 buffer list
1115 |:sbNext|       :sbN[ext]       split window and go to previous file in the
1116                                 buffer list
1117 |:sball|        :sba[ll]        open a window for each file in the buffer list
1118 |:sblast|       :sbl[ast]       split window and go to last file in buffer
1119                                 list
1120 |:sbmodified|   :sbm[odified]   split window and go to modified file in the
1121                                 buffer list
1122 |:sbnext|       :sbn[ext]       split window and go to next file in the buffer
1123                                 list
1124 |:sbprevious|   :sbp[revious]   split window and go to previous file in the
1125                                 buffer list
1126 |:sbrewind|     :sbr[ewind]     split window and go to first file in the
1127                                 buffer list
1128 |:set|          :se[t]          show or set options
1129 |:sfind|        :sf[ind]        split current window and edit file in 'path'
1130 |:shell|        :sh[ell]        escape to a shell
1131 |:simalt|       :si[malt]       Win32 GUI: simulate Windows ALT key
1132 |:sleep|        :sl[eep]        do nothing for a few seconds
1133 |:slast|        :sla[st]        split window and go to last file in the
1134                                 argument list
1135 |:smagic|       :sm[agic]       :substitute with 'magic'
1136 |:snext|        :sn[ext]        split window and go to next file in the
1137                                 argument list
1138 |:sniff|        :sni[ff]        send request to sniff
1139 |:snomagic|     :sno[magic]     :substitute with 'nomagic'
1140 |:source|       :so[urce]       read Vim or Ex commands from a file
1141 |:split|        :sp[lit]        split current window
1142 |:sprevious|    :spr[evious]    split window and go to previous file in the
1143                                 argument list
1144 |:srewind|      :sr[ewind]      split window and go to first file in the
1145                                 argument list
1146 |:stop|         :st[op]         suspend the editor or escape to a shell
1147 |:stag|         :sta[g]         split window and jump to a tag
1148 |:startinsert|  :star[tinsert]  start Insert mode
1149 |:stjump|       :stj[ump]       do ":tjump" and split window
1150 |:stselect|     :sts[elect]     do ":tselect" and split window
1151 |:sunhide|      :sun[hide]      same as ":unhide"
1152 |:suspend|      :sus[pend]      same as ":stop"
1153 |:sview|        :sv[iew]        split window and edit file read-only
1154 |:swapname|     :sw[apname]     show the name of the current swap file
1155 |:syntax|       :sy[ntax]       syntax highlighting
1156 |:syncbind|     :sync[bind]     sync scroll binding
1157 |:t|            :t              same as ":copy"
1158 |:tNext|        :tN[ext]        jump to previous matching tag
1159 |:tag|          :ta[g]          jump to tag
1160 |:tags|         :tags           show the contents of the tag stack
1161 |:tcl|          :tc[l]          execute Tcl command
1162 |:tcldo|        :tcld[o]        execute Tcl command for each line
1163 |:tclfile|      :tclf[ile]      execute Tcl script file
1164 |:tearoff|      :te[aroff]      tear-off a menu
1165 |:tjump|        :tj[ump]        like ":tselect", but jump directly when there
1166                                 is only one match
1167 |:tlast|        :tl[ast]        jump to last matching tag
1168 |:tmenu|        :tm[enu]        define menu tooltip
1169 |:tnext|        :tn[ext]        jump to next matching tag
1170 |:tprevious|    :tp[revious]    jump to previous matching tag
1171 |:trewind|      :tr[ewind]      jump to first matching tag
1172 |:tselect|      :ts[elect]      list matching tags and select one
1173 |:tunmenu|      :tu[nmenu]      remove menu tooltip
1174 |:undo|         :u[ndo]         undo last change(s)
1175 |:unabbreviate| :una[bbreviate] remove abbreviation
1176 |:unhide|       :unh[ide]       open a window for each loaded file in the
1177                                 buffer list
1178 |:unlet|        :unl[et]        delete variable
1179 |:unmap|        :unm[ap]        remove mapping
1180 |:unmenu|       :unme[nu]       remove menu
1181 |:update|       :up[date]       write buffer if modified
1182 |:vglobal|      :v[global]      execute commands for not matching lines
1183 |:version|      :ve[rsion]      print version number and other info
1184 |:visual|       :vi[sual]       same as ":edit", but turns off "Ex" mode
1185 |:view|         :vie[w]         edit a file read-only
1186 |:vmap|         :vm[ap]         like ":map" but for Visual mode
1187 |:vmapclear|    :vmapc[lear]    remove all mappings for Visual mode
1188 |:vmenu|        :vme[nu]        add menu for Visual mode
1189 |:vnoremap|     :vn[oremap]     like ":noremap" but for Visual mode
1190 |:vnoremenu|    :vnoreme[nu]    like ":noremenu" but for Visual mode
1191 |:vunmap|       :vu[nmap]       like ":unmap" but for Visual mode
1192 |:vunmenu|      :vunme[nu]      remove menu for Visual mode
1193 |:write|        :w[rite]        write to a file
1194 |:wNext|        :wN[ext]        write to a file and go to previous file in
1195                                 argument list
1196 |:wall|         :wa[ll]         write all (changed) buffers
1197 |:while|        :wh[ile]        execute loop for as long as condition met
1198 |:winsize|      :wi[nsize]      get or set window size (obsolete)
1199 |:winpos|       :winp[os]       get or set window position
1200 |:wnext|        :wn[ext]        write to a file and go to next file in
1201                                 argument list
1202 |:wprevious|    :wp[revious]    write to a file and go to previous file in
1203                                 argument list
1204 |:wq|           :wq             write to a file and quit window or Vim
1205 |:wqall|        :wqa[ll]        write all changed buffers and quit Vim
1206 |:wviminfo|     :wv[iminfo]     write to viminfo file
1207 |:xit|          :x[it]          write if buffer changed and quit window or Vim
1208 |:xall|         :xa[ll]         same as ":wqall"
1209 |:yank|         :y[ank]         yank lines into a register
1210 |:z|            :z              print some lines
1211 |:~|            :~              repeat last ":substitute"
1213  vim:ts=8:sw=8:tw=78: