856
|
1 *quickref.txt* For Vim version 7.0g. Last change: 2006 Apr 30
|
7
|
2
|
|
3
|
|
4 VIM REFERENCE MANUAL by Bram Moolenaar
|
|
5
|
|
6 Quick reference guide
|
|
7
|
|
8 *quickref* *Contents*
|
|
9 tag subject tag subject ~
|
|
10 |Q_ct| list of help files |Q_re| Repeating commands
|
|
11 |Q_lr| motion: Left-right |Q_km| Key mapping
|
|
12 |Q_ud| motion: Up-down |Q_ab| Abbreviations
|
|
13 |Q_tm| motion: Text object |Q_op| Options
|
|
14 |Q_pa| motion: Pattern searches |Q_ur| Undo/Redo commands
|
|
15 |Q_ma| motion: Marks |Q_et| External commands
|
|
16 |Q_vm| motion: Various |Q_qf| Quickfix commands
|
|
17 |Q_ta| motion: Using tags |Q_vc| Various commands
|
|
18 |Q_sc| Scrolling |Q_ce| Ex: Command-line editing
|
|
19 |Q_in| insert: Inserting text |Q_ra| Ex: Ranges
|
|
20 |Q_ai| insert: Keys |Q_ex| Ex: Special characters
|
16
|
21 |Q_ss| insert: Special keys |Q_st| Starting VIM
|
|
22 |Q_di| insert: Digraphs |Q_ed| Editing a file
|
|
23 |Q_si| insert: Special inserts |Q_fl| Using the argument list
|
|
24 |Q_de| change: Deleting text |Q_wq| Writing and quitting
|
7
|
25 |Q_cm| change: Copying and moving |Q_ac| Automatic commands
|
|
26 |Q_ch| change: Changing text |Q_wi| Multi-window commands
|
|
27 |Q_co| change: Complex |Q_bu| Buffer list commands
|
|
28 |Q_vi| Visual mode |Q_sy| Syntax highlighting
|
|
29 |Q_to| Text objects |Q_gu| GUI commands
|
|
30 |Q_fo| Folding
|
|
31
|
|
32 ------------------------------------------------------------------------------
|
|
33 N is used to indicate an optional count that can be given before the command.
|
|
34 ------------------------------------------------------------------------------
|
|
35 *Q_lr* Left-right motions
|
|
36
|
|
37 |h| N h left (also: CTRL-H, <BS>, or <Left> key)
|
|
38 |l| N l right (also: <Space> or <Right> key)
|
|
39 |0| 0 to first character in the line (also: <Home> key)
|
|
40 |^| ^ to first non-blank character in the line
|
|
41 |$| N $ to the last character in the line (N-1 lines lower)
|
|
42 (also: <End> key)
|
|
43 |g0| N g0 to first character in screen line (differs from "0"
|
|
44 when lines wrap)
|
|
45 |g^| N g^ to first non-blank character in screen line (differs
|
|
46 from "^" when lines wrap)
|
|
47 |g$| N g$ to last character in screen line (differs from "$"
|
|
48 when lines wrap)
|
|
49 |gm| N gm to middle of the screen line
|
|
50 |bar| N | to column N (default: 1)
|
|
51 |f| N f{char} to the Nth occurrence of {char} to the right
|
|
52 |F| N F{char} to the Nth occurrence of {char} to the left
|
|
53 |t| N t{char} till before the Nth occurrence of {char} to the right
|
|
54 |T| N T{char} till before the Nth occurrence of {char} to the left
|
|
55 |;| N ; repeat the last "f", "F", "t", or "T" N times
|
|
56 |,| N , repeat the last "f", "F", "t", or "T" N times in
|
|
57 opposite direction
|
|
58 ------------------------------------------------------------------------------
|
|
59 *Q_ud* Up-down motions
|
|
60
|
|
61 |k| N k up N lines (also: CTRL-P and <Up>)
|
|
62 |j| N j down N lines (also: CTRL-J, CTRL-N, <NL>, and <Down>)
|
|
63 |-| N - up N lines, on the first non-blank character
|
|
64 |+| N + down N lines, on the first non-blank character (also:
|
|
65 CTRL-M and <CR>)
|
|
66 |_| N _ down N-1 lines, on the first non-blank character
|
|
67 |G| N G goto line N (default: last line), on the first
|
|
68 non-blank character
|
|
69 |gg| N gg goto line N (default: first line), on the first
|
|
70 non-blank character
|
|
71 |N%| N % goto line N percentage down in the file. N must be
|
|
72 given, otherwise it is the |%| command.
|
|
73 |gk| N gk up N screen lines (differs from "k" when line wraps)
|
|
74 |gj| N gj down N screen lines (differs from "j" when line wraps)
|
|
75 ------------------------------------------------------------------------------
|
|
76 *Q_tm* Text object motions
|
|
77
|
|
78 |w| N w N words forward
|
|
79 |W| N W N blank-separated |WORD|s forward
|
|
80 |e| N e forward to the end of the Nth word
|
|
81 |E| N E forward to the end of the Nth blank-separated |WORD|
|
|
82 |b| N b N words backward
|
|
83 |B| N B N blank-separated |WORD|s backward
|
|
84 |ge| N ge backward to the end of the Nth word
|
|
85 |gE| N gE backward to the end of the Nth blank-separated |WORD|
|
|
86
|
|
87 |)| N ) N sentences forward
|
|
88 |(| N ( N sentences backward
|
|
89 |}| N } N paragraphs forward
|
|
90 |{| N { N paragraphs backward
|
|
91 |]]| N ]] N sections forward, at start of section
|
|
92 |[[| N [[ N sections backward, at start of section
|
|
93 |][| N ][ N sections forward, at end of section
|
|
94 |[]| N [] N sections backward, at end of section
|
|
95 |[(| N [( N times back to unclosed '('
|
|
96 |[{| N [{ N times back to unclosed '{'
|
|
97 |[m| N [m N times back to start of method (for Java)
|
|
98 |[M| N [M N times back to end of method (for Java)
|
|
99 |])| N ]) N times forward to unclosed ')'
|
|
100 |]}| N ]} N times forward to unclosed '}'
|
|
101 |]m| N ]m N times forward to start of method (for Java)
|
|
102 |]M| N ]M N times forward to end of method (for Java)
|
|
103 |[#| N [# N times back to unclosed "#if" or "#else"
|
|
104 |]#| N ]# N times forward to unclosed "#else" or "#endif"
|
|
105 |[star| N [* N times back to start of comment "/*"
|
|
106 |]star| N ]* N times forward to end of comment "*/"
|
|
107 ------------------------------------------------------------------------------
|
|
108 *Q_pa* Pattern searches
|
|
109
|
|
110 |/| N /{pattern}[/[offset]]<CR>
|
|
111 search forward for the Nth occurrence of {pattern}
|
|
112 |?| N ?{pattern}[?[offset]]<CR>
|
|
113 search backward for the Nth occurrence of {pattern}
|
|
114 |/<CR>| N /<CR> repeat last search, in the forward direction
|
|
115 |?<CR>| N ?<CR> repeat last search, in the backward direction
|
|
116 |n| N n repeat last search
|
|
117 |N| N N repeat last search, in opposite direction
|
|
118 |star| N * search forward for the identifier under the cursor
|
|
119 |#| N # search backward for the identifier under the cursor
|
|
120 |gstar| N g* like "*", but also find partial matches
|
|
121 |g#| N g# like "#", but also find partial matches
|
|
122 |gd| gd goto local declaration of identifier under the cursor
|
|
123 |gD| gD goto global declaration of identifier under the cursor
|
|
124
|
|
125 |pattern| Special characters in search patterns
|
|
126
|
|
127 meaning magic nomagic ~
|
|
128 matches any single character . \.
|
|
129 matches start of line ^ ^
|
|
130 matches <EOL> $ $
|
|
131 matches start of word \< \<
|
|
132 matches end of word \> \>
|
|
133 matches a single char from the range [a-z] \[a-z]
|
|
134 matches a single char not in the range [^a-z] \[^a-z]
|
|
135 matches an identifier char \i \i
|
|
136 idem but excluding digits \I \I
|
|
137 matches a keyword character \k \k
|
|
138 idem but excluding digits \K \K
|
|
139 matches a file name character \f \f
|
|
140 idem but excluding digits \F \F
|
|
141 matches a printable character \p \p
|
|
142 idem but excluding digits \P \P
|
|
143 matches a white space character \s \s
|
|
144 matches a non-white space character \S \S
|
|
145
|
|
146 matches <Esc> \e \e
|
|
147 matches <Tab> \t \t
|
|
148 matches <CR> \r \r
|
|
149 matches <BS> \b \b
|
|
150
|
|
151 matches 0 or more of the preceding atom * \*
|
|
152 matches 1 or more of the preceding atom \+ \+
|
|
153 matches 0 or 1 of the preceding atom \= \=
|
|
154 matches 2 to 5 of the preceding atom \{2,5} \{2,5}
|
|
155 separates two alternatives \| \|
|
|
156 group a pattern into an atom \(\) \(\)
|
|
157
|
|
158 |search-offset| Offsets allowed after search command
|
|
159
|
|
160 [num] [num] lines downwards, in column 1
|
|
161 +[num] [num] lines downwards, in column 1
|
|
162 -[num] [num] lines upwards, in column 1
|
|
163 e[+num] [num] characters to the right of the end of the match
|
|
164 e[-num] [num] characters to the left of the end of the match
|
|
165 s[+num] [num] characters to the right of the start of the match
|
|
166 s[-num] [num] characters to the left of the start of the match
|
|
167 b[+num] [num] identical to s[+num] above (mnemonic: begin)
|
|
168 b[-num] [num] identical to s[-num] above (mnemonic: begin)
|
|
169 ;{search-command} execute {search-command} next
|
|
170 ------------------------------------------------------------------------------
|
|
171 *Q_ma* Marks and motions
|
|
172
|
|
173 |m| m{a-zA-Z} mark current position with mark {a-zA-Z}
|
|
174 |`a| `{a-z} go to mark {a-z} within current file
|
|
175 |`A| `{A-Z} go to mark {A-Z} in any file
|
|
176 |`0| `{0-9} go to the position where Vim was previously exited
|
|
177 |``| `` go to the position before the last jump
|
|
178 |`quote| `" go to the position when last editing this file
|
|
179 |`[| `[ go to the start of the previously operated or put text
|
|
180 |`]| `] go to the end of the previously operated or put text
|
|
181 |`<| `< go to the start of the (previous) Visual area
|
|
182 |`>| `> go to the end of the (previous) Visual area
|
|
183 |`.| `. go to the position of the last change in this file
|
|
184 |'| '{a-zA-Z0-9[]'"<>.}
|
|
185 same as `, but on the first non-blank in the line
|
|
186 |:marks| :marks print the active marks
|
|
187 |CTRL-O| N CTRL-O go to Nth older position in jump list
|
|
188 |CTRL-I| N CTRL-I go to Nth newer position in jump list
|
|
189 |:ju| :ju[mps] print the jump list
|
|
190 ------------------------------------------------------------------------------
|
|
191 *Q_vm* Various motions
|
|
192
|
|
193 |%| % find the next brace, bracket, comment, or "#if"/
|
|
194 "#else"/"#endif" in this line and go to its match
|
|
195 |H| N H go to the Nth line in the window, on the first
|
|
196 non-blank
|
|
197 |M| M go to the middle line in the window, on the first
|
|
198 non-blank
|
|
199 |L| N L go to the Nth line from the bottom, on the first
|
|
200 non-blank
|
|
201
|
|
202 |go| N go go to Nth byte in the buffer
|
|
203 |:go| :[range]go[to] [off] go to [off] byte in the buffer
|
|
204 ------------------------------------------------------------------------------
|
|
205 *Q_ta* Using tags
|
|
206
|
|
207 |:ta| :ta[g][!] {tag} Jump to tag {tag}
|
|
208 |:ta| :[count]ta[g][!] Jump to [count]'th newer tag in tag list
|
|
209 |CTRL-]| CTRL-] Jump to the tag under cursor, unless changes
|
|
210 have been made
|
|
211 |:ts| :ts[elect][!] [tag] List matching tags and select one to jump to
|
|
212 |:tjump| :tj[ump][!] [tag] Jump to tag [tag] or select from list when
|
|
213 there are multiple matches
|
649
|
214 |:ltag| :lt[ag][!] [tag] Jump to tag [tag] and add matching tags to the
|
|
215 location list.
|
7
|
216
|
|
217 |:tags| :tags Print tag list
|
|
218 |CTRL-T| N CTRL-T Jump back from Nth older tag in tag list
|
|
219 |:po| :[count]po[p][!] Jump back from [count]'th older tag in tag list
|
|
220 |:tnext| :[count]tn[ext][!] Jump to [count]'th next matching tag
|
|
221 |:tp| :[count]tp[revious][!] Jump to [count]'th previous matching tag
|
|
222 |:tr| :[count]tr[ewind][!] Jump to [count]'th matching tag
|
|
223 |:tl| :tl[ast][!] Jump to last matching tag
|
|
224
|
|
225 |:ptag| :pt[ag] {tag} open a preview window to show tag {tag}
|
|
226 |CTRL-W_}| CTRL-W } like CTRL-] but show tag in preview window
|
|
227 |:pts| :pts[elect] like ":tselect" but show tag in preview window
|
|
228 |:ptjump| :ptj[ump] like ":tjump" but show tag in preview window
|
|
229 |:pclose| :pc[lose] close tag preview window
|
|
230 |CTRL-W_z| CTRL-W z close tag preview window
|
|
231 ------------------------------------------------------------------------------
|
|
232 *Q_sc* Scrolling
|
|
233
|
|
234 |CTRL-E| N CTRL-E window N lines downwards (default: 1)
|
|
235 |CTRL-D| N CTRL-D window N lines Downwards (default: 1/2 window)
|
|
236 |CTRL-F| N CTRL-F window N pages Forwards (downwards)
|
|
237 |CTRL-Y| N CTRL-Y window N lines upwards (default: 1)
|
|
238 |CTRL-U| N CTRL-U window N lines Upwards (default: 1/2 window)
|
|
239 |CTRL-B| N CTRL-B window N pages Backwards (upwards)
|
|
240 |z<CR>| z<CR> or zt redraw, current line at top of window
|
|
241 |z.| z. or zz redraw, current line at center of window
|
|
242 |z-| z- or zb redraw, current line at bottom of window
|
|
243
|
|
244 These only work when 'wrap' is off:
|
|
245 |zh| N zh scroll screen N characters to the right
|
|
246 |zl| N zl scroll screen N characters to the left
|
|
247 |zH| N zH scroll screen half a screenwidth to the right
|
|
248 |zL| N zL scroll screen half a screenwidth to the left
|
|
249 ------------------------------------------------------------------------------
|
|
250 *Q_in* Inserting text
|
|
251
|
|
252 |a| N a append text after the cursor (N times)
|
|
253 |A| N A append text at the end of the line (N times)
|
|
254 |i| N i insert text before the cursor (N times) (also: <Insert>)
|
|
255 |I| N I insert text before the first non-blank in the line (N times)
|
|
256 |gI| N gI insert text in column 1 (N times)
|
|
257 |o| N o open a new line below the current line, append text (N times)
|
|
258 |O| N O open a new line above the current line, append text (N times)
|
|
259 |:startinsert| :star[tinsert][!] start Insert mode, append when [!] used
|
14
|
260 |:startreplace| :startr[eplace][!] start Replace mode, at EOL when [!] used
|
7
|
261
|
|
262 in Visual block mode:
|
|
263 |v_b_I| I insert the same text in front of all the selected lines
|
|
264 |v_b_A| A append the same text after all the selected lines
|
|
265 ------------------------------------------------------------------------------
|
|
266 *Q_ai* Insert mode keys
|
|
267
|
|
268 |insert-index| alphabetical index of Insert mode commands
|
|
269
|
|
270 leaving Insert mode:
|
|
271 |i_<Esc>| <Esc> end Insert mode, back to Normal mode
|
|
272 |i_CTRL-C| CTRL-C like <Esc>, but do not use an abbreviation
|
|
273 |i_CTRL-O| CTRL-O {command} execute {command} and return to Insert mode
|
|
274
|
|
275 moving around:
|
|
276 |i_<Up>| cursor keys move cursor left/right/up/down
|
|
277 |i_<S-Left>| shift-left/right one word left/right
|
|
278 |i_<S-Up>| shift-up/down one screenful backward/forward
|
|
279 |i_<End>| <End> cursor after last character in the line
|
|
280 |i_<Home>| <Home> cursor to first character in the line
|
|
281 ------------------------------------------------------------------------------
|
|
282 *Q_ss* Special keys in Insert mode
|
|
283
|
|
284 |i_CTRL-V| CTRL-V {char}.. insert character literally, or enter decimal
|
|
285 byte value
|
|
286 |i_<NL>| <NL> or <CR> or CTRL-M or CTRL-J
|
|
287 begin new line
|
|
288 |i_CTRL-E| CTRL-E insert the character from below the cursor
|
|
289 |i_CTRL-Y| CTRL-Y insert the character from above the cursor
|
|
290
|
|
291 |i_CTRL-A| CTRL-A insert previously inserted text
|
|
292 |i_CTRL-@| CTRL-@ insert previously inserted text and stop
|
|
293 Insert mode
|
|
294 |i_CTRL-R| CTRL-R {0-9a-z%#:.-="} insert the contents of a register
|
|
295
|
|
296 |i_CTRL-N| CTRL-N insert next match of identifier before the
|
|
297 cursor
|
|
298 |i_CTRL-P| CTRL-P insert previous match of identifier before
|
|
299 the cursor
|
|
300 |i_CTRL-X| CTRL-X ... complete the word before the cursor in
|
|
301 various ways
|
|
302
|
|
303 |i_<BS>| <BS> or CTRL-H delete the character before the cursor
|
|
304 |i_<Del>| <Del> delete the character under the cursor
|
|
305 |i_CTRL-W| CTRL-W delete word before the cursor
|
|
306 |i_CTRL-U| CTRL-U delete all entered characters in the current
|
|
307 line
|
|
308 |i_CTRL-T| CTRL-T insert one shiftwidth of indent in front of
|
|
309 the current line
|
|
310 |i_CTRL-D| CTRL-D delete one shiftwidth of indent in front of
|
|
311 the current line
|
|
312 |i_0_CTRL-D| 0 CTRL-D delete all indent in the current line
|
|
313 |i_^_CTRL-D| ^ CTRL-D delete all indent in the current line,
|
|
314 restore indent in next line
|
|
315 ------------------------------------------------------------------------------
|
|
316 *Q_di* Digraphs
|
|
317
|
|
318 |:dig| :dig[raphs] show current list of digraphs
|
|
319 |:dig| :dig[raphs] {char1}{char2} {number} ...
|
|
320 add digraph(s) to the list
|
|
321
|
|
322 In Insert or Command-line mode:
|
|
323 |i_CTRL-K| CTRL-K {char1} {char2}
|
|
324 enter digraph
|
|
325 |i_digraph| {char1} <BS> {char2}
|
|
326 enter digraph if 'digraph' option set
|
|
327 ------------------------------------------------------------------------------
|
|
328 *Q_si* Special inserts
|
|
329
|
|
330 |:r| :r [file] insert the contents of [file] below the cursor
|
|
331 |:r!| :r! {command} insert the standard output of {command} below the
|
|
332 cursor
|
|
333 ------------------------------------------------------------------------------
|
|
334 *Q_de* Deleting text
|
|
335
|
|
336 |x| N x delete N characters under and after the cursor
|
|
337 |<Del>| N <Del> delete N characters under and after the cursor
|
|
338 |X| N X delete N characters before the cursor
|
|
339 |d| N d{motion} delete the text that is moved over with {motion}
|
|
340 |v_d| {visual}d delete the highlighted text
|
|
341 |dd| N dd delete N lines
|
|
342 |D| N D delete to the end of the line (and N-1 more lines)
|
|
343 |J| N J join N-1 lines (delete <EOL>s)
|
|
344 |v_J| {visual}J join the highlighted lines
|
|
345 |gJ| N gJ like "J", but without inserting spaces
|
|
346 |v_gJ| {visual}gJ like "{visual}J", but without inserting spaces
|
|
347 |:d| :[range]d [x] delete [range] lines [into register x]
|
|
348 ------------------------------------------------------------------------------
|
|
349 *Q_cm* Copying and moving text
|
|
350
|
|
351 |quote| "{char} use register {char} for the next delete, yank, or put
|
|
352 |:reg| :reg show the contents of all registers
|
|
353 |:reg| :reg {arg} show the contents of registers mentioned in {arg}
|
|
354 |y| N y{motion} yank the text moved over with {motion} into a register
|
|
355 |v_y| {visual}y yank the highlighted text into a register
|
|
356 |yy| N yy yank N lines into a register
|
|
357 |Y| N Y yank N lines into a register
|
|
358 |p| N p put a register after the cursor position (N times)
|
|
359 |P| N P put a register before the cursor position (N times)
|
|
360 |]p| N ]p like p, but adjust indent to current line
|
|
361 |[p| N [p like P, but adjust indent to current line
|
|
362 |gp| N gp like p, but leave cursor after the new text
|
|
363 |gP| N gP like P, but leave cursor after the new text
|
|
364 ------------------------------------------------------------------------------
|
|
365 *Q_ch* Changing text
|
|
366
|
|
367 |r| N r{char} replace N characters with {char}
|
|
368 |gr| N gr{char} replace N characters without affecting layout
|
|
369 |R| N R enter Replace mode (repeat the entered text N times)
|
|
370 |gR| N gR enter virtual Replace mode: Like Replace mode but
|
|
371 without affecting layout
|
|
372 |v_b_r| {visual}r{char}
|
|
373 in Visual block mode: Replace each char of the
|
|
374 selected text with {char}
|
|
375
|
|
376 (change = delete text and enter Insert mode)
|
|
377 |c| N c{motion} change the text that is moved over with {motion}
|
|
378 |v_c| {visual}c change the highlighted text
|
|
379 |cc| N cc change N lines
|
|
380 |S| N S change N lines
|
|
381 |C| N C change to the end of the line (and N-1 more lines)
|
|
382 |s| N s change N characters
|
|
383 |v_b_c| {visual}c in Visual block mode: Change each of the selected
|
|
384 lines with the entered text
|
|
385 |v_b_C| {visual}C in Visual block mode: Change each of the selected
|
|
386 lines until end-of-line with the entered text
|
|
387
|
|
388 |~| N ~ switch case for N characters and advance cursor
|
|
389 |v_~| {visual}~ switch case for highlighted text
|
|
390 |v_u| {visual}u make highlighted text lowercase
|
|
391 |v_U| {visual}U make highlighted text uppercase
|
|
392 |g~| g~{motion} switch case for the text that is moved over with
|
|
393 {motion}
|
|
394 |gu| gu{motion} make the text that is moved over with {motion}
|
|
395 lowercase
|
|
396 |gU| gU{motion} make the text that is moved over with {motion}
|
|
397 uppercase
|
|
398 |v_g?| {visual}g? perform rot13 encoding on highlighted text
|
|
399 |g?| g?{motion} perform rot13 encoding on the text that is moved over
|
|
400 with {motion}
|
|
401
|
|
402 |CTRL-A| N CTRL-A add N to the number at or after the cursor
|
|
403 |CTRL-X| N CTRL-X subtract N from the number at or after the cursor
|
|
404
|
|
405 |<| N <{motion} move the lines that are moved over with {motion} one
|
|
406 shiftwidth left
|
|
407 |<<| N << move N lines one shiftwidth left
|
|
408 |>| N >{motion} move the lines that are moved over with {motion} one
|
|
409 shiftwidth right
|
|
410 |>>| N >> move N lines one shiftwidth right
|
|
411 |gq| N gq{motion} format the lines that are moved over with {motion} to
|
|
412 'textwidth' length
|
|
413 |:ce| :[range]ce[nter] [width]
|
|
414 center the lines in [range]
|
|
415 |:le| :[range]le[ft] [indent]
|
|
416 left-align the lines in [range] (with [indent])
|
|
417 |:ri| :[range]ri[ght] [width]
|
|
418 right-align the lines in [range]
|
|
419 ------------------------------------------------------------------------------
|
|
420 *Q_co* Complex changes
|
|
421
|
|
422 |!| N !{motion}{command}<CR>
|
|
423 filter the lines that are moved over through {command}
|
|
424 |!!| N !!{command}<CR>
|
|
425 filter N lines through {command}
|
|
426 |v_!| {visual}!{command}<CR>
|
|
427 filter the highlighted lines through {command}
|
|
428 |:range!| :[range]! {command}<CR>
|
|
429 filter [range] lines through {command}
|
|
430 |=| N ={motion}
|
|
431 filter the lines that are moved over through 'equalprg'
|
|
432 |==| N == filter N lines through 'equalprg'
|
|
433 |v_=| {visual}=
|
|
434 filter the highlighted lines through 'equalprg'
|
|
435 |:s| :[range]s[ubstitute]/{pattern}/{string}/[g][c]
|
|
436 substitute {pattern} by {string} in [range] lines;
|
|
437 with [g], replace all occurrences of {pattern};
|
|
438 with [c], confirm each replacement
|
|
439 |:s| :[range]s[ubstitute] [g][c]
|
|
440 repeat previous ":s" with new range and options
|
|
441 |&| & Repeat previous ":s" on current line without options
|
|
442 |:ret| :[range]ret[ab][!] [tabstop]
|
|
443 set 'tabstop' to new value and adjust white space
|
|
444 accordingly
|
|
445 ------------------------------------------------------------------------------
|
|
446 *Q_vi* Visual mode
|
|
447
|
|
448 |visual-index| list of Visual mode commands.
|
|
449
|
|
450 |v| v start highlighting characters } move cursor and use
|
|
451 |V| V start highlighting linewise } operator to affect
|
|
452 |CTRL-V| CTRL-V start highlighting blockwise } highlighted text
|
|
453 |v_o| o exchange cursor position with start of highlighting
|
|
454 |gv| gv start highlighting on previous visual area
|
|
455 |v_v| v highlight characters or stop highlighting
|
|
456 |v_V| V highlight linewise or stop highlighting
|
|
457 |v_CTRL-V| CTRL-V highlight blockwise or stop highlighting
|
|
458 ------------------------------------------------------------------------------
|
|
459 *Q_to* Text objects (only in Visual mode or after an operator)
|
|
460
|
|
461 |v_aw| N aw Select "a word"
|
|
462 |v_iw| N iw Select "inner word"
|
|
463 |v_aW| N aW Select "a |WORD|"
|
|
464 |v_iW| N iW Select "inner |WORD|"
|
|
465 |v_as| N as Select "a sentence"
|
|
466 |v_is| N is Select "inner sentence"
|
|
467 |v_ap| N ap Select "a paragraph"
|
|
468 |v_ip| N ip Select "inner paragraph"
|
|
469 |v_ab| N ab Select "a block" (from "[(" to "])")
|
|
470 |v_ib| N ib Select "inner block" (from "[(" to "])")
|
|
471 |v_aB| N aB Select "a Block" (from "[{" to "]}")
|
|
472 |v_iB| N iB Select "inner Block" (from "[{" to "]}")
|
|
473 ------------------------------------------------------------------------------
|
|
474 *Q_re* Repeating commands
|
|
475
|
|
476 |.| N . repeat last change (with count replaced with N)
|
|
477 |q| q{a-z} record typed characters into register {a-z}
|
|
478 |q| q{A-Z} record typed characters, appended to register {a-z}
|
|
479 |q| q stop recording
|
|
480 |@| N @{a-z} execute the contents of register {a-z} (N times)
|
|
481 |@@| N @@ repeat previous @{a-z} (N times)
|
|
482 |:@| :@{a-z} execute the contents of register {a-z} as an Ex
|
|
483 command
|
|
484 |:@@| :@@ repeat previous :@{a-z}
|
|
485 |:g| :[range]g[lobal]/{pattern}/[cmd]
|
|
486 Execute Ex command [cmd] (default: ":p") on the lines
|
|
487 within [range] where {pattern} matches.
|
|
488 |:g| :[range]g[lobal]!/{pattern}/[cmd]
|
|
489 Execute Ex command [cmd] (default: ":p") on the lines
|
|
490 within [range] where {pattern} does NOT match.
|
|
491 |:so| :so[urce] {file}
|
|
492 Read Ex commands from {file}.
|
|
493 |:so| :so[urce]! {file}
|
|
494 Read Vim commands from {file}.
|
|
495 |:sl| :sl[eep] [sec]
|
|
496 don't do anything for [sec] seconds
|
|
497 |gs| N gs Goto Sleep for N seconds
|
|
498 ------------------------------------------------------------------------------
|
|
499 *Q_km* Key mapping
|
|
500
|
|
501 |:map| :ma[p] {lhs} {rhs} Map {lhs} to {rhs} in Normal and Visual
|
|
502 mode.
|
|
503 |:map!| :ma[p]! {lhs} {rhs} Map {lhs} to {rhs} in Insert and Command-line
|
|
504 mode.
|
|
505 |:noremap| :no[remap][!] {lhs} {rhs}
|
|
506 Same as ":map", no remapping for this {rhs}
|
|
507 |:unmap| :unm[ap] {lhs} Remove the mapping of {lhs} for Normal and
|
|
508 Visual mode.
|
|
509 |:unmap!| :unm[ap]! {lhs} Remove the mapping of {lhs} for Insert and
|
|
510 Command-line mode.
|
|
511 |:map_l| :ma[p] [lhs] List mappings (starting with [lhs]) for
|
|
512 Normal and Visual mode.
|
|
513 |:map_l!| :ma[p]! [lhs] List mappings (starting with [lhs]) for
|
|
514 Insert and Command-line mode.
|
|
515 |:cmap| :cmap/:cunmap/:cnoremap
|
|
516 like ":map!"/":unmap!"/":noremap!" but for
|
|
517 Command-line mode only
|
|
518 |:imap| :imap/:iunmap/:inoremap
|
|
519 like ":map!"/":unmap!"/":noremap!" but for
|
|
520 Insert mode only
|
|
521 |:nmap| :nmap/:nunmap/:nnoremap
|
|
522 like ":map"/":unmap"/":noremap" but for
|
|
523 Normal mode only
|
|
524 |:vmap| :vmap/:vunmap/:vnoremap
|
|
525 like ":map"/":unmap"/":noremap" but for
|
|
526 Visual mode only
|
|
527 |:omap| :omap/:ounmap/:onoremap
|
|
528 like ":map"/":unmap"/":noremap" but only for
|
|
529 when an operator is pending
|
|
530 |:mapc| :mapc[lear] remove mappings for Normal and Visual mode
|
|
531 |:mapc| :mapc[lear]! remove mappings for Insert and Cmdline mode
|
|
532 |:imapc| :imapc[lear] remove mappings for Insert mode
|
|
533 |:vmapc| :vmapc[lear] remove mappings for Visual mode
|
|
534 |:omapc| :omapc[lear] remove mappings for Operator-pending mode
|
|
535 |:nmapc| :nmapc[lear] remove mappings for Normal mode
|
|
536 |:cmapc| :cmapc[lear] remove mappings for Cmdline mode
|
|
537 |:mkexrc| :mk[exrc][!] [file] write current mappings, abbreviations, and
|
|
538 settings to [file] (default: ".exrc";
|
|
539 use ! to overwrite)
|
|
540 |:mkvimrc| :mkv[imrc][!] [file]
|
|
541 same as ":mkexrc", but with default ".vimrc"
|
|
542 |:mksession| :mks[ession][!] [file]
|
|
543 like ":mkvimrc", but store current files,
|
|
544 windows, etc. too, to be able to continue
|
|
545 this session later.
|
|
546 ------------------------------------------------------------------------------
|
|
547 *Q_ab* Abbreviations
|
|
548
|
|
549 |:abbreviate| :ab[breviate] {lhs} {rhs} add abbreviation for {lhs} to {rhs}
|
|
550 |:abbreviate| :ab[breviate] {lhs} show abbr's that start with {lhs}
|
|
551 |:abbreviate| :ab[breviate] show all abbreviations
|
|
552 |:unabbreviate| :una[bbreviate] {lhs} remove abbreviation for {lhs}
|
|
553 |:noreabbrev| :norea[bbrev] [lhs] [rhs] like ":ab", but don't remap [rhs]
|
|
554 |:iabbrev| :iab/:iunab/:inoreab like ":ab", but only for Insert mode
|
|
555 |:cabbrev| :cab/:cunab/:cnoreab like ":ab", but only for
|
|
556 Command-line mode
|
|
557 |:abclear| :abc[lear] remove all abbreviations
|
|
558 |:cabclear| :cabc[lear] remove all abbr's for Cmdline mode
|
|
559 |:iabclear| :iabc[lear] remove all abbr's for Insert mode
|
|
560 ------------------------------------------------------------------------------
|
|
561 *Q_op* Options
|
|
562
|
|
563 |:set| :se[t] Show all modified options.
|
|
564 |:set| :se[t] all Show all non-termcap options.
|
|
565 |:set| :se[t] termcap Show all termcap options.
|
|
566 |:set| :se[t] {option} Set boolean option (switch it on),
|
|
567 show string or number option.
|
|
568 |:set| :se[t] no{option} Reset boolean option (switch it off).
|
|
569 |:set| :se[t] inv{option} invert boolean option.
|
|
570 |:set| :se[t] {option}={value} Set string/number option to {value}.
|
|
571 |:set| :se[t] {option}+={value} append {value} to string option, add
|
|
572 {value} to number option
|
|
573 |:set| :se[t] {option}-={value} remove {value} to string option,
|
|
574 subtract {value} from number option
|
|
575 |:set| :se[t] {option}? Show value of {option}.
|
|
576 |:set| :se[t] {option}& Reset {option} to its default value.
|
|
577
|
|
578 |:setlocal| :setl[ocal] like ":set" but set the local value
|
|
579 for options that have one
|
|
580 |:setglobal| :setg[lobal] like ":set" but set the global value
|
|
581 of a local option
|
|
582
|
|
583 |:fix| :fix[del] Set value of 't_kD' according to
|
|
584 value of 't_kb'.
|
|
585 |:options| :opt[ions] Open a new window to view and set
|
|
586 options, grouped by functionality,
|
|
587 a one line explanation and links to
|
|
588 the help.
|
|
589
|
|
590 Short explanation of each option: *option-list*
|
856
|
591 'aleph' 'al' ASCII code of the letter Aleph (Hebrew)
|
|
592 'allowrevins' 'ari' allow CTRL-_ in Insert and Command-line mode
|
|
593 'altkeymap' 'akm' for default second language (Farsi/Hebrew)
|
|
594 'ambiwidth' 'ambw' what to do with Unicode chars of ambiguous width
|
|
595 'antialias' 'anti' Mac OS X: use smooth, antialiased fonts
|
|
596 'autochdir' 'acd' change directory to the file in the current window
|
|
597 'arabic' 'arab' for Arabic as a default second language
|
|
598 'arabicshape' 'arshape' do shaping for Arabic characters
|
|
599 'autoindent' 'ai' take indent for new line from previous line
|
|
600 'autoread' 'ar' autom. read file when changed outside of Vim
|
|
601 'autowrite' 'aw' automatically write file if changed
|
|
602 'autowriteall' 'awa' as 'autowrite', but works with more commands
|
|
603 'background' 'bg' "dark" or "light", used for highlight colors
|
|
604 'backspace' 'bs' how backspace works at start of line
|
|
605 'backup' 'bk' keep backup file after overwriting a file
|
|
606 'backupcopy' 'bkc' make backup as a copy, don't rename the file
|
|
607 'backupdir' 'bdir' list of directories for the backup file
|
|
608 'backupext' 'bex' extension used for the backup file
|
|
609 'backupskip' 'bsk' no backup for files that match these patterns
|
|
610 'balloondelay' 'bdlay' delay in mS before a balloon may pop up
|
|
611 'ballooneval' 'beval' switch on balloon evaluation
|
|
612 'balloonexpr' 'bexpr' expression to show in balloon
|
|
613 'binary' 'bin' read/write/edit file in binary mode
|
|
614 'bioskey' 'biosk' MS-DOS: use bios calls for input characters
|
|
615 'bomb' prepend a Byte Order Mark to the file
|
|
616 'breakat' 'brk' characters that may cause a line break
|
|
617 'browsedir' 'bsdir' which directory to start browsing in
|
|
618 'bufhidden' 'bh' what to do when buffer is no longer in window
|
|
619 'buflisted' 'bl' whether the buffer shows up in the buffer list
|
|
620 'buftype' 'bt' special type of buffer
|
|
621 'casemap' 'cmp' specifies how case of letters is changed
|
|
622 'cdpath' 'cd' list of directories searched with ":cd"
|
|
623 'cedit' key used to open the command-line window
|
|
624 'charconvert' 'ccv' expression for character encoding conversion
|
|
625 'cindent' 'cin' do C program indenting
|
|
626 'cinkeys' 'cink' keys that trigger indent when 'cindent' is set
|
|
627 'cinoptions' 'cino' how to do indenting when 'cindent' is set
|
|
628 'cinwords' 'cinw' words where 'si' and 'cin' add an indent
|
|
629 'clipboard' 'cb' use the clipboard as the unnamed register
|
|
630 'cmdheight' 'ch' number of lines to use for the command-line
|
|
631 'cmdwinheight' 'cwh' height of the command-line window
|
|
632 'columns' 'co' number of columns in the display
|
|
633 'comments' 'com' patterns that can start a comment line
|
714
|
634 'commentstring' 'cms' template for comments; used for fold marker
|
856
|
635 'compatible' 'cp' behave Vi-compatible as much as possible
|
|
636 'complete' 'cpt' specify how Insert mode completion works
|
|
637 'completefunc' 'cfu' function to be used for Insert mode completion
|
|
638 'completeopt' 'cot' options for Insert mode completion
|
|
639 'confirm' 'cf' ask what to do about unsaved/read-only files
|
|
640 'conskey' 'consk' get keys directly from console (MS-DOS only)
|
|
641 'copyindent' 'ci' make 'autoindent' use existing indent structure
|
|
642 'cpoptions' 'cpo' flags for Vi-compatible behavior
|
714
|
643 'cscopepathcomp' 'cspc' how many components of the path to show
|
|
644 'cscopeprg' 'csprg' command to execute cscope
|
|
645 'cscopequickfix' 'csqf' use quickfix window for cscope results
|
|
646 'cscopetag' 'cst' use cscope for tag commands
|
|
647 'cscopetagorder' 'csto' determines ":cstag" search order
|
|
648 'cscopeverbose' 'csverb' give messages when adding a cscope database
|
738
|
649 'cursorcolumn' 'cuc' highlight the screen column of the cursor
|
|
650 'cursorline' 'cul' highlight the screen line of the cursor
|
856
|
651 'debug' set to "msg" to see all error messages
|
|
652 'define' 'def' pattern to be used to find a macro definition
|
|
653 'delcombine' 'deco' delete combining characters on their own
|
|
654 'dictionary' 'dict' list of file names used for keyword completion
|
|
655 'diff' use diff mode for the current window
|
|
656 'diffexpr' 'dex' expression used to obtain a diff file
|
|
657 'diffopt' 'dip' options for using diff mode
|
|
658 'digraph' 'dg' enable the entering of digraphs in Insert mode
|
|
659 'directory' 'dir' list of directory names for the swap file
|
|
660 'display' 'dy' list of flags for how to display text
|
|
661 'eadirection' 'ead' in which direction 'equalalways' works
|
|
662 'edcompatible' 'ed' toggle flags of ":substitute" command
|
|
663 'encoding' 'enc' encoding used internally
|
|
664 'endofline' 'eol' write <EOL> for last line in file
|
|
665 'equalalways' 'ea' windows are automatically made the same size
|
|
666 'equalprg' 'ep' external program to use for "=" command
|
|
667 'errorbells' 'eb' ring the bell for error messages
|
|
668 'errorfile' 'ef' name of the errorfile for the QuickFix mode
|
|
669 'errorformat' 'efm' description of the lines in the error file
|
|
670 'esckeys' 'ek' recognize function keys in Insert mode
|
|
671 'eventignore' 'ei' autocommand events that are ignored
|
|
672 'expandtab' 'et' use spaces when <Tab> is inserted
|
|
673 'exrc' 'ex' read .vimrc and .exrc in the current directory
|
|
674 'fileencoding' 'fenc' file encoding for multi-byte text
|
714
|
675 'fileencodings' 'fencs' automatically detected character encodings
|
856
|
676 'fileformat' 'ff' file format used for file I/O
|
|
677 'fileformats' 'ffs' automatically detected values for 'fileformat'
|
|
678 'filetype' 'ft' type of file, used for autocommands
|
|
679 'fillchars' 'fcs' characters to use for displaying special items
|
|
680 'fkmap' 'fk' Farsi keyboard mapping
|
|
681 'foldclose' 'fcl' close a fold when the cursor leaves it
|
|
682 'foldcolumn' 'fdc' width of the column used to indicate folds
|
|
683 'foldenable' 'fen' set to display all folds open
|
|
684 'foldexpr' 'fde' expression used when 'foldmethod' is "expr"
|
|
685 'foldignore' 'fdi' ignore lines when 'foldmethod' is "indent"
|
|
686 'foldlevel' 'fdl' close folds with a level higher than this
|
714
|
687 'foldlevelstart' 'fdls' 'foldlevel' when starting to edit a file
|
856
|
688 'foldmarker' 'fmr' markers used when 'foldmethod' is "marker"
|
|
689 'foldmethod' 'fdm' folding type
|
|
690 'foldminlines' 'fml' minimum number of lines for a fold to be closed
|
|
691 'foldnestmax' 'fdn' maximum fold depth
|
|
692 'foldopen' 'fdo' for which commands a fold will be opened
|
|
693 'foldtext' 'fdt' expression used to display for a closed fold
|
714
|
694 'formatlistpat' 'flp' pattern used to recognize a list header
|
856
|
695 'formatoptions' 'fo' how automatic formatting is to be done
|
|
696 'formatprg' 'fp' name of external program used with "gq" command
|
|
697 'formatexpr' 'fex' expression used with "gq" command
|
|
698 'fsync' 'fs' whether to invoke fsync() after file write
|
|
699 'gdefault' 'gd' the ":substitute" flag 'g' is default on
|
|
700 'grepformat' 'gfm' format of 'grepprg' output
|
|
701 'grepprg' 'gp' program to use for ":grep"
|
|
702 'guicursor' 'gcr' GUI: settings for cursor shape and blinking
|
|
703 'guifont' 'gfn' GUI: Name(s) of font(s) to be used
|
|
704 'guifontset' 'gfs' GUI: Names of multi-byte fonts to be used
|
|
705 'guifontwide' 'gfw' list of font names for double-wide characters
|
|
706 'guiheadroom' 'ghr' GUI: pixels room for window decorations
|
|
707 'guioptions' 'go' GUI: Which components and options are used
|
|
708 'guipty' GUI: try to use a pseudo-tty for ":!" commands
|
|
709 'guitablabel' 'gtl' GUI: custom label for a tab page
|
839
|
710 'guitabtooltip' 'gtt' GUI: custom tooltip for a tab page
|
856
|
711 'helpfile' 'hf' full path name of the main help file
|
|
712 'helpheight' 'hh' minimum height of a new help window
|
|
713 'helplang' 'hlg' preferred help languages
|
|
714 'hidden' 'hid' don't unload buffer when it is |abandon|ed
|
|
715 'highlight' 'hl' sets highlighting mode for various occasions
|
|
716 'hlsearch' 'hls' highlight matches with last search pattern
|
|
717 'history' 'hi' number of command-lines that are remembered
|
|
718 'hkmap' 'hk' Hebrew keyboard mapping
|
|
719 'hkmapp' 'hkp' phonetic Hebrew keyboard mapping
|
|
720 'icon' let Vim set the text of the window icon
|
|
721 'iconstring' string to use for the Vim icon text
|
|
722 'ignorecase' 'ic' ignore case in search patterns
|
714
|
723 'imactivatekey' 'imak' key that activates the X input method
|
856
|
724 'imcmdline' 'imc' use IM when starting to edit a command line
|
|
725 'imdisable' 'imd' do not use the IM in any mode
|
|
726 'iminsert' 'imi' use :lmap or IM in Insert mode
|
|
727 'imsearch' 'ims' use :lmap or IM when typing a search pattern
|
|
728 'include' 'inc' pattern to be used to find an include file
|
|
729 'includeexpr' 'inex' expression used to process an include line
|
|
730 'incsearch' 'is' highlight match while typing search pattern
|
|
731 'indentexpr' 'inde' expression used to obtain the indent of a line
|
|
732 'indentkeys' 'indk' keys that trigger indenting with 'indentexpr'
|
|
733 'infercase' 'inf' adjust case of match for keyword completion
|
|
734 'insertmode' 'im' start the edit of a file in Insert mode
|
|
735 'isfname' 'isf' characters included in file names and pathnames
|
|
736 'isident' 'isi' characters included in identifiers
|
|
737 'iskeyword' 'isk' characters included in keywords
|
|
738 'isprint' 'isp' printable characters
|
|
739 'joinspaces' 'js' two spaces after a period with a join command
|
|
740 'key' encryption key
|
|
741 'keymap' 'kmp' name of a keyboard mapping
|
|
742 'keymodel' 'km' enable starting/stopping selection with keys
|
|
743 'keywordprg' 'kp' program to use for the "K" command
|
|
744 'langmap' 'lmap' alphabetic characters for other language mode
|
|
745 'langmenu' 'lm' language to be used for the menus
|
|
746 'laststatus' 'ls' tells when last window has status lines
|
|
747 'lazyredraw' 'lz' don't redraw while executing macros
|
|
748 'linebreak' 'lbr' wrap long lines at a blank
|
|
749 'lines' number of lines in the display
|
|
750 'linespace' 'lsp' number of pixel lines to use between characters
|
|
751 'lisp' automatic indenting for Lisp
|
|
752 'lispwords' 'lw' words that change how lisp indenting works
|
|
753 'list' show <Tab> and <EOL>
|
|
754 'listchars' 'lcs' characters for displaying in list mode
|
|
755 'loadplugins' 'lpl' load plugin scripts when starting up
|
842
|
756 'macatsui' Mac GUI: use ATSUI text drawing
|
856
|
757 'magic' changes special characters in search patterns
|
|
758 'makeef' 'mef' name of the errorfile for ":make"
|
|
759 'makeprg' 'mp' program to use for the ":make" command
|
|
760 'matchpairs' 'mps' pairs of characters that "%" can match
|
|
761 'matchtime' 'mat' tenths of a second to show matching paren
|
|
762 'maxcombine' 'mco' maximum nr of combining characters displayed
|
|
763 'maxfuncdepth' 'mfd' maximum recursive depth for user functions
|
|
764 'maxmapdepth' 'mmd' maximum recursive depth for mapping
|
|
765 'maxmem' 'mm' maximum memory (in Kbyte) used for one buffer
|
714
|
766 'maxmempattern' 'mmp' maximum memory (in Kbyte) used for pattern search
|
856
|
767 'maxmemtot' 'mmt' maximum memory (in Kbyte) used for all buffers
|
|
768 'menuitems' 'mis' maximum number of items in a menu
|
|
769 'mkspellmem' 'msm' memory used before |:mkspell| compresses the tree
|
|
770 'modeline' 'ml' recognize modelines at start or end of file
|
|
771 'modelines' 'mls' number of lines checked for modelines
|
|
772 'modifiable' 'ma' changes to the text are not possible
|
|
773 'modified' 'mod' buffer has been modified
|
|
774 'more' pause listings when the whole screen is filled
|
|
775 'mouse' enable the use of mouse clicks
|
|
776 'mousefocus' 'mousef' keyboard focus follows the mouse
|
|
777 'mousehide' 'mh' hide mouse pointer while typing
|
|
778 'mousemodel' 'mousem' changes meaning of mouse buttons
|
|
779 'mouseshape' 'mouses' shape of the mouse pointer in different modes
|
|
780 'mousetime' 'mouset' max time between mouse double-click
|
|
781 'mzquantum' 'mzq' the interval between polls for MzScheme threads
|
|
782 'nrformats' 'nf' number formats recognized for CTRL-A command
|
|
783 'number' 'nu' print the line number in front of each line
|
|
784 'numberwidth' 'nuw' number of columns used for the line number
|
|
785 'omnifunc' 'ofu' function for filetype-specific completion
|
|
786 'operatorfunc' 'opfunc' funtion to be called for |g@| operator
|
|
787 'osfiletype' 'oft' operating system-specific filetype information
|
|
788 'paragraphs' 'para' nroff macros that separate paragraphs
|
|
789 'paste' allow pasting text
|
|
790 'pastetoggle' 'pt' key code that causes 'paste' to toggle
|
|
791 'patchexpr' 'pex' expression used to patch a file
|
|
792 'patchmode' 'pm' keep the oldest version of a file
|
|
793 'path' 'pa' list of directories searched with "gf" et.al.
|
|
794 'preserveindent' 'pi' preserve the indent structure when reindenting
|
714
|
795 'previewheight' 'pvh' height of the preview window
|
|
796 'previewwindow' 'pvw' identifies the preview window
|
856
|
797 'printdevice' 'pdev' name of the printer to be used for :hardcopy
|
714
|
798 'printencoding' 'penc' encoding to be used for printing
|
856
|
799 'printexpr' 'pexpr' expression used to print PostScript for :hardcopy
|
|
800 'printfont' 'pfn' name of the font to be used for :hardcopy
|
|
801 'printheader' 'pheader' format of the header used for :hardcopy
|
714
|
802 'printmbcharset' 'pmbcs' CJK character set to be used for :hardcopy
|
856
|
803 'printmbfont' 'pmbfn' font names to be used for CJK output of :hardcopy
|
|
804 'printoptions' 'popt' controls the format of :hardcopy output
|
|
805 'pumheight'' 'ph' maximum height of the popup menu
|
|
806 'quoteescape' 'qe' escape characters used in a string
|
|
807 'readonly' 'ro' disallow writing the buffer
|
|
808 'remap' allow mappings to work recursively
|
|
809 'report' threshold for reporting nr. of lines changed
|
|
810 'restorescreen' 'rs' Win32: restore screen when exiting
|
|
811 'revins' 'ri' inserting characters will work backwards
|
|
812 'rightleft' 'rl' window is right-to-left oriented
|
|
813 'rightleftcmd' 'rlc' commands for which editing works right-to-left
|
|
814 'ruler' 'ru' show cursor line and column in the status line
|
|
815 'rulerformat' 'ruf' custom format for the ruler
|
|
816 'runtimepath' 'rtp' list of directories used for runtime files
|
|
817 'scroll' 'scr' lines to scroll with CTRL-U and CTRL-D
|
|
818 'scrollbind' 'scb' scroll in window as other windows scroll
|
|
819 'scrolljump' 'sj' minimum number of lines to scroll
|
|
820 'scrolloff' 'so' minimum nr. of lines above and below cursor
|
|
821 'scrollopt' 'sbo' how 'scrollbind' should behave
|
|
822 'sections' 'sect' nroff macros that separate sections
|
|
823 'secure' secure mode for reading .vimrc in current dir
|
|
824 'selection' 'sel' what type of selection to use
|
|
825 'selectmode' 'slm' when to use Select mode instead of Visual mode
|
714
|
826 'sessionoptions' 'ssop' options for |:mksession|
|
856
|
827 'shell' 'sh' name of shell to use for external commands
|
|
828 'shellcmdflag' 'shcf' flag to shell to execute one command
|
|
829 'shellpipe' 'sp' string to put output of ":make" in error file
|
|
830 'shellquote' 'shq' quote character(s) for around shell command
|
|
831 'shellredir' 'srr' string to put output of filter in a temp file
|
|
832 'shellslash' 'ssl' use forward slash for shell file names
|
|
833 'shelltemp' 'stmp' whether to use a temp file for shell commands
|
|
834 'shelltype' 'st' Amiga: influences how to use a shell
|
|
835 'shellxquote' 'sxq' like 'shellquote', but include redirection
|
|
836 'shiftround' 'sr' round indent to multiple of shiftwidth
|
|
837 'shiftwidth' 'sw' number of spaces to use for (auto)indent step
|
|
838 'shortmess' 'shm' list of flags, reduce length of messages
|
|
839 'shortname' 'sn' non-MS-DOS: Filenames assumed to be 8.3 chars
|
|
840 'showbreak' 'sbr' string to use at the start of wrapped lines
|
|
841 'showcmd' 'sc' show (partial) command in status line
|
|
842 'showfulltag' 'sft' show full tag pattern when completing tag
|
|
843 'showmatch' 'sm' briefly jump to matching bracket if insert one
|
|
844 'showmode' 'smd' message on status line to show current mode
|
|
845 'showtabline' 'stal' tells when the tab pages line is displayed
|
|
846 'sidescroll' 'ss' minimum number of columns to scroll horizontal
|
714
|
847 'sidescrolloff' 'siso' min. nr. of columns to left and right of cursor
|
856
|
848 'smartcase' 'scs' no ignore case when pattern has uppercase
|
|
849 'smartindent' 'si' smart autoindenting for C programs
|
|
850 'smarttab' 'sta' use 'shiftwidth' when inserting <Tab>
|
|
851 'softtabstop' 'sts' number of spaces that <Tab> uses while editing
|
|
852 'spell' enable spell checking
|
714
|
853 'spellcapcheck' 'spc' pattern to locate end of a sentence
|
856
|
854 'spellfile' 'spf' files where |zg| and |zw| store words
|
|
855 'spelllang' 'spl' language(s) to do spell checking for
|
|
856 'spellsuggest' 'sps' method(s) used to suggest spelling corrections
|
|
857 'splitbelow' 'sb' new window from split is below the current one
|
|
858 'splitright' 'spr' new window is put right of the current one
|
|
859 'startofline' 'sol' commands move cursor to first blank in line
|
|
860 'statusline' 'stl' custom format for the status line
|
|
861 'suffixes' 'su' suffixes that are ignored with multiple match
|
|
862 'suffixesadd' 'sua' suffixes added when searching for a file
|
|
863 'swapfile' 'swf' whether to use a swapfile for a buffer
|
|
864 'swapsync' 'sws' how to sync the swap file
|
|
865 'switchbuf' 'swb' sets behavior when switching to another buffer
|
|
866 'synmaxcol' 'smc' maximum column to find syntax items
|
|
867 'syntax' 'syn' syntax to be loaded for current buffer
|
|
868 'tabstop' 'ts' number of spaces that <Tab> in file uses
|
|
869 'tabline' 'tal' custom format for the console tab pages line
|
|
870 'tabpagemax' 'tpm' maximum number of tab pages for |-p| and "tab all"
|
|
871 'tagbsearch' 'tbs' use binary searching in tags files
|
|
872 'taglength' 'tl' number of significant characters for a tag
|
|
873 'tagrelative' 'tr' file names in tag file are relative
|
|
874 'tags' 'tag' list of file names used by the tag command
|
|
875 'tagstack' 'tgst' push tags onto the tag stack
|
|
876 'term' name of the terminal
|
|
877 'termbidi' 'tbidi' terminal takes care of bi-directionality
|
|
878 'termencoding' 'tenc' character encoding used by the terminal
|
|
879 'terse' shorten some messages
|
|
880 'textauto' 'ta' obsolete, use 'fileformats'
|
|
881 'textmode' 'tx' obsolete, use 'fileformat'
|
|
882 'textwidth' 'tw' maximum width of text that is being inserted
|
|
883 'thesaurus' 'tsr' list of thesaurus files for keyword completion
|
|
884 'tildeop' 'top' tilde command "~" behaves like an operator
|
|
885 'timeout' 'to' time out on mappings and key codes
|
|
886 'timeoutlen' 'tm' time out time in milliseconds
|
|
887 'title' let Vim set the title of the window
|
|
888 'titlelen' percentage of 'columns' used for window title
|
|
889 'titleold' old title, restored when exiting
|
|
890 'titlestring' string to use for the Vim window title
|
|
891 'toolbar' 'tb' GUI: which items to show in the toolbar
|
714
|
892 'toolbariconsize' 'tbis' size of the toolbar icons (for GTK 2 only)
|
856
|
893 'ttimeout' time out on mappings
|
|
894 'ttimeoutlen' 'ttm' time out time for key codes in milliseconds
|
|
895 'ttybuiltin' 'tbi' use built-in termcap before external termcap
|
|
896 'ttyfast' 'tf' indicates a fast terminal connection
|
|
897 'ttymouse' 'ttym' type of mouse codes generated
|
|
898 'ttyscroll' 'tsl' maximum number of lines for a scroll
|
|
899 'ttytype' 'tty' alias for 'term'
|
|
900 'undolevels' 'ul' maximum number of changes that can be undone
|
|
901 'updatecount' 'uc' after this many characters flush swap file
|
|
902 'updatetime' 'ut' after this many milliseconds flush swap file
|
|
903 'verbose' 'vbs' give informative messages
|
|
904 'verbosefile' 'vfile' file to write messages in
|
|
905 'viewdir' 'vdir' directory where to store files with :mkview
|
|
906 'viewoptions' 'vop' specifies what to save for :mkview
|
|
907 'viminfo' 'vi' use .viminfo file upon startup and exiting
|
|
908 'virtualedit' 've' when to use virtual editing
|
|
909 'visualbell' 'vb' use visual bell instead of beeping
|
|
910 'warn' warn for shell command when buffer was changed
|
|
911 'weirdinvert' 'wi' for terminals that have weird inversion method
|
|
912 'whichwrap' 'ww' allow specified keys to cross line boundaries
|
|
913 'wildchar' 'wc' command-line character for wildcard expansion
|
|
914 'wildcharm' 'wcm' like 'wildchar' but also works when mapped
|
|
915 'wildignore' 'wig' files matching these patterns are not completed
|
|
916 'wildmenu' 'wmnu' use menu for command line completion
|
|
917 'wildmode' 'wim' mode for 'wildchar' command-line expansion
|
|
918 'wildoptions' 'wop' specifies how command line completion is done.
|
|
919 'winaltkeys' 'wak' when the windows system handles ALT keys
|
|
920 'winheight' 'wh' minimum number of lines for the current window
|
|
921 'winfixheight' 'wfh' keep window height when opening/closing windows
|
|
922 'winfixwidth' 'wfw' keep window width when opening/closing windows
|
|
923 'winminheight' 'wmh' minimum number of lines for any window
|
|
924 'winminwidth' 'wmw' minimal number of columns for any window
|
|
925 'winwidth' 'wiw' minimal number of columns for current window
|
|
926 'wrap' long lines wrap and continue on the next line
|
|
927 'wrapmargin' 'wm' chars from the right where wrapping starts
|
|
928 'wrapscan' 'ws' searches wrap around the end of the file
|
|
929 'write' writing to a file is allowed
|
|
930 'writeany' 'wa' write to file with no need for "!" override
|
|
931 'writebackup' 'wb' make a backup before overwriting a file
|
|
932 'writedelay' 'wd' delay this many msec for each char (for debug)
|
7
|
933 ------------------------------------------------------------------------------
|
|
934 *Q_ur* Undo/Redo commands
|
|
935
|
|
936 |u| N u undo last N changes
|
|
937 |CTRL-R| N CTRL-R redo last N undone changes
|
|
938 |U| U restore last changed line
|
|
939 ------------------------------------------------------------------------------
|
|
940 *Q_et* External commands
|
|
941
|
|
942 |:shell| :sh[ell] start a shell
|
|
943 |:!| :!{command} execute {command} with a shell
|
|
944 |K| K lookup keyword under the cursor with
|
|
945 'keywordprg' program (default: "man")
|
|
946 ------------------------------------------------------------------------------
|
|
947 *Q_qf* Quickfix commands
|
|
948
|
|
949 |:cc| :cc [nr] display error [nr] (default is the same again)
|
|
950 |:cnext| :cn display the next error
|
|
951 |:cprevious| :cp display the previous error
|
|
952 |:clist| :cl list all errors
|
|
953 |:cfile| :cf read errors from the file 'errorfile'
|
797
|
954 |:cgetbuffer| :cgetb like :cbuffer but don't jump to the first error
|
446
|
955 |:cgetfile| :cg like :cfile but don't jump to the first error
|
797
|
956 |:cgetexpr| :cgete like :cexpr but don't jump to the first error
|
625
|
957 |:caddfile| :caddf add errors from the error file to the current
|
|
958 quickfix list
|
|
959 |:caddexpr| :cad add errors from an expression to the current
|
446
|
960 quickfix list
|
|
961 |:cbuffer| :cb read errors from text in a buffer
|
|
962 |:cexpr| :cex read errors from an expression
|
7
|
963 |:cquit| :cq quit without writing and return error code (to
|
|
964 the compiler)
|
|
965 |:make| :make [args] start make, read errors, and jump to first
|
|
966 error
|
|
967 |:grep| :gr[ep] [args] execute 'grepprg' to find matches and jump to
|
|
968 the first one.
|
|
969 ------------------------------------------------------------------------------
|
|
970 *Q_vc* Various commands
|
|
971
|
|
972 |CTRL-L| CTRL-L Clear and redraw the screen.
|
|
973 |CTRL-G| CTRL-G show current file name (with path) and cursor
|
|
974 position
|
|
975 |ga| ga show ascii value of character under cursor in
|
|
976 decimal, hex, and octal
|
21
|
977 |g8| g8 for utf-8 encoding: show byte sequence for
|
856
|
978 character under cursor in hex.
|
7
|
979 |g_CTRL-G| g CTRL-G show cursor column, line, and character
|
|
980 position
|
|
981 |CTRL-C| CTRL-C during searches: Interrupt the search
|
|
982 |dos-CTRL-Break| CTRL-Break MS-DOS: during searches: Interrupt the search
|
|
983 |<Del>| <Del> while entering a count: delete last character
|
|
984 |:version| :ve[rsion] show version information
|
|
985 |:mode| :mode N MS-DOS: set screen mode to N (number, C80,
|
|
986 C4350, etc.)
|
|
987 |:normal| :norm[al][!] {commands}
|
|
988 Execute Normal mode commands.
|
|
989 |Q| Q switch to "Ex" mode
|
|
990
|
|
991 |:redir| :redir >{file} redirect messages to {file}
|
|
992 |:silent| :silent[!] {command} execute {command} silently
|
|
993 |:confirm| :confirm {command} quit, write, etc., asking about
|
|
994 unsaved changes or read-only files.
|
|
995 |:browse| :browse {command} open/read/write file, using a
|
|
996 file selection dialog
|
|
997 ------------------------------------------------------------------------------
|
|
998 *Q_ce* Command-line editing
|
|
999
|
|
1000 |c_<Esc>| <Esc> abandon command-line (if 'wildchar' is
|
|
1001 <Esc>, type it twice)
|
|
1002
|
|
1003 |c_CTRL-V| CTRL-V {char} insert {char} literally
|
|
1004 |c_CTRL-V| CTRL-V {number} enter decimal value of character (up to
|
|
1005 three digits)
|
|
1006 |c_CTRL-K| CTRL-K {char1} {char2}
|
|
1007 enter digraph (See |Q_di|)
|
|
1008 |c_CTRL-R| CTRL-R {0-9a-z"%#:-=}
|
|
1009 insert the contents of a register
|
|
1010
|
|
1011 |c_<Left>| <Left>/<Right> cursor left/right
|
|
1012 |c_<S-Left>| <S-Left>/<S-Right> cursor one word left/right
|
|
1013 |c_CTRL-B| CTRL-B/CTRL-E cursor to beginning/end of command-line
|
|
1014
|
|
1015 |c_<BS>| <BS> delete the character in front of the cursor
|
|
1016 |c_<Del>| <Del> delete the character under the cursor
|
|
1017 |c_CTRL-W| CTRL-W delete the word in front of the cursor
|
|
1018 |c_CTRL-U| CTRL-U remove all characters
|
|
1019
|
|
1020 |c_<Up>| <Up>/<Down> recall older/newer command-line that starts
|
|
1021 with current command
|
|
1022 |c_<S-Up>| <S-Up>/<S-Down> recall older/newer command-line from history
|
|
1023 |:history| :his[tory] show older command-lines
|
|
1024
|
|
1025 Context-sensitive completion on the command-line:
|
|
1026
|
|
1027 |c_wildchar| 'wildchar' (default: <Tab>)
|
|
1028 do completion on the pattern in front of the
|
|
1029 cursor. If there are multiple matches,
|
|
1030 beep and show the first one; further
|
|
1031 'wildchar' will show the next ones.
|
|
1032 |c_CTRL-D| CTRL-D list all names that match the pattern in
|
|
1033 front of the cursor
|
|
1034 |c_CTRL-A| CTRL-A insert all names that match pattern in front
|
|
1035 of cursor
|
|
1036 |c_CTRL-L| CTRL-L insert longest common part of names that
|
|
1037 match pattern
|
|
1038 |c_CTRL-N| CTRL-N after 'wildchar' with multiple matches: go
|
|
1039 to next match
|
|
1040 |c_CTRL-P| CTRL-P after 'wildchar' with multiple matches: go
|
|
1041 to previous match
|
|
1042 ------------------------------------------------------------------------------
|
|
1043 *Q_ra* Ex ranges
|
|
1044
|
|
1045 |:range| , separates two line numbers
|
|
1046 |:range| ; idem, set cursor to the first line number
|
|
1047 before interpreting the second one
|
|
1048
|
|
1049 |:range| {number} an absolute line number
|
|
1050 |:range| . the current line
|
|
1051 |:range| $ the last line in the file
|
|
1052 |:range| % equal to 1,$ (the entire file)
|
|
1053 |:range| * equal to '<,'> (visual area)
|
|
1054 |:range| 't position of mark t
|
|
1055 |:range| /{pattern}[/] the next line where {pattern} matches
|
|
1056 |:range| ?{pattern}[?] the previous line where {pattern} matches
|
|
1057
|
|
1058 |:range| +[num] add [num] to the preceding line number
|
|
1059 (default: 1)
|
|
1060 |:range| -[num] subtract [num] from the preceding line
|
|
1061 number (default: 1)
|
|
1062 ------------------------------------------------------------------------------
|
|
1063 *Q_ex* Special Ex characters
|
|
1064
|
|
1065 |:bar| | separates two commands (not for ":global" and ":!")
|
|
1066 |:quote| " begins comment
|
|
1067
|
|
1068 |:_%| % current file name (only where a file name is expected)
|
|
1069 |:_#| #[num] alternate file name [num] (only where a file name is
|
|
1070 expected)
|
|
1071 Note: The next four are typed literally; these are not special keys!
|
|
1072 |:<cword>| <cword> word under the cursor (only where a file name is
|
|
1073 expected)
|
|
1074 |:<cWORD>| <cWORD> WORD under the cursor (only where a file name is
|
|
1075 expected) (see |WORD|)
|
|
1076 |:<cfile>| <cfile> file name under the cursor (only where a file name is
|
|
1077 expected)
|
|
1078 |:<afile>| <afile> file name for autocommand (only where a file name is
|
|
1079 expected)
|
|
1080 |:<sfile>| <sfile> file name of a ":source"d file, within that file (only
|
|
1081 where a file name is expected)
|
|
1082
|
|
1083 After "%", "#", "<cfile>", "<sfile>" or "<afile>"
|
|
1084 |::p| :p full path
|
|
1085 |::h| :h head (file name removed)
|
|
1086 |::t| :t tail (file name only)
|
|
1087 |::r| :r root (extension removed)
|
|
1088 |::e| :e extension
|
|
1089 |::s| :s/{pat}/{repl}/ substitute {pat} with {repl}
|
|
1090 ------------------------------------------------------------------------------
|
16
|
1091 *Q_st* Starting VIM
|
|
1092
|
|
1093 |-vim| vim [options] start editing with an empty buffer
|
|
1094 |-file| vim [options] {file} .. start editing one or more files
|
|
1095 |--| vim [options] - read file from stdin
|
|
1096 |-tag| vim [options] -t {tag} edit the file associated with {tag}
|
|
1097 |-qf| vim [options] -q [fname] start editing in QuickFix mode,
|
|
1098 display the first error
|
|
1099
|
|
1100 Most useful Vim arguments (for full list see |startup-options|)
|
|
1101
|
|
1102 |-gui| -g start GUI (also allows other options)
|
|
1103
|
|
1104 |-+| +[num] put the cursor at line [num] (default: last line)
|
|
1105 |-+c| +{command} execute {command} after loading the file
|
|
1106 |-+/| +/{pat} {file} .. put the cursor at the first occurrence of {pat}
|
|
1107 |-v| -v Vi mode, start ex in Normal mode
|
|
1108 |-e| -e Ex mode, start vim in Ex mode
|
|
1109 |-R| -R Read-only mode, implies -n
|
|
1110 |-m| -m modifications not allowed (resets 'write' option)
|
|
1111 |-d| -d diff mode |diff|
|
|
1112 |-b| -b binary mode
|
|
1113 |-l| -l lisp mode
|
|
1114 |-A| -A Arabic mode ('arabic' is set)
|
|
1115 |-F| -F Farsi mode ('fkmap' and 'rightleft' are set)
|
|
1116 |-H| -H Hebrew mode ('hkmap' and 'rightleft' are set)
|
|
1117 |-V| -V Verbose, give informative messages
|
|
1118 |-C| -C Compatible, set the 'compatible' option
|
|
1119 |-N| -N Nocompatible, reset the 'compatible' option
|
|
1120 |-r| -r give list of swap files
|
|
1121 |-r| -r {file} .. recover aborted edit session
|
|
1122 |-n| -n do not create a swap file
|
|
1123 |-o| -o [num] open [num] windows (default: one for each file)
|
|
1124 |-f| -f GUI: foreground process, don't fork
|
|
1125 Amiga: do not restart VIM to open a window (for
|
|
1126 e.g., mail)
|
|
1127 |-s| -s {scriptin} first read commands from the file {scriptin}
|
|
1128 |-w| -w {scriptout} write typed chars to file {scriptout} (append)
|
|
1129 |-W| -W {scriptout} write typed chars to file {scriptout} (overwrite)
|
|
1130 |-T| -T {terminal} set terminal name
|
|
1131 |-d| -d {device} Amiga: open {device} to be used as a console
|
|
1132 |-u| -u {vimrc} read inits from {vimrc} instead of other inits
|
|
1133 |-U| -U {gvimrc} idem, for when starting the GUI
|
|
1134 |-i| -i {viminfo} read info from {viminfo} instead of other files
|
|
1135 |---| -- end of options, other arguments are file names
|
|
1136 |--help| --help show list of arguments and exit
|
|
1137 |--version| --version show version info and exit
|
|
1138 |--| - Read file from stdin.
|
|
1139 ------------------------------------------------------------------------------
|
7
|
1140 *Q_ed* Editing a file
|
|
1141
|
|
1142 Without !: Fail if changes has been made to the current buffer.
|
|
1143 With !: Discard any changes to the current buffer.
|
|
1144 |:edit_f| :e[dit][!] {file} Edit {file}.
|
|
1145 |:edit| :e[dit][!] Reload the current file.
|
|
1146 |:enew| :ene[w][!] Edit a new, unnamed buffer.
|
|
1147 |:find| :fin[d][!] {file} Find {file} in 'path' and edit it.
|
|
1148
|
|
1149 |CTRL-^| N CTRL-^ Edit alternate file N (equivalent to ":e #N").
|
|
1150 |gf| gf or ]f Edit the file whose name is under the cursor
|
|
1151 |:pwd| :pwd Print the current directory name.
|
|
1152 |:cd| :cd [path] Change the current directory to [path].
|
|
1153 |:cd-| :cd - Back to previous current directory.
|
|
1154 |:file| :f[ile] Print the current file name and the cursor
|
|
1155 position.
|
|
1156 |:file| :f[ile] {name} Set the current file name to {name}.
|
|
1157 |:files| :files Show alternate file names.
|
|
1158 ------------------------------------------------------------------------------
|
|
1159 *Q_fl* Using the argument list |argument-list|
|
|
1160
|
|
1161 |:args| :ar[gs] Print the argument list, with the current file
|
|
1162 in "[]".
|
|
1163 |:all| :all or :sall Open a window for every file in the arg list.
|
|
1164 |:wn| :wn[ext][!] Write file and edit next file.
|
|
1165 |:wn| :wn[ext][!] {file} Write to {file} and edit next file, unless
|
|
1166 {file} exists. With !, overwrite existing
|
|
1167 file.
|
|
1168 |:wN| :wN[ext][!] [file] Write file and edit previous file.
|
|
1169
|
|
1170 in current window in new window ~
|
|
1171 |:argument| :argu[ment] N :sar[gument] N Edit file N
|
|
1172 |:next| :n[ext] :sn[ext] Edit next file
|
|
1173 |:next_f| :n[ext] {arglist} :sn[ext] {arglist} define new arg list
|
|
1174 and edit first file
|
|
1175 |:Next| :N[ext] :sN[ext] Edit previous file
|
|
1176 |:first| :fir[st] :sfir[st] Edit first file
|
|
1177 |:last| :la[st] :sla[st] Edit last file
|
|
1178 ------------------------------------------------------------------------------
|
|
1179 *Q_wq* Writing and quitting
|
|
1180
|
|
1181 |:w| :[range]w[rite][!] Write to the current file.
|
|
1182 |:w_f| :[range]w[rite] {file} Write to {file}, unless it already
|
|
1183 exists.
|
|
1184 |:w_f| :[range]w[rite]! {file} Write to {file}. Overwrite an existing
|
|
1185 file.
|
|
1186 |:w_a| :[range]w[rite][!] >> Append to the current file.
|
|
1187 |:w_a| :[range]w[rite][!] >> {file} Append to {file}.
|
|
1188 |:w_c| :[range]w[rite] !{cmd} Execute {cmd} with [range] lines as
|
|
1189 standard input.
|
|
1190 |:up| :[range]up[date][!] write to current file if modified
|
|
1191 |:wall| :wa[ll][!] write all changed buffers
|
|
1192
|
|
1193 |:q| :q[uit] Quit current buffer, unless changes have been
|
|
1194 made. Exit Vim when there are no other
|
|
1195 non-help buffers
|
|
1196 |:q| :q[uit]! Quit current buffer always, discard any
|
|
1197 changes. Exit Vim when there are no other
|
|
1198 non-help buffers
|
|
1199 |:qa| :qa[ll] Exit Vim, unless changes have been made.
|
|
1200 |:qa| :qa[ll]! Exit Vim always, discard any changes.
|
|
1201 |:cq| :cq Quit without writing and return error code.
|
|
1202
|
|
1203 |:wq| :wq[!] Write the current file and exit.
|
|
1204 |:wq| :wq[!] {file} Write to {file} and exit.
|
|
1205 |:xit| :x[it][!] [file] Like ":wq" but write only when changes have
|
|
1206 been made
|
|
1207 |ZZ| ZZ Same as ":x".
|
|
1208 |ZQ| ZQ Same as ":q!".
|
|
1209 |:xall| :xa[ll][!] or :wqall[!]
|
|
1210 Write all changed buffers and exit
|
|
1211
|
236
|
1212 |:stop| :st[op][!] Suspend VIM or start new shell. If 'aw' option
|
7
|
1213 is set and [!] not given write the buffer.
|
|
1214 |CTRL-Z| CTRL-Z Same as ":stop"
|
|
1215 ------------------------------------------------------------------------------
|
|
1216 *Q_ac* Automatic Commands
|
|
1217
|
|
1218 |viminfo-file| Read registers, marks, history at startup, save when exiting.
|
|
1219
|
|
1220 |:rviminfo| :rv[iminfo] [file] Read info from viminfo file [file]
|
|
1221 |:rviminfo| :rv[iminfo]! [file] idem, overwrite existing info
|
|
1222 |:wviminfo| :wv[iminfo] [file] Add info to viminfo file [file]
|
|
1223 |:wviminfo| :wv[iminfo]! [file] Write info to viminfo file [file]
|
|
1224
|
|
1225 |modeline| Automatic option setting when editing a file
|
|
1226
|
|
1227 |modeline| vim:{set-arg}: .. In the first and last lines of the
|
|
1228 file (see 'ml' option), {set-arg} is
|
|
1229 given as an argument to ":set"
|
|
1230
|
|
1231 |autocommand| Automatic execution of commands on certain events.
|
|
1232
|
|
1233 |:autocmd| :au List all autocommands
|
|
1234 |:autocmd| :au {event} List all autocommands for {event}
|
|
1235 |:autocmd| :au {event} {pat} List all autocommands for {event} with
|
|
1236 {pat}
|
|
1237 |:autocmd| :au {event} {pat} {cmd} Enter new autocommands for {event}
|
|
1238 with {pat}
|
|
1239 |:autocmd| :au! Remove all autocommands
|
|
1240 |:autocmd| :au! {event} Remove all autocommands for {event}
|
|
1241 |:autocmd| :au! * {pat} Remove all autocommands for {pat}
|
|
1242 |:autocmd| :au! {event} {pat} Remove all autocommands for {event}
|
|
1243 with {pat}
|
|
1244 |:autocmd| :au! {event} {pat} {cmd} Remove all autocommands for {event}
|
|
1245 with {pat} and enter new one
|
|
1246 ------------------------------------------------------------------------------
|
|
1247 *Q_wi* Multi-window commands
|
|
1248
|
|
1249 |CTRL-W_s| CTRL-W s or :split Split window into two parts
|
|
1250 |:split_f| :split {file} Split window and edit {file} in one of
|
|
1251 them
|
|
1252 |:vsplit| :vsplit {file} Same, but split vertically
|
|
1253 |:vertical| :vertical {cmd} Make {cmd} split vertically
|
|
1254
|
|
1255 |:sfind| :sf[ind] {file} Split window, find {file} in 'path'
|
|
1256 and edit it.
|
|
1257 |CTRL-W_]| CTRL-W ] Split window and jump to tag under
|
|
1258 cursor
|
|
1259 |CTRL-W_f| CTRL-W f Split window and edit file name under
|
|
1260 the cursor
|
|
1261 |CTRL-W_^| CTRL-W ^ Split window and edit alternate file
|
|
1262 |CTRL-W_n| CTRL-W n or :new Create new empty window
|
|
1263 |CTRL-W_q| CTRL-W q or :q[uit] Quit editing and close window
|
|
1264 |CTRL-W_c| CTRL-W c or :cl[ose] Make buffer hidden and close window
|
|
1265 |CTRL-W_o| CTRL-W o or :on[ly] Make current window only one on the
|
|
1266 screen
|
|
1267
|
|
1268 |CTRL-W_j| CTRL-W j Move cursor to window below
|
|
1269 |CTRL-W_k| CTRL-W k Move cursor to window above
|
|
1270 |CTRL-W_CTRL-W| CTRL-W CTRL-W Move cursor to window below (wrap)
|
|
1271 |CTRL-W_W| CTRL-W W Move cursor to window above (wrap)
|
|
1272 |CTRL-W_t| CTRL-W t Move cursor to top window
|
|
1273 |CTRL-W_b| CTRL-W b Move cursor to bottom window
|
|
1274 |CTRL-W_p| CTRL-W p Move cursor to previous active window
|
|
1275
|
|
1276 |CTRL-W_r| CTRL-W r Rotate windows downwards
|
|
1277 |CTRL-W_R| CTRL-W R Rotate windows upwards
|
|
1278 |CTRL-W_x| CTRL-W x Exchange current window with next one
|
|
1279
|
|
1280 |CTRL-W_=| CTRL-W = Make all windows equal height
|
|
1281 |CTRL-W_-| CTRL-W - Decrease current window height
|
|
1282 |CTRL-W_+| CTRL-W + Increase current window height
|
|
1283 |CTRL-W__| CTRL-W _ Set current window height (default:
|
|
1284 very high)
|
|
1285 ------------------------------------------------------------------------------
|
|
1286 *Q_bu* Buffer list commands
|
|
1287
|
|
1288 |:buffers| :buffers or :files list all known buffer and file names
|
|
1289
|
|
1290 |:ball| :ball or :sball edit all args/buffers
|
|
1291 |:unhide| :unhide or :sunhide edit all loaded buffers
|
|
1292
|
|
1293 |:badd| :badd {fname} add file name {fname} to the list
|
|
1294 |:bunload| :bunload[!] [N] unload buffer [N] from memory
|
|
1295 |:bdelete| :bdelete[!] [N] unload buffer [N] and delete it from
|
|
1296 the buffer list
|
|
1297
|
|
1298 in current window in new window ~
|
|
1299 |:buffer| :[N]buffer [N] :[N]sbuffer [N] to arg/buf N
|
|
1300 |:bnext| :[N]bnext [N] :[N]sbnext [N] to Nth next arg/buf
|
|
1301 |:bNext| :[N]bNext [N] :[N]sbNext [N] to Nth previous arg/buf
|
|
1302 |:bprevious| :[N]bprevious [N] :[N]sbprevious [N] to Nth previous arg/buf
|
|
1303 |:bfirst| :bfirst :sbfirst to first arg/buf
|
|
1304 |:blast| :blast :sblast to last arg/buf
|
|
1305 |:bmodified| :[N]bmod [N] :[N]sbmod [N] to Nth modified buf
|
|
1306 ------------------------------------------------------------------------------
|
|
1307 *Q_sy* Syntax Highlighting
|
|
1308
|
|
1309 |:syn-on| :syntax on start using syntax highlighting
|
|
1310 |:syn-off| :syntax off stop using syntax highlighting
|
|
1311
|
|
1312 |:syn-keyword| :syntax keyword {group-name} {keyword} ..
|
|
1313 add a syntax keyword item
|
|
1314 |:syn-match| :syntax match {group-name} {pattern} ...
|
|
1315 add syntax match item
|
|
1316 |:syn-region| :syntax region {group-name} {pattern} ...
|
|
1317 add syntax region item
|
|
1318 |:syn-sync| :syntax sync [ccomment | lines {N} | ...]
|
|
1319 tell syntax how to sync
|
|
1320 |:syntax| :syntax [list] list current syntax items
|
|
1321 |:syn-clear| :syntax clear clear all syntax info
|
|
1322
|
|
1323 |:highlight| :highlight clear clear all highlight info
|
|
1324 |:highlight| :highlight {group-name} {key}={arg} ..
|
|
1325 set highlighting for {group-name}
|
|
1326
|
|
1327 |:filetype| :filetype on switch on file type detection, without
|
|
1328 syntax highlighting
|
|
1329 |:filetype| :filetype plugin indent on
|
|
1330 switch on file type detection, with
|
|
1331 automatic indenting and settings
|
|
1332 ------------------------------------------------------------------------------
|
|
1333 *Q_gu* GUI commands
|
|
1334
|
|
1335 |:gui| :gui UNIX: start the GUI
|
|
1336 |:gui| :gui {fname} .. idem, and edit {fname} ..
|
|
1337
|
|
1338 |:menu| :menu list all menus
|
|
1339 |:menu| :menu {mpath} list menus starting with {mpath}
|
|
1340 |:menu| :menu {mpath} {rhs} add menu {mpath}, giving {lhs}
|
|
1341 |:menu| :menu {pri} {mpath} {rhs}
|
|
1342 idem, with priorities {pri}
|
|
1343 |:menu| :menu ToolBar.{name} {rhs}
|
|
1344 add toolbar item, giving {lhs}
|
|
1345 |:tmenu| :tmenu {mpath} {text} add tooltip to menu {mpath}
|
|
1346 |:unmenu| :unmenu {mpath} remove menu {mpath}
|
|
1347 ------------------------------------------------------------------------------
|
|
1348 *Q_fo* Folding
|
|
1349
|
|
1350 |'foldmethod'| set foldmethod=manual manual folding
|
|
1351 set foldmethod=indent folding by indent
|
|
1352 set foldmethod=expr folding by 'foldexpr'
|
|
1353 set foldmethod=syntax folding by syntax regions
|
|
1354 set foldmethod=marker folding by 'foldmarkers'
|
|
1355
|
|
1356 |zf| zf{motion} operator: Define a fold manually
|
|
1357 |:fold| :{range}fold define a fold for {range} lines
|
|
1358 |zd| zd delete one fold under the cursor
|
|
1359 |zD| zD delete all folds under the cursor
|
|
1360
|
|
1361 |zo| zo open one fold under the cursor
|
|
1362 |zO| zO open all folds under the cursor
|
|
1363 |zc| zc close one fold under the cursor
|
|
1364 |zC| zC close all folds under the cursor
|
|
1365
|
|
1366 |zm| zm fold more: decrease 'foldlevel'
|
|
1367 |zM| zM close all folds: make 'foldlevel' zero
|
|
1368 |zr| zr reduce folding: increase 'foldlevel'
|
|
1369 |zR| zR open all folds: make 'foldlevel' max.
|
|
1370
|
|
1371 |zn| zn fold none: reset 'foldenable'
|
|
1372 |zN| zN fold normal set 'foldenable'
|
|
1373 |zi| zi invert 'foldenable'
|
|
1374
|
|
1375 vim:tw=78:ts=8:ft=help:norl:
|