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