1 /* vi:set ts=8 sts=4 sw=4 noet: 2 * 3 * VIM - Vi IMproved by Bram Moolenaar 4 * 5 * Do ":help uganda" in Vim to read copying and usage conditions. 6 * Do ":help credits" in Vim to see a list of people who contributed. 7 */ 8 9 /* 10 * This file defines the Ex commands. 11 * When DO_DECLARE_EXCMD is defined, the table with ex command names and 12 * options results. 13 * When DO_DECLARE_EXCMD is NOT defined, the enum with all the Ex commands 14 * results. 15 * This clever trick was invented by Ron Aaron. 16 */ 17 18 /* 19 * When adding an Ex command: 20 * 1. Add an entry in the table below. Keep it sorted on the shortest 21 * version of the command name that works. If it doesn't start with a 22 * lower case letter, add it at the end. 23 * 2. Add a "case: CMD_xxx" in the big switch in ex_docmd.c. 24 * 3. Add an entry in the index for Ex commands at ":help ex-cmd-index". 25 * 4. Add documentation in ../doc/xxx.txt. Add a tag for both the short and 26 * long name of the command. 27 */ 28 29 #ifdef RANGE 30 # undef RANGE /* SASC on Amiga defines it */ 31 #endif 32 33 #define RANGE 0x001 /* allow a linespecs */ 34 #define BANG 0x002 /* allow a ! after the command name */ 35 #define EXTRA 0x004 /* allow extra args after command name */ 36 #define XFILE 0x008 /* expand wildcards in extra part */ 37 #define NOSPC 0x010 /* no spaces allowed in the extra part */ 38 #define DFLALL 0x020 /* default file range is 1,$ */ 39 #define WHOLEFOLD 0x040 /* extend range to include whole fold also 40 when less than two numbers given */ 41 #define NEEDARG 0x080 /* argument required */ 42 #define TRLBAR 0x100 /* check for trailing vertical bar */ 43 #define REGSTR 0x200 /* allow "x for register designation */ 44 #define COUNT 0x400 /* allow count in argument, after command */ 45 #define NOTRLCOM 0x800 /* no trailing comment allowed */ 46 #define ZEROR 0x1000 /* zero line number allowed */ 47 #define USECTRLV 0x2000 /* do not remove CTRL-V from argument */ 48 #define NOTADR 0x4000 /* number before command is not an address */ 49 #define EDITCMD 0x8000 /* allow "+command" argument */ 50 #define BUFNAME 0x10000L /* accepts buffer name */ 51 #define BUFUNL 0x20000L /* accepts unlisted buffer too */ 52 #define ARGOPT 0x40000L /* allow "++opt=val" argument */ 53 #define SBOXOK 0x80000L /* allowed in the sandbox */ 54 #define CMDWIN 0x100000L /* allowed in cmdline window; when missing 55 * disallows editing another buffer when 56 * curbuf_lock is set */ 57 #define MODIFY 0x200000L /* forbidden in non-'modifiable' buffer */ 58 #define EXFLAGS 0x400000L /* allow flags after count in argument */ 59 #define FILES (XFILE | EXTRA) /* multiple extra files allowed */ 60 #define WORD1 (EXTRA | NOSPC) /* one extra word allowed */ 61 #define FILE1 (FILES | NOSPC) /* 1 file allowed, defaults to current file */ 62 63 /* values for cmd_addr_type */ 64 #define ADDR_LINES 0 65 #define ADDR_WINDOWS 1 66 #define ADDR_ARGUMENTS 2 67 #define ADDR_LOADED_BUFFERS 3 68 #define ADDR_BUFFERS 4 69 #define ADDR_TABS 5 70 #define ADDR_TABS_RELATIVE 6 /* Tab page that only relative */ 71 #define ADDR_QUICKFIX 7 72 #define ADDR_OTHER 99 73 74 #ifndef DO_DECLARE_EXCMD 75 typedef struct exarg exarg_T; 76 #endif 77 78 /* 79 * This array maps ex command names to command codes. 80 * The order in which command names are listed below is significant -- 81 * ambiguous abbreviations are always resolved to be the first possible match 82 * (e.g. "r" is taken to mean "read", not "rewind", because "read" comes 83 * before "rewind"). 84 * Not supported commands are included to avoid ambiguities. 85 */ 86 #ifdef EX 87 # undef EX /* just in case */ 88 #endif 89 #ifdef DO_DECLARE_EXCMD 90 # define EX(a, b, c, d, e) {(char_u *)b, c, (long_u)(d), e} 91 92 typedef void (*ex_func_T) (exarg_T *eap); 93 94 static struct cmdname 95 { 96 char_u *cmd_name; /* name of the command */ 97 ex_func_T cmd_func; /* function for this command */ 98 long_u cmd_argt; /* flags declared above */ 99 int cmd_addr_type; /* flag for address type */ 100 } cmdnames[] = 101 #else 102 # define EX(a, b, c, d, e) a 103 enum CMD_index 104 #endif 105 { 106 EX(CMD_append, "append", ex_append, 107 BANG|RANGE|ZEROR|TRLBAR|CMDWIN|MODIFY, 108 ADDR_LINES), 109 EX(CMD_abbreviate, "abbreviate", ex_abbreviate, 110 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 111 ADDR_LINES), 112 EX(CMD_abclear, "abclear", ex_abclear, 113 EXTRA|TRLBAR|CMDWIN, 114 ADDR_LINES), 115 EX(CMD_aboveleft, "aboveleft", ex_wrongmodifier, 116 NEEDARG|EXTRA|NOTRLCOM, 117 ADDR_LINES), 118 EX(CMD_all, "all", ex_all, 119 BANG|RANGE|NOTADR|COUNT|TRLBAR, 120 ADDR_LINES), 121 EX(CMD_amenu, "amenu", ex_menu, 122 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 123 ADDR_LINES), 124 EX(CMD_anoremenu, "anoremenu", ex_menu, 125 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 126 ADDR_LINES), 127 EX(CMD_args, "args", ex_args, 128 BANG|FILES|EDITCMD|ARGOPT|TRLBAR, 129 ADDR_LINES), 130 EX(CMD_argadd, "argadd", ex_argadd, 131 BANG|RANGE|NOTADR|ZEROR|FILES|TRLBAR, 132 ADDR_ARGUMENTS), 133 EX(CMD_argdelete, "argdelete", ex_argdelete, 134 BANG|RANGE|NOTADR|FILES|TRLBAR, 135 ADDR_ARGUMENTS), 136 EX(CMD_argdo, "argdo", ex_listdo, 137 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 138 ADDR_ARGUMENTS), 139 EX(CMD_argedit, "argedit", ex_argedit, 140 BANG|NEEDARG|RANGE|NOTADR|ZEROR|FILES|EDITCMD|ARGOPT|TRLBAR, 141 ADDR_ARGUMENTS), 142 EX(CMD_argglobal, "argglobal", ex_args, 143 BANG|FILES|EDITCMD|ARGOPT|TRLBAR, 144 ADDR_LINES), 145 EX(CMD_arglocal, "arglocal", ex_args, 146 BANG|FILES|EDITCMD|ARGOPT|TRLBAR, 147 ADDR_LINES), 148 EX(CMD_argument, "argument", ex_argument, 149 BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR, 150 ADDR_ARGUMENTS), 151 EX(CMD_ascii, "ascii", do_ascii, 152 TRLBAR|SBOXOK|CMDWIN, 153 ADDR_LINES), 154 EX(CMD_autocmd, "autocmd", ex_autocmd, 155 BANG|EXTRA|NOTRLCOM|USECTRLV|CMDWIN, 156 ADDR_LINES), 157 EX(CMD_augroup, "augroup", ex_autocmd, 158 BANG|WORD1|TRLBAR|CMDWIN, 159 ADDR_LINES), 160 EX(CMD_aunmenu, "aunmenu", ex_menu, 161 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 162 ADDR_LINES), 163 EX(CMD_buffer, "buffer", ex_buffer, 164 BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR, 165 ADDR_BUFFERS), 166 EX(CMD_bNext, "bNext", ex_bprevious, 167 BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 168 ADDR_LINES), 169 EX(CMD_ball, "ball", ex_buffer_all, 170 RANGE|NOTADR|COUNT|TRLBAR, 171 ADDR_LINES), 172 EX(CMD_badd, "badd", ex_edit, 173 NEEDARG|FILE1|EDITCMD|TRLBAR|CMDWIN, 174 ADDR_LINES), 175 EX(CMD_bdelete, "bdelete", ex_bunload, 176 BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR, 177 ADDR_BUFFERS), 178 EX(CMD_behave, "behave", ex_behave, 179 NEEDARG|WORD1|TRLBAR|CMDWIN, 180 ADDR_LINES), 181 EX(CMD_belowright, "belowright", ex_wrongmodifier, 182 NEEDARG|EXTRA|NOTRLCOM, 183 ADDR_LINES), 184 EX(CMD_bfirst, "bfirst", ex_brewind, 185 BANG|RANGE|NOTADR|EDITCMD|TRLBAR, 186 ADDR_LINES), 187 EX(CMD_blast, "blast", ex_blast, 188 BANG|RANGE|NOTADR|EDITCMD|TRLBAR, 189 ADDR_LINES), 190 EX(CMD_bmodified, "bmodified", ex_bmodified, 191 BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 192 ADDR_LINES), 193 EX(CMD_bnext, "bnext", ex_bnext, 194 BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 195 ADDR_LINES), 196 EX(CMD_botright, "botright", ex_wrongmodifier, 197 NEEDARG|EXTRA|NOTRLCOM, 198 ADDR_LINES), 199 EX(CMD_bprevious, "bprevious", ex_bprevious, 200 BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 201 ADDR_LINES), 202 EX(CMD_brewind, "brewind", ex_brewind, 203 BANG|RANGE|NOTADR|EDITCMD|TRLBAR, 204 ADDR_LINES), 205 EX(CMD_break, "break", ex_break, 206 TRLBAR|SBOXOK|CMDWIN, 207 ADDR_LINES), 208 EX(CMD_breakadd, "breakadd", ex_breakadd, 209 EXTRA|TRLBAR|CMDWIN, 210 ADDR_LINES), 211 EX(CMD_breakdel, "breakdel", ex_breakdel, 212 EXTRA|TRLBAR|CMDWIN, 213 ADDR_LINES), 214 EX(CMD_breaklist, "breaklist", ex_breaklist, 215 EXTRA|TRLBAR|CMDWIN, 216 ADDR_LINES), 217 EX(CMD_browse, "browse", ex_wrongmodifier, 218 NEEDARG|EXTRA|NOTRLCOM|CMDWIN, 219 ADDR_LINES), 220 EX(CMD_buffers, "buffers", buflist_list, 221 BANG|EXTRA|TRLBAR|CMDWIN, 222 ADDR_LINES), 223 EX(CMD_bufdo, "bufdo", ex_listdo, 224 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 225 ADDR_BUFFERS), 226 EX(CMD_bunload, "bunload", ex_bunload, 227 BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR, 228 ADDR_LOADED_BUFFERS), 229 EX(CMD_bwipeout, "bwipeout", ex_bunload, 230 BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR, 231 ADDR_BUFFERS), 232 EX(CMD_change, "change", ex_change, 233 BANG|WHOLEFOLD|RANGE|COUNT|TRLBAR|CMDWIN|MODIFY, 234 ADDR_LINES), 235 EX(CMD_cNext, "cNext", ex_cnext, 236 RANGE|NOTADR|COUNT|TRLBAR|BANG, 237 ADDR_LINES), 238 EX(CMD_cNfile, "cNfile", ex_cnext, 239 RANGE|NOTADR|COUNT|TRLBAR|BANG, 240 ADDR_LINES), 241 EX(CMD_cabbrev, "cabbrev", ex_abbreviate, 242 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 243 ADDR_LINES), 244 EX(CMD_cabclear, "cabclear", ex_abclear, 245 EXTRA|TRLBAR|CMDWIN, 246 ADDR_LINES), 247 EX(CMD_caddbuffer, "caddbuffer", ex_cbuffer, 248 RANGE|NOTADR|WORD1|TRLBAR, 249 ADDR_LINES), 250 EX(CMD_caddexpr, "caddexpr", ex_cexpr, 251 NEEDARG|WORD1|NOTRLCOM|TRLBAR, 252 ADDR_LINES), 253 EX(CMD_caddfile, "caddfile", ex_cfile, 254 TRLBAR|FILE1, 255 ADDR_LINES), 256 EX(CMD_call, "call", ex_call, 257 RANGE|NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 258 ADDR_LINES), 259 EX(CMD_catch, "catch", ex_catch, 260 EXTRA|SBOXOK|CMDWIN, 261 ADDR_LINES), 262 EX(CMD_cbuffer, "cbuffer", ex_cbuffer, 263 BANG|RANGE|NOTADR|WORD1|TRLBAR, 264 ADDR_LINES), 265 EX(CMD_cbottom, "cbottom", ex_cbottom, 266 TRLBAR, 267 ADDR_LINES), 268 EX(CMD_cc, "cc", ex_cc, 269 RANGE|NOTADR|COUNT|TRLBAR|BANG, 270 ADDR_LINES), 271 EX(CMD_cclose, "cclose", ex_cclose, 272 RANGE|NOTADR|COUNT|TRLBAR, 273 ADDR_LINES), 274 EX(CMD_cd, "cd", ex_cd, 275 BANG|FILE1|TRLBAR|CMDWIN, 276 ADDR_LINES), 277 EX(CMD_cdo, "cdo", ex_listdo, 278 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 279 ADDR_QUICKFIX), 280 EX(CMD_center, "center", ex_align, 281 TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, 282 ADDR_LINES), 283 EX(CMD_cexpr, "cexpr", ex_cexpr, 284 NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG, 285 ADDR_LINES), 286 EX(CMD_cfile, "cfile", ex_cfile, 287 TRLBAR|FILE1|BANG, 288 ADDR_LINES), 289 EX(CMD_cfdo, "cfdo", ex_listdo, 290 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 291 ADDR_QUICKFIX), 292 EX(CMD_cfirst, "cfirst", ex_cc, 293 RANGE|NOTADR|COUNT|TRLBAR|BANG, 294 ADDR_LINES), 295 EX(CMD_cgetfile, "cgetfile", ex_cfile, 296 TRLBAR|FILE1, 297 ADDR_LINES), 298 EX(CMD_cgetbuffer, "cgetbuffer", ex_cbuffer, 299 RANGE|NOTADR|WORD1|TRLBAR, 300 ADDR_LINES), 301 EX(CMD_cgetexpr, "cgetexpr", ex_cexpr, 302 NEEDARG|WORD1|NOTRLCOM|TRLBAR, 303 ADDR_LINES), 304 EX(CMD_chdir, "chdir", ex_cd, 305 BANG|FILE1|TRLBAR|CMDWIN, 306 ADDR_LINES), 307 EX(CMD_changes, "changes", ex_changes, 308 TRLBAR|CMDWIN, 309 ADDR_LINES), 310 EX(CMD_checkpath, "checkpath", ex_checkpath, 311 TRLBAR|BANG|CMDWIN, 312 ADDR_LINES), 313 EX(CMD_checktime, "checktime", ex_checktime, 314 RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR, 315 ADDR_LINES), 316 EX(CMD_chistory, "chistory", qf_history, 317 TRLBAR, 318 ADDR_LINES), 319 EX(CMD_clist, "clist", qf_list, 320 BANG|EXTRA|TRLBAR|CMDWIN, 321 ADDR_LINES), 322 EX(CMD_clast, "clast", ex_cc, 323 RANGE|NOTADR|COUNT|TRLBAR|BANG, 324 ADDR_LINES), 325 EX(CMD_close, "close", ex_close, 326 BANG|RANGE|NOTADR|COUNT|TRLBAR|CMDWIN, 327 ADDR_WINDOWS), 328 EX(CMD_clearjumps, "clearjumps", ex_clearjumps, 329 TRLBAR|CMDWIN, 330 ADDR_LINES), 331 EX(CMD_cmap, "cmap", ex_map, 332 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 333 ADDR_LINES), 334 EX(CMD_cmapclear, "cmapclear", ex_mapclear, 335 EXTRA|TRLBAR|CMDWIN, 336 ADDR_LINES), 337 EX(CMD_cmenu, "cmenu", ex_menu, 338 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 339 ADDR_LINES), 340 EX(CMD_cnext, "cnext", ex_cnext, 341 RANGE|NOTADR|COUNT|TRLBAR|BANG, 342 ADDR_LINES), 343 EX(CMD_cnewer, "cnewer", qf_age, 344 RANGE|NOTADR|COUNT|TRLBAR, 345 ADDR_LINES), 346 EX(CMD_cnfile, "cnfile", ex_cnext, 347 RANGE|NOTADR|COUNT|TRLBAR|BANG, 348 ADDR_LINES), 349 EX(CMD_cnoremap, "cnoremap", ex_map, 350 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 351 ADDR_LINES), 352 EX(CMD_cnoreabbrev, "cnoreabbrev", ex_abbreviate, 353 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 354 ADDR_LINES), 355 EX(CMD_cnoremenu, "cnoremenu", ex_menu, 356 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 357 ADDR_LINES), 358 EX(CMD_copy, "copy", ex_copymove, 359 RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, 360 ADDR_LINES), 361 EX(CMD_colder, "colder", qf_age, 362 RANGE|NOTADR|COUNT|TRLBAR, 363 ADDR_LINES), 364 EX(CMD_colorscheme, "colorscheme", ex_colorscheme, 365 WORD1|TRLBAR|CMDWIN, 366 ADDR_LINES), 367 EX(CMD_command, "command", ex_command, 368 EXTRA|BANG|NOTRLCOM|USECTRLV|CMDWIN, 369 ADDR_LINES), 370 EX(CMD_comclear, "comclear", ex_comclear, 371 TRLBAR|CMDWIN, 372 ADDR_LINES), 373 EX(CMD_compiler, "compiler", ex_compiler, 374 BANG|TRLBAR|WORD1|CMDWIN, 375 ADDR_LINES), 376 EX(CMD_continue, "continue", ex_continue, 377 TRLBAR|SBOXOK|CMDWIN, 378 ADDR_LINES), 379 EX(CMD_confirm, "confirm", ex_wrongmodifier, 380 NEEDARG|EXTRA|NOTRLCOM|CMDWIN, 381 ADDR_LINES), 382 EX(CMD_copen, "copen", ex_copen, 383 RANGE|NOTADR|COUNT|TRLBAR, 384 ADDR_LINES), 385 EX(CMD_cprevious, "cprevious", ex_cnext, 386 RANGE|NOTADR|COUNT|TRLBAR|BANG, 387 ADDR_LINES), 388 EX(CMD_cpfile, "cpfile", ex_cnext, 389 RANGE|NOTADR|COUNT|TRLBAR|BANG, 390 ADDR_LINES), 391 EX(CMD_cquit, "cquit", ex_cquit, 392 TRLBAR|BANG, 393 ADDR_LINES), 394 EX(CMD_crewind, "crewind", ex_cc, 395 RANGE|NOTADR|COUNT|TRLBAR|BANG, 396 ADDR_LINES), 397 EX(CMD_cscope, "cscope", ex_cscope, 398 EXTRA|NOTRLCOM|XFILE, 399 ADDR_LINES), 400 EX(CMD_cstag, "cstag", ex_cstag, 401 BANG|TRLBAR|WORD1, 402 ADDR_LINES), 403 EX(CMD_cunmap, "cunmap", ex_unmap, 404 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 405 ADDR_LINES), 406 EX(CMD_cunabbrev, "cunabbrev", ex_abbreviate, 407 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 408 ADDR_LINES), 409 EX(CMD_cunmenu, "cunmenu", ex_menu, 410 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 411 ADDR_LINES), 412 EX(CMD_cwindow, "cwindow", ex_cwindow, 413 RANGE|NOTADR|COUNT|TRLBAR, 414 ADDR_LINES), 415 EX(CMD_delete, "delete", ex_operators, 416 RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN|MODIFY, 417 ADDR_LINES), 418 EX(CMD_delmarks, "delmarks", ex_delmarks, 419 BANG|EXTRA|TRLBAR|CMDWIN, 420 ADDR_LINES), 421 EX(CMD_debug, "debug", ex_debug, 422 NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 423 ADDR_LINES), 424 EX(CMD_debuggreedy, "debuggreedy", ex_debuggreedy, 425 RANGE|NOTADR|ZEROR|TRLBAR|CMDWIN, 426 ADDR_LINES), 427 EX(CMD_delcommand, "delcommand", ex_delcommand, 428 NEEDARG|WORD1|TRLBAR|CMDWIN, 429 ADDR_LINES), 430 EX(CMD_delfunction, "delfunction", ex_delfunction, 431 BANG|NEEDARG|WORD1|CMDWIN, 432 ADDR_LINES), 433 EX(CMD_display, "display", ex_display, 434 EXTRA|NOTRLCOM|TRLBAR|SBOXOK|CMDWIN, 435 ADDR_LINES), 436 EX(CMD_diffupdate, "diffupdate", ex_diffupdate, 437 BANG|TRLBAR, 438 ADDR_LINES), 439 EX(CMD_diffget, "diffget", ex_diffgetput, 440 RANGE|EXTRA|TRLBAR|MODIFY, 441 ADDR_LINES), 442 EX(CMD_diffoff, "diffoff", ex_diffoff, 443 BANG|TRLBAR, 444 ADDR_LINES), 445 EX(CMD_diffpatch, "diffpatch", ex_diffpatch, 446 EXTRA|FILE1|TRLBAR|MODIFY, 447 ADDR_LINES), 448 EX(CMD_diffput, "diffput", ex_diffgetput, 449 RANGE|EXTRA|TRLBAR, 450 ADDR_LINES), 451 EX(CMD_diffsplit, "diffsplit", ex_diffsplit, 452 EXTRA|FILE1|TRLBAR, 453 ADDR_LINES), 454 EX(CMD_diffthis, "diffthis", ex_diffthis, 455 TRLBAR, 456 ADDR_LINES), 457 EX(CMD_digraphs, "digraphs", ex_digraphs, 458 EXTRA|TRLBAR|CMDWIN, 459 ADDR_LINES), 460 EX(CMD_djump, "djump", ex_findpat, 461 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, 462 ADDR_LINES), 463 EX(CMD_dlist, "dlist", ex_findpat, 464 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, 465 ADDR_LINES), 466 EX(CMD_doautocmd, "doautocmd", ex_doautocmd, 467 EXTRA|TRLBAR|CMDWIN, 468 ADDR_LINES), 469 EX(CMD_doautoall, "doautoall", ex_doautoall, 470 EXTRA|TRLBAR|CMDWIN, 471 ADDR_LINES), 472 EX(CMD_drop, "drop", ex_drop, 473 FILES|EDITCMD|NEEDARG|ARGOPT|TRLBAR, 474 ADDR_LINES), 475 EX(CMD_dsearch, "dsearch", ex_findpat, 476 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, 477 ADDR_LINES), 478 EX(CMD_dsplit, "dsplit", ex_findpat, 479 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, 480 ADDR_LINES), 481 EX(CMD_edit, "edit", ex_edit, 482 BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 483 ADDR_LINES), 484 EX(CMD_earlier, "earlier", ex_later, 485 TRLBAR|EXTRA|NOSPC|CMDWIN, 486 ADDR_LINES), 487 EX(CMD_echo, "echo", ex_echo, 488 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 489 ADDR_LINES), 490 EX(CMD_echoerr, "echoerr", ex_execute, 491 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 492 ADDR_LINES), 493 EX(CMD_echohl, "echohl", ex_echohl, 494 EXTRA|TRLBAR|SBOXOK|CMDWIN, 495 ADDR_LINES), 496 EX(CMD_echomsg, "echomsg", ex_execute, 497 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 498 ADDR_LINES), 499 EX(CMD_echon, "echon", ex_echo, 500 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 501 ADDR_LINES), 502 EX(CMD_else, "else", ex_else, 503 TRLBAR|SBOXOK|CMDWIN, 504 ADDR_LINES), 505 EX(CMD_elseif, "elseif", ex_else, 506 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 507 ADDR_LINES), 508 EX(CMD_emenu, "emenu", ex_emenu, 509 NEEDARG|EXTRA|TRLBAR|NOTRLCOM|RANGE|NOTADR|CMDWIN, 510 ADDR_LINES), 511 EX(CMD_endif, "endif", ex_endif, 512 TRLBAR|SBOXOK|CMDWIN, 513 ADDR_LINES), 514 EX(CMD_endfunction, "endfunction", ex_endfunction, 515 TRLBAR|CMDWIN, 516 ADDR_LINES), 517 EX(CMD_endfor, "endfor", ex_endwhile, 518 TRLBAR|SBOXOK|CMDWIN, 519 ADDR_LINES), 520 EX(CMD_endtry, "endtry", ex_endtry, 521 TRLBAR|SBOXOK|CMDWIN, 522 ADDR_LINES), 523 EX(CMD_endwhile, "endwhile", ex_endwhile, 524 TRLBAR|SBOXOK|CMDWIN, 525 ADDR_LINES), 526 EX(CMD_enew, "enew", ex_edit, 527 BANG|TRLBAR, 528 ADDR_LINES), 529 EX(CMD_ex, "ex", ex_edit, 530 BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 531 ADDR_LINES), 532 EX(CMD_execute, "execute", ex_execute, 533 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 534 ADDR_LINES), 535 EX(CMD_exit, "exit", ex_exit, 536 RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, 537 ADDR_LINES), 538 EX(CMD_exusage, "exusage", ex_exusage, 539 TRLBAR, 540 ADDR_LINES), 541 EX(CMD_file, "file", ex_file, 542 RANGE|NOTADR|ZEROR|BANG|FILE1|TRLBAR, 543 ADDR_LINES), 544 EX(CMD_files, "files", buflist_list, 545 BANG|EXTRA|TRLBAR|CMDWIN, 546 ADDR_LINES), 547 EX(CMD_filetype, "filetype", ex_filetype, 548 EXTRA|TRLBAR|CMDWIN, 549 ADDR_LINES), 550 EX(CMD_filter, "filter", ex_wrongmodifier, 551 BANG|NEEDARG|EXTRA|NOTRLCOM, 552 ADDR_LINES), 553 EX(CMD_find, "find", ex_find, 554 RANGE|NOTADR|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 555 ADDR_LINES), 556 EX(CMD_finally, "finally", ex_finally, 557 TRLBAR|SBOXOK|CMDWIN, 558 ADDR_LINES), 559 EX(CMD_finish, "finish", ex_finish, 560 TRLBAR|SBOXOK|CMDWIN, 561 ADDR_LINES), 562 EX(CMD_first, "first", ex_rewind, 563 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 564 ADDR_LINES), 565 EX(CMD_fixdel, "fixdel", do_fixdel, 566 TRLBAR|CMDWIN, 567 ADDR_LINES), 568 EX(CMD_fold, "fold", ex_fold, 569 RANGE|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, 570 ADDR_LINES), 571 EX(CMD_foldclose, "foldclose", ex_foldopen, 572 RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, 573 ADDR_LINES), 574 EX(CMD_folddoopen, "folddoopen", ex_folddo, 575 RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM, 576 ADDR_LINES), 577 EX(CMD_folddoclosed, "folddoclosed", ex_folddo, 578 RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM, 579 ADDR_LINES), 580 EX(CMD_foldopen, "foldopen", ex_foldopen, 581 RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, 582 ADDR_LINES), 583 EX(CMD_for, "for", ex_while, 584 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 585 ADDR_LINES), 586 EX(CMD_function, "function", ex_function, 587 EXTRA|BANG|CMDWIN, 588 ADDR_LINES), 589 EX(CMD_global, "global", ex_global, 590 RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN, 591 ADDR_LINES), 592 EX(CMD_goto, "goto", ex_goto, 593 RANGE|NOTADR|COUNT|TRLBAR|SBOXOK|CMDWIN, 594 ADDR_LINES), 595 EX(CMD_grep, "grep", ex_make, 596 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 597 ADDR_LINES), 598 EX(CMD_grepadd, "grepadd", ex_make, 599 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 600 ADDR_LINES), 601 EX(CMD_gui, "gui", ex_gui, 602 BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN, 603 ADDR_LINES), 604 EX(CMD_gvim, "gvim", ex_gui, 605 BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN, 606 ADDR_LINES), 607 EX(CMD_help, "help", ex_help, 608 BANG|EXTRA|NOTRLCOM, 609 ADDR_LINES), 610 EX(CMD_helpclose, "helpclose", ex_helpclose, 611 RANGE|NOTADR|COUNT|TRLBAR, 612 ADDR_LINES), 613 EX(CMD_helpfind, "helpfind", ex_helpfind, 614 EXTRA|NOTRLCOM, 615 ADDR_LINES), 616 EX(CMD_helpgrep, "helpgrep", ex_helpgrep, 617 EXTRA|NOTRLCOM|NEEDARG, 618 ADDR_LINES), 619 EX(CMD_helptags, "helptags", ex_helptags, 620 NEEDARG|FILES|TRLBAR|CMDWIN, 621 ADDR_LINES), 622 EX(CMD_hardcopy, "hardcopy", ex_hardcopy, 623 RANGE|COUNT|EXTRA|TRLBAR|DFLALL|BANG, 624 ADDR_LINES), 625 EX(CMD_highlight, "highlight", ex_highlight, 626 BANG|EXTRA|TRLBAR|SBOXOK|CMDWIN, 627 ADDR_LINES), 628 EX(CMD_hide, "hide", ex_hide, 629 BANG|RANGE|NOTADR|COUNT|EXTRA|TRLBAR, 630 ADDR_WINDOWS), 631 EX(CMD_history, "history", ex_history, 632 EXTRA|TRLBAR|CMDWIN, 633 ADDR_LINES), 634 EX(CMD_insert, "insert", ex_append, 635 BANG|RANGE|TRLBAR|CMDWIN|MODIFY, 636 ADDR_LINES), 637 EX(CMD_iabbrev, "iabbrev", ex_abbreviate, 638 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 639 ADDR_LINES), 640 EX(CMD_iabclear, "iabclear", ex_abclear, 641 EXTRA|TRLBAR|CMDWIN, 642 ADDR_LINES), 643 EX(CMD_if, "if", ex_if, 644 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 645 ADDR_LINES), 646 EX(CMD_ijump, "ijump", ex_findpat, 647 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, 648 ADDR_LINES), 649 EX(CMD_ilist, "ilist", ex_findpat, 650 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, 651 ADDR_LINES), 652 EX(CMD_imap, "imap", ex_map, 653 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 654 ADDR_LINES), 655 EX(CMD_imapclear, "imapclear", ex_mapclear, 656 EXTRA|TRLBAR|CMDWIN, 657 ADDR_LINES), 658 EX(CMD_imenu, "imenu", ex_menu, 659 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 660 ADDR_LINES), 661 EX(CMD_inoremap, "inoremap", ex_map, 662 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 663 ADDR_LINES), 664 EX(CMD_inoreabbrev, "inoreabbrev", ex_abbreviate, 665 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 666 ADDR_LINES), 667 EX(CMD_inoremenu, "inoremenu", ex_menu, 668 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 669 ADDR_LINES), 670 EX(CMD_intro, "intro", ex_intro, 671 TRLBAR|CMDWIN, 672 ADDR_LINES), 673 EX(CMD_isearch, "isearch", ex_findpat, 674 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, 675 ADDR_LINES), 676 EX(CMD_isplit, "isplit", ex_findpat, 677 BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, 678 ADDR_LINES), 679 EX(CMD_iunmap, "iunmap", ex_unmap, 680 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 681 ADDR_LINES), 682 EX(CMD_iunabbrev, "iunabbrev", ex_abbreviate, 683 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 684 ADDR_LINES), 685 EX(CMD_iunmenu, "iunmenu", ex_menu, 686 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 687 ADDR_LINES), 688 EX(CMD_join, "join", ex_join, 689 BANG|RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, 690 ADDR_LINES), 691 EX(CMD_jumps, "jumps", ex_jumps, 692 TRLBAR|CMDWIN, 693 ADDR_LINES), 694 EX(CMD_k, "k", ex_mark, 695 RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN, 696 ADDR_LINES), 697 EX(CMD_keepmarks, "keepmarks", ex_wrongmodifier, 698 NEEDARG|EXTRA|NOTRLCOM, 699 ADDR_LINES), 700 EX(CMD_keepjumps, "keepjumps", ex_wrongmodifier, 701 NEEDARG|EXTRA|NOTRLCOM, 702 ADDR_LINES), 703 EX(CMD_keeppatterns, "keeppatterns", ex_wrongmodifier, 704 NEEDARG|EXTRA|NOTRLCOM, 705 ADDR_LINES), 706 EX(CMD_keepalt, "keepalt", ex_wrongmodifier, 707 NEEDARG|EXTRA|NOTRLCOM, 708 ADDR_LINES), 709 EX(CMD_list, "list", ex_print, 710 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, 711 ADDR_LINES), 712 EX(CMD_lNext, "lNext", ex_cnext, 713 RANGE|NOTADR|COUNT|TRLBAR|BANG, 714 ADDR_LINES), 715 EX(CMD_lNfile, "lNfile", ex_cnext, 716 RANGE|NOTADR|COUNT|TRLBAR|BANG, 717 ADDR_LINES), 718 EX(CMD_last, "last", ex_last, 719 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 720 ADDR_LINES), 721 EX(CMD_language, "language", ex_language, 722 EXTRA|TRLBAR|CMDWIN, 723 ADDR_LINES), 724 EX(CMD_laddexpr, "laddexpr", ex_cexpr, 725 NEEDARG|WORD1|NOTRLCOM|TRLBAR, 726 ADDR_LINES), 727 EX(CMD_laddbuffer, "laddbuffer", ex_cbuffer, 728 RANGE|NOTADR|WORD1|TRLBAR, 729 ADDR_LINES), 730 EX(CMD_laddfile, "laddfile", ex_cfile, 731 TRLBAR|FILE1, 732 ADDR_LINES), 733 EX(CMD_later, "later", ex_later, 734 TRLBAR|EXTRA|NOSPC|CMDWIN, 735 ADDR_LINES), 736 EX(CMD_lbuffer, "lbuffer", ex_cbuffer, 737 BANG|RANGE|NOTADR|WORD1|TRLBAR, 738 ADDR_LINES), 739 EX(CMD_lbottom, "lbottom", ex_cbottom, 740 TRLBAR, 741 ADDR_LINES), 742 EX(CMD_lcd, "lcd", ex_cd, 743 BANG|FILE1|TRLBAR|CMDWIN, 744 ADDR_LINES), 745 EX(CMD_lchdir, "lchdir", ex_cd, 746 BANG|FILE1|TRLBAR|CMDWIN, 747 ADDR_LINES), 748 EX(CMD_lclose, "lclose", ex_cclose, 749 RANGE|NOTADR|COUNT|TRLBAR, 750 ADDR_LINES), 751 EX(CMD_lcscope, "lcscope", ex_cscope, 752 EXTRA|NOTRLCOM|XFILE, 753 ADDR_LINES), 754 EX(CMD_ldo, "ldo", ex_listdo, 755 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 756 ADDR_QUICKFIX), 757 EX(CMD_left, "left", ex_align, 758 TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, 759 ADDR_LINES), 760 EX(CMD_leftabove, "leftabove", ex_wrongmodifier, 761 NEEDARG|EXTRA|NOTRLCOM, 762 ADDR_LINES), 763 EX(CMD_let, "let", ex_let, 764 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 765 ADDR_LINES), 766 EX(CMD_lexpr, "lexpr", ex_cexpr, 767 NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG, 768 ADDR_LINES), 769 EX(CMD_lfile, "lfile", ex_cfile, 770 TRLBAR|FILE1|BANG, 771 ADDR_LINES), 772 EX(CMD_lfdo, "lfdo", ex_listdo, 773 BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 774 ADDR_QUICKFIX), 775 EX(CMD_lfirst, "lfirst", ex_cc, 776 RANGE|NOTADR|COUNT|TRLBAR|BANG, 777 ADDR_LINES), 778 EX(CMD_lgetfile, "lgetfile", ex_cfile, 779 TRLBAR|FILE1, 780 ADDR_LINES), 781 EX(CMD_lgetbuffer, "lgetbuffer", ex_cbuffer, 782 RANGE|NOTADR|WORD1|TRLBAR, 783 ADDR_LINES), 784 EX(CMD_lgetexpr, "lgetexpr", ex_cexpr, 785 NEEDARG|WORD1|NOTRLCOM|TRLBAR, 786 ADDR_LINES), 787 EX(CMD_lgrep, "lgrep", ex_make, 788 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 789 ADDR_LINES), 790 EX(CMD_lgrepadd, "lgrepadd", ex_make, 791 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 792 ADDR_LINES), 793 EX(CMD_lhelpgrep, "lhelpgrep", ex_helpgrep, 794 EXTRA|NOTRLCOM|NEEDARG, 795 ADDR_LINES), 796 EX(CMD_lhistory, "lhistory", qf_history, 797 TRLBAR, 798 ADDR_LINES), 799 EX(CMD_ll, "ll", ex_cc, 800 RANGE|NOTADR|COUNT|TRLBAR|BANG, 801 ADDR_LINES), 802 EX(CMD_llast, "llast", ex_cc, 803 RANGE|NOTADR|COUNT|TRLBAR|BANG, 804 ADDR_LINES), 805 EX(CMD_llist, "llist", qf_list, 806 BANG|EXTRA|TRLBAR|CMDWIN, 807 ADDR_LINES), 808 EX(CMD_lmap, "lmap", ex_map, 809 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 810 ADDR_LINES), 811 EX(CMD_lmapclear, "lmapclear", ex_mapclear, 812 EXTRA|TRLBAR|CMDWIN, 813 ADDR_LINES), 814 EX(CMD_lmake, "lmake", ex_make, 815 BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 816 ADDR_LINES), 817 EX(CMD_lnoremap, "lnoremap", ex_map, 818 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 819 ADDR_LINES), 820 EX(CMD_lnext, "lnext", ex_cnext, 821 RANGE|NOTADR|COUNT|TRLBAR|BANG, 822 ADDR_LINES), 823 EX(CMD_lnewer, "lnewer", qf_age, 824 RANGE|NOTADR|COUNT|TRLBAR, 825 ADDR_LINES), 826 EX(CMD_lnfile, "lnfile", ex_cnext, 827 RANGE|NOTADR|COUNT|TRLBAR|BANG, 828 ADDR_LINES), 829 EX(CMD_loadview, "loadview", ex_loadview, 830 FILE1|TRLBAR, 831 ADDR_LINES), 832 EX(CMD_loadkeymap, "loadkeymap", ex_loadkeymap, 833 CMDWIN, 834 ADDR_LINES), 835 EX(CMD_lockmarks, "lockmarks", ex_wrongmodifier, 836 NEEDARG|EXTRA|NOTRLCOM, 837 ADDR_LINES), 838 EX(CMD_lockvar, "lockvar", ex_lockvar, 839 BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, 840 ADDR_LINES), 841 EX(CMD_lolder, "lolder", qf_age, 842 RANGE|NOTADR|COUNT|TRLBAR, 843 ADDR_LINES), 844 EX(CMD_lopen, "lopen", ex_copen, 845 RANGE|NOTADR|COUNT|TRLBAR, 846 ADDR_LINES), 847 EX(CMD_lprevious, "lprevious", ex_cnext, 848 RANGE|NOTADR|COUNT|TRLBAR|BANG, 849 ADDR_LINES), 850 EX(CMD_lpfile, "lpfile", ex_cnext, 851 RANGE|NOTADR|COUNT|TRLBAR|BANG, 852 ADDR_LINES), 853 EX(CMD_lrewind, "lrewind", ex_cc, 854 RANGE|NOTADR|COUNT|TRLBAR|BANG, 855 ADDR_LINES), 856 EX(CMD_ltag, "ltag", ex_tag, 857 NOTADR|TRLBAR|BANG|WORD1, 858 ADDR_LINES), 859 EX(CMD_lunmap, "lunmap", ex_unmap, 860 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 861 ADDR_LINES), 862 EX(CMD_lua, "lua", ex_lua, 863 RANGE|EXTRA|NEEDARG|CMDWIN, 864 ADDR_LINES), 865 EX(CMD_luado, "luado", ex_luado, 866 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 867 ADDR_LINES), 868 EX(CMD_luafile, "luafile", ex_luafile, 869 RANGE|FILE1|NEEDARG|CMDWIN, 870 ADDR_LINES), 871 EX(CMD_lvimgrep, "lvimgrep", ex_vimgrep, 872 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 873 ADDR_LINES), 874 EX(CMD_lvimgrepadd, "lvimgrepadd", ex_vimgrep, 875 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 876 ADDR_LINES), 877 EX(CMD_lwindow, "lwindow", ex_cwindow, 878 RANGE|NOTADR|COUNT|TRLBAR, 879 ADDR_LINES), 880 EX(CMD_ls, "ls", buflist_list, 881 BANG|EXTRA|TRLBAR|CMDWIN, 882 ADDR_LINES), 883 EX(CMD_move, "move", ex_copymove, 884 RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, 885 ADDR_LINES), 886 EX(CMD_mark, "mark", ex_mark, 887 RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN, 888 ADDR_LINES), 889 EX(CMD_make, "make", ex_make, 890 BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 891 ADDR_LINES), 892 EX(CMD_map, "map", ex_map, 893 BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 894 ADDR_LINES), 895 EX(CMD_mapclear, "mapclear", ex_mapclear, 896 EXTRA|BANG|TRLBAR|CMDWIN, 897 ADDR_LINES), 898 EX(CMD_marks, "marks", do_marks, 899 EXTRA|TRLBAR|CMDWIN, 900 ADDR_LINES), 901 EX(CMD_match, "match", ex_match, 902 RANGE|NOTADR|EXTRA|CMDWIN, 903 ADDR_LINES), 904 EX(CMD_menu, "menu", ex_menu, 905 RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 906 ADDR_LINES), 907 EX(CMD_menutranslate, "menutranslate", ex_menutranslate, 908 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 909 ADDR_LINES), 910 EX(CMD_messages, "messages", ex_messages, 911 EXTRA|TRLBAR|RANGE|CMDWIN, 912 ADDR_OTHER), 913 EX(CMD_mkexrc, "mkexrc", ex_mkrc, 914 BANG|FILE1|TRLBAR|CMDWIN, 915 ADDR_LINES), 916 EX(CMD_mksession, "mksession", ex_mkrc, 917 BANG|FILE1|TRLBAR, 918 ADDR_LINES), 919 EX(CMD_mkspell, "mkspell", ex_mkspell, 920 BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 921 ADDR_LINES), 922 EX(CMD_mkvimrc, "mkvimrc", ex_mkrc, 923 BANG|FILE1|TRLBAR|CMDWIN, 924 ADDR_LINES), 925 EX(CMD_mkview, "mkview", ex_mkrc, 926 BANG|FILE1|TRLBAR, 927 ADDR_LINES), 928 EX(CMD_mode, "mode", ex_mode, 929 WORD1|TRLBAR|CMDWIN, 930 ADDR_LINES), 931 EX(CMD_mzscheme, "mzscheme", ex_mzscheme, 932 RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN|SBOXOK, 933 ADDR_LINES), 934 EX(CMD_mzfile, "mzfile", ex_mzfile, 935 RANGE|FILE1|NEEDARG|CMDWIN, 936 ADDR_LINES), 937 EX(CMD_next, "next", ex_next, 938 RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR, 939 ADDR_LINES), 940 EX(CMD_nbkey, "nbkey", ex_nbkey, 941 EXTRA|NOTADR|NEEDARG, 942 ADDR_LINES), 943 EX(CMD_nbclose, "nbclose", ex_nbclose, 944 TRLBAR|CMDWIN, 945 ADDR_LINES), 946 EX(CMD_nbstart, "nbstart", ex_nbstart, 947 WORD1|TRLBAR|CMDWIN, 948 ADDR_LINES), 949 EX(CMD_new, "new", ex_splitview, 950 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 951 ADDR_LINES), 952 EX(CMD_nmap, "nmap", ex_map, 953 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 954 ADDR_LINES), 955 EX(CMD_nmapclear, "nmapclear", ex_mapclear, 956 EXTRA|TRLBAR|CMDWIN, 957 ADDR_LINES), 958 EX(CMD_nmenu, "nmenu", ex_menu, 959 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 960 ADDR_LINES), 961 EX(CMD_nnoremap, "nnoremap", ex_map, 962 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 963 ADDR_LINES), 964 EX(CMD_nnoremenu, "nnoremenu", ex_menu, 965 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 966 ADDR_LINES), 967 EX(CMD_noremap, "noremap", ex_map, 968 BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 969 ADDR_LINES), 970 EX(CMD_noautocmd, "noautocmd", ex_wrongmodifier, 971 NEEDARG|EXTRA|NOTRLCOM, 972 ADDR_LINES), 973 EX(CMD_nohlsearch, "nohlsearch", ex_nohlsearch, 974 TRLBAR|SBOXOK|CMDWIN, 975 ADDR_LINES), 976 EX(CMD_noreabbrev, "noreabbrev", ex_abbreviate, 977 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 978 ADDR_LINES), 979 EX(CMD_noremenu, "noremenu", ex_menu, 980 RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 981 ADDR_LINES), 982 EX(CMD_noswapfile, "noswapfile", ex_wrongmodifier, 983 NEEDARG|EXTRA|NOTRLCOM, 984 ADDR_LINES), 985 EX(CMD_normal, "normal", ex_normal, 986 RANGE|BANG|EXTRA|NEEDARG|NOTRLCOM|USECTRLV|SBOXOK|CMDWIN, 987 ADDR_LINES), 988 EX(CMD_number, "number", ex_print, 989 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, 990 ADDR_LINES), 991 EX(CMD_nunmap, "nunmap", ex_unmap, 992 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 993 ADDR_LINES), 994 EX(CMD_nunmenu, "nunmenu", ex_menu, 995 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 996 ADDR_LINES), 997 EX(CMD_open, "open", ex_open, 998 RANGE|BANG|EXTRA, 999 ADDR_LINES), 1000 EX(CMD_oldfiles, "oldfiles", ex_oldfiles, 1001 BANG|TRLBAR|SBOXOK|CMDWIN, 1002 ADDR_LINES), 1003 EX(CMD_omap, "omap", ex_map, 1004 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1005 ADDR_LINES), 1006 EX(CMD_omapclear, "omapclear", ex_mapclear, 1007 EXTRA|TRLBAR|CMDWIN, 1008 ADDR_LINES), 1009 EX(CMD_omenu, "omenu", ex_menu, 1010 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1011 ADDR_LINES), 1012 EX(CMD_only, "only", ex_only, 1013 BANG|NOTADR|RANGE|COUNT|TRLBAR, 1014 ADDR_WINDOWS), 1015 EX(CMD_onoremap, "onoremap", ex_map, 1016 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1017 ADDR_LINES), 1018 EX(CMD_onoremenu, "onoremenu", ex_menu, 1019 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1020 ADDR_LINES), 1021 EX(CMD_options, "options", ex_options, 1022 TRLBAR, 1023 ADDR_LINES), 1024 EX(CMD_ounmap, "ounmap", ex_unmap, 1025 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1026 ADDR_LINES), 1027 EX(CMD_ounmenu, "ounmenu", ex_menu, 1028 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1029 ADDR_LINES), 1030 EX(CMD_ownsyntax, "ownsyntax", ex_ownsyntax, 1031 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 1032 ADDR_LINES), 1033 EX(CMD_print, "print", ex_print, 1034 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|SBOXOK, 1035 ADDR_LINES), 1036 EX(CMD_packadd, "packadd", ex_packadd, 1037 BANG|FILE1|NEEDARG|TRLBAR|SBOXOK|CMDWIN, 1038 ADDR_LINES), 1039 EX(CMD_packloadall, "packloadall", ex_packloadall, 1040 BANG|TRLBAR|SBOXOK|CMDWIN, 1041 ADDR_LINES), 1042 EX(CMD_pclose, "pclose", ex_pclose, 1043 BANG|TRLBAR, 1044 ADDR_LINES), 1045 EX(CMD_perl, "perl", ex_perl, 1046 RANGE|EXTRA|DFLALL|NEEDARG|SBOXOK|CMDWIN, 1047 ADDR_LINES), 1048 EX(CMD_perldo, "perldo", ex_perldo, 1049 RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN, 1050 ADDR_LINES), 1051 EX(CMD_pedit, "pedit", ex_pedit, 1052 BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 1053 ADDR_LINES), 1054 EX(CMD_pop, "pop", ex_tag, 1055 RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR, 1056 ADDR_LINES), 1057 EX(CMD_popup, "popup", ex_popup, 1058 NEEDARG|EXTRA|BANG|TRLBAR|NOTRLCOM|CMDWIN, 1059 ADDR_LINES), 1060 EX(CMD_ppop, "ppop", ex_ptag, 1061 RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR, 1062 ADDR_LINES), 1063 EX(CMD_preserve, "preserve", ex_preserve, 1064 TRLBAR, 1065 ADDR_LINES), 1066 EX(CMD_previous, "previous", ex_previous, 1067 EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, 1068 ADDR_LINES), 1069 EX(CMD_promptfind, "promptfind", gui_mch_find_dialog, 1070 EXTRA|NOTRLCOM|CMDWIN, 1071 ADDR_LINES), 1072 EX(CMD_promptrepl, "promptrepl", gui_mch_replace_dialog, 1073 EXTRA|NOTRLCOM|CMDWIN, 1074 ADDR_LINES), 1075 EX(CMD_profile, "profile", ex_profile, 1076 BANG|EXTRA|TRLBAR|CMDWIN, 1077 ADDR_LINES), 1078 EX(CMD_profdel, "profdel", ex_breakdel, 1079 EXTRA|TRLBAR|CMDWIN, 1080 ADDR_LINES), 1081 EX(CMD_psearch, "psearch", ex_psearch, 1082 BANG|RANGE|WHOLEFOLD|DFLALL|EXTRA, 1083 ADDR_LINES), 1084 EX(CMD_ptag, "ptag", ex_ptag, 1085 RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR, 1086 ADDR_LINES), 1087 EX(CMD_ptNext, "ptNext", ex_ptag, 1088 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1089 ADDR_LINES), 1090 EX(CMD_ptfirst, "ptfirst", ex_ptag, 1091 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1092 ADDR_LINES), 1093 EX(CMD_ptjump, "ptjump", ex_ptag, 1094 BANG|TRLBAR|WORD1, 1095 ADDR_LINES), 1096 EX(CMD_ptlast, "ptlast", ex_ptag, 1097 BANG|TRLBAR, 1098 ADDR_LINES), 1099 EX(CMD_ptnext, "ptnext", ex_ptag, 1100 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1101 ADDR_LINES), 1102 EX(CMD_ptprevious, "ptprevious", ex_ptag, 1103 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1104 ADDR_LINES), 1105 EX(CMD_ptrewind, "ptrewind", ex_ptag, 1106 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1107 ADDR_LINES), 1108 EX(CMD_ptselect, "ptselect", ex_ptag, 1109 BANG|TRLBAR|WORD1, 1110 ADDR_LINES), 1111 EX(CMD_put, "put", ex_put, 1112 RANGE|WHOLEFOLD|BANG|REGSTR|TRLBAR|ZEROR|CMDWIN|MODIFY, 1113 ADDR_LINES), 1114 EX(CMD_pwd, "pwd", ex_pwd, 1115 TRLBAR|CMDWIN, 1116 ADDR_LINES), 1117 EX(CMD_python, "python", ex_python, 1118 RANGE|EXTRA|NEEDARG|CMDWIN, 1119 ADDR_LINES), 1120 EX(CMD_pydo, "pydo", ex_pydo, 1121 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 1122 ADDR_LINES), 1123 EX(CMD_pyfile, "pyfile", ex_pyfile, 1124 RANGE|FILE1|NEEDARG|CMDWIN, 1125 ADDR_LINES), 1126 EX(CMD_py3, "py3", ex_py3, 1127 RANGE|EXTRA|NEEDARG|CMDWIN, 1128 ADDR_LINES), 1129 EX(CMD_py3do, "py3do", ex_py3do, 1130 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 1131 ADDR_LINES), 1132 EX(CMD_python3, "python3", ex_py3, 1133 RANGE|EXTRA|NEEDARG|CMDWIN, 1134 ADDR_LINES), 1135 EX(CMD_py3file, "py3file", ex_py3file, 1136 RANGE|FILE1|NEEDARG|CMDWIN, 1137 ADDR_LINES), 1138 EX(CMD_pyx, "pyx", ex_pyx, 1139 RANGE|EXTRA|NEEDARG|CMDWIN, 1140 ADDR_LINES), 1141 EX(CMD_pyxdo, "pyxdo", ex_pyxdo, 1142 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 1143 ADDR_LINES), 1144 EX(CMD_pythonx, "pythonx", ex_pyx, 1145 RANGE|EXTRA|NEEDARG|CMDWIN, 1146 ADDR_LINES), 1147 EX(CMD_pyxfile, "pyxfile", ex_pyxfile, 1148 RANGE|FILE1|NEEDARG|CMDWIN, 1149 ADDR_LINES), 1150 EX(CMD_quit, "quit", ex_quit, 1151 BANG|RANGE|COUNT|NOTADR|TRLBAR|CMDWIN, 1152 ADDR_WINDOWS), 1153 EX(CMD_quitall, "quitall", ex_quit_all, 1154 BANG|TRLBAR, 1155 ADDR_LINES), 1156 EX(CMD_qall, "qall", ex_quit_all, 1157 BANG|TRLBAR|CMDWIN, 1158 ADDR_LINES), 1159 EX(CMD_read, "read", ex_read, 1160 BANG|RANGE|WHOLEFOLD|FILE1|ARGOPT|TRLBAR|ZEROR|CMDWIN|MODIFY, 1161 ADDR_LINES), 1162 EX(CMD_recover, "recover", ex_recover, 1163 BANG|FILE1|TRLBAR, 1164 ADDR_LINES), 1165 EX(CMD_redo, "redo", ex_redo, 1166 TRLBAR|CMDWIN, 1167 ADDR_LINES), 1168 EX(CMD_redir, "redir", ex_redir, 1169 BANG|FILES|TRLBAR|CMDWIN, 1170 ADDR_LINES), 1171 EX(CMD_redraw, "redraw", ex_redraw, 1172 BANG|TRLBAR|CMDWIN, 1173 ADDR_LINES), 1174 EX(CMD_redrawstatus, "redrawstatus", ex_redrawstatus, 1175 BANG|TRLBAR|CMDWIN, 1176 ADDR_LINES), 1177 EX(CMD_registers, "registers", ex_display, 1178 EXTRA|NOTRLCOM|TRLBAR|CMDWIN, 1179 ADDR_LINES), 1180 EX(CMD_resize, "resize", ex_resize, 1181 RANGE|NOTADR|TRLBAR|WORD1|CMDWIN, 1182 ADDR_LINES), 1183 EX(CMD_retab, "retab", ex_retab, 1184 TRLBAR|RANGE|WHOLEFOLD|DFLALL|BANG|WORD1|CMDWIN|MODIFY, 1185 ADDR_LINES), 1186 EX(CMD_return, "return", ex_return, 1187 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 1188 ADDR_LINES), 1189 EX(CMD_rewind, "rewind", ex_rewind, 1190 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 1191 ADDR_LINES), 1192 EX(CMD_right, "right", ex_align, 1193 TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, 1194 ADDR_LINES), 1195 EX(CMD_rightbelow, "rightbelow", ex_wrongmodifier, 1196 NEEDARG|EXTRA|NOTRLCOM, 1197 ADDR_LINES), 1198 EX(CMD_runtime, "runtime", ex_runtime, 1199 BANG|NEEDARG|FILES|TRLBAR|SBOXOK|CMDWIN, 1200 ADDR_LINES), 1201 EX(CMD_ruby, "ruby", ex_ruby, 1202 RANGE|EXTRA|NEEDARG|CMDWIN, 1203 ADDR_LINES), 1204 EX(CMD_rubydo, "rubydo", ex_rubydo, 1205 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 1206 ADDR_LINES), 1207 EX(CMD_rubyfile, "rubyfile", ex_rubyfile, 1208 RANGE|FILE1|NEEDARG|CMDWIN, 1209 ADDR_LINES), 1210 EX(CMD_rundo, "rundo", ex_rundo, 1211 NEEDARG|FILE1, 1212 ADDR_LINES), 1213 EX(CMD_rviminfo, "rviminfo", ex_viminfo, 1214 BANG|FILE1|TRLBAR|CMDWIN, 1215 ADDR_LINES), 1216 EX(CMD_substitute, "substitute", do_sub, 1217 RANGE|WHOLEFOLD|EXTRA|CMDWIN, 1218 ADDR_LINES), 1219 EX(CMD_sNext, "sNext", ex_previous, 1220 EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, 1221 ADDR_LINES), 1222 EX(CMD_sargument, "sargument", ex_argument, 1223 BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR, 1224 ADDR_ARGUMENTS), 1225 EX(CMD_sall, "sall", ex_all, 1226 BANG|RANGE|NOTADR|COUNT|TRLBAR, 1227 ADDR_LINES), 1228 EX(CMD_sandbox, "sandbox", ex_wrongmodifier, 1229 NEEDARG|EXTRA|NOTRLCOM, 1230 ADDR_LINES), 1231 EX(CMD_saveas, "saveas", ex_write, 1232 BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR, 1233 ADDR_LINES), 1234 EX(CMD_sbuffer, "sbuffer", ex_buffer, 1235 BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR, 1236 ADDR_BUFFERS), 1237 EX(CMD_sbNext, "sbNext", ex_bprevious, 1238 RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 1239 ADDR_LINES), 1240 EX(CMD_sball, "sball", ex_buffer_all, 1241 RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 1242 ADDR_LINES), 1243 EX(CMD_sbfirst, "sbfirst", ex_brewind, 1244 EDITCMD|TRLBAR, 1245 ADDR_LINES), 1246 EX(CMD_sblast, "sblast", ex_blast, 1247 EDITCMD|TRLBAR, 1248 ADDR_LINES), 1249 EX(CMD_sbmodified, "sbmodified", ex_bmodified, 1250 RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 1251 ADDR_LINES), 1252 EX(CMD_sbnext, "sbnext", ex_bnext, 1253 RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 1254 ADDR_LINES), 1255 EX(CMD_sbprevious, "sbprevious", ex_bprevious, 1256 RANGE|NOTADR|COUNT|EDITCMD|TRLBAR, 1257 ADDR_LINES), 1258 EX(CMD_sbrewind, "sbrewind", ex_brewind, 1259 EDITCMD|TRLBAR, 1260 ADDR_LINES), 1261 EX(CMD_scriptnames, "scriptnames", ex_scriptnames, 1262 TRLBAR|CMDWIN, 1263 ADDR_LINES), 1264 EX(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, 1265 WORD1|TRLBAR|CMDWIN, 1266 ADDR_LINES), 1267 EX(CMD_scscope, "scscope", ex_scscope, 1268 EXTRA|NOTRLCOM, 1269 ADDR_LINES), 1270 EX(CMD_set, "set", ex_set, 1271 TRLBAR|EXTRA|CMDWIN|SBOXOK, 1272 ADDR_LINES), 1273 EX(CMD_setfiletype, "setfiletype", ex_setfiletype, 1274 TRLBAR|EXTRA|NEEDARG|CMDWIN, 1275 ADDR_LINES), 1276 EX(CMD_setglobal, "setglobal", ex_set, 1277 TRLBAR|EXTRA|CMDWIN|SBOXOK, 1278 ADDR_LINES), 1279 EX(CMD_setlocal, "setlocal", ex_set, 1280 TRLBAR|EXTRA|CMDWIN|SBOXOK, 1281 ADDR_LINES), 1282 EX(CMD_sfind, "sfind", ex_splitview, 1283 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 1284 ADDR_LINES), 1285 EX(CMD_sfirst, "sfirst", ex_rewind, 1286 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 1287 ADDR_LINES), 1288 EX(CMD_shell, "shell", ex_shell, 1289 TRLBAR|CMDWIN, 1290 ADDR_LINES), 1291 EX(CMD_simalt, "simalt", ex_simalt, 1292 NEEDARG|WORD1|TRLBAR|CMDWIN, 1293 ADDR_LINES), 1294 EX(CMD_sign, "sign", ex_sign, 1295 NEEDARG|RANGE|NOTADR|EXTRA|CMDWIN, 1296 ADDR_LINES), 1297 EX(CMD_silent, "silent", ex_wrongmodifier, 1298 NEEDARG|EXTRA|BANG|NOTRLCOM|SBOXOK|CMDWIN, 1299 ADDR_LINES), 1300 EX(CMD_sleep, "sleep", ex_sleep, 1301 RANGE|NOTADR|COUNT|EXTRA|TRLBAR|CMDWIN, 1302 ADDR_LINES), 1303 EX(CMD_slast, "slast", ex_last, 1304 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 1305 ADDR_LINES), 1306 EX(CMD_smagic, "smagic", ex_submagic, 1307 RANGE|WHOLEFOLD|EXTRA|CMDWIN, 1308 ADDR_LINES), 1309 EX(CMD_smap, "smap", ex_map, 1310 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1311 ADDR_LINES), 1312 EX(CMD_smapclear, "smapclear", ex_mapclear, 1313 EXTRA|TRLBAR|CMDWIN, 1314 ADDR_LINES), 1315 EX(CMD_smenu, "smenu", ex_menu, 1316 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1317 ADDR_LINES), 1318 EX(CMD_snext, "snext", ex_next, 1319 RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR, 1320 ADDR_LINES), 1321 EX(CMD_snomagic, "snomagic", ex_submagic, 1322 RANGE|WHOLEFOLD|EXTRA|CMDWIN, 1323 ADDR_LINES), 1324 EX(CMD_snoremap, "snoremap", ex_map, 1325 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1326 ADDR_LINES), 1327 EX(CMD_snoremenu, "snoremenu", ex_menu, 1328 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1329 ADDR_LINES), 1330 EX(CMD_source, "source", ex_source, 1331 BANG|FILE1|TRLBAR|SBOXOK|CMDWIN, 1332 ADDR_LINES), 1333 EX(CMD_sort, "sort", ex_sort, 1334 RANGE|DFLALL|WHOLEFOLD|BANG|EXTRA|NOTRLCOM|MODIFY, 1335 ADDR_LINES), 1336 EX(CMD_split, "split", ex_splitview, 1337 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 1338 ADDR_LINES), 1339 EX(CMD_spellgood, "spellgood", ex_spell, 1340 BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR, 1341 ADDR_LINES), 1342 EX(CMD_spelldump, "spelldump", ex_spelldump, 1343 BANG|TRLBAR, 1344 ADDR_LINES), 1345 EX(CMD_spellinfo, "spellinfo", ex_spellinfo, 1346 TRLBAR, 1347 ADDR_LINES), 1348 EX(CMD_spellrepall, "spellrepall", ex_spellrepall, 1349 TRLBAR, 1350 ADDR_LINES), 1351 EX(CMD_spellundo, "spellundo", ex_spell, 1352 BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR, 1353 ADDR_LINES), 1354 EX(CMD_spellwrong, "spellwrong", ex_spell, 1355 BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR, 1356 ADDR_LINES), 1357 EX(CMD_sprevious, "sprevious", ex_previous, 1358 EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, 1359 ADDR_LINES), 1360 EX(CMD_srewind, "srewind", ex_rewind, 1361 EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, 1362 ADDR_LINES), 1363 EX(CMD_stop, "stop", ex_stop, 1364 TRLBAR|BANG|CMDWIN, 1365 ADDR_LINES), 1366 EX(CMD_stag, "stag", ex_stag, 1367 RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR, 1368 ADDR_LINES), 1369 EX(CMD_startinsert, "startinsert", ex_startinsert, 1370 BANG|TRLBAR|CMDWIN, 1371 ADDR_LINES), 1372 EX(CMD_startgreplace, "startgreplace", ex_startinsert, 1373 BANG|TRLBAR|CMDWIN, 1374 ADDR_LINES), 1375 EX(CMD_startreplace, "startreplace", ex_startinsert, 1376 BANG|TRLBAR|CMDWIN, 1377 ADDR_LINES), 1378 EX(CMD_stopinsert, "stopinsert", ex_stopinsert, 1379 BANG|TRLBAR|CMDWIN, 1380 ADDR_LINES), 1381 EX(CMD_stjump, "stjump", ex_stag, 1382 BANG|TRLBAR|WORD1, 1383 ADDR_LINES), 1384 EX(CMD_stselect, "stselect", ex_stag, 1385 BANG|TRLBAR|WORD1, 1386 ADDR_LINES), 1387 EX(CMD_sunhide, "sunhide", ex_buffer_all, 1388 RANGE|NOTADR|COUNT|TRLBAR, 1389 ADDR_LINES), 1390 EX(CMD_sunmap, "sunmap", ex_unmap, 1391 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1392 ADDR_LINES), 1393 EX(CMD_sunmenu, "sunmenu", ex_menu, 1394 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1395 ADDR_LINES), 1396 EX(CMD_suspend, "suspend", ex_stop, 1397 TRLBAR|BANG|CMDWIN, 1398 ADDR_LINES), 1399 EX(CMD_sview, "sview", ex_splitview, 1400 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 1401 ADDR_LINES), 1402 EX(CMD_swapname, "swapname", ex_swapname, 1403 TRLBAR|CMDWIN, 1404 ADDR_LINES), 1405 EX(CMD_syntax, "syntax", ex_syntax, 1406 EXTRA|NOTRLCOM|CMDWIN, 1407 ADDR_LINES), 1408 EX(CMD_syntime, "syntime", ex_syntime, 1409 NEEDARG|WORD1|TRLBAR|CMDWIN, 1410 ADDR_LINES), 1411 EX(CMD_syncbind, "syncbind", ex_syncbind, 1412 TRLBAR, 1413 ADDR_LINES), 1414 EX(CMD_smile, "smile", ex_smile, 1415 TRLBAR|CMDWIN|SBOXOK, 1416 ADDR_LINES), 1417 EX(CMD_t, "t", ex_copymove, 1418 RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, 1419 ADDR_LINES), 1420 EX(CMD_tNext, "tNext", ex_tag, 1421 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1422 ADDR_LINES), 1423 EX(CMD_tag, "tag", ex_tag, 1424 RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR, 1425 ADDR_LINES), 1426 EX(CMD_tags, "tags", do_tags, 1427 TRLBAR|CMDWIN, 1428 ADDR_LINES), 1429 EX(CMD_tab, "tab", ex_wrongmodifier, 1430 NEEDARG|EXTRA|NOTRLCOM, 1431 ADDR_TABS), 1432 EX(CMD_tabclose, "tabclose", ex_tabclose, 1433 BANG|RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR|CMDWIN, 1434 ADDR_TABS), 1435 EX(CMD_tabdo, "tabdo", ex_listdo, 1436 NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 1437 ADDR_TABS), 1438 EX(CMD_tabedit, "tabedit", ex_splitview, 1439 BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR, 1440 ADDR_TABS), 1441 EX(CMD_tabfind, "tabfind", ex_splitview, 1442 BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|NEEDARG|TRLBAR, 1443 ADDR_TABS), 1444 EX(CMD_tabfirst, "tabfirst", ex_tabnext, 1445 TRLBAR, 1446 ADDR_TABS), 1447 EX(CMD_tabmove, "tabmove", ex_tabmove, 1448 RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR, 1449 ADDR_TABS), 1450 EX(CMD_tablast, "tablast", ex_tabnext, 1451 TRLBAR, 1452 ADDR_TABS), 1453 EX(CMD_tabnext, "tabnext", ex_tabnext, 1454 RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR, 1455 ADDR_TABS), 1456 EX(CMD_tabnew, "tabnew", ex_splitview, 1457 BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR, 1458 ADDR_TABS), 1459 EX(CMD_tabonly, "tabonly", ex_tabonly, 1460 BANG|RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR|CMDWIN, 1461 ADDR_TABS), 1462 EX(CMD_tabprevious, "tabprevious", ex_tabnext, 1463 RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR, 1464 ADDR_TABS_RELATIVE), 1465 EX(CMD_tabNext, "tabNext", ex_tabnext, 1466 RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR, 1467 ADDR_TABS_RELATIVE), 1468 EX(CMD_tabrewind, "tabrewind", ex_tabnext, 1469 TRLBAR, 1470 ADDR_TABS), 1471 EX(CMD_tabs, "tabs", ex_tabs, 1472 TRLBAR|CMDWIN, 1473 ADDR_TABS), 1474 EX(CMD_tcl, "tcl", ex_tcl, 1475 RANGE|EXTRA|NEEDARG|CMDWIN, 1476 ADDR_LINES), 1477 EX(CMD_tcldo, "tcldo", ex_tcldo, 1478 RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN, 1479 ADDR_LINES), 1480 EX(CMD_tclfile, "tclfile", ex_tclfile, 1481 RANGE|FILE1|NEEDARG|CMDWIN, 1482 ADDR_LINES), 1483 EX(CMD_tearoff, "tearoff", ex_tearoff, 1484 NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN, 1485 ADDR_LINES), 1486 EX(CMD_terminal, "terminal", ex_terminal, 1487 RANGE|NOTADR|FILES|TRLBAR|CMDWIN, 1488 ADDR_OTHER), 1489 EX(CMD_tfirst, "tfirst", ex_tag, 1490 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1491 ADDR_LINES), 1492 EX(CMD_throw, "throw", ex_throw, 1493 EXTRA|NEEDARG|SBOXOK|CMDWIN, 1494 ADDR_LINES), 1495 EX(CMD_tjump, "tjump", ex_tag, 1496 BANG|TRLBAR|WORD1, 1497 ADDR_LINES), 1498 EX(CMD_tlast, "tlast", ex_tag, 1499 BANG|TRLBAR, 1500 ADDR_LINES), 1501 EX(CMD_tmenu, "tmenu", ex_menu, 1502 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1503 ADDR_LINES), 1504 EX(CMD_tnext, "tnext", ex_tag, 1505 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1506 ADDR_LINES), 1507 EX(CMD_topleft, "topleft", ex_wrongmodifier, 1508 NEEDARG|EXTRA|NOTRLCOM, 1509 ADDR_LINES), 1510 EX(CMD_tprevious, "tprevious", ex_tag, 1511 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1512 ADDR_LINES), 1513 EX(CMD_trewind, "trewind", ex_tag, 1514 RANGE|NOTADR|BANG|TRLBAR|ZEROR, 1515 ADDR_LINES), 1516 EX(CMD_try, "try", ex_try, 1517 TRLBAR|SBOXOK|CMDWIN, 1518 ADDR_LINES), 1519 EX(CMD_tselect, "tselect", ex_tag, 1520 BANG|TRLBAR|WORD1, 1521 ADDR_LINES), 1522 EX(CMD_tunmenu, "tunmenu", ex_menu, 1523 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1524 ADDR_LINES), 1525 EX(CMD_undo, "undo", ex_undo, 1526 RANGE|NOTADR|COUNT|ZEROR|TRLBAR|CMDWIN, 1527 ADDR_LINES), 1528 EX(CMD_undojoin, "undojoin", ex_undojoin, 1529 TRLBAR|CMDWIN, 1530 ADDR_LINES), 1531 EX(CMD_undolist, "undolist", ex_undolist, 1532 TRLBAR|CMDWIN, 1533 ADDR_LINES), 1534 EX(CMD_unabbreviate, "unabbreviate", ex_abbreviate, 1535 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1536 ADDR_LINES), 1537 EX(CMD_unhide, "unhide", ex_buffer_all, 1538 RANGE|NOTADR|COUNT|TRLBAR, 1539 ADDR_LINES), 1540 EX(CMD_unlet, "unlet", ex_unlet, 1541 BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, 1542 ADDR_LINES), 1543 EX(CMD_unlockvar, "unlockvar", ex_lockvar, 1544 BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, 1545 ADDR_LINES), 1546 EX(CMD_unmap, "unmap", ex_unmap, 1547 BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1548 ADDR_LINES), 1549 EX(CMD_unmenu, "unmenu", ex_menu, 1550 BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1551 ADDR_LINES), 1552 EX(CMD_unsilent, "unsilent", ex_wrongmodifier, 1553 NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 1554 ADDR_LINES), 1555 EX(CMD_update, "update", ex_update, 1556 RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR, 1557 ADDR_LINES), 1558 EX(CMD_vglobal, "vglobal", ex_global, 1559 RANGE|WHOLEFOLD|EXTRA|DFLALL|CMDWIN, 1560 ADDR_LINES), 1561 EX(CMD_version, "version", ex_version, 1562 EXTRA|TRLBAR|CMDWIN, 1563 ADDR_LINES), 1564 EX(CMD_verbose, "verbose", ex_wrongmodifier, 1565 NEEDARG|RANGE|NOTADR|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 1566 ADDR_LINES), 1567 EX(CMD_vertical, "vertical", ex_wrongmodifier, 1568 NEEDARG|EXTRA|NOTRLCOM, 1569 ADDR_LINES), 1570 EX(CMD_visual, "visual", ex_edit, 1571 BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 1572 ADDR_LINES), 1573 EX(CMD_view, "view", ex_edit, 1574 BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, 1575 ADDR_LINES), 1576 EX(CMD_vimgrep, "vimgrep", ex_vimgrep, 1577 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 1578 ADDR_LINES), 1579 EX(CMD_vimgrepadd, "vimgrepadd", ex_vimgrep, 1580 RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, 1581 ADDR_LINES), 1582 EX(CMD_viusage, "viusage", ex_viusage, 1583 TRLBAR, 1584 ADDR_LINES), 1585 EX(CMD_vmap, "vmap", ex_map, 1586 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1587 ADDR_LINES), 1588 EX(CMD_vmapclear, "vmapclear", ex_mapclear, 1589 EXTRA|TRLBAR|CMDWIN, 1590 ADDR_LINES), 1591 EX(CMD_vmenu, "vmenu", ex_menu, 1592 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1593 ADDR_LINES), 1594 EX(CMD_vnoremap, "vnoremap", ex_map, 1595 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1596 ADDR_LINES), 1597 EX(CMD_vnew, "vnew", ex_splitview, 1598 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 1599 ADDR_LINES), 1600 EX(CMD_vnoremenu, "vnoremenu", ex_menu, 1601 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1602 ADDR_LINES), 1603 EX(CMD_vsplit, "vsplit", ex_splitview, 1604 BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR, 1605 ADDR_LINES), 1606 EX(CMD_vunmap, "vunmap", ex_unmap, 1607 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1608 ADDR_LINES), 1609 EX(CMD_vunmenu, "vunmenu", ex_menu, 1610 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1611 ADDR_LINES), 1612 EX(CMD_write, "write", ex_write, 1613 RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, 1614 ADDR_LINES), 1615 EX(CMD_wNext, "wNext", ex_wnext, 1616 RANGE|WHOLEFOLD|NOTADR|BANG|FILE1|ARGOPT|TRLBAR, 1617 ADDR_LINES), 1618 EX(CMD_wall, "wall", do_wqall, 1619 BANG|TRLBAR|CMDWIN, 1620 ADDR_LINES), 1621 EX(CMD_while, "while", ex_while, 1622 EXTRA|NOTRLCOM|SBOXOK|CMDWIN, 1623 ADDR_LINES), 1624 EX(CMD_winsize, "winsize", ex_winsize, 1625 EXTRA|NEEDARG|TRLBAR, 1626 ADDR_LINES), 1627 EX(CMD_wincmd, "wincmd", ex_wincmd, 1628 NEEDARG|WORD1|RANGE|NOTADR|CMDWIN, 1629 ADDR_WINDOWS), 1630 EX(CMD_windo, "windo", ex_listdo, 1631 NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL, 1632 ADDR_WINDOWS), 1633 EX(CMD_winpos, "winpos", ex_winpos, 1634 EXTRA|TRLBAR|CMDWIN, 1635 ADDR_LINES), 1636 EX(CMD_wnext, "wnext", ex_wnext, 1637 RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR, 1638 ADDR_LINES), 1639 EX(CMD_wprevious, "wprevious", ex_wnext, 1640 RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR, 1641 ADDR_LINES), 1642 EX(CMD_wq, "wq", ex_exit, 1643 RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR, 1644 ADDR_LINES), 1645 EX(CMD_wqall, "wqall", do_wqall, 1646 BANG|FILE1|ARGOPT|DFLALL|TRLBAR, 1647 ADDR_LINES), 1648 EX(CMD_wsverb, "wsverb", ex_wsverb, 1649 EXTRA|NOTADR|NEEDARG, 1650 ADDR_LINES), 1651 EX(CMD_wundo, "wundo", ex_wundo, 1652 BANG|NEEDARG|FILE1, 1653 ADDR_LINES), 1654 EX(CMD_wviminfo, "wviminfo", ex_viminfo, 1655 BANG|FILE1|TRLBAR|CMDWIN, 1656 ADDR_LINES), 1657 EX(CMD_xit, "xit", ex_exit, 1658 RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, 1659 ADDR_LINES), 1660 EX(CMD_xall, "xall", do_wqall, 1661 BANG|TRLBAR, 1662 ADDR_LINES), 1663 EX(CMD_xmap, "xmap", ex_map, 1664 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1665 ADDR_LINES), 1666 EX(CMD_xmapclear, "xmapclear", ex_mapclear, 1667 EXTRA|TRLBAR|CMDWIN, 1668 ADDR_LINES), 1669 EX(CMD_xmenu, "xmenu", ex_menu, 1670 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1671 ADDR_LINES), 1672 EX(CMD_xnoremap, "xnoremap", ex_map, 1673 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1674 ADDR_LINES), 1675 EX(CMD_xnoremenu, "xnoremenu", ex_menu, 1676 RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1677 ADDR_LINES), 1678 EX(CMD_xunmap, "xunmap", ex_unmap, 1679 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1680 ADDR_LINES), 1681 EX(CMD_xunmenu, "xunmenu", ex_menu, 1682 EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, 1683 ADDR_LINES), 1684 EX(CMD_yank, "yank", ex_operators, 1685 RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN, 1686 ADDR_LINES), 1687 EX(CMD_z, "z", ex_z, 1688 RANGE|WHOLEFOLD|EXTRA|EXFLAGS|TRLBAR|CMDWIN, 1689 ADDR_LINES), 1690 1691 /* commands that don't start with a lowercase letter */ 1692 EX(CMD_bang, "!", ex_bang, 1693 RANGE|WHOLEFOLD|BANG|FILES|CMDWIN, 1694 ADDR_LINES), 1695 EX(CMD_pound, "#", ex_print, 1696 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, 1697 ADDR_LINES), 1698 EX(CMD_and, "&", do_sub, 1699 RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, 1700 ADDR_LINES), 1701 EX(CMD_star, "*", ex_at, 1702 RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN, 1703 ADDR_LINES), 1704 EX(CMD_lshift, "<", ex_operators, 1705 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, 1706 ADDR_LINES), 1707 EX(CMD_equal, "=", ex_equal, 1708 RANGE|TRLBAR|DFLALL|EXFLAGS|CMDWIN, 1709 ADDR_LINES), 1710 EX(CMD_rshift, ">", ex_operators, 1711 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, 1712 ADDR_LINES), 1713 EX(CMD_at, "@", ex_at, 1714 RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN, 1715 ADDR_LINES), 1716 EX(CMD_Next, "Next", ex_previous, 1717 EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, 1718 ADDR_LINES), 1719 EX(CMD_Print, "Print", ex_print, 1720 RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, 1721 ADDR_LINES), 1722 EX(CMD_X, "X", ex_X, 1723 TRLBAR, 1724 ADDR_LINES), 1725 EX(CMD_tilde, "~", do_sub, 1726 RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, 1727 ADDR_LINES), 1728 1729 #ifndef DO_DECLARE_EXCMD 1730 #ifdef FEAT_USR_CMDS 1731 CMD_SIZE, /* MUST be after all real commands! */ 1732 CMD_USER = -1, /* User-defined command */ 1733 CMD_USER_BUF = -2 /* User-defined command local to buffer */ 1734 #else 1735 CMD_SIZE /* MUST be the last one! */ 1736 #endif 1737 #endif 1738 }; 1739 1740 #ifndef DO_DECLARE_EXCMD 1741 typedef enum CMD_index cmdidx_T; 1742 1743 /* 1744 * Arguments used for Ex commands. 1745 */ 1746 struct exarg 1747 { 1748 char_u *arg; /* argument of the command */ 1749 char_u *nextcmd; /* next command (NULL if none) */ 1750 char_u *cmd; /* the name of the command (except for :make) */ 1751 char_u **cmdlinep; /* pointer to pointer of allocated cmdline */ 1752 cmdidx_T cmdidx; /* the index for the command */ 1753 long argt; /* flags for the command */ 1754 int skip; /* don't execute the command, only parse it */ 1755 int forceit; /* TRUE if ! present */ 1756 int addr_count; /* the number of addresses given */ 1757 linenr_T line1; /* the first line number */ 1758 linenr_T line2; /* the second line number or count */ 1759 int addr_type; /* type of the count/range */ 1760 int flags; /* extra flags after count: EXFLAG_ */ 1761 char_u *do_ecmd_cmd; /* +command arg to be used in edited file */ 1762 linenr_T do_ecmd_lnum; /* the line number in an edited file */ 1763 int append; /* TRUE with ":w >>file" command */ 1764 int usefilter; /* TRUE with ":w !command" and ":r!command" */ 1765 int amount; /* number of '>' or '<' for shift command */ 1766 int regname; /* register name (NUL if none) */ 1767 int force_bin; /* 0, FORCE_BIN or FORCE_NOBIN */ 1768 int read_edit; /* ++edit argument */ 1769 int force_ff; /* ++ff= argument (index in cmd[]) */ 1770 #ifdef FEAT_MBYTE 1771 int force_enc; /* ++enc= argument (index in cmd[]) */ 1772 int bad_char; /* BAD_KEEP, BAD_DROP or replacement byte */ 1773 #endif 1774 #ifdef FEAT_USR_CMDS 1775 int useridx; /* user command index */ 1776 #endif 1777 char_u *errmsg; /* returned error message */ 1778 char_u *(*getline)(int, void *, int); 1779 void *cookie; /* argument for getline() */ 1780 #ifdef FEAT_EVAL 1781 struct condstack *cstack; /* condition stack for ":if" etc. */ 1782 #endif 1783 }; 1784 1785 #define FORCE_BIN 1 /* ":edit ++bin file" */ 1786 #define FORCE_NOBIN 2 /* ":edit ++nobin file" */ 1787 1788 /* Values for "flags" */ 1789 #define EXFLAG_LIST 0x01 /* 'l': list */ 1790 #define EXFLAG_NR 0x02 /* '#': number */ 1791 #define EXFLAG_PRINT 0x04 /* 'p': print */ 1792 1793 #endif 1794