help.txt - html version
help.txt - html version
*help.txt* For Vim version 5.3. Last modification: 1998 Aug 23
VIM - main help file
k
Move around: Use the cursor keys, or "h" to go left, h l
"j" to go down, "k" to go up, "l" to go right. j
Close this window: Use ":q<Enter>".
Get out of Vim: Use ":qa!<Enter>" (careful, all changes are lost!).
Jump to a subject: Position the cursor on a tag between |bars| and hit CTRL-].
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
Double-click the left mouse button on a tag between |bars|.
jump back: Type CTRL-T or CTRL-O.
Get specific help: It is possible to go directly to whatever you want help
on, by giving an argument to the ":help" command |:help|.
It is possible to further specify the context:
WHAT PREPEND EXAMPLE
Normal mode commands (nothing) :help x
Visual mode commands v_ :help v_u
Insert mode commands i_ :help i_<Esc>
command-line commands : :help :quit
command-line editing c_ :help c_<Del>
Vim command arguments - :help -r
options '' :help 'textwidth'
VIM stands for Vi IMproved. Most of VIM was made by Bram Moolenaar, but only
through the help of a lot of people. See |credits|.
tag subject tag subject
*quickref*
|X_lr| motion: Left-right |X_km| Key mapping
|X_ud| motion: Up-down |X_ab| Abbreviations
|X_tm| motion: Text object |X_op| Options
|X_pa| motion: Pattern searches |X_ur| Undo/Redo commands
|X_ma| motion: Marks |X_et| External commands
|X_vm| motion: Various |X_qf| Quickfix commands
|X_ta| motion: Using tags |X_vc| Various commands
|X_sc| Scrolling |X_ce| Ex: Command-line editing
|X_in| insert: Inserting text |X_ra| Ex: Ranges
|X_ai| insert: Keys |X_ex| Ex: Special characters
|X_ss| insert: Special keys |X_ed| Editing a file
|X_di| insert: Digraphs |X_fl| Using the argument list
|X_si| insert: Special inserts |X_wq| Writing and quitting
|X_de| change: Deleting text |X_st| Starting VIM
|X_cm| change: Copying and moving |X_ac| Automatic commands
|X_ch| change: Changing text |X_wi| Multi-window functions
|X_co| change: Complex |X_bu| Buffer list functions
|X_vi| Visual mode |X_sy| Syntax highlighting
|X_to| Text objects |X_gu| GUI commands
|X_re| Repeating commands
|howto.txt| how to do the most common things
|tutor| 30 minutes training course for beginners
|copying| About copying Vim and Uganda
|www| Vim on the World Wide Web
|bugs| Where to send bug reports
list of documentation files: *doc-file-list*
|intro.txt| introduction to Vim
|help.txt| overview and quick reference (this file)
|index.txt| alphabetical index for each mode
|quotes.txt| remarks from users of Vim
|todo.txt| known problems and desired extensions
|autocmd.txt| automatically executing commands on an event
|change.txt| delete and replace text
|cmdline.txt| Command-line editing
|digraph.txt| list of available digraphs
|editing.txt| editing and writing files
|eval.txt| expression evaluation, conditional commands
|farsi.txt| Farsi editing
|gui.txt| Graphical User Interface
|gui_w32.txt| Win32 GUI
|gui_x11.txt| X11 GUI
|insert.txt| Insert and Replace mode
|map.txt| key mapping and abbreviations
|message.txt| (error) messages and explanations
|motion.txt| commands for moving around
|options.txt| options
|pattern.txt| regexp patterns and search commands
|if_cscope.txt| using cscope with Vim
|if_perl.txt| Perl interface
|if_python.txt| Python interface
|if_ole.txt| OLE automation interface for Win32
|if_tcl.txt| Tcl interface
|quickfix.txt| quick edit-compile-fix cycle commands
|recover.txt| recovering from a crash
|repeat.txt| repeating commands
|rightleft.txt| right-to-left editing
|scroll.txt| scrolling around
|starting.txt| starting Vim, command-line arguments, initialisation
|syntax.txt| syntax highlighting
|tagsearch.txt| tags and special searches
|term.txt| terminal and mouse
|tips.txt| tips on using Vim
|uganda.txt| Vim distribution
|undo.txt| Undo and Redo
|various.txt| various commands
|version4.txt| differences between Vim version 3.0 and 4.x
|version5.txt| differences between Vim version 4.6 and 5.x
|vi_diff.txt| main differences between Vim and Vi
|visual.txt| Visual mode
|windows.txt| commands for using multiple windows and buffers
|help-tags| all the tags you can jump to (index of tags)
remarks about specific systems: *sys-file-list*
|os_amiga.txt| Amiga
|os_beos.txt| BeOS/BeBox
|os_dos.txt| MS-DOS and MS-Windows NT/95 common items
|os_mac.txt| Macintosh
|os_mint.txt| Atari MiNT
|os_msdos.txt| MS-DOS (plain DOS and DOS box under Windows)
|os_os2.txt| OS/2
|os_riscos.txt| RISC OS
|os_unix.txt| Unix
|os_vms.txt| VMS
|os_win32.txt| MS-Windows NT/95
N is used to indicate an optional count that can be given before the command.
*X_lr* Left-right motions
|h| N h left (also: CTRL-H, <BS>, or <Left> key)
|l| N l right (also: <Space> or <Right> key)
|0| 0 to first character in the line (also: <Home> key)
|^| ^ to first non-blank character in the line
|$| N $ to the last character in the line (N-1 lines lower)
(also: <End> key)
|g0| N g0 to first character in screen line (differs from "0"
when lines wrap)
|g^| N g^ to first non-blank character in screen line (differs
from "^" when lines wrap)
|g$| N g$ to last character in screen line (differs from "$"
when lines wrap)
|bar| N | to column N (default: 1)
|f| N f<char> to the Nth occurrence of <char> to the right
|F| N F<char> to the Nth occurrence of <char> to the left
|t| N t<char> till before the Nth occurrence of <char> to the right
|T| N T<char> till before the Nth occurrence of <char> to the left
|;| N ; repeat the last "f", "F", "t", or "T" N times
|,| N , repeat the last "f", "F", "t", or "T" N times in
opposite direction
*X_ud* Up-down motions
|k| N k up N lines (also: CTRL-P and <Up>)
|j| N j down N lines (also: CTRL-J, CTRL-N, <NL>, and <Down>)
|-| N - up N lines, on the first non-blank character
|+| N + down N lines, on the first non-blank character (also:
CTRL-M and <CR>)
|_| N _ down N-1 lines, on the first non-blank character
|G| N G goto line N (default: last line), on the first
non-blank character
|gg| N gg goto line N (default: first line), on the first
non-blank character
|N%| N % goto line N percentage down in the file. N must be
given, otherwise it is the |%| command.
|gk| N gk up N screen lines (differs from "k" when line wraps)
|gj| N gj down N screen lines (differs from "j" when line wraps)
*X_tm* Text object motions
|w| N w N words forward
|W| N W N blank-separated WORDS forward
|e| N e forward to the end of the Nth word
|E| N E forward to the end of the Nth blank-separated WORD
|b| N b N words backward
|B| N B N blank-separated WORDS backward
|ge| N ge backward to the end of the Nth word
|gE| N gE backward to the end of the Nth blank-separated WORD
|)| N ) N sentences forward
|(| N ( N sentences backward
|}| N } N paragraphs forward
|{| N { N paragraphs backward
|]]| N ]] N sections forward, at start of section
|[[| N [[ N sections backward, at start of section
|][| N ][ N sections forward, at end of section
|[]| N [] N sections backward, at end of section
|[(| N [( N times back to unclosed '('
|[{| N [{ N times back to unclosed '{'
|])| N ]) N times forward to unclosed ')'
|]}| N ]} N times forward to unclosed '}'
|[#| N [# N times back to unclosed "#if" or "#else"
|]#| N ]# N times forward to unclosed "#else" or "#endif"
|[star| N [* N times back to start of comment "/*"
|]star| N ]* N times forward to end of comment "*/"
*X_pa* Pattern searches
|/| N /{pattern}[/[offset]]<CR>
search forward for the Nth occurrence of {pattern}
|?| N ?{pattern}[?[offset]]<CR>
search backward for the Nth occurrence of {pattern}
|/<CR>| N /<CR> repeat last search, in the forward direction
|?<CR>| N ?<CR> repeat last search, in the backward direction
|n| N n repeat last search
|N| N N repeat last search, in opposite direction
|star| N * search forward for the identifier under the cursor
|#| N # search backward for the identifier under the cursor
|gstar| N g* like "*", but also find partial matches
|g#| N g# like "#", but also find partial matches
|gd| gd goto local declaration of identifier under the cursor
|gD| gD goto global declaration of identifier under the cursor
|pattern| Special characters in search patterns
meaning magic nomagic
matches any single character . \.
matches start of line ^ ^
matches <EOL> $ $
matches start of word \< \<
matches end of word \> \>
matches a single char from the range [a-z] \[a-z]
matches a single char not in the range [^a-z] \[^a-z]
matches an identifier char \i \i
idem but excluding digits \I \I
matches a keyword character \k \k
idem but excluding digits \K \K
matches a file name character \f \f
idem but excluding digits \F \F
matches a printable character \p \p
idem but excluding digits \P \P
matches a white space character \s \s
matches a non-white space character \S \S
matches <Esc> \e \e
matches <Tab> \t \t
matches <CR> \r \r
matches <BS> \b \b
matches 0 or more of the preceding atom * \*
matches 1 or more of the preceding atom \+ \+
matches 0 or 1 of the preceding atom \= \=
separates two branches \| \|
group a pattern into an atom \(\) \(\)
|search-offset| Offsets allowed after search command
[num] [num] lines downwards, in column 1
+[num] [num] lines downwards, in column 1
-[num] [num] lines upwards, in column 1
e[+num] [num] characters to the right of the end of the match
e[-num] [num] characters to the left of the end of the match
s[+num] [num] characters to the right of the start of the match
s[-num] [num] characters to the left of the start of the match
b[+num] [num] characters to the right of the start (begin) of the match
b[-num] [num] characters to the left of the start (begin) of the match
;{search command} execute {search command} next
*X_ma* Marks and motions
|m| m<a-zA-Z> mark current position with mark <a-zA-Z>
|`a| `<a-z> go to mark <a-z> within current file
|`A| `<A-Z> go to mark <A-Z> in any file
|`0| `<0-9> go to the position where Vim was last exited
|``| `` go to the position before the last jump
|`quote| `" go to the position when last editing this file
|`[| `[ go to the start of the previously operated or put text
|`]| `] go to the end of the previously operated or put text
|`<| `< go to the start of the (previous) Visual area
|`>| `> go to the end of the (previous) Visual area
|'| '<a-zA-Z0-9[]'"'<>>
same as `, but on the first non-blank in the line
|:marks| :marks print the active marks
|CTRL-O| N CTRL-O go to Nth older position in jump list
|CTRL-I| N CTRL-I go to Nth newer position in jump list
|:ju| :ju[mps] print the jump list
*X_vm* Various motions
|%| % find the next brace, bracket, comment, or "#if"/
"#else"/"#endif" in this line and go to its match
|H| N H go to the Nth line in the window, on the first
non-blank
|M| M go to the middle line in the window, on the first
non-blank
|L| N L go to the Nth line from the bottom, on the first
non-blank
*X_ta* Using tags
|:ta| :ta[g][!] {tag} Jump to tag {tag}
|:ta| :[count]ta[g][!] Jump to [count]'th newer tag in tag list
|CTRL-]| CTRL-] Jump to the tag under cursor, unless changes
have been made
|CTRL-T| N CTRL-T Jump back from Nth older tag in tag list
|:po| :[count]po[p][!] Jump back from [count]'th older tag in tag list
|:tags| :tags Print tag list
|:ts| :ts[elect][!] [tag] List matching tags and select one to jump to
|:tnext| :[count]tn[ext][!] Jump to [count]'th next matching tag
|:tp| :[count]tp[revious][!] Jump to [count]'th previous matching tag
|:tr| :[count]tr[ewind][!] Jump to [count]'th matching tag
|:tl| :tl[ast][!] Jump to last matching tag
*X_sc* Scrolling
|CTRL-E| N CTRL-E window N lines downwards (default: 1)
|CTRL-D| N CTRL-D window N lines Downwards (default: 1/2 window)
|CTRL-F| N CTRL-F window N pages Forwards (downwards)
|CTRL-Y| N CTRL-Y window N lines upwards (default: 1)
|CTRL-U| N CTRL-U window N lines Upwards (default: 1/2 window)
|CTRL-B| N CTRL-B window N pages Backwards (upwards)
|z<CR>| z<CR> or zt redraw, current line at top of window
|z.| z. or zz redraw, current line at center of window
|z-| z- or zb redraw, current line at bottom of window
|zh| N zh scroll screen N characters to the right
|zl| N zl scroll screen N characters to the left
*X_in* Inserting text
|a| N a append text after the cursor (N times)
|A| N A append text at the end of the line (N times)
|i| N i insert text before the cursor (N times) (also: <Insert>)
|I| N I insert text before the first non-blank in the line (N times)
|gI| N gI insert text in column 1 (N times)
|o| N o open a new line below the current line, append text (N times)
|O| N O open a new line above the current line, append text (N times)
*X_ai* Keys in Insert mode
char action in Insert mode
|i_<Esc>| <Esc> end Insert mode, back to Normal mode
|i_CTRL-C| CTRL-C like <Esc>, but do not do an abbreviation
|i_CTRL-A| CTRL-A insert previously inserted text
|i_CTRL-@| CTRL-@ insert previously inserted text and stop
insert
|i_CTRL-R| CTRL-R <0-9a-z%#:.-="> insert the contents of a register
|i_<NL>| <NL> or <CR> or CTRL-M or CTRL-J
begin new line
|i_CTRL-E| CTRL-E insert the character from below the cursor
|i_CTRL-Y| CTRL-Y insert the character from above the cursor
|i_CTRL-V| CTRL-V <char>.. insert character literally, or enter decimal
byte value
|i_CTRL-N| CTRL-N insert next match of identifier before the
cursor
|i_CTRL-P| CTRL-P insert previous match of identifier before
the cursor
|i_CTRL-X| CTRL-X ... complete the word before the cursor in
various ways
|i_<BS>| <BS> or CTRL-H delete the character before the cursor
|i_<Del>| <Del> delete the character under the cursor
|i_CTRL-W| CTRL-W delete word before the cursor
|i_CTRL-U| CTRL-U delete all entered characters in the current
line
|i_CTRL-T| CTRL-T insert one shiftwidth of indent in front of
the current line
|i_CTRL-D| CTRL-D delete one shiftwidth of indent in front of
the current line
|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 indent in next line
|i_CTRL-K| CTRL-K {char1} {char2}
enter digraph (See |X_di|)
|i_digraph| {char1} <BS> {char2}
enter digraph if 'digraph' option set
*X_ss* Special keys in Insert mode
|i_<Up>| cursor keys move cursor left/right/up/down
|i_<S-Left>| shift-left/right one word left/right
|i_<S-Up>| shift-up/down one screenful backward/forward
|i_CTRL-O| CTRL-O {command} execute {command}
|i_<End>| <End> cursor after last character in the line
|i_<Home>| <Home> cursor to first character in the line
*X_di* Digraphs
|:dig| :dig[raphs] show current list of digraphs
|:dig| :dig[raphs] {char1}{char2} {number} ...
add digraph(s) to the list
*X_si* Special inserts
|:r| :r [file] insert the contents of [file] below the cursor
|:r!| :r! {command} insert the standard output of {command} below the
cursor
*X_de* Deleting text
|x| N x delete N characters under and after the cursor
|<Del>| N <Del> delete N characters under and after the cursor
|X| N X delete N characters before the cursor
|d| N d{motion} delete the text that is moved over with {motion}
|v_d| {visual}d delete the highlighted text
|dd| N dd delete N lines
|D| N D delete to the end of the line (and N-1 more lines)
|J| N J join N-1 lines (delete <EOL>s)
|v_J| {visual}J join the highlighted lines
|gJ| N gJ like "J", but without inserting spaces
|v_gJ| {visual}gJ like "{visual}J", but without inserting spaces
|:d| :[range]d [x] delete [range] lines [into register x]
*X_cm* Copying and moving text
|quote| "<char> use register <char> for the next delete, yank, or put
|:reg| :reg show the contents of all registers
|:reg| :reg {arg} show the contents of registers mentioned in {arg}
|y| N y{motion} yank the text moved over with {motion} into a register
|v_y| {visual}y yank the highlighted text into a register
|yy| N yy yank N lines into a register
|Y| N Y yank N lines into a register
|p| N p put a register after the cursor position (N times)
|P| N P put a register before the cursor position (N times)
|]p| N ]p like p, but adjust indent to current line
|[p| N [p like P, but adjust indent to current line
|gp| N gp like p, but leave cursor after the new text
|gP| N gP like P, but leave cursor after the new text
*X_ch* Changing text
|R| N R enter Replace mode (repeat the entered text N times)
|c| N c{motion} change the text that is moved over with {motion}
|v_c| {visual}c change the highlighted text
|cc| N cc change N lines
|S| N S change N lines
|C| N C change to the end of the line (and N-1 more lines)
|s| N s change N characters
|r| N r<char> replace N characters with <char>
|~| N ~ switch case for N characters and advance cursor
|v_~| {visual}~ switch case for highlighted text
|v_u| {visual}u make highlighted text lowercase
|v_U| {visual}U make highlighted text uppercase
|g~| g~{motion} switch case for the text that is moved over with
{motion}
|gu| gu{motion} make the text that is moved over with {motion}
lowercase
|gU| gU{motion} make the text that is moved over with {motion}
uppercase
|CTRL-A| N CTRL-A add N to the number at or after the cursor
|CTRL-X| N CTRL-X subtract N from the number at or after the cursor
|<| N <{motion} move the lines that are moved over with {motion} one
shiftwidth left
|<<| N << move N lines one shiftwidth left
|>| N >{motion} move the lines that are moved over with {motion} one
shiftwidth right
|>>| N >> move N lines one shiftwidth right
|gq| N gq{motion} format the lines that are moved over with {motion} to
'textwidth' length
|:ce| :[range]ce[nter] [width]
center the lines in [range]
|:le| :[range]le[ft] [indent]
left-align the lines in [range] [with indent]
|:ri| :[range]ri[ght] [width]
right-align the lines in [range]
*X_co* Complex changes
|!| N !{motion}{command}<CR>
filter the lines that are moved over through {command}
|!!| N !!{command}<CR>
filter N lines through {command}
|v_!| {visual}!{command}<CR>
filter the highlighted lines through {command}
|:range!| :[range]! {command}<CR>
filter [range] lines through {command}
|=| N ={motion}
filter the lines that are moved over through "indent"
|==| N == filter N lines through "indent"
|v_=| {visual}=
filter the highlighted lines through "indent"
|:s| :[range]s[ubstitute]/{pattern}/{string}/[g][c]
substitute {pattern} by {string} in [range] lines;
with [g], replace all occurrences of {pattern};
with [c], confirm each replacement
|:s| :[range]s[ubstitute] [g][c]
repeat previous ":s" with new range and options
|&| & Repeat previous ":s" on current line without options
|:ret| :[range]ret[ab][!] [tabstop]
set 'tabstop' to new value and adjust white space
accordingly
*X_vi* Visual mode
|v| v start highlighting characters } move cursor and use
|V| V start highlighting linewise } operator to affect
|CTRL-V| CTRL-V start highlighting blockwise } highlighted text
|v_o| o exchange cursor position with start of highlighting
|gv| gv start highlighting on previous visual area
|v_v| v highlight characters or stop highlighting
|v_V| V highlight linewise or stop highlighting
|v_CTRL-V| CTRL-V highlight blockwise or stop highlighting
*X_to* Text objects (only in Visual mode or after an operator)
|v_aw| N aw Select "a word"
|v_iw| N iw Select "inner word"
|v_aW| N aW Select "a WORD"
|v_iW| N iW Select "inner WORD"
|v_as| N as Select "a sentence"
|v_is| N is Select "inner sentence"
|v_ap| N ap Select "a paragraph"
|v_ip| N ip Select "inner paragraph"
|v_ab| N ab Select "a block" (from "[(" to "])")
|v_ib| N ib Select "inner block" (from "[(" to "])")
|v_aB| N aB Select "a Block" (from "[{" to "]}")
|v_iB| N iB Select "inner Block" (from "[{" to "]}")
*X_re* Repeating commands
|.| N . repeat last change (with count replaced with N)
|q| q<a-z> record typed characters into register <a-z>
|q| q<A-Z> record typed characters, appended to register <a-z>
|q| q stop recording
|@| N @<a-z> execute the contents of register <a-z> (N times)
|@@| N @@ repeat previous @<a-z> (N times)
|:@| :@<a-z> execute the contents of register <a-z> as an Ex
command
|:@@| :@@ repeat previous :@<a-z>
|:g| :[range]g[lobal]/{pattern}/[cmd]
Execute Ex command [cmd] (default: ":p") on the lines
within [range] where {pattern} matches.
|:g| :[range]g[lobal]!/{pattern}/[cmd]
Execute Ex command [cmd] (default: ":p") on the lines
within [range] where {pattern} does NOT match.
|:so| :so[urce] {file}
Read Ex commands from {file}.
|:so| :so[urce]! {file}
Read Vim commands from {file}.
|:sl| :sl[eep] [N]
don't do anything for N seconds
|gs| N gs Goto Sleep for N seconds
*X_km* Key mapping
|:map| :ma[p] {lhs} {rhs} Map {lhs} to {rhs} in Normal and Visual
mode.
|:map!| :ma[p]! {lhs} {rhs} Map {lhs} to {rhs} in Insert and Command-line
mode.
|:noremap| :no[remap][!] {lhs} {rhs}
Same as ":map", no remapping for this {rhs}
|:unmap| :unm[ap] {lhs} Remove the mapping of {lhs} for Normal and
Visual mode.
|:unmap!| :unm[ap]! {lhs} Remove the mapping of {lhs} for Insert and
Command-line mode.
|:map_l| :ma[p] [lhs] List mappings (starting with [lhs]) for
Normal and Visual mode.
|:map_l!| :ma[p]! [lhs] List mappings (starting with [lhs]) for
Insert and Command-line mode.
|:cmap| :cmap/:cunmap/:cnoremap
like ":map!"/":unmap!"/":noremap!" but for
Command-line mode only
|:imap| :imap/:iunmap/:inoremap
like ":map!"/":unmap!"/":noremap!" but for
Insert mode only
|:nmap| :nmap/:nunmap/:nnoremap
like ":map"/":unmap"/":noremap" but for
Normal mode only
|:vmap| :vmap/:vunmap/:vnoremap
like ":map"/":unmap"/":noremap" but for
Visual mode only
|:omap| :omap/:ounmap/:onoremap
like ":map"/":unmap"/":noremap" but only for
when an operator is pending
|:mkexrc| :mk[exrc][!] [file] write current mappings, abbreviations, and
settings to [file] (default: ".exrc";
use ! to overwrite)
|:mkvimrc| :mkv[imrc][!] [file]
same as ":mkexrc", but with default ".vimrc"
|:mksession| :mks[ession][!] [file]
like ":mkvimrc", but store current files
and directory too
|:mapc| :mapc[lear] remove mappings for Normal and Visual mode
|:mapc| :mapc[lear]! remove mappings for Insert and Cmdline mode
|:imapc| :imapc[lear] remove mappings for Insert mode
|:vmapc| :vmapc[lear] remove mappings for Visual mode
|:omapc| :omapc[lear] remove mappings for Operator-pending mode
|:nmapc| :nmapc[lear] remove mappings for Normal mode
|:cmapc| :cmapc[lear] remove mappings for Cmdline mode
*X_ab* Abbreviations
|:abbreviate| :ab[breviate] {lhs} {rhs} add abbreviation for {lhs} to {rhs}
|:abbreviate| :ab[breviate] {lhs} show abbr's that start with {lhs}
|:abbreviate| :ab[breviate] show all abbreviations
|:unabbreviate| :una[bbreviate] {lhs} remove abbreviation for {lhs}
|:noreabbrev| :norea[bbrev] [lhs] [rhs] like ":ab", but don't remap [rhs]
|:iabbrev| :iab/:iunab/:inoreab like ":ab", but only for Insert mode
|:cabbrev| :cab/:cunab/:cnoreab like ":ab", but only for
Command-line mode
|:abclear| :abc[lear] remove all abbreviations
|:cabclear| :cabc[lear] remove all abbr's for Cmdline mode
|:iabclear| :iabc[lear] remove all abbr's for Insert mode
*X_op* Options
|:set| :se[t] Show all modified options.
|:set| :se[t] all Show all options.
|:set| :se[t] {option} Set boolean option (switch it on), show string
or number option.
|:set| :se[t] no{option} Reset boolean option (switch it off).
|:set| :se[t] inv{option} invert boolean option.
|:set| :se[t] {option}={value} Set string or number option to {value}.
|:set| :se[t] {option}? Show value of {option}.
|:set| :se[t] {option}& Reset {option} to its default value.
|:fix| :fix[del] Set value of 't_kD' according to value of
't_kb'.
Short explanation of each option: *option-list*
|'aleph'| |'al'| ASCII code of the letter Aleph (Hebrew)
|'allowrevins'| |'ari'| allow CTRL-_ in Insert and Comamnd-line mode
|'altkeymap'| |'akm'| for default second laguage (Farsi/Hebrew)
|'autoindent'| |'ai'| take indent for new line from previous line
|'autowrite'| |'aw'| automatically write file if changed
|'background'| |'bg'| "dark" or "light", used for highlight colors
|'backspace'| |'bs'| how backspace works at start of line
|'backup'| |'bk'| keep backup file after overwriting a file
|'backupdir'| |'bdir'| list of directories for the backup file
|'backupext'| |'bex'| extension used for the backup file
|'binary'| |'bin'| edit binary file mode
|'bioskey'| |'biosk'| MS-DOS: use bios calls for input characters
|'breakat'| |'brk'| characters that may cause a line break
|'browsedir'| |'bsdir'| which directory to start browsing in
|'cindent'| |'cin'| do C program indenting
|'cinkeys'| |'cink'| keys that trigger indent when 'cindent' is set
|'cinoptions'| |'cino'| how to do indenting when 'cindent' is set
|'cinwords'| |'cinw'| words where 'si' and 'cin' add an indent
|'cmdheight'| |'ch'| number of lines to use for the command-line
|'columns'| |'co'| number of columns in the display
|'comments'| |'com'| patterns that can start a comment line
|'compatible'| |'cp'| behave Vi-compatible as much as possible
|'complete'| |'cpt'| specify how Insert mode completion works
|'confirm'| |'cf'| ask what to do about unsaved/read-only files
|'cpoptions'| |'cpo'| flags for Vi-compatible behaviour
|'cscopeprg'| |'csprg'| command to execute cscope
|'cscopetag'| |'cst'| use cscope for tag commands
|'cscopetagorder'| |'csto'| determines ":cstag" search order
|'cscopeverbose'| |'csverb'| give messages when adding a cscope database
|'define'| |'def'| pattern to be used to find a macro definition
|'dictionary'| |'dict'| list of file names used for keyword completion
|'digraph'| |'dg'| enable the entering of digraphs in Insert mode
|'directory'| |'dir'| list of directory names for the swap file
|'edcompatible'| |'ed'| toggle flags of ":substitute" command
|'endofline'| |'eol'| write <EOL> for last line in file
|'equalalways'| |'ea'| windows are automatically made the same size
|'equalprg'| |'ep'| external program to use for "=" command
|'errorbells'| |'eb'| ring the bell for error messages
|'errorfile'| |'ef'| name of the errorfile for the QuickFix mode
|'errorformat'| |'efm'| description of the lines in the error file
|'esckeys'| |'ek'| recognize function keys in Insert mode
|'eventignore'| |'ei'| autocommand events that are ignored
|'expandtab'| |'et'| use spaces when <Tab> is inserted
|'exrc'| |'ex'| read .vimrc and .exrc in the current directory
|'fileformat'| |'ff'| file format used for file I/O
|'fileformats'| |'ffs'| automatically detected values for 'fileformat'
|'filetype'| |'ft'| system-specific filetype information
|'fkmap'| |'fk'| Farsi keyboard mapping
|'formatoptions'| |'fo'| how automatic formatting is to be done
|'formatprg'| |'fp'| name of external program used with "gq" command
|'gdefault'| |'gd'| the ":substitute" flag 'g' is default on
|'grepformat'| |'gfm'| format of 'grepprg' output
|'grepprg'| |'gp'| program to use for ":grep"
|'guicursor'| |'gcr'| GUI: settings for cursor shape and blinking
|'guifont'| |'gfn'| GUI: Name(s) of font(s) to be used
|'guioptions'| |'go'| GUI: Which components and options are used
|'guipty'| GUI: try to use a pseudo-tty for ":!" commands
|'helpfile'| |'hf'| name of this help file
|'helpheight'| |'hh'| minimum height of a new help window
|'hidden'| |'hid'| don't unload buffer when it is abandoned
|'highlight'| |'hl'| sets highlighting mode for various occasions
|'hlsearch'| |'hls'| highlight matches with last search pattern
|'history'| |'hi'| number of command-lines that are remembered
|'hkmap'| |'hk'| Hebrew keyboard mapping
|'icon'| set icon of the window to the name of the file
|'iconstring'| string to use for the Vim icon
|'ignorecase'| |'ic'| ignore case in search patterns
|'include'| |'inc'| pattern to be used to find an include file
|'incsearch'| |'is'| highlight match while typing search pattern
|'infercase'| |'inf'| adjust case of match for keyword completion
|'insertmode'| |'im'| start the edit of a file in Insert mode
|'isfname'| |'isf'| characters included in file names and pathnames
|'isident'| |'isi'| characters included in identifiers
|'isprint'| |'isp'| printable characters
|'iskeyword'| |'isk'| characters included in keywords
|'joinspaces'| |'js'| two spaces after a period with a join command
|'keymodel'| |'km'| enable starting/stopping selection with keys
|'keywordprg'| |'kp'| program to use for the "K" command
|'langmap'| |'lmap'| alphabetic characters for other language mode
|'laststatus'| |'ls'| tells when last window has status lines
|'lazyredraw'| |'lz'| don't redraw while executing macros
|'linebreak'| |'lbr'| wrap long lines at a blank
|'lines'| number of lines in the display
|'lisp'| automatic indenting for Lisp
|'list'| show <Tab> and <EOL>
|'listchars'| |'lcs'| characters for displaying in list mode
|'magic'| changes special characters in search patterns
|'makeef'| |'mef'| name of the errorfile for ":make"
|'makeprg'| |'mp'| program to use for the ":make" command
|'matchtime'| |'mat'| tenths of a second to show matching paren
|'maxfuncdepth'| |'mfd'| maximum recursive depth for user functions
|'maxmapdepth'| |'mmd'| maximum recursive depth for mapping
|'maxmem'| |'mm'| maximum memory (in Kbyte) used for one buffer
|'maxmemtot'| |'mmt'| maximum memory (in Kbyte) used for all buffers
|'modeline'| |'ml'| recognize modelines at start or end of file
|'modelines'| |'mls'| number of lines checked for modelines
|'modified'| |'mod'| buffer has been modified
|'more'| pause listings when the whole screen is filled
|'mouse'| enable the use of mouse clicks
|'mousefocus'| |'mousef'| keyboard focus follows the mouse
|'mousehide'| |'mh'| hide mouse pointer while typing
|'mousemodel'| |'mousem'| changes meaning of mouse buttons
|'mousetime'| |'mouset'| max time between mouse double-click
|'nrformats'| |'nf'| number formats recognized for CTRL-A command
|'number'| |'nu'| print the line number in front of each line
|'paragraphs'| |'para'| nroff macros that separate paragraphs
|'paste'| allow pasting text
|'patchmode'| |'pm'| keep the oldest version of a file
|'path'| |'pa'| list of directories searched with "gf" et.al.
|'readonly'| |'ro'| disallow writing the buffer
|'remap'| allow mappings to work recursively
|'report'| threshold for reporting nr. of lines changed
|'restorescreen'| |'rs'| Win32: restore screen when exiting
|'revins'| |'ri'| inserting characters will work backwards
|'rightleft'| |'rl'| window is right-to-left oriented
|'ruler'| |'ru'| show cursor line and column in the status line
|'scroll'| |'scr'| lines to scroll with CTRL-U and CTRL-D
|'scrolljump'| |'sj'| minimum number of lines to scroll
|'scrolloff'| |'so'| minimum nr. of lines above and below cursor
|'sections'| |'sect'| nroff macros that separate sections
|'secure'| secure mode for reading .vimrc in current dir
|'selection'| |'sel'| what type of selection to use
|'selectmode'| |'slm'| when to use Select mode instead of Visual mode
|'sessionoptions'| |'ssop'| options for |:mksession|
|'shell'| |'sh'| name of shell to use for external commands
|'shellcmdflag'| |'shcf'| flag to shell to execute one command
|'shellpipe'| |'sp'| string to put output of ":make" in error file
|'shellquote'| |'shq'| quote character(s) for around shell command
|'shellredir'| |'srr'| string to put output of filter in a temp file
|'shelltype'| |'st'| Amiga: influences how to use a shell
|'shellxquote'| |'sxq'| like 'shellquote', but include redirection
|'shiftround'| |'sr'| round indent to multiple of shiftwidth
|'shiftwidth'| |'sw'| number of spaces to use for (auto)indent step
|'shortmess'| |'shm'| list of flags, reduce length of messages
|'shortname'| |'sn'| non-MS-DOS: Filenames assumed to be 8.3 chars
|'showbreak'| |'sbr'| string to use at the start of wrapped lines
|'showcmd'| |'sc'| show (partial) command in status line
|'showfulltag'| |'sft'| show full tag pattern when completing tag
|'showmatch'| |'sm'| briefly jump to matching bracket if insert one
|'showmode'| |'smd'| message on status line to show current mode
|'sidescroll'| |'ss'| minimum number of columns to scroll horizontal
|'smartcase'| |'scs'| no ignore case when pattern has uppercase
|'smartindent'| |'si'| smart autoindenting for C programs
|'smarttab'| |'sta'| use 'shiftwidth' when inserting <Tab>
|'softtabstop'| |'sts'| number of spaces that <Tab> uses while editing
|'splitbelow'| |'sb'| new window from split is below the current one
|'startofline'| |'sol'| commands move cursor to first blank in line
|'suffixes'| |'su'| suffixes that are ignored with multiple match
|'swapfile'| |'swf'| whether to use a swapfile for a buffer
|'swapsync'| |'sws'| how to sync the swap file
|'syntax'| |'syn'| syntax to be loaded for current buffer
|'tabstop'| |'ts'| number of spaces that <Tab> in file uses
|'taglength'| |'tl'| number of significant characters for a tag
|'tagrelative'| |'tr'| file names in tag file are relative
|'tags'| |'tag'| list of file names used by the tag command
|'term'| name of the terminal
|'terse'| shorten some messages
|'textauto'| |'ta'| obsolete, use 'fileformats'
|'textmode'| |'tx'| obsolete, use 'fileformat'
|'textwidth'| |'tw'| maximum width of text that is being inserted
|'tildeop'| |'top'| tilde command "~" behaves like an operator
|'timeout'| |'to'| time out on mappings and key codes
|'ttimeout'| time out on mappings
|'timeoutlen'| |'tm'| time out time in milliseconds
|'ttimeoutlen'| |'ttm'| time out time for key codes in milliseconds
|'title'| set title of window to the name of the file
|'titlestring'| title to use for the Vim window
|'ttybuiltin'| |'tbi'| use built-in termcap before external termcap
|'ttyfast'| |'tf'| indicates a fast terminal connection
|'ttymouse'| |'ttym'| type of mouse codes generated
|'ttyscroll'| |'tsl'| maximum number of lines for a scroll
|'ttytype'| |'tty'| alias for 'term'
|'undolevels'| |'ul'| maximum number of changes that can be undone
|'updatecount'| |'uc'| after this many characters flush swap file
|'updatetime'| |'ut'| after this many milliseconds flush swap file
|'verbose'| |'vbs'| give informative messages
|'viminfo'| |'vi'| use .viminfo file upon startup and exiting
|'visualbell'| |'vb'| use visual bell instead of beeping
|'warn'| warn for shell command when buffer was changed
|'weirdinvert'| |'wi'| for terminals that have weird inversion method
|'whichwrap'| |'ww'| allow specified keys to cross line boundaries
|'wildchar'| |'wc'| command-line character for wildcard expansion
|'wildignore'| |'wig'| files matching these patterns are not completed
|'wildmode'| |'wim'| mode for 'wilchar' command-line expansion
|'winaltkeys'| |'wak'| when the windows system handles ALT keys
|'winheight'| |'wh'| minimum number of lines for the current window
|'winminheight'| |'wmh'| minimum number of lines for any window
|'wrap'| long lines wrap and continue on the next line
|'wrapmargin'| |'wm'| chars from the right where wrapping starts
|'wrapscan'| |'ws'| searches wrap around the end of the file
|'writeany'| |'wa'| write to file with no need for "!" override
|'writebackup'| |'wb'| make a backup before overwriting a file
|'writedelay'| |'wd'| delay this many msec for each char (for debug)
*X_ur* Undo/Redo commands
|u| N u undo last N changes
|CTRL-R| N CTRL-R redo last N undone changes
|U| U restore last changed line
*X_et* External commands
|:shell| :sh[ell] start a shell
|:!| :!{command} execute {command} with a shell
|K| K lookup keyword under the cursor with
'keywordprg' program (default: "man")
*X_qf* Quickfix commands
|:cc| :cc [nr] display error [nr] (default is the same again)
|:cnext| :cn display the next error
|:cprevious| :cp display the previous error
|:clist| :cl list all errors
|:cfile| :cf read errors from the file 'errorfile'
|:cquit| :cq quit without writing and return error code (to
the compiler)
|:make| :make [args] start make, read errors, and jump to first
error
*X_vc* Various commands
|CTRL-L| CTRL-L Clear and redraw the screen.
|CTRL-G| CTRL-G show current file name (with path) and cursor
position
|ga| ga show ascii value of character under cursor in
decimal, hex, and octal
|g_CTRL-G| g CTRL-G show cursor column, line, and character
position
|CTRL-C| CTRL-C during searches: Interrupt the search
|dos-CTRL-Break| CTRL-Break MS-DOS: during searches: Interrupt the search
|<Del>| <Del> while entering a count: delete last character
|:version| :ve[rsion] show version information
|:mode| :mode N MS-DOS: set screen mode to N (number, C80,
C4350, etc.)
|:normal| :norm[al][!] {commands}
Execute Normal mode commands.
|Q| Q switch to "Ex" mode
|:redir| :redir >{file} redirect messages to {file}
|:confirm| :confirm {command} quit, write, etc., asking about
unsaved changes or read-only files.
*X_ce* Command-line editing
|c_<Esc>| <Esc> abandon command-line (if 'wildchar' is
<Esc>, type it twice)
|c_CTRL-V| CTRL-V {char} insert {char} literally
|c_CTRL-V| CTRL-V {number} enter decimal value of character (up to
three digits)
|c_CTRL-K| CTRL-K {char1} {char2}
enter digraph (See |X_di|)
|c_CTRL-R| CTRL-R <0-9a-z"%#:-=>
insert the contents of a register
|c_<Left>| <Left>/<Right> cursor left/right
|c_<S-Left>| <S-Left>/<S-Right> cursor one word left/right
|c_CTRL-B| CTRL-B/CTRL-E cursor to beginning/end of command-line
|c_<BS>| <BS> delete the character in front of the cursor
|c_<Del>| <Del> delete the character under the cursor
|c_CTRL-W| CTRL-W delete the word in front of the cursor
|c_CTRL-U| CTRL-U remove all characters
|c_<Up>| <Up>/<Down> recall older/newer command-line that starts
with current command
|c_<S-Up>| <S-Up>/<S-Down> recall older/newer command-line from history
Context-sensitive completion on the command-line:
|c_wildchar| 'wildchar' (default: <Tab>)
do completion on the pattern in front of the
cursor. If there are multiple matches,
beep and show the first one; further
'wildchar' will show the next ones.
|c_CTRL-D| CTRL-D list all names that match the pattern in
front of the cursor
|c_CTRL-A| CTRL-A insert all names that match pattern in front
of cursor
|c_CTRL-L| CTRL-L insert longest common part of names that
match pattern
|c_CTRL-N| CTRL-N after 'wildchar' with multiple matches: go
to next match
|c_CTRL-P| CTRL-P after 'wildchar' with multiple matches: go
to previous match
*X_ra* Ex ranges
|:range| , separates two line numbers
|:range| ; idem, set cursor to the first line number
before interpreting the second one
|:range| {number} an absolute line number
|:range| . the current line
|:range| $ the last line in the file
|:range| % equal to 1,$ (the entire file)
|:range| * equal to '<,'> (visual area)
|:range| 't position of mark t
|:range| /{pattern}[/] the next line where {pattern} matches
|:range| ?{pattern}[?] the previous line where {pattern} matches
|:range| +[num] add [num] to the preceding line number
(default: 1)
|:range| -[num] subtract [num] from the preceding line
number (default: 1)
*X_ex* Special Ex characters
|:bar| | separates two commands (not for ":global" and ":!")
|:quote| " begins comment
|:_%| % current file name (only where a file name is expected)
|:_#| #[number] alternate file name [number] (only where a file name
is expected)
Note: The next four are typed literally; these are not special keys!
|:<cword>| <cword> word under the cursor (only where a file name is
expected)
|:<cWORD>| <cWORD> WORD under the cursor (only where a file name is
expected) (see |WORD|)
|:<cfile>| <cfile> file name under the cursor (only where a file name is
expected)
|:<afile>| <afile> file name for autocommand (only where a file name is
expected)
|:<sfile>| <sfile> file name of a ":source"d file, within that file (only
where a file name is expected)
After "%", "#", "<cfile>", "<sfile>" or "<afile>"
|::p| :p full path
|::h| :h head (file name removed)
|::t| :t tail (file name only)
|::r| :r root (extension removed)
|::e| :e extension
*X_ed* Editing a file
|:edit| :e[dit] Edit the current file, unless changes have
been made.
|:edit!| :e[dit]! Edit the current file always. Discard any
changes.
|:edit_f| :e[dit] {file} Edit {file}, unless changes have been made.
|:edit!_f| :e[dit]! {file} Edit {file} always. Discard any changes.
|CTRL-^| N CTRL-^ Edit alternate file N (equivalent to ":e #N").
|gf| gf or ]f Edit the file whose name is under the cursor
|:pwd| :pwd Print the current directory name.
|:cd| :cd [path] Change the current directory to [path].
|:file| :f[ile] Print the current file name and the cursor
position.
|:file| :f[ile] {name} Set the current file name to {name}.
|:files| :files Show alternate file names.
*X_fl* Using the argument list |argument-list|
|:args| :ar[gs] Print the argument list, with the current file
in "[]".
|:all| :all or :sall Open a window for every file in the arg list.
|:wn| :wn[ext][!] Write file and edit next file.
|:wn| :wn[ext][!] {file} Write to {file} and edit next file, unless
{file} exists. With !, overwrite existing
file.
|:wN| :wN[ext][!] [file] Write file and edit previous file.
in current window in new window
|:argument| :argu[ment] N :sar[gument] N Edit file N
|:next| :n[ext] :sn[ext] Edit next file
|:next_f| :n[ext] {arglist} :sn[ext] {arglist} define new arg list
and edit first file
|:Next| :N[ext] :sN[ext] Edit previous file
|:rewind| :rew[ind][!] :srew[ind] Edit first file
|:last| :last :slast Edit last file
*X_wq* Writing and quitting
|:w| :[range]w[rite][!] Write to the current file.
|:w_f| :[range]w[rite] {file} Write to {file}, unless it already
exists.
|:w_f| :[range]w[rite]! {file} Write to {file}. Overwrite an existing
file.
|:w_a| :[range]w[rite][!] >> Append to the current file.
|:w_a| :[range]w[rite][!] >> {file} Append to {file}.
|:w_c| :[range]w[rite] !{cmd} Execute {cmd} with [range] lines as
standard input.
|:wall| :wall[!] write all changed buffers
|:q| :q[uit] Quit current buffer, unless changes have been
made. Exit Vim when there are no other
non-help buffers
|:q| :q[uit]! Quit current buffer always, discard any
changes. Exit Vim when there are no other
non-help buffers
|:qa| :qall Exit Vim, unless changes have been made.
|:qa| :qall! Exit Vim always, discard any changes.
|:cq| :cq Quit without writing and return error code.
|:wq| :wq[!] Write the current file and exit.
|:wq| :wq[!] {file} Write to {file} and exit.
|:xit| :x[it][!] [file] Like ":wq" but write only when changes have
been made
|ZZ| ZZ Same as ":x".
|ZQ| ZQ Same as ":q!".
|:xall| :xall[!] or :wqall[!]
Write all changed buffers and exit
|:stop| :st[op][!] Suspend VIM or start new shell. If 'aw' option
is set and [!] not given write the buffer.
|CTRL-Z| CTRL-Z Same as ":stop!"
*X_st* Starting VIM
|-vim| vim [options] start editing with an empty buffer
|-file| vim [options] {file ..} start editing one or more files
|--| vim [options] - read file from stdin
|-tag| vim [options] -t {tag} edit the file associated with {tag}
|-qf| vim [options] -q [fname] start editing in QuickFix mode,
display the first error
Vim arguments:
|-gui| -g start GUI (also allows other options)
|-+| +[num] put the cursor at line [num] (default: last line)
|-+c| +{command} execute {command} after loading the file
|-+/| +/{pat} {file ..} put the cursor at the first occurrence of {pat}
|-v| -v Vi mode, start ex in Normal mode
|-e| -e Ex mode, start vim in Ex mode
|-R| -R Read-only mode, implies -n
|-b| -b binary mode
|-l| -l lisp mode
|-F| -F Farsi mode ('fkmap' and 'rightleft' are set)
|-H| -H Hebrew mode ('hkmap' and 'rightleft' are set)
|-V| -V Verbose, give informative messages
|-C| -C Compatible, set the 'compatible' option
|-N| -N Nocompatible, reset the 'compatible' option
|-r| -r give list of swap files
|-r| -r {file ..} recover aborted edit session
|-n| -n do not create a swap file
|-o| -o [N] open N windows (default: one for each file)
|-f| -f GUI: foreground process, don't fork
Amiga: do not restart VIM to open a window (for
e.g., mail)
|-s| -s {scriptin} first read commands from the file {scriptin}
|-w| -w {scriptout} write typed chars to file {scriptout} (append)
|-W| -W {scriptout} write typed chars to file {scriptout} (overwrite)
|-T| -T {terminal} set terminal name
|-d| -d {device} Amiga: open {device} to be used as a console
|-u| -u {vimrc} read inits from {vimrc} instead of other inits
|-U| -U {gvimrc} idem, for when starting the GUI
|-i| -i {viminfo} read info from {viminfo} instead of other files
|---| -- end of options, other arguments are file names
|--help| --help show list of arguments and exit
|--version| --version show version info and exit
|--| - Read file from stdin.
*X_ac* Automatic Commands
|viminfo-file| Read registers, marks, history at startup, save when exiting.
|:rviminfo| :rv[iminfo] [file] Read info from viminfo file [file]
|:rviminfo| :rv[iminfo]! [file] idem, overwrite exisiting info
|:wviminfo| :wv[iminfo] [file] Add info to viminfo file [file]
|:wviminfo| :wv[iminfo]! [file] Write info to viminfo file [file]
|modeline| Automatic option setting when editing a file
|modeline| vim:{set-arg}: .. In the first and last lines of the
file (see 'ml' option), {set-arg} is
given as an argument to ":set"
|autocommand| Automatic execution of commands on certain events.
|:autocmd| :au List all autocommands
|:autocmd| :au {event} List all autocommands for {event}
|:autocmd| :au {event} {pat} List all autocommands for {event} with
{pat}
|:autocmd| :au {event} {pat} {cmd} Enter new autocommands for {event}
with {pat}
|:autocmd| :au! Remove all autocommands
|:autocmd| :au! {event} Remove all autocommands for {event}
|:autocmd| :au! * {pat} Remove all autocommands for {pat}
|:autocmd| :au! {event} {pat} Remove all autocommands for {event}
with {pat}
|:autocmd| :au! {event} {pat} {cmd} Remove all autocommands for {event}
with {pat} and enter new one
*X_wi* Multi-window functions
|CTRL-W_s| CTRL-W s or :split Split window into two parts
|:split_f| :split {file} Split window and edit {file} in one of
them
|CTRL-W_]| CTRL-W ] Split window and jump to tag under
cursor
|CTRL-W_f| CTRL-W f Split window and edit file name under
the cursor
|CTRL-W_CTRL-^| CTRL-W CTRL-^ Split window and edit alternate file
|CTRL-W_n| CTRL-W n or :new Create new empty window
|CTRL-W_q| CTRL-W q or :q[uit] Quit editing and close window
|CTRL-W_c| CTRL-W c or :cl[ose] Make buffer hidden and close window
|CTRL-W_o| CTRL-W o or :on[ly] Make current window only one on the
screen
|CTRL-W_j| CTRL-W j Move cursor to window below
|CTRL-W_k| CTRL-W k Move cursor to window above
|CTRL-W_CTRL-W| CTRL-W CTRL-W Move cursor to window below (wrap)
|CTRL-W_W| CTRL-W W Move cursor to window above (wrap)
|CTRL-W_t| CTRL-W t Move cursor to top window
|CTRL-W_b| CTRL-W b Move cursor to bottom window
|CTRL-W_p| CTRL-W p Move cursor to previous active window
|CTRL-W_r| CTRL-W r Rotate windows downwards
|CTRL-W_R| CTRL-W R Rotate windows upwards
|CTRL-W_x| CTRL-W x Exchange current window with next one
|CTRL-W_=| CTRL-W = Make all windows equal height
|CTRL-W_-| CTRL-W - Decrease current window height
|CTRL-W_+| CTRL-W + Increase current window height
|CTRL-W__| CTRL-W _ Set current window height (default:
very high)
*X_bu* Buffer list functions
|:buffers| :buffers or :files list all known buffer and file names
|:ball| :ball or :sball edit all args/buffers
|:unhide| :unhide or :sunhide edit all loaded buffers
|:badd| :badd {fname} add file name {fname} to the list
|:bunload| :bunload[!] [N] unload buffer [N] from memory
|:bdelete| :bdelete[!] [N] unload buffer [N] and delete it from
the buffer list
in current window in new window
|:buffer| :[N]buffer [N] :[N]sbuffer [N] to arg/buf N
|:bnext| :[N]bnext [N] :[N]sbnext [N] to Nth next arg/buf
|:bNext| :[N]bNext [N] :[N]sbNext [N] to Nth previous arg/buf
|:bprevious| :[N]bprevious [N] :[N]sbprevious [N] to Nth previous arg/buf
|:brewind| :brewind :sbrewind to first arg/buf
|:blast| :blast :sblast to last arg/buf
|:bmodified| :[N]bmod [N] :[N]sbmod [N] to Nth modified buf
*X_sy* Syntax Highlighting
|:syn-on| :syntax on start using syntax highlighting
|:syn-off| :syntax off stop using syntax highlighting
|:syn-keyword| :syntax keyword {group-name} {keyword} ..
add a syntax keyword item
|:syn-match| :syntax match {group-name} {pattern} ...
add syntax match item
|:syn-region| :syntax region {group-name} {pattern} ...
add syntax region item
|:syn-sync| :syntax sync [ccomment | lines {N} | ...]
tell syntax how to sync
|:syntax| :syntax [list] list current syntax items
|:syn-clear| :syntax clear clear all syntax info
|:highlight| :highlight clear clear all highlight info
|:highlight| :highlight {group-name} {key}={arg} ..
set highlighting for {group-name}
*X_gu* GUI commands
|:gui| :gui UNIX: start the GUI
|:gui| :gui {fname} .. idem, and edit {fname} ..
|:menu| :menu list all menus
|:menu| :menu {mpath} list menus starting with {mpath}
|:menu| :menu {mpath} {rhs} add menu {mpath}, giving {lhs}
|:menu| :menu {pri} {mpath} {rhs}
idem, with priorities {pri}
|:menu| :menu ToolBar.{name} {rhs}
Win32: add toolbar item, giving {lhs}
|:tmenu| :tmenu {mpath} {text} Win32: add tooltip to menu {mpath}
|:unmenu| :unmenu {mpath} remove menu {mpath}
*bars* Bars example
Now that you've jumped here with CTRL-], <2-LeftMouse>, g<LeftMouse>, or
<C-LeftMouse>, you can use CTRL-T, CTRL-O, g<RightMouse>, or <C-RightMouse> to
go back to where you were.
top