blob: 78d557f51ef4bcd02b347b02abc7a60660ea74bd [file] [log] [blame]
Bram Moolenaar47e13952020-05-12 22:49:12 +02001*index.txt* For Vim version 8.2. Last change: 2020 May 10
Bram Moolenaar071d4272004-06-13 20:20:40 +00002
3
4 VIM REFERENCE MANUAL by Bram Moolenaar
5
6 *index*
7This file contains a list of all commands for each mode, with a tag and a
8short description. The lists are sorted on ASCII value.
9
10Tip: When looking for certain functionality, use a search command. E.g.,
11to look for deleting something, use: "/delete".
12
131. Insert mode |insert-index|
142. 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|
Bram Moolenaarf6b40102019-02-22 15:24:03 +010020 2.6. Operator-pending mode |operator-pending-index|
Bram Moolenaar071d4272004-06-13 20:20:40 +0000213. Visual mode |visual-index|
224. Command-line editing |ex-edit-index|
Bram Moolenaarf6b40102019-02-22 15:24:03 +0100235. Terminal-Job mode |terminal-job-index|
246. EX commands |ex-cmd-index|
Bram Moolenaar071d4272004-06-13 20:20:40 +000025
Bram Moolenaar30e9b3c2019-09-07 16:24:12 +020026For an overview of options see |option-list|.
Bram Moolenaar071d4272004-06-13 20:20:40 +000027For an overview of built-in functions see |functions|.
28For a list of Vim variables see |vim-variable|.
29For a complete listing of all help items see |help-tags|.
30
31==============================================================================
321. Insert mode *insert-index*
33
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +010034tag char action in Insert mode ~
Bram Moolenaar071d4272004-06-13 20:20:40 +000035-----------------------------------------------------------------------
36|i_CTRL-@| CTRL-@ insert previously inserted text and stop
37 insert
38|i_CTRL-A| CTRL-A insert previously inserted text
39 CTRL-B not used |i_CTRL-B-gone|
40|i_CTRL-C| CTRL-C quit insert mode, without checking for
41 abbreviation, unless 'insertmode' set.
42|i_CTRL-D| CTRL-D delete one shiftwidth of indent in the current
43 line
44|i_CTRL-E| CTRL-E insert the character which is below the cursor
45 CTRL-F not used (but by default it's in 'cinkeys' to
46 re-indent the current line)
47|i_CTRL-G_j| CTRL-G CTRL-J line down, to column where inserting started
48|i_CTRL-G_j| CTRL-G j line down, to column where inserting started
49|i_CTRL-G_j| CTRL-G <Down> line down, to column where inserting started
50|i_CTRL-G_k| CTRL-G CTRL-K line up, to column where inserting started
51|i_CTRL-G_k| CTRL-G k line up, to column where inserting started
52|i_CTRL-G_k| CTRL-G <Up> line up, to column where inserting started
53|i_CTRL-G_u| CTRL-G u start new undoable edit
Bram Moolenaaraa3b15d2016-04-21 08:53:19 +020054|i_CTRL-G_U| CTRL-G U don't break undo with next cursor movement
Bram Moolenaar071d4272004-06-13 20:20:40 +000055|i_<BS>| <BS> delete character before the cursor
56|i_digraph| {char1}<BS>{char2}
57 enter digraph (only when 'digraph' option set)
58|i_CTRL-H| CTRL-H same as <BS>
59|i_<Tab>| <Tab> insert a <Tab> character
60|i_CTRL-I| CTRL-I same as <Tab>
61|i_<NL>| <NL> same as <CR>
62|i_CTRL-J| CTRL-J same as <CR>
63|i_CTRL-K| CTRL-K {char1} {char2}
64 enter digraph
65|i_CTRL-L| CTRL-L when 'insertmode' set: Leave Insert mode
66|i_<CR>| <CR> begin new line
67|i_CTRL-M| CTRL-M same as <CR>
68|i_CTRL-N| CTRL-N find next match for keyword in front of the
69 cursor
70|i_CTRL-O| CTRL-O execute a single command and return to insert
71 mode
72|i_CTRL-P| CTRL-P find previous match for keyword in front of
73 the cursor
74|i_CTRL-Q| CTRL-Q same as CTRL-V, unless used for terminal
75 control flow
Bram Moolenaar8024f932020-01-14 19:29:13 +010076|i_CTRL-SHIFT-Q| CTRL-SHIFT-Q {char}
77 like CTRL-Q unless |modifyOtherKeys| is active
Bram Moolenaar5be4cee2019-09-27 19:34:08 +020078|i_CTRL-R| CTRL-R {register}
Bram Moolenaar071d4272004-06-13 20:20:40 +000079 insert the contents of a register
Bram Moolenaar5be4cee2019-09-27 19:34:08 +020080|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {register}
Bram Moolenaar071d4272004-06-13 20:20:40 +000081 insert the contents of a register literally
Bram Moolenaar5be4cee2019-09-27 19:34:08 +020082|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {register}
Bram Moolenaar071d4272004-06-13 20:20:40 +000083 insert the contents of a register literally
84 and don't auto-indent
Bram Moolenaar5be4cee2019-09-27 19:34:08 +020085|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {register}
Bram Moolenaar071d4272004-06-13 20:20:40 +000086 insert the contents of a register literally
87 and fix indent.
88 CTRL-S (used for terminal control flow)
89|i_CTRL-T| CTRL-T insert one shiftwidth of indent in current
90 line
91|i_CTRL-U| CTRL-U delete all entered characters in the current
92 line
93|i_CTRL-V| CTRL-V {char} insert next non-digit literally
Bram Moolenaar8024f932020-01-14 19:29:13 +010094|i_CTRL-SHIFT-V| CTRL-SHIFT-V {char}
95 like CTRL-V unless |modifyOtherKeys| is active
Bram Moolenaar071d4272004-06-13 20:20:40 +000096|i_CTRL-V_digit| CTRL-V {number} insert three digit decimal number as a single
97 byte.
98|i_CTRL-W| CTRL-W delete word before the cursor
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +000099|i_CTRL-X| CTRL-X {mode} enter CTRL-X sub mode, see |i_CTRL-X_index|
Bram Moolenaar071d4272004-06-13 20:20:40 +0000100|i_CTRL-Y| CTRL-Y insert the character which is above the cursor
101|i_CTRL-Z| CTRL-Z when 'insertmode' set: suspend Vim
102|i_<Esc>| <Esc> end insert mode (unless 'insertmode' set)
103|i_CTRL-[| CTRL-[ same as <Esc>
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100104|i_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode
105|i_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
Bram Moolenaar071d4272004-06-13 20:20:40 +0000106 CTRL-\ a - z reserved for extensions
107 CTRL-\ others not used
108|i_CTRL-]| CTRL-] trigger abbreviation
109|i_CTRL-^| CTRL-^ toggle use of |:lmap| mappings
110|i_CTRL-_| CTRL-_ When 'allowrevins' set: change language
111 (Hebrew, Farsi) {only when compiled with
Bram Moolenaardb84e452010-08-15 13:50:43 +0200112 the |+rightleft| feature}
Bram Moolenaar071d4272004-06-13 20:20:40 +0000113
114 <Space> to '~' not used, except '0' and '^' followed by
115 CTRL-D
116
117|i_0_CTRL-D| 0 CTRL-D delete all indent in the current line
118|i_^_CTRL-D| ^ CTRL-D delete all indent in the current line, restore
119 it in the next line
120
121|i_<Del>| <Del> delete character under the cursor
122
123 Meta characters (0x80 to 0xff, 128 to 255)
124 not used
125
126|i_<Left>| <Left> cursor one character left
127|i_<S-Left>| <S-Left> cursor one word left
128|i_<C-Left>| <C-Left> cursor one word left
129|i_<Right>| <Right> cursor one character right
130|i_<S-Right>| <S-Right> cursor one word right
131|i_<C-Right>| <C-Right> cursor one word right
132|i_<Up>| <Up> cursor one line up
133|i_<S-Up>| <S-Up> same as <PageUp>
134|i_<Down>| <Down> cursor one line down
135|i_<S-Down>| <S-Down> same as <PageDown>
136|i_<Home>| <Home> cursor to start of line
137|i_<C-Home>| <C-Home> cursor to start of file
138|i_<End>| <End> cursor past end of line
139|i_<C-End>| <C-End> cursor past end of file
Bram Moolenaar69a7cb42004-06-20 12:51:53 +0000140|i_<PageUp>| <PageUp> one screenful backward
141|i_<PageDown>| <PageDown> one screenful forward
Bram Moolenaar071d4272004-06-13 20:20:40 +0000142|i_<F1>| <F1> same as <Help>
143|i_<Help>| <Help> stop insert mode and display help window
144|i_<Insert>| <Insert> toggle Insert/Replace mode
145|i_<LeftMouse>| <LeftMouse> cursor at mouse click
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +0200146|i_<ScrollWheelDown>| <ScrollWheelDown> move window three lines down
147|i_<S-ScrollWheelDown>| <S-ScrollWheelDown> move window one page down
148|i_<ScrollWheelUp>| <ScrollWheelUp> move window three lines up
149|i_<S-ScrollWheelUp>| <S-ScrollWheelUp> move window one page up
150|i_<ScrollWheelLeft>| <ScrollWheelLeft> move window six columns left
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100151|i_<S-ScrollWheelLeft>| <S-ScrollWheelLeft> move window one page left
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +0200152|i_<ScrollWheelRight>| <ScrollWheelRight> move window six columns right
153|i_<S-ScrollWheelRight>| <S-ScrollWheelRight> move window one page right
Bram Moolenaar071d4272004-06-13 20:20:40 +0000154
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000155commands in CTRL-X submode *i_CTRL-X_index*
Bram Moolenaar071d4272004-06-13 20:20:40 +0000156
157|i_CTRL-X_CTRL-D| CTRL-X CTRL-D complete defined identifiers
158|i_CTRL-X_CTRL-E| CTRL-X CTRL-E scroll up
159|i_CTRL-X_CTRL-F| CTRL-X CTRL-F complete file names
160|i_CTRL-X_CTRL-I| CTRL-X CTRL-I complete identifiers
161|i_CTRL-X_CTRL-K| CTRL-X CTRL-K complete identifiers from dictionary
162|i_CTRL-X_CTRL-L| CTRL-X CTRL-L complete whole lines
163|i_CTRL-X_CTRL-N| CTRL-X CTRL-N next completion
Bram Moolenaar5e0d6672005-09-13 21:09:24 +0000164|i_CTRL-X_CTRL-O| CTRL-X CTRL-O omni completion
Bram Moolenaar071d4272004-06-13 20:20:40 +0000165|i_CTRL-X_CTRL-P| CTRL-X CTRL-P previous completion
Bram Moolenaar8b59de92005-08-11 19:59:29 +0000166|i_CTRL-X_CTRL-S| CTRL-X CTRL-S spelling suggestions
Bram Moolenaar071d4272004-06-13 20:20:40 +0000167|i_CTRL-X_CTRL-T| CTRL-X CTRL-T complete identifiers from thesaurus
168|i_CTRL-X_CTRL-Y| CTRL-X CTRL-Y scroll down
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000169|i_CTRL-X_CTRL-U| CTRL-X CTRL-U complete with 'completefunc'
170|i_CTRL-X_CTRL-V| CTRL-X CTRL-V complete like in : command line
Bram Moolenaar071d4272004-06-13 20:20:40 +0000171|i_CTRL-X_CTRL-]| CTRL-X CTRL-] complete tags
Bram Moolenaar8b59de92005-08-11 19:59:29 +0000172|i_CTRL-X_s| CTRL-X s spelling suggestions
Bram Moolenaar071d4272004-06-13 20:20:40 +0000173
Bram Moolenaarf6b40102019-02-22 15:24:03 +0100174commands in completion mode (see |popupmenu-keys|)
175
176|complete_CTRL-E| CTRL-E stop completion and go back to original text
177|complete_CTRL-Y| CTRL-Y accept selected match and stop completion
178 CTRL-L insert one character from the current match
179 <CR> insert currently selected match
180 <BS> delete one character and redo search
181 CTRL-H same as <BS>
182 <Up> select the previous match
183 <Down> select the next match
184 <PageUp> select a match several entries back
185 <PageDown> select a match several entries forward
186 other stop completion and insert the typed character
187
Bram Moolenaar071d4272004-06-13 20:20:40 +0000188==============================================================================
1892. Normal mode *normal-index*
190
191CHAR any non-blank character
192WORD a sequence of non-blank characters
193N a number entered before the command
194{motion} a cursor movement command
195Nmove the text that is moved over with a {motion}
196SECTION a section that possibly starts with '}' instead of '{'
197
198note: 1 = cursor movement command; 2 = can be undone/redone
199
200tag char note action in Normal mode ~
201------------------------------------------------------------------------------
202 CTRL-@ not used
203|CTRL-A| CTRL-A 2 add N to number at/after cursor
204|CTRL-B| CTRL-B 1 scroll N screens Backwards
205|CTRL-C| CTRL-C interrupt current (search) command
206|CTRL-D| CTRL-D scroll Down N lines (default: half a screen)
207|CTRL-E| CTRL-E scroll N lines upwards (N lines Extra)
208|CTRL-F| CTRL-F 1 scroll N screens Forward
209|CTRL-G| CTRL-G display current file name and position
210|<BS>| <BS> 1 same as "h"
211|CTRL-H| CTRL-H 1 same as "h"
212|<Tab>| <Tab> 1 go to N newer entry in jump list
213|CTRL-I| CTRL-I 1 same as <Tab>
214|<NL>| <NL> 1 same as "j"
215|CTRL-J| CTRL-J 1 same as "j"
216 CTRL-K not used
217|CTRL-L| CTRL-L redraw screen
218|<CR>| <CR> 1 cursor to the first CHAR N lines lower
219|CTRL-M| CTRL-M 1 same as <CR>
220|CTRL-N| CTRL-N 1 same as "j"
221|CTRL-O| CTRL-O 1 go to N older entry in jump list
222|CTRL-P| CTRL-P 1 same as "k"
223 CTRL-Q (used for terminal control flow)
224|CTRL-R| CTRL-R 2 redo changes which were undone with 'u'
225 CTRL-S (used for terminal control flow)
226|CTRL-T| CTRL-T jump to N older Tag in tag list
227|CTRL-U| CTRL-U scroll N lines Upwards (default: half a
228 screen)
229|CTRL-V| CTRL-V start blockwise Visual mode
230|CTRL-W| CTRL-W {char} window commands, see |CTRL-W|
231|CTRL-X| CTRL-X 2 subtract N from number at/after cursor
232|CTRL-Y| CTRL-Y scroll N lines downwards
233|CTRL-Z| CTRL-Z suspend program (or start new shell)
234 CTRL-[ <Esc> not used
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100235|CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode (no-op)
236|CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
Bram Moolenaar071d4272004-06-13 20:20:40 +0000237 CTRL-\ a - z reserved for extensions
238 CTRL-\ others not used
239|CTRL-]| CTRL-] :ta to ident under cursor
240|CTRL-^| CTRL-^ edit Nth alternate file (equivalent to
241 ":e #N")
242 CTRL-_ not used
243
244|<Space>| <Space> 1 same as "l"
245|!| !{motion}{filter}
246 2 filter Nmove text through the {filter}
247 command
248|!!| !!{filter} 2 filter N lines through the {filter} command
Bram Moolenaar7ceefb32020-05-01 16:07:38 +0200249|quote| "{register} use {register} for next delete, yank or put
Bram Moolenaar071d4272004-06-13 20:20:40 +0000250 ({.%#:} only work with put)
251|#| # 1 search backward for the Nth occurrence of
252 the ident under the cursor
253|$| $ 1 cursor to the end of Nth next line
254|%| % 1 find the next (curly/square) bracket on
255 this line and go to its match, or go to
256 matching comment bracket, or go to matching
257 preprocessor directive.
258|N%| {count}% 1 go to N percentage in the file
259|&| & 2 repeat last :s
260|'| '{a-zA-Z0-9} 1 cursor to the first CHAR on the line with
261 mark {a-zA-Z0-9}
262|''| '' 1 cursor to the first CHAR of the line where
263 the cursor was before the latest jump.
264|'(| '( 1 cursor to the first CHAR on the line of the
265 start of the current sentence
266|')| ') 1 cursor to the first CHAR on the line of the
267 end of the current sentence
268|'<| '< 1 cursor to the first CHAR of the line where
269 highlighted area starts/started in the
270 current buffer.
271|'>| '> 1 cursor to the first CHAR of the line where
272 highlighted area ends/ended in the current
273 buffer.
274|'[| '[ 1 cursor to the first CHAR on the line of the
275 start of last operated text or start of put
276 text
277|']| '] 1 cursor to the first CHAR on the line of the
278 end of last operated text or end of put
279 text
280|'{| '{ 1 cursor to the first CHAR on the line of the
281 start of the current paragraph
282|'}| '} 1 cursor to the first CHAR on the line of the
283 end of the current paragraph
284|(| ( 1 cursor N sentences backward
285|)| ) 1 cursor N sentences forward
286|star| * 1 search forward for the Nth occurrence of
287 the ident under the cursor
288|+| + 1 same as <CR>
289|,| , 1 repeat latest f, t, F or T in opposite
290 direction N times
291|-| - 1 cursor to the first CHAR N lines higher
292|.| . 2 repeat last change with count replaced with
293 N
294|/| /{pattern}<CR> 1 search forward for the Nth occurrence of
295 {pattern}
296|/<CR>| /<CR> 1 search forward for {pattern} of last search
297|count| 0 1 cursor to the first char of the line
298|count| 1 prepend to command to give a count
299|count| 2 "
300|count| 3 "
301|count| 4 "
302|count| 5 "
303|count| 6 "
304|count| 7 "
305|count| 8 "
306|count| 9 "
307|:| : 1 start entering an Ex command
308|N:| {count}: start entering an Ex command with range
309 from current line to N-1 lines down
310|;| ; 1 repeat latest f, t, F or T N times
311|<| <{motion} 2 shift Nmove lines one 'shiftwidth'
312 leftwards
313|<<| << 2 shift N lines one 'shiftwidth' leftwards
314|=| ={motion} 2 filter Nmove lines through "indent"
315|==| == 2 filter N lines through "indent"
316|>| >{motion} 2 shift Nmove lines one 'shiftwidth'
317 rightwards
318|>>| >> 2 shift N lines one 'shiftwidth' rightwards
319|?| ?{pattern}<CR> 1 search backward for the Nth previous
320 occurrence of {pattern}
321|?<CR>| ?<CR> 1 search backward for {pattern} of last search
322|@| @{a-z} 2 execute the contents of register {a-z}
323 N times
324|@:| @: repeat the previous ":" command N times
325|@@| @@ 2 repeat the previous @{a-z} N times
326|A| A 2 append text after the end of the line N times
327|B| B 1 cursor N WORDS backward
328|C| ["x]C 2 change from the cursor position to the end
329 of the line, and N-1 more lines [into
Bram Moolenaar94237492017-04-23 18:40:21 +0200330 register x]; synonym for "c$"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000331|D| ["x]D 2 delete the characters under the cursor
332 until the end of the line and N-1 more
Bram Moolenaar94237492017-04-23 18:40:21 +0200333 lines [into register x]; synonym for "d$"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000334|E| E 1 cursor forward to the end of WORD N
335|F| F{char} 1 cursor to the Nth occurrence of {char} to
336 the left
337|G| G 1 cursor to line N, default last line
338|H| H 1 cursor to line N from top of screen
339|I| I 2 insert text before the first CHAR on the
340 line N times
341|J| J 2 Join N lines; default is 2
342|K| K lookup Keyword under the cursor with
343 'keywordprg'
344|L| L 1 cursor to line N from bottom of screen
345|M| M 1 cursor to middle line of screen
346|N| N 1 repeat the latest '/' or '?' N times in
347 opposite direction
348|O| O 2 begin a new line above the cursor and
349 insert text, repeat N times
Bram Moolenaar94237492017-04-23 18:40:21 +0200350|P| ["x]P 2 put the text [from register x] before the
Bram Moolenaar071d4272004-06-13 20:20:40 +0000351 cursor N times
352|Q| Q switch to "Ex" mode
353|R| R 2 enter replace mode: overtype existing
354 characters, repeat the entered text N-1
355 times
Bram Moolenaar94237492017-04-23 18:40:21 +0200356|S| ["x]S 2 delete N lines [into register x] and start
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000357 insert; synonym for "cc".
Bram Moolenaar071d4272004-06-13 20:20:40 +0000358|T| T{char} 1 cursor till after Nth occurrence of {char}
359 to the left
360|U| U 2 undo all latest changes on one line
361|V| V start linewise Visual mode
362|W| W 1 cursor N WORDS forward
363|X| ["x]X 2 delete N characters before the cursor [into
Bram Moolenaar94237492017-04-23 18:40:21 +0200364 register x]
365|Y| ["x]Y yank N lines [into register x]; synonym for
Bram Moolenaar071d4272004-06-13 20:20:40 +0000366 "yy"
Bram Moolenaar47e13952020-05-12 22:49:12 +0200367|ZZ| ZZ write if buffer changed and close window
368|ZQ| ZQ close window without writing
Bram Moolenaarc6039d82005-12-02 00:44:04 +0000369|[| [{char} square bracket command (see |[| below)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000370 \ not used
Bram Moolenaarc6039d82005-12-02 00:44:04 +0000371|]| ]{char} square bracket command (see |]| below)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000372|^| ^ 1 cursor to the first CHAR of the line
373|_| _ 1 cursor to the first CHAR N - 1 lines lower
374|`| `{a-zA-Z0-9} 1 cursor to the mark {a-zA-Z0-9}
375|`(| `( 1 cursor to the start of the current sentence
376|`)| `) 1 cursor to the end of the current sentence
377|`<| `< 1 cursor to the start of the highlighted area
378|`>| `> 1 cursor to the end of the highlighted area
379|`[| `[ 1 cursor to the start of last operated text
380 or start of putted text
381|`]| `] 1 cursor to the end of last operated text or
382 end of putted text
383|``| `` 1 cursor to the position before latest jump
384|`{| `{ 1 cursor to the start of the current paragraph
385|`}| `} 1 cursor to the end of the current paragraph
386|a| a 2 append text after the cursor N times
387|b| b 1 cursor N words backward
Bram Moolenaar94237492017-04-23 18:40:21 +0200388|c| ["x]c{motion} 2 delete Nmove text [into register x] and
389 start insert
390|cc| ["x]cc 2 delete N lines [into register x] and start
Bram Moolenaar071d4272004-06-13 20:20:40 +0000391 insert
Bram Moolenaar94237492017-04-23 18:40:21 +0200392|d| ["x]d{motion} 2 delete Nmove text [into register x]
393|dd| ["x]dd 2 delete N lines [into register x]
Bram Moolenaar071d4272004-06-13 20:20:40 +0000394|do| do 2 same as ":diffget"
395|dp| dp 2 same as ":diffput"
396|e| e 1 cursor forward to the end of word N
397|f| f{char} 1 cursor to Nth occurrence of {char} to the
398 right
Bram Moolenaarc6039d82005-12-02 00:44:04 +0000399|g| g{char} extended commands, see |g| below
Bram Moolenaar071d4272004-06-13 20:20:40 +0000400|h| h 1 cursor N chars to the left
401|i| i 2 insert text before the cursor N times
402|j| j 1 cursor N lines downward
403|k| k 1 cursor N lines upward
404|l| l 1 cursor N chars to the right
405|m| m{A-Za-z} set mark {A-Za-z} at cursor position
406|n| n 1 repeat the latest '/' or '?' N times
407|o| o 2 begin a new line below the cursor and
408 insert text, repeat N times
409|p| ["x]p 2 put the text [from register x] after the
410 cursor N times
411|q| q{0-9a-zA-Z"} record typed characters into named register
412 {0-9a-zA-Z"} (uppercase to append)
413|q| q (while recording) stops recording
414|q:| q: edit : command-line in command-line window
415|q/| q/ edit / command-line in command-line window
416|q?| q? edit ? command-line in command-line window
417|r| r{char} 2 replace N chars with {char}
418|s| ["x]s 2 (substitute) delete N characters [into
Bram Moolenaar94237492017-04-23 18:40:21 +0200419 register x] and start insert
Bram Moolenaar071d4272004-06-13 20:20:40 +0000420|t| t{char} 1 cursor till before Nth occurrence of {char}
421 to the right
422|u| u 2 undo changes
423|v| v start characterwise Visual mode
424|w| w 1 cursor N words forward
425|x| ["x]x 2 delete N characters under and after the
Bram Moolenaar94237492017-04-23 18:40:21 +0200426 cursor [into register x]
427|y| ["x]y{motion} yank Nmove text [into register x]
428|yy| ["x]yy yank N lines [into register x]
Bram Moolenaarc6039d82005-12-02 00:44:04 +0000429|z| z{char} commands starting with 'z', see |z| below
Bram Moolenaar071d4272004-06-13 20:20:40 +0000430|{| { 1 cursor N paragraphs backward
431|bar| | 1 cursor to column N
432|}| } 1 cursor N paragraphs forward
433|~| ~ 2 'tildeop' off: switch case of N characters
434 under cursor and move the cursor N
435 characters to the right
436|~| ~{motion} 'tildeop' on: switch case of Nmove text
437|<C-End>| <C-End> 1 same as "G"
438|<C-Home>| <C-Home> 1 same as "gg"
439|<C-Left>| <C-Left> 1 same as "b"
440|<C-LeftMouse>| <C-LeftMouse> ":ta" to the keyword at the mouse click
441|<C-Right>| <C-Right> 1 same as "w"
442|<C-RightMouse>| <C-RightMouse> same as "CTRL-T"
443|<Del>| ["x]<Del> 2 same as "x"
444|N<Del>| {count}<Del> remove the last digit from {count}
445|<Down>| <Down> 1 same as "j"
446|<End>| <End> 1 same as "$"
447|<F1>| <F1> same as <Help>
448|<Help>| <Help> open a help window
449|<Home>| <Home> 1 same as "0"
450|<Insert>| <Insert> 2 same as "i"
451|<Left>| <Left> 1 same as "h"
452|<LeftMouse>| <LeftMouse> 1 move cursor to the mouse click position
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100453|<MiddleMouse>| <MiddleMouse> 2 same as "gP" at the mouse click position
Bram Moolenaar071d4272004-06-13 20:20:40 +0000454|<PageDown>| <PageDown> same as CTRL-F
455|<PageUp>| <PageUp> same as CTRL-B
456|<Right>| <Right> 1 same as "l"
457|<RightMouse>| <RightMouse> start Visual mode, move cursor to the mouse
458 click position
459|<S-Down>| <S-Down> 1 same as CTRL-F
460|<S-Left>| <S-Left> 1 same as "b"
461|<S-LeftMouse>| <S-LeftMouse> same as "*" at the mouse click position
462|<S-Right>| <S-Right> 1 same as "w"
463|<S-RightMouse>| <S-RightMouse> same as "#" at the mouse click position
464|<S-Up>| <S-Up> 1 same as CTRL-B
465|<Undo>| <Undo> 2 same as "u"
466|<Up>| <Up> 1 same as "k"
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +0200467|<ScrollWheelDown>| <ScrollWheelDown> move window three lines down
468|<S-ScrollWheelDown>| <S-ScrollWheelDown> move window one page down
469|<ScrollWheelUp>| <ScrollWheelUp> move window three lines up
470|<S-ScrollWheelUp>| <S-ScrollWheelUp> move window one page up
471|<ScrollWheelLeft>| <ScrollWheelLeft> move window six columns left
472|<S-ScrollWheelLeft>| <S-ScrollWheelLeft> move window one page left
473|<ScrollWheelRight>| <ScrollWheelRight> move window six columns right
474|<S-ScrollWheelRight>| <S-ScrollWheelRight> move window one page right
Bram Moolenaar071d4272004-06-13 20:20:40 +0000475
476==============================================================================
4772.1 Text objects *objects*
478
479These can be used after an operator or in Visual mode to select an object.
480
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +0100481tag command action in op-pending and Visual mode ~
Bram Moolenaar071d4272004-06-13 20:20:40 +0000482------------------------------------------------------------------------------
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000483|v_aquote| a" double quoted string
484|v_a'| a' single quoted string
Bram Moolenaar071d4272004-06-13 20:20:40 +0000485|v_a(| a( same as ab
486|v_a)| a) same as ab
487|v_a<| a< "a <>" from '<' to the matching '>'
488|v_a>| a> same as a<
489|v_aB| aB "a Block" from "[{" to "]}" (with brackets)
490|v_aW| aW "a WORD" (with white space)
491|v_a[| a[ "a []" from '[' to the matching ']'
492|v_a]| a] same as a[
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000493|v_a`| a` string in backticks
Bram Moolenaar071d4272004-06-13 20:20:40 +0000494|v_ab| ab "a block" from "[(" to "])" (with braces)
495|v_ap| ap "a paragraph" (with white space)
496|v_as| as "a sentence" (with white space)
Bram Moolenaarf2330482008-06-24 20:19:36 +0000497|v_at| at "a tag block" (with white space)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000498|v_aw| aw "a word" (with white space)
499|v_a{| a{ same as aB
500|v_a}| a} same as aB
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000501|v_iquote| i" double quoted string without the quotes
502|v_i'| i' single quoted string without the quotes
Bram Moolenaar071d4272004-06-13 20:20:40 +0000503|v_i(| i( same as ib
504|v_i)| i) same as ib
505|v_i<| i< "inner <>" from '<' to the matching '>'
506|v_i>| i> same as i<
507|v_iB| iB "inner Block" from "[{" and "]}"
508|v_iW| iW "inner WORD"
509|v_i[| i[ "inner []" from '[' to the matching ']'
510|v_i]| i] same as i[
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000511|v_i`| i` string in backticks without the backticks
Bram Moolenaar071d4272004-06-13 20:20:40 +0000512|v_ib| ib "inner block" from "[(" to "])"
513|v_ip| ip "inner paragraph"
514|v_is| is "inner sentence"
Bram Moolenaarf2330482008-06-24 20:19:36 +0000515|v_it| it "inner tag block"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000516|v_iw| iw "inner word"
517|v_i{| i{ same as iB
518|v_i}| i} same as iB
519
520==============================================================================
5212.2 Window commands *CTRL-W*
522
523tag command action in Normal mode ~
524------------------------------------------------------------------------------
525|CTRL-W_CTRL-B| CTRL-W CTRL-B same as "CTRL-W b"
526|CTRL-W_CTRL-C| CTRL-W CTRL-C same as "CTRL-W c"
527|CTRL-W_CTRL-D| CTRL-W CTRL-D same as "CTRL-W d"
528|CTRL-W_CTRL-F| CTRL-W CTRL-F same as "CTRL-W f"
529 CTRL-W CTRL-G same as "CTRL-W g .."
530|CTRL-W_CTRL-H| CTRL-W CTRL-H same as "CTRL-W h"
531|CTRL-W_CTRL-I| CTRL-W CTRL-I same as "CTRL-W i"
532|CTRL-W_CTRL-J| CTRL-W CTRL-J same as "CTRL-W j"
533|CTRL-W_CTRL-K| CTRL-W CTRL-K same as "CTRL-W k"
534|CTRL-W_CTRL-L| CTRL-W CTRL-L same as "CTRL-W l"
535|CTRL-W_CTRL-N| CTRL-W CTRL-N same as "CTRL-W n"
536|CTRL-W_CTRL-O| CTRL-W CTRL-O same as "CTRL-W o"
537|CTRL-W_CTRL-P| CTRL-W CTRL-P same as "CTRL-W p"
538|CTRL-W_CTRL-Q| CTRL-W CTRL-Q same as "CTRL-W q"
539|CTRL-W_CTRL-R| CTRL-W CTRL-R same as "CTRL-W r"
540|CTRL-W_CTRL-S| CTRL-W CTRL-S same as "CTRL-W s"
541|CTRL-W_CTRL-T| CTRL-W CTRL-T same as "CTRL-W t"
542|CTRL-W_CTRL-V| CTRL-W CTRL-V same as "CTRL-W v"
543|CTRL-W_CTRL-W| CTRL-W CTRL-W same as "CTRL-W w"
544|CTRL-W_CTRL-X| CTRL-W CTRL-X same as "CTRL-W x"
545|CTRL-W_CTRL-Z| CTRL-W CTRL-Z same as "CTRL-W z"
546|CTRL-W_CTRL-]| CTRL-W CTRL-] same as "CTRL-W ]"
547|CTRL-W_CTRL-^| CTRL-W CTRL-^ same as "CTRL-W ^"
548|CTRL-W_CTRL-_| CTRL-W CTRL-_ same as "CTRL-W _"
549|CTRL-W_+| CTRL-W + increase current window height N lines
550|CTRL-W_-| CTRL-W - decrease current window height N lines
Bram Moolenaarb6e0ec62017-07-23 22:12:20 +0200551|CTRL-W_:| CTRL-W : same as |:|, edit a command line
Bram Moolenaar071d4272004-06-13 20:20:40 +0000552|CTRL-W_<| CTRL-W < decrease current window width N columns
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100553|CTRL-W_=| CTRL-W = make all windows the same height & width
Bram Moolenaar071d4272004-06-13 20:20:40 +0000554|CTRL-W_>| CTRL-W > increase current window width N columns
555|CTRL-W_H| CTRL-W H move current window to the far left
556|CTRL-W_J| CTRL-W J move current window to the very bottom
557|CTRL-W_K| CTRL-W K move current window to the very top
558|CTRL-W_L| CTRL-W L move current window to the far right
559|CTRL-W_P| CTRL-W P go to preview window
560|CTRL-W_R| CTRL-W R rotate windows upwards N times
561|CTRL-W_S| CTRL-W S same as "CTRL-W s"
Bram Moolenaar4c3f5362006-04-11 21:38:50 +0000562|CTRL-W_T| CTRL-W T move current window to a new tab page
Bram Moolenaar071d4272004-06-13 20:20:40 +0000563|CTRL-W_W| CTRL-W W go to N previous window (wrap around)
564|CTRL-W_]| CTRL-W ] split window and jump to tag under cursor
565|CTRL-W_^| CTRL-W ^ split current window and edit alternate
566 file N
567|CTRL-W__| CTRL-W _ set current window height to N (default:
568 very high)
569|CTRL-W_b| CTRL-W b go to bottom window
570|CTRL-W_c| CTRL-W c close current window (like |:close|)
571|CTRL-W_d| CTRL-W d split window and jump to definition under
572 the cursor
573|CTRL-W_f| CTRL-W f split window and edit file name under the
574 cursor
Bram Moolenaard1f56e62006-02-22 21:25:37 +0000575|CTRL-W_F| CTRL-W F split window and edit file name under the
576 cursor and jump to the line number
577 following the file name.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000578|CTRL-W_g_CTRL-]| CTRL-W g CTRL-] split window and do |:tjump| to tag under
579 cursor
580|CTRL-W_g]| CTRL-W g ] split window and do |:tselect| for tag
581 under cursor
582|CTRL-W_g}| CTRL-W g } do a |:ptjump| to the tag under the cursor
Bram Moolenaar8dff8182006-04-06 20:18:50 +0000583|CTRL-W_gf| CTRL-W g f edit file name under the cursor in a new
584 tab page
Bram Moolenaar57657d82006-04-21 22:12:41 +0000585|CTRL-W_gF| CTRL-W g F edit file name under the cursor in a new
586 tab page and jump to the line number
587 following the file name.
Bram Moolenaar26967612019-03-17 17:13:16 +0100588|CTRL-W_gt| CTRL-W g t same as `gt`: go to next tab page
589|CTRL-W_gT| CTRL-W g T same as `gT`: go to previous tab page
Bram Moolenaar071d4272004-06-13 20:20:40 +0000590|CTRL-W_h| CTRL-W h go to Nth left window (stop at first window)
591|CTRL-W_i| CTRL-W i split window and jump to declaration of
592 identifier under the cursor
593|CTRL-W_j| CTRL-W j go N windows down (stop at last window)
594|CTRL-W_k| CTRL-W k go N windows up (stop at first window)
595|CTRL-W_l| CTRL-W l go to Nth right window (stop at last window)
596|CTRL-W_n| CTRL-W n open new window, N lines high
597|CTRL-W_o| CTRL-W o close all but current window (like |:only|)
598|CTRL-W_p| CTRL-W p go to previous (last accessed) window
599|CTRL-W_q| CTRL-W q quit current window (like |:quit|)
600|CTRL-W_r| CTRL-W r rotate windows downwards N times
601|CTRL-W_s| CTRL-W s split current window in two parts, new
602 window N lines high
603|CTRL-W_t| CTRL-W t go to top window
604|CTRL-W_v| CTRL-W v split current window vertically, new window
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100605 N columns wide
Bram Moolenaar071d4272004-06-13 20:20:40 +0000606|CTRL-W_w| CTRL-W w go to N next window (wrap around)
607|CTRL-W_x| CTRL-W x exchange current window with window N
608 (default: next window)
609|CTRL-W_z| CTRL-W z close preview window
610|CTRL-W_bar| CTRL-W | set window width to N columns
611|CTRL-W_}| CTRL-W } show tag under cursor in preview window
612|CTRL-W_<Down>| CTRL-W <Down> same as "CTRL-W j"
613|CTRL-W_<Up>| CTRL-W <Up> same as "CTRL-W k"
614|CTRL-W_<Left>| CTRL-W <Left> same as "CTRL-W h"
615|CTRL-W_<Right>| CTRL-W <Right> same as "CTRL-W l"
616
617==============================================================================
6182.3 Square bracket commands *[* *]*
619
620tag char note action in Normal mode ~
621------------------------------------------------------------------------------
622|[_CTRL-D| [ CTRL-D jump to first #define found in current and
623 included files matching the word under the
624 cursor, start searching at beginning of
625 current file
626|[_CTRL-I| [ CTRL-I jump to first line in current and included
627 files that contains the word under the
628 cursor, start searching at beginning of
629 current file
630|[#| [# 1 cursor to N previous unmatched #if, #else
631 or #ifdef
632|['| [' 1 cursor to previous lowercase mark, on first
633 non-blank
634|[(| [( 1 cursor N times back to unmatched '('
635|[star| [* 1 same as "[/"
636|[`| [` 1 cursor to previous lowercase mark
637|[/| [/ 1 cursor to N previous start of a C comment
638|[D| [D list all defines found in current and
639 included files matching the word under the
640 cursor, start searching at beginning of
641 current file
642|[I| [I list all lines found in current and
643 included files that contain the word under
644 the cursor, start searching at beginning of
645 current file
646|[P| [P 2 same as "[p"
647|[[| [[ 1 cursor N sections backward
648|[]| [] 1 cursor N SECTIONS backward
649|[c| [c 1 cursor N times backwards to start of change
650|[d| [d show first #define found in current and
651 included files matching the word under the
652 cursor, start searching at beginning of
653 current file
654|[f| [f same as "gf"
655|[i| [i show first line found in current and
656 included files that contains the word under
657 the cursor, start searching at beginning of
658 current file
Bram Moolenaar071d4272004-06-13 20:20:40 +0000659|[m| [m 1 cursor N times back to start of member
660 function
Bram Moolenaardd2a3cd2007-05-05 17:10:09 +0000661|[p| [p 2 like "P", but adjust indent to current line
662|[s| [s 1 move to the previous misspelled word
Bram Moolenaar071d4272004-06-13 20:20:40 +0000663|[z| [z 1 move to start of open fold
664|[{| [{ 1 cursor N times back to unmatched '{'
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100665|[<MiddleMouse>| [<MiddleMouse> 2 same as "[p"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000666
667|]_CTRL-D| ] CTRL-D jump to first #define found in current and
668 included files matching the word under the
669 cursor, start searching at cursor position
670|]_CTRL-I| ] CTRL-I jump to first line in current and included
671 files that contains the word under the
672 cursor, start searching at cursor position
673|]#| ]# 1 cursor to N next unmatched #endif or #else
674|]'| ]' 1 cursor to next lowercase mark, on first
675 non-blank
676|])| ]) 1 cursor N times forward to unmatched ')'
677|]star| ]* 1 same as "]/"
678|]`| ]` 1 cursor to next lowercase mark
679|]/| ]/ 1 cursor to N next end of a C comment
680|]D| ]D list all #defines found in current and
681 included files matching the word under the
682 cursor, start searching at cursor position
683|]I| ]I list all lines found in current and
684 included files that contain the word under
685 the cursor, start searching at cursor
686 position
687|]P| ]P 2 same as "[p"
688|][| ][ 1 cursor N SECTIONS forward
689|]]| ]] 1 cursor N sections forward
690|]c| ]c 1 cursor N times forward to start of change
691|]d| ]d show first #define found in current and
692 included files matching the word under the
693 cursor, start searching at cursor position
694|]f| ]f same as "gf"
695|]i| ]i show first line found in current and
696 included files that contains the word under
697 the cursor, start searching at cursor
698 position
Bram Moolenaar071d4272004-06-13 20:20:40 +0000699|]m| ]m 1 cursor N times forward to end of member
700 function
Bram Moolenaardd2a3cd2007-05-05 17:10:09 +0000701|]p| ]p 2 like "p", but adjust indent to current line
702|]s| ]s 1 move to next misspelled word
Bram Moolenaar071d4272004-06-13 20:20:40 +0000703|]z| ]z 1 move to end of open fold
704|]}| ]} 1 cursor N times forward to unmatched '}'
Bram Moolenaarfa13eef2013-02-06 17:34:04 +0100705|]<MiddleMouse>| ]<MiddleMouse> 2 same as "]p"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000706
707==============================================================================
7082.4 Commands starting with 'g' *g*
709
710tag char note action in Normal mode ~
711------------------------------------------------------------------------------
712|g_CTRL-A| g CTRL-A only when compiled with MEM_PROFILE
713 defined: dump a memory profile
714|g_CTRL-G| g CTRL-G show information about current cursor
715 position
716|g_CTRL-H| g CTRL-H start Select block mode
717|g_CTRL-]| g CTRL-] |:tjump| to the tag under the cursor
718|g#| g# 1 like "#", but without using "\<" and "\>"
719|g$| g$ 1 when 'wrap' off go to rightmost character of
720 the current line that is on the screen;
721 when 'wrap' on go to the rightmost character
722 of the current screen line
723|g&| g& 2 repeat last ":s" on all lines
724|g'| g'{mark} 1 like |'| but without changing the jumplist
725|g`| g`{mark} 1 like |`| but without changing the jumplist
726|gstar| g* 1 like "*", but without using "\<" and "\>"
Bram Moolenaar2b8388b2015-02-28 13:11:45 +0100727|g+| g+ go to newer text state N times
728|g,| g, 1 go to N newer position in change list
729|g-| g- go to older text state N times
Bram Moolenaar071d4272004-06-13 20:20:40 +0000730|g0| g0 1 when 'wrap' off go to leftmost character of
731 the current line that is on the screen;
732 when 'wrap' on go to the leftmost character
733 of the current screen line
734|g8| g8 print hex value of bytes used in UTF-8
735 character under the cursor
Bram Moolenaar2b8388b2015-02-28 13:11:45 +0100736|g;| g; 1 go to N older position in change list
Bram Moolenaarcfc7d632005-07-28 22:28:16 +0000737|g<| g< display previous command output
Bram Moolenaar071d4272004-06-13 20:20:40 +0000738|g?| g? 2 Rot13 encoding operator
739|g?g?| g?? 2 Rot13 encode current line
740|g?g?| g?g? 2 Rot13 encode current line
741|gD| gD 1 go to definition of word under the cursor
742 in current file
743|gE| gE 1 go backwards to the end of the previous
744 WORD
745|gH| gH start Select line mode
746|gI| gI 2 like "I", but always start in column 1
747|gJ| gJ 2 join lines without inserting space
Bram Moolenaar6c35bea2012-07-25 17:49:10 +0200748|gN| gN 1,2 find the previous match with the last used
749 search pattern and Visually select it
Bram Moolenaar071d4272004-06-13 20:20:40 +0000750|gP| ["x]gP 2 put the text [from register x] before the
751 cursor N times, leave the cursor after it
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +0100752|gQ| gQ switch to "Ex" mode with Vim editing
Bram Moolenaar071d4272004-06-13 20:20:40 +0000753|gR| gR 2 enter Virtual Replace mode
Bram Moolenaar531da592013-05-06 05:58:55 +0200754|gT| gT go to the previous tab page
Bram Moolenaar071d4272004-06-13 20:20:40 +0000755|gU| gU{motion} 2 make Nmove text uppercase
756|gV| gV don't reselect the previous Visual area
757 when executing a mapping or menu in Select
758 mode
759|g]| g] :tselect on the tag under the cursor
760|g^| g^ 1 when 'wrap' off go to leftmost non-white
761 character of the current line that is on
762 the screen; when 'wrap' on go to the
763 leftmost non-white character of the current
764 screen line
Bram Moolenaar2b8388b2015-02-28 13:11:45 +0100765|g_| g_ 1 cursor to the last CHAR N - 1 lines lower
Bram Moolenaar071d4272004-06-13 20:20:40 +0000766|ga| ga print ascii value of character under the
767 cursor
768|gd| gd 1 go to definition of word under the cursor
769 in current function
770|ge| ge 1 go backwards to the end of the previous
771 word
772|gf| gf start editing the file whose name is under
773 the cursor
Bram Moolenaard1f56e62006-02-22 21:25:37 +0000774|gF| gF start editing the file whose name is under
775 the cursor and jump to the line number
776 following the filename.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000777|gg| gg 1 cursor to line N, default first line
778|gh| gh start Select mode
779|gi| gi 2 like "i", but first move to the |'^| mark
780|gj| gj 1 like "j", but when 'wrap' on go N screen
781 lines down
782|gk| gk 1 like "k", but when 'wrap' on go N screen
783 lines up
Bram Moolenaar641e2862012-07-25 15:06:34 +0200784|gn| gn 1,2 find the next match with the last used
785 search pattern and Visually select it
Bram Moolenaar071d4272004-06-13 20:20:40 +0000786|gm| gm 1 go to character at middle of the screenline
Bram Moolenaar8b530c12019-10-28 02:13:05 +0100787|gM| gM 1 go to character at middle of the text line
Bram Moolenaar071d4272004-06-13 20:20:40 +0000788|go| go 1 cursor to byte N in the buffer
789|gp| ["x]gp 2 put the text [from register x] after the
790 cursor N times, leave the cursor after it
791|gq| gq{motion} 2 format Nmove text
792|gr| gr{char} 2 virtual replace N chars with {char}
793|gs| gs go to sleep for N seconds (default 1)
Bram Moolenaar531da592013-05-06 05:58:55 +0200794|gt| gt go to the next tab page
Bram Moolenaar071d4272004-06-13 20:20:40 +0000795|gu| gu{motion} 2 make Nmove text lowercase
796|gv| gv reselect the previous Visual area
797|gw| gw{motion} 2 format Nmove text and keep cursor
Bram Moolenaardd2a3cd2007-05-05 17:10:09 +0000798|netrw-gx| gx execute application for file name under the
799 cursor (only with |netrw| plugin)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000800|g@| g@{motion} call 'operatorfunc'
Bram Moolenaar071d4272004-06-13 20:20:40 +0000801|g~| g~{motion} 2 swap case for Nmove text
802|g<Down>| g<Down> 1 same as "gj"
803|g<End>| g<End> 1 same as "g$"
804|g<Home>| g<Home> 1 same as "g0"
805|g<LeftMouse>| g<LeftMouse> same as <C-LeftMouse>
806 g<MiddleMouse> same as <C-MiddleMouse>
807|g<RightMouse>| g<RightMouse> same as <C-RightMouse>
808|g<Up>| g<Up> 1 same as "gk"
809
810==============================================================================
8112.5 Commands starting with 'z' *z*
812
813tag char note action in Normal mode ~
814------------------------------------------------------------------------------
815|z<CR>| z<CR> redraw, cursor line to top of window,
816 cursor on first non-blank
817|zN<CR>| z{height}<CR> redraw, make window {height} lines high
818|z+| z+ cursor on line N (default line below
819 window), otherwise like "z<CR>"
820|z-| z- redraw, cursor line at bottom of window,
821 cursor on first non-blank
822|z.| z. redraw, cursor line to center of window,
823 cursor on first non-blank
Bram Moolenaar5c2f0502005-12-23 22:11:04 +0000824|z=| z= give spelling suggestions
Bram Moolenaar071d4272004-06-13 20:20:40 +0000825|zA| zA open a closed fold or close an open fold
826 recursively
827|zC| zC close folds recursively
828|zD| zD delete folds recursively
829|zE| zE eliminate all folds
830|zF| zF create a fold for N lines
Bram Moolenaar43abc522005-12-10 20:15:02 +0000831|zG| zG mark word as good spelled word
Bram Moolenaar56b45b92013-06-24 22:22:18 +0200832|zH| zH when 'wrap' off scroll half a screenwidth
833 to the right
834|zL| zL when 'wrap' off scroll half a screenwidth
835 to the left
Bram Moolenaar071d4272004-06-13 20:20:40 +0000836|zM| zM set 'foldlevel' to zero
837|zN| zN set 'foldenable'
838|zO| zO open folds recursively
839|zR| zR set 'foldlevel' to the deepest fold
Bram Moolenaar43abc522005-12-10 20:15:02 +0000840|zW| zW mark word as wrong (bad) spelled word
Bram Moolenaar071d4272004-06-13 20:20:40 +0000841|zX| zX re-apply 'foldlevel'
842|z^| z^ cursor on line N (default line above
843 window), otherwise like "z-"
844|za| za open a closed fold, close an open fold
845|zb| zb redraw, cursor line at bottom of window
846|zc| zc close a fold
847|zd| zd delete a fold
848|ze| ze when 'wrap' off scroll horizontally to
849 position the cursor at the end (right side)
850 of the screen
851|zf| zf{motion} create a fold for Nmove text
Bram Moolenaar43abc522005-12-10 20:15:02 +0000852|zg| zg mark word as good spelled word
Bram Moolenaar071d4272004-06-13 20:20:40 +0000853|zh| zh when 'wrap' off scroll screen N characters
854 to the right
855|zi| zi toggle 'foldenable'
856|zj| zj 1 move to the start of the next fold
857|zk| zk 1 move to the end of the previous fold
858|zl| zl when 'wrap' off scroll screen N characters
859 to the left
860|zm| zm subtract one from 'foldlevel'
861|zn| zn reset 'foldenable'
862|zo| zo open fold
863|zr| zr add one to 'foldlevel'
864|zs| zs when 'wrap' off scroll horizontally to
865 position the cursor at the start (left
866 side) of the screen
867|zt| zt redraw, cursor line at top of window
Bram Moolenaar25c9c682019-05-05 18:13:34 +0200868|zuw| zuw undo |zw|
869|zug| zug undo |zg|
870|zuW| zuW undo |zW|
871|zuG| zuG undo |zG|
Bram Moolenaar071d4272004-06-13 20:20:40 +0000872|zv| zv open enough folds to view the cursor line
Bram Moolenaar43abc522005-12-10 20:15:02 +0000873|zw| zw mark word as wrong (bad) spelled word
Bram Moolenaar071d4272004-06-13 20:20:40 +0000874|zx| zx re-apply 'foldlevel' and do "zv"
875|zz| zz redraw, cursor line at center of window
876|z<Left>| z<Left> same as "zh"
877|z<Right>| z<Right> same as "zl"
878
879==============================================================================
Bram Moolenaarf6b40102019-02-22 15:24:03 +01008802.6 Operator-pending mode *operator-pending-index*
881
882These can be used after an operator, but before a {motion} has been entered.
883
Bram Moolenaar26967612019-03-17 17:13:16 +0100884tag char action in Operator-pending mode ~
Bram Moolenaarf6b40102019-02-22 15:24:03 +0100885-----------------------------------------------------------------------
886|o_v| v force operator to work characterwise
887|o_V| V force operator to work linewise
888|o_CTRL-V| CTRL-V force operator to work blockwise
889
890==============================================================================
Bram Moolenaar071d4272004-06-13 20:20:40 +00008913. Visual mode *visual-index*
892
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000893Most commands in Visual mode are the same as in Normal mode. The ones listed
Bram Moolenaar071d4272004-06-13 20:20:40 +0000894here are those that are different.
895
896tag command note action in Visual mode ~
897------------------------------------------------------------------------------
898|v_CTRL-\_CTRL-N| CTRL-\ CTRL-N stop Visual mode
899|v_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
Bram Moolenaaraa3b15d2016-04-21 08:53:19 +0200900|v_CTRL-A| CTRL-A 2 add N to number in highlighted text
Bram Moolenaar81695252004-12-29 20:58:21 +0000901|v_CTRL-C| CTRL-C stop Visual mode
Bram Moolenaar071d4272004-06-13 20:20:40 +0000902|v_CTRL-G| CTRL-G toggle between Visual mode and Select mode
903|v_<BS>| <BS> 2 Select mode: delete highlighted area
904|v_CTRL-H| CTRL-H 2 same as <BS>
905|v_CTRL-O| CTRL-O switch from Select to Visual mode for one
906 command
907|v_CTRL-V| CTRL-V make Visual mode blockwise or stop Visual
908 mode
Bram Moolenaaraa3b15d2016-04-21 08:53:19 +0200909|v_CTRL-X| CTRL-X 2 subtract N from number in highlighted text
Bram Moolenaar81695252004-12-29 20:58:21 +0000910|v_<Esc>| <Esc> stop Visual mode
Bram Moolenaar071d4272004-06-13 20:20:40 +0000911|v_CTRL-]| CTRL-] jump to highlighted tag
912|v_!| !{filter} 2 filter the highlighted lines through the
913 external command {filter}
914|v_:| : start a command-line with the highlighted
915 lines as a range
916|v_<| < 2 shift the highlighted lines one
917 'shiftwidth' left
918|v_=| = 2 filter the highlighted lines through the
919 external program given with the 'equalprg'
920 option
921|v_>| > 2 shift the highlighted lines one
922 'shiftwidth' right
923|v_b_A| A 2 block mode: append same text in all lines,
924 after the highlighted area
925|v_C| C 2 delete the highlighted lines and start
926 insert
927|v_D| D 2 delete the highlighted lines
928|v_b_I| I 2 block mode: insert same text in all lines,
929 before the highlighted area
930|v_J| J 2 join the highlighted lines
931|v_K| K run 'keywordprg' on the highlighted area
932|v_O| O Move horizontally to other corner of area.
933 Q does not start Ex mode
934|v_R| R 2 delete the highlighted lines and start
935 insert
936|v_S| S 2 delete the highlighted lines and start
937 insert
938|v_U| U 2 make highlighted area uppercase
939|v_V| V make Visual mode linewise or stop Visual
940 mode
941|v_X| X 2 delete the highlighted lines
942|v_Y| Y yank the highlighted lines
Bram Moolenaarf2330482008-06-24 20:19:36 +0000943|v_aquote| a" extend highlighted area with a double
944 quoted string
945|v_a'| a' extend highlighted area with a single
946 quoted string
Bram Moolenaar071d4272004-06-13 20:20:40 +0000947|v_a(| a( same as ab
948|v_a)| a) same as ab
949|v_a<| a< extend highlighted area with a <> block
950|v_a>| a> same as a<
951|v_aB| aB extend highlighted area with a {} block
952|v_aW| aW extend highlighted area with "a WORD"
953|v_a[| a[ extend highlighted area with a [] block
954|v_a]| a] same as a[
Bram Moolenaarf2330482008-06-24 20:19:36 +0000955|v_a`| a` extend highlighted area with a backtick
956 quoted string
Bram Moolenaar071d4272004-06-13 20:20:40 +0000957|v_ab| ab extend highlighted area with a () block
958|v_ap| ap extend highlighted area with a paragraph
959|v_as| as extend highlighted area with a sentence
Bram Moolenaarf2330482008-06-24 20:19:36 +0000960|v_at| at extend highlighted area with a tag block
Bram Moolenaar071d4272004-06-13 20:20:40 +0000961|v_aw| aw extend highlighted area with "a word"
962|v_a{| a{ same as aB
963|v_a}| a} same as aB
964|v_c| c 2 delete highlighted area and start insert
965|v_d| d 2 delete highlighted area
Bram Moolenaaraa3b15d2016-04-21 08:53:19 +0200966|v_g_CTRL-A| g CTRL-A 2 add N to number in highlighted text
967|v_g_CTRL-X| g CTRL-X 2 subtract N from number in highlighted text
Bram Moolenaar071d4272004-06-13 20:20:40 +0000968|v_gJ| gJ 2 join the highlighted lines without
969 inserting spaces
970|v_gq| gq 2 format the highlighted lines
971|v_gv| gv exchange current and previous highlighted
972 area
Bram Moolenaarf2330482008-06-24 20:19:36 +0000973|v_iquote| i" extend highlighted area with a double
974 quoted string (without quotes)
975|v_i'| i' extend highlighted area with a single
976 quoted string (without quotes)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000977|v_i(| i( same as ib
978|v_i)| i) same as ib
979|v_i<| i< extend highlighted area with inner <> block
980|v_i>| i> same as i<
981|v_iB| iB extend highlighted area with inner {} block
982|v_iW| iW extend highlighted area with "inner WORD"
983|v_i[| i[ extend highlighted area with inner [] block
984|v_i]| i] same as i[
Bram Moolenaarf2330482008-06-24 20:19:36 +0000985|v_i`| i` extend highlighted area with a backtick
986 quoted string (without the backticks)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000987|v_ib| ib extend highlighted area with inner () block
988|v_ip| ip extend highlighted area with inner paragraph
989|v_is| is extend highlighted area with inner sentence
Bram Moolenaarf2330482008-06-24 20:19:36 +0000990|v_it| it extend highlighted area with inner tag block
Bram Moolenaar071d4272004-06-13 20:20:40 +0000991|v_iw| iw extend highlighted area with "inner word"
992|v_i{| i{ same as iB
993|v_i}| i} same as iB
994|v_o| o move cursor to other corner of area
Bram Moolenaar7dda86f2018-04-20 22:36:41 +0200995|v_r| r 2 replace highlighted area with a character
Bram Moolenaar071d4272004-06-13 20:20:40 +0000996|v_s| s 2 delete highlighted area and start insert
997|v_u| u 2 make highlighted area lowercase
998|v_v| v make Visual mode characterwise or stop
999 Visual mode
1000|v_x| x 2 delete the highlighted area
1001|v_y| y yank the highlighted area
1002|v_~| ~ 2 swap case for the highlighted area
1003
1004==============================================================================
10054. Command-line editing *ex-edit-index*
1006
1007Get to the command-line with the ':', '!', '/' or '?' commands.
1008Normal characters are inserted at the current cursor position.
1009"Completion" below refers to context-sensitive completion. It will complete
1010file names, tags, commands etc. as appropriate.
1011
Bram Moolenaar26967612019-03-17 17:13:16 +01001012tag command action in Command-line editing mode ~
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +01001013------------------------------------------------------------------------------
Bram Moolenaar071d4272004-06-13 20:20:40 +00001014 CTRL-@ not used
1015|c_CTRL-A| CTRL-A do completion on the pattern in front of the
1016 cursor and insert all matches
1017|c_CTRL-B| CTRL-B cursor to begin of command-line
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +01001018|c_CTRL-C| CTRL-C same as <Esc>
Bram Moolenaar071d4272004-06-13 20:20:40 +00001019|c_CTRL-D| CTRL-D list completions that match the pattern in
1020 front of the cursor
1021|c_CTRL-E| CTRL-E cursor to end of command-line
1022|'cedit'| CTRL-F default value for 'cedit': opens the
1023 command-line window; otherwise not used
Bram Moolenaar818078d2016-08-27 21:58:42 +02001024|c_CTRL-G| CTRL-G next match when 'incsearch' is active
Bram Moolenaar071d4272004-06-13 20:20:40 +00001025|c_<BS>| <BS> delete the character in front of the cursor
1026|c_digraph| {char1} <BS> {char2}
1027 enter digraph when 'digraph' is on
1028|c_CTRL-H| CTRL-H same as <BS>
1029|c_<Tab>| <Tab> if 'wildchar' is <Tab>: Do completion on
1030 the pattern in front of the cursor
1031|c_<S-Tab>| <S-Tab> same as CTRL-P
1032|c_wildchar| 'wildchar' Do completion on the pattern in front of the
1033 cursor (default: <Tab>)
1034|c_CTRL-I| CTRL-I same as <Tab>
1035|c_<NL>| <NL> same as <CR>
1036|c_CTRL-J| CTRL-J same as <CR>
1037|c_CTRL-K| CTRL-K {char1} {char2}
1038 enter digraph
1039|c_CTRL-L| CTRL-L do completion on the pattern in front of the
1040 cursor and insert the longest common part
1041|c_<CR>| <CR> execute entered command
Bram Moolenaar2ec618c2016-10-01 14:47:05 +02001042|c_CTRL-M| CTRL-M same as <CR>
Bram Moolenaar071d4272004-06-13 20:20:40 +00001043|c_CTRL-N| CTRL-N after using 'wildchar' with multiple matches:
Bram Moolenaar214641f2017-03-05 17:04:09 +01001044 go to next match, otherwise: recall older
1045 command-line from history.
Bram Moolenaar071d4272004-06-13 20:20:40 +00001046 CTRL-O not used
1047|c_CTRL-P| CTRL-P after using 'wildchar' with multiple matches:
Bram Moolenaar214641f2017-03-05 17:04:09 +01001048 go to previous match, otherwise: recall older
1049 command-line from history.
Bram Moolenaar071d4272004-06-13 20:20:40 +00001050|c_CTRL-Q| CTRL-Q same as CTRL-V, unless it's used for terminal
1051 control flow
Bram Moolenaar63b74a82019-03-24 15:09:13 +01001052|c_CTRL-R| CTRL-R {regname}
Bram Moolenaar071d4272004-06-13 20:20:40 +00001053 insert the contents of a register or object
1054 under the cursor as if typed
Bram Moolenaar63b74a82019-03-24 15:09:13 +01001055|c_CTRL-R_CTRL-R| CTRL-R CTRL-R {regname}
1056|c_CTRL-R_CTRL-O| CTRL-R CTRL-O {regname}
Bram Moolenaar071d4272004-06-13 20:20:40 +00001057 insert the contents of a register or object
1058 under the cursor literally
1059 CTRL-S (used for terminal control flow)
Bram Moolenaar818078d2016-08-27 21:58:42 +02001060|c_CTRL-T| CTRL-T previous match when 'incsearch' is active
Bram Moolenaar071d4272004-06-13 20:20:40 +00001061|c_CTRL-U| CTRL-U remove all characters
1062|c_CTRL-V| CTRL-V insert next non-digit literally, insert three
1063 digit decimal number as a single byte.
1064|c_CTRL-W| CTRL-W delete the word in front of the cursor
1065 CTRL-X not used (reserved for completion)
1066 CTRL-Y copy (yank) modeless selection
1067 CTRL-Z not used (reserved for suspend)
1068|c_<Esc>| <Esc> abandon command-line without executing it
Bram Moolenaar2ec618c2016-10-01 14:47:05 +02001069|c_CTRL-[| CTRL-[ same as <Esc>
Bram Moolenaarfa13eef2013-02-06 17:34:04 +01001070|c_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode, abandon command-line
1071|c_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode',
Bram Moolenaar071d4272004-06-13 20:20:40 +00001072 abandon command-line
1073 CTRL-\ a - d reserved for extensions
1074|c_CTRL-\_e| CTRL-\ e {expr} replace the command line with the result of
1075 {expr}
1076 CTRL-\ f - z reserved for extensions
1077 CTRL-\ others not used
Bram Moolenaardd2a3cd2007-05-05 17:10:09 +00001078|c_CTRL-]| CTRL-] trigger abbreviation
Bram Moolenaar071d4272004-06-13 20:20:40 +00001079|c_CTRL-^| CTRL-^ toggle use of |:lmap| mappings
1080|c_CTRL-_| CTRL-_ when 'allowrevins' set: change language
1081 (Hebrew, Farsi)
1082|c_<Del>| <Del> delete the character under the cursor
1083
1084|c_<Left>| <Left> cursor left
1085|c_<S-Left>| <S-Left> cursor one word left
1086|c_<C-Left>| <C-Left> cursor one word left
1087|c_<Right>| <Right> cursor right
1088|c_<S-Right>| <S-Right> cursor one word right
1089|c_<C-Right>| <C-Right> cursor one word right
1090|c_<Up>| <Up> recall previous command-line from history that
1091 matches pattern in front of the cursor
1092|c_<S-Up>| <S-Up> recall previous command-line from history
1093|c_<Down>| <Down> recall next command-line from history that
1094 matches pattern in front of the cursor
1095|c_<S-Down>| <S-Down> recall next command-line from history
1096|c_<Home>| <Home> cursor to start of command-line
1097|c_<End>| <End> cursor to end of command-line
1098|c_<PageDown>| <PageDown> same as <S-Down>
1099|c_<PageUp>| <PageUp> same as <S-Up>
1100|c_<Insert>| <Insert> toggle insert/overstrike mode
1101|c_<LeftMouse>| <LeftMouse> cursor at mouse click
1102
Bram Moolenaarf6b40102019-02-22 15:24:03 +01001103==============================================================================
11045. Terminal-Job mode *terminal-job-index*
1105
1106Most Normal mode commands except for window commands (|CTRL-W|) do not work in
1107a terminal window. Switch to Terminal-Normal mode to use them.
1108This assumes 'termwinkey' is not set.
1109
Bram Moolenaar26967612019-03-17 17:13:16 +01001110tag char action in Terminal-Job mode ~
Bram Moolenaarf6b40102019-02-22 15:24:03 +01001111-----------------------------------------------------------------------
1112|t_CTRL-\_CTRL-N| CTRL-\ CTRL-N switch to Terminal-Normal mode
Bram Moolenaar26967612019-03-17 17:13:16 +01001113|t_CTRL-W_N| CTRL-W N switch to Terminal-Normal mode
1114|t_CTRL-W_:| CTRL-W : enter an Ex command
1115|t_CTRL-W_.| CTRL-W . type CTRL-W in the terminal
Bram Moolenaarf6b40102019-02-22 15:24:03 +01001116 CTRL-W CTRL-\ send a CTRL-\ to the job in the terminal
Bram Moolenaar7ceefb32020-05-01 16:07:38 +02001117|t_CTRL-W_quote| CTRL-W " {register}
Bram Moolenaarf6b40102019-02-22 15:24:03 +01001118 paste register in the terminal
1119|t_CTRL-W_CTRL-C| CTRL-W CTRL-C forcefully ends the job
Bram Moolenaar911ead12019-04-21 00:03:35 +02001120|t_CTRL-W_CTRL-W| CTRL-W CTRL-W move focus to the next window
Bram Moolenaar26967612019-03-17 17:13:16 +01001121|t_CTRL-W_gt| CTRL-W gt go to next tabpage, same as `gt`
1122|t_CTRL-W_gT| CTRL-W gT go to previous tabpage, same as `gT`
Bram Moolenaarf6b40102019-02-22 15:24:03 +01001123
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001124You found it, Arthur! *holy-grail* *:smile*
Bram Moolenaar071d4272004-06-13 20:20:40 +00001125
1126==============================================================================
Bram Moolenaarf6b40102019-02-22 15:24:03 +010011276. EX commands *ex-cmd-index* *:index*
Bram Moolenaar071d4272004-06-13 20:20:40 +00001128
1129This is a brief but complete listing of all the ":" commands, without
1130mentioning any arguments. The optional part of the command name is inside [].
1131The commands are sorted on the non-optional part of their name.
1132
Bram Moolenaar26967612019-03-17 17:13:16 +01001133tag command action ~
Bram Moolenaar2a8a3ec2011-01-08 16:06:37 +01001134------------------------------------------------------------------------------
Bram Moolenaar30e9b3c2019-09-07 16:24:12 +02001135|:| : nothing
1136|:range| :{range} go to last line in {range}
Bram Moolenaar071d4272004-06-13 20:20:40 +00001137|:!| :! filter lines or execute an external command
1138|:!!| :!! repeat last ":!" command
1139|:#| :# same as ":number"
1140|:&| :& repeat last ":substitute"
1141|:star| :* execute contents of a register
1142|:<| :< shift lines one 'shiftwidth' left
1143|:=| := print the cursor line number
1144|:>| :> shift lines one 'shiftwidth' right
1145|:@| :@ execute contents of a register
1146|:@@| :@@ repeat the previous ":@"
1147|:Next| :N[ext] go to previous file in the argument list
1148|:Print| :P[rint] print lines
1149|:X| :X ask for encryption key
1150|:append| :a[ppend] append text
1151|:abbreviate| :ab[breviate] enter abbreviation
1152|:abclear| :abc[lear] remove all abbreviations
1153|:aboveleft| :abo[veleft] make split window appear left or above
1154|:all| :al[l] open a window for each file in the argument
1155 list
1156|:amenu| :am[enu] enter new menu item for all modes
1157|:anoremenu| :an[oremenu] enter a new menu for all modes that will not
1158 be remapped
1159|:args| :ar[gs] print the argument list
1160|:argadd| :arga[dd] add items to the argument list
1161|:argdelete| :argd[elete] delete items from the argument list
1162|:argedit| :arge[dit] add item to the argument list and edit it
1163|:argdo| :argdo do a command on all items in the argument list
1164|:argglobal| :argg[lobal] define the global argument list
1165|:arglocal| :argl[ocal] define a local argument list
1166|:argument| :argu[ment] go to specific file in the argument list
1167|:ascii| :as[cii] print ascii value of character under the cursor
1168|:autocmd| :au[tocmd] enter or show autocommands
1169|:augroup| :aug[roup] select the autocommand group to use
1170|:aunmenu| :aun[menu] remove menu for all modes
1171|:buffer| :b[uffer] go to specific buffer in the buffer list
1172|:bNext| :bN[ext] go to previous buffer in the buffer list
1173|:ball| :ba[ll] open a window for each buffer in the buffer list
1174|:badd| :bad[d] add buffer to the buffer list
1175|:bdelete| :bd[elete] remove a buffer from the buffer list
1176|:behave| :be[have] set mouse and selection behavior
1177|:belowright| :bel[owright] make split window appear right or below
1178|:bfirst| :bf[irst] go to first buffer in the buffer list
1179|:blast| :bl[ast] go to last buffer in the buffer list
1180|:bmodified| :bm[odified] go to next buffer in the buffer list that has
1181 been modified
1182|:bnext| :bn[ext] go to next buffer in the buffer list
1183|:botright| :bo[tright] make split window appear at bottom or far right
1184|:bprevious| :bp[revious] go to previous buffer in the buffer list
1185|:brewind| :br[ewind] go to first buffer in the buffer list
1186|:break| :brea[k] break out of while loop
1187|:breakadd| :breaka[dd] add a debugger breakpoint
1188|:breakdel| :breakd[el] delete a debugger breakpoint
1189|:breaklist| :breakl[ist] list debugger breakpoints
1190|:browse| :bro[wse] use file selection dialog
1191|:bufdo| :bufdo execute command in each listed buffer
1192|:buffers| :buffers list all files in the buffer list
1193|:bunload| :bun[load] unload a specific buffer
1194|:bwipeout| :bw[ipeout] really delete a buffer
1195|:change| :c[hange] replace a line or series of lines
1196|:cNext| :cN[ext] go to previous error
1197|:cNfile| :cNf[ile] go to last error in previous file
1198|:cabbrev| :ca[bbrev] like ":abbreviate" but for Command-line mode
1199|:cabclear| :cabc[lear] clear all abbreviations for Command-line mode
Bram Moolenaar3ff33112019-05-03 21:56:35 +02001200|:cabove| :cabo[ve] go to error above current line
Bram Moolenaara6878372014-03-22 21:02:50 +01001201|:caddbuffer| :cad[dbuffer] add errors from buffer
1202|:caddexpr| :cadde[xpr] add errors from expr
Bram Moolenaar4770d092006-01-12 23:22:24 +00001203|:caddfile| :caddf[ile] add error message to current quickfix list
Bram Moolenaarcf6a55c2019-05-05 15:02:30 +02001204|:cafter| :caf[ter] go to error after current cursor
Bram Moolenaar071d4272004-06-13 20:20:40 +00001205|:call| :cal[l] call a function
1206|:catch| :cat[ch] part of a :try command
Bram Moolenaarcf6a55c2019-05-05 15:02:30 +02001207|:cbefore| :cbef[ore] go to error before current cursor
1208|:cbelow| :cbel[ow] go to error below current line
Bram Moolenaar537ef082016-07-09 17:56:19 +02001209|:cbottom| :cbo[ttom] scroll to the bottom of the quickfix window
Bram Moolenaar86b68352004-12-27 21:59:20 +00001210|:cbuffer| :cb[uffer] parse error messages and jump to first error
Bram Moolenaar071d4272004-06-13 20:20:40 +00001211|:cc| :cc go to specific error
1212|:cclose| :ccl[ose] close quickfix window
1213|:cd| :cd change directory
Bram Moolenaaraa23b372015-09-08 18:46:31 +02001214|:cdo| :cdo execute command in each valid error list entry
1215|:cfdo| :cfd[o] execute command in each file in error list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001216|:center| :ce[nter] format lines at the center
Bram Moolenaar87e25fd2005-07-27 21:13:01 +00001217|:cexpr| :cex[pr] read errors from expr and jump to first
Bram Moolenaar071d4272004-06-13 20:20:40 +00001218|:cfile| :cf[ile] read file with error messages and jump to first
1219|:cfirst| :cfir[st] go to the specified error, default first one
Bram Moolenaarc01140a2006-03-24 22:21:52 +00001220|:cgetbuffer| :cgetb[uffer] get errors from buffer
Bram Moolenaar8ab561d2006-03-23 22:44:10 +00001221|:cgetexpr| :cgete[xpr] get errors from expr
Bram Moolenaar071d4272004-06-13 20:20:40 +00001222|:cgetfile| :cg[etfile] read file with error messages
Bram Moolenaar34700a62013-03-07 13:20:54 +01001223|:changes| :changes print the change list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001224|:chdir| :chd[ir] change directory
1225|:checkpath| :che[ckpath] list included files
1226|:checktime| :checkt[ime] check timestamp of loaded buffers
Bram Moolenaar42ebd062016-07-17 13:35:14 +02001227|:chistory| :chi[story] list the error lists
Bram Moolenaar071d4272004-06-13 20:20:40 +00001228|:clast| :cla[st] go to the specified error, default last one
Bram Moolenaarc95a3022016-06-12 23:01:46 +02001229|:clearjumps| :cle[arjumps] clear the jump list
1230|:clist| :cl[ist] list all errors
Bram Moolenaar071d4272004-06-13 20:20:40 +00001231|:close| :clo[se] close current window
1232|:cmap| :cm[ap] like ":map" but for Command-line mode
1233|:cmapclear| :cmapc[lear] clear all mappings for Command-line mode
1234|:cmenu| :cme[nu] add menu for Command-line mode
1235|:cnext| :cn[ext] go to next error
1236|:cnewer| :cnew[er] go to newer error list
1237|:cnfile| :cnf[ile] go to first error in next file
1238|:cnoremap| :cno[remap] like ":noremap" but for Command-line mode
1239|:cnoreabbrev| :cnorea[bbrev] like ":noreabbrev" but for Command-line mode
1240|:cnoremenu| :cnoreme[nu] like ":noremenu" but for Command-line mode
1241|:copy| :co[py] copy lines
1242|:colder| :col[der] go to older error list
1243|:colorscheme| :colo[rscheme] load a specific color scheme
1244|:command| :com[mand] create user-defined command
1245|:comclear| :comc[lear] clear all user-defined commands
1246|:compiler| :comp[iler] do settings for a specific compiler
1247|:continue| :con[tinue] go back to :while
1248|:confirm| :conf[irm] prompt user when confirmation required
Bram Moolenaar6c1e1572019-06-22 02:13:00 +02001249|:const| :cons[t] create a variable as a constant
Bram Moolenaar071d4272004-06-13 20:20:40 +00001250|:copen| :cope[n] open quickfix window
1251|:cprevious| :cp[revious] go to previous error
1252|:cpfile| :cpf[ile] go to last error in previous file
1253|:cquit| :cq[uit] quit Vim with an error code
1254|:crewind| :cr[ewind] go to the specified error, default first one
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001255|:cscope| :cs[cope] execute cscope command
Bram Moolenaar071d4272004-06-13 20:20:40 +00001256|:cstag| :cst[ag] use cscope to jump to a tag
1257|:cunmap| :cu[nmap] like ":unmap" but for Command-line mode
1258|:cunabbrev| :cuna[bbrev] like ":unabbrev" but for Command-line mode
1259|:cunmenu| :cunme[nu] remove menu for Command-line mode
1260|:cwindow| :cw[indow] open or close quickfix window
1261|:delete| :d[elete] delete lines
1262|:debug| :deb[ug] run a command in debugging mode
1263|:debuggreedy| :debugg[reedy] read debug mode commands from normal input
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001264|:def| :def define a Vim9 user function
Bram Moolenaar071d4272004-06-13 20:20:40 +00001265|:delcommand| :delc[ommand] delete user-defined command
1266|:delfunction| :delf[unction] delete a user function
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001267|:delmarks| :delm[arks] delete marks
Bram Moolenaar071d4272004-06-13 20:20:40 +00001268|:diffupdate| :dif[fupdate] update 'diff' buffers
1269|:diffget| :diffg[et] remove differences in current buffer
Bram Moolenaar2df6dcc2004-07-12 15:53:54 +00001270|:diffoff| :diffo[ff] switch off diff mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001271|:diffpatch| :diffp[atch] apply a patch and show differences
1272|:diffput| :diffpu[t] remove differences in other buffer
1273|:diffsplit| :diffs[plit] show differences with another file
1274|:diffthis| :diffthis make current window a diff window
1275|:digraphs| :dig[raphs] show or enter digraphs
1276|:display| :di[splay] display registers
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001277|:disassemble| :disa[ssemble] disassemble Vim9 user function
Bram Moolenaar071d4272004-06-13 20:20:40 +00001278|:djump| :dj[ump] jump to #define
Bram Moolenaarb1332082013-10-06 14:22:40 +02001279|:dl| :dl short for |:delete| with the 'l' flag
Bram Moolenaar9ba7e172013-07-17 22:37:26 +02001280|:dlist| :dli[st] list #defines
Bram Moolenaar071d4272004-06-13 20:20:40 +00001281|:doautocmd| :do[autocmd] apply autocommands to current buffer
1282|:doautoall| :doautoa[ll] apply autocommands for all loaded buffers
Bram Moolenaarb1332082013-10-06 14:22:40 +02001283|:dp| :d[elete]p short for |:delete| with the 'p' flag
Bram Moolenaar071d4272004-06-13 20:20:40 +00001284|:drop| :dr[op] jump to window editing file or edit file in
1285 current window
1286|:dsearch| :ds[earch] list one #define
1287|:dsplit| :dsp[lit] split window and jump to #define
1288|:edit| :e[dit] edit a file
Bram Moolenaard3667a22006-03-16 21:35:52 +00001289|:earlier| :ea[rlier] go to older change, undo
Bram Moolenaar071d4272004-06-13 20:20:40 +00001290|:echo| :ec[ho] echoes the result of expressions
1291|:echoerr| :echoe[rr] like :echo, show like an error and use history
1292|:echohl| :echoh[l] set highlighting for echo commands
1293|:echomsg| :echom[sg] same as :echo, put message in history
1294|:echon| :echon same as :echo, but without <EOL>
1295|:else| :el[se] part of an :if command
1296|:elseif| :elsei[f] part of an :if command
1297|:emenu| :em[enu] execute a menu by name
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001298|:enddef| :enddef end of a user function started with :def
Bram Moolenaar071d4272004-06-13 20:20:40 +00001299|:endif| :en[dif] end previous :if
Bram Moolenaar17568792005-07-06 22:28:03 +00001300|:endfor| :endfo[r] end previous :for
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001301|:endfunction| :endf[unction] end of a user function started with :function
Bram Moolenaar071d4272004-06-13 20:20:40 +00001302|:endtry| :endt[ry] end previous :try
1303|:endwhile| :endw[hile] end previous :while
1304|:enew| :ene[w] edit a new, unnamed buffer
1305|:ex| :ex same as ":edit"
1306|:execute| :exe[cute] execute result of expressions
1307|:exit| :exi[t] same as ":xit"
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001308|:export| :exp[ort] Vim9: export an item from a script
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +00001309|:exusage| :exu[sage] overview of Ex commands
Bram Moolenaar071d4272004-06-13 20:20:40 +00001310|:file| :f[ile] show or set the current file name
1311|:files| :files list all files in the buffer list
1312|:filetype| :filet[ype] switch file type detection on/off
Bram Moolenaare4a3bcf2016-08-26 19:52:37 +02001313|:filter| :filt[er] filter output of following command
Bram Moolenaar071d4272004-06-13 20:20:40 +00001314|:find| :fin[d] find file in 'path' and edit it
1315|:finally| :fina[lly] part of a :try command
1316|:finish| :fini[sh] quit sourcing a Vim script
1317|:first| :fir[st] go to the first file in the argument list
1318|:fixdel| :fix[del] set key code of <Del>
1319|:fold| :fo[ld] create a fold
1320|:foldclose| :foldc[lose] close folds
1321|:folddoopen| :foldd[oopen] execute command on lines not in a closed fold
1322|:folddoclosed| :folddoc[losed] execute command on lines in a closed fold
1323|:foldopen| :foldo[pen] open folds
Bram Moolenaar17568792005-07-06 22:28:03 +00001324|:for| :for for loop
Bram Moolenaar071d4272004-06-13 20:20:40 +00001325|:function| :fu[nction] define a user function
1326|:global| :g[lobal] execute commands for matching lines
1327|:goto| :go[to] go to byte in the buffer
1328|:grep| :gr[ep] run 'grepprg' and jump to first match
Bram Moolenaar17568792005-07-06 22:28:03 +00001329|:grepadd| :grepa[dd] like :grep, but append to current list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001330|:gui| :gu[i] start the GUI
1331|:gvim| :gv[im] start the GUI
1332|:hardcopy| :ha[rdcopy] send text to the printer
1333|:help| :h[elp] open a help window
Bram Moolenaar5bfa2ed2014-09-19 19:39:34 +02001334|:helpclose| :helpc[lose] close one help window
Bram Moolenaar071d4272004-06-13 20:20:40 +00001335|:helpfind| :helpf[ind] dialog to open a help window
1336|:helpgrep| :helpg[rep] like ":grep" but searches help files
1337|:helptags| :helpt[ags] generate help tags for a directory
1338|:highlight| :hi[ghlight] specify highlighting methods
1339|:hide| :hid[e] hide current buffer for a command
1340|:history| :his[tory] print a history list
1341|:insert| :i[nsert] insert text
1342|:iabbrev| :ia[bbrev] like ":abbrev" but for Insert mode
1343|:iabclear| :iabc[lear] like ":abclear" but for Insert mode
1344|:if| :if execute commands when condition met
1345|:ijump| :ij[ump] jump to definition of identifier
1346|:ilist| :il[ist] list lines where identifier matches
1347|:imap| :im[ap] like ":map" but for Insert mode
1348|:imapclear| :imapc[lear] like ":mapclear" but for Insert mode
1349|:imenu| :ime[nu] add menu for Insert mode
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001350|:import| :imp[ort] Vim9: import an item from another script
Bram Moolenaar071d4272004-06-13 20:20:40 +00001351|:inoremap| :ino[remap] like ":noremap" but for Insert mode
1352|:inoreabbrev| :inorea[bbrev] like ":noreabbrev" but for Insert mode
1353|:inoremenu| :inoreme[nu] like ":noremenu" but for Insert mode
1354|:intro| :int[ro] print the introductory message
1355|:isearch| :is[earch] list one line where identifier matches
1356|:isplit| :isp[lit] split window and jump to definition of
1357 identifier
1358|:iunmap| :iu[nmap] like ":unmap" but for Insert mode
1359|:iunabbrev| :iuna[bbrev] like ":unabbrev" but for Insert mode
1360|:iunmenu| :iunme[nu] remove menu for Insert mode
1361|:join| :j[oin] join lines
1362|:jumps| :ju[mps] print the jump list
1363|:k| :k set a mark
Bram Moolenaar17568792005-07-06 22:28:03 +00001364|:keepalt| :keepa[lt] following command keeps the alternate file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001365|:keepmarks| :kee[pmarks] following command keeps marks where they are
Bram Moolenaar5302d9e2011-09-14 17:55:08 +02001366|:keepjumps| :keepj[umps] following command keeps jumplist and marks
Bram Moolenaar4b60a6c2013-11-14 05:48:46 +01001367|:keeppatterns| :keepp[atterns] following command keeps search pattern history
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001368|:lNext| :lN[ext] go to previous entry in location list
1369|:lNfile| :lNf[ile] go to last entry in previous file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001370|:list| :l[ist] print lines
Bram Moolenaar3ff33112019-05-03 21:56:35 +02001371|:labove| :lab[ove] go to location above current line
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001372|:laddexpr| :lad[dexpr] add locations from expr
Bram Moolenaara37420f2006-02-04 22:37:47 +00001373|:laddbuffer| :laddb[uffer] add locations from buffer
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001374|:laddfile| :laddf[ile] add locations to current location list
Bram Moolenaarcf6a55c2019-05-05 15:02:30 +02001375|:lafter| :laf[ter] go to location after current cursor
Bram Moolenaar071d4272004-06-13 20:20:40 +00001376|:last| :la[st] go to the last file in the argument list
1377|:language| :lan[guage] set the language (locale)
Bram Moolenaard3667a22006-03-16 21:35:52 +00001378|:later| :lat[er] go to newer change, redo
Bram Moolenaarcf6a55c2019-05-05 15:02:30 +02001379|:lbefore| :lbef[ore] go to location before current cursor
1380|:lbelow| :lbel[ow] go to location below current line
Bram Moolenaar537ef082016-07-09 17:56:19 +02001381|:lbottom| :lbo[ttom] scroll to the bottom of the location window
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001382|:lbuffer| :lb[uffer] parse locations and jump to first location
Bram Moolenaar071d4272004-06-13 20:20:40 +00001383|:lcd| :lc[d] change directory locally
1384|:lchdir| :lch[dir] change directory locally
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001385|:lclose| :lcl[ose] close location window
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001386|:lcscope| :lcs[cope] like ":cscope" but uses location list
Bram Moolenaaraa23b372015-09-08 18:46:31 +02001387|:ldo| :ld[o] execute command in valid location list entries
1388|:lfdo| :lfd[o] execute command in each file in location list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001389|:left| :le[ft] left align lines
1390|:leftabove| :lefta[bove] make split window appear left or above
1391|:let| :let assign a value to a variable or option
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001392|:lexpr| :lex[pr] read locations from expr and jump to first
1393|:lfile| :lf[ile] read file with locations and jump to first
1394|:lfirst| :lfir[st] go to the specified location, default first one
Bram Moolenaarc01140a2006-03-24 22:21:52 +00001395|:lgetbuffer| :lgetb[uffer] get locations from buffer
Bram Moolenaar8ab561d2006-03-23 22:44:10 +00001396|:lgetexpr| :lgete[xpr] get locations from expr
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001397|:lgetfile| :lg[etfile] read file with locations
Bram Moolenaara37420f2006-02-04 22:37:47 +00001398|:lgrep| :lgr[ep] run 'grepprg' and jump to first match
1399|:lgrepadd| :lgrepa[dd] like :grep, but append to current list
Bram Moolenaar8b6144b2006-02-08 09:20:24 +00001400|:lhelpgrep| :lh[elpgrep] like ":helpgrep" but uses location list
Bram Moolenaar42ebd062016-07-17 13:35:14 +02001401|:lhistory| :lhi[story] list the location lists
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001402|:ll| :ll go to specific location
1403|:llast| :lla[st] go to the specified location, default last one
1404|:llist| :lli[st] list all locations
Bram Moolenaara37420f2006-02-04 22:37:47 +00001405|:lmake| :lmak[e] execute external command 'makeprg' and parse
1406 error messages
Bram Moolenaar071d4272004-06-13 20:20:40 +00001407|:lmap| :lm[ap] like ":map!" but includes Lang-Arg mode
1408|:lmapclear| :lmapc[lear] like ":mapclear!" but includes Lang-Arg mode
Bram Moolenaar6ab5b842006-01-26 22:16:34 +00001409|:lnext| :lne[xt] go to next location
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001410|:lnewer| :lnew[er] go to newer location list
1411|:lnfile| :lnf[ile] go to first location in next file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001412|:lnoremap| :ln[oremap] like ":noremap!" but includes Lang-Arg mode
1413|:loadkeymap| :loadk[eymap] load the following keymaps until EOF
1414|:loadview| :lo[adview] load view for current window from a file
1415|:lockmarks| :loc[kmarks] following command keeps marks where they are
Bram Moolenaar24c088a2005-02-02 22:55:47 +00001416|:lockvar| :lockv[ar] lock variables
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001417|:lolder| :lol[der] go to older location list
1418|:lopen| :lope[n] open location window
1419|:lprevious| :lp[revious] go to previous location
1420|:lpfile| :lpf[ile] go to last location in previous file
1421|:lrewind| :lr[ewind] go to the specified location, default first one
Bram Moolenaar071d4272004-06-13 20:20:40 +00001422|:ls| :ls list all buffers
Bram Moolenaarb8a7b562006-02-01 21:47:16 +00001423|:ltag| :lt[ag] jump to tag and add matching tags to the
1424 location list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001425|:lunmap| :lu[nmap] like ":unmap!" but includes Lang-Arg mode
Bram Moolenaar0ba04292010-07-14 23:23:17 +02001426|:lua| :lua execute |Lua| command
1427|:luado| :luad[o] execute Lua command for each line
1428|:luafile| :luaf[ile] execute |Lua| script file
Bram Moolenaara37420f2006-02-04 22:37:47 +00001429|:lvimgrep| :lv[imgrep] search for pattern in files
1430|:lvimgrepadd| :lvimgrepa[dd] like :vimgrep, but append to current list
Bram Moolenaar28c258f2006-01-25 22:02:51 +00001431|:lwindow| :lw[indow] open or close location window
Bram Moolenaar071d4272004-06-13 20:20:40 +00001432|:move| :m[ove] move lines
1433|:mark| :ma[rk] set a mark
1434|:make| :mak[e] execute external command 'makeprg' and parse
1435 error messages
1436|:map| :map show or enter a mapping
1437|:mapclear| :mapc[lear] clear all mappings for Normal and Visual mode
1438|:marks| :marks list all marks
1439|:match| :mat[ch] define a match to highlight
1440|:menu| :me[nu] enter a new menu item
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001441|:menutranslate| :menut[ranslate] add a menu translation item
Bram Moolenaar071d4272004-06-13 20:20:40 +00001442|:messages| :mes[sages] view previously displayed messages
1443|:mkexrc| :mk[exrc] write current mappings and settings to a file
1444|:mksession| :mks[ession] write session info to a file
Bram Moolenaar78599ad2005-06-16 21:47:53 +00001445|:mkspell| :mksp[ell] produce .spl spell file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001446|:mkvimrc| :mkv[imrc] write current mappings and settings to a file
1447|:mkview| :mkvie[w] write view of current window to a file
1448|:mode| :mod[e] show or change the screen mode
Bram Moolenaar8299df92004-07-10 09:47:34 +00001449|:mzscheme| :mz[scheme] execute MzScheme command
1450|:mzfile| :mzf[ile] execute MzScheme script file
Bram Moolenaarb26e6322010-05-22 21:34:09 +02001451|:nbclose| :nbc[lose] close the current Netbeans session
Bram Moolenaar17568792005-07-06 22:28:03 +00001452|:nbkey| :nb[key] pass a key to Netbeans
Bram Moolenaarb26e6322010-05-22 21:34:09 +02001453|:nbstart| :nbs[art] start a new Netbeans session
Bram Moolenaar071d4272004-06-13 20:20:40 +00001454|:next| :n[ext] go to next file in the argument list
1455|:new| :new create a new empty window
1456|:nmap| :nm[ap] like ":map" but for Normal mode
1457|:nmapclear| :nmapc[lear] clear all mappings for Normal mode
1458|:nmenu| :nme[nu] add menu for Normal mode
1459|:nnoremap| :nn[oremap] like ":noremap" but for Normal mode
1460|:nnoremenu| :nnoreme[nu] like ":noremenu" but for Normal mode
Bram Moolenaar76f3b1a2014-03-27 22:30:07 +01001461|:noautocmd| :noa[utocmd] following commands don't trigger autocommands
Bram Moolenaar071d4272004-06-13 20:20:40 +00001462|:noremap| :no[remap] enter a mapping that will not be remapped
1463|:nohlsearch| :noh[lsearch] suspend 'hlsearch' highlighting
1464|:noreabbrev| :norea[bbrev] enter an abbreviation that will not be
1465 remapped
1466|:noremenu| :noreme[nu] enter a menu that will not be remapped
1467|:normal| :norm[al] execute Normal mode commands
Bram Moolenaar76f3b1a2014-03-27 22:30:07 +01001468|:noswapfile| :nos[wapfile] following commands don't create a swap file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001469|:number| :nu[mber] print lines with line number
1470|:nunmap| :nun[map] like ":unmap" but for Normal mode
1471|:nunmenu| :nunme[nu] remove menu for Normal mode
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01001472|:oldfiles| :ol[dfiles] list files that have marks in the viminfo file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001473|:open| :o[pen] start open mode (not implemented)
1474|:omap| :om[ap] like ":map" but for Operator-pending mode
1475|:omapclear| :omapc[lear] remove all mappings for Operator-pending mode
1476|:omenu| :ome[nu] add menu for Operator-pending mode
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00001477|:only| :on[ly] close all windows except the current one
Bram Moolenaar071d4272004-06-13 20:20:40 +00001478|:onoremap| :ono[remap] like ":noremap" but for Operator-pending mode
1479|:onoremenu| :onoreme[nu] like ":noremenu" but for Operator-pending mode
1480|:options| :opt[ions] open the options-window
1481|:ounmap| :ou[nmap] like ":unmap" but for Operator-pending mode
1482|:ounmenu| :ounme[nu] remove menu for Operator-pending mode
Bram Moolenaarb2c03502010-07-02 20:20:09 +02001483|:ownsyntax| :ow[nsyntax] set new local syntax highlight for this window
Bram Moolenaar328da0d2016-03-04 22:22:32 +01001484|:packadd| :pa[ckadd] add a plugin from 'packpath'
Bram Moolenaare18c0b32016-03-20 21:08:34 +01001485|:packloadall| :packl[oadall] load all packages under 'packpath'
Bram Moolenaar071d4272004-06-13 20:20:40 +00001486|:pclose| :pc[lose] close preview window
1487|:pedit| :ped[it] edit file in the preview window
1488|:perl| :pe[rl] execute Perl command
Bram Moolenaar05159a02005-02-26 23:04:13 +00001489|:print| :p[rint] print lines
Bram Moolenaar17568792005-07-06 22:28:03 +00001490|:profdel| :profd[el] stop profiling a function or script
Bram Moolenaar05159a02005-02-26 23:04:13 +00001491|:profile| :prof[ile] profiling functions and scripts
Bram Moolenaarf2330482008-06-24 20:19:36 +00001492|:promptfind| :pro[mptfind] open GUI dialog for searching
1493|:promptrepl| :promptr[epl] open GUI dialog for search/replace
Bram Moolenaar071d4272004-06-13 20:20:40 +00001494|:perldo| :perld[o] execute Perl command for each line
1495|:pop| :po[p] jump to older entry in tag stack
Bram Moolenaar34700a62013-03-07 13:20:54 +01001496|:popup| :popu[p] popup a menu by name
Bram Moolenaar071d4272004-06-13 20:20:40 +00001497|:ppop| :pp[op] ":pop" in preview window
1498|:preserve| :pre[serve] write all text to swap file
1499|:previous| :prev[ious] go to previous file in argument list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001500|:psearch| :ps[earch] like ":ijump" but shows match in preview window
1501|:ptag| :pt[ag] show tag in preview window
1502|:ptNext| :ptN[ext] |:tNext| in preview window
1503|:ptfirst| :ptf[irst] |:trewind| in preview window
1504|:ptjump| :ptj[ump] |:tjump| and show tag in preview window
1505|:ptlast| :ptl[ast] |:tlast| in preview window
1506|:ptnext| :ptn[ext] |:tnext| in preview window
1507|:ptprevious| :ptp[revious] |:tprevious| in preview window
1508|:ptrewind| :ptr[ewind] |:trewind| in preview window
1509|:ptselect| :pts[elect] |:tselect| and show tag in preview window
1510|:put| :pu[t] insert contents of register in the text
1511|:pwd| :pw[d] print current directory
Bram Moolenaar368373e2010-07-19 20:46:22 +02001512|:py3| :py3 execute Python 3 command
Bram Moolenaarb6590522010-07-21 16:00:43 +02001513|:python3| :python3 same as :py3
Bram Moolenaarad3b3662013-05-17 18:14:19 +02001514|:py3do| :py3d[o] execute Python 3 command for each line
Bram Moolenaar60aad972010-07-21 20:36:22 +02001515|:py3file| :py3f[ile] execute Python 3 script file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001516|:python| :py[thon] execute Python command
Bram Moolenaarad3b3662013-05-17 18:14:19 +02001517|:pydo| :pyd[o] execute Python command for each line
Bram Moolenaar071d4272004-06-13 20:20:40 +00001518|:pyfile| :pyf[ile] execute Python script file
Bram Moolenaarf42dd3c2017-01-28 16:06:38 +01001519|:pyx| :pyx execute |python_x| command
1520|:pythonx| :pythonx same as :pyx
1521|:pyxdo| :pyxd[o] execute |python_x| command for each line
1522|:pyxfile| :pyxf[ile] execute |python_x| script file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001523|:quit| :q[uit] quit current window (when one window quit Vim)
1524|:quitall| :quita[ll] quit Vim
1525|:qall| :qa[ll] quit Vim
1526|:read| :r[ead] read file into the text
1527|:recover| :rec[over] recover a file from a swap file
1528|:redo| :red[o] redo one undone change
1529|:redir| :redi[r] redirect messages to a file or register
Bram Moolenaard09091d2019-01-17 16:07:22 +01001530|:redraw| :redr[aw] force a redraw of the display
1531|:redrawstatus| :redraws[tatus] force a redraw of the status line(s)
1532|:redrawtabline| :redrawt[abline] force a redraw of the tabline
Bram Moolenaar071d4272004-06-13 20:20:40 +00001533|:registers| :reg[isters] display the contents of registers
1534|:resize| :res[ize] change current window height
1535|:retab| :ret[ab] change tab size
1536|:return| :retu[rn] return from a user function
1537|:rewind| :rew[ind] go to the first file in the argument list
1538|:right| :ri[ght] right align text
1539|:rightbelow| :rightb[elow] make split window appear right or below
1540|:ruby| :rub[y] execute Ruby command
1541|:rubydo| :rubyd[o] execute Ruby command for each line
1542|:rubyfile| :rubyf[ile] execute Ruby script file
Bram Moolenaar1d689522010-05-28 20:54:39 +02001543|:rundo| :rund[o] read undo information from a file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001544|:runtime| :ru[ntime] source vim scripts in 'runtimepath'
1545|:rviminfo| :rv[iminfo] read from viminfo file
1546|:substitute| :s[ubstitute] find and replace text
1547|:sNext| :sN[ext] split window and go to previous file in
1548 argument list
Bram Moolenaar17568792005-07-06 22:28:03 +00001549|:sandbox| :san[dbox] execute a command in the sandbox
Bram Moolenaar071d4272004-06-13 20:20:40 +00001550|:sargument| :sa[rgument] split window and go to specific file in
1551 argument list
1552|:sall| :sal[l] open a window for each file in argument list
1553|:saveas| :sav[eas] save file under another name.
1554|:sbuffer| :sb[uffer] split window and go to specific file in the
1555 buffer list
1556|:sbNext| :sbN[ext] split window and go to previous file in the
1557 buffer list
1558|:sball| :sba[ll] open a window for each file in the buffer list
1559|:sbfirst| :sbf[irst] split window and go to first file in the
1560 buffer list
1561|:sblast| :sbl[ast] split window and go to last file in buffer
1562 list
1563|:sbmodified| :sbm[odified] split window and go to modified file in the
1564 buffer list
1565|:sbnext| :sbn[ext] split window and go to next file in the buffer
1566 list
1567|:sbprevious| :sbp[revious] split window and go to previous file in the
1568 buffer list
1569|:sbrewind| :sbr[ewind] split window and go to first file in the
1570 buffer list
Bram Moolenaar8feef4f2015-01-07 16:57:10 +01001571|:scriptnames| :scr[iptnames] list names of all sourced Vim scripts
Bram Moolenaar62e1bb42019-04-08 16:25:07 +02001572|:scriptencoding| :scripte[ncoding] encoding used in sourced Vim script
1573|:scriptversion| :scriptv[ersion] version of Vim script used
Bram Moolenaar64969662005-12-14 21:59:55 +00001574|:scscope| :scs[cope] split window and execute cscope command
Bram Moolenaar071d4272004-06-13 20:20:40 +00001575|:set| :se[t] show or set options
1576|:setfiletype| :setf[iletype] set 'filetype', unless it was set already
1577|:setglobal| :setg[lobal] show global values of options
1578|:setlocal| :setl[ocal] show or set options locally
1579|:sfind| :sf[ind] split current window and edit file in 'path'
1580|:sfirst| :sfir[st] split window and go to first file in the
1581 argument list
1582|:shell| :sh[ell] escape to a shell
1583|:simalt| :sim[alt] Win32 GUI: simulate Windows ALT key
1584|:sign| :sig[n] manipulate signs
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01001585|:silent| :sil[ent] run a command silently
Bram Moolenaar071d4272004-06-13 20:20:40 +00001586|:sleep| :sl[eep] do nothing for a few seconds
1587|:slast| :sla[st] split window and go to last file in the
1588 argument list
1589|:smagic| :sm[agic] :substitute with 'magic'
Bram Moolenaar34700a62013-03-07 13:20:54 +01001590|:smap| :smap like ":map" but for Select mode
Bram Moolenaar371d5402006-03-20 21:47:49 +00001591|:smapclear| :smapc[lear] remove all mappings for Select mode
1592|:smenu| :sme[nu] add menu for Select mode
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001593|:smile| :smi[le] make the user happy
Bram Moolenaar071d4272004-06-13 20:20:40 +00001594|:snext| :sn[ext] split window and go to next file in the
1595 argument list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001596|:snomagic| :sno[magic] :substitute with 'nomagic'
Bram Moolenaar371d5402006-03-20 21:47:49 +00001597|:snoremap| :snor[emap] like ":noremap" but for Select mode
1598|:snoremenu| :snoreme[nu] like ":noremenu" but for Select mode
Bram Moolenaarf95dc3b2005-05-22 22:02:25 +00001599|:sort| :sor[t] sort lines
Bram Moolenaar071d4272004-06-13 20:20:40 +00001600|:source| :so[urce] read Vim or Ex commands from a file
Bram Moolenaarf81b0fe2005-06-23 22:27:26 +00001601|:spelldump| :spelld[ump] split window and fill with all correct words
Bram Moolenaar78599ad2005-06-16 21:47:53 +00001602|:spellgood| :spe[llgood] add good word for spelling
Bram Moolenaar362e1a32006-03-06 23:29:24 +00001603|:spellinfo| :spelli[nfo] show info about loaded spell files
Bram Moolenaar56c860c2019-08-17 20:09:31 +02001604|:spellrare| :spellra[re] add rare word for spelling
Bram Moolenaar43abc522005-12-10 20:15:02 +00001605|:spellrepall| :spellr[epall] replace all bad words like last |z=|
Bram Moolenaard0131a82006-03-04 21:46:13 +00001606|:spellundo| :spellu[ndo] remove good or bad word
Bram Moolenaar78599ad2005-06-16 21:47:53 +00001607|:spellwrong| :spellw[rong] add spelling mistake
Bram Moolenaar071d4272004-06-13 20:20:40 +00001608|:split| :sp[lit] split current window
1609|:sprevious| :spr[evious] split window and go to previous file in the
1610 argument list
1611|:srewind| :sre[wind] split window and go to first file in the
1612 argument list
1613|:stop| :st[op] suspend the editor or escape to a shell
1614|:stag| :sta[g] split window and jump to a tag
1615|:startinsert| :star[tinsert] start Insert mode
Bram Moolenaaracb4f222016-01-10 15:59:26 +01001616|:startgreplace| :startg[replace] start Virtual Replace mode
Bram Moolenaar325b7a22004-07-05 15:58:32 +00001617|:startreplace| :startr[eplace] start Replace mode
Bram Moolenaarf2330482008-06-24 20:19:36 +00001618|:stopinsert| :stopi[nsert] stop Insert mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001619|:stjump| :stj[ump] do ":tjump" and split window
1620|:stselect| :sts[elect] do ":tselect" and split window
1621|:sunhide| :sun[hide] same as ":unhide"
Bram Moolenaar371d5402006-03-20 21:47:49 +00001622|:sunmap| :sunm[ap] like ":unmap" but for Select mode
1623|:sunmenu| :sunme[nu] remove menu for Select mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001624|:suspend| :sus[pend] same as ":stop"
1625|:sview| :sv[iew] split window and edit file read-only
1626|:swapname| :sw[apname] show the name of the current swap file
1627|:syntax| :sy[ntax] syntax highlighting
Bram Moolenaar203d04d2013-06-06 21:36:40 +02001628|:syntime| :synti[me] measure syntax highlighting speed
Bram Moolenaar071d4272004-06-13 20:20:40 +00001629|:syncbind| :sync[bind] sync scroll binding
1630|:t| :t same as ":copy"
1631|:tNext| :tN[ext] jump to previous matching tag
Bram Moolenaar80a94a52006-02-23 21:26:58 +00001632|:tabNext| :tabN[ext] go to previous tab page
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00001633|:tabclose| :tabc[lose] close current tab page
Bram Moolenaard0131a82006-03-04 21:46:13 +00001634|:tabdo| :tabdo execute command in each tab page
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00001635|:tabedit| :tabe[dit] edit a file in a new tab page
1636|:tabfind| :tabf[ind] find file in 'path', edit it in a new tab page
Bram Moolenaar13d5aee2016-01-21 23:36:05 +01001637|:tabfirst| :tabfir[st] go to first tab page
1638|:tablast| :tabl[ast] go to last tab page
Bram Moolenaar80a94a52006-02-23 21:26:58 +00001639|:tabmove| :tabm[ove] move tab page to other position
1640|:tabnew| :tabnew edit a file in a new tab page
1641|:tabnext| :tabn[ext] go to next tab page
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00001642|:tabonly| :tabo[nly] close all tab pages except the current one
Bram Moolenaar80a94a52006-02-23 21:26:58 +00001643|:tabprevious| :tabp[revious] go to previous tab page
Bram Moolenaar13d5aee2016-01-21 23:36:05 +01001644|:tabrewind| :tabr[ewind] go to first tab page
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00001645|:tabs| :tabs list the tab pages and what they contain
Bram Moolenaar80a94a52006-02-23 21:26:58 +00001646|:tab| :tab create new tab when opening new window
Bram Moolenaar071d4272004-06-13 20:20:40 +00001647|:tag| :ta[g] jump to tag
1648|:tags| :tags show the contents of the tag stack
Bram Moolenaar00aa0692019-04-27 20:37:57 +02001649|:tcd| :tcd change directory for tab page
1650|:tchdir| :tch[dir] change directory for tab page
Bram Moolenaar071d4272004-06-13 20:20:40 +00001651|:tcl| :tc[l] execute Tcl command
1652|:tcldo| :tcld[o] execute Tcl command for each line
1653|:tclfile| :tclf[ile] execute Tcl script file
1654|:tearoff| :te[aroff] tear-off a menu
Bram Moolenaar74675a62017-07-15 13:53:23 +02001655|:terminal| :ter[minal] open a terminal window
Bram Moolenaar071d4272004-06-13 20:20:40 +00001656|:tfirst| :tf[irst] jump to first matching tag
1657|:throw| :th[row] throw an exception
1658|:tjump| :tj[ump] like ":tselect", but jump directly when there
1659 is only one match
1660|:tlast| :tl[ast] jump to last matching tag
Bram Moolenaar4c5d8152018-10-19 22:36:53 +02001661|:tlmenu| :tlm[enu] add menu for Terminal-Job mode
1662|:tlnoremenu| :tln[oremenu] like ":noremenu" but for Terminal-Job mode
1663|:tlunmenu| :tlu[nmenu] remove menu for Terminal-Job mode
Bram Moolenaar37c64c72017-09-19 22:06:03 +02001664|:tmapclear| :tmapc[lear] remove all mappings for Terminal-Job mode
1665|:tmap| :tma[p] like ":map" but for Terminal-Job mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001666|:tmenu| :tm[enu] define menu tooltip
1667|:tnext| :tn[ext] jump to next matching tag
Bram Moolenaar37c64c72017-09-19 22:06:03 +02001668|:tnoremap| :tno[remap] like ":noremap" but for Terminal-Job mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001669|:topleft| :to[pleft] make split window appear at top or far left
1670|:tprevious| :tp[revious] jump to previous matching tag
1671|:trewind| :tr[ewind] jump to first matching tag
1672|:try| :try execute commands, abort on error or exception
1673|:tselect| :ts[elect] list matching tags and select one
Bram Moolenaar37c64c72017-09-19 22:06:03 +02001674|:tunmap| :tunma[p] like ":unmap" but for Terminal-Job mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001675|:tunmenu| :tu[nmenu] remove menu tooltip
1676|:undo| :u[ndo] undo last change(s)
Bram Moolenaarb388adb2006-02-28 23:50:17 +00001677|:undojoin| :undoj[oin] join next change with previous undo block
Bram Moolenaard3667a22006-03-16 21:35:52 +00001678|:undolist| :undol[ist] list leafs of the undo tree
Bram Moolenaar071d4272004-06-13 20:20:40 +00001679|:unabbreviate| :una[bbreviate] remove abbreviation
1680|:unhide| :unh[ide] open a window for each loaded file in the
1681 buffer list
1682|:unlet| :unl[et] delete variable
Bram Moolenaar24c088a2005-02-02 22:55:47 +00001683|:unlockvar| :unlo[ckvar] unlock variables
Bram Moolenaar071d4272004-06-13 20:20:40 +00001684|:unmap| :unm[ap] remove mapping
1685|:unmenu| :unme[nu] remove menu
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01001686|:unsilent| :uns[ilent] run a command not silently
Bram Moolenaar071d4272004-06-13 20:20:40 +00001687|:update| :up[date] write buffer if modified
1688|:vglobal| :v[global] execute commands for not matching lines
1689|:version| :ve[rsion] print version number and other info
1690|:verbose| :verb[ose] execute command with 'verbose' set
1691|:vertical| :vert[ical] make following command split vertically
Bram Moolenaar191acfd2020-03-27 20:42:43 +01001692|:vim9script| :vim9[script] indicates Vim9 script file
Bram Moolenaar17568792005-07-06 22:28:03 +00001693|:vimgrep| :vim[grep] search for pattern in files
1694|:vimgrepadd| :vimgrepa[dd] like :vimgrep, but append to current list
Bram Moolenaar071d4272004-06-13 20:20:40 +00001695|:visual| :vi[sual] same as ":edit", but turns off "Ex" mode
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +00001696|:viusage| :viu[sage] overview of Normal mode commands
Bram Moolenaar071d4272004-06-13 20:20:40 +00001697|:view| :vie[w] edit a file read-only
Bram Moolenaar371d5402006-03-20 21:47:49 +00001698|:vmap| :vm[ap] like ":map" but for Visual+Select mode
1699|:vmapclear| :vmapc[lear] remove all mappings for Visual+Select mode
1700|:vmenu| :vme[nu] add menu for Visual+Select mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001701|:vnew| :vne[w] create a new empty window, vertically split
Bram Moolenaar371d5402006-03-20 21:47:49 +00001702|:vnoremap| :vn[oremap] like ":noremap" but for Visual+Select mode
1703|:vnoremenu| :vnoreme[nu] like ":noremenu" but for Visual+Select mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001704|:vsplit| :vs[plit] split current window vertically
Bram Moolenaar371d5402006-03-20 21:47:49 +00001705|:vunmap| :vu[nmap] like ":unmap" but for Visual+Select mode
1706|:vunmenu| :vunme[nu] remove menu for Visual+Select mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001707|:windo| :windo execute command in each window
1708|:write| :w[rite] write to a file
1709|:wNext| :wN[ext] write to a file and go to previous file in
1710 argument list
1711|:wall| :wa[ll] write all (changed) buffers
1712|:while| :wh[ile] execute loop for as long as condition met
1713|:winsize| :wi[nsize] get or set window size (obsolete)
1714|:wincmd| :winc[md] execute a Window (CTRL-W) command
1715|:winpos| :winp[os] get or set window position
1716|:wnext| :wn[ext] write to a file and go to next file in
1717 argument list
1718|:wprevious| :wp[revious] write to a file and go to previous file in
1719 argument list
1720|:wq| :wq write to a file and quit window or Vim
1721|:wqall| :wqa[ll] write all changed buffers and quit Vim
Bram Moolenaar1d689522010-05-28 20:54:39 +02001722|:wundo| :wu[ndo] write undo information to a file
Bram Moolenaar071d4272004-06-13 20:20:40 +00001723|:wviminfo| :wv[iminfo] write to viminfo file
Bram Moolenaar47e13952020-05-12 22:49:12 +02001724|:xit| :x[it] write if buffer changed and close window
Bram Moolenaar071d4272004-06-13 20:20:40 +00001725|:xall| :xa[ll] same as ":wqall"
Bram Moolenaar371d5402006-03-20 21:47:49 +00001726|:xmapclear| :xmapc[lear] remove all mappings for Visual mode
1727|:xmap| :xm[ap] like ":map" but for Visual mode
1728|:xmenu| :xme[nu] add menu for Visual mode
Bram Moolenaard4aa83a2019-05-09 18:59:31 +02001729|:xrestore| :xr[estore] restores the X server connection
Bram Moolenaar371d5402006-03-20 21:47:49 +00001730|:xnoremap| :xn[oremap] like ":noremap" but for Visual mode
1731|:xnoremenu| :xnoreme[nu] like ":noremenu" but for Visual mode
1732|:xunmap| :xu[nmap] like ":unmap" but for Visual mode
1733|:xunmenu| :xunme[nu] remove menu for Visual mode
Bram Moolenaar071d4272004-06-13 20:20:40 +00001734|:yank| :y[ank] yank lines into a register
1735|:z| :z print some lines
1736|:~| :~ repeat last ":substitute"
1737
Bram Moolenaar371d5402006-03-20 21:47:49 +00001738
Bram Moolenaar91f84f62018-07-29 15:07:52 +02001739 vim:tw=78:ts=8:noet:ft=help:norl: