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