index

 *index.txt* For Vim version 5.4. Last change: 1999 Jun 17 VIM REFERENCE MANUAL by Bram Moolenaar This file contains a list of all commands for each mode, with a tag and a
short description. The lists are sorted on ASCII value. Tip: When looking for certain functionality, use a search command. E.g.,
to look for deleting something, use: "/delete". 1. Insert mode |insert-index|
2. Normal mode |normal-index| 2.1. Text objects |objects| 2.2. Window commands |CTRL-W| 2.3. Square bracket commands |[| 2.4. Commands starting with 'g'    |g|
3. Visual mode |visual-index|
4. Command-line editing |ex-edit-index|
5. EX commands |ex-cmd-index| For an overview of options see help.txt |option-list|.
For a complete description of each option see options.txt |options|.
For a complete listing of all help items see |help-tags|. ============================================================================== 1. Insert mode *insert-index* tag char action 
|i_CTRL-@|   CTRL-@ insert previously inserted text and stop insert
|i_CTRL-A|   CTRL-A insert previously inserted text CTRL-B not used |i_CTRL-B-gone|
|i_CTRL-C|   CTRL-C quit insert mode, without checking for abbreviation, unless 'insertmode' set.
|i_CTRL-D|   CTRL-D delete one shiftwidth of indent in the current line
|i_CTRL-E|   CTRL-E insert the character which is below the cursor CTRL-F not used CTRL-G reserved for future expansion
|i_|    delete character before the cursor
|i_digraph|        {char1}{char2} enter digraph (only when 'digraph' option set)
|i_CTRL-H|   CTRL-H same as 
|i_|  insert a  character
|i_CTRL-I|   CTRL-I same as 
|i_|    same as 
|i_CTRL-J|   CTRL-J same as 
|i_CTRL-K|   CTRL-K {char1} {char2} enter digraph
|i_CTRL-L|  CTRL-L when 'insertmode' set: Leave Insert mode
|i_|    begin new line
|i_CTRL-M|   CTRL-M same as 
|i_CTRL-N|   CTRL-N find next match for keyword in front of the cursor
|i_CTRL-O|   CTRL-O execute a single command and return to insert mode
|i_CTRL-P|   CTRL-P find previous match for keyword in front of the cursor
|i_CTRL-Q|   CTRL-Q same as CTRL-V (used for terminal control flow)
|i_CTRL-R|   CTRL-R {0-9a-z"%#:=} insert the contents of a register CTRL-S (used for terminal control flow)
|i_CTRL-T|   CTRL-T insert one shiftwidth of indent in current line
|i_CTRL-U|   CTRL-U delete all entered characters in the current line
|i_CTRL-V|   CTRL-V {char}   insert next non-digit literally
|i_CTRL-V_digit| CTRL-V {number} insert three digit decimal number as a single byte.
|i_CTRL-W|   CTRL-W delete word before the cursor
|i_CTRL-X|   CTRL-X {mode}   enter CTRL-X sub mode, see below
|i_CTRL-Y|   CTRL-Y insert the character which is above the cursor
|i_CTRL-Z|  CTRL-Z when 'insertmode' set: suspend Vim
|i_|  end insert mode (unless 'insertmode' set)
|i_CTRL-[|   CTRL-[ same as 
|i_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode CTRL-\ not_CTRL-N       not used
|i_CTRL-]|   CTRL-] trigger abbreviation CTRL-^ not used
|i_CTRL-_|   CTRL-_ When 'allowrevins' set: change language (Hebrew, Farsi) {only when compiled with +rightleft feature}  to '~'       not used, except '0' and '^' followed by CTRL-D |i_0_CTRL-D|  0 CTRL-D        delete all indent in the current line
|i_^_CTRL-D|       ^ CTRL-D        delete all indent in the current line, restore it in the next line |i_|       delete character under the cursor Meta characters (0x80 to 0xff, 128 to 255) not used |i_|      cursor one character left
|i_|     cursor one word left
|i_|     cursor one word left
|i_|      cursor one character right
|i_|  cursor one word right
|i_|  cursor one word right
|i_|    cursor one line up
|i_|        same as 
|i_|        cursor one line down
|i_|     same as 
|i_|        cursor to start of line
|i_|     cursor to start of file
|i_|  cursor past end of line
|i_|      cursor past end of file
|i_|     one screenfull backward
|i_|               one screenfull forward
|i_|   same as 
|i_|       stop insert mode and display help window
|i_|     toggle Insert/Replace mode
|i_|            cursor at mouse click commands in CTRL-X submode |i_CTRL-X_CTRL-D|   CTRL-X CTRL-D   complete defined identifiers
|i_CTRL-X_CTRL-E|     CTRL-X CTRL-E   scroll up
|i_CTRL-X_CTRL-F|     CTRL-X CTRL-F   complete file names
|i_CTRL-X_CTRL-I|     CTRL-X CTRL-I   complete identifiers
|i_CTRL-X_CTRL-K|     CTRL-X CTRL-K   complete identifiers from dictionary
|i_CTRL-X_CTRL-L|     CTRL-X CTRL-L   complete whole lines
|i_CTRL-X_CTRL-L|     CTRL-X CTRL-N  next completion
|i_CTRL-X_CTRL-L|     CTRL-X CTRL-P  previous completion
|i_CTRL-X_CTRL-Y|     CTRL-X CTRL-Y   scroll down
|i_CTRL-X_CTRL-]|     CTRL-X CTRL-]   complete tags
{not available when compiled without the +insert_expand feature} ============================================================================== 2. Normal mode *normal-index* CHAR any non-blank character
WORD any sequences of non-blank characters
N a number entered before the command
{motion} a cursor movement command
Nmove the text that is moved over with a {motion}
SECTION a section that possibly starts with '}' instead of '{' note: 1 = cursor movement command; 2 = can be undone/redone tag char note action in Normal mode     
------------------------------------------------------------------------------ CTRL-@ not used
|CTRL-A|       CTRL-A 2 add N to number at/after cursor
|CTRL-B|       CTRL-B 1 scroll N screens Backwards
|CTRL-C|      CTRL-C interrupt current (search) command
|CTRL-D|       CTRL-D scroll Down N lines (default: half a screen)
|CTRL-E|       CTRL-E scroll N lines upwards (N lines Extra)
|CTRL-F|       CTRL-F 1 scroll N screens Forward
|CTRL-G|      CTRL-G display current file name and position
||  1 same as "h"
|CTRL-H|       CTRL-H 1 same as "h"
||  1 go to N newer entry in jump list
|CTRL-I|       CTRL-I 1 same as 
||  1 same as "j"
|CTRL-J|       CTRL-J 1 same as "j" CTRL-K not used
|CTRL-L|      CTRL-L redraw screen
||  1 cursor to the first CHAR N lines lower
|CTRL-M|       CTRL-M> 1 same as 
|CTRL-N|       CTRL-N 1 same as "j"
|CTRL-O|       CTRL-O 1 go to N older entry in jump list
|CTRL-P|       CTRL-P 1 cursor N lines upward CTRL-Q (used for terminal control flow)
|CTRL-R| CTRL-R 2 redo changes which were undone with 'u' CTRL-S (used for terminal control flow)
|CTRL-T|    CTRL-T jump to N older Tag in tag list
|CTRL-U|       CTRL-U scroll N lines Upwards (default: half a screen)
|CTRL-V|       CTRL-V start blockwise Visual mode
|CTRL-W|  CTRL-W {char} window commands, see |CTRL-W|
|CTRL-X|       CTRL-X 2 subtract N from number at/after cursor
|CTRL-Y|       CTRL-Y scroll N lines downwards
|CTRL-Z|     CTRL-Z suspend program (or start new shell) CTRL-[  not used
|CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode (no-op) CTRL-\ not_CTRL-N not used
|CTRL-]|    CTRL-] :ta to ident under cursor
|CTRL-^|      CTRL-^ edit Nth alternate file (equivalent to ":e #N") CTRL-_ not used ||   1 same as "l"
|!| !{motion}{filter} 2 filter Nmove text through the {filter} command
|!!| !!{filter}    2 filter N lines through the {filter} command
|quote| "{a-zA-Z0-9.%#:-"} use buffer {a-zA-Z0-9.%#:-"} for next delete, yank or put (upper case to append) ({.%#:} only work with put)
|#| # 1 search backward for the Nth occurrence of the ident under the cursor
|$| $ 1 cursor to the end of Nth next line
|%| % 1 find the next (curly/square) bracket on this line and go to its match, or go to matching comment bracket, or go to matching preprocessor directive.
|N%| {count}%      1 go to N percentage in the file
|&| & 2 repeat last :s
|'| '{a-zA-Z0-9}     1 cursor to the first CHAR on the line with mark {a-zA-Z0-9}
|''| '' 1 cursor to the first CHAR of the line where the cursor was before the latest jump.
|'| '> 1 cursor to the first CHAR of the line where highlighted area ends/ended in the current buffer.
|'[| '[ 1 cursor to the first CHAR on the line of the start of last operated text or start of putted text
|']| '] 1 cursor to the first CHAR on the line of the end of last operated text or end of putted text
|(| ( 1 cursor N sentences backward
|)| ) 1 cursor N sentences forward
|star| * 1 search forward for the Nth occurrence of the ident under the cursor
|+| + 1 cursor to the first CHAR N lines lower
|,| , 1 repeat latest f, t, F or T in opposite direction N times
|-| - 1 cursor to the first CHAR N lines higher
|.| . 2 repeat last change with count replaced with N
|/| /{pattern}   1 search forward for the Nth occurrence of {pattern}
|/| / 1 search forward for {pattern} of last search
|count| 0 1 cursor to the first char of the line
|count| 1 prepend to command to give a count
|count| 2 "
|count| 3 "
|count| 4 "
|count| 5 "
|count| 6 "
|count| 7 "
|count| 8 "
|count| 9 "
|:| : start entering an Ex command
|N:| {count}: start entering an Ex command with range from current line to N lines down
|;| ; 1 repeat latest f, t, F or T N times
|> 2 shift N lines one 'shiftwidth' rightwards
|?| ?{pattern}   1 search backward for the Nth previous occurrence of {pattern}
|?| ? 1 search backward for {pattern} of last search
|@| @{a-z} 2 execute the contents of named buffer {a-z} N times
|@:| @: repeat the previous ":" command N times
|@@| @@ 2 repeat the previous @{a-z} N times
|A| A 2 append text after the end of the line N times
|B| B 1 cursor N WORDS backward
|C| ["x]C 2 change from the cursor position to the end of the line, and N-1 more lines [into buffer x]; synonym for "c$"
|D| ["x]D 2 delete the characters under the cursor until the end of the line and N-1 more lines [into buffer x]; synonym for "d$"
|E| E 1 cursor forward to the end of WORD N
|F| F{char} 1 cursor to the Nth occurrence of {char} to the left
|G| G 1 cursor to line N, default last line
|H| H 1 cursor to line N from top of screen
|I| I 2 insert text before the first CHAR on the line N times
|J| J 2 Join N lines; default is 2
|K| K lookup Keyword under the cursor with 'keywordprg'
|L| L 1 cursor to line N from bottom of screen
|M| M 1 cursor to middle line of screen
|N| N 1 repeat the latest '/' or '?' N times in opposite direction
|O| O 2 begin a new line above the cursor and insert text, repeat N times
|P| ["x]P 2 put the text [from buffer x] before the cursor N times
|Q| Q switch to "Ex" mode
|R| R 2 enter replace mode: overtype existing characters, repeat the entered text N-1 times
|S| ["x]S 2 delete N lines [into buffer x] and start insert; synonym for "^cc" or "0cc", depending on autoindent
|T| T{char} 1 cursor till after Nth occurrence of {char} to the left
|U| U 2 undo all latest changes on one line
|V| V start linewise Visual mode
|W| W 1 cursor N WORDS forward
|X| ["x]X 2 delete N characters before the cursor [into buffer x]
|Y| ["x]Y yank N lines [into buffer x]; synonym for "yy"
|ZZ| ZZ store current file if modified, and exit
|ZQ| ZQ exit current file always
|[| [{char} square bracket command (see below) \ not used
|]| ]{char} square bracket command (see below)
|^| ^ 1 cursor to the first CHAR of the line
|_| _ 1 cursor to the first CHAR N - 1 lines lower
|`| `{a-zA-Z0-9}    1 cursor to the mark {a-zA-Z0-9}
|`| `> 1 cursor to the end of the highlighted area
|`[| `[ 1 cursor to the start of last operated text or start of putted text
|`]| `] 1 cursor to the end of last operated text or end of putted text
|``| `` 1 cursor to the position before latest jump
|a| a 2 append text after the cursor N times
|b| b 1 cursor N words backward
|c| ["x]c{motion}      2 delete Nmove text [into buffer x] and start insert
|cc| ["x]cc 2 delete N lines [into buffer x] and start insert
|d| ["x]d{motion}      2 delete Nmove text [into buffer x]
|dd| ["x]dd 2 delete N lines [into buffer x]
|e| e 1 cursor forward to the end of word N
|f| f{char} 1 cursor to Nth occurrence of {char} to the right
|g| g{char} extended commands, see below
|h| h 1 cursor N chars to the left
|i| i 2 insert text before the cursor N times
|j| j 1 cursor N lines downward
|k| k 1 cursor N lines upward
|l| l 1 cursor N chars to the right
|m| m{A-Za-z} set mark {A-Za-z} at cursor position
|n| n 1 repeat the latest '/' or '?' N times
|o| o 2 begin a new line below the cursor and insert text, repeat N times
|p| ["x]p 2 put the text [from register x] after the cursor N times
|q| q{0-9a-zA-Z"} record typed characters into named register {0-9a-zA-Z"} (upper case to append)
|q| q (while recording) stops recording
|r| r{char} 2 replace N chars with {char}
|s| ["x]s 2 (substitute) delete N characters [into buffer x] and start insert
|t| t{char} 1 cursor till before Nth occurrence of {char} to the right
|u| u 2 undo changes
|v| v start characterwise Visual mode
|w| w 1 cursor N words forward
|x| ["x]x 2 delete N characters under and after the cursor [into buffer x]
|y| ["x]y{motion} yank Nmove text [into buffer x]
|yy| ["x]yy yank N lines [into buffer x]
|z| z redraw, cursor line to top of window, cursor on first non-blank
|zN|   z{height} redraw, make window {height} lines high
|z.| z. redraw, cursor line to center of window, cursor on first non-blank
|z-| z- redraw, cursor line at bottom of window, cursor on first non-blank
|zb| zb redraw, cursor line at bottom of window
|ze| ze when 'wrap' off scroll horizontally to position the cursor at the end (right side) of the screen
|zh| zh when 'wrap' off scroll screen N characters to the right
|zl| zl when 'wrap' off scroll screen N characters to the left
|zs| zs when 'wrap' off scroll horizontally to position the cursor at the start (left side) of the screen
|zt| zt redraw, cursor line at top of window
|zz| zz redraw, cursor line at center of window
|z| z same as "zh"
|z|       z same as "zl"
|{| { 1 cursor N paragraphs backward
|bar| | 1 cursor to column N
|}| } 1 cursor N paragraphs forward
|~| ~ 2 'tildeop' off: switch case of N characters under cursor and move the cursor N characters to the right
|~| ~{motion} 'tildeop' on: switch case of Nmove text
||  1 same as "G"
||         1 same as "gg"
||         1 same as "b"
||   ":ta" to the keyword at the mouse click
||      1 same as "w"
||  same as "CTRL-T"
|| ["x]        2 same as "x"
|N|  {count} remove the last digit from {count}
||    1 same as "j"
||  1 same as "$"
||  same as 
||   open a help window
||    1 same as "0"
||         2 same as "i"
||    1 same as "h"
||        1 move cursor to the mouse click position
||  2 same as "P" at the mouse click position
||    same as CTRL-F
||        same as CTRL-B
||  1 same as "l"
||        start Visual mode, move cursor to the mouse click position
||         1 same as CTRL-F
||         1 same as "b"
||        same as "*" at the mouse click position
||      1 same as "w"
||  same as "#" at the mouse click position
||    1 same as CTRL-B
||      2 same as "u"
||  1 same as "k" ============================================================================== 2.1 Text objects *objects* These can be used after an operator or in Visual mode to select an object. tag command action in Normal mode        
------------------------------------------------------------------------------
|v_a(| a( same as ab
|v_a)| a) same as ab
|v_a| a> same as a<
|v_aB| aB "a Block" from "[{" to "]}" (with brackets)
|v_aW| aW "a WORD" (with white space)
|v_a[| a[ "a []" from '[' to the matching ']'
|v_a]| a] same as a[
|v_ab| ab "a block" from "[(" to "])" (with braces)
|v_ap| ap "a paragraph" (with white space)
|v_as| as "a sentence" (with white space)
|v_aw| aw "a word" (with white space)
|v_a{| a{ same as aB
|v_a}| a} same as aB
|v_i(| i( same as ib
|v_i)| i) same as ib
|v_i| i> same as i<
|v_iB| iB "inner Block" from "[{" and "]}"
|v_iW| iW "inner WORD"
|v_i[| i[ "inner []" from '[' to the matching ']'
|v_i]| i] same as i[
|v_ib| ib "inner block" from "[(" to "])"
|v_ip| ip "inner paragraph"
|v_is| is "inner sentence"
|v_iw| iw "inner word"
|v_i{| i{ same as iB
|v_i}| i} same as iB ============================================================================== 2.2 Window commands *CTRL-W* tag command action in Normal mode        
------------------------------------------------------------------------------
|CTRL-W_CTRL-B|        CTRL-W CTRL-B same as "CTRL-W b"
|CTRL-W_CTRL-C|        CTRL-W CTRL-C same as "CTRL-W c"
|CTRL-W_CTRL-D|      CTRL-W CTRL-D same as "CTRL-W d"
|CTRL-W_CTRL-F|        CTRL-W CTRL-F same as "CTRL-W f" CTRL-W CTRL-G same as "CTRL-W g .."
|CTRL-W_CTRL-I|      CTRL-W CTRL-I same as "CTRL-W i"
|CTRL-W_CTRL-J|        CTRL-W CTRL-J same as "CTRL-W j"
|CTRL-W_CTRL-K|        CTRL-W CTRL-K same as "CTRL-W k"
|CTRL-W_CTRL-N|        CTRL-W CTRL-N same as "CTRL-W n"
|CTRL-W_CTRL-O|        CTRL-W CTRL-O same as "CTRL-W o"
|CTRL-W_CTRL-P|        CTRL-W CTRL-P same as "CTRL-W p"
|CTRL-W_CTRL-Q|        CTRL-W CTRL-Q same as "CTRL-W q"
|CTRL-W_CTRL-R|        CTRL-W CTRL-R same as "CTRL-W r"
|CTRL-W_CTRL-S|        CTRL-W CTRL-S same as "CTRL-W s"
|CTRL-W_CTRL-T|        CTRL-W CTRL-T same as "CTRL-W t"
|CTRL-W_CTRL-W|        CTRL-W CTRL-W same as "CTRL-W w"
|CTRL-W_CTRL-X|        CTRL-W CTRL-X same as "CTRL-W x"
|CTRL-W_CTRL-Z|        CTRL-W CTRL-Z same as "CTRL-W z"
|CTRL-W_CTRL-]|        CTRL-W CTRL-] same as "CTRL-W ]"
|CTRL-W_CTRL-^|        CTRL-W CTRL-^ same as "CTRL-W ^"
|CTRL-W_CTRL-_|        CTRL-W CTRL-_ same as "CTRL-W _"
|CTRL-W_+|  CTRL-W + increase current window height N lines
|CTRL-W_-|  CTRL-W - decrease current window height N lines
|CTRL-W_=|  CTRL-W = make all windows the same height
|CTRL-W_R|  CTRL-W R rotate windows upwards N times
|CTRL-W_S|  CTRL-W S same as "CTRL-W s"
|CTRL-W_W|  CTRL-W W go to N previous window (wrap around)
|CTRL-W_]|  CTRL-W ] split window and jump to tag under cursor
|CTRL-W_^|  CTRL-W ^ split current window and edit alternate file N
|CTRL-W__|  CTRL-W _ set current window height to N (default: very high)
|CTRL-W_b|  CTRL-W b go to bottom window
|CTRL-W_c|  CTRL-W c close current window (like |:close|)
|CTRL-W_d|        CTRL-W d split window and jump to definition under the cursor
|CTRL-W_f|  CTRL-W f split window and edit file name under the cursor
|CTRL-W_g_CTRL-]| CTRL-W g CTRL-] split window and do |:tjump| to tag under cursor
|CTRL-W_g]|        CTRL-W g ] split window and do |:tselect| for tag under cursor
|CTRL-W_g}|        CTRL-W g } do a |:ptjump| to the tag under the cursor
|CTRL-W_i|        CTRL-W i split window and jump to declaration of identifier under the cursor
|CTRL-W_j|  CTRL-W j go to N next window (stop at last window)
|CTRL-W_k|  CTRL-W k go to N previous window (stop at first window)
|CTRL-W_n|  CTRL-W n open new window, N lines high
|CTRL-W_o|  CTRL-W o close all but current window (like |:only|)
|CTRL-W_p|  CTRL-W p go to previous (last accessed) window
|CTRL-W_q|  CTRL-W q quit current window (like |:quit|)
|CTRL-W_r|  CTRL-W r rotate windows downwards N times
|CTRL-W_s|  CTRL-W s split current window in two parts, new window N lines high
|CTRL-W_t|  CTRL-W t go to top window
|CTRL-W_w|  CTRL-W w go to N next window (wrap around)
|CTRL-W_x|  CTRL-W x exchange current window with window N (default: next window)
|CTRL-W_z|  CTRL-W z close preview window
|CTRL-W_}|  CTRL-W } show tag under cursor in preview window
|CTRL-W_|    CTRL-W  same as "CTRL-W j"
|CTRL-W_|        CTRL-W  same as "CTRL-W k" ============================================================================== 2.3 Square bracket commands *[* *]* tag char note action in Normal mode      
------------------------------------------------------------------------------
|[_CTRL-D|        [_CTRL-D jump to first #define found in current and included files matching the word under the cursor, start searching at beginning of current file
|[_CTRL-I|        [_CTRL-I jump to first line in current and included files that contains the word under the cursor, start searching at beginning of current file
|[#| [# 1 cursor to N previous unmatched #if, #else or #ifdef
|[(| [( 1 cursor N times back to unmatched '('
|[star| [* 1 same as "[/"
|[/| [/ 1 cursor to N previous start of a C comment
|[D| [D list all defines found in current and included files matching the word under the cursor, start searching at beginning of current file
|[I| [I list all lines found in current and included files that contain the word under the cursor, start searching at beginning of current file
|[P| [P 2 same as "[p"
|[[| [[ 1 cursor N sections backward
|[]| [] 1 cursor N SECTIONS backward
|[d| [d show first #define found in current and included files matching the word under the cursor, start searching at beginning of current file
|[f| [f same as "gf"
|[i| [i show first line found in current and included files that contains the word under the cursor, start searching at beginning of current file
|[p| [p 2 like "P", but adjust indent to current line
|[m| [m 1 cursor N times back to start of member function
|[{| [{ 1 cursor N times back to unmatched '{'
|[ [       2 same as "[p" |]_CTRL-D|  ]_CTRL-D jump to first #define found in current and included files matching the word under the cursor, start searching at cursor position
|]_CTRL-I|        ]_CTRL-I jump to first line in current and included files that contains the word under the cursor, start searching at cursor position
|]#| ]# 1 cursor to N next unmatched #endif or #else
|])| ]) 1 cursor N times forward to unmatched ')'
|]star| ]* 1 same as "]/"
|]/| ]/ 1 cursor to N next end of a C comment
|]D| ]D list all #defines found in current and included files matching the word under the cursor, start searching at cursor position
|]I| ]I list all lines found in current and included files that contain the word under the cursor, start searching at cursor position
|]P| ]P 2 same as "[p"
|][| ][ 1 cursor N SECTIONS forward
|]]| ]] 1 cursor N sections forward
|]d| ]d show first #define found in current and included files matching the word under the cursor, start searching at cursor position
|]f| ]f same as "gf"
|]i| ]i show first line found in current and included files that contains the word under the cursor, start searching at cursor position
|]p| ]p 2 like "p", but adjust indent to current line
|]m| ]m 1 cursor N times forward to end of member function
|]}| ]} 1 cursor N times forward to unmatched '}'
|] ]       2 same as "]p" ============================================================================== 2.4 Commands starting with 'g' *g* tag char note action in Normal mode   
------------------------------------------------------------------------------
|g_CTRL-A|  g_CTRL-A only when compiled with MEM_PROFILE defined: dump a memory profile
|g_CTRL-G|  g_CTRL-G show information about current cursor position
|g_CTRL-H|   g_CTRL-H start Select block mode
|g_CTRL-]|        g_CTRL-] |:tjump| to the tag under the cursor
|g#| g# 1 like "#", but without using "\"
|g$| g$ 1 when 'wrap' off go to rightmost character of the current line that is on the screen; when 'wrap' on go to the rightmost character of the current screen line
|gstar| g* 1 like "*", but without using "\"
|g0| g0 1 when 'wrap' off go to leftmost character of the current line that is on the screen; when 'wrap' on go to the leftmost character of the current screen line
|g?| g? 2 Rot13 encoding operator
|g?g?| g?? 2 Rot13 encode current line
|g?g?| g?g? 2 Rot13 encode current line
|gD| gD 1 goto definiton of word under the cursor in current file
|gE| gE 1 go backwards to the end of the previous WORD
|gH| gH start Select line mode
|gI| gI 2 like "I", but always start in column 1
|gJ| gJ 2 join lines without inserting space
|gP| ["x]gP 2 put the text [from register x] before the cursor N times, leave the cursor after it
|gR| gR 2 enter virtual replace mode
|gU| gU{motion}    2 make Nmove text uppercase
|gV| gV don't reselect the previous Visual area when executing a mapping or menu in Select mode
|g]| g] :tselect on the tag under the cursor
|g^| g^ 1 when 'wrap' off go to leftmost non-white character of the current line that is on the screen; when 'wrap' on go to the leftmost non-white character of the current screen line
|ga| ga print ascii value of character under the cursor
|gd| gd 1 goto definiton of word under the cursor in current function
|ge| ge 1 go backwards to the end of the previous word
|gf| gf start editing the file whose name is under the cursor
|gg| gg 1 cursor to line N, default first line
|gh| gh start Select mode
|gj| gj 1 like "j", but when 'wrap' on go N screen lines down
|gk| gk 1 like "k", but when 'wrap' on go N screen lines up
|gm| gm 1 go to character at middle of the screenline
|go| go 1 cursor to byte N in the buffer
|gp| ["x]gp 2 put the text [from register x] after the cursor N times, leave the cursor after it
|gq| gq{motion}    2 format Nmove text
|gr| gr{char}      2 virtual replace N chars with {char}
|gs| gs goto sleep for N seconds (default 1)
|gu| gu{motion}    2 make Nmove text lowercase
|gv| gv reselect the previous Visual area
|g~| g~{motion}    2 swap case for Nmove text
|g| g 1 same as "gj"
|g|   g 1 same as "g$"
|g| g 1 same as "g0"
|g|    g same as  g same as 
|g|  g same as 
|g| g 1 same as "gk" ============================================================================== 3. Visual mode *visual-index* Most commands in Visual mode are the same as in Normal mode. The ones listed
here are those that are different. tag command note action in Visual mode      
------------------------------------------------------------------------------
|v_CTRL-\_CTRL-N| CTRL-\ CTRL-N stop Visual mode
|v_CTRL-G|   CTRL-G toggle between Visual mode and Select mode
|v_|    2 Select mode: delete highlighted area
|v_CTRL-H|   CTRL-H 2 same as 
|v_CTRL-O|   CTRL-O switch from Select to Visual mode for one command
|v_CTRL-V|   CTRL-V make Visual mode blockwise or stop Visual mode
|v_CTRL-]|        CTRL-] jump to highlighted tag
|v_!| !{filter}   2 filter the highlighted lines through the external command {filter}
|v_:| : start a command-line with the highlighted lines as a range
|v_| > 2 shift the highlighted lines one 'shiftwidth' right
|v_b_A| A 2 block mode: append same text in all lines, after the highlighted area
|v_C| C 2 delete the highlighted lines and start insert
|v_D| D 2 delete the highlighted lines
|v_b_I| I 2 block mode: insert same text in all lines, before the highlighted area
|v_J| J 2 join the highlighted lines
|v_K| K run 'keywordprg' on the highlighted area
|v_O| O Move horizontally to other corner of area. Q does not start Ex mode
|v_R| R 2 delete the highlighted lines and start insert
|v_S| S 2 delete the highlighted lines and start insert
|v_U| U 2 make highlighted area uppercase
|v_V| V make Visual mode linewise or stop Visual mode
|v_X| X 2 delete the highlighted lines
|v_Y| Y yank the highlighted lines
|v_a(| a( same as ab
|v_a)| a) same as ab
|v_a| a> same as a<
|v_aB| aB extend highlighted area with a {} block
|v_aW| aW extend highlighted area with "a WORD"
|v_a[| a[ extend highlighted area with a [] block
|v_a]| a] same as a[
|v_ab| ab extend highlighted area with a () block
|v_ap| ap extend highlighted area with a paragraph
|v_as| as extend highlighted area with a sentence
|v_aw| aw extend highlighted area with "a word"
|v_a{| a{ same as aB
|v_a}| a} same as aB
|v_c| c 2 delete highlighted area and start insert
|v_d| d 2 delete highlighted area
|v_gJ| gJ 2 join the highlighted lines without inserting spaces
|v_gq| gq 2 format the highlighted lines
|v_gv| gv exchange current and previous highlighted area
|v_i(| i( same as ib
|v_i)| i) same as ib
|v_i| i> same as i<
|v_iB| iB extend highlighted area with inner {} block
|v_iW| iW extend highlighted area with "inner WORD"
|v_i[| i[ extend highlighted area with inner [] block
|v_i]| i] same as i[
|v_ib| ib extend highlighted area with inner () block
|v_ip| ip extend highlighted area with inner paragraph
|v_is| is extend highlighted area with inner sentence
|v_iw| iw extend highlighted area with "inner word"
|v_i{| i{ same as iB
|v_i}| i} same as iB
|v_o| o move cursor to other corner of area
|v_r| r 2 delete highlighted area and start insert
|v_s| s 2 delete highlighted area and start insert
|v_u| u 2 make highlighted area lowercase
|v_v| v make Visual mode characterwise or stop Visual mode
|v_x| x 2 delete the highlighted area
|v_y| y yank the highlighted area
|v_~| ~ 2 swap case for the highlighted area ============================================================================== 4. Command-line editing *ex-edit-index* Get to the command-line with the ':', '!', '/' or '?' commands.
Normal characters are inserted at the current cursor position.
"Completion" below refers to context-sensitive completion. It will complete
file names, tags, commands etc. as appropriate. CTRL-@ not used
|c_CTRL-A|  CTRL-A do completion on the pattern in front of the cursor and insert all matches
|c_CTRL-B|  CTRL-B cursor to begin of command-line
|c_CTRL-C|  CTRL-C same as 
|c_CTRL-D|  CTRL-D list completions that match the pattern in front of the cursor
|c_CTRL-E|  CTRL-E cursor to end of command-line CTRL-F not used CTRL-G not used
|c_|   delete the character in front of the cursor
|c_digraph|        {char1}  {char2} enter digraph when 'digraph' is on
|c_CTRL-H|  CTRL-H same as 
|c_|         if 'wildchar' is : Do completion on the pattern in front of the cursor
|c_|     same as CTRL-P
|c_wildchar|      'wildchar'    Do completion on the pattern in front of the cursor (default: )
|c_CTRL-I|  CTRL-I same as 
|c_|   same as 
|c_CTRL-J|  CTRL-J same as 
|c_CTRL-K|  CTRL-K {char1} {char2} enter digraph
|c_CTRL-L|  CTRL-L do completion on the pattern in front of the cursor and insert the longest common part
|c_|   execute entered command
|c_|  CTRL-M same as 
|c_CTRL-N|  CTRL-N after using 'wildchar' with multiple matches: go to next match, otherwise: same as  CTRL-O not used
|c_CTRL-P|  CTRL-P after using 'wildchar' with multiple matches: go to previous match, otherwise: same as 
|c_CTRL-Q|  CTRL-Q same as CTRL-V (used for terminal control flow)
|c_CTRL-R|  CTRL-R {0-9a-z"%#:=} insert the contents of a register CTRL-S (used for terminal control flow)
|c_CTRL-U|  CTRL-U remove all characters
|c_CTRL-V|  CTRL-V insert next non-digit literally, insert three digit decimal number as a single byte.
|c_CTRL-W|  CTRL-W delete the word in front of the cursor CTRL-X not used CTRL-Y not used CTRL-Z not used
|c_|         abandon command-line without executing it
|c_|        CTRL-[ same as 
|c_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode, abandon command-line CTRL-\ not_CTRL-N not used CTRL-] not used CTRL-^ not used
|c_CTRL-_|  CTRL-_ when 'allowrevins' set: change language (Hebrew, Farsi)
|c_|         delete the character under the cursor |c_|     cursor left
|c_|    cursor one word left
|c_|    cursor one word left
|c_|     cursor right
|c_|         cursor one word right
|c_|         cursor one word right
|c_|   recall previous command-line from history that matches pattern in front of the cursor
|c_|       recall previous command-line from history
|c_|       recall next command-line from history that matches pattern in front of the cursor
|c_|    recall next command-line from history
|c_|       cursor to start of command-line
|c_|         cursor to end of command-line
|c_|              same as 
|c_|    same as 
|c_|    toggle insert/overstrike mode
|c_|           cursor at mouse click ============================================================================== 5. EX commands *ex-cmd-index* This is a brief but complete listing of all the ":" commands, without
mentioning any arguments. The optional part of the command name is inside [].
The commands are sorted on the non-optional part of their name. |:!| :! filter lines or execute an external command
|:!!| :!! repeat last ":!" command
|:#| :# same as ":number"
|:&| :& repeat last ":substitute"
|:star| :* execute contents of a register
|:| :> shift lines one 'shiftwidth' right
|:@| :@ execute contents of a register
|:@@| :@@ repeat the previous ":@"
|:Next| :N[ext] go to previous file in the argument list
|:Print|      :P[rint]        print lines
|:X| :X ask for encryption key
|:append|     :a[ppend]       append text
|:abbreviate|        :ab[breviate]   enter abbreviation
|:abclear|      :abc[lear]      remove all abbreviations
|:all| :al[l] open a window for each file in the argument list
|:amenu|  :am[enu]        enter new menu item for all modes
|:anoremenu|  :an[oremenu]    enter a new menu for all modes that will not be remapped
|:args| :ar[gs] print the argument list
|:argument|        :argu[ment]     go to specific file in the argument list
|:ascii|      :as[cii]        print ascii value of character under the cursor
|:autocmd|  :au[tocmd]      enter or show autocommands
|:augroup|  :aug[roup]      select the autocommand group to use
|:aunmenu|      :aun[menu]      remove menu for all modes
|:buffer|    :b[uffer]       go to specific buffer in the buffer list
|:bNext|      :bN[ext]        go to next buffer in the buffer list
|:ball| :ba[ll] open a window for each file in the buffer list
|:badd| :bad[d] add file to the buffer list
|:bdelete|  :bd[elete]      delete specific files from the buffer list
|:behave|        :be[have]       set mouse and selection behavior
|:blast|      :bl[ast]        go to last file in the buffer list
|:bmodified|      :bm[odified]    go to next file in the buffer list that has been modified
|:bnext|      :bn[ext]        go to next file in the buffer list
|:bprevious|      :bp[revious]    go to previous file in the buffer list
|:brewind|  :br[ewind]      go to last file in the buffer list
|:break| :brea[k]        break out of while loop
|:browse|    :bro[wse]       use file selection dialog
|:buffers|  :buffers        list all files in the buffer list
|:bunload|  :bun[load]      unload a specific buffer
|:change|     :c[hange]       replace a line or series of lines
|:cNext|     :cN[ext]        go to previous error
|:cabbrev|      :ca[bbrev]      like ":abbreviate" but for command-line mode
|:cabclear|    :cabc[lear]     clear all abbreviations for command-line mode
|:call| :cal[l] call a function
|:cc| :cc go to specific error
|:cd| :cd change directory
|:center|     :ce[nter]       format lines at the center
|:cfile|     :cf[ile]        read the file with error messages
|:change|     :ch[ange]       delete and insert lines
|:chdir|      :chd[ir]        change directory
|:checkpath|    :che[ckpath]    list included files
|:clist|     :cl[ist]        list all errors
|:clast|     :cla[st]        go to the specified error, default last one
|:close|      :clo[se]        close current window
|:cmap| :cm[ap] like ":map" but for command-line mode
|:cmapclear|  :cmapc[lear]    clear all mappings for command-line mode
|:cmenu|  :cme[nu]        add menu for command-line mode
|:cnext|     :cn[ext]        go to next error
|:cnewer|   :cnew[er]       go to newer error list
|:cnfile|   :cnf[ile]       go to first error in next file
|:cnoremap|    :cno[remap]     like ":noremap" but for command-line mode
|:cnoreabbrev|      :cnorea[bbrev]  like ":noreabbrev" but for command-line mode
|:cnoremenu|  :cnoreme[nu]    like ":noremenu" but for command-line mode
|:copy| :co[py] copy lines
|:colder|   :col[der]       go to older error list
|:command|      :com[mand]      create user-defined command
|:comclear|    :comc[lear]     clear all user-defined commands
|:continue|   :con[tinue]     go back to :while
|:confirm|  :conf[irm]      prompt user when confirmation required
|:cprevious|     :cp[revious]    go to previous error
|:cquit|     :cq[uit]        quit Vim with an error code
|:crewind| :cr[ewind]      go to the specified error, default first one
|:cscope|  :cs[cope] execute cscope command
|:cstag|    :cst[ag]        use cscope to jump to a tag
|:cunmap|        :cu[nmap]       like ":unmap" but for command-line mode
|:cunabbrev|  :cuna[bbrev]    like ":unabbrev" but for command-line mode
|:cunmenu|      :cunme[nu]      remove menu for command-line mode
|:delete|     :d[elete]       delete lines
|:delcommand|        :delc[ommand]   delete user-defined command
|:delfunction|     :delf[unction]  delete a user function
|:display|   :di[splay]      display registers
|:digraphs|        :dig[raphs]     show or enter digraphs
|:djump|    :dj[ump]        jump to #define
|:dlist|    :dl[ist]        list #defines
|:doautocmd|      :do[autocmd]    apply autocommands to current buffer
|:doautoall|      :doautoa[ll]    apply autocommands for all loaded buffers
|:dsearch|        :ds[earch]      list one #define
|:dsplit|  :dsp[lit]       split window and jump to #define
|:edit| :e[dit] edit a file
|:echo| :ec[ho] echoes the result of expressions
|:echohl|       :echoh[l]       set highlighting for echo commands
|:echon| :echon same as :echo, but without 
|:else| :el[se] part of an :if command
|:elseif|       :elsei[f]       part of an :if command
|:emenu|  :em[enu]        execute a menu by name
|:endif| :en[dif]        end previous :if
|:endfunction|     :endf[unction]  end of a user function
|:endwhile|   :endw[hile]     end previous :while
|:ex| :ex same as ":edit"
|:execute|     :exe[cute]      execute result of expressions
|:exit| :exi[t] same as ":xit"
|:file| :f[ile] show or set the current file name
|:files|      :files list all files in the buffer list
|:filetype|        :filet[ype]     switch file type detection on/off
|:find| :fin[d] find file in 'path' and edit it
|:fixdel|    :fix[del]       set key code of 
|:function|   :fu[nction]     define a user function
|:global|     :g[lobal]       execute commands for matching lines
|:goto| :go[to] goto byte in the buffer
|:grep| :gr[ep] run 'grepprg' and jump to first match
|:gui| :gu[i] start the GUI
|:gvim| :gv[im] start the GUI
|:help| :h[elp] open a help window
|:helpfind|        :helpf[ind]     dialog to open a help window
|:highlight|       :hi[ghlight]    specify highlighting methods
|:hide| :hid[e] hide current buffer for a command
|:history|  :his[tory]      print a history list
|:insert|     :i[nsert]       insert text
|:iabbrev|      :ia[bbrev]      like ":abbrev" but for Insert mode
|:iabclear|    :iabc[lear]     like ":abclear" but for Insert mode
|:if| :if execute commands when condition met
|:ijump|    :ij[ump]        jump to definition of identifier
|:ilist|    :il[ist]        list lines where identifier matches
|:imap| :im[ap] like ":map" but for Insert mode
|:imapclear|  :imapc[lear]    like ":mapclear" but for Insert mode
|:imenu|  :ime[nu]        add menu for Insert mode
|:inoremap|    :ino[remap]     like ":noremap" but for Insert mode
|:inoreabbrev|      :inorea[bbrev]  like ":noreabbrev" but for Insert mode
|:inoremenu|  :inoreme[nu]    like ":noremenu" but for Insert mode
|:intro|     :int[ro]        print the introductory message
|:isearch|        :is[earch]      list one line where identifier matches
|:isplit|  :isp[lit]       split window and jump to definition of identifier
|:iunmap|        :iu[nmap]       like ":unmap" but for Insert mode
|:iunabbrev|  :iuna[bbrev]    like ":unabbrev" but for Insert mode
|:iunmenu|      :iunme[nu]      remove menu for Insert mode
|:join| :j[oin] join lines
|:jumps|       :ju[mps]        print the jump list
|:k| :k set a mark
|:list| :l[ist] print lines
|:last| :la[st] go to the last file in the argument list
|:left| :le[ft] left align lines
|:let| :let assign a value to a variable or option
|:ls| :ls list all buffers
|:move| :m[ove] move lines
|:mark| :ma[rk] set a mark
|:make| :mak[e] execute external command 'makeprg' and parse error messages
|:map| :map show or enter a mapping
|:mapclear|    :mapc[lear]     clear all mappings for Normal and Visual mode
|:marks|       :marks list all marks
|:menu| :me[nu] enter a new menu item
|:messages|        :mes[sages]     view previously displayed messages
|:mkexrc|    :mk[exrc]       write current mappings and settings to a file
|:mksession|      :mks[ession]    write session info to a file
|:mkvimrc|  :mkv[imrc]      write current mappings and settings to a file
|:mode| :mod[e] show or change the screen mode
|:next| :n[ext] go to next file in the argument list
|:new| :new create a new empty window
|:nmap| :nm[ap] like ":map" but for Normal mode
|:nmapclear|  :nmapc[lear]    clear all mappings for Normal mode
|:nmenu|  :nme[nu]        add menu for Normal mode
|:nnoremap|    :nn[oremap]     like ":noremap" but for Normal mode
|:nnoremenu|  :nnoreme[nu]    like ":noremenu" but for Normal mode
|:noremap|      :no[remap]      enter a mapping that will not be remapped
|:nohlsearch|    :noh[lsearch]   suspend 'hlsearch' highlighting
|:noreabbrev|        :norea[bbrev]   enter an abbreviation that will not be remapped
|:noremenu|    :noreme[nu]     enter a menu that will not be remapped
|:normal|    :norm[al]       execute Normal mode commands
|:number|    :nu[mber]       print lines with line number
|:nunmap|        :nun[map]       like ":unmap" but for Normal mode
|:nunmenu|      :nunme[nu]      remove menu for Normal mode
|:open| :o[pen] start open mode (not implemented)
|:omap| :om[ap] like ":map" but for Operator-pending mode
|:omapclear|  :omapc[lear]    remove all mappings for Operator-pending mode
|:omenu|  :ome[nu]        add menu for Operator-pending mode
|:only| :on[ly] close all windows except current one
|:onoremap|    :ono[remap]     like ":noremap" but for Operator-pending mode
|:onoremenu|  :onoreme[nu]    like ":noremenu" but for Operator-pending mode
|:options|  :opt[ions]      open the options-window
|:ounmap|        :ou[nmap]       like ":unmap" but for Operator-pending mode
|:ounmenu|      :ounme[nu]      remove menu for Operator-pending mode
|:print|      :p[rint]        print lines
|:pclose|    :pc[lose]       close preview window
|:perl| :pe[rl] execute Perl command
|:perldo|    :perld[o]       execute Perl command for each line
|:pop| :po[p] jump to older entry in tag stack
|:ppop| :pp[op] ":pop" in preview window
|:preserve|        :pre[serve]     write all text to swap file
|:previous|        :prev[ious]     go to previous file in argument list
|:promptfind|     :pro[mptfind]   Search dialog
|:promptrepl|     :promptr[epl]   Search/Replace dialog
|:ptag| :pt[ag] show tag in preview window
|:ptNext|  :ptN[ext]       |:tNext| in preview window
|:ptjump|  :ptj[ump]       |:tjump| and show tag in preview window
|:ptlast|  :ptl[ast]       |:tlast| in preview window
|:ptnext|  :ptn[ext]       |:tnext| in preview window
|:ptprevious|  :ptp[revious]   |:tprevious| in preview window
|:ptrewind|      :ptr[ewind]     |:trewind| in preview window
|:ptselect|      :pts[elect]     |:tselect| and show tag in preview window
|:put| :pu[t] insert contents of register in the text
|:pwd| :pw[d] print current directory
|:python|  :py[thon]       execute Python command
|:pyfile|  :pyf[ile]       execute Python script file
|:quit| :q[uit] quit current window or Vim
|:qall| :qa[ll] quit Vim
|:read| :r[ead] read file into the text
|:recover|  :rec[over]      recover a file from a swap file
|:redo| :red[o] redo one undone change
|:redir|      :redi[r]        redirect messages to a file or register
|:registers|       :reg[isters]    display the contents of registers
|:resize|    :res[ize]       change current window height
|:retab|       :ret[ab]        change tab size
|:return|       :retu[rn]       return from a user function
|:rewind|    :rew[ind]       go to the first file in the argument list
|:right|       :ri[ght]        right align text
|:rviminfo|       :rv[iminfo]     read from viminfo file
|:substitute|     :s[ubstitute]   find and replace text
|:sNext|      :sN[ext]        split window and go to previous file in argument list
|:sargument|      :sa[rgument]    split window and go to specific file in argument list
|:sall| :sal[l] open a window for each file in argument list
|:sbuffer|  :sb[uffer]      split window and go to specific file in the buffer list
|:sbNext|    :sbN[ext]       split window and go to previous file in the buffer list
|:sball|      :sba[ll]        open a window for each file in the buffer list
|:sblast|    :sbl[ast]       split window and go to last file in buffer list
|:sbmodified|    :sbm[odified]   split window and go to modified file in the buffer list
|:sbnext|    :sbn[ext]       split window and go to next file in the buffer list
|:sbprevious|    :sbp[revious]   split window and go to previous file in the buffer list
|:sbrewind|        :sbr[ewind]     split window and go to first file in the buffer list
|:set| :se[t] show or set options
|:sfind|      :sf[ind]        split current window and edit file in 'path'
|:shell|      :sh[ell]        escape to a shell
|:simalt|    :si[malt]       Win32 GUI: simulate Windows ALT key
|:sleep|      :sl[eep]        do nothing for a few seconds
|:slast|      :sla[st]        split window and go to last file in the argument list
|:smagic|     :sm[agic]       :substitute with 'magic'
|:snext|      :sn[ext]        split window and go to next file in the argument list
|:sniff|     :sni[ff]        send request to sniff
|:snomagic| :sno[magic]     :substitute with 'nomagic'
|:source|     :so[urce]       read Vim or Ex commands from a file
|:split|      :sp[lit]        split current window
|:sprevious|      :spr[evious]    split window and go to previous file in the argument list
|:srewind|  :sr[ewind]      split window and go to first file in the argument list
|:stop| :st[op] suspend the editor or escape to a shell
|:stag| :sta[g] split window and jump to a tag
|:startinsert|   :star[tinsert]  start Insert mode
|:stjump|  :stj[ump]       do ":tjump" and split window
|:stselect|      :sts[elect]     do ":tselect" and split window
|:sunhide|  :sun[hide]      same as ":unhide"
|:suspend| :sus[pend]      same as ":stop"
|:sview|      :sv[iew]        split window and edit file read-only
|:swapname|        :sw[apname]     show the name of the current swap file
|:syntax|     :sy[ntax]       syntax highlighting
|:syncbind| :sync[bind]     sync scroll binding
|:t| :t same as ":copy"
|:tNext|    :tN[ext]        jump to previous matching tag
|:tag| :ta[g] jump to tag
|:tags| :tags show the contents of the tag stack
|:tcl| :tcl execute Tcl command
|:tcldo|       :tcld[o]        execute Tcl command for each line
|:tclfile|   :tclf[ile]      execute Tcl script file
|:tearoff|  :te[aroff]      tear-off a menu
|:tjump|    :tj[ump]        like ":tselect", but jump directly when there is only one match
|:tlast|    :tl[ast]        jump to last matching tag
|:tmenu|  :tm[enu]        define menu tooltip
|:tnext|    :tn[ext]        jump to next matching tag
|:tprevious|    :tp[revious]    jump to previous matching tag
|:trewind|        :tr[ewind]      jump to first matching tag
|:tselect|        :ts[elect]      list matching tags and select one
|:tunmenu|      :tu[nmenu]      remove menu tooltip
|:undo| :u[ndo] undo last change(s)
|:unabbreviate|    :una[bbreviate] remove abbreviation
|:unhide|    :unh[ide]       open a window for each loaded file in the buffer list
|:unlet| :unl[et]        delete variable
|:unmap|  :unm[ap]        remove mapping
|:unmenu|        :unme[nu]       remove menu
|:update|    :up[date]       write buffer if modified
|:vglobal|   :v[global]      execute commands for not matching lines
|:version|  :ve[rsion]      print version number and other info
|:visual|    :vi[sual]       same as ":edit", but turns off "Ex" mode
|:view| :vie[w] edit a file read-only
|:vmap| :vm[ap] like ":map" but for Visual mode
|:vmapclear|  :vmapc[lear]    remove all mappings for Visual mode
|:vmenu|  :vme[nu]        add menu for Visual mode
|:vnoremap|    :vn[oremap]     like ":noremap" but for Visual mode
|:vnoremenu|  :vnoreme[nu]    like ":noremenu" but for Visual mode
|:vunmap|        :vu[nmap]       like ":unmap" but for Visual mode
|:vunmenu|      :vunme[nu]      remove menu for Visual mode
|:write|      :w[rite]        write to a file
|:wNext|      :wN[ext]        write to a file and go to previous file in argument list
|:wall| :wa[ll] write all (changed) buffers
|:while| :wh[ile]        execute loop for as long as condition met
|:winsize|      :wi[nsize]      get or set window size (obsolete)
|:winpos|        :winp[os]       get or set window position
|:wnext|      :wn[ext]        write to a file and go to next file in argument list
|:wprevious|      :wp[revious]    write to a file and go to previous file in argument list
|:wq| :wq write to a file and quit window or Vim
|:wqall|      :wqa[ll]        write all changed buffers and quit Vim
|:wviminfo|       :wv[iminfo]     write to viminfo file
|:xit| :x[it] write if buffer changed and quit window or Vim
|:xall| :xa[ll] same as ":wqall"
|:yank| :y[ank] yank lines into a register
|:z| :z print some lines
|:~| :~ repeat last ":substitute" top - back to help