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