Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | /* vi:set ts=8 sts=4 sw=4: |
| 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 */ |
| 55 | #define MODIFY 0x200000L /* forbidden in non-'modifiable' buffer */ |
| 56 | #define FILES (XFILE | EXTRA) /* multiple extra files allowed */ |
| 57 | #define WORD1 (EXTRA | NOSPC) /* one extra word allowed */ |
| 58 | #define FILE1 (FILES | NOSPC) /* 1 file allowed, defaults to current file */ |
| 59 | |
| 60 | #ifndef DO_DECLARE_EXCMD |
| 61 | typedef struct exarg exarg_T; |
| 62 | #endif |
| 63 | |
| 64 | /* |
| 65 | * This array maps ex command names to command codes. |
| 66 | * The order in which command names are listed below is significant -- |
| 67 | * ambiguous abbreviations are always resolved to be the first possible match |
| 68 | * (e.g. "r" is taken to mean "read", not "rewind", because "read" comes |
| 69 | * before "rewind"). |
| 70 | * Not supported commands are included to avoid ambiguities. |
| 71 | */ |
| 72 | #ifdef EX |
| 73 | # undef EX /* just in case */ |
| 74 | #endif |
| 75 | #ifdef DO_DECLARE_EXCMD |
| 76 | # define EX(a, b, c, d) {(char_u *)b, c, d} |
| 77 | |
| 78 | typedef void (*ex_func_T) __ARGS((exarg_T *eap)); |
| 79 | |
| 80 | static struct cmdname |
| 81 | { |
| 82 | char_u *cmd_name; /* name of the command */ |
| 83 | ex_func_T cmd_func; /* function for this command */ |
| 84 | long_u cmd_argt; /* flags declared above */ |
| 85 | } |
| 86 | # if defined(FEAT_GUI_W16) |
| 87 | _far |
| 88 | # endif |
| 89 | cmdnames[] = |
| 90 | #else |
| 91 | # define EX(a, b, c, d) a |
| 92 | enum CMD_index |
| 93 | #endif |
| 94 | { |
| 95 | EX(CMD_append, "append", ex_append, |
| 96 | BANG|RANGE|ZEROR|TRLBAR|CMDWIN|MODIFY), |
| 97 | EX(CMD_abbreviate, "abbreviate", ex_abbreviate, |
| 98 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 99 | EX(CMD_abclear, "abclear", ex_abclear, |
| 100 | EXTRA|TRLBAR|CMDWIN), |
| 101 | EX(CMD_aboveleft, "aboveleft", ex_wrongmodifier, |
| 102 | NEEDARG|EXTRA|NOTRLCOM), |
| 103 | EX(CMD_all, "all", ex_all, |
| 104 | RANGE|NOTADR|COUNT|TRLBAR), |
| 105 | EX(CMD_amenu, "amenu", ex_menu, |
| 106 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 107 | EX(CMD_anoremenu, "anoremenu", ex_menu, |
| 108 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 109 | EX(CMD_args, "args", ex_args, |
| 110 | BANG|FILES|EDITCMD|ARGOPT|TRLBAR), |
| 111 | EX(CMD_argadd, "argadd", ex_argadd, |
Bram Moolenaar | d4755bb | 2004-09-02 19:12:26 +0000 | [diff] [blame] | 112 | BANG|NEEDARG|RANGE|NOTADR|ZEROR|COUNT|FILES|TRLBAR), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 113 | EX(CMD_argdelete, "argdelete", ex_argdelete, |
| 114 | BANG|RANGE|NOTADR|COUNT|FILES|TRLBAR), |
| 115 | EX(CMD_argdo, "argdo", ex_listdo, |
| 116 | BANG|NEEDARG|EXTRA|NOTRLCOM), |
| 117 | EX(CMD_argedit, "argedit", ex_argedit, |
| 118 | BANG|NEEDARG|RANGE|NOTADR|COUNT|FILE1|EDITCMD|TRLBAR), |
| 119 | EX(CMD_argglobal, "argglobal", ex_args, |
| 120 | BANG|FILES|EDITCMD|ARGOPT|TRLBAR), |
| 121 | EX(CMD_arglocal, "arglocal", ex_args, |
| 122 | BANG|FILES|EDITCMD|ARGOPT|TRLBAR), |
| 123 | EX(CMD_argument, "argument", ex_argument, |
| 124 | BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR), |
| 125 | EX(CMD_ascii, "ascii", do_ascii, |
| 126 | TRLBAR|SBOXOK|CMDWIN), |
| 127 | EX(CMD_autocmd, "autocmd", ex_autocmd, |
| 128 | BANG|EXTRA|NOTRLCOM|USECTRLV|CMDWIN), |
| 129 | EX(CMD_augroup, "augroup", ex_autocmd, |
| 130 | BANG|WORD1|TRLBAR|CMDWIN), |
| 131 | EX(CMD_aunmenu, "aunmenu", ex_menu, |
| 132 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 133 | EX(CMD_buffer, "buffer", ex_buffer, |
| 134 | BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR), |
| 135 | EX(CMD_bNext, "bNext", ex_bprevious, |
| 136 | BANG|RANGE|NOTADR|COUNT|TRLBAR), |
| 137 | EX(CMD_ball, "ball", ex_buffer_all, |
| 138 | RANGE|NOTADR|COUNT|TRLBAR), |
| 139 | EX(CMD_badd, "badd", ex_edit, |
| 140 | NEEDARG|FILE1|EDITCMD|TRLBAR|CMDWIN), |
| 141 | EX(CMD_bdelete, "bdelete", ex_bunload, |
| 142 | BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR), |
| 143 | EX(CMD_behave, "behave", ex_behave, |
| 144 | NEEDARG|WORD1|TRLBAR|CMDWIN), |
| 145 | EX(CMD_belowright, "belowright", ex_wrongmodifier, |
| 146 | NEEDARG|EXTRA|NOTRLCOM), |
| 147 | EX(CMD_bfirst, "bfirst", ex_brewind, |
| 148 | BANG|RANGE|NOTADR|TRLBAR), |
| 149 | EX(CMD_blast, "blast", ex_blast, |
| 150 | BANG|RANGE|NOTADR|TRLBAR), |
| 151 | EX(CMD_bmodified, "bmodified", ex_bmodified, |
| 152 | BANG|RANGE|NOTADR|COUNT|TRLBAR), |
| 153 | EX(CMD_bnext, "bnext", ex_bnext, |
| 154 | BANG|RANGE|NOTADR|COUNT|TRLBAR), |
| 155 | EX(CMD_botright, "botright", ex_wrongmodifier, |
| 156 | NEEDARG|EXTRA|NOTRLCOM), |
| 157 | EX(CMD_bprevious, "bprevious", ex_bprevious, |
| 158 | BANG|RANGE|NOTADR|COUNT|TRLBAR), |
| 159 | EX(CMD_brewind, "brewind", ex_brewind, |
| 160 | BANG|RANGE|NOTADR|TRLBAR), |
| 161 | EX(CMD_break, "break", ex_break, |
| 162 | TRLBAR|SBOXOK|CMDWIN), |
| 163 | EX(CMD_breakadd, "breakadd", ex_breakadd, |
| 164 | EXTRA|TRLBAR|CMDWIN), |
| 165 | EX(CMD_breakdel, "breakdel", ex_breakdel, |
| 166 | EXTRA|TRLBAR|CMDWIN), |
| 167 | EX(CMD_breaklist, "breaklist", ex_breaklist, |
| 168 | EXTRA|TRLBAR|CMDWIN), |
| 169 | EX(CMD_browse, "browse", ex_wrongmodifier, |
| 170 | NEEDARG|EXTRA|NOTRLCOM|CMDWIN), |
| 171 | EX(CMD_buffers, "buffers", buflist_list, |
| 172 | BANG|TRLBAR|CMDWIN), |
| 173 | EX(CMD_bufdo, "bufdo", ex_listdo, |
| 174 | BANG|NEEDARG|EXTRA|NOTRLCOM), |
| 175 | EX(CMD_bunload, "bunload", ex_bunload, |
| 176 | BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR), |
| 177 | EX(CMD_bwipeout, "bwipeout", ex_bunload, |
| 178 | BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR), |
| 179 | EX(CMD_change, "change", ex_change, |
| 180 | BANG|WHOLEFOLD|RANGE|COUNT|TRLBAR|CMDWIN|MODIFY), |
| 181 | EX(CMD_cNext, "cNext", ex_cnext, |
| 182 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 183 | EX(CMD_cNfile, "cNfile", ex_cnext, |
| 184 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 185 | EX(CMD_cabbrev, "cabbrev", ex_abbreviate, |
| 186 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 187 | EX(CMD_cabclear, "cabclear", ex_abclear, |
| 188 | EXTRA|TRLBAR|CMDWIN), |
| 189 | EX(CMD_call, "call", ex_call, |
| 190 | RANGE|NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 191 | EX(CMD_catch, "catch", ex_catch, |
| 192 | EXTRA|SBOXOK|CMDWIN), |
| 193 | EX(CMD_cc, "cc", ex_cc, |
| 194 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 195 | EX(CMD_cclose, "cclose", ex_cclose, |
| 196 | RANGE|NOTADR|COUNT|TRLBAR), |
| 197 | EX(CMD_cd, "cd", ex_cd, |
| 198 | FILE1|TRLBAR|CMDWIN), |
| 199 | EX(CMD_center, "center", ex_align, |
| 200 | TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 201 | EX(CMD_cfile, "cfile", ex_cfile, |
| 202 | TRLBAR|FILE1|BANG), |
| 203 | EX(CMD_cfirst, "cfirst", ex_cc, |
| 204 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 205 | EX(CMD_cgetfile, "cgetfile", ex_cfile, |
| 206 | TRLBAR|FILE1|BANG), |
| 207 | EX(CMD_chdir, "chdir", ex_cd, |
| 208 | FILE1|TRLBAR|CMDWIN), |
| 209 | EX(CMD_changes, "changes", ex_changes, |
| 210 | TRLBAR|CMDWIN), |
| 211 | EX(CMD_checkpath, "checkpath", ex_checkpath, |
| 212 | TRLBAR|BANG|CMDWIN), |
| 213 | EX(CMD_checktime, "checktime", ex_checktime, |
| 214 | RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR), |
| 215 | EX(CMD_clist, "clist", qf_list, |
| 216 | BANG|EXTRA|TRLBAR|CMDWIN), |
| 217 | EX(CMD_clast, "clast", ex_cc, |
| 218 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 219 | EX(CMD_close, "close", ex_close, |
| 220 | BANG|TRLBAR|CMDWIN), |
| 221 | EX(CMD_cmap, "cmap", ex_map, |
| 222 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 223 | EX(CMD_cmapclear, "cmapclear", ex_mapclear, |
| 224 | EXTRA|TRLBAR|CMDWIN), |
| 225 | EX(CMD_cmenu, "cmenu", ex_menu, |
| 226 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 227 | EX(CMD_cnext, "cnext", ex_cnext, |
| 228 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 229 | EX(CMD_cnewer, "cnewer", qf_age, |
| 230 | RANGE|NOTADR|COUNT|TRLBAR), |
| 231 | EX(CMD_cnfile, "cnfile", ex_cnext, |
| 232 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 233 | EX(CMD_cnoremap, "cnoremap", ex_map, |
| 234 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 235 | EX(CMD_cnoreabbrev, "cnoreabbrev", ex_abbreviate, |
| 236 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 237 | EX(CMD_cnoremenu, "cnoremenu", ex_menu, |
| 238 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 239 | EX(CMD_copy, "copy", ex_copymove, |
| 240 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY), |
| 241 | EX(CMD_colder, "colder", qf_age, |
| 242 | RANGE|NOTADR|COUNT|TRLBAR), |
| 243 | EX(CMD_colorscheme, "colorscheme", ex_colorscheme, |
| 244 | NEEDARG|WORD1|TRLBAR|CMDWIN), |
| 245 | EX(CMD_command, "command", ex_command, |
| 246 | EXTRA|BANG|NOTRLCOM|USECTRLV|CMDWIN), |
| 247 | EX(CMD_comclear, "comclear", ex_comclear, |
| 248 | TRLBAR|CMDWIN), |
| 249 | EX(CMD_compiler, "compiler", ex_compiler, |
| 250 | BANG|TRLBAR|WORD1), |
| 251 | EX(CMD_continue, "continue", ex_continue, |
| 252 | TRLBAR|SBOXOK|CMDWIN), |
| 253 | EX(CMD_confirm, "confirm", ex_wrongmodifier, |
| 254 | NEEDARG|EXTRA|NOTRLCOM|CMDWIN), |
| 255 | EX(CMD_copen, "copen", ex_copen, |
| 256 | RANGE|NOTADR|COUNT|TRLBAR), |
| 257 | EX(CMD_cprevious, "cprevious", ex_cnext, |
| 258 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 259 | EX(CMD_cpfile, "cpfile", ex_cnext, |
| 260 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 261 | EX(CMD_cquit, "cquit", ex_cquit, |
| 262 | TRLBAR|BANG), |
| 263 | EX(CMD_crewind, "crewind", ex_cc, |
| 264 | RANGE|NOTADR|COUNT|TRLBAR|BANG), |
| 265 | EX(CMD_cscope, "cscope", do_cscope, |
| 266 | EXTRA|NOTRLCOM|SBOXOK|XFILE), |
| 267 | EX(CMD_cstag, "cstag", do_cstag, |
| 268 | BANG|TRLBAR|WORD1), |
| 269 | EX(CMD_cunmap, "cunmap", ex_unmap, |
| 270 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 271 | EX(CMD_cunabbrev, "cunabbrev", ex_abbreviate, |
| 272 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 273 | EX(CMD_cunmenu, "cunmenu", ex_menu, |
| 274 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 275 | EX(CMD_cwindow, "cwindow", ex_cwindow, |
| 276 | RANGE|NOTADR|COUNT|TRLBAR), |
| 277 | EX(CMD_delete, "delete", ex_operators, |
| 278 | RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN|MODIFY), |
Bram Moolenaar | c0197e2 | 2004-09-13 20:26:32 +0000 | [diff] [blame] | 279 | EX(CMD_delmarks, "delmarks", ex_delmarks, |
| 280 | BANG|EXTRA|TRLBAR|CMDWIN), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 281 | EX(CMD_debug, "debug", ex_debug, |
| 282 | NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 283 | EX(CMD_debuggreedy, "debuggreedy", ex_debuggreedy, |
| 284 | RANGE|NOTADR|ZEROR|TRLBAR|CMDWIN), |
| 285 | EX(CMD_delcommand, "delcommand", ex_delcommand, |
| 286 | NEEDARG|WORD1|TRLBAR|CMDWIN), |
| 287 | EX(CMD_delfunction, "delfunction", ex_delfunction, |
| 288 | NEEDARG|WORD1|CMDWIN), |
| 289 | EX(CMD_display, "display", ex_display, |
| 290 | EXTRA|NOTRLCOM|TRLBAR|SBOXOK|CMDWIN), |
| 291 | EX(CMD_diffupdate, "diffupdate", ex_diffupdate, |
| 292 | TRLBAR), |
| 293 | EX(CMD_diffget, "diffget", ex_diffgetput, |
| 294 | RANGE|EXTRA|TRLBAR|MODIFY), |
Bram Moolenaar | 2df6dcc | 2004-07-12 15:53:54 +0000 | [diff] [blame] | 295 | EX(CMD_diffoff, "diffoff", ex_diffoff, |
| 296 | BANG|TRLBAR), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 297 | EX(CMD_diffpatch, "diffpatch", ex_diffpatch, |
| 298 | EXTRA|FILE1|TRLBAR|MODIFY), |
| 299 | EX(CMD_diffput, "diffput", ex_diffgetput, |
| 300 | RANGE|EXTRA|TRLBAR), |
| 301 | EX(CMD_diffsplit, "diffsplit", ex_diffsplit, |
| 302 | EXTRA|FILE1|TRLBAR), |
| 303 | EX(CMD_diffthis, "diffthis", ex_diffthis, |
| 304 | TRLBAR), |
| 305 | EX(CMD_digraphs, "digraphs", ex_digraphs, |
| 306 | EXTRA|TRLBAR|CMDWIN), |
| 307 | EX(CMD_djump, "djump", ex_findpat, |
| 308 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA), |
| 309 | EX(CMD_dlist, "dlist", ex_findpat, |
| 310 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN), |
| 311 | EX(CMD_doautocmd, "doautocmd", ex_doautocmd, |
| 312 | EXTRA|TRLBAR|CMDWIN), |
| 313 | EX(CMD_doautoall, "doautoall", ex_doautoall, |
| 314 | EXTRA|TRLBAR|CMDWIN), |
| 315 | EX(CMD_drop, "drop", ex_drop, |
| 316 | FILES|EDITCMD|NEEDARG|ARGOPT|TRLBAR), |
| 317 | EX(CMD_dsearch, "dsearch", ex_findpat, |
| 318 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN), |
| 319 | EX(CMD_dsplit, "dsplit", ex_findpat, |
| 320 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA), |
| 321 | EX(CMD_edit, "edit", ex_edit, |
| 322 | BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 323 | EX(CMD_echo, "echo", ex_echo, |
| 324 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 325 | EX(CMD_echoerr, "echoerr", ex_execute, |
| 326 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 327 | EX(CMD_echohl, "echohl", ex_echohl, |
| 328 | EXTRA|TRLBAR|SBOXOK|CMDWIN), |
| 329 | EX(CMD_echomsg, "echomsg", ex_execute, |
| 330 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 331 | EX(CMD_echon, "echon", ex_echo, |
| 332 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 333 | EX(CMD_else, "else", ex_else, |
| 334 | TRLBAR|SBOXOK|CMDWIN), |
| 335 | EX(CMD_elseif, "elseif", ex_else, |
| 336 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 337 | EX(CMD_emenu, "emenu", ex_emenu, |
| 338 | NEEDARG|EXTRA|TRLBAR|NOTRLCOM|RANGE|NOTADR|CMDWIN), |
| 339 | EX(CMD_endif, "endif", ex_endif, |
| 340 | TRLBAR|SBOXOK|CMDWIN), |
| 341 | EX(CMD_endfunction, "endfunction", ex_endfunction, |
| 342 | TRLBAR|CMDWIN), |
| 343 | EX(CMD_endtry, "endtry", ex_endtry, |
| 344 | TRLBAR|SBOXOK|CMDWIN), |
| 345 | EX(CMD_endwhile, "endwhile", ex_endwhile, |
| 346 | TRLBAR|SBOXOK|CMDWIN), |
| 347 | EX(CMD_enew, "enew", ex_edit, |
| 348 | BANG|TRLBAR), |
| 349 | EX(CMD_ex, "ex", ex_edit, |
| 350 | BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 351 | EX(CMD_execute, "execute", ex_execute, |
| 352 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 353 | EX(CMD_exit, "exit", ex_exit, |
| 354 | RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN), |
| 355 | EX(CMD_file, "file", ex_file, |
Bram Moolenaar | 325b7a2 | 2004-07-05 15:58:32 +0000 | [diff] [blame] | 356 | RANGE|NOTADR|ZEROR|BANG|FILE1|TRLBAR), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 357 | EX(CMD_files, "files", buflist_list, |
| 358 | BANG|TRLBAR|CMDWIN), |
| 359 | EX(CMD_filetype, "filetype", ex_filetype, |
| 360 | EXTRA|TRLBAR|CMDWIN), |
| 361 | EX(CMD_find, "find", ex_find, |
| 362 | RANGE|NOTADR|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 363 | EX(CMD_finally, "finally", ex_finally, |
| 364 | TRLBAR|SBOXOK|CMDWIN), |
| 365 | EX(CMD_finish, "finish", ex_finish, |
| 366 | TRLBAR|SBOXOK|CMDWIN), |
| 367 | EX(CMD_first, "first", ex_rewind, |
| 368 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 369 | EX(CMD_fixdel, "fixdel", do_fixdel, |
| 370 | TRLBAR|CMDWIN), |
| 371 | EX(CMD_fold, "fold", ex_fold, |
| 372 | RANGE|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN), |
| 373 | EX(CMD_foldclose, "foldclose", ex_foldopen, |
| 374 | RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN), |
| 375 | EX(CMD_folddoopen, "folddoopen", ex_folddo, |
| 376 | RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM), |
| 377 | EX(CMD_folddoclosed, "folddoclosed", ex_folddo, |
| 378 | RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM), |
| 379 | EX(CMD_foldopen, "foldopen", ex_foldopen, |
| 380 | RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN), |
| 381 | EX(CMD_function, "function", ex_function, |
| 382 | EXTRA|BANG|CMDWIN), |
| 383 | EX(CMD_global, "global", ex_global, |
| 384 | RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|CMDWIN), |
| 385 | EX(CMD_goto, "goto", ex_goto, |
| 386 | RANGE|NOTADR|COUNT|TRLBAR|SBOXOK|CMDWIN), |
| 387 | EX(CMD_grep, "grep", ex_make, |
| 388 | BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE), |
| 389 | EX(CMD_grepadd, "grepadd", ex_make, |
| 390 | BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE), |
| 391 | EX(CMD_gui, "gui", ex_gui, |
| 392 | BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN), |
| 393 | EX(CMD_gvim, "gvim", ex_gui, |
| 394 | BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN), |
| 395 | EX(CMD_help, "help", ex_help, |
| 396 | BANG|EXTRA|NOTRLCOM), |
| 397 | EX(CMD_helpfind, "helpfind", ex_helpfind, |
| 398 | EXTRA|NOTRLCOM), |
| 399 | EX(CMD_helpgrep, "helpgrep", ex_helpgrep, |
| 400 | EXTRA|NOTRLCOM|NEEDARG), |
| 401 | EX(CMD_helptags, "helptags", ex_helptags, |
| 402 | NEEDARG|FILE1|TRLBAR|CMDWIN), |
| 403 | EX(CMD_hardcopy, "hardcopy", ex_hardcopy, |
| 404 | RANGE|COUNT|EXTRA|TRLBAR|DFLALL|BANG), |
| 405 | EX(CMD_highlight, "highlight", ex_highlight, |
| 406 | BANG|EXTRA|TRLBAR|SBOXOK|CMDWIN), |
| 407 | EX(CMD_hide, "hide", ex_hide, |
| 408 | BANG|EXTRA|NOTRLCOM), |
| 409 | EX(CMD_history, "history", ex_history, |
| 410 | EXTRA|TRLBAR|CMDWIN), |
| 411 | EX(CMD_insert, "insert", ex_append, |
| 412 | BANG|RANGE|TRLBAR|CMDWIN|MODIFY), |
| 413 | EX(CMD_iabbrev, "iabbrev", ex_abbreviate, |
| 414 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 415 | EX(CMD_iabclear, "iabclear", ex_abclear, |
| 416 | EXTRA|TRLBAR|CMDWIN), |
| 417 | EX(CMD_if, "if", ex_if, |
| 418 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 419 | EX(CMD_ijump, "ijump", ex_findpat, |
| 420 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA), |
| 421 | EX(CMD_ilist, "ilist", ex_findpat, |
| 422 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN), |
| 423 | EX(CMD_imap, "imap", ex_map, |
| 424 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 425 | EX(CMD_imapclear, "imapclear", ex_mapclear, |
| 426 | EXTRA|TRLBAR|CMDWIN), |
| 427 | EX(CMD_imenu, "imenu", ex_menu, |
| 428 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 429 | EX(CMD_inoremap, "inoremap", ex_map, |
| 430 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 431 | EX(CMD_inoreabbrev, "inoreabbrev", ex_abbreviate, |
| 432 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 433 | EX(CMD_inoremenu, "inoremenu", ex_menu, |
| 434 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 435 | EX(CMD_intro, "intro", ex_intro, |
| 436 | TRLBAR|CMDWIN), |
| 437 | EX(CMD_isearch, "isearch", ex_findpat, |
| 438 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN), |
| 439 | EX(CMD_isplit, "isplit", ex_findpat, |
| 440 | BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA), |
| 441 | EX(CMD_iunmap, "iunmap", ex_unmap, |
| 442 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 443 | EX(CMD_iunabbrev, "iunabbrev", ex_abbreviate, |
| 444 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 445 | EX(CMD_iunmenu, "iunmenu", ex_menu, |
| 446 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 447 | EX(CMD_join, "join", ex_join, |
| 448 | BANG|RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN|MODIFY), |
| 449 | EX(CMD_jumps, "jumps", ex_jumps, |
| 450 | TRLBAR|CMDWIN), |
| 451 | EX(CMD_k, "k", ex_mark, |
| 452 | RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN), |
| 453 | EX(CMD_keepmarks, "keepmarks", ex_wrongmodifier, |
| 454 | NEEDARG|EXTRA|NOTRLCOM), |
| 455 | EX(CMD_keepjumps, "keepjumps", ex_wrongmodifier, |
| 456 | NEEDARG|EXTRA|NOTRLCOM), |
Bram Moolenaar | d4755bb | 2004-09-02 19:12:26 +0000 | [diff] [blame] | 457 | EX(CMD_keepalt, "keepalt", ex_wrongmodifier, |
| 458 | NEEDARG|EXTRA|NOTRLCOM), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 459 | EX(CMD_list, "list", ex_print, |
| 460 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN), |
| 461 | EX(CMD_last, "last", ex_last, |
| 462 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 463 | EX(CMD_language, "language", ex_language, |
| 464 | EXTRA|TRLBAR|CMDWIN), |
| 465 | EX(CMD_lcd, "lcd", ex_cd, |
| 466 | FILE1|TRLBAR|CMDWIN), |
| 467 | EX(CMD_lchdir, "lchdir", ex_cd, |
| 468 | FILE1|TRLBAR|CMDWIN), |
| 469 | EX(CMD_left, "left", ex_align, |
| 470 | TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 471 | EX(CMD_leftabove, "leftabove", ex_wrongmodifier, |
| 472 | NEEDARG|EXTRA|NOTRLCOM), |
| 473 | EX(CMD_let, "let", ex_let, |
| 474 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 475 | EX(CMD_lmap, "lmap", ex_map, |
| 476 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 477 | EX(CMD_lmapclear, "lmapclear", ex_mapclear, |
| 478 | EXTRA|TRLBAR|CMDWIN), |
| 479 | EX(CMD_lnoremap, "lnoremap", ex_map, |
| 480 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 481 | EX(CMD_loadview, "loadview", ex_loadview, |
| 482 | FILE1|TRLBAR), |
| 483 | EX(CMD_loadkeymap, "loadkeymap", ex_loadkeymap, |
| 484 | CMDWIN), |
| 485 | EX(CMD_lockmarks, "lockmarks", ex_wrongmodifier, |
| 486 | NEEDARG|EXTRA|NOTRLCOM), |
| 487 | EX(CMD_lunmap, "lunmap", ex_unmap, |
| 488 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 489 | EX(CMD_ls, "ls", buflist_list, |
| 490 | BANG|TRLBAR|CMDWIN), |
| 491 | EX(CMD_move, "move", ex_copymove, |
| 492 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY), |
| 493 | EX(CMD_mark, "mark", ex_mark, |
| 494 | RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN), |
| 495 | EX(CMD_make, "make", ex_make, |
| 496 | BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE), |
| 497 | EX(CMD_map, "map", ex_map, |
| 498 | BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 499 | EX(CMD_mapclear, "mapclear", ex_mapclear, |
| 500 | EXTRA|BANG|TRLBAR|CMDWIN), |
| 501 | EX(CMD_marks, "marks", do_marks, |
| 502 | EXTRA|TRLBAR|CMDWIN), |
| 503 | EX(CMD_match, "match", ex_match, |
| 504 | EXTRA|CMDWIN), |
| 505 | EX(CMD_menu, "menu", ex_menu, |
| 506 | RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 507 | EX(CMD_menutranslate, "menutranslate", ex_menutranslate, |
| 508 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 509 | EX(CMD_messages, "messages", ex_messages, |
| 510 | TRLBAR|CMDWIN), |
| 511 | EX(CMD_mkexrc, "mkexrc", ex_mkrc, |
| 512 | BANG|FILE1|TRLBAR|CMDWIN), |
| 513 | EX(CMD_mksession, "mksession", ex_mkrc, |
| 514 | BANG|FILE1|TRLBAR), |
| 515 | EX(CMD_mkvimrc, "mkvimrc", ex_mkrc, |
| 516 | BANG|FILE1|TRLBAR|CMDWIN), |
| 517 | EX(CMD_mkview, "mkview", ex_mkrc, |
| 518 | BANG|FILE1|TRLBAR), |
| 519 | EX(CMD_mode, "mode", ex_mode, |
| 520 | WORD1|TRLBAR|CMDWIN), |
Bram Moolenaar | 325b7a2 | 2004-07-05 15:58:32 +0000 | [diff] [blame] | 521 | EX(CMD_mzscheme, "mzscheme", ex_mzscheme, |
| 522 | RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN), |
| 523 | EX(CMD_mzfile, "mzfile", ex_mzfile, |
| 524 | RANGE|FILE1|NEEDARG|CMDWIN), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 525 | EX(CMD_next, "next", ex_next, |
| 526 | RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR), |
Bram Moolenaar | 35a9aaa | 2004-10-24 19:23:07 +0000 | [diff] [blame] | 527 | EX(CMD_nbkey, "nbkey", ex_nbkey, |
| 528 | EXTRA|NOTADR|NEEDARG), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 529 | EX(CMD_new, "new", ex_splitview, |
| 530 | BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR), |
| 531 | EX(CMD_nmap, "nmap", ex_map, |
| 532 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 533 | EX(CMD_nmapclear, "nmapclear", ex_mapclear, |
| 534 | EXTRA|TRLBAR|CMDWIN), |
| 535 | EX(CMD_nmenu, "nmenu", ex_menu, |
| 536 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 537 | EX(CMD_nnoremap, "nnoremap", ex_map, |
| 538 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 539 | EX(CMD_nnoremenu, "nnoremenu", ex_menu, |
| 540 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 541 | EX(CMD_noremap, "noremap", ex_map, |
| 542 | BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 543 | EX(CMD_nohlsearch, "nohlsearch", ex_nohlsearch, |
| 544 | TRLBAR|SBOXOK|CMDWIN), |
| 545 | EX(CMD_noreabbrev, "noreabbrev", ex_abbreviate, |
| 546 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 547 | EX(CMD_noremenu, "noremenu", ex_menu, |
| 548 | RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 549 | EX(CMD_normal, "normal", ex_normal, |
| 550 | RANGE|BANG|EXTRA|NEEDARG|NOTRLCOM|USECTRLV|SBOXOK|CMDWIN), |
| 551 | EX(CMD_number, "number", ex_print, |
| 552 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN), |
| 553 | EX(CMD_nunmap, "nunmap", ex_unmap, |
| 554 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 555 | EX(CMD_nunmenu, "nunmenu", ex_menu, |
| 556 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 557 | EX(CMD_open, "open", ex_ni, |
| 558 | TRLBAR), /* not supported */ |
| 559 | EX(CMD_omap, "omap", ex_map, |
| 560 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 561 | EX(CMD_omapclear, "omapclear", ex_mapclear, |
| 562 | EXTRA|TRLBAR|CMDWIN), |
| 563 | EX(CMD_omenu, "omenu", ex_menu, |
| 564 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 565 | EX(CMD_only, "only", ex_only, |
| 566 | BANG|TRLBAR), |
| 567 | EX(CMD_onoremap, "onoremap", ex_map, |
| 568 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 569 | EX(CMD_onoremenu, "onoremenu", ex_menu, |
| 570 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 571 | EX(CMD_options, "options", ex_options, |
| 572 | TRLBAR), |
| 573 | EX(CMD_ounmap, "ounmap", ex_unmap, |
| 574 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 575 | EX(CMD_ounmenu, "ounmenu", ex_menu, |
| 576 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 577 | EX(CMD_print, "print", ex_print, |
Bram Moolenaar | 7b0294c | 2004-10-11 10:16:09 +0000 | [diff] [blame] | 578 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN|SBOXOK), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 579 | EX(CMD_pclose, "pclose", ex_pclose, |
| 580 | BANG|TRLBAR), |
| 581 | EX(CMD_perl, "perl", ex_perl, |
| 582 | RANGE|EXTRA|DFLALL|NEEDARG|SBOXOK|CMDWIN), |
| 583 | EX(CMD_perldo, "perldo", ex_perldo, |
| 584 | RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN), |
| 585 | EX(CMD_pedit, "pedit", ex_pedit, |
| 586 | BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 587 | EX(CMD_pop, "pop", ex_tag, |
| 588 | RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR), |
| 589 | EX(CMD_popup, "popup", ex_popup, |
| 590 | NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN), |
| 591 | EX(CMD_ppop, "ppop", ex_ptag, |
| 592 | RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR), |
| 593 | EX(CMD_preserve, "preserve", ex_preserve, |
| 594 | TRLBAR), |
| 595 | EX(CMD_previous, "previous", ex_previous, |
| 596 | EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 597 | EX(CMD_promptfind, "promptfind", gui_mch_find_dialog, |
| 598 | EXTRA|NOTRLCOM|CMDWIN), |
| 599 | EX(CMD_promptrepl, "promptrepl", gui_mch_replace_dialog, |
| 600 | EXTRA|NOTRLCOM|CMDWIN), |
| 601 | EX(CMD_psearch, "psearch", ex_psearch, |
| 602 | BANG|RANGE|WHOLEFOLD|DFLALL|EXTRA), |
| 603 | EX(CMD_ptag, "ptag", ex_ptag, |
| 604 | RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR), |
| 605 | EX(CMD_ptNext, "ptNext", ex_ptag, |
| 606 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 607 | EX(CMD_ptfirst, "ptfirst", ex_ptag, |
| 608 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 609 | EX(CMD_ptjump, "ptjump", ex_ptag, |
| 610 | BANG|TRLBAR|WORD1), |
| 611 | EX(CMD_ptlast, "ptlast", ex_ptag, |
| 612 | BANG|TRLBAR), |
| 613 | EX(CMD_ptnext, "ptnext", ex_ptag, |
| 614 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 615 | EX(CMD_ptprevious, "ptprevious", ex_ptag, |
| 616 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 617 | EX(CMD_ptrewind, "ptrewind", ex_ptag, |
| 618 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 619 | EX(CMD_ptselect, "ptselect", ex_ptag, |
| 620 | BANG|TRLBAR|WORD1), |
| 621 | EX(CMD_put, "put", ex_put, |
| 622 | RANGE|WHOLEFOLD|BANG|REGSTR|TRLBAR|ZEROR|CMDWIN|MODIFY), |
| 623 | EX(CMD_pwd, "pwd", ex_pwd, |
| 624 | TRLBAR|CMDWIN), |
| 625 | EX(CMD_python, "python", ex_python, |
| 626 | RANGE|EXTRA|NEEDARG|CMDWIN), |
| 627 | EX(CMD_pyfile, "pyfile", ex_pyfile, |
| 628 | RANGE|FILE1|NEEDARG|CMDWIN), |
| 629 | EX(CMD_quit, "quit", ex_quit, |
| 630 | BANG|TRLBAR|CMDWIN), |
| 631 | EX(CMD_quitall, "quitall", ex_quit_all, |
| 632 | BANG|TRLBAR), |
| 633 | EX(CMD_qall, "qall", ex_quit_all, |
| 634 | BANG|TRLBAR|CMDWIN), |
| 635 | EX(CMD_read, "read", ex_read, |
| 636 | BANG|RANGE|WHOLEFOLD|FILE1|ARGOPT|TRLBAR|ZEROR|CMDWIN|MODIFY), |
| 637 | EX(CMD_recover, "recover", ex_recover, |
| 638 | BANG|FILE1|TRLBAR), |
| 639 | EX(CMD_redo, "redo", ex_redo, |
| 640 | TRLBAR|CMDWIN), |
| 641 | EX(CMD_redir, "redir", ex_redir, |
| 642 | BANG|FILES|TRLBAR|CMDWIN), |
| 643 | EX(CMD_redraw, "redraw", ex_redraw, |
| 644 | BANG|TRLBAR|CMDWIN), |
| 645 | EX(CMD_redrawstatus, "redrawstatus", ex_redrawstatus, |
| 646 | BANG|TRLBAR|CMDWIN), |
| 647 | EX(CMD_registers, "registers", ex_display, |
| 648 | EXTRA|NOTRLCOM|TRLBAR|CMDWIN), |
| 649 | EX(CMD_resize, "resize", ex_resize, |
| 650 | RANGE|NOTADR|TRLBAR|WORD1), |
| 651 | EX(CMD_retab, "retab", ex_retab, |
| 652 | TRLBAR|RANGE|WHOLEFOLD|DFLALL|BANG|WORD1|CMDWIN|MODIFY), |
| 653 | EX(CMD_return, "return", ex_return, |
| 654 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 655 | EX(CMD_rewind, "rewind", ex_rewind, |
| 656 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 657 | EX(CMD_right, "right", ex_align, |
| 658 | TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 659 | EX(CMD_rightbelow, "rightbelow", ex_wrongmodifier, |
| 660 | NEEDARG|EXTRA|NOTRLCOM), |
| 661 | EX(CMD_runtime, "runtime", ex_runtime, |
| 662 | BANG|NEEDARG|FILES|TRLBAR|SBOXOK|CMDWIN), |
| 663 | EX(CMD_ruby, "ruby", ex_ruby, |
| 664 | RANGE|EXTRA|NEEDARG|CMDWIN), |
| 665 | EX(CMD_rubydo, "rubydo", ex_rubydo, |
| 666 | RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN), |
| 667 | EX(CMD_rubyfile, "rubyfile", ex_rubyfile, |
| 668 | RANGE|FILE1|NEEDARG|CMDWIN), |
| 669 | EX(CMD_rviminfo, "rviminfo", ex_viminfo, |
| 670 | BANG|FILE1|TRLBAR|CMDWIN), |
| 671 | EX(CMD_substitute, "substitute", do_sub, |
| 672 | RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 673 | EX(CMD_sNext, "sNext", ex_previous, |
| 674 | EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 675 | EX(CMD_sargument, "sargument", ex_argument, |
| 676 | BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR), |
| 677 | EX(CMD_sall, "sall", ex_all, |
| 678 | RANGE|NOTADR|COUNT|TRLBAR), |
Bram Moolenaar | 7b0294c | 2004-10-11 10:16:09 +0000 | [diff] [blame] | 679 | EX(CMD_sandbox, "sandbox", ex_wrongmodifier, |
| 680 | NEEDARG|EXTRA|NOTRLCOM), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 681 | EX(CMD_saveas, "saveas", ex_write, |
| 682 | BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR), |
| 683 | EX(CMD_sbuffer, "sbuffer", ex_buffer, |
| 684 | BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR), |
| 685 | EX(CMD_sbNext, "sbNext", ex_bprevious, |
| 686 | RANGE|NOTADR|COUNT|TRLBAR), |
| 687 | EX(CMD_sball, "sball", ex_buffer_all, |
| 688 | RANGE|NOTADR|COUNT|TRLBAR), |
| 689 | EX(CMD_sbfirst, "sbfirst", ex_brewind, |
| 690 | TRLBAR), |
| 691 | EX(CMD_sblast, "sblast", ex_blast, |
| 692 | TRLBAR), |
| 693 | EX(CMD_sbmodified, "sbmodified", ex_bmodified, |
| 694 | RANGE|NOTADR|COUNT|TRLBAR), |
| 695 | EX(CMD_sbnext, "sbnext", ex_bnext, |
| 696 | RANGE|NOTADR|COUNT|TRLBAR), |
| 697 | EX(CMD_sbprevious, "sbprevious", ex_bprevious, |
| 698 | RANGE|NOTADR|COUNT|TRLBAR), |
| 699 | EX(CMD_sbrewind, "sbrewind", ex_brewind, |
| 700 | TRLBAR), |
| 701 | EX(CMD_scriptnames, "scriptnames", ex_scriptnames, |
| 702 | TRLBAR|CMDWIN), |
| 703 | EX(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, |
| 704 | WORD1|TRLBAR|CMDWIN), |
| 705 | EX(CMD_scscope, "scscope", do_scscope, |
| 706 | EXTRA|NOTRLCOM|SBOXOK), |
| 707 | EX(CMD_set, "set", ex_set, |
| 708 | TRLBAR|EXTRA|CMDWIN|SBOXOK), |
| 709 | EX(CMD_setfiletype, "setfiletype", ex_setfiletype, |
| 710 | TRLBAR|EXTRA|NEEDARG|CMDWIN), |
| 711 | EX(CMD_setglobal, "setglobal", ex_set, |
| 712 | TRLBAR|EXTRA|CMDWIN), |
| 713 | EX(CMD_setlocal, "setlocal", ex_set, |
| 714 | TRLBAR|EXTRA|CMDWIN), |
| 715 | EX(CMD_sfind, "sfind", ex_splitview, |
| 716 | BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR), |
| 717 | EX(CMD_sfirst, "sfirst", ex_rewind, |
| 718 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 719 | EX(CMD_shell, "shell", ex_shell, |
| 720 | TRLBAR|CMDWIN), |
| 721 | EX(CMD_simalt, "simalt", ex_simalt, |
| 722 | NEEDARG|WORD1|TRLBAR|CMDWIN), |
| 723 | EX(CMD_sign, "sign", ex_sign, |
| 724 | NEEDARG|RANGE|NOTADR|EXTRA|CMDWIN), |
| 725 | EX(CMD_silent, "silent", ex_wrongmodifier, |
| 726 | NEEDARG|EXTRA|BANG|NOTRLCOM|SBOXOK|CMDWIN), |
| 727 | EX(CMD_sleep, "sleep", ex_sleep, |
| 728 | RANGE|NOTADR|COUNT|EXTRA|TRLBAR|CMDWIN), |
| 729 | EX(CMD_slast, "slast", ex_last, |
| 730 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 731 | EX(CMD_smagic, "smagic", ex_submagic, |
| 732 | RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 733 | EX(CMD_snext, "snext", ex_next, |
| 734 | RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR), |
| 735 | EX(CMD_sniff, "sniff", ex_sniff, |
| 736 | EXTRA|TRLBAR), |
| 737 | EX(CMD_snomagic, "snomagic", ex_submagic, |
| 738 | RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 739 | EX(CMD_source, "source", ex_source, |
| 740 | BANG|FILE1|TRLBAR|SBOXOK|CMDWIN), |
| 741 | EX(CMD_split, "split", ex_splitview, |
| 742 | BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR), |
| 743 | EX(CMD_sprevious, "sprevious", ex_previous, |
| 744 | EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 745 | EX(CMD_srewind, "srewind", ex_rewind, |
| 746 | EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 747 | EX(CMD_stop, "stop", ex_stop, |
| 748 | TRLBAR|BANG|CMDWIN), |
| 749 | EX(CMD_stag, "stag", ex_stag, |
| 750 | RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR), |
| 751 | EX(CMD_startinsert, "startinsert", ex_startinsert, |
| 752 | BANG|TRLBAR|CMDWIN), |
Bram Moolenaar | 325b7a2 | 2004-07-05 15:58:32 +0000 | [diff] [blame] | 753 | EX(CMD_startreplace, "startreplace", ex_startinsert, |
| 754 | BANG|TRLBAR|CMDWIN), |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 755 | EX(CMD_stopinsert, "stopinsert", ex_stopinsert, |
| 756 | BANG|TRLBAR|CMDWIN), |
| 757 | EX(CMD_stjump, "stjump", ex_stag, |
| 758 | BANG|TRLBAR|WORD1), |
| 759 | EX(CMD_stselect, "stselect", ex_stag, |
| 760 | BANG|TRLBAR|WORD1), |
| 761 | EX(CMD_sunhide, "sunhide", ex_buffer_all, |
| 762 | RANGE|NOTADR|COUNT|TRLBAR), |
| 763 | EX(CMD_suspend, "suspend", ex_stop, |
| 764 | TRLBAR|BANG|CMDWIN), |
| 765 | EX(CMD_sview, "sview", ex_splitview, |
| 766 | NEEDARG|RANGE|NOTADR|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 767 | EX(CMD_swapname, "swapname", ex_swapname, |
| 768 | TRLBAR|CMDWIN), |
| 769 | EX(CMD_syntax, "syntax", ex_syntax, |
| 770 | EXTRA|NOTRLCOM|CMDWIN), |
| 771 | EX(CMD_syncbind, "syncbind", ex_syncbind, |
| 772 | TRLBAR), |
| 773 | EX(CMD_t, "t", ex_copymove, |
| 774 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY), |
| 775 | EX(CMD_tNext, "tNext", ex_tag, |
| 776 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 777 | EX(CMD_tag, "tag", ex_tag, |
| 778 | RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR), |
| 779 | EX(CMD_tags, "tags", do_tags, |
| 780 | TRLBAR|CMDWIN), |
| 781 | EX(CMD_tcl, "tcl", ex_tcl, |
| 782 | RANGE|EXTRA|NEEDARG|CMDWIN), |
| 783 | EX(CMD_tcldo, "tcldo", ex_tcldo, |
| 784 | RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN), |
| 785 | EX(CMD_tclfile, "tclfile", ex_tclfile, |
| 786 | RANGE|FILE1|NEEDARG|CMDWIN), |
| 787 | EX(CMD_tearoff, "tearoff", ex_tearoff, |
| 788 | NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN), |
| 789 | EX(CMD_tfirst, "tfirst", ex_tag, |
| 790 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 791 | EX(CMD_throw, "throw", ex_throw, |
| 792 | EXTRA|NEEDARG|SBOXOK|CMDWIN), |
| 793 | EX(CMD_tjump, "tjump", ex_tag, |
| 794 | BANG|TRLBAR|WORD1), |
| 795 | EX(CMD_tlast, "tlast", ex_tag, |
| 796 | BANG|TRLBAR), |
| 797 | EX(CMD_tmenu, "tmenu", ex_menu, |
| 798 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 799 | EX(CMD_tnext, "tnext", ex_tag, |
| 800 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 801 | EX(CMD_topleft, "topleft", ex_wrongmodifier, |
| 802 | NEEDARG|EXTRA|NOTRLCOM), |
| 803 | EX(CMD_tprevious, "tprevious", ex_tag, |
| 804 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 805 | EX(CMD_trewind, "trewind", ex_tag, |
| 806 | RANGE|NOTADR|BANG|TRLBAR|ZEROR), |
| 807 | EX(CMD_try, "try", ex_try, |
| 808 | TRLBAR|SBOXOK|CMDWIN), |
| 809 | EX(CMD_tselect, "tselect", ex_tag, |
| 810 | BANG|TRLBAR|WORD1), |
| 811 | EX(CMD_tunmenu, "tunmenu", ex_menu, |
| 812 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 813 | EX(CMD_undo, "undo", ex_undo, |
| 814 | TRLBAR|CMDWIN), |
| 815 | EX(CMD_unabbreviate, "unabbreviate", ex_abbreviate, |
| 816 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 817 | EX(CMD_unhide, "unhide", ex_buffer_all, |
| 818 | RANGE|NOTADR|COUNT|TRLBAR), |
| 819 | EX(CMD_unlet, "unlet", ex_unlet, |
| 820 | BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN), |
| 821 | EX(CMD_unmap, "unmap", ex_unmap, |
| 822 | BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 823 | EX(CMD_unmenu, "unmenu", ex_menu, |
| 824 | BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 825 | EX(CMD_update, "update", ex_update, |
| 826 | RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR), |
| 827 | EX(CMD_vglobal, "vglobal", ex_global, |
| 828 | RANGE|WHOLEFOLD|EXTRA|DFLALL|CMDWIN), |
| 829 | EX(CMD_version, "version", ex_version, |
| 830 | EXTRA|TRLBAR|CMDWIN), |
| 831 | EX(CMD_verbose, "verbose", ex_wrongmodifier, |
| 832 | NEEDARG|RANGE|NOTADR|EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 833 | EX(CMD_vertical, "vertical", ex_wrongmodifier, |
| 834 | NEEDARG|EXTRA|NOTRLCOM), |
| 835 | EX(CMD_visual, "visual", ex_edit, |
| 836 | BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 837 | EX(CMD_view, "view", ex_edit, |
| 838 | BANG|FILE1|EDITCMD|ARGOPT|TRLBAR), |
| 839 | EX(CMD_vmap, "vmap", ex_map, |
| 840 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 841 | EX(CMD_vmapclear, "vmapclear", ex_mapclear, |
| 842 | EXTRA|TRLBAR|CMDWIN), |
| 843 | EX(CMD_vmenu, "vmenu", ex_menu, |
| 844 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 845 | EX(CMD_vnoremap, "vnoremap", ex_map, |
| 846 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 847 | EX(CMD_vnew, "vnew", ex_splitview, |
| 848 | BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR), |
| 849 | EX(CMD_vnoremenu, "vnoremenu", ex_menu, |
| 850 | RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 851 | EX(CMD_vsplit, "vsplit", ex_splitview, |
| 852 | BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR), |
| 853 | EX(CMD_vunmap, "vunmap", ex_unmap, |
| 854 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 855 | EX(CMD_vunmenu, "vunmenu", ex_menu, |
| 856 | EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), |
| 857 | EX(CMD_write, "write", ex_write, |
| 858 | RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN), |
| 859 | EX(CMD_wNext, "wNext", ex_wnext, |
| 860 | RANGE|WHOLEFOLD|NOTADR|BANG|FILE1|ARGOPT|TRLBAR), |
| 861 | EX(CMD_wall, "wall", do_wqall, |
| 862 | BANG|TRLBAR|CMDWIN), |
| 863 | EX(CMD_while, "while", ex_while, |
| 864 | EXTRA|NOTRLCOM|SBOXOK|CMDWIN), |
| 865 | EX(CMD_winsize, "winsize", ex_winsize, |
| 866 | EXTRA|NEEDARG|TRLBAR), |
| 867 | EX(CMD_wincmd, "wincmd", ex_wincmd, |
| 868 | NEEDARG|WORD1|RANGE|NOTADR), |
| 869 | EX(CMD_windo, "windo", ex_listdo, |
| 870 | BANG|NEEDARG|EXTRA|NOTRLCOM), |
| 871 | EX(CMD_winpos, "winpos", ex_winpos, |
| 872 | EXTRA|TRLBAR|CMDWIN), |
| 873 | EX(CMD_wnext, "wnext", ex_wnext, |
| 874 | RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR), |
| 875 | EX(CMD_wprevious, "wprevious", ex_wnext, |
| 876 | RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR), |
| 877 | EX(CMD_wq, "wq", ex_exit, |
| 878 | RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR), |
| 879 | EX(CMD_wqall, "wqall", do_wqall, |
| 880 | BANG|FILE1|ARGOPT|DFLALL|TRLBAR), |
| 881 | EX(CMD_wsverb, "wsverb", ex_wsverb, |
| 882 | EXTRA|NOTADR|NEEDARG), |
| 883 | EX(CMD_wviminfo, "wviminfo", ex_viminfo, |
| 884 | BANG|FILE1|TRLBAR|CMDWIN), |
| 885 | EX(CMD_xit, "xit", ex_exit, |
| 886 | RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN), |
| 887 | EX(CMD_xall, "xall", do_wqall, |
| 888 | BANG|TRLBAR), |
| 889 | EX(CMD_yank, "yank", ex_operators, |
| 890 | RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN), |
| 891 | EX(CMD_z, "z", ex_z, |
| 892 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN), |
| 893 | |
| 894 | /* commands that don't start with a lowercase letter */ |
| 895 | EX(CMD_bang, "!", ex_bang, |
| 896 | RANGE|WHOLEFOLD|BANG|FILES|CMDWIN), |
| 897 | EX(CMD_pound, "#", ex_print, |
| 898 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN), |
| 899 | EX(CMD_and, "&", do_sub, |
| 900 | RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 901 | EX(CMD_star, "*", ex_at, |
| 902 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN), |
| 903 | EX(CMD_lshift, "<", ex_operators, |
| 904 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN|MODIFY), |
| 905 | EX(CMD_equal, "=", ex_equal, |
| 906 | RANGE|TRLBAR|DFLALL|CMDWIN), |
| 907 | EX(CMD_rshift, ">", ex_operators, |
| 908 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN|MODIFY), |
| 909 | EX(CMD_at, "@", ex_at, |
| 910 | RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN), |
| 911 | EX(CMD_Next, "Next", ex_previous, |
| 912 | EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR), |
| 913 | EX(CMD_Print, "Print", ex_print, |
| 914 | RANGE|WHOLEFOLD|COUNT|TRLBAR|CMDWIN), |
| 915 | EX(CMD_X, "X", ex_X, |
| 916 | TRLBAR), |
| 917 | EX(CMD_tilde, "~", do_sub, |
| 918 | RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY), |
| 919 | |
| 920 | #ifndef DO_DECLARE_EXCMD |
| 921 | #ifdef FEAT_USR_CMDS |
| 922 | CMD_SIZE, /* MUST be after all real commands! */ |
| 923 | CMD_USER = -1, /* User-defined command */ |
| 924 | CMD_USER_BUF = -2 /* User-defined command local to buffer */ |
| 925 | #else |
| 926 | CMD_SIZE /* MUST be the last one! */ |
| 927 | #endif |
| 928 | #endif |
| 929 | }; |
| 930 | |
| 931 | #define USER_CMDIDX(idx) ((int)(idx) < 0) |
| 932 | |
| 933 | #ifndef DO_DECLARE_EXCMD |
| 934 | typedef enum CMD_index cmdidx_T; |
| 935 | |
| 936 | /* |
| 937 | * Arguments used for Ex commands. |
| 938 | */ |
| 939 | struct exarg |
| 940 | { |
| 941 | char_u *arg; /* argument of the command */ |
| 942 | char_u *nextcmd; /* next command (NULL if none) */ |
| 943 | char_u *cmd; /* the name of the command (except for :make) */ |
| 944 | char_u **cmdlinep; /* pointer to pointer of allocated cmdline */ |
| 945 | cmdidx_T cmdidx; /* the index for the command */ |
| 946 | long argt; /* flags for the command */ |
| 947 | int skip; /* don't execute the command, only parse it */ |
| 948 | int forceit; /* TRUE if ! present */ |
| 949 | int addr_count; /* the number of addresses given */ |
| 950 | linenr_T line1; /* the first line number */ |
| 951 | linenr_T line2; /* the second line number or count */ |
| 952 | char_u *do_ecmd_cmd; /* +command arg to be used in edited file */ |
| 953 | linenr_T do_ecmd_lnum; /* the line number in an edited file */ |
| 954 | int append; /* TRUE with ":w >>file" command */ |
| 955 | int usefilter; /* TRUE with ":w !command" and ":r!command" */ |
| 956 | int amount; /* number of '>' or '<' for shift command */ |
| 957 | int regname; /* register name (NUL if none) */ |
| 958 | int force_bin; /* 0, FORCE_BIN or FORCE_NOBIN */ |
| 959 | int force_ff; /* forced 'fileformat' (index in cmd[]) */ |
| 960 | #ifdef FEAT_MBYTE |
| 961 | int force_enc; /* forced 'encoding' (index in cmd[]) */ |
| 962 | #endif |
| 963 | #ifdef FEAT_USR_CMDS |
| 964 | int useridx; /* user command index */ |
| 965 | #endif |
| 966 | char_u *errmsg; /* returned error message */ |
| 967 | char_u *(*getline) __ARGS((int, void *, int)); |
| 968 | void *cookie; /* argument for getline() */ |
| 969 | #ifdef FEAT_EVAL |
| 970 | struct condstack *cstack; /* condition stack for ":if" etc. */ |
| 971 | #endif |
| 972 | }; |
| 973 | |
| 974 | #define FORCE_BIN 1 /* ":edit ++bin file" */ |
| 975 | #define FORCE_NOBIN 2 /* ":edit ++nobin file" */ |
| 976 | |
| 977 | #endif |