Update runtime files
[MacVim.git] / runtime / doc / index.txt
blob4549300fc23d13c088b110afdc6b750ecf4bb5fe
1 *index.txt*     For Vim version 7.2.  Last change: 2009 Jul 01
4                   VIM REFERENCE MANUAL    by Bram Moolenaar
6                                                                 *index*
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    2.5. Commands starting with 'z'      |z|
20 3. Visual mode                          |visual-index|
21 4. Command-line editing                 |ex-edit-index|
22 5. EX commands                          |ex-cmd-index|
24 For an overview of options see help.txt |option-list|.
25 For an overview of built-in functions see |functions|.
26 For a list of Vim variables see |vim-variable|.
27 For a complete listing of all help items see |help-tags|.
29 ==============================================================================
30 1. Insert mode                                          *insert-index*
32 tag             char            action  ~
33 -----------------------------------------------------------------------
34 |i_CTRL-@|      CTRL-@          insert previously inserted text and stop
35                                 insert
36 |i_CTRL-A|      CTRL-A          insert previously inserted text
37                 CTRL-B          not used |i_CTRL-B-gone|
38 |i_CTRL-C|      CTRL-C          quit insert mode, without checking for
39                                 abbreviation, unless 'insertmode' set.
40 |i_CTRL-D|      CTRL-D          delete one shiftwidth of indent in the current
41                                 line
42 |i_CTRL-E|      CTRL-E          insert the character which is below the cursor
43                 CTRL-F          not used (but by default it's in 'cinkeys' to
44                                 re-indent the current line)
45 |i_CTRL-G_j|    CTRL-G CTRL-J   line down, to column where inserting started
46 |i_CTRL-G_j|    CTRL-G j        line down, to column where inserting started
47 |i_CTRL-G_j|    CTRL-G <Down>   line down, to column where inserting started
48 |i_CTRL-G_k|    CTRL-G CTRL-K   line up, to column where inserting started
49 |i_CTRL-G_k|    CTRL-G k        line up, to column where inserting started
50 |i_CTRL-G_k|    CTRL-G <Up>     line up, to column where inserting started
51 |i_CTRL-G_u|    CTRL-G u        start new undoable edit
52 |i_<BS>|        <BS>            delete character before the cursor
53 |i_digraph|     {char1}<BS>{char2}
54                                 enter digraph (only when 'digraph' option set)
55 |i_CTRL-H|      CTRL-H          same as <BS>
56 |i_<Tab>|       <Tab>           insert a <Tab> character
57 |i_CTRL-I|      CTRL-I          same as <Tab>
58 |i_<NL>|        <NL>            same as <CR>
59 |i_CTRL-J|      CTRL-J          same as <CR>
60 |i_CTRL-K|      CTRL-K {char1} {char2}
61                                 enter digraph
62 |i_CTRL-L|      CTRL-L          when 'insertmode' set: Leave Insert mode
63 |i_<CR>|        <CR>            begin new line
64 |i_CTRL-M|      CTRL-M          same as <CR>
65 |i_CTRL-N|      CTRL-N          find next match for keyword in front of the
66                                 cursor
67 |i_CTRL-O|      CTRL-O          execute a single command and return to insert
68                                 mode
69 |i_CTRL-P|      CTRL-P          find previous match for keyword in front of
70                                 the cursor
71 |i_CTRL-Q|      CTRL-Q          same as CTRL-V, unless used for terminal
72                                 control flow
73 |i_CTRL-R|      CTRL-R {0-9a-z"%#*:=}
74                                 insert the contents of a register
75 |i_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:=}
76                                 insert the contents of a register literally
77 |i_CTRL-R_CTRL-O| CTRL-R CTRL-O {0-9a-z"%#*:=}
78                                 insert the contents of a register literally
79                                 and don't auto-indent
80 |i_CTRL-R_CTRL-P| CTRL-R CTRL-P {0-9a-z"%#*:=}
81                                 insert the contents of a register literally
82                                 and fix indent.
83                 CTRL-S          (used for terminal control flow)
84 |i_CTRL-T|      CTRL-T          insert one shiftwidth of indent in current
85                                 line
86 |i_CTRL-U|      CTRL-U          delete all entered characters in the current
87                                 line
88 |i_CTRL-V|      CTRL-V {char}   insert next non-digit literally
89 |i_CTRL-V_digit| CTRL-V {number} insert three digit decimal number as a single
90                                 byte.
91 |i_CTRL-W|      CTRL-W          delete word before the cursor
92 |i_CTRL-X|      CTRL-X {mode}   enter CTRL-X sub mode, see |i_CTRL-X_index|
93 |i_CTRL-Y|      CTRL-Y          insert the character which is above the cursor
94 |i_CTRL-Z|      CTRL-Z          when 'insertmode' set: suspend Vim
95 |i_<Esc>|       <Esc>           end insert mode (unless 'insertmode' set)
96 |i_CTRL-[|      CTRL-[          same as <Esc>
97 |i_CTRL-\_CTRL-N| CTRL-\ CTRL-N  go to Normal mode
98 |i_CTRL-\_CTRL-G| CTRL-\ CTRL-G  go to mode specified with 'insertmode'
99                 CTRL-\ a - z    reserved for extensions
100                 CTRL-\ others   not used
101 |i_CTRL-]|      CTRL-]          trigger abbreviation
102 |i_CTRL-^|      CTRL-^          toggle use of |:lmap| mappings
103 |i_CTRL-_|      CTRL-_          When 'allowrevins' set: change language
104                                 (Hebrew, Farsi) {only when compiled with
105                                 +rightleft feature}
107                 <Space> to '~'  not used, except '0' and '^' followed by
108                                 CTRL-D
110 |i_0_CTRL-D|    0 CTRL-D        delete all indent in the current line
111 |i_^_CTRL-D|    ^ CTRL-D        delete all indent in the current line, restore
112                                 it in the next line
114 |i_<Del>|       <Del>           delete character under the cursor
116                 Meta characters (0x80 to 0xff, 128 to 255)
117                                 not used
119 |i_<Left>|      <Left>          cursor one character left
120 |i_<S-Left>|    <S-Left>        cursor one word left
121 |i_<C-Left>|    <C-Left>        cursor one word left
122 |i_<Right>|     <Right>         cursor one character right
123 |i_<S-Right>|   <S-Right>       cursor one word right
124 |i_<C-Right>|   <C-Right>       cursor one word right
125 |i_<Up>|        <Up>            cursor one line up
126 |i_<S-Up>|      <S-Up>          same as <PageUp>
127 |i_<Down>|      <Down>          cursor one line down
128 |i_<S-Down>|    <S-Down>        same as <PageDown>
129 |i_<Home>|      <Home>          cursor to start of line
130 |i_<C-Home>|    <C-Home>        cursor to start of file
131 |i_<End>|       <End>           cursor past end of line
132 |i_<C-End>|     <C-End>         cursor past end of file
133 |i_<PageUp>|    <PageUp>        one screenful backward
134 |i_<PageDown>|  <PageDown>      one screenful forward
135 |i_<F1>|        <F1>            same as <Help>
136 |i_<Help>|      <Help>          stop insert mode and display help window
137 |i_<Insert>|    <Insert>        toggle Insert/Replace mode
138 |i_<LeftMouse>| <LeftMouse>     cursor at mouse click
139 |i_<MouseDown>| <MouseDown>     scroll three lines downwards
140 |i_<S-MouseDown>| <S-MouseDown> scroll a full page downwards
141 |i_<MouseUp>|   <MouseUp>       scroll three lines upwards
142 |i_<S-MouseUp>| <S-MouseUp>     scroll a full page upwards
144 commands in CTRL-X submode                              *i_CTRL-X_index*
146 |i_CTRL-X_CTRL-D|       CTRL-X CTRL-D   complete defined identifiers
147 |i_CTRL-X_CTRL-E|       CTRL-X CTRL-E   scroll up
148 |i_CTRL-X_CTRL-F|       CTRL-X CTRL-F   complete file names
149 |i_CTRL-X_CTRL-I|       CTRL-X CTRL-I   complete identifiers
150 |i_CTRL-X_CTRL-K|       CTRL-X CTRL-K   complete identifiers from dictionary
151 |i_CTRL-X_CTRL-L|       CTRL-X CTRL-L   complete whole lines
152 |i_CTRL-X_CTRL-N|       CTRL-X CTRL-N   next completion
153 |i_CTRL-X_CTRL-O|       CTRL-X CTRL-O   omni completion
154 |i_CTRL-X_CTRL-P|       CTRL-X CTRL-P   previous completion
155 |i_CTRL-X_CTRL-S|       CTRL-X CTRL-S   spelling suggestions
156 |i_CTRL-X_CTRL-T|       CTRL-X CTRL-T   complete identifiers from thesaurus
157 |i_CTRL-X_CTRL-Y|       CTRL-X CTRL-Y   scroll down
158 |i_CTRL-X_CTRL-U|       CTRL-X CTRL-U   complete with 'completefunc'
159 |i_CTRL-X_CTRL-V|       CTRL-X CTRL-V   complete like in : command line
160 |i_CTRL-X_CTRL-]|       CTRL-X CTRL-]   complete tags
161 |i_CTRL-X_s|            CTRL-X s        spelling suggestions
162 {not available when compiled without the +insert_expand feature}
164 ==============================================================================
165 2. Normal mode                                          *normal-index*
167 CHAR     any non-blank character
168 WORD     a sequence of non-blank characters
169 N        a number entered before the command
170 {motion} a cursor movement command
171 Nmove    the text that is moved over with a {motion}
172 SECTION  a section that possibly starts with '}' instead of '{'
174 note: 1 = cursor movement command; 2 = can be undone/redone
176 tag             char          note action in Normal mode        ~
177 ------------------------------------------------------------------------------
178                 CTRL-@             not used
179 |CTRL-A|        CTRL-A          2  add N to number at/after cursor
180 |CTRL-B|        CTRL-B          1  scroll N screens Backwards
181 |CTRL-C|        CTRL-C             interrupt current (search) command
182 |CTRL-D|        CTRL-D             scroll Down N lines (default: half a screen)
183 |CTRL-E|        CTRL-E             scroll N lines upwards (N lines Extra)
184 |CTRL-F|        CTRL-F          1  scroll N screens Forward
185 |CTRL-G|        CTRL-G             display current file name and position
186 |<BS>|          <BS>            1  same as "h"
187 |CTRL-H|        CTRL-H          1  same as "h"
188 |<Tab>|         <Tab>           1  go to N newer entry in jump list
189 |CTRL-I|        CTRL-I          1  same as <Tab>
190 |<NL>|          <NL>            1  same as "j"
191 |CTRL-J|        CTRL-J          1  same as "j"
192                 CTRL-K             not used
193 |CTRL-L|        CTRL-L             redraw screen
194 |<CR>|          <CR>            1  cursor to the first CHAR N lines lower
195 |CTRL-M|        CTRL-M          1  same as <CR>
196 |CTRL-N|        CTRL-N          1  same as "j"
197 |CTRL-O|        CTRL-O          1  go to N older entry in jump list
198 |CTRL-P|        CTRL-P          1  same as "k"
199                 CTRL-Q             (used for terminal control flow)
200 |CTRL-R|        CTRL-R          2  redo changes which were undone with 'u'
201                 CTRL-S             (used for terminal control flow)
202 |CTRL-T|        CTRL-T             jump to N older Tag in tag list
203 |CTRL-U|        CTRL-U             scroll N lines Upwards (default: half a
204                                    screen)
205 |CTRL-V|        CTRL-V             start blockwise Visual mode
206 |CTRL-W|        CTRL-W {char}      window commands, see |CTRL-W|
207 |CTRL-X|        CTRL-X          2  subtract N from number at/after cursor
208 |CTRL-Y|        CTRL-Y             scroll N lines downwards
209 |CTRL-Z|        CTRL-Z             suspend program (or start new shell)
210                 CTRL-[ <Esc>       not used
211 |CTRL-\_CTRL-N| CTRL-\ CTRL-N      go to Normal mode (no-op)
212 |CTRL-\_CTRL-G| CTRL-\ CTRL-G      go to mode specified with 'insertmode'
213                 CTRL-\ a - z       reserved for extensions
214                 CTRL-\ others      not used
215 |CTRL-]|        CTRL-]             :ta to ident under cursor
216 |CTRL-^|        CTRL-^             edit Nth alternate file (equivalent to
217                                    ":e #N")
218                 CTRL-_             not used
220 |<Space>|       <Space>         1  same as "l"
221 |!|             !{motion}{filter}
222                                 2  filter Nmove text through the {filter}
223                                    command
224 |!!|            !!{filter}      2  filter N lines through the {filter} command
225 |quote|         "{a-zA-Z0-9.%#:-"}  use register {a-zA-Z0-9.%#:-"} for next
226                                    delete, yank or put (uppercase to append)
227                                    ({.%#:} only work with put)
228 |#|             #               1  search backward for the Nth occurrence of
229                                    the ident under the cursor
230 |$|             $               1  cursor to the end of Nth next line
231 |%|             %               1  find the next (curly/square) bracket on
232                                    this line and go to its match, or go to
233                                    matching comment bracket, or go to matching
234                                    preprocessor directive.
235 |N%|            {count}%        1  go to N percentage in the file
236 |&|             &               2  repeat last :s
237 |'|             '{a-zA-Z0-9}    1  cursor to the first CHAR on the line with
238                                    mark {a-zA-Z0-9}
239 |''|            ''              1  cursor to the first CHAR of the line where
240                                    the cursor was before the latest jump.
241 |'(|            '(              1  cursor to the first CHAR on the line of the
242                                    start of the current sentence
243 |')|            ')              1  cursor to the first CHAR on the line of the
244                                    end of the current sentence
245 |'<|            '<              1  cursor to the first CHAR of the line where
246                                    highlighted area starts/started in the
247                                    current buffer.
248 |'>|            '>              1  cursor to the first CHAR of the line where
249                                    highlighted area ends/ended in the current
250                                    buffer.
251 |'[|            '[              1  cursor to the first CHAR on the line of the
252                                    start of last operated text or start of put
253                                    text
254 |']|            ']              1  cursor to the first CHAR on the line of the
255                                    end of last operated text or end of put
256                                    text
257 |'{|            '{              1  cursor to the first CHAR on the line of the
258                                    start of the current paragraph
259 |'}|            '}              1  cursor to the first CHAR on the line of the
260                                    end of the current paragraph
261 |(|             (               1  cursor N sentences backward
262 |)|             )               1  cursor N sentences forward
263 |star|          *               1  search forward for the Nth occurrence of
264                                    the ident under the cursor
265 |+|             +               1  same as <CR>
266 |,|             ,               1  repeat latest f, t, F or T in opposite
267                                    direction N times
268 |-|             -               1  cursor to the first CHAR N lines higher
269 |.|             .               2  repeat last change with count replaced with
270                                    N
271 |/|             /{pattern}<CR>  1  search forward for the Nth occurrence of
272                                    {pattern}
273 |/<CR>|         /<CR>           1  search forward for {pattern} of last search
274 |count|         0               1  cursor to the first char of the line
275 |count|         1                  prepend to command to give a count
276 |count|         2                       "
277 |count|         3                       "
278 |count|         4                       "
279 |count|         5                       "
280 |count|         6                       "
281 |count|         7                       "
282 |count|         8                       "
283 |count|         9                       "
284 |:|             :               1  start entering an Ex command
285 |N:|            {count}:           start entering an Ex command with range
286                                    from current line to N-1 lines down
287 |;|             ;               1  repeat latest f, t, F or T N times
288 |<|             <{motion}       2  shift Nmove lines one 'shiftwidth'
289                                    leftwards
290 |<<|            <<              2  shift N lines one 'shiftwidth' leftwards
291 |=|             ={motion}       2  filter Nmove lines through "indent"
292 |==|            ==              2  filter N lines through "indent"
293 |>|             >{motion}       2  shift Nmove lines one 'shiftwidth'
294                                    rightwards
295 |>>|            >>              2  shift N lines one 'shiftwidth' rightwards
296 |?|             ?{pattern}<CR>  1  search backward for the Nth previous
297                                    occurrence of {pattern}
298 |?<CR>|         ?<CR>           1  search backward for {pattern} of last search
299 |@|             @{a-z}          2  execute the contents of register {a-z}
300                                    N times
301 |@:|            @:                 repeat the previous ":" command N times
302 |@@|            @@              2  repeat the previous @{a-z} N times
303 |A|             A               2  append text after the end of the line N times
304 |B|             B               1  cursor N WORDS backward
305 |C|             ["x]C           2  change from the cursor position to the end
306                                    of the line, and N-1 more lines [into
307                                    buffer x]; synonym for "c$"
308 |D|             ["x]D           2  delete the characters under the cursor
309                                    until the end of the line and N-1 more
310                                    lines [into buffer x]; synonym for "d$"
311 |E|             E               1  cursor forward to the end of WORD N
312 |F|             F{char}         1  cursor to the Nth occurrence of {char} to
313                                    the left
314 |G|             G               1  cursor to line N, default last line
315 |H|             H               1  cursor to line N from top of screen
316 |I|             I               2  insert text before the first CHAR on the
317                                    line N times
318 |J|             J               2  Join N lines; default is 2
319 |K|             K                  lookup Keyword under the cursor with
320                                    'keywordprg'
321 |L|             L               1  cursor to line N from bottom of screen
322 |M|             M               1  cursor to middle line of screen
323 |N|             N               1  repeat the latest '/' or '?' N times in
324                                    opposite direction
325 |O|             O               2  begin a new line above the cursor and
326                                    insert text, repeat N times
327 |P|             ["x]P           2  put the text [from buffer x] before the
328                                    cursor N times
329 |Q|             Q                  switch to "Ex" mode
330 |R|             R               2  enter replace mode: overtype existing
331                                    characters, repeat the entered text N-1
332                                    times
333 |S|             ["x]S           2  delete N lines [into buffer x] and start
334                                    insert; synonym for "cc".
335 |T|             T{char}         1  cursor till after Nth occurrence of {char}
336                                    to the left
337 |U|             U               2  undo all latest changes on one line
338 |V|             V                  start linewise Visual mode
339 |W|             W               1  cursor N WORDS forward
340 |X|             ["x]X           2  delete N characters before the cursor [into
341                                    buffer x]
342 |Y|             ["x]Y              yank N lines [into buffer x]; synonym for
343                                    "yy"
344 |ZZ|            ZZ                 store current file if modified, and exit
345 |ZQ|            ZQ                 exit current file always
346 |[|             [{char}            square bracket command (see |[| below)
347                 \                  not used
348 |]|             ]{char}            square bracket command (see |]| below)
349 |^|             ^               1  cursor to the first CHAR of the line
350 |_|             _               1  cursor to the first CHAR N - 1 lines lower
351 |`|             `{a-zA-Z0-9}    1  cursor to the mark {a-zA-Z0-9}
352 |`(|            `(              1  cursor to the start of the current sentence
353 |`)|            `)              1  cursor to the end of the current sentence
354 |`<|            `<              1  cursor to the start of the highlighted area
355 |`>|            `>              1  cursor to the end of the highlighted area
356 |`[|            `[              1  cursor to the start of last operated text
357                                    or start of putted text
358 |`]|            `]              1  cursor to the end of last operated text or
359                                    end of putted text
360 |``|            ``              1  cursor to the position before latest jump
361 |`{|            `{              1  cursor to the start of the current paragraph
362 |`}|            `}              1  cursor to the end of the current paragraph
363 |a|             a               2  append text after the cursor N times
364 |b|             b               1  cursor N words backward
365 |c|             ["x]c{motion}   2  delete Nmove text [into buffer x] and start
366                                    insert
367 |cc|            ["x]cc          2  delete N lines [into buffer x] and start
368                                    insert
369 |d|             ["x]d{motion}   2  delete Nmove text [into buffer x]
370 |dd|            ["x]dd          2  delete N lines [into buffer x]
371 |do|            do              2  same as ":diffget"
372 |dp|            dp              2  same as ":diffput"
373 |e|             e               1  cursor forward to the end of word N
374 |f|             f{char}         1  cursor to Nth occurrence of {char} to the
375                                    right
376 |g|             g{char}            extended commands, see |g| below
377 |h|             h               1  cursor N chars to the left
378 |i|             i               2  insert text before the cursor N times
379 |j|             j               1  cursor N lines downward
380 |k|             k               1  cursor N lines upward
381 |l|             l               1  cursor N chars to the right
382 |m|             m{A-Za-z}          set mark {A-Za-z} at cursor position
383 |n|             n               1  repeat the latest '/' or '?' N times
384 |o|             o               2  begin a new line below the cursor and
385                                    insert text, repeat N times
386 |p|             ["x]p           2  put the text [from register x] after the
387                                    cursor N times
388 |q|             q{0-9a-zA-Z"}      record typed characters into named register
389                                    {0-9a-zA-Z"} (uppercase to append)
390 |q|             q                  (while recording) stops recording
391 |q:|            q:                 edit : command-line in command-line window
392 |q/|            q/                 edit / command-line in command-line window
393 |q?|            q?                 edit ? command-line in command-line window
394 |r|             r{char}         2  replace N chars with {char}
395 |s|             ["x]s           2  (substitute) delete N characters [into
396                                    buffer x] and start insert
397 |t|             t{char}         1  cursor till before Nth occurrence of {char}
398                                    to the right
399 |u|             u               2  undo changes
400 |v|             v                  start characterwise Visual mode
401 |w|             w               1  cursor N words forward
402 |x|             ["x]x           2  delete N characters under and after the
403                                    cursor [into buffer x]
404 |y|             ["x]y{motion}      yank Nmove text [into buffer x]
405 |yy|            ["x]yy             yank N lines [into buffer x]
406 |z|             z{char}            commands starting with 'z', see |z| below
407 |{|             {               1  cursor N paragraphs backward
408 |bar|           |               1  cursor to column N
409 |}|             }               1  cursor N paragraphs forward
410 |~|             ~               2  'tildeop' off: switch case of N characters
411                                    under cursor and move the cursor N
412                                    characters to the right
413 |~|             ~{motion}          'tildeop' on: switch case of Nmove text
414 |<C-End>|       <C-End>         1  same as "G"
415 |<C-Home>|      <C-Home>        1  same as "gg"
416 |<C-Left>|      <C-Left>        1  same as "b"
417 |<C-LeftMouse>| <C-LeftMouse>      ":ta" to the keyword at the mouse click
418 |<C-Right>|     <C-Right>       1  same as "w"
419 |<C-RightMouse>| <C-RightMouse>    same as "CTRL-T"
420 |<Del>|         ["x]<Del>       2  same as "x"
421 |N<Del>|        {count}<Del>       remove the last digit from {count}
422 |<Down>|        <Down>          1  same as "j"
423 |<End>|         <End>           1  same as "$"
424 |<F1>|          <F1>               same as <Help>
425 |<Help>|        <Help>             open a help window
426 |<Home>|        <Home>          1  same as "0"
427 |<Insert>|      <Insert>        2  same as "i"
428 |<Left>|        <Left>          1  same as "h"
429 |<LeftMouse>|   <LeftMouse>     1  move cursor to the mouse click position
430 |<MiddleMouse>| <MiddleMouse>   2  same as "gP" at the mouse click position
431 |<PageDown>|    <PageDown>         same as CTRL-F
432 |<PageUp>|      <PageUp>           same as CTRL-B
433 |<Right>|       <Right>         1  same as "l"
434 |<RightMouse>|  <RightMouse>       start Visual mode, move cursor to the mouse
435                                    click position
436 |<S-Down>|      <S-Down>        1  same as CTRL-F
437 |<S-Left>|      <S-Left>        1  same as "b"
438 |<S-LeftMouse>| <S-LeftMouse>      same as "*" at the mouse click position
439 |<S-Right>|     <S-Right>       1  same as "w"
440 |<S-RightMouse>| <S-RightMouse>    same as "#" at the mouse click position
441 |<S-Up>|        <S-Up>          1  same as CTRL-B
442 |<Undo>|        <Undo>          2  same as "u"
443 |<Up>|          <Up>            1  same as "k"
444 |<MouseDown>|   <MouseDown>        scroll three lines downwards
445 |<S-MouseDown>| <S-MouseDown>      scroll a full page downwards
446 |<MouseUp>|     <MouseUp>          scroll three lines upwards
447 |<S-MouseUp>|   <S-MouseUp>        scroll a full page upwards
449 ==============================================================================
450 2.1 Text objects                                                *objects*
452 These can be used after an operator or in Visual mode to select an object.
454 tag             command            action in Normal mode        ~
455 ------------------------------------------------------------------------------
456 |v_aquote|      a"                 double quoted string
457 |v_a'|          a'                 single quoted string
458 |v_a(|          a(                 same as ab
459 |v_a)|          a)                 same as ab
460 |v_a<|          a<                 "a <>" from '<' to the matching '>'
461 |v_a>|          a>                 same as a<
462 |v_aB|          aB                 "a Block" from "[{" to "]}" (with brackets)
463 |v_aW|          aW                 "a WORD" (with white space)
464 |v_a[|          a[                 "a []" from '[' to the matching ']'
465 |v_a]|          a]                 same as a[
466 |v_a`|          a`                 string in backticks
467 |v_ab|          ab                 "a block" from "[(" to "])" (with braces)
468 |v_ap|          ap                 "a paragraph" (with white space)
469 |v_as|          as                 "a sentence" (with white space)
470 |v_at|          at                 "a tag block" (with white space)
471 |v_aw|          aw                 "a word" (with white space)
472 |v_a{|          a{                 same as aB
473 |v_a}|          a}                 same as aB
474 |v_iquote|      i"                 double quoted string without the quotes
475 |v_i'|          i'                 single quoted string without the quotes
476 |v_i(|          i(                 same as ib
477 |v_i)|          i)                 same as ib
478 |v_i<|          i<                 "inner <>" from '<' to the matching '>'
479 |v_i>|          i>                 same as i<
480 |v_iB|          iB                 "inner Block" from "[{" and "]}"
481 |v_iW|          iW                 "inner WORD"
482 |v_i[|          i[                 "inner []" from '[' to the matching ']'
483 |v_i]|          i]                 same as i[
484 |v_i`|          i`                 string in backticks without the backticks
485 |v_ib|          ib                 "inner block" from "[(" to "])"
486 |v_ip|          ip                 "inner paragraph"
487 |v_is|          is                 "inner sentence"
488 |v_it|          it                 "inner tag block"
489 |v_iw|          iw                 "inner word"
490 |v_i{|          i{                 same as iB
491 |v_i}|          i}                 same as iB
493 ==============================================================================
494 2.2 Window commands                                             *CTRL-W*
496 tag             command            action in Normal mode        ~
497 ------------------------------------------------------------------------------
498 |CTRL-W_CTRL-B| CTRL-W CTRL-B      same as "CTRL-W b"
499 |CTRL-W_CTRL-C| CTRL-W CTRL-C      same as "CTRL-W c"
500 |CTRL-W_CTRL-D| CTRL-W CTRL-D      same as "CTRL-W d"
501 |CTRL-W_CTRL-F| CTRL-W CTRL-F      same as "CTRL-W f"
502                 CTRL-W CTRL-G      same as "CTRL-W g .."
503 |CTRL-W_CTRL-H| CTRL-W CTRL-H      same as "CTRL-W h"
504 |CTRL-W_CTRL-I| CTRL-W CTRL-I      same as "CTRL-W i"
505 |CTRL-W_CTRL-J| CTRL-W CTRL-J      same as "CTRL-W j"
506 |CTRL-W_CTRL-K| CTRL-W CTRL-K      same as "CTRL-W k"
507 |CTRL-W_CTRL-L| CTRL-W CTRL-L      same as "CTRL-W l"
508 |CTRL-W_CTRL-N| CTRL-W CTRL-N      same as "CTRL-W n"
509 |CTRL-W_CTRL-O| CTRL-W CTRL-O      same as "CTRL-W o"
510 |CTRL-W_CTRL-P| CTRL-W CTRL-P      same as "CTRL-W p"
511 |CTRL-W_CTRL-Q| CTRL-W CTRL-Q      same as "CTRL-W q"
512 |CTRL-W_CTRL-R| CTRL-W CTRL-R      same as "CTRL-W r"
513 |CTRL-W_CTRL-S| CTRL-W CTRL-S      same as "CTRL-W s"
514 |CTRL-W_CTRL-T| CTRL-W CTRL-T      same as "CTRL-W t"
515 |CTRL-W_CTRL-V| CTRL-W CTRL-V      same as "CTRL-W v"
516 |CTRL-W_CTRL-W| CTRL-W CTRL-W      same as "CTRL-W w"
517 |CTRL-W_CTRL-X| CTRL-W CTRL-X      same as "CTRL-W x"
518 |CTRL-W_CTRL-Z| CTRL-W CTRL-Z      same as "CTRL-W z"
519 |CTRL-W_CTRL-]| CTRL-W CTRL-]      same as "CTRL-W ]"
520 |CTRL-W_CTRL-^| CTRL-W CTRL-^      same as "CTRL-W ^"
521 |CTRL-W_CTRL-_| CTRL-W CTRL-_      same as "CTRL-W _"
522 |CTRL-W_+|      CTRL-W +           increase current window height N lines
523 |CTRL-W_-|      CTRL-W -           decrease current window height N lines
524 |CTRL-W_<|      CTRL-W <           decrease current window width N columns
525 |CTRL-W_=|      CTRL-W =           make all windows the same height & width
526 |CTRL-W_>|      CTRL-W >           increase current window width N columns
527 |CTRL-W_H|      CTRL-W H           move current window to the far left
528 |CTRL-W_J|      CTRL-W J           move current window to the very bottom
529 |CTRL-W_K|      CTRL-W K           move current window to the very top
530 |CTRL-W_L|      CTRL-W L           move current window to the far right
531 |CTRL-W_P|      CTRL-W P           go to preview window
532 |CTRL-W_R|      CTRL-W R           rotate windows upwards N times
533 |CTRL-W_S|      CTRL-W S           same as "CTRL-W s"
534 |CTRL-W_T|      CTRL-W T           move current window to a new tab page
535 |CTRL-W_W|      CTRL-W W           go to N previous window (wrap around)
536 |CTRL-W_]|      CTRL-W ]           split window and jump to tag under cursor
537 |CTRL-W_^|      CTRL-W ^           split current window and edit alternate
538                                    file N
539 |CTRL-W__|      CTRL-W _           set current window height to N (default:
540                                    very high)
541 |CTRL-W_b|      CTRL-W b           go to bottom window
542 |CTRL-W_c|      CTRL-W c           close current window (like |:close|)
543 |CTRL-W_d|      CTRL-W d           split window and jump to definition under
544                                    the cursor
545 |CTRL-W_f|      CTRL-W f           split window and edit file name under the
546                                    cursor
547 |CTRL-W_F|      CTRL-W F           split window and edit file name under the
548                                    cursor and jump to the line number
549                                    following the file name.
550 |CTRL-W_g_CTRL-]| CTRL-W g CTRL-]  split window and do |:tjump| to tag under
551                                    cursor
552 |CTRL-W_g]|     CTRL-W g ]         split window and do |:tselect| for tag
553                                    under cursor
554 |CTRL-W_g}|     CTRL-W g }         do a |:ptjump| to the tag under the cursor
555 |CTRL-W_gf|     CTRL-W g f         edit file name under the cursor in a new
556                                    tab page
557 |CTRL-W_gF|     CTRL-W g F         edit file name under the cursor in a new
558                                    tab page and jump to the line number
559                                    following the file name.
560 |CTRL-W_h|      CTRL-W h           go to Nth left window (stop at first window)
561 |CTRL-W_i|      CTRL-W i           split window and jump to declaration of
562                                    identifier under the cursor
563 |CTRL-W_j|      CTRL-W j           go N windows down (stop at last window)
564 |CTRL-W_k|      CTRL-W k           go N windows up (stop at first window)
565 |CTRL-W_l|      CTRL-W l           go to Nth right window (stop at last window)
566 |CTRL-W_n|      CTRL-W n           open new window, N lines high
567 |CTRL-W_o|      CTRL-W o           close all but current window (like |:only|)
568 |CTRL-W_p|      CTRL-W p           go to previous (last accessed) window
569 |CTRL-W_q|      CTRL-W q           quit current window (like |:quit|)
570 |CTRL-W_r|      CTRL-W r           rotate windows downwards N times
571 |CTRL-W_s|      CTRL-W s           split current window in two parts, new
572                                    window N lines high
573 |CTRL-W_t|      CTRL-W t           go to top window
574 |CTRL-W_v|      CTRL-W v           split current window vertically, new window
575                                    N columns wide
576 |CTRL-W_w|      CTRL-W w           go to N next window (wrap around)
577 |CTRL-W_x|      CTRL-W x           exchange current window with window N
578                                    (default: next window)
579 |CTRL-W_z|      CTRL-W z           close preview window
580 |CTRL-W_bar|    CTRL-W |           set window width to N columns
581 |CTRL-W_}|      CTRL-W }           show tag under cursor in preview window
582 |CTRL-W_<Down>| CTRL-W <Down>      same as "CTRL-W j"
583 |CTRL-W_<Up>|   CTRL-W <Up>        same as "CTRL-W k"
584 |CTRL-W_<Left>| CTRL-W <Left>      same as "CTRL-W h"
585 |CTRL-W_<Right>| CTRL-W <Right>    same as "CTRL-W l"
587 ==============================================================================
588 2.3 Square bracket commands                                     *[* *]*
590 tag             char          note action in Normal mode        ~
591 ------------------------------------------------------------------------------
592 |[_CTRL-D|      [ CTRL-D           jump to first #define found in current and
593                                    included files matching the word under the
594                                    cursor, start searching at beginning of
595                                    current file
596 |[_CTRL-I|      [ CTRL-I           jump to first line in current and included
597                                    files that contains the word under the
598                                    cursor, start searching at beginning of
599                                    current file
600 |[#|            [#              1  cursor to N previous unmatched #if, #else
601                                    or #ifdef
602 |['|            ['              1  cursor to previous lowercase mark, on first
603                                    non-blank
604 |[(|            [(              1  cursor N times back to unmatched '('
605 |[star|         [*              1  same as "[/"
606 |[`|            [`              1  cursor to previous lowercase mark
607 |[/|            [/              1  cursor to N previous start of a C comment
608 |[D|            [D                 list all defines found in current and
609                                    included files matching the word under the
610                                    cursor, start searching at beginning of
611                                    current file
612 |[I|            [I                 list all lines found in current and
613                                    included files that contain the word under
614                                    the cursor, start searching at beginning of
615                                    current file
616 |[P|            [P              2  same as "[p"
617 |[[|            [[              1  cursor N sections backward
618 |[]|            []              1  cursor N SECTIONS backward
619 |[c|            [c              1  cursor N times backwards to start of change
620 |[d|            [d                 show first #define found in current and
621                                    included files matching the word under the
622                                    cursor, start searching at beginning of
623                                    current file
624 |[f|            [f                 same as "gf"
625 |[i|            [i                 show first line found in current and
626                                    included files that contains the word under
627                                    the cursor, start searching at beginning of
628                                    current file
629 |[m|            [m              1  cursor N times back to start of member
630                                    function
631 |[p|            [p              2  like "P", but adjust indent to current line
632 |[s|            [s              1  move to the previous misspelled word
633 |[z|            [z              1  move to start of open fold
634 |[{|            [{              1  cursor N times back to unmatched '{'
635 |[<MiddleMouse> [<MiddleMouse>  2  same as "[p"
637 |]_CTRL-D|      ] CTRL-D           jump to first #define found in current and
638                                    included files matching the word under the
639                                    cursor, start searching at cursor position
640 |]_CTRL-I|      ] CTRL-I           jump to first line in current and included
641                                    files that contains the word under the
642                                    cursor, start searching at cursor position
643 |]#|            ]#              1  cursor to N next unmatched #endif or #else
644 |]'|            ]'              1  cursor to next lowercase mark, on first
645                                    non-blank
646 |])|            ])              1  cursor N times forward to unmatched ')'
647 |]star|         ]*              1  same as "]/"
648 |]`|            ]`              1  cursor to next lowercase mark
649 |]/|            ]/              1  cursor to N next end of a C comment
650 |]D|            ]D                 list all #defines found in current and
651                                    included files matching the word under the
652                                    cursor, start searching at cursor position
653 |]I|            ]I                 list all lines found in current and
654                                    included files that contain the word under
655                                    the cursor, start searching at cursor
656                                    position
657 |]P|            ]P              2  same as "[p"
658 |][|            ][              1  cursor N SECTIONS forward
659 |]]|            ]]              1  cursor N sections forward
660 |]c|            ]c              1  cursor N times forward to start of change
661 |]d|            ]d                 show first #define found in current and
662                                    included files matching the word under the
663                                    cursor, start searching at cursor position
664 |]f|            ]f                 same as "gf"
665 |]i|            ]i                 show first line found in current and
666                                    included files that contains the word under
667                                    the cursor, start searching at cursor
668                                    position
669 |]m|            ]m              1  cursor N times forward to end of member
670                                    function
671 |]p|            ]p              2  like "p", but adjust indent to current line
672 |]s|            ]s              1  move to next misspelled word
673 |]z|            ]z              1  move to end of open fold
674 |]}|            ]}              1  cursor N times forward to unmatched '}'
675 |]<MiddleMouse> ]<MiddleMouse>  2  same as "]p"
677 ==============================================================================
678 2.4 Commands starting with 'g'                                          *g*
680 tag             char          note action in Normal mode        ~
681 ------------------------------------------------------------------------------
682 |g_CTRL-A|      g CTRL-A           only when compiled with MEM_PROFILE
683                                    defined: dump a memory profile
684 |g_CTRL-G|      g CTRL-G           show information about current cursor
685                                    position
686 |g_CTRL-H|      g CTRL-H           start Select block mode
687 |g_CTRL-]|      g CTRL-]           |:tjump| to the tag under the cursor
688 |g#|            g#              1  like "#", but without using "\<" and "\>"
689 |g$|            g$              1  when 'wrap' off go to rightmost character of
690                                    the current line that is on the screen;
691                                    when 'wrap' on go to the rightmost character
692                                    of the current screen line
693 |g&|            g&              2  repeat last ":s" on all lines
694 |g'|            g'{mark}        1  like |'| but without changing the jumplist
695 |g`|            g`{mark}        1  like |`| but without changing the jumplist
696 |gstar|         g*              1  like "*", but without using "\<" and "\>"
697 |g0|            g0              1  when 'wrap' off go to leftmost character of
698                                    the current line that is on the screen;
699                                    when 'wrap' on go to the leftmost character
700                                    of the current screen line
701 |g8|            g8                 print hex value of bytes used in UTF-8
702                                    character under the cursor
703 |g<|            g<                 display previous command output
704 |g?|            g?              2  Rot13 encoding operator
705 |g?g?|          g??             2  Rot13 encode current line
706 |g?g?|          g?g?            2  Rot13 encode current line
707 |gD|            gD              1  go to definition of word under the cursor
708                                    in current file
709 |gE|            gE              1  go backwards to the end of the previous
710                                    WORD
711 |gH|            gH                 start Select line mode
712 |gI|            gI              2  like "I", but always start in column 1
713 |gJ|            gJ              2  join lines without inserting space
714 |gP|            ["x]gP          2  put the text [from register x] before the
715                                    cursor N times, leave the cursor after it
716 |gR|            gR              2  enter Virtual Replace mode
717 |gU|            gU{motion}      2  make Nmove text uppercase
718 |gV|            gV                 don't reselect the previous Visual area
719                                    when executing a mapping or menu in Select
720                                    mode
721 |g]|            g]                 :tselect on the tag under the cursor
722 |g^|            g^              1  when 'wrap' off go to leftmost non-white
723                                    character of the current line that is on
724                                    the screen; when 'wrap' on go to the
725                                    leftmost non-white character of the current
726                                    screen line
727 |ga|            ga                 print ascii value of character under the
728                                    cursor
729 |gd|            gd              1  go to definition of word under the cursor
730                                    in current function
731 |ge|            ge              1  go backwards to the end of the previous
732                                    word
733 |gf|            gf                 start editing the file whose name is under
734                                    the cursor
735 |gF|            gF                 start editing the file whose name is under
736                                    the cursor and jump to the line number
737                                    following the filename.
738 |gg|            gg              1  cursor to line N, default first line
739 |gh|            gh                 start Select mode
740 |gi|            gi              2  like "i", but first move to the |'^| mark
741 |gj|            gj              1  like "j", but when 'wrap' on go N screen
742                                    lines down
743 |gk|            gk              1  like "k", but when 'wrap' on go N screen
744                                    lines up
745 |gm|            gm              1  go to character at middle of the screenline
746 |go|            go              1  cursor to byte N in the buffer
747 |gp|            ["x]gp          2  put the text [from register x] after the
748                                    cursor N times, leave the cursor after it
749 |gq|            gq{motion}      2  format Nmove text
750 |gr|            gr{char}        2  virtual replace N chars with {char}
751 |gs|            gs                 go to sleep for N seconds (default 1)
752 |gu|            gu{motion}      2  make Nmove text lowercase
753 |gv|            gv                 reselect the previous Visual area
754 |gw|            gw{motion}      2  format Nmove text and keep cursor
755 |netrw-gx|      gx                 execute application for file name under the
756                                    cursor (only with |netrw| plugin)
757 |g@|            g@{motion}         call 'operatorfunc'
758 |g~|            g~{motion}      2  swap case for Nmove text
759 |g<Down>|       g<Down>         1  same as "gj"
760 |g<End>|        g<End>          1  same as "g$"
761 |g<Home>|       g<Home>         1  same as "g0"
762 |g<LeftMouse>|  g<LeftMouse>       same as <C-LeftMouse>
763                 g<MiddleMouse>     same as <C-MiddleMouse>
764 |g<RightMouse>| g<RightMouse>      same as <C-RightMouse>
765 |g<Up>|         g<Up>           1  same as "gk"
767 ==============================================================================
768 2.5 Commands starting with 'z'                                          *z*
770 tag             char          note action in Normal mode        ~
771 ------------------------------------------------------------------------------
772 |z<CR>|         z<CR>              redraw, cursor line to top of window,
773                                    cursor on first non-blank
774 |zN<CR>|        z{height}<CR>      redraw, make window {height} lines high
775 |z+|            z+                 cursor on line N (default line below
776                                    window), otherwise like "z<CR>"
777 |z-|            z-                 redraw, cursor line at bottom of window,
778                                    cursor on first non-blank
779 |z.|            z.                 redraw, cursor line to center of window,
780                                    cursor on first non-blank
781 |z=|            z=                 give spelling suggestions
782 |zA|            zA                 open a closed fold or close an open fold
783                                    recursively
784 |zC|            zC                 close folds recursively
785 |zD|            zD                 delete folds recursively
786 |zE|            zE                 eliminate all folds
787 |zF|            zF                 create a fold for N lines
788 |zG|            zG                 mark word as good spelled word
789 |zM|            zM                 set 'foldlevel' to zero
790 |zN|            zN                 set 'foldenable'
791 |zO|            zO                 open folds recursively
792 |zR|            zR                 set 'foldlevel' to the deepest fold
793 |zW|            zW                 mark word as wrong (bad) spelled word
794 |zX|            zX                 re-apply 'foldlevel'
795 |z^|            z^                 cursor on line N (default line above
796                                    window), otherwise like "z-"
797 |za|            za                 open a closed fold, close an open fold
798 |zb|            zb                 redraw, cursor line at bottom of window
799 |zc|            zc                 close a fold
800 |zd|            zd                 delete a fold
801 |ze|            ze                 when 'wrap' off scroll horizontally to
802                                    position the cursor at the end (right side)
803                                    of the screen
804 |zf|            zf{motion}         create a fold for Nmove text
805 |zg|            zg                 mark word as good spelled word
806 |zh|            zh                 when 'wrap' off scroll screen N characters
807                                    to the right
808 |zi|            zi                 toggle 'foldenable'
809 |zj|            zj              1  move to the start of the next fold
810 |zk|            zk              1  move to the end of the previous fold
811 |zl|            zl                 when 'wrap' off scroll screen N characters
812                                    to the left
813 |zm|            zm                 subtract one from 'foldlevel'
814 |zn|            zn                 reset 'foldenable'
815 |zo|            zo                 open fold
816 |zr|            zr                 add one to 'foldlevel'
817 |zs|            zs                 when 'wrap' off scroll horizontally to
818                                    position the cursor at the start (left
819                                    side) of the screen
820 |zt|            zt                 redraw, cursor line at top of window
821 |zv|            zv                 open enough folds to view the cursor line
822 |zw|            zw                 mark word as wrong (bad) spelled word
823 |zx|            zx                 re-apply 'foldlevel' and do "zv"
824 |zz|            zz                 redraw, cursor line at center of window
825 |z<Left>|       z<Left>            same as "zh"
826 |z<Right>|      z<Right>           same as "zl"
828 ==============================================================================
829 3. Visual mode                                          *visual-index*
831 Most commands in Visual mode are the same as in Normal mode.  The ones listed
832 here are those that are different.
834 tag             command       note action in Visual mode        ~
835 ------------------------------------------------------------------------------
836 |v_CTRL-\_CTRL-N| CTRL-\ CTRL-N    stop Visual mode
837 |v_CTRL-\_CTRL-G| CTRL-\ CTRL-G    go to mode specified with 'insertmode'
838 |v_CTRL-C|      CTRL-C             stop Visual mode
839 |v_CTRL-G|      CTRL-G             toggle between Visual mode and Select mode
840 |v_<BS>|        <BS>            2  Select mode: delete highlighted area
841 |v_CTRL-H|      CTRL-H          2  same as <BS>
842 |v_CTRL-O|      CTRL-O             switch from Select to Visual mode for one
843                                    command
844 |v_CTRL-V|      CTRL-V             make Visual mode blockwise or stop Visual
845                                    mode
846 |v_<Esc>|       <Esc>              stop Visual mode
847 |v_CTRL-]|      CTRL-]             jump to highlighted tag
848 |v_!|           !{filter}       2  filter the highlighted lines through the
849                                    external command {filter}
850 |v_:|           :                  start a command-line with the highlighted
851                                    lines as a range
852 |v_<|           <               2  shift the highlighted lines one
853                                    'shiftwidth' left
854 |v_=|           =               2  filter the highlighted lines through the
855                                    external program given with the 'equalprg'
856                                    option
857 |v_>|           >               2  shift the highlighted lines one
858                                    'shiftwidth' right
859 |v_b_A|         A               2  block mode: append same text in all lines,
860                                    after the highlighted area
861 |v_C|           C               2  delete the highlighted lines and start
862                                    insert
863 |v_D|           D               2  delete the highlighted lines
864 |v_b_I|         I               2  block mode: insert same text in all lines,
865                                    before the highlighted area
866 |v_J|           J               2  join the highlighted lines
867 |v_K|           K                  run 'keywordprg' on the highlighted area
868 |v_O|           O                  Move horizontally to other corner of area.
869                 Q                  does not start Ex mode
870 |v_R|           R               2  delete the highlighted lines and start
871                                    insert
872 |v_S|           S               2  delete the highlighted lines and start
873                                    insert
874 |v_U|           U               2  make highlighted area uppercase
875 |v_V|           V                  make Visual mode linewise or stop Visual
876                                    mode
877 |v_X|           X               2  delete the highlighted lines
878 |v_Y|           Y                  yank the highlighted lines
879 |v_aquote|      a"                 extend highlighted area with a double
880                                    quoted string
881 |v_a'|          a'                 extend highlighted area with a single
882                                    quoted string
883 |v_a(|          a(                 same as ab
884 |v_a)|          a)                 same as ab
885 |v_a<|          a<                 extend highlighted area with a <> block
886 |v_a>|          a>                 same as a<
887 |v_aB|          aB                 extend highlighted area with a {} block
888 |v_aW|          aW                 extend highlighted area with "a WORD"
889 |v_a[|          a[                 extend highlighted area with a [] block
890 |v_a]|          a]                 same as a[
891 |v_a`|          a`                 extend highlighted area with a backtick
892                                    quoted string
893 |v_ab|          ab                 extend highlighted area with a () block
894 |v_ap|          ap                 extend highlighted area with a paragraph
895 |v_as|          as                 extend highlighted area with a sentence
896 |v_at|          at                 extend highlighted area with a tag block
897 |v_aw|          aw                 extend highlighted area with "a word"
898 |v_a{|          a{                 same as aB
899 |v_a}|          a}                 same as aB
900 |v_c|           c               2  delete highlighted area and start insert
901 |v_d|           d               2  delete highlighted area
902 |v_gJ|          gJ              2  join the highlighted lines without
903                                    inserting spaces
904 |v_gq|          gq              2  format the highlighted lines
905 |v_gv|          gv                 exchange current and previous highlighted
906                                    area
907 |v_iquote|      i"                 extend highlighted area with a double
908                                    quoted string (without quotes)
909 |v_i'|          i'                 extend highlighted area with a single
910                                    quoted string (without quotes)
911 |v_i(|          i(                 same as ib
912 |v_i)|          i)                 same as ib
913 |v_i<|          i<                 extend highlighted area with inner <> block
914 |v_i>|          i>                 same as i<
915 |v_iB|          iB                 extend highlighted area with inner {} block
916 |v_iW|          iW                 extend highlighted area with "inner WORD"
917 |v_i[|          i[                 extend highlighted area with inner [] block
918 |v_i]|          i]                 same as i[
919 |v_i`|          i`                 extend highlighted area with a backtick
920                                    quoted string (without the backticks)
921 |v_ib|          ib                 extend highlighted area with inner () block
922 |v_ip|          ip                 extend highlighted area with inner paragraph
923 |v_is|          is                 extend highlighted area with inner sentence
924 |v_it|          it                 extend highlighted area with inner tag block
925 |v_iw|          iw                 extend highlighted area with "inner word"
926 |v_i{|          i{                 same as iB
927 |v_i}|          i}                 same as iB
928 |v_o|           o                  move cursor to other corner of area
929 |v_r|           r               2  delete highlighted area and start insert
930 |v_s|           s               2  delete highlighted area and start insert
931 |v_u|           u               2  make highlighted area lowercase
932 |v_v|           v                  make Visual mode characterwise or stop
933                                    Visual mode
934 |v_x|           x               2  delete the highlighted area
935 |v_y|           y                  yank the highlighted area
936 |v_~|           ~               2  swap case for the highlighted area
938 ==============================================================================
939 4. Command-line editing                                 *ex-edit-index*
941 Get to the command-line with the ':', '!', '/' or '?' commands.
942 Normal characters are inserted at the current cursor position.
943 "Completion" below refers to context-sensitive completion.  It will complete
944 file names, tags, commands etc. as appropriate.
946                 CTRL-@          not used
947 |c_CTRL-A|      CTRL-A          do completion on the pattern in front of the
948                                 cursor and insert all matches
949 |c_CTRL-B|      CTRL-B          cursor to begin of command-line
950 |c_CTRL-C|      CTRL-C          same as <ESC>
951 |c_CTRL-D|      CTRL-D          list completions that match the pattern in
952                                 front of the cursor
953 |c_CTRL-E|      CTRL-E          cursor to end of command-line
954 |'cedit'|       CTRL-F          default value for 'cedit': opens the
955                                 command-line window; otherwise not used
956                 CTRL-G          not used
957 |c_<BS>|        <BS>            delete the character in front of the cursor
958 |c_digraph|     {char1} <BS> {char2}
959                                 enter digraph when 'digraph' is on
960 |c_CTRL-H|      CTRL-H          same as <BS>
961 |c_<Tab>|       <Tab>           if 'wildchar' is <Tab>: Do completion on
962                                 the pattern in front of the cursor
963 |c_<S-Tab>|     <S-Tab>         same as CTRL-P
964 |c_wildchar|    'wildchar'      Do completion on the pattern in front of the
965                                 cursor (default: <Tab>)
966 |c_CTRL-I|      CTRL-I          same as <Tab>
967 |c_<NL>|        <NL>            same as <CR>
968 |c_CTRL-J|      CTRL-J          same as <CR>
969 |c_CTRL-K|      CTRL-K {char1} {char2}
970                                 enter digraph
971 |c_CTRL-L|      CTRL-L          do completion on the pattern in front of the
972                                 cursor and insert the longest common part
973 |c_<CR>|        <CR>            execute entered command
974 |c_<CR>|        CTRL-M          same as <CR>
975 |c_CTRL-N|      CTRL-N          after using 'wildchar' with multiple matches:
976                                 go to next match, otherwise: same as <Down>
977                 CTRL-O          not used
978 |c_CTRL-P|      CTRL-P          after using 'wildchar' with multiple matches:
979                                 go to previous match, otherwise: same as <Up>
980 |c_CTRL-Q|      CTRL-Q          same as CTRL-V, unless it's used for terminal
981                                 control flow
982 |c_CTRL-R|      CTRL-R {0-9a-z"%#*:= CTRL-F CTRL-P CTRL-W CTRL-A}
983                                 insert the contents of a register or object
984                                 under the cursor as if typed
985 |c_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:= CTRL-F CTRL-P CTRL-W CTRL-A}
986                                 insert the contents of a register or object
987                                 under the cursor literally
988                 CTRL-S          (used for terminal control flow)
989                 CTRL-T          not used
990 |c_CTRL-U|      CTRL-U          remove all characters
991 |c_CTRL-V|      CTRL-V          insert next non-digit literally, insert three
992                                 digit decimal number as a single byte.
993 |c_CTRL-W|      CTRL-W          delete the word in front of the cursor
994                 CTRL-X          not used (reserved for completion)
995                 CTRL-Y          copy (yank) modeless selection
996                 CTRL-Z          not used (reserved for suspend)
997 |c_<Esc>|       <Esc>           abandon command-line without executing it
998 |c_<Esc>|       CTRL-[          same as <Esc>
999 |c_CTRL-\_CTRL-N| CTRL-\ CTRL-N  go to Normal mode, abandon command-line
1000 |c_CTRL-\_CTRL-G| CTRL-\ CTRL-G  go to mode specified with 'insertmode',
1001                                 abandon command-line
1002                 CTRL-\ a - d    reserved for extensions
1003 |c_CTRL-\_e|    CTRL-\ e {expr} replace the command line with the result of
1004                                 {expr}
1005                 CTRL-\ f - z    reserved for extensions
1006                 CTRL-\ others   not used
1007 |c_CTRL-]|      CTRL-]          trigger abbreviation
1008 |c_CTRL-^|      CTRL-^          toggle use of |:lmap| mappings
1009 |c_CTRL-_|      CTRL-_          when 'allowrevins' set: change language
1010                                 (Hebrew, Farsi)
1011 |c_<Del>|       <Del>           delete the character under the cursor
1013 |c_<Left>|      <Left>          cursor left
1014 |c_<S-Left>|    <S-Left>        cursor one word left
1015 |c_<C-Left>|    <C-Left>        cursor one word left
1016 |c_<Right>|     <Right>         cursor right
1017 |c_<S-Right>|   <S-Right>       cursor one word right
1018 |c_<C-Right>|   <C-Right>       cursor one word right
1019 |c_<Up>|        <Up>            recall previous command-line from history that
1020                                 matches pattern in front of the cursor
1021 |c_<S-Up>|      <S-Up>          recall previous command-line from history
1022 |c_<Down>|      <Down>          recall next command-line from history that
1023                                 matches pattern in front of the cursor
1024 |c_<S-Down>|    <S-Down>        recall next command-line from history
1025 |c_<Home>|      <Home>          cursor to start of command-line
1026 |c_<End>|       <End>           cursor to end of command-line
1027 |c_<PageDown>|  <PageDown>      same as <S-Down>
1028 |c_<PageUp>|    <PageUp>        same as <S-Up>
1029 |c_<Insert>|    <Insert>        toggle insert/overstrike mode
1030 |c_<LeftMouse>| <LeftMouse>     cursor at mouse click
1032 You found it, Arthur!                           *holy-grail*
1034 ==============================================================================
1035 5. EX commands                                  *ex-cmd-index* *:index*
1037 This is a brief but complete listing of all the ":" commands, without
1038 mentioning any arguments.  The optional part of the command name is inside [].
1039 The commands are sorted on the non-optional part of their name.
1041 |:!|            :!              filter lines or execute an external command
1042 |:!!|           :!!             repeat last ":!" command
1043 |:#|            :#              same as ":number"
1044 |:&|            :&              repeat last ":substitute"
1045 |:star|         :*              execute contents of a register
1046 |:<|            :<              shift lines one 'shiftwidth' left
1047 |:=|            :=              print the cursor line number
1048 |:>|            :>              shift lines one 'shiftwidth' right
1049 |:@|            :@              execute contents of a register
1050 |:@@|           :@@             repeat the previous ":@"
1051 |:Next|         :N[ext]         go to previous file in the argument list
1052 |:Print|        :P[rint]        print lines
1053 |:X|            :X              ask for encryption key
1054 |:append|       :a[ppend]       append text
1055 |:abbreviate|   :ab[breviate]   enter abbreviation
1056 |:abclear|      :abc[lear]      remove all abbreviations
1057 |:aboveleft|    :abo[veleft]    make split window appear left or above
1058 |:all|          :al[l]          open a window for each file in the argument
1059                                 list
1060 |:amenu|        :am[enu]        enter new menu item for all modes
1061 |:anoremenu|    :an[oremenu]    enter a new menu for all modes that will not
1062                                 be remapped
1063 |:args|         :ar[gs]         print the argument list
1064 |:argadd|       :arga[dd]       add items to the argument list
1065 |:argdelete|    :argd[elete]    delete items from the argument list
1066 |:argedit|      :arge[dit]      add item to the argument list and edit it
1067 |:argdo|        :argdo          do a command on all items in the argument list
1068 |:argglobal|    :argg[lobal]    define the global argument list
1069 |:arglocal|     :argl[ocal]     define a local argument list
1070 |:argument|     :argu[ment]     go to specific file in the argument list
1071 |:ascii|        :as[cii]        print ascii value of character under the cursor
1072 |:autocmd|      :au[tocmd]      enter or show autocommands
1073 |:augroup|      :aug[roup]      select the autocommand group to use
1074 |:aunmenu|      :aun[menu]      remove menu for all modes
1075 |:buffer|       :b[uffer]       go to specific buffer in the buffer list
1076 |:bNext|        :bN[ext]        go to previous buffer in the buffer list
1077 |:ball|         :ba[ll]         open a window for each buffer in the buffer list
1078 |:badd|         :bad[d]         add buffer to the buffer list
1079 |:bdelete|      :bd[elete]      remove a buffer from the buffer list
1080 |:behave|       :be[have]       set mouse and selection behavior
1081 |:belowright|   :bel[owright]   make split window appear right or below
1082 |:bfirst|       :bf[irst]       go to first buffer in the buffer list
1083 |:blast|        :bl[ast]        go to last buffer in the buffer list
1084 |:bmodified|    :bm[odified]    go to next buffer in the buffer list that has
1085                                 been modified
1086 |:bnext|        :bn[ext]        go to next buffer in the buffer list
1087 |:botright|     :bo[tright]     make split window appear at bottom or far right
1088 |:bprevious|    :bp[revious]    go to previous buffer in the buffer list
1089 |:brewind|      :br[ewind]      go to first buffer in the buffer list
1090 |:break|        :brea[k]        break out of while loop
1091 |:breakadd|     :breaka[dd]     add a debugger breakpoint
1092 |:breakdel|     :breakd[el]     delete a debugger breakpoint
1093 |:breaklist|    :breakl[ist]    list debugger breakpoints
1094 |:browse|       :bro[wse]       use file selection dialog
1095 |:bufdo|        :bufdo          execute command in each listed buffer
1096 |:buffers|      :buffers        list all files in the buffer list
1097 |:bunload|      :bun[load]      unload a specific buffer
1098 |:bwipeout|     :bw[ipeout]     really delete a buffer
1099 |:change|       :c[hange]       replace a line or series of lines
1100 |:cNext|        :cN[ext]        go to previous error
1101 |:cNfile|       :cNf[ile]       go to last error in previous file
1102 |:cabbrev|      :ca[bbrev]      like ":abbreviate" but for Command-line mode
1103 |:cabclear|     :cabc[lear]     clear all abbreviations for Command-line mode
1104 |:caddbuffer|   :caddb[uffer]   add errors from buffer
1105 |:caddexpr|     :cad[dexpr]     add errors from expr
1106 |:caddfile|     :caddf[ile]     add error message to current quickfix list
1107 |:call|         :cal[l]         call a function
1108 |:catch|        :cat[ch]        part of a :try command
1109 |:cbuffer|      :cb[uffer]      parse error messages and jump to first error
1110 |:cc|           :cc             go to specific error
1111 |:cclose|       :ccl[ose]       close quickfix window
1112 |:cd|           :cd             change directory
1113 |:center|       :ce[nter]       format lines at the center
1114 |:cexpr|        :cex[pr]        read errors from expr and jump to first
1115 |:cfile|        :cf[ile]        read file with error messages and jump to first
1116 |:cfirst|       :cfir[st]       go to the specified error, default first one
1117 |:cgetbuffer|   :cgetb[uffer]   get errors from buffer
1118 |:cgetexpr|     :cgete[xpr]     get errors from expr
1119 |:cgetfile|     :cg[etfile]     read file with error messages
1120 |:changes|      :cha[nges]      print the change list
1121 |:chdir|        :chd[ir]        change directory
1122 |:checkpath|    :che[ckpath]    list included files
1123 |:checktime|    :checkt[ime]    check timestamp of loaded buffers
1124 |:clist|        :cl[ist]        list all errors
1125 |:clast|        :cla[st]        go to the specified error, default last one
1126 |:close|        :clo[se]        close current window
1127 |:cmap|         :cm[ap]         like ":map" but for Command-line mode
1128 |:cmapclear|    :cmapc[lear]    clear all mappings for Command-line mode
1129 |:cmenu|        :cme[nu]        add menu for Command-line mode
1130 |:cnext|        :cn[ext]        go to next error
1131 |:cnewer|       :cnew[er]       go to newer error list
1132 |:cnfile|       :cnf[ile]       go to first error in next file
1133 |:cnoremap|     :cno[remap]     like ":noremap" but for Command-line mode
1134 |:cnoreabbrev|  :cnorea[bbrev]  like ":noreabbrev" but for Command-line mode
1135 |:cnoremenu|    :cnoreme[nu]    like ":noremenu" but for Command-line mode
1136 |:copy|         :co[py]         copy lines
1137 |:colder|       :col[der]       go to older error list
1138 |:colorscheme|  :colo[rscheme]  load a specific color scheme
1139 |:command|      :com[mand]      create user-defined command
1140 |:comclear|     :comc[lear]     clear all user-defined commands
1141 |:compiler|     :comp[iler]     do settings for a specific compiler
1142 |:continue|     :con[tinue]     go back to :while
1143 |:confirm|      :conf[irm]      prompt user when confirmation required
1144 |:copen|        :cope[n]        open quickfix window
1145 |:cprevious|    :cp[revious]    go to previous error
1146 |:cpfile|       :cpf[ile]       go to last error in previous file
1147 |:cquit|        :cq[uit]        quit Vim with an error code
1148 |:crewind|      :cr[ewind]      go to the specified error, default first one
1149 |:cscope|       :cs[cope]       execute cscope command
1150 |:cstag|        :cst[ag]        use cscope to jump to a tag
1151 |:cunmap|       :cu[nmap]       like ":unmap" but for Command-line mode
1152 |:cunabbrev|    :cuna[bbrev]    like ":unabbrev" but for Command-line mode
1153 |:cunmenu|      :cunme[nu]      remove menu for Command-line mode
1154 |:cwindow|      :cw[indow]      open or close quickfix window
1155 |:delete|       :d[elete]       delete lines
1156 |:delmarks|     :delm[arks]     delete marks
1157 |:debug|        :deb[ug]        run a command in debugging mode
1158 |:debuggreedy|  :debugg[reedy]  read debug mode commands from normal input
1159 |:delcommand|   :delc[ommand]   delete user-defined command
1160 |:delfunction|  :delf[unction]  delete a user function
1161 |:diffupdate|   :dif[fupdate]   update 'diff' buffers
1162 |:diffget|      :diffg[et]      remove differences in current buffer
1163 |:diffoff|      :diffo[ff]      switch off diff mode
1164 |:diffpatch|    :diffp[atch]    apply a patch and show differences
1165 |:diffput|      :diffpu[t]      remove differences in other buffer
1166 |:diffsplit|    :diffs[plit]    show differences with another file
1167 |:diffthis|     :diffthis       make current window a diff window
1168 |:digraphs|     :dig[raphs]     show or enter digraphs
1169 |:display|      :di[splay]      display registers
1170 |:djump|        :dj[ump]        jump to #define
1171 |:dlist|        :dl[ist]        list #defines
1172 |:doautocmd|    :do[autocmd]    apply autocommands to current buffer
1173 |:doautoall|    :doautoa[ll]    apply autocommands for all loaded buffers
1174 |:drop|         :dr[op]         jump to window editing file or edit file in
1175                                 current window
1176 |:dsearch|      :ds[earch]      list one #define
1177 |:dsplit|       :dsp[lit]       split window and jump to #define
1178 |:edit|         :e[dit]         edit a file
1179 |:earlier|      :ea[rlier]      go to older change, undo
1180 |:echo|         :ec[ho]         echoes the result of expressions
1181 |:echoerr|      :echoe[rr]      like :echo, show like an error and use history
1182 |:echohl|       :echoh[l]       set highlighting for echo commands
1183 |:echomsg|      :echom[sg]      same as :echo, put message in history
1184 |:echon|        :echon          same as :echo, but without <EOL>
1185 |:else|         :el[se]         part of an :if command
1186 |:elseif|       :elsei[f]       part of an :if command
1187 |:emenu|        :em[enu]        execute a menu by name
1188 |:endif|        :en[dif]        end previous :if
1189 |:endfor|       :endfo[r]       end previous :for
1190 |:endfunction|  :endf[unction]  end of a user function
1191 |:endtry|       :endt[ry]       end previous :try
1192 |:endwhile|     :endw[hile]     end previous :while
1193 |:enew|         :ene[w]         edit a new, unnamed buffer
1194 |:ex|           :ex             same as ":edit"
1195 |:execute|      :exe[cute]      execute result of expressions
1196 |:exit|         :exi[t]         same as ":xit"
1197 |:exusage|      :exu[sage]      overview of Ex commands
1198 |:file|         :f[ile]         show or set the current file name
1199 |:files|        :files          list all files in the buffer list
1200 |:filetype|     :filet[ype]     switch file type detection on/off
1201 |:find|         :fin[d]         find file in 'path' and edit it
1202 |:finally|      :fina[lly]      part of a :try command
1203 |:finish|       :fini[sh]       quit sourcing a Vim script
1204 |:first|        :fir[st]        go to the first file in the argument list
1205 |:fixdel|       :fix[del]       set key code of <Del>
1206 |:fold|         :fo[ld]         create a fold
1207 |:foldclose|    :foldc[lose]    close folds
1208 |:folddoopen|   :foldd[oopen]   execute command on lines not in a closed fold
1209 |:folddoclosed| :folddoc[losed] execute command on lines in a closed fold
1210 |:foldopen|     :foldo[pen]     open folds
1211 |:for|          :for            for loop
1212 |:function|     :fu[nction]     define a user function
1213 |:global|       :g[lobal]       execute commands for matching lines
1214 |:goto|         :go[to]         go to byte in the buffer
1215 |:grep|         :gr[ep]         run 'grepprg' and jump to first match
1216 |:grepadd|      :grepa[dd]      like :grep, but append to current list
1217 |:gui|          :gu[i]          start the GUI
1218 |:gvim|         :gv[im]         start the GUI
1219 |:hardcopy|     :ha[rdcopy]     send text to the printer
1220 |:help|         :h[elp]         open a help window
1221 |:helpfind|     :helpf[ind]     dialog to open a help window
1222 |:helpgrep|     :helpg[rep]     like ":grep" but searches help files
1223 |:helptags|     :helpt[ags]     generate help tags for a directory
1224 |:highlight|    :hi[ghlight]    specify highlighting methods
1225 |:hide|         :hid[e]         hide current buffer for a command
1226 |:history|      :his[tory]      print a history list
1227 |:insert|       :i[nsert]       insert text
1228 |:iabbrev|      :ia[bbrev]      like ":abbrev" but for Insert mode
1229 |:iabclear|     :iabc[lear]     like ":abclear" but for Insert mode
1230 |:if|           :if             execute commands when condition met
1231 |:ijump|        :ij[ump]        jump to definition of identifier
1232 |:ilist|        :il[ist]        list lines where identifier matches
1233 |:imap|         :im[ap]         like ":map" but for Insert mode
1234 |:imapclear|    :imapc[lear]    like ":mapclear" but for Insert mode
1235 |:imenu|        :ime[nu]        add menu for Insert mode
1236 |:inoremap|     :ino[remap]     like ":noremap" but for Insert mode
1237 |:inoreabbrev|  :inorea[bbrev]  like ":noreabbrev" but for Insert mode
1238 |:inoremenu|    :inoreme[nu]    like ":noremenu" but for Insert mode
1239 |:intro|        :int[ro]        print the introductory message
1240 |:isearch|      :is[earch]      list one line where identifier matches
1241 |:isplit|       :isp[lit]       split window and jump to definition of
1242                                 identifier
1243 |:iunmap|       :iu[nmap]       like ":unmap" but for Insert mode
1244 |:iunabbrev|    :iuna[bbrev]    like ":unabbrev" but for Insert mode
1245 |:iunmenu|      :iunme[nu]      remove menu for Insert mode
1246 |:join|         :j[oin]         join lines
1247 |:jumps|        :ju[mps]        print the jump list
1248 |:k|            :k              set a mark
1249 |:keepalt|      :keepa[lt]      following command keeps the alternate file
1250 |:keepmarks|    :kee[pmarks]    following command keeps marks where they are
1251 |:keepjumps|    :keepj[jumps]   following command keeps jumplist and marks
1252 |:lNext|        :lN[ext]        go to previous entry in location list
1253 |:lNfile|       :lNf[ile]       go to last entry in previous file
1254 |:list|         :l[ist]         print lines
1255 |:laddexpr|     :lad[dexpr]     add locations from expr
1256 |:laddbuffer|   :laddb[uffer]   add locations from buffer
1257 |:laddfile|     :laddf[ile]     add locations to current location list
1258 |:last|         :la[st]         go to the last file in the argument list
1259 |:language|     :lan[guage]     set the language (locale)
1260 |:later|        :lat[er]        go to newer change, redo
1261 |:lbuffer|      :lb[uffer]      parse locations and jump to first location
1262 |:lcd|          :lc[d]          change directory locally
1263 |:lchdir|       :lch[dir]       change directory locally
1264 |:lclose|       :lcl[ose]       close location window
1265 |:lcscope|      :lcs[cope]      like ":cscope" but uses location list
1266 |:left|         :le[ft]         left align lines
1267 |:leftabove|    :lefta[bove]    make split window appear left or above
1268 |:let|          :let            assign a value to a variable or option
1269 |:lexpr|        :lex[pr]        read locations from expr and jump to first
1270 |:lfile|        :lf[ile]        read file with locations and jump to first
1271 |:lfirst|       :lfir[st]       go to the specified location, default first one
1272 |:lgetbuffer|   :lgetb[uffer]   get locations from buffer
1273 |:lgetexpr|     :lgete[xpr]     get locations from expr
1274 |:lgetfile|     :lg[etfile]     read file with locations
1275 |:lgrep|        :lgr[ep]        run 'grepprg' and jump to first match
1276 |:lgrepadd|     :lgrepa[dd]     like :grep, but append to current list
1277 |:lhelpgrep|    :lh[elpgrep]    like ":helpgrep" but uses location list
1278 |:ll|           :ll             go to specific location
1279 |:llast|        :lla[st]        go to the specified location, default last one
1280 |:llist|        :lli[st]        list all locations
1281 |:lmake|        :lmak[e]        execute external command 'makeprg' and parse
1282                                 error messages
1283 |:lmap|         :lm[ap]         like ":map!" but includes Lang-Arg mode
1284 |:lmapclear|    :lmapc[lear]    like ":mapclear!" but includes Lang-Arg mode
1285 |:lnext|        :lne[xt]        go to next location
1286 |:lnewer|       :lnew[er]       go to newer location list
1287 |:lnfile|       :lnf[ile]       go to first location in next file
1288 |:lnoremap|     :ln[oremap]     like ":noremap!" but includes Lang-Arg mode
1289 |:loadkeymap|   :loadk[eymap]   load the following keymaps until EOF
1290 |:loadview|     :lo[adview]     load view for current window from a file
1291 |:lockmarks|    :loc[kmarks]    following command keeps marks where they are
1292 |:lockvar|      :lockv[ar]      lock variables
1293 |:lolder|       :lol[der]       go to older location list
1294 |:lopen|        :lope[n]        open location window
1295 |:lprevious|    :lp[revious]    go to previous location
1296 |:lpfile|       :lpf[ile]       go to last location in previous file
1297 |:lrewind|      :lr[ewind]      go to the specified location, default first one
1298 |:ls|           :ls             list all buffers
1299 |:ltag|         :lt[ag]         jump to tag and add matching tags to the
1300                                 location list
1301 |:lunmap|       :lu[nmap]       like ":unmap!" but includes Lang-Arg mode
1302 |:lvimgrep|     :lv[imgrep]     search for pattern in files
1303 |:lvimgrepadd|  :lvimgrepa[dd]  like :vimgrep, but append to current list
1304 |:lwindow|      :lw[indow]      open or close location window
1305 |:move|         :m[ove]         move lines
1306 |:mark|         :ma[rk]         set a mark
1307 |:make|         :mak[e]         execute external command 'makeprg' and parse
1308                                 error messages
1309 |:map|          :map            show or enter a mapping
1310 |:mapclear|     :mapc[lear]     clear all mappings for Normal and Visual mode
1311 |:marks|        :marks          list all marks
1312 |:match|        :mat[ch]        define a match to highlight
1313 |:menu|         :me[nu]         enter a new menu item
1314 |:menutranslate| :menut[ranslate] add a menu translation item
1315 |:messages|     :mes[sages]     view previously displayed messages
1316 |:mkexrc|       :mk[exrc]       write current mappings and settings to a file
1317 |:mksession|    :mks[ession]    write session info to a file
1318 |:mkspell|      :mksp[ell]      produce .spl spell file
1319 |:mkvimrc|      :mkv[imrc]      write current mappings and settings to a file
1320 |:mkview|       :mkvie[w]       write view of current window to a file
1321 |:mode|         :mod[e]         show or change the screen mode
1322 |:mzscheme|     :mz[scheme]     execute MzScheme command
1323 |:mzfile|       :mzf[ile]       execute MzScheme script file
1324 |:nbkey|        :nb[key]        pass a key to Netbeans
1325 |:next|         :n[ext]         go to next file in the argument list
1326 |:new|          :new            create a new empty window
1327 |:nmap|         :nm[ap]         like ":map" but for Normal mode
1328 |:nmapclear|    :nmapc[lear]    clear all mappings for Normal mode
1329 |:nmenu|        :nme[nu]        add menu for Normal mode
1330 |:nnoremap|     :nn[oremap]     like ":noremap" but for Normal mode
1331 |:nnoremenu|    :nnoreme[nu]    like ":noremenu" but for Normal mode
1332 |:noautocmd|    :noa[utocmd]    following command don't trigger autocommands
1333 |:noremap|      :no[remap]      enter a mapping that will not be remapped
1334 |:nohlsearch|   :noh[lsearch]   suspend 'hlsearch' highlighting
1335 |:noreabbrev|   :norea[bbrev]   enter an abbreviation that will not be
1336                                 remapped
1337 |:noremenu|     :noreme[nu]     enter a menu that will not be remapped
1338 |:normal|       :norm[al]       execute Normal mode commands
1339 |:number|       :nu[mber]       print lines with line number
1340 |:nunmap|       :nun[map]       like ":unmap" but for Normal mode
1341 |:nunmenu|      :nunme[nu]      remove menu for Normal mode
1342 |:oldfiles|     :ol[dfiles]     list files that have marks in the viminfo file
1343 |:open|         :o[pen]         start open mode (not implemented)
1344 |:omap|         :om[ap]         like ":map" but for Operator-pending mode
1345 |:omapclear|    :omapc[lear]    remove all mappings for Operator-pending mode
1346 |:omenu|        :ome[nu]        add menu for Operator-pending mode
1347 |:only|         :on[ly]         close all windows except the current one
1348 |:onoremap|     :ono[remap]     like ":noremap" but for Operator-pending mode
1349 |:onoremenu|    :onoreme[nu]    like ":noremenu" but for Operator-pending mode
1350 |:options|      :opt[ions]      open the options-window
1351 |:ounmap|       :ou[nmap]       like ":unmap" but for Operator-pending mode
1352 |:ounmenu|      :ounme[nu]      remove menu for Operator-pending mode
1353 |:pclose|       :pc[lose]       close preview window
1354 |:pedit|        :ped[it]        edit file in the preview window
1355 |:perl|         :pe[rl]         execute Perl command
1356 |:print|        :p[rint]        print lines
1357 |:profdel|      :profd[el]      stop profiling a function or script
1358 |:profile|      :prof[ile]      profiling functions and scripts
1359 |:promptfind|   :pro[mptfind]   open GUI dialog for searching
1360 |:promptrepl|   :promptr[epl]   open GUI dialog for search/replace
1361 |:perldo|       :perld[o]       execute Perl command for each line
1362 |:pop|          :po[p]          jump to older entry in tag stack
1363 |:popup|        :pop[up]        popup a menu by name
1364 |:ppop|         :pp[op]         ":pop" in preview window
1365 |:preserve|     :pre[serve]     write all text to swap file
1366 |:previous|     :prev[ious]     go to previous file in argument list
1367 |:psearch|      :ps[earch]      like ":ijump" but shows match in preview window
1368 |:ptag|         :pt[ag]         show tag in preview window
1369 |:ptNext|       :ptN[ext]       |:tNext| in preview window
1370 |:ptfirst|      :ptf[irst]      |:trewind| in preview window
1371 |:ptjump|       :ptj[ump]       |:tjump| and show tag in preview window
1372 |:ptlast|       :ptl[ast]       |:tlast| in preview window
1373 |:ptnext|       :ptn[ext]       |:tnext| in preview window
1374 |:ptprevious|   :ptp[revious]   |:tprevious| in preview window
1375 |:ptrewind|     :ptr[ewind]     |:trewind| in preview window
1376 |:ptselect|     :pts[elect]     |:tselect| and show tag in preview window
1377 |:put|          :pu[t]          insert contents of register in the text
1378 |:pwd|          :pw[d]          print current directory
1379 |:python|       :py[thon]       execute Python command
1380 |:pyfile|       :pyf[ile]       execute Python script file
1381 |:quit|         :q[uit]         quit current window (when one window quit Vim)
1382 |:quitall|      :quita[ll]      quit Vim
1383 |:qall|         :qa[ll]         quit Vim
1384 |:read|         :r[ead]         read file into the text
1385 |:recover|      :rec[over]      recover a file from a swap file
1386 |:redo|         :red[o]         redo one undone change
1387 |:redir|        :redi[r]        redirect messages to a file or register
1388 |:redraw|       :redr[aw]       force a redraw of the display
1389 |:redrawstatus| :redraws[tatus] force a redraw of the status line(s)
1390 |:registers|    :reg[isters]    display the contents of registers
1391 |:resize|       :res[ize]       change current window height
1392 |:retab|        :ret[ab]        change tab size
1393 |:return|       :retu[rn]       return from a user function
1394 |:rewind|       :rew[ind]       go to the first file in the argument list
1395 |:right|        :ri[ght]        right align text
1396 |:rightbelow|   :rightb[elow]   make split window appear right or below
1397 |:ruby|         :rub[y]         execute Ruby command
1398 |:rubydo|       :rubyd[o]       execute Ruby command for each line
1399 |:rubyfile|     :rubyf[ile]     execute Ruby script file
1400 |:runtime|      :ru[ntime]      source vim scripts in 'runtimepath'
1401 |:rviminfo|     :rv[iminfo]     read from viminfo file
1402 |:substitute|   :s[ubstitute]   find and replace text
1403 |:sNext|        :sN[ext]        split window and go to previous file in
1404                                 argument list
1405 |:sandbox|      :san[dbox]      execute a command in the sandbox
1406 |:sargument|    :sa[rgument]    split window and go to specific file in
1407                                 argument list
1408 |:sall|         :sal[l]         open a window for each file in argument list
1409 |:saveas|       :sav[eas]       save file under another name.
1410 |:sbuffer|      :sb[uffer]      split window and go to specific file in the
1411                                 buffer list
1412 |:sbNext|       :sbN[ext]       split window and go to previous file in the
1413                                 buffer list
1414 |:sball|        :sba[ll]        open a window for each file in the buffer list
1415 |:sbfirst|      :sbf[irst]      split window and go to first file in the
1416                                 buffer list
1417 |:sblast|       :sbl[ast]       split window and go to last file in buffer
1418                                 list
1419 |:sbmodified|   :sbm[odified]   split window and go to modified file in the
1420                                 buffer list
1421 |:sbnext|       :sbn[ext]       split window and go to next file in the buffer
1422                                 list
1423 |:sbprevious|   :sbp[revious]   split window and go to previous file in the
1424                                 buffer list
1425 |:sbrewind|     :sbr[ewind]     split window and go to first file in the
1426                                 buffer list
1427 |:scriptnames|  :scrip[tnames]  list names of all sourced Vim scripts
1428 |:scriptencoding| :scripte[ncoding]     encoding used in sourced Vim script
1429 |:scscope|      :scs[cope]      split window and execute cscope command
1430 |:set|          :se[t]          show or set options
1431 |:setfiletype|  :setf[iletype]  set 'filetype', unless it was set already
1432 |:setglobal|    :setg[lobal]    show global values of options
1433 |:setlocal|     :setl[ocal]     show or set options locally
1434 |:sfind|        :sf[ind]        split current window and edit file in 'path'
1435 |:sfirst|       :sfir[st]       split window and go to first file in the
1436                                 argument list
1437 |:shell|        :sh[ell]        escape to a shell
1438 |:simalt|       :sim[alt]       Win32 GUI: simulate Windows ALT key
1439 |:sign|         :sig[n]         manipulate signs
1440 |:silent|       :sil[ent]       run a command silently
1441 |:sleep|        :sl[eep]        do nothing for a few seconds
1442 |:slast|        :sla[st]        split window and go to last file in the
1443                                 argument list
1444 |:smagic|       :sm[agic]       :substitute with 'magic'
1445 |:smap|         :sma[p]         like ":map" but for Select mode
1446 |:smapclear|    :smapc[lear]    remove all mappings for Select mode
1447 |:smenu|        :sme[nu]        add menu for Select mode
1448 |:snext|        :sn[ext]        split window and go to next file in the
1449                                 argument list
1450 |:sniff|        :sni[ff]        send request to sniff
1451 |:snomagic|     :sno[magic]     :substitute with 'nomagic'
1452 |:snoremap|     :snor[emap]     like ":noremap" but for Select mode
1453 |:snoremenu|    :snoreme[nu]    like ":noremenu" but for Select mode
1454 |:sort|         :sor[t]         sort lines
1455 |:source|       :so[urce]       read Vim or Ex commands from a file
1456 |:spelldump|    :spelld[ump]    split window and fill with all correct words
1457 |:spellgood|    :spe[llgood]    add good word for spelling
1458 |:spellinfo|    :spelli[nfo]    show info about loaded spell files
1459 |:spellrepall|  :spellr[epall]  replace all bad words like last |z=|
1460 |:spellundo|    :spellu[ndo]    remove good or bad word
1461 |:spellwrong|   :spellw[rong]   add spelling mistake
1462 |:split|        :sp[lit]        split current window
1463 |:sprevious|    :spr[evious]    split window and go to previous file in the
1464                                 argument list
1465 |:srewind|      :sre[wind]      split window and go to first file in the
1466                                 argument list
1467 |:stop|         :st[op]         suspend the editor or escape to a shell
1468 |:stag|         :sta[g]         split window and jump to a tag
1469 |:startinsert|  :star[tinsert]  start Insert mode
1470 |:startgreplace| :startg[replace] start Virtual Replace mode
1471 |:startreplace| :startr[eplace] start Replace mode
1472 |:stopinsert|   :stopi[nsert]   stop Insert mode
1473 |:stjump|       :stj[ump]       do ":tjump" and split window
1474 |:stselect|     :sts[elect]     do ":tselect" and split window
1475 |:sunhide|      :sun[hide]      same as ":unhide"
1476 |:sunmap|       :sunm[ap]       like ":unmap" but for Select mode
1477 |:sunmenu|      :sunme[nu]      remove menu for Select mode
1478 |:suspend|      :sus[pend]      same as ":stop"
1479 |:sview|        :sv[iew]        split window and edit file read-only
1480 |:swapname|     :sw[apname]     show the name of the current swap file
1481 |:syntax|       :sy[ntax]       syntax highlighting
1482 |:syncbind|     :sync[bind]     sync scroll binding
1483 |:t|            :t              same as ":copy"
1484 |:tNext|        :tN[ext]        jump to previous matching tag
1485 |:tabNext|      :tabN[ext]      go to previous tab page
1486 |:tabclose|     :tabc[lose]     close current tab page
1487 |:tabdo|        :tabdo          execute command in each tab page
1488 |:tabedit|      :tabe[dit]      edit a file in a new tab page
1489 |:tabfind|      :tabf[ind]      find file in 'path', edit it in a new tab page
1490 |:tabfirst|     :tabfir[st]     got to first tab page
1491 |:tablast|      :tabl[ast]      got to last tab page
1492 |:tabmove|      :tabm[ove]      move tab page to other position
1493 |:tabnew|       :tabnew         edit a file in a new tab page
1494 |:tabnext|      :tabn[ext]      go to next tab page
1495 |:tabonly|      :tabo[nly]      close all tab pages except the current one
1496 |:tabprevious|  :tabp[revious]  go to previous tab page
1497 |:tabrewind|    :tabr[ewind]    got to first tab page
1498 |:tabs|         :tabs           list the tab pages and what they contain
1499 |:tab|          :tab            create new tab when opening new window
1500 |:tag|          :ta[g]          jump to tag
1501 |:tags|         :tags           show the contents of the tag stack
1502 |:tcl|          :tc[l]          execute Tcl command
1503 |:tcldo|        :tcld[o]        execute Tcl command for each line
1504 |:tclfile|      :tclf[ile]      execute Tcl script file
1505 |:tearoff|      :te[aroff]      tear-off a menu
1506 |:tfirst|       :tf[irst]       jump to first matching tag
1507 |:throw|        :th[row]        throw an exception
1508 |:tjump|        :tj[ump]        like ":tselect", but jump directly when there
1509                                 is only one match
1510 |:tlast|        :tl[ast]        jump to last matching tag
1511 |:tmenu|        :tm[enu]        define menu tooltip
1512 |:tnext|        :tn[ext]        jump to next matching tag
1513 |:topleft|      :to[pleft]      make split window appear at top or far left
1514 |:tprevious|    :tp[revious]    jump to previous matching tag
1515 |:trewind|      :tr[ewind]      jump to first matching tag
1516 |:try|          :try            execute commands, abort on error or exception
1517 |:tselect|      :ts[elect]      list matching tags and select one
1518 |:tunmenu|      :tu[nmenu]      remove menu tooltip
1519 |:undo|         :u[ndo]         undo last change(s)
1520 |:undojoin|     :undoj[oin]     join next change with previous undo block
1521 |:undolist|     :undol[ist]     list leafs of the undo tree
1522 |:unabbreviate| :una[bbreviate] remove abbreviation
1523 |:unhide|       :unh[ide]       open a window for each loaded file in the
1524                                 buffer list
1525 |:unlet|        :unl[et]        delete variable
1526 |:unlockvar|    :unlo[ckvar]    unlock variables
1527 |:unmap|        :unm[ap]        remove mapping
1528 |:unmenu|       :unme[nu]       remove menu
1529 |:unsilent|     :uns[ilent]     run a command not silently
1530 |:update|       :up[date]       write buffer if modified
1531 |:vglobal|      :v[global]      execute commands for not matching lines
1532 |:version|      :ve[rsion]      print version number and other info
1533 |:verbose|      :verb[ose]      execute command with 'verbose' set
1534 |:vertical|     :vert[ical]     make following command split vertically
1535 |:vimgrep|      :vim[grep]      search for pattern in files
1536 |:vimgrepadd|   :vimgrepa[dd]   like :vimgrep, but append to current list
1537 |:visual|       :vi[sual]       same as ":edit", but turns off "Ex" mode
1538 |:viusage|      :viu[sage]      overview of Normal mode commands
1539 |:view|         :vie[w]         edit a file read-only
1540 |:vmap|         :vm[ap]         like ":map" but for Visual+Select mode
1541 |:vmapclear|    :vmapc[lear]    remove all mappings for Visual+Select mode
1542 |:vmenu|        :vme[nu]        add menu for Visual+Select mode
1543 |:vnew|         :vne[w]         create a new empty window, vertically split
1544 |:vnoremap|     :vn[oremap]     like ":noremap" but for Visual+Select mode
1545 |:vnoremenu|    :vnoreme[nu]    like ":noremenu" but for Visual+Select mode
1546 |:vsplit|       :vs[plit]       split current window vertically
1547 |:vunmap|       :vu[nmap]       like ":unmap" but for Visual+Select mode
1548 |:vunmenu|      :vunme[nu]      remove menu for Visual+Select mode
1549 |:windo|        :windo          execute command in each window
1550 |:write|        :w[rite]        write to a file
1551 |:wNext|        :wN[ext]        write to a file and go to previous file in
1552                                 argument list
1553 |:wall|         :wa[ll]         write all (changed) buffers
1554 |:while|        :wh[ile]        execute loop for as long as condition met
1555 |:winsize|      :wi[nsize]      get or set window size (obsolete)
1556 |:wincmd|       :winc[md]       execute a Window (CTRL-W) command
1557 |:winpos|       :winp[os]       get or set window position
1558 |:wnext|        :wn[ext]        write to a file and go to next file in
1559                                 argument list
1560 |:wprevious|    :wp[revious]    write to a file and go to previous file in
1561                                 argument list
1562 |:wq|           :wq             write to a file and quit window or Vim
1563 |:wqall|        :wqa[ll]        write all changed buffers and quit Vim
1564 |:wsverb|       :ws[verb]       pass the verb to workshop over IPC
1565 |:wviminfo|     :wv[iminfo]     write to viminfo file
1566 |:xit|          :x[it]          write if buffer changed and quit window or Vim
1567 |:xall|         :xa[ll]         same as ":wqall"
1568 |:xmapclear|    :xmapc[lear]    remove all mappings for Visual mode
1569 |:xmap|         :xm[ap]         like ":map" but for Visual mode
1570 |:xmenu|        :xme[nu]        add menu for Visual mode
1571 |:xnoremap|     :xn[oremap]     like ":noremap" but for Visual mode
1572 |:xnoremenu|    :xnoreme[nu]    like ":noremenu" but for Visual mode
1573 |:xunmap|       :xu[nmap]       like ":unmap" but for Visual mode
1574 |:xunmenu|      :xunme[nu]      remove menu for Visual mode
1575 |:yank|         :y[ank]         yank lines into a register
1576 |:z|            :z              print some lines
1577 |:~|            :~              repeat last ":substitute"
1580  vim:tw=78:ts=8:ft=help:norl: