To: vim_dev@googlegroups.com Subject: Patch 8.1.1667 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.1.1667 Problem: Flags for Ex commands may clash with other symbols. Solution: Prepend with EX_. Files: src/ex_cmds.h, src/evalfunc.c, src/ex_docmd.c, src/ex_getln.c, src/usercmd.c, src/syntax.c *** ../vim-8.1.1666/src/ex_cmds.h 2019-06-25 04:12:12.308665266 +0200 --- src/ex_cmds.h 2019-07-12 17:48:33.286991166 +0200 *************** *** 27,65 **** * long name of the command. */ ! #ifdef RANGE ! # undef RANGE // SASC on Amiga defines it ! #endif ! ! #define RANGE 0x001 // allow a linespecs ! #define BANG 0x002 // allow a ! after the command name ! #define EXTRA 0x004 // allow extra args after command name ! #define XFILE 0x008 // expand wildcards in extra part ! #define NOSPC 0x010 // no spaces allowed in the extra part ! #define DFLALL 0x020 // default file range is 1,$ ! #define WHOLEFOLD 0x040 // extend range to include whole fold also // when less than two numbers given ! #define NEEDARG 0x080 // argument required ! #define TRLBAR 0x100 // check for trailing vertical bar ! #define REGSTR 0x200 // allow "x for register designation ! #define COUNT 0x400 // allow count in argument, after command ! #define NOTRLCOM 0x800 // no trailing comment allowed ! #define ZEROR 0x1000 // zero line number allowed ! #define USECTRLV 0x2000 // do not remove CTRL-V from argument ! #define EDITCMD 0x4000 // allow "+command" argument ! #define BUFNAME 0x8000 // accepts buffer name ! #define BUFUNL 0x10000L // accepts unlisted buffer too ! #define ARGOPT 0x20000L // allow "++opt=val" argument ! #define SBOXOK 0x40000L // allowed in the sandbox ! #define CMDWIN 0x80000L // allowed in cmdline window; when missing // disallows editing another buffer when // curbuf_lock is set ! #define MODIFY 0x100000L // forbidden in non-'modifiable' buffer ! #define EXFLAGS 0x200000L // allow flags after count in argument ! #define RESTRICT 0x400000L // forbidden in restricted mode ! #define FILES (XFILE | EXTRA) // multiple extra files allowed ! #define WORD1 (EXTRA | NOSPC) // one extra word allowed ! #define FILE1 (FILES | NOSPC) // 1 file allowed, defaults to current file #ifndef DO_DECLARE_EXCMD /* --- 27,61 ---- * long name of the command. */ ! #define EX_RANGE 0x001 // allow a linespecs ! #define EX_BANG 0x002 // allow a ! after the command name ! #define EX_EXTRA 0x004 // allow extra args after command name ! #define EX_XFILE 0x008 // expand wildcards in extra part ! #define EX_NOSPC 0x010 // no spaces allowed in the extra part ! #define EX_DFLALL 0x020 // default file range is 1,$ ! #define EX_WHOLEFOLD 0x040 // extend range to include whole fold also // when less than two numbers given ! #define EX_NEEDARG 0x080 // argument required ! #define EX_TRLBAR 0x100 // check for trailing vertical bar ! #define EX_REGSTR 0x200 // allow "x for register designation ! #define EX_COUNT 0x400 // allow count in argument, after command ! #define EX_NOTRLCOM 0x800 // no trailing comment allowed ! #define EX_ZEROR 0x1000 // zero line number allowed ! #define EX_CTRLV 0x2000 // do not remove CTRL-V from argument ! #define EX_CMDARG 0x4000 // allow "+command" argument ! #define EX_BUFNAME 0x8000 // accepts buffer name ! #define EX_BUFUNL 0x10000 // accepts unlisted buffer too ! #define EX_ARGOPT 0x20000 // allow "++opt=val" argument ! #define EX_SBOXOK 0x40000 // allowed in the sandbox ! #define EX_CMDWIN 0x80000 // allowed in cmdline window; when missing // disallows editing another buffer when // curbuf_lock is set ! #define EX_MODIFY 0x100000 // forbidden in non-'modifiable' buffer ! #define EX_FLAGS 0x200000 // allow flags after count in argument ! #define EX_RESTRICT 0x400000 // forbidden in restricted mode ! #define EX_FILES (EX_XFILE | EX_EXTRA) // multiple extra files allowed ! #define EX_FILE1 (EX_FILES | EX_NOSPC) // 1 file, defaults to current file ! #define EX_WORD1 (EX_EXTRA | EX_NOSPC) // one extra word allowed #ifndef DO_DECLARE_EXCMD /* *************** *** 93,103 **** * before "rewind"). * Not supported commands are included to avoid ambiguities. */ - #ifdef EX - # undef EX // just in case - #endif #ifdef DO_DECLARE_EXCMD ! # define EX(a, b, c, d, e) {(char_u *)b, c, (long_u)(d), e} typedef void (*ex_func_T) (exarg_T *eap); --- 89,96 ---- * before "rewind"). * Not supported commands are included to avoid ambiguities. */ #ifdef DO_DECLARE_EXCMD ! # define EXCMD(a, b, c, d, e) {(char_u *)b, c, (long_u)(d), e} typedef void (*ex_func_T) (exarg_T *eap); *************** *** 109,1801 **** cmd_addr_T cmd_addr_type; // flag for address type } cmdnames[] = #else ! # define EX(a, b, c, d, e) a enum CMD_index #endif { ! EX(CMD_append, "append", ex_append, ! BANG|RANGE|ZEROR|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_abbreviate, "abbreviate", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_abclear, "abclear", ex_abclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_aboveleft, "aboveleft", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_all, "all", ex_all, ! BANG|RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_amenu, "amenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_anoremenu, "anoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_args, "args", ex_args, ! BANG|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_argadd, "argadd", ex_argadd, ! BANG|RANGE|ZEROR|FILES|TRLBAR, ADDR_ARGUMENTS), ! EX(CMD_argdelete, "argdelete", ex_argdelete, ! BANG|RANGE|FILES|TRLBAR, ADDR_ARGUMENTS), ! EX(CMD_argdo, "argdo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_ARGUMENTS), ! EX(CMD_argedit, "argedit", ex_argedit, ! BANG|NEEDARG|RANGE|ZEROR|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_ARGUMENTS), ! EX(CMD_argglobal, "argglobal", ex_args, ! BANG|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_arglocal, "arglocal", ex_args, ! BANG|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_argument, "argument", ex_argument, ! BANG|RANGE|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR, ADDR_ARGUMENTS), ! EX(CMD_ascii, "ascii", do_ascii, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_autocmd, "autocmd", ex_autocmd, ! BANG|EXTRA|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_augroup, "augroup", ex_autocmd, ! BANG|WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_aunmenu, "aunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_buffer, "buffer", ex_buffer, ! BANG|RANGE|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR, ADDR_BUFFERS), ! EX(CMD_bNext, "bNext", ex_bprevious, ! BANG|RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_ball, "ball", ex_buffer_all, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_badd, "badd", ex_edit, ! NEEDARG|FILE1|EDITCMD|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_bdelete, "bdelete", ex_bunload, ! BANG|RANGE|BUFNAME|COUNT|EXTRA|TRLBAR, ADDR_BUFFERS), ! EX(CMD_behave, "behave", ex_behave, ! BANG|NEEDARG|WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_belowright, "belowright", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_bfirst, "bfirst", ex_brewind, ! BANG|RANGE|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_blast, "blast", ex_blast, ! BANG|RANGE|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_bmodified, "bmodified", ex_bmodified, ! BANG|RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_bnext, "bnext", ex_bnext, ! BANG|RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_botright, "botright", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_bprevious, "bprevious", ex_bprevious, ! BANG|RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_brewind, "brewind", ex_brewind, ! BANG|RANGE|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_break, "break", ex_break, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_breakadd, "breakadd", ex_breakadd, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_breakdel, "breakdel", ex_breakdel, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_breaklist, "breaklist", ex_breaklist, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_browse, "browse", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_buffers, "buffers", buflist_list, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_bufdo, "bufdo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_BUFFERS), ! EX(CMD_bunload, "bunload", ex_bunload, ! BANG|RANGE|BUFNAME|COUNT|EXTRA|TRLBAR, ADDR_LOADED_BUFFERS), ! EX(CMD_bwipeout, "bwipeout", ex_bunload, ! BANG|RANGE|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR, ADDR_BUFFERS), ! EX(CMD_change, "change", ex_change, ! BANG|WHOLEFOLD|RANGE|COUNT|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_cNext, "cNext", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cNfile, "cNfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cabbrev, "cabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cabclear, "cabclear", ex_abclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_cabove, "cabove", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_caddbuffer, "caddbuffer", ex_cbuffer, ! RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_caddexpr, "caddexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR, ADDR_NONE), ! EX(CMD_caddfile, "caddfile", ex_cfile, ! TRLBAR|FILE1, ADDR_NONE), ! EX(CMD_cafter, "cafter", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_call, "call", ex_call, ! RANGE|NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_catch, "catch", ex_catch, ! EXTRA|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_cbuffer, "cbuffer", ex_cbuffer, ! BANG|RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_cbefore, "cbefore", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_cbelow, "cbelow", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_cbottom, "cbottom", ex_cbottom, ! TRLBAR, ADDR_NONE), ! EX(CMD_cc, "cc", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_QUICKFIX), ! EX(CMD_cclose, "cclose", ex_cclose, ! TRLBAR, ADDR_NONE), ! EX(CMD_cd, "cd", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_cdo, "cdo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_QUICKFIX_VALID), ! EX(CMD_center, "center", ex_align, ! TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_cexpr, "cexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG, ADDR_NONE), ! EX(CMD_cfile, "cfile", ex_cfile, ! TRLBAR|FILE1|BANG, ADDR_NONE), ! EX(CMD_cfdo, "cfdo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_QUICKFIX_VALID), ! EX(CMD_cfirst, "cfirst", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cgetfile, "cgetfile", ex_cfile, ! TRLBAR|FILE1, ADDR_NONE), ! EX(CMD_cgetbuffer, "cgetbuffer", ex_cbuffer, ! RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_cgetexpr, "cgetexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR, ADDR_NONE), ! EX(CMD_chdir, "chdir", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_changes, "changes", ex_changes, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_checkpath, "checkpath", ex_checkpath, ! TRLBAR|BANG|CMDWIN, ADDR_NONE), ! EX(CMD_checktime, "checktime", ex_checktime, ! RANGE|BUFNAME|COUNT|EXTRA|TRLBAR, ADDR_OTHER), ! EX(CMD_chistory, "chistory", qf_history, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_clist, "clist", qf_list, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_clast, "clast", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_close, "close", ex_close, ! BANG|RANGE|COUNT|TRLBAR|CMDWIN, ADDR_WINDOWS), ! EX(CMD_clearjumps, "clearjumps", ex_clearjumps, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_cmap, "cmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cmapclear, "cmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_cmenu, "cmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_cnext, "cnext", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cnewer, "cnewer", qf_age, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_cnfile, "cnfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cnoremap, "cnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cnoreabbrev, "cnoreabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cnoremenu, "cnoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_copy, "copy", ex_copymove, ! RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_colder, "colder", qf_age, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_colorscheme, "colorscheme", ex_colorscheme, ! WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_command, "command", ex_command, ! EXTRA|BANG|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_comclear, "comclear", ex_comclear, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_compiler, "compiler", ex_compiler, ! BANG|TRLBAR|WORD1|CMDWIN, ADDR_NONE), ! EX(CMD_continue, "continue", ex_continue, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_confirm, "confirm", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_const, "const", ex_const, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_copen, "copen", ex_copen, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_cprevious, "cprevious", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cpfile, "cpfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_OTHER), ! EX(CMD_cquit, "cquit", ex_cquit, ! TRLBAR|BANG, ADDR_NONE), ! EX(CMD_crewind, "crewind", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_cscope, "cscope", ex_cscope, ! EXTRA|NOTRLCOM|XFILE, ADDR_NONE), ! EX(CMD_cstag, "cstag", ex_cstag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_cunmap, "cunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cunabbrev, "cunabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cunmenu, "cunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_cwindow, "cwindow", ex_cwindow, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_delete, "delete", ex_operators, ! RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_delmarks, "delmarks", ex_delmarks, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_debug, "debug", ex_debug, ! NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_debuggreedy, "debuggreedy", ex_debuggreedy, ! RANGE|ZEROR|TRLBAR|CMDWIN, ADDR_OTHER), ! EX(CMD_delcommand, "delcommand", ex_delcommand, ! NEEDARG|WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_delfunction, "delfunction", ex_delfunction, ! BANG|NEEDARG|WORD1|CMDWIN, ADDR_NONE), ! EX(CMD_display, "display", ex_display, ! EXTRA|NOTRLCOM|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_diffupdate, "diffupdate", ex_diffupdate, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_diffget, "diffget", ex_diffgetput, ! RANGE|EXTRA|TRLBAR|MODIFY, ADDR_LINES), ! EX(CMD_diffoff, "diffoff", ex_diffoff, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_diffpatch, "diffpatch", ex_diffpatch, ! EXTRA|FILE1|TRLBAR|MODIFY, ADDR_NONE), ! EX(CMD_diffput, "diffput", ex_diffgetput, ! RANGE|EXTRA|TRLBAR, ADDR_LINES), ! EX(CMD_diffsplit, "diffsplit", ex_diffsplit, ! EXTRA|FILE1|TRLBAR, ADDR_NONE), ! EX(CMD_diffthis, "diffthis", ex_diffthis, ! TRLBAR, ADDR_NONE), ! EX(CMD_digraphs, "digraphs", ex_digraphs, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_djump, "djump", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, ADDR_LINES), ! EX(CMD_dlist, "dlist", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_doautocmd, "doautocmd", ex_doautocmd, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_doautoall, "doautoall", ex_doautoall, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_drop, "drop", ex_drop, ! FILES|EDITCMD|NEEDARG|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_dsearch, "dsearch", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_dsplit, "dsplit", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, ADDR_LINES), ! EX(CMD_edit, "edit", ex_edit, ! BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_earlier, "earlier", ex_later, ! TRLBAR|EXTRA|NOSPC|CMDWIN, ADDR_NONE), ! EX(CMD_echo, "echo", ex_echo, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_echoerr, "echoerr", ex_execute, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_echohl, "echohl", ex_echohl, ! EXTRA|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_echomsg, "echomsg", ex_execute, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_echon, "echon", ex_echo, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_else, "else", ex_else, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_elseif, "elseif", ex_else, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_emenu, "emenu", ex_emenu, ! NEEDARG|EXTRA|TRLBAR|NOTRLCOM|RANGE|CMDWIN, ADDR_OTHER), ! EX(CMD_endif, "endif", ex_endif, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_endfunction, "endfunction", ex_endfunction, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_endfor, "endfor", ex_endwhile, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_endtry, "endtry", ex_endtry, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_endwhile, "endwhile", ex_endwhile, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_enew, "enew", ex_edit, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_ex, "ex", ex_edit, ! BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_execute, "execute", ex_execute, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_exit, "exit", ex_exit, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_exusage, "exusage", ex_exusage, ! TRLBAR, ADDR_NONE), ! EX(CMD_file, "file", ex_file, ! RANGE|ZEROR|BANG|FILE1|TRLBAR, ADDR_OTHER), ! EX(CMD_files, "files", buflist_list, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_filetype, "filetype", ex_filetype, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_filter, "filter", ex_wrongmodifier, ! BANG|NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_find, "find", ex_find, ! RANGE|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_finally, "finally", ex_finally, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_finish, "finish", ex_finish, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_first, "first", ex_rewind, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_fixdel, "fixdel", do_fixdel, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_fold, "fold", ex_fold, ! RANGE|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_foldclose, "foldclose", ex_foldopen, ! RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_folddoopen, "folddoopen", ex_folddo, ! RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM, ADDR_LINES), ! EX(CMD_folddoclosed, "folddoclosed", ex_folddo, ! RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM, ADDR_LINES), ! EX(CMD_foldopen, "foldopen", ex_foldopen, ! RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_for, "for", ex_while, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_function, "function", ex_function, ! EXTRA|BANG|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_global, "global", ex_global, ! RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_goto, "goto", ex_goto, ! RANGE|COUNT|TRLBAR|SBOXOK|CMDWIN, ADDR_OTHER), ! EX(CMD_grep, "grep", ex_make, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_grepadd, "grepadd", ex_make, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_gui, "gui", ex_gui, ! BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_gvim, "gvim", ex_gui, ! BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_help, "help", ex_help, ! BANG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_helpclose, "helpclose", ex_helpclose, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_helpfind, "helpfind", ex_helpfind, ! EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_helpgrep, "helpgrep", ex_helpgrep, ! EXTRA|NOTRLCOM|NEEDARG, ADDR_NONE), ! EX(CMD_helptags, "helptags", ex_helptags, ! NEEDARG|FILES|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_hardcopy, "hardcopy", ex_hardcopy, ! RANGE|COUNT|EXTRA|TRLBAR|DFLALL|BANG, ADDR_LINES), ! EX(CMD_highlight, "highlight", ex_highlight, ! BANG|EXTRA|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_hide, "hide", ex_hide, ! BANG|RANGE|COUNT|EXTRA|TRLBAR, ADDR_WINDOWS), ! EX(CMD_history, "history", ex_history, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_insert, "insert", ex_append, ! BANG|RANGE|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_iabbrev, "iabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_iabclear, "iabclear", ex_abclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_if, "if", ex_if, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_ijump, "ijump", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, ADDR_LINES), ! EX(CMD_ilist, "ilist", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_imap, "imap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_imapclear, "imapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_imenu, "imenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_inoremap, "inoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_inoreabbrev, "inoreabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_inoremenu, "inoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_intro, "intro", ex_intro, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_isearch, "isearch", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_isplit, "isplit", ex_findpat, ! BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA, ADDR_LINES), ! EX(CMD_iunmap, "iunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_iunabbrev, "iunabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_iunmenu, "iunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_join, "join", ex_join, ! BANG|RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_jumps, "jumps", ex_jumps, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_k, "k", ex_mark, ! RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_keepmarks, "keepmarks", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_keepjumps, "keepjumps", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_keeppatterns, "keeppatterns", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_keepalt, "keepalt", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_list, "list", ex_print, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_lNext, "lNext", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_lNfile, "lNfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_last, "last", ex_last, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_labove, "labove", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_language, "language", ex_language, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_laddexpr, "laddexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR, ADDR_NONE), ! EX(CMD_laddbuffer, "laddbuffer", ex_cbuffer, ! RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_laddfile, "laddfile", ex_cfile, ! TRLBAR|FILE1, ADDR_NONE), ! EX(CMD_lafter, "lafter", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_later, "later", ex_later, ! TRLBAR|EXTRA|NOSPC|CMDWIN, ADDR_NONE), ! EX(CMD_lbuffer, "lbuffer", ex_cbuffer, ! BANG|RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_lbefore, "lbefore", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_lbelow, "lbelow", ex_cbelow, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_lbottom, "lbottom", ex_cbottom, ! TRLBAR, ADDR_NONE), ! EX(CMD_lcd, "lcd", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_lchdir, "lchdir", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_lclose, "lclose", ex_cclose, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_lcscope, "lcscope", ex_cscope, ! EXTRA|NOTRLCOM|XFILE, ADDR_NONE), ! EX(CMD_ldo, "ldo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_QUICKFIX_VALID), ! EX(CMD_left, "left", ex_align, ! TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_leftabove, "leftabove", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_let, "let", ex_let, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_lexpr, "lexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG, ADDR_NONE), ! EX(CMD_lfile, "lfile", ex_cfile, ! TRLBAR|FILE1|BANG, ADDR_NONE), ! EX(CMD_lfdo, "lfdo", ex_listdo, ! BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_QUICKFIX_VALID), ! EX(CMD_lfirst, "lfirst", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_lgetfile, "lgetfile", ex_cfile, ! TRLBAR|FILE1, ADDR_NONE), ! EX(CMD_lgetbuffer, "lgetbuffer", ex_cbuffer, ! RANGE|WORD1|TRLBAR, ADDR_OTHER), ! EX(CMD_lgetexpr, "lgetexpr", ex_cexpr, ! NEEDARG|WORD1|NOTRLCOM|TRLBAR, ADDR_NONE), ! EX(CMD_lgrep, "lgrep", ex_make, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_lgrepadd, "lgrepadd", ex_make, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_lhelpgrep, "lhelpgrep", ex_helpgrep, ! EXTRA|NOTRLCOM|NEEDARG, ADDR_NONE), ! EX(CMD_lhistory, "lhistory", qf_history, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_ll, "ll", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_QUICKFIX), ! EX(CMD_llast, "llast", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_llist, "llist", qf_list, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_lmap, "lmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_lmapclear, "lmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_lmake, "lmake", ex_make, ! BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_NONE), ! EX(CMD_lnoremap, "lnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_lnext, "lnext", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_lnewer, "lnewer", qf_age, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_lnfile, "lnfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_loadview, "loadview", ex_loadview, ! FILE1|TRLBAR, ADDR_NONE), ! EX(CMD_loadkeymap, "loadkeymap", ex_loadkeymap, ! CMDWIN, ADDR_NONE), ! EX(CMD_lockmarks, "lockmarks", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_lockvar, "lockvar", ex_lockvar, ! BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_lolder, "lolder", qf_age, ! RANGE|COUNT|TRLBAR, ADDR_UNSIGNED), ! EX(CMD_lopen, "lopen", ex_copen, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_lprevious, "lprevious", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_lpfile, "lpfile", ex_cnext, ! RANGE|COUNT|TRLBAR|BANG, ADDR_OTHER), ! EX(CMD_lrewind, "lrewind", ex_cc, ! RANGE|COUNT|TRLBAR|BANG, ADDR_UNSIGNED), ! EX(CMD_ltag, "ltag", ex_tag, ! TRLBAR|BANG|WORD1, ADDR_NONE), ! EX(CMD_lunmap, "lunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_lua, "lua", ex_lua, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_luado, "luado", ex_luado, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_luafile, "luafile", ex_luafile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_lvimgrep, "lvimgrep", ex_vimgrep, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_lvimgrepadd, "lvimgrepadd", ex_vimgrep, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_lwindow, "lwindow", ex_cwindow, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_ls, "ls", buflist_list, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_move, "move", ex_copymove, ! RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_mark, "mark", ex_mark, ! RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_make, "make", ex_make, ! BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_NONE), ! EX(CMD_map, "map", ex_map, ! BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_mapclear, "mapclear", ex_mapclear, ! EXTRA|BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_marks, "marks", do_marks, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_match, "match", ex_match, ! RANGE|EXTRA|CMDWIN, ADDR_OTHER), ! EX(CMD_menu, "menu", ex_menu, ! RANGE|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_menutranslate, "menutranslate", ex_menutranslate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_messages, "messages", ex_messages, ! EXTRA|TRLBAR|RANGE|CMDWIN, ADDR_OTHER), ! EX(CMD_mkexrc, "mkexrc", ex_mkrc, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_mksession, "mksession", ex_mkrc, ! BANG|FILE1|TRLBAR, ADDR_NONE), ! EX(CMD_mkspell, "mkspell", ex_mkspell, ! BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_NONE), ! EX(CMD_mkvimrc, "mkvimrc", ex_mkrc, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_mkview, "mkview", ex_mkrc, ! BANG|FILE1|TRLBAR, ADDR_NONE), ! EX(CMD_mode, "mode", ex_mode, ! WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_mzscheme, "mzscheme", ex_mzscheme, ! RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN|SBOXOK|RESTRICT, ADDR_LINES), ! EX(CMD_mzfile, "mzfile", ex_mzfile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_next, "next", ex_next, ! RANGE|BANG|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_nbkey, "nbkey", ex_nbkey, ! EXTRA|NEEDARG, ADDR_NONE), ! EX(CMD_nbclose, "nbclose", ex_nbclose, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_nbstart, "nbstart", ex_nbstart, ! WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_new, "new", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_nmap, "nmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_nmapclear, "nmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_nmenu, "nmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_nnoremap, "nnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_nnoremenu, "nnoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_noremap, "noremap", ex_map, ! BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_noautocmd, "noautocmd", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_nohlsearch, "nohlsearch", ex_nohlsearch, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_noreabbrev, "noreabbrev", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_noremenu, "noremenu", ex_menu, ! RANGE|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_noswapfile, "noswapfile", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_normal, "normal", ex_normal, ! RANGE|BANG|EXTRA|NEEDARG|NOTRLCOM|USECTRLV|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_number, "number", ex_print, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_nunmap, "nunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_nunmenu, "nunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_open, "open", ex_open, ! RANGE|BANG|EXTRA, ADDR_LINES), ! EX(CMD_oldfiles, "oldfiles", ex_oldfiles, ! BANG|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_omap, "omap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_omapclear, "omapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_omenu, "omenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_only, "only", ex_only, ! BANG|RANGE|COUNT|TRLBAR, ADDR_WINDOWS), ! EX(CMD_onoremap, "onoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_onoremenu, "onoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_options, "options", ex_options, ! TRLBAR, ADDR_NONE), ! EX(CMD_ounmap, "ounmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_ounmenu, "ounmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_ownsyntax, "ownsyntax", ex_ownsyntax, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_print, "print", ex_print, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|SBOXOK, ADDR_LINES), ! EX(CMD_packadd, "packadd", ex_packadd, ! BANG|FILE1|NEEDARG|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_packloadall, "packloadall", ex_packloadall, ! BANG|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_pclose, "pclose", ex_pclose, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_perl, "perl", ex_perl, ! RANGE|EXTRA|DFLALL|NEEDARG|SBOXOK|CMDWIN, ADDR_LINES), ! EX(CMD_perldo, "perldo", ex_perldo, ! RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN, ADDR_LINES), ! EX(CMD_pedit, "pedit", ex_pedit, ! BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_pop, "pop", ex_tag, ! RANGE|BANG|COUNT|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_popup, "popup", ex_popup, ! NEEDARG|EXTRA|BANG|TRLBAR|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_ppop, "ppop", ex_ptag, ! RANGE|BANG|COUNT|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_preserve, "preserve", ex_preserve, ! TRLBAR, ADDR_NONE), ! EX(CMD_previous, "previous", ex_previous, ! EXTRA|RANGE|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_promptfind, "promptfind", gui_mch_find_dialog, ! EXTRA|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_promptrepl, "promptrepl", gui_mch_replace_dialog, ! EXTRA|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_profile, "profile", ex_profile, ! BANG|EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_profdel, "profdel", ex_breakdel, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_psearch, "psearch", ex_psearch, ! BANG|RANGE|WHOLEFOLD|DFLALL|EXTRA, ADDR_LINES), ! EX(CMD_ptag, "ptag", ex_ptag, ! RANGE|BANG|WORD1|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptNext, "ptNext", ex_ptag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptfirst, "ptfirst", ex_ptag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptjump, "ptjump", ex_ptag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_ptlast, "ptlast", ex_ptag, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_ptnext, "ptnext", ex_ptag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptprevious, "ptprevious", ex_ptag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptrewind, "ptrewind", ex_ptag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_ptselect, "ptselect", ex_ptag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_put, "put", ex_put, ! RANGE|WHOLEFOLD|BANG|REGSTR|TRLBAR|ZEROR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_pwd, "pwd", ex_pwd, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_python, "python", ex_python, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pydo, "pydo", ex_pydo, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pyfile, "pyfile", ex_pyfile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_py3, "py3", ex_py3, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_py3do, "py3do", ex_py3do, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_python3, "python3", ex_py3, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_py3file, "py3file", ex_py3file, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pyx, "pyx", ex_pyx, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pyxdo, "pyxdo", ex_pyxdo, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pythonx, "pythonx", ex_pyx, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_pyxfile, "pyxfile", ex_pyxfile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_quit, "quit", ex_quit, ! BANG|RANGE|COUNT|TRLBAR|CMDWIN, ADDR_WINDOWS), ! EX(CMD_quitall, "quitall", ex_quit_all, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_qall, "qall", ex_quit_all, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_read, "read", ex_read, ! BANG|RANGE|WHOLEFOLD|FILE1|ARGOPT|TRLBAR|ZEROR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_recover, "recover", ex_recover, ! BANG|FILE1|TRLBAR, ADDR_NONE), ! EX(CMD_redo, "redo", ex_redo, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_redir, "redir", ex_redir, ! BANG|FILES|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_redraw, "redraw", ex_redraw, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_redrawstatus, "redrawstatus", ex_redrawstatus, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_redrawtabline, "redrawtabline", ex_redrawtabline, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_registers, "registers", ex_display, ! EXTRA|NOTRLCOM|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_resize, "resize", ex_resize, ! RANGE|TRLBAR|WORD1|CMDWIN, ADDR_OTHER), ! EX(CMD_retab, "retab", ex_retab, ! TRLBAR|RANGE|WHOLEFOLD|DFLALL|BANG|WORD1|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_return, "return", ex_return, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_rewind, "rewind", ex_rewind, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_right, "right", ex_align, ! TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_rightbelow, "rightbelow", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_runtime, "runtime", ex_runtime, ! BANG|NEEDARG|FILES|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_ruby, "ruby", ex_ruby, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_rubydo, "rubydo", ex_rubydo, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_rubyfile, "rubyfile", ex_rubyfile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_rundo, "rundo", ex_rundo, ! NEEDARG|FILE1, ADDR_NONE), ! EX(CMD_rviminfo, "rviminfo", ex_viminfo, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_substitute, "substitute", do_sub, ! RANGE|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_sNext, "sNext", ex_previous, ! EXTRA|RANGE|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_sargument, "sargument", ex_argument, ! BANG|RANGE|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR, ADDR_ARGUMENTS), ! EX(CMD_sall, "sall", ex_all, ! BANG|RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_sandbox, "sandbox", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_saveas, "saveas", ex_write, ! BANG|FILE1|ARGOPT|CMDWIN|TRLBAR, ADDR_NONE), ! EX(CMD_sbuffer, "sbuffer", ex_buffer, ! BANG|RANGE|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR, ADDR_BUFFERS), ! EX(CMD_sbNext, "sbNext", ex_bprevious, ! RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_sball, "sball", ex_buffer_all, ! RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_sbfirst, "sbfirst", ex_brewind, ! EDITCMD|TRLBAR, ADDR_NONE), ! EX(CMD_sblast, "sblast", ex_blast, ! EDITCMD|TRLBAR, ADDR_NONE), ! EX(CMD_sbmodified, "sbmodified", ex_bmodified, ! RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_sbnext, "sbnext", ex_bnext, ! RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_sbprevious, "sbprevious", ex_bprevious, ! RANGE|COUNT|EDITCMD|TRLBAR, ADDR_OTHER), ! EX(CMD_sbrewind, "sbrewind", ex_brewind, ! EDITCMD|TRLBAR, ADDR_NONE), ! EX(CMD_scriptnames, "scriptnames", ex_scriptnames, ! BANG|RANGE|COUNT|TRLBAR|CMDWIN, ADDR_OTHER), ! EX(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, ! WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_scriptversion, "scriptversion", ex_scriptversion, ! WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_scscope, "scscope", ex_scscope, ! EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_set, "set", ex_set, ! TRLBAR|EXTRA|CMDWIN|SBOXOK, ADDR_NONE), ! EX(CMD_setfiletype, "setfiletype", ex_setfiletype, ! TRLBAR|EXTRA|NEEDARG|CMDWIN, ADDR_NONE), ! EX(CMD_setglobal, "setglobal", ex_set, ! TRLBAR|EXTRA|CMDWIN|SBOXOK, ADDR_NONE), ! EX(CMD_setlocal, "setlocal", ex_set, ! TRLBAR|EXTRA|CMDWIN|SBOXOK, ADDR_NONE), ! EX(CMD_sfind, "sfind", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_sfirst, "sfirst", ex_rewind, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_shell, "shell", ex_shell, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_simalt, "simalt", ex_simalt, ! NEEDARG|WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_sign, "sign", ex_sign, ! NEEDARG|RANGE|EXTRA|CMDWIN, ADDR_OTHER), ! EX(CMD_silent, "silent", ex_wrongmodifier, ! NEEDARG|EXTRA|BANG|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_sleep, "sleep", ex_sleep, ! RANGE|COUNT|EXTRA|TRLBAR|CMDWIN, ADDR_OTHER), ! EX(CMD_slast, "slast", ex_last, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_smagic, "smagic", ex_submagic, ! RANGE|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_smap, "smap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_smapclear, "smapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_smenu, "smenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_snext, "snext", ex_next, ! RANGE|BANG|FILES|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_snomagic, "snomagic", ex_submagic, ! RANGE|WHOLEFOLD|EXTRA|CMDWIN, ADDR_LINES), ! EX(CMD_snoremap, "snoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_snoremenu, "snoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_source, "source", ex_source, ! BANG|FILE1|TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_sort, "sort", ex_sort, ! RANGE|DFLALL|WHOLEFOLD|BANG|EXTRA|NOTRLCOM|MODIFY, ADDR_LINES), ! EX(CMD_split, "split", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_spellgood, "spellgood", ex_spell, ! BANG|RANGE|NEEDARG|EXTRA|TRLBAR, ADDR_OTHER), ! EX(CMD_spelldump, "spelldump", ex_spelldump, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_spellinfo, "spellinfo", ex_spellinfo, ! TRLBAR, ADDR_NONE), ! EX(CMD_spellrepall, "spellrepall", ex_spellrepall, ! TRLBAR, ADDR_NONE), ! EX(CMD_spellundo, "spellundo", ex_spell, ! BANG|RANGE|NEEDARG|EXTRA|TRLBAR, ADDR_OTHER), ! EX(CMD_spellwrong, "spellwrong", ex_spell, ! BANG|RANGE|NEEDARG|EXTRA|TRLBAR, ADDR_OTHER), ! EX(CMD_sprevious, "sprevious", ex_previous, ! EXTRA|RANGE|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_srewind, "srewind", ex_rewind, ! EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_stop, "stop", ex_stop, ! TRLBAR|BANG|CMDWIN, ADDR_NONE), ! EX(CMD_stag, "stag", ex_stag, ! RANGE|BANG|WORD1|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_startinsert, "startinsert", ex_startinsert, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_startgreplace, "startgreplace", ex_startinsert, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_startreplace, "startreplace", ex_startinsert, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_stopinsert, "stopinsert", ex_stopinsert, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_stjump, "stjump", ex_stag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_stselect, "stselect", ex_stag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_sunhide, "sunhide", ex_buffer_all, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_sunmap, "sunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_sunmenu, "sunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_suspend, "suspend", ex_stop, ! TRLBAR|BANG|CMDWIN, ADDR_NONE), ! EX(CMD_sview, "sview", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_swapname, "swapname", ex_swapname, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_syntax, "syntax", ex_syntax, ! EXTRA|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_syntime, "syntime", ex_syntime, ! NEEDARG|WORD1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_syncbind, "syncbind", ex_syncbind, ! TRLBAR, ADDR_NONE), ! EX(CMD_smile, "smile", ex_smile, ! TRLBAR|CMDWIN|SBOXOK, ADDR_NONE), ! EX(CMD_t, "t", ex_copymove, ! RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_tNext, "tNext", ex_tag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_tag, "tag", ex_tag, ! RANGE|BANG|WORD1|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_tags, "tags", do_tags, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_tab, "tab", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_tabclose, "tabclose", ex_tabclose, ! BANG|RANGE|ZEROR|EXTRA|NOSPC|TRLBAR|CMDWIN, ADDR_TABS), ! EX(CMD_tabdo, "tabdo", ex_listdo, ! NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_TABS), ! EX(CMD_tabedit, "tabedit", ex_splitview, ! BANG|FILE1|RANGE|ZEROR|EDITCMD|ARGOPT|TRLBAR, ADDR_TABS), ! EX(CMD_tabfind, "tabfind", ex_splitview, ! BANG|FILE1|RANGE|ZEROR|EDITCMD|ARGOPT|NEEDARG|TRLBAR, ADDR_TABS), ! EX(CMD_tabfirst, "tabfirst", ex_tabnext, ! TRLBAR, ADDR_NONE), ! EX(CMD_tabmove, "tabmove", ex_tabmove, ! RANGE|ZEROR|EXTRA|NOSPC|TRLBAR, ADDR_TABS), ! EX(CMD_tablast, "tablast", ex_tabnext, ! TRLBAR, ADDR_NONE), ! EX(CMD_tabnext, "tabnext", ex_tabnext, ! RANGE|ZEROR|EXTRA|NOSPC|TRLBAR, ADDR_TABS), ! EX(CMD_tabnew, "tabnew", ex_splitview, ! BANG|FILE1|RANGE|ZEROR|EDITCMD|ARGOPT|TRLBAR, ADDR_TABS), ! EX(CMD_tabonly, "tabonly", ex_tabonly, ! BANG|RANGE|ZEROR|EXTRA|NOSPC|TRLBAR|CMDWIN, ADDR_TABS), ! EX(CMD_tabprevious, "tabprevious", ex_tabnext, ! RANGE|ZEROR|EXTRA|NOSPC|TRLBAR, ADDR_TABS_RELATIVE), ! EX(CMD_tabNext, "tabNext", ex_tabnext, ! RANGE|ZEROR|EXTRA|NOSPC|TRLBAR, ADDR_TABS_RELATIVE), ! EX(CMD_tabrewind, "tabrewind", ex_tabnext, ! TRLBAR, ADDR_NONE), ! EX(CMD_tabs, "tabs", ex_tabs, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_tcd, "tcd", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_tchdir, "tchdir", ex_cd, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_tcl, "tcl", ex_tcl, ! RANGE|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_tcldo, "tcldo", ex_tcldo, ! RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_tclfile, "tclfile", ex_tclfile, ! RANGE|FILE1|NEEDARG|CMDWIN|RESTRICT, ADDR_LINES), ! EX(CMD_tearoff, "tearoff", ex_tearoff, ! NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN, ADDR_NONE), ! EX(CMD_terminal, "terminal", ex_terminal, ! RANGE|BANG|FILES|CMDWIN, ADDR_LINES), ! EX(CMD_tfirst, "tfirst", ex_tag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_throw, "throw", ex_throw, ! EXTRA|NEEDARG|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_tjump, "tjump", ex_tag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_tlast, "tlast", ex_tag, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_tlmenu, "tlmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_tlnoremenu, "tlnoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_tlunmenu, "tlunmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_tmenu, "tmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_tmap, "tmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_tmapclear, "tmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_tnext, "tnext", ex_tag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_tnoremap, "tnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_topleft, "topleft", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_tprevious, "tprevious", ex_tag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_trewind, "trewind", ex_tag, ! RANGE|BANG|TRLBAR|ZEROR, ADDR_OTHER), ! EX(CMD_try, "try", ex_try, ! TRLBAR|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_tselect, "tselect", ex_tag, ! BANG|TRLBAR|WORD1, ADDR_NONE), ! EX(CMD_tunmenu, "tunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_tunmap, "tunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_undo, "undo", ex_undo, ! RANGE|COUNT|ZEROR|TRLBAR|CMDWIN, ADDR_OTHER), ! EX(CMD_undojoin, "undojoin", ex_undojoin, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_undolist, "undolist", ex_undolist, ! TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_unabbreviate, "unabbreviate", ex_abbreviate, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_unhide, "unhide", ex_buffer_all, ! RANGE|COUNT|TRLBAR, ADDR_OTHER), ! EX(CMD_unlet, "unlet", ex_unlet, ! BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_unlockvar, "unlockvar", ex_lockvar, ! BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_unmap, "unmap", ex_unmap, ! BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_unmenu, "unmenu", ex_menu, ! BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_unsilent, "unsilent", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_update, "update", ex_update, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR, ADDR_LINES), ! EX(CMD_vglobal, "vglobal", ex_global, ! RANGE|WHOLEFOLD|EXTRA|DFLALL|CMDWIN, ADDR_LINES), ! EX(CMD_version, "version", ex_version, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_verbose, "verbose", ex_wrongmodifier, ! NEEDARG|RANGE|EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_OTHER), ! EX(CMD_vertical, "vertical", ex_wrongmodifier, ! NEEDARG|EXTRA|NOTRLCOM, ADDR_NONE), ! EX(CMD_visual, "visual", ex_edit, ! BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_view, "view", ex_edit, ! BANG|FILE1|EDITCMD|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_vimgrep, "vimgrep", ex_vimgrep, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_vimgrepadd, "vimgrepadd", ex_vimgrep, ! RANGE|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE, ADDR_OTHER), ! EX(CMD_viusage, "viusage", ex_viusage, ! TRLBAR, ADDR_NONE), ! EX(CMD_vmap, "vmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_vmapclear, "vmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_vmenu, "vmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_vnoremap, "vnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_vnew, "vnew", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_vnoremenu, "vnoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_vsplit, "vsplit", ex_splitview, ! BANG|FILE1|RANGE|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_vunmap, "vunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_vunmenu, "vunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_write, "write", ex_write, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_wNext, "wNext", ex_wnext, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_wall, "wall", do_wqall, ! BANG|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_while, "while", ex_while, ! EXTRA|NOTRLCOM|SBOXOK|CMDWIN, ADDR_NONE), ! EX(CMD_winsize, "winsize", ex_winsize, ! EXTRA|NEEDARG|TRLBAR, ADDR_NONE), ! EX(CMD_wincmd, "wincmd", ex_wincmd, ! NEEDARG|WORD1|RANGE|CMDWIN, ADDR_OTHER), ! EX(CMD_windo, "windo", ex_listdo, ! NEEDARG|EXTRA|NOTRLCOM|RANGE|DFLALL, ADDR_WINDOWS), ! EX(CMD_winpos, "winpos", ex_winpos, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_wnext, "wnext", ex_wnext, ! RANGE|BANG|FILE1|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_wprevious, "wprevious", ex_wnext, ! RANGE|BANG|FILE1|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_wq, "wq", ex_exit, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR, ADDR_LINES), ! EX(CMD_wqall, "wqall", do_wqall, ! BANG|FILE1|ARGOPT|TRLBAR, ADDR_NONE), ! EX(CMD_wundo, "wundo", ex_wundo, ! BANG|NEEDARG|FILE1, ADDR_NONE), ! EX(CMD_wviminfo, "wviminfo", ex_viminfo, ! BANG|FILE1|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_xit, "xit", ex_exit, ! RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_xall, "xall", do_wqall, ! BANG|TRLBAR, ADDR_NONE), ! EX(CMD_xmap, "xmap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_xmapclear, "xmapclear", ex_mapclear, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_xmenu, "xmenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_xnoremap, "xnoremap", ex_map, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_xnoremenu, "xnoremenu", ex_menu, ! RANGE|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_OTHER), ! EX(CMD_xrestore, "xrestore", ex_xrestore, ! EXTRA|TRLBAR|CMDWIN, ADDR_NONE), ! EX(CMD_xunmap, "xunmap", ex_unmap, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_xunmenu, "xunmenu", ex_menu, ! EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN, ADDR_NONE), ! EX(CMD_yank, "yank", ex_operators, ! RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_z, "z", ex_z, ! RANGE|WHOLEFOLD|EXTRA|EXFLAGS|TRLBAR|CMDWIN, ADDR_LINES), /* commands that don't start with a lowercase letter */ ! EX(CMD_bang, "!", ex_bang, ! RANGE|WHOLEFOLD|BANG|FILES|CMDWIN, ADDR_LINES), ! EX(CMD_pound, "#", ex_print, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_and, "&", do_sub, ! RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_star, "*", ex_at, ! RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_lshift, "<", ex_operators, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_equal, "=", ex_equal, ! RANGE|TRLBAR|DFLALL|EXFLAGS|CMDWIN, ADDR_LINES), ! EX(CMD_rshift, ">", ex_operators, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY, ADDR_LINES), ! EX(CMD_at, "@", ex_at, ! RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_Next, "Next", ex_previous, ! EXTRA|RANGE|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR, ADDR_OTHER), ! EX(CMD_Print, "Print", ex_print, ! RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN, ADDR_LINES), ! EX(CMD_X, "X", ex_X, ! TRLBAR, ADDR_NONE), ! EX(CMD_tilde, "~", do_sub, ! RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY, ADDR_LINES), #ifndef DO_DECLARE_EXCMD CMD_SIZE, /* MUST be after all real commands! */ CMD_USER = -1, /* User-defined command */ --- 102,1796 ---- cmd_addr_T cmd_addr_type; // flag for address type } cmdnames[] = #else ! # define EXCMD(a, b, c, d, e) a enum CMD_index #endif { ! EXCMD(CMD_append, "append", ex_append, ! EX_BANG|EX_RANGE|EX_ZEROR|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_abbreviate, "abbreviate", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_abclear, "abclear", ex_abclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_aboveleft, "aboveleft", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_all, "all", ex_all, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_amenu, "amenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_anoremenu, "anoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_args, "args", ex_args, ! EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_argadd, "argadd", ex_argadd, ! EX_BANG|EX_RANGE|EX_ZEROR|EX_FILES|EX_TRLBAR, ADDR_ARGUMENTS), ! EXCMD(CMD_argdelete, "argdelete", ex_argdelete, ! EX_BANG|EX_RANGE|EX_FILES|EX_TRLBAR, ADDR_ARGUMENTS), ! EXCMD(CMD_argdo, "argdo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_ARGUMENTS), ! EXCMD(CMD_argedit, "argedit", ex_argedit, ! EX_BANG|EX_NEEDARG|EX_RANGE|EX_ZEROR|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_ARGUMENTS), ! EXCMD(CMD_argglobal, "argglobal", ex_args, ! EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_arglocal, "arglocal", ex_args, ! EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_argument, "argument", ex_argument, ! EX_BANG|EX_RANGE|EX_COUNT|EX_EXTRA|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_ARGUMENTS), ! EXCMD(CMD_ascii, "ascii", do_ascii, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_autocmd, "autocmd", ex_autocmd, ! EX_BANG|EX_EXTRA|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_augroup, "augroup", ex_autocmd, ! EX_BANG|EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_aunmenu, "aunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_buffer, "buffer", ex_buffer, ! EX_BANG|EX_RANGE|EX_BUFNAME|EX_BUFUNL|EX_COUNT|EX_EXTRA|EX_CMDARG|EX_TRLBAR, ADDR_BUFFERS), ! EXCMD(CMD_bNext, "bNext", ex_bprevious, ! EX_BANG|EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_ball, "ball", ex_buffer_all, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_badd, "badd", ex_edit, ! EX_NEEDARG|EX_FILE1|EX_CMDARG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_bdelete, "bdelete", ex_bunload, ! EX_BANG|EX_RANGE|EX_BUFNAME|EX_COUNT|EX_EXTRA|EX_TRLBAR, ADDR_BUFFERS), ! EXCMD(CMD_behave, "behave", ex_behave, ! EX_BANG|EX_NEEDARG|EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_belowright, "belowright", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_bfirst, "bfirst", ex_brewind, ! EX_BANG|EX_RANGE|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_blast, "blast", ex_blast, ! EX_BANG|EX_RANGE|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_bmodified, "bmodified", ex_bmodified, ! EX_BANG|EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_bnext, "bnext", ex_bnext, ! EX_BANG|EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_botright, "botright", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_bprevious, "bprevious", ex_bprevious, ! EX_BANG|EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_brewind, "brewind", ex_brewind, ! EX_BANG|EX_RANGE|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_break, "break", ex_break, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_breakadd, "breakadd", ex_breakadd, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_breakdel, "breakdel", ex_breakdel, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_breaklist, "breaklist", ex_breaklist, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_browse, "browse", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_buffers, "buffers", buflist_list, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_bufdo, "bufdo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_BUFFERS), ! EXCMD(CMD_bunload, "bunload", ex_bunload, ! EX_BANG|EX_RANGE|EX_BUFNAME|EX_COUNT|EX_EXTRA|EX_TRLBAR, ADDR_LOADED_BUFFERS), ! EXCMD(CMD_bwipeout, "bwipeout", ex_bunload, ! EX_BANG|EX_RANGE|EX_BUFNAME|EX_BUFUNL|EX_COUNT|EX_EXTRA|EX_TRLBAR, ADDR_BUFFERS), ! EXCMD(CMD_change, "change", ex_change, ! EX_BANG|EX_WHOLEFOLD|EX_RANGE|EX_COUNT|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_cNext, "cNext", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cNfile, "cNfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cabbrev, "cabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cabclear, "cabclear", ex_abclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cabove, "cabove", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_caddbuffer, "caddbuffer", ex_cbuffer, ! EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_caddexpr, "caddexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_caddfile, "caddfile", ex_cfile, ! EX_TRLBAR|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_cafter, "cafter", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_call, "call", ex_call, ! EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_catch, "catch", ex_catch, ! EX_EXTRA|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cbuffer, "cbuffer", ex_cbuffer, ! EX_BANG|EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_cbefore, "cbefore", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_cbelow, "cbelow", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_cbottom, "cbottom", ex_cbottom, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_cc, "cc", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_QUICKFIX), ! EXCMD(CMD_cclose, "cclose", ex_cclose, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_cd, "cd", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cdo, "cdo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_QUICKFIX_VALID), ! EXCMD(CMD_center, "center", ex_align, ! EX_TRLBAR|EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_cexpr, "cexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR|EX_BANG, ADDR_NONE), ! EXCMD(CMD_cfile, "cfile", ex_cfile, ! EX_TRLBAR|EX_FILE1|EX_BANG, ADDR_NONE), ! EXCMD(CMD_cfdo, "cfdo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_QUICKFIX_VALID), ! EXCMD(CMD_cfirst, "cfirst", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cgetfile, "cgetfile", ex_cfile, ! EX_TRLBAR|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_cgetbuffer, "cgetbuffer", ex_cbuffer, ! EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_cgetexpr, "cgetexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_chdir, "chdir", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_changes, "changes", ex_changes, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_checkpath, "checkpath", ex_checkpath, ! EX_TRLBAR|EX_BANG|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_checktime, "checktime", ex_checktime, ! EX_RANGE|EX_BUFNAME|EX_COUNT|EX_EXTRA|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_chistory, "chistory", qf_history, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_clist, "clist", qf_list, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_clast, "clast", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_close, "close", ex_close, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR|EX_CMDWIN, ADDR_WINDOWS), ! EXCMD(CMD_clearjumps, "clearjumps", ex_clearjumps, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cmap, "cmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cmapclear, "cmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cmenu, "cmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_cnext, "cnext", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cnewer, "cnewer", qf_age, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_cnfile, "cnfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cnoremap, "cnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cnoreabbrev, "cnoreabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cnoremenu, "cnoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_copy, "copy", ex_copymove, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_colder, "colder", qf_age, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_colorscheme, "colorscheme", ex_colorscheme, ! EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_command, "command", ex_command, ! EX_EXTRA|EX_BANG|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_comclear, "comclear", ex_comclear, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_compiler, "compiler", ex_compiler, ! EX_BANG|EX_TRLBAR|EX_WORD1|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_continue, "continue", ex_continue, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_confirm, "confirm", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_const, "const", ex_const, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_copen, "copen", ex_copen, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_cprevious, "cprevious", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cpfile, "cpfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_OTHER), ! EXCMD(CMD_cquit, "cquit", ex_cquit, ! EX_TRLBAR|EX_BANG, ADDR_NONE), ! EXCMD(CMD_crewind, "crewind", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_cscope, "cscope", ex_cscope, ! EX_EXTRA|EX_NOTRLCOM|EX_XFILE, ADDR_NONE), ! EXCMD(CMD_cstag, "cstag", ex_cstag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_cunmap, "cunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cunabbrev, "cunabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cunmenu, "cunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_cwindow, "cwindow", ex_cwindow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_delete, "delete", ex_operators, ! EX_RANGE|EX_WHOLEFOLD|EX_REGSTR|EX_COUNT|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_delmarks, "delmarks", ex_delmarks, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_debug, "debug", ex_debug, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_debuggreedy, "debuggreedy", ex_debuggreedy, ! EX_RANGE|EX_ZEROR|EX_TRLBAR|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_delcommand, "delcommand", ex_delcommand, ! EX_NEEDARG|EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_delfunction, "delfunction", ex_delfunction, ! EX_BANG|EX_NEEDARG|EX_WORD1|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_display, "display", ex_display, ! EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_diffupdate, "diffupdate", ex_diffupdate, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_diffget, "diffget", ex_diffgetput, ! EX_RANGE|EX_EXTRA|EX_TRLBAR|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_diffoff, "diffoff", ex_diffoff, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_diffpatch, "diffpatch", ex_diffpatch, ! EX_EXTRA|EX_FILE1|EX_TRLBAR|EX_MODIFY, ADDR_NONE), ! EXCMD(CMD_diffput, "diffput", ex_diffgetput, ! EX_RANGE|EX_EXTRA|EX_TRLBAR, ADDR_LINES), ! EXCMD(CMD_diffsplit, "diffsplit", ex_diffsplit, ! EX_EXTRA|EX_FILE1|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_diffthis, "diffthis", ex_diffthis, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_digraphs, "digraphs", ex_digraphs, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_djump, "djump", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_dlist, "dlist", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_doautocmd, "doautocmd", ex_doautocmd, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_doautoall, "doautoall", ex_doautoall, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_drop, "drop", ex_drop, ! EX_FILES|EX_CMDARG|EX_NEEDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_dsearch, "dsearch", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_dsplit, "dsplit", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_edit, "edit", ex_edit, ! EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_earlier, "earlier", ex_later, ! EX_TRLBAR|EX_EXTRA|EX_NOSPC|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_echo, "echo", ex_echo, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_echoerr, "echoerr", ex_execute, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_echohl, "echohl", ex_echohl, ! EX_EXTRA|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_echomsg, "echomsg", ex_execute, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_echon, "echon", ex_echo, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_else, "else", ex_else, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_elseif, "elseif", ex_else, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_emenu, "emenu", ex_emenu, ! EX_NEEDARG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_RANGE|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_endif, "endif", ex_endif, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_endfunction, "endfunction", ex_endfunction, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_endfor, "endfor", ex_endwhile, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_endtry, "endtry", ex_endtry, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_endwhile, "endwhile", ex_endwhile, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_enew, "enew", ex_edit, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_ex, "ex", ex_edit, ! EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_execute, "execute", ex_execute, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_exit, "exit", ex_exit, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_DFLALL|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_exusage, "exusage", ex_exusage, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_file, "file", ex_file, ! EX_RANGE|EX_ZEROR|EX_BANG|EX_FILE1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_files, "files", buflist_list, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_filetype, "filetype", ex_filetype, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_filter, "filter", ex_wrongmodifier, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_find, "find", ex_find, ! EX_RANGE|EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_finally, "finally", ex_finally, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_finish, "finish", ex_finish, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_first, "first", ex_rewind, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_fixdel, "fixdel", do_fixdel, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_fold, "fold", ex_fold, ! EX_RANGE|EX_WHOLEFOLD|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_foldclose, "foldclose", ex_foldopen, ! EX_RANGE|EX_BANG|EX_WHOLEFOLD|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_folddoopen, "folddoopen", ex_folddo, ! EX_RANGE|EX_DFLALL|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_LINES), ! EXCMD(CMD_folddoclosed, "folddoclosed", ex_folddo, ! EX_RANGE|EX_DFLALL|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_LINES), ! EXCMD(CMD_foldopen, "foldopen", ex_foldopen, ! EX_RANGE|EX_BANG|EX_WHOLEFOLD|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_for, "for", ex_while, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_function, "function", ex_function, ! EX_EXTRA|EX_BANG|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_global, "global", ex_global, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_EXTRA|EX_DFLALL|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_goto, "goto", ex_goto, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_grep, "grep", ex_make, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_grepadd, "grepadd", ex_make, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_gui, "gui", ex_gui, ! EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_gvim, "gvim", ex_gui, ! EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_help, "help", ex_help, ! EX_BANG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_helpclose, "helpclose", ex_helpclose, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_helpfind, "helpfind", ex_helpfind, ! EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_helpgrep, "helpgrep", ex_helpgrep, ! EX_EXTRA|EX_NOTRLCOM|EX_NEEDARG, ADDR_NONE), ! EXCMD(CMD_helptags, "helptags", ex_helptags, ! EX_NEEDARG|EX_FILES|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_hardcopy, "hardcopy", ex_hardcopy, ! EX_RANGE|EX_COUNT|EX_EXTRA|EX_TRLBAR|EX_DFLALL|EX_BANG, ADDR_LINES), ! EXCMD(CMD_highlight, "highlight", ex_highlight, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_hide, "hide", ex_hide, ! EX_BANG|EX_RANGE|EX_COUNT|EX_EXTRA|EX_TRLBAR, ADDR_WINDOWS), ! EXCMD(CMD_history, "history", ex_history, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_insert, "insert", ex_append, ! EX_BANG|EX_RANGE|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_iabbrev, "iabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_iabclear, "iabclear", ex_abclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_if, "if", ex_if, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_ijump, "ijump", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_ilist, "ilist", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_imap, "imap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_imapclear, "imapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_imenu, "imenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_inoremap, "inoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_inoreabbrev, "inoreabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_inoremenu, "inoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_intro, "intro", ex_intro, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_isearch, "isearch", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_isplit, "isplit", ex_findpat, ! EX_BANG|EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_iunmap, "iunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_iunabbrev, "iunabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_iunmenu, "iunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_join, "join", ex_join, ! EX_BANG|EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_jumps, "jumps", ex_jumps, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_k, "k", ex_mark, ! EX_RANGE|EX_WORD1|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_keepmarks, "keepmarks", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_keepjumps, "keepjumps", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_keeppatterns, "keeppatterns", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_keepalt, "keepalt", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_list, "list", ex_print, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_lNext, "lNext", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_lNfile, "lNfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_last, "last", ex_last, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_labove, "labove", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_language, "language", ex_language, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_laddexpr, "laddexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_laddbuffer, "laddbuffer", ex_cbuffer, ! EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_laddfile, "laddfile", ex_cfile, ! EX_TRLBAR|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_lafter, "lafter", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_later, "later", ex_later, ! EX_TRLBAR|EX_EXTRA|EX_NOSPC|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lbuffer, "lbuffer", ex_cbuffer, ! EX_BANG|EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_lbefore, "lbefore", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_lbelow, "lbelow", ex_cbelow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_lbottom, "lbottom", ex_cbottom, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_lcd, "lcd", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lchdir, "lchdir", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lclose, "lclose", ex_cclose, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_lcscope, "lcscope", ex_cscope, ! EX_EXTRA|EX_NOTRLCOM|EX_XFILE, ADDR_NONE), ! EXCMD(CMD_ldo, "ldo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_QUICKFIX_VALID), ! EXCMD(CMD_left, "left", ex_align, ! EX_TRLBAR|EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_leftabove, "leftabove", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_let, "let", ex_let, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lexpr, "lexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR|EX_BANG, ADDR_NONE), ! EXCMD(CMD_lfile, "lfile", ex_cfile, ! EX_TRLBAR|EX_FILE1|EX_BANG, ADDR_NONE), ! EXCMD(CMD_lfdo, "lfdo", ex_listdo, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_QUICKFIX_VALID), ! EXCMD(CMD_lfirst, "lfirst", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_lgetfile, "lgetfile", ex_cfile, ! EX_TRLBAR|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_lgetbuffer, "lgetbuffer", ex_cbuffer, ! EX_RANGE|EX_WORD1|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_lgetexpr, "lgetexpr", ex_cexpr, ! EX_NEEDARG|EX_WORD1|EX_NOTRLCOM|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_lgrep, "lgrep", ex_make, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_lgrepadd, "lgrepadd", ex_make, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_lhelpgrep, "lhelpgrep", ex_helpgrep, ! EX_EXTRA|EX_NOTRLCOM|EX_NEEDARG, ADDR_NONE), ! EXCMD(CMD_lhistory, "lhistory", qf_history, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_ll, "ll", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_QUICKFIX), ! EXCMD(CMD_llast, "llast", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_llist, "llist", qf_list, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lmap, "lmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lmapclear, "lmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lmake, "lmake", ex_make, ! EX_BANG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_NONE), ! EXCMD(CMD_lnoremap, "lnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lnext, "lnext", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_lnewer, "lnewer", qf_age, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_lnfile, "lnfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_loadview, "loadview", ex_loadview, ! EX_FILE1|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_loadkeymap, "loadkeymap", ex_loadkeymap, ! EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lockmarks, "lockmarks", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_lockvar, "lockvar", ex_lockvar, ! EX_BANG|EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lolder, "lolder", qf_age, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_UNSIGNED), ! EXCMD(CMD_lopen, "lopen", ex_copen, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_lprevious, "lprevious", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_lpfile, "lpfile", ex_cnext, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_OTHER), ! EXCMD(CMD_lrewind, "lrewind", ex_cc, ! EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), ! EXCMD(CMD_ltag, "ltag", ex_tag, ! EX_TRLBAR|EX_BANG|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_lunmap, "lunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_lua, "lua", ex_lua, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_luado, "luado", ex_luado, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_luafile, "luafile", ex_luafile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_lvimgrep, "lvimgrep", ex_vimgrep, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_lvimgrepadd, "lvimgrepadd", ex_vimgrep, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_lwindow, "lwindow", ex_cwindow, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_ls, "ls", buflist_list, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_move, "move", ex_copymove, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_mark, "mark", ex_mark, ! EX_RANGE|EX_WORD1|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_make, "make", ex_make, ! EX_BANG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_NONE), ! EXCMD(CMD_map, "map", ex_map, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_mapclear, "mapclear", ex_mapclear, ! EX_EXTRA|EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_marks, "marks", do_marks, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_match, "match", ex_match, ! EX_RANGE|EX_EXTRA|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_menu, "menu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_menutranslate, "menutranslate", ex_menutranslate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_messages, "messages", ex_messages, ! EX_EXTRA|EX_TRLBAR|EX_RANGE|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_mkexrc, "mkexrc", ex_mkrc, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_mksession, "mksession", ex_mkrc, ! EX_BANG|EX_FILE1|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_mkspell, "mkspell", ex_mkspell, ! EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_NONE), ! EXCMD(CMD_mkvimrc, "mkvimrc", ex_mkrc, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_mkview, "mkview", ex_mkrc, ! EX_BANG|EX_FILE1|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_mode, "mode", ex_mode, ! EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_mzscheme, "mzscheme", ex_mzscheme, ! EX_RANGE|EX_EXTRA|EX_DFLALL|EX_NEEDARG|EX_CMDWIN|EX_SBOXOK|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_mzfile, "mzfile", ex_mzfile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_next, "next", ex_next, ! EX_RANGE|EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_nbkey, "nbkey", ex_nbkey, ! EX_EXTRA|EX_NEEDARG, ADDR_NONE), ! EXCMD(CMD_nbclose, "nbclose", ex_nbclose, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_nbstart, "nbstart", ex_nbstart, ! EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_new, "new", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_nmap, "nmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_nmapclear, "nmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_nmenu, "nmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_nnoremap, "nnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_nnoremenu, "nnoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_noremap, "noremap", ex_map, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_noautocmd, "noautocmd", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_nohlsearch, "nohlsearch", ex_nohlsearch, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_noreabbrev, "noreabbrev", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_noremenu, "noremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_noswapfile, "noswapfile", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_normal, "normal", ex_normal, ! EX_RANGE|EX_BANG|EX_EXTRA|EX_NEEDARG|EX_NOTRLCOM|EX_CTRLV|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_number, "number", ex_print, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_nunmap, "nunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_nunmenu, "nunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_open, "open", ex_open, ! EX_RANGE|EX_BANG|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_oldfiles, "oldfiles", ex_oldfiles, ! EX_BANG|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_omap, "omap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_omapclear, "omapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_omenu, "omenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_only, "only", ex_only, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_WINDOWS), ! EXCMD(CMD_onoremap, "onoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_onoremenu, "onoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_options, "options", ex_options, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_ounmap, "ounmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_ounmenu, "ounmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_ownsyntax, "ownsyntax", ex_ownsyntax, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_print, "print", ex_print, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN|EX_SBOXOK, ADDR_LINES), ! EXCMD(CMD_packadd, "packadd", ex_packadd, ! EX_BANG|EX_FILE1|EX_NEEDARG|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_packloadall, "packloadall", ex_packloadall, ! EX_BANG|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_pclose, "pclose", ex_pclose, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_perl, "perl", ex_perl, ! EX_RANGE|EX_EXTRA|EX_DFLALL|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_perldo, "perldo", ex_perldo, ! EX_RANGE|EX_EXTRA|EX_DFLALL|EX_NEEDARG|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_pedit, "pedit", ex_pedit, ! EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_pop, "pop", ex_tag, ! EX_RANGE|EX_BANG|EX_COUNT|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_popup, "popup", ex_popup, ! EX_NEEDARG|EX_EXTRA|EX_BANG|EX_TRLBAR|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_ppop, "ppop", ex_ptag, ! EX_RANGE|EX_BANG|EX_COUNT|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_preserve, "preserve", ex_preserve, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_previous, "previous", ex_previous, ! EX_EXTRA|EX_RANGE|EX_COUNT|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_promptfind, "promptfind", gui_mch_find_dialog, ! EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_promptrepl, "promptrepl", gui_mch_replace_dialog, ! EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_profile, "profile", ex_profile, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_profdel, "profdel", ex_breakdel, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_psearch, "psearch", ex_psearch, ! EX_BANG|EX_RANGE|EX_WHOLEFOLD|EX_DFLALL|EX_EXTRA, ADDR_LINES), ! EXCMD(CMD_ptag, "ptag", ex_ptag, ! EX_RANGE|EX_BANG|EX_WORD1|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptNext, "ptNext", ex_ptag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptfirst, "ptfirst", ex_ptag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptjump, "ptjump", ex_ptag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_ptlast, "ptlast", ex_ptag, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_ptnext, "ptnext", ex_ptag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptprevious, "ptprevious", ex_ptag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptrewind, "ptrewind", ex_ptag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_ptselect, "ptselect", ex_ptag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_put, "put", ex_put, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_REGSTR|EX_TRLBAR|EX_ZEROR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_pwd, "pwd", ex_pwd, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_python, "python", ex_python, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pydo, "pydo", ex_pydo, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pyfile, "pyfile", ex_pyfile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_py3, "py3", ex_py3, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_py3do, "py3do", ex_py3do, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_python3, "python3", ex_py3, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_py3file, "py3file", ex_py3file, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pyx, "pyx", ex_pyx, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pyxdo, "pyxdo", ex_pyxdo, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pythonx, "pythonx", ex_pyx, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_pyxfile, "pyxfile", ex_pyxfile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_quit, "quit", ex_quit, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR|EX_CMDWIN, ADDR_WINDOWS), ! EXCMD(CMD_quitall, "quitall", ex_quit_all, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_qall, "qall", ex_quit_all, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_read, "read", ex_read, ! EX_BANG|EX_RANGE|EX_WHOLEFOLD|EX_FILE1|EX_ARGOPT|EX_TRLBAR|EX_ZEROR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_recover, "recover", ex_recover, ! EX_BANG|EX_FILE1|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_redo, "redo", ex_redo, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_redir, "redir", ex_redir, ! EX_BANG|EX_FILES|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_redraw, "redraw", ex_redraw, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_redrawstatus, "redrawstatus", ex_redrawstatus, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_redrawtabline, "redrawtabline", ex_redrawtabline, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_registers, "registers", ex_display, ! EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_resize, "resize", ex_resize, ! EX_RANGE|EX_TRLBAR|EX_WORD1|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_retab, "retab", ex_retab, ! EX_TRLBAR|EX_RANGE|EX_WHOLEFOLD|EX_DFLALL|EX_BANG|EX_WORD1|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_return, "return", ex_return, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_rewind, "rewind", ex_rewind, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_right, "right", ex_align, ! EX_TRLBAR|EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_rightbelow, "rightbelow", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_runtime, "runtime", ex_runtime, ! EX_BANG|EX_NEEDARG|EX_FILES|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_ruby, "ruby", ex_ruby, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_rubydo, "rubydo", ex_rubydo, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_rubyfile, "rubyfile", ex_rubyfile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_rundo, "rundo", ex_rundo, ! EX_NEEDARG|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_rviminfo, "rviminfo", ex_viminfo, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_substitute, "substitute", do_sub, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_sNext, "sNext", ex_previous, ! EX_EXTRA|EX_RANGE|EX_COUNT|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sargument, "sargument", ex_argument, ! EX_BANG|EX_RANGE|EX_COUNT|EX_EXTRA|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_ARGUMENTS), ! EXCMD(CMD_sall, "sall", ex_all, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sandbox, "sandbox", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_saveas, "saveas", ex_write, ! EX_BANG|EX_FILE1|EX_ARGOPT|EX_CMDWIN|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_sbuffer, "sbuffer", ex_buffer, ! EX_BANG|EX_RANGE|EX_BUFNAME|EX_BUFUNL|EX_COUNT|EX_EXTRA|EX_CMDARG|EX_TRLBAR, ADDR_BUFFERS), ! EXCMD(CMD_sbNext, "sbNext", ex_bprevious, ! EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sball, "sball", ex_buffer_all, ! EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sbfirst, "sbfirst", ex_brewind, ! EX_CMDARG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_sblast, "sblast", ex_blast, ! EX_CMDARG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_sbmodified, "sbmodified", ex_bmodified, ! EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sbnext, "sbnext", ex_bnext, ! EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sbprevious, "sbprevious", ex_bprevious, ! EX_RANGE|EX_COUNT|EX_CMDARG|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sbrewind, "sbrewind", ex_brewind, ! EX_CMDARG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_scriptnames, "scriptnames", ex_scriptnames, ! EX_BANG|EX_RANGE|EX_COUNT|EX_TRLBAR|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, ! EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_scriptversion, "scriptversion", ex_scriptversion, ! EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_scscope, "scscope", ex_scscope, ! EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_set, "set", ex_set, ! EX_TRLBAR|EX_EXTRA|EX_CMDWIN|EX_SBOXOK, ADDR_NONE), ! EXCMD(CMD_setfiletype, "setfiletype", ex_setfiletype, ! EX_TRLBAR|EX_EXTRA|EX_NEEDARG|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_setglobal, "setglobal", ex_set, ! EX_TRLBAR|EX_EXTRA|EX_CMDWIN|EX_SBOXOK, ADDR_NONE), ! EXCMD(CMD_setlocal, "setlocal", ex_set, ! EX_TRLBAR|EX_EXTRA|EX_CMDWIN|EX_SBOXOK, ADDR_NONE), ! EXCMD(CMD_sfind, "sfind", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sfirst, "sfirst", ex_rewind, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_shell, "shell", ex_shell, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_simalt, "simalt", ex_simalt, ! EX_NEEDARG|EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_sign, "sign", ex_sign, ! EX_NEEDARG|EX_RANGE|EX_EXTRA|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_silent, "silent", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_BANG|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_sleep, "sleep", ex_sleep, ! EX_RANGE|EX_COUNT|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_slast, "slast", ex_last, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_smagic, "smagic", ex_submagic, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_smap, "smap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_smapclear, "smapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_smenu, "smenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_snext, "snext", ex_next, ! EX_RANGE|EX_BANG|EX_FILES|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_snomagic, "snomagic", ex_submagic, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_snoremap, "snoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_snoremenu, "snoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_source, "source", ex_source, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_sort, "sort", ex_sort, ! EX_RANGE|EX_DFLALL|EX_WHOLEFOLD|EX_BANG|EX_EXTRA|EX_NOTRLCOM|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_split, "split", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_spellgood, "spellgood", ex_spell, ! EX_BANG|EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_spelldump, "spelldump", ex_spelldump, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_spellinfo, "spellinfo", ex_spellinfo, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_spellrepall, "spellrepall", ex_spellrepall, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_spellundo, "spellundo", ex_spell, ! EX_BANG|EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_spellwrong, "spellwrong", ex_spell, ! EX_BANG|EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sprevious, "sprevious", ex_previous, ! EX_EXTRA|EX_RANGE|EX_COUNT|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_srewind, "srewind", ex_rewind, ! EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_stop, "stop", ex_stop, ! EX_TRLBAR|EX_BANG|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_stag, "stag", ex_stag, ! EX_RANGE|EX_BANG|EX_WORD1|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_startinsert, "startinsert", ex_startinsert, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_startgreplace, "startgreplace", ex_startinsert, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_startreplace, "startreplace", ex_startinsert, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_stopinsert, "stopinsert", ex_stopinsert, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_stjump, "stjump", ex_stag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_stselect, "stselect", ex_stag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_sunhide, "sunhide", ex_buffer_all, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_sunmap, "sunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_sunmenu, "sunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_suspend, "suspend", ex_stop, ! EX_TRLBAR|EX_BANG|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_sview, "sview", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_swapname, "swapname", ex_swapname, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_syntax, "syntax", ex_syntax, ! EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_syntime, "syntime", ex_syntime, ! EX_NEEDARG|EX_WORD1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_syncbind, "syncbind", ex_syncbind, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_smile, "smile", ex_smile, ! EX_TRLBAR|EX_CMDWIN|EX_SBOXOK, ADDR_NONE), ! EXCMD(CMD_t, "t", ex_copymove, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_tNext, "tNext", ex_tag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_tag, "tag", ex_tag, ! EX_RANGE|EX_BANG|EX_WORD1|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_tags, "tags", do_tags, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tab, "tab", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_tabclose, "tabclose", ex_tabclose, ! EX_BANG|EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR|EX_CMDWIN, ADDR_TABS), ! EXCMD(CMD_tabdo, "tabdo", ex_listdo, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_TABS), ! EXCMD(CMD_tabedit, "tabedit", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_ZEROR|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_TABS), ! EXCMD(CMD_tabfind, "tabfind", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_ZEROR|EX_CMDARG|EX_ARGOPT|EX_NEEDARG|EX_TRLBAR, ADDR_TABS), ! EXCMD(CMD_tabfirst, "tabfirst", ex_tabnext, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_tabmove, "tabmove", ex_tabmove, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR, ADDR_TABS), ! EXCMD(CMD_tablast, "tablast", ex_tabnext, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_tabnext, "tabnext", ex_tabnext, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR, ADDR_TABS), ! EXCMD(CMD_tabnew, "tabnew", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_ZEROR|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_TABS), ! EXCMD(CMD_tabonly, "tabonly", ex_tabonly, ! EX_BANG|EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR|EX_CMDWIN, ADDR_TABS), ! EXCMD(CMD_tabprevious, "tabprevious", ex_tabnext, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR, ADDR_TABS_RELATIVE), ! EXCMD(CMD_tabNext, "tabNext", ex_tabnext, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_NOSPC|EX_TRLBAR, ADDR_TABS_RELATIVE), ! EXCMD(CMD_tabrewind, "tabrewind", ex_tabnext, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_tabs, "tabs", ex_tabs, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tcd, "tcd", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tchdir, "tchdir", ex_cd, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tcl, "tcl", ex_tcl, ! EX_RANGE|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_tcldo, "tcldo", ex_tcldo, ! EX_RANGE|EX_DFLALL|EX_EXTRA|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_tclfile, "tclfile", ex_tclfile, ! EX_RANGE|EX_FILE1|EX_NEEDARG|EX_CMDWIN|EX_RESTRICT, ADDR_LINES), ! EXCMD(CMD_tearoff, "tearoff", ex_tearoff, ! EX_NEEDARG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_terminal, "terminal", ex_terminal, ! EX_RANGE|EX_BANG|EX_FILES|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_tfirst, "tfirst", ex_tag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_throw, "throw", ex_throw, ! EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tjump, "tjump", ex_tag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_tlast, "tlast", ex_tag, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_tlmenu, "tlmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_tlnoremenu, "tlnoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_tlunmenu, "tlunmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_tmenu, "tmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_tmap, "tmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tmapclear, "tmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tnext, "tnext", ex_tag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_tnoremap, "tnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_topleft, "topleft", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_tprevious, "tprevious", ex_tag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_trewind, "trewind", ex_tag, ! EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, ADDR_OTHER), ! EXCMD(CMD_try, "try", ex_try, ! EX_TRLBAR|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tselect, "tselect", ex_tag, ! EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), ! EXCMD(CMD_tunmenu, "tunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_tunmap, "tunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_undo, "undo", ex_undo, ! EX_RANGE|EX_COUNT|EX_ZEROR|EX_TRLBAR|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_undojoin, "undojoin", ex_undojoin, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_undolist, "undolist", ex_undolist, ! EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unabbreviate, "unabbreviate", ex_abbreviate, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unhide, "unhide", ex_buffer_all, ! EX_RANGE|EX_COUNT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_unlet, "unlet", ex_unlet, ! EX_BANG|EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unlockvar, "unlockvar", ex_lockvar, ! EX_BANG|EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unmap, "unmap", ex_unmap, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unmenu, "unmenu", ex_menu, ! EX_BANG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_unsilent, "unsilent", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_update, "update", ex_update, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_DFLALL|EX_TRLBAR, ADDR_LINES), ! EXCMD(CMD_vglobal, "vglobal", ex_global, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_DFLALL|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_version, "version", ex_version, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_verbose, "verbose", ex_wrongmodifier, ! EX_NEEDARG|EX_RANGE|EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_vertical, "vertical", ex_wrongmodifier, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), ! EXCMD(CMD_visual, "visual", ex_edit, ! EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_view, "view", ex_edit, ! EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_vimgrep, "vimgrep", ex_vimgrep, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_vimgrepadd, "vimgrepadd", ex_vimgrep, ! EX_RANGE|EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_TRLBAR|EX_XFILE, ADDR_OTHER), ! EXCMD(CMD_viusage, "viusage", ex_viusage, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_vmap, "vmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_vmapclear, "vmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_vmenu, "vmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_vnoremap, "vnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_vnew, "vnew", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_vnoremenu, "vnoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_vsplit, "vsplit", ex_splitview, ! EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_vunmap, "vunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_vunmenu, "vunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_write, "write", ex_write, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_DFLALL|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_wNext, "wNext", ex_wnext, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_wall, "wall", do_wqall, ! EX_BANG|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_while, "while", ex_while, ! EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_winsize, "winsize", ex_winsize, ! EX_EXTRA|EX_NEEDARG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_wincmd, "wincmd", ex_wincmd, ! EX_NEEDARG|EX_WORD1|EX_RANGE|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_windo, "windo", ex_listdo, ! EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_RANGE|EX_DFLALL, ADDR_WINDOWS), ! EXCMD(CMD_winpos, "winpos", ex_winpos, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_wnext, "wnext", ex_wnext, ! EX_RANGE|EX_BANG|EX_FILE1|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_wprevious, "wprevious", ex_wnext, ! EX_RANGE|EX_BANG|EX_FILE1|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_wq, "wq", ex_exit, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_DFLALL|EX_TRLBAR, ADDR_LINES), ! EXCMD(CMD_wqall, "wqall", do_wqall, ! EX_BANG|EX_FILE1|EX_ARGOPT|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_wundo, "wundo", ex_wundo, ! EX_BANG|EX_NEEDARG|EX_FILE1, ADDR_NONE), ! EXCMD(CMD_wviminfo, "wviminfo", ex_viminfo, ! EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xit, "xit", ex_exit, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILE1|EX_ARGOPT|EX_DFLALL|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_xall, "xall", do_wqall, ! EX_BANG|EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_xmap, "xmap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xmapclear, "xmapclear", ex_mapclear, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xmenu, "xmenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_xnoremap, "xnoremap", ex_map, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xnoremenu, "xnoremenu", ex_menu, ! EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_OTHER), ! EXCMD(CMD_xrestore, "xrestore", ex_xrestore, ! EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xunmap, "xunmap", ex_unmap, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_xunmenu, "xunmenu", ex_menu, ! EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN, ADDR_NONE), ! EXCMD(CMD_yank, "yank", ex_operators, ! EX_RANGE|EX_WHOLEFOLD|EX_REGSTR|EX_COUNT|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_z, "z", ex_z, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_FLAGS|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), /* commands that don't start with a lowercase letter */ ! EXCMD(CMD_bang, "!", ex_bang, ! EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILES|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_pound, "#", ex_print, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_and, "&", do_sub, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_star, "*", ex_at, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_lshift, "<", ex_operators, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_equal, "=", ex_equal, ! EX_RANGE|EX_TRLBAR|EX_DFLALL|EX_FLAGS|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_rshift, ">", ex_operators, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN|EX_MODIFY, ADDR_LINES), ! EXCMD(CMD_at, "@", ex_at, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_Next, "Next", ex_previous, ! EX_EXTRA|EX_RANGE|EX_COUNT|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR, ADDR_OTHER), ! EXCMD(CMD_Print, "Print", ex_print, ! EX_RANGE|EX_WHOLEFOLD|EX_COUNT|EX_FLAGS|EX_TRLBAR|EX_CMDWIN, ADDR_LINES), ! EXCMD(CMD_X, "X", ex_X, ! EX_TRLBAR, ADDR_NONE), ! EXCMD(CMD_tilde, "~", do_sub, ! EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY, ADDR_LINES), + #undef EXCMD + #ifndef DO_DECLARE_EXCMD CMD_SIZE, /* MUST be after all real commands! */ CMD_USER = -1, /* User-defined command */ *** ../vim-8.1.1666/src/evalfunc.c 2019-07-07 18:27:52.365277132 +0200 --- src/evalfunc.c 2019-07-12 17:03:43.266746993 +0200 *************** *** 3547,3553 **** memset(&eap, 0, sizeof(eap)); eap.cmd = cmdstr; eap.arg = cmdstr; ! eap.argt |= NOSPC; eap.usefilter = FALSE; eap.nextcmd = NULL; eap.cmdidx = CMD_USER; --- 3547,3553 ---- memset(&eap, 0, sizeof(eap)); eap.cmd = cmdstr; eap.arg = cmdstr; ! eap.argt |= EX_NOSPC; eap.usefilter = FALSE; eap.nextcmd = NULL; eap.cmdidx = CMD_USER; *** ../vim-8.1.1666/src/ex_docmd.c 2019-06-25 04:12:12.308665266 +0200 --- src/ex_docmd.c 2019-07-12 17:46:05.235639217 +0200 *************** *** 1844,1850 **** if (*ea.cmd == '|' || (exmode_active && ea.line1 != ea.line2)) { ea.cmdidx = CMD_print; ! ea.argt = RANGE+COUNT+TRLBAR; if ((errormsg = invalid_range(&ea)) == NULL) { correct_range(&ea); --- 1844,1850 ---- if (*ea.cmd == '|' || (exmode_active && ea.line1 != ea.line2)) { ea.cmdidx = CMD_print; ! ea.argt = EX_RANGE+EX_COUNT+EX_TRLBAR; if ((errormsg = invalid_range(&ea)) == NULL) { correct_range(&ea); *************** *** 1976,2001 **** if (!ea.skip) { #ifdef HAVE_SANDBOX ! if (sandbox != 0 && !(ea.argt & SBOXOK)) { // Command not allowed in sandbox. errormsg = _(e_sandbox); goto doend; } #endif ! if (restricted != 0 && (ea.argt & RESTRICT)) { errormsg = _("E981: Command not allowed in rvim"); goto doend; } ! if (!curbuf->b_p_ma && (ea.argt & MODIFY)) { /* Command not allowed in non-'modifiable' buffer */ errormsg = _(e_modifiable); goto doend; } ! if (text_locked() && !(ea.argt & CMDWIN) && !IS_USER_CMDIDX(ea.cmdidx)) { /* Command not allowed when editing the command line. */ --- 1976,2001 ---- if (!ea.skip) { #ifdef HAVE_SANDBOX ! if (sandbox != 0 && !(ea.argt & EX_SBOXOK)) { // Command not allowed in sandbox. errormsg = _(e_sandbox); goto doend; } #endif ! if (restricted != 0 && (ea.argt & EX_RESTRICT)) { errormsg = _("E981: Command not allowed in rvim"); goto doend; } ! if (!curbuf->b_p_ma && (ea.argt & EX_MODIFY)) { /* Command not allowed in non-'modifiable' buffer */ errormsg = _(e_modifiable); goto doend; } ! if (text_locked() && !(ea.argt & EX_CMDWIN) && !IS_USER_CMDIDX(ea.cmdidx)) { /* Command not allowed when editing the command line. */ *************** *** 2007,2013 **** * Do allow ":checktime" (it is postponed). * Do allow ":edit" (check for an argument later). * Do allow ":file" with no arguments (check for an argument later). */ ! if (!(ea.argt & CMDWIN) && ea.cmdidx != CMD_checktime && ea.cmdidx != CMD_edit && ea.cmdidx != CMD_file --- 2007,2013 ---- * Do allow ":checktime" (it is postponed). * Do allow ":edit" (check for an argument later). * Do allow ":file" with no arguments (check for an argument later). */ ! if (!(ea.argt & EX_CMDWIN) && ea.cmdidx != CMD_checktime && ea.cmdidx != CMD_edit && ea.cmdidx != CMD_file *************** *** 2015,2021 **** && curbuf_locked()) goto doend; ! if (!ni && !(ea.argt & RANGE) && ea.addr_count > 0) { /* no range allowed */ errormsg = _(e_norange); --- 2015,2021 ---- && curbuf_locked()) goto doend; ! if (!ni && !(ea.argt & EX_RANGE) && ea.addr_count > 0) { /* no range allowed */ errormsg = _(e_norange); *************** *** 2023,2029 **** } } ! if (!ni && !(ea.argt & BANG) && ea.forceit) /* no allowed */ { errormsg = _(e_nobang); goto doend; --- 2023,2029 ---- } } ! if (!ni && !(ea.argt & EX_BANG) && ea.forceit) // no allowed { errormsg = _(e_nobang); goto doend; *************** *** 2033,2039 **** * Don't complain about the range if it is not used * (could happen if line_count is accidentally set to 0). */ ! if (!ea.skip && !ni && (ea.argt & RANGE)) { /* * If the range is backwards, ask for confirmation and, if given, swap --- 2033,2039 ---- * Don't complain about the range if it is not used * (could happen if line_count is accidentally set to 0). */ ! if (!ea.skip && !ni && (ea.argt & EX_RANGE)) { /* * If the range is backwards, ask for confirmation and, if given, swap *************** *** 2068,2074 **** correct_range(&ea); #ifdef FEAT_FOLDING ! if (((ea.argt & WHOLEFOLD) || ea.addr_count >= 2) && !global_busy && ea.addr_type == ADDR_LINES) { /* Put the first line at the start of a closed fold, put the last line --- 2068,2074 ---- correct_range(&ea); #ifdef FEAT_FOLDING ! if (((ea.argt & EX_WHOLEFOLD) || ea.addr_count >= 2) && !global_busy && ea.addr_type == ADDR_LINES) { /* Put the first line at the start of a closed fold, put the last line *************** *** 2105,2111 **** * Check for "++opt=val" argument. * Must be first, allow ":w ++enc=utf8 !cmd" */ ! if (ea.argt & ARGOPT) while (ea.arg[0] == '+' && ea.arg[1] == '+') if (getargopt(&ea) == FAIL && !ni) { --- 2105,2111 ---- * Check for "++opt=val" argument. * Must be first, allow ":w ++enc=utf8 !cmd" */ ! if (ea.argt & EX_ARGOPT) while (ea.arg[0] == '+' && ea.arg[1] == '+') if (getargopt(&ea) == FAIL && !ni) { *************** *** 2161,2174 **** * Check for "+command" argument, before checking for next command. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & EDITCMD) && !ea.usefilter) ea.do_ecmd_cmd = getargcmd(&ea.arg); /* * Check for '|' to separate commands and '"' to start comments. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & TRLBAR) && !ea.usefilter) separate_nextcmd(&ea); /* --- 2161,2174 ---- * Check for "+command" argument, before checking for next command. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & EX_CMDARG) && !ea.usefilter) ea.do_ecmd_cmd = getargcmd(&ea.arg); /* * Check for '|' to separate commands and '"' to start comments. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & EX_TRLBAR) && !ea.usefilter) separate_nextcmd(&ea); /* *************** *** 2201,2207 **** } } ! if ((ea.argt & DFLALL) && ea.addr_count == 0) { buf_T *buf; --- 2201,2207 ---- } } ! if ((ea.argt & EX_DFLALL) && ea.addr_count == 0) { buf_T *buf; *************** *** 2251,2267 **** case ADDR_NONE: case ADDR_UNSIGNED: case ADDR_QUICKFIX: ! iemsg(_("INTERNAL: Cannot use DFLALL with ADDR_NONE, ADDR_UNSIGNED or ADDR_QUICKFIX")); break; } } /* accept numbered register only when no count allowed (:put) */ ! if ( (ea.argt & REGSTR) && *ea.arg != NUL /* Do not allow register = for user commands */ && (!IS_USER_CMDIDX(ea.cmdidx) || *ea.arg != '=') ! && !((ea.argt & COUNT) && VIM_ISDIGIT(*ea.arg))) { #ifndef FEAT_CLIPBOARD /* check these explicitly for a more specific error message */ --- 2251,2267 ---- case ADDR_NONE: case ADDR_UNSIGNED: case ADDR_QUICKFIX: ! iemsg(_("INTERNAL: Cannot use EX_DFLALL with ADDR_NONE, ADDR_UNSIGNED or ADDR_QUICKFIX")); break; } } /* accept numbered register only when no count allowed (:put) */ ! if ( (ea.argt & EX_REGSTR) && *ea.arg != NUL /* Do not allow register = for user commands */ && (!IS_USER_CMDIDX(ea.cmdidx) || *ea.arg != '=') ! && !((ea.argt & EX_COUNT) && VIM_ISDIGIT(*ea.arg))) { #ifndef FEAT_CLIPBOARD /* check these explicitly for a more specific error message */ *************** *** 2288,2303 **** } /* ! * Check for a count. When accepting a BUFNAME, don't use "123foo" as a * count, it's a buffer name. */ ! if ((ea.argt & COUNT) && VIM_ISDIGIT(*ea.arg) ! && (!(ea.argt & BUFNAME) || *(p = skipdigits(ea.arg)) == NUL || VIM_ISWHITE(*p))) { n = getdigits(&ea.arg); ea.arg = skipwhite(ea.arg); ! if (n <= 0 && !ni && (ea.argt & ZEROR) == 0) { errormsg = _(e_zerocount); goto doend; --- 2288,2303 ---- } /* ! * Check for a count. When accepting a EX_BUFNAME, don't use "123foo" as a * count, it's a buffer name. */ ! if ((ea.argt & EX_COUNT) && VIM_ISDIGIT(*ea.arg) ! && (!(ea.argt & EX_BUFNAME) || *(p = skipdigits(ea.arg)) == NUL || VIM_ISWHITE(*p))) { n = getdigits(&ea.arg); ea.arg = skipwhite(ea.arg); ! if (n <= 0 && !ni && (ea.argt & EX_ZEROR) == 0) { errormsg = _(e_zerocount); goto doend; *************** *** 2324,2340 **** /* * Check for flags: 'l', 'p' and '#'. */ ! if (ea.argt & EXFLAGS) get_flags(&ea); ! /* no arguments allowed */ ! if (!ni && !(ea.argt & EXTRA) && *ea.arg != NUL ! && *ea.arg != '"' && (*ea.arg != '|' || (ea.argt & TRLBAR) == 0)) { errormsg = _(e_trailing); goto doend; } ! if (!ni && (ea.argt & NEEDARG) && *ea.arg == NUL) { errormsg = _(e_argreq); goto doend; --- 2324,2340 ---- /* * Check for flags: 'l', 'p' and '#'. */ ! if (ea.argt & EX_FLAGS) get_flags(&ea); ! if (!ni && !(ea.argt & EX_EXTRA) && *ea.arg != NUL ! && *ea.arg != '"' && (*ea.arg != '|' || (ea.argt & EX_TRLBAR) == 0)) { + // no arguments allowed but there is something errormsg = _(e_trailing); goto doend; } ! if (!ni && (ea.argt & EX_NEEDARG) && *ea.arg == NUL) { errormsg = _(e_argreq); goto doend; *************** *** 2368,2374 **** break; /* Commands that handle '|' themselves. Check: A command should ! * either have the TRLBAR flag, appear in this list or appear in * the list at ":help :bar". */ case CMD_aboveleft: case CMD_and: --- 2368,2374 ---- break; /* Commands that handle '|' themselves. Check: A command should ! * either have the EX_TRLBAR flag, appear in this list or appear in * the list at ":help :bar". */ case CMD_aboveleft: case CMD_and: *************** *** 2435,2441 **** } #endif ! if (ea.argt & XFILE) { if (expand_filename(&ea, cmdlinep, &errormsg) == FAIL) goto doend; --- 2435,2441 ---- } #endif ! if (ea.argt & EX_XFILE) { if (expand_filename(&ea, cmdlinep, &errormsg) == FAIL) goto doend; *************** *** 2445,2451 **** * Accept buffer name. Cannot be used at the same time with a buffer * number. Don't do this for a user command. */ ! if ((ea.argt & BUFNAME) && *ea.arg != NUL && ea.addr_count == 0 && !IS_USER_CMDIDX(ea.cmdidx)) { /* --- 2445,2451 ---- * Accept buffer name. Cannot be used at the same time with a buffer * number. Don't do this for a user command. */ ! if ((ea.argt & EX_BUFNAME) && *ea.arg != NUL && ea.addr_count == 0 && !IS_USER_CMDIDX(ea.cmdidx)) { /* *************** *** 2462,2468 **** while (p > ea.arg && VIM_ISWHITE(p[-1])) --p; } ! ea.line2 = buflist_findpat(ea.arg, p, (ea.argt & BUFUNL) != 0, FALSE, FALSE); if (ea.line2 < 0) /* failed */ goto doend; --- 2462,2468 ---- while (p > ea.arg && VIM_ISWHITE(p[-1])) --p; } ! ea.line2 = buflist_findpat(ea.arg, p, (ea.argt & EX_BUFUNL) != 0, FALSE, FALSE); if (ea.line2 < 0) /* failed */ goto doend; *************** *** 3528,3534 **** } /* Does command allow "+command"? */ ! if ((ea.argt & EDITCMD) && !usefilter && *arg == '+') { /* Check if we're in the +command */ p = arg + 1; --- 3528,3534 ---- } /* Does command allow "+command"? */ ! if ((ea.argt & EX_CMDARG) && !usefilter && *arg == '+') { /* Check if we're in the +command */ p = arg + 1; *************** *** 3546,3552 **** * Check for '|' to separate commands and '"' to start comments. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & TRLBAR) && !usefilter) { p = arg; /* ":redir @" is not the start of a comment */ --- 3546,3552 ---- * Check for '|' to separate commands and '"' to start comments. * Don't do this for ":read !cmd" and ":write !cmd". */ ! if ((ea.argt & EX_TRLBAR) && !usefilter) { p = arg; /* ":redir @" is not the start of a comment */ *************** *** 3559,3565 **** if (p[1] != NUL) ++p; } ! else if ( (*p == '"' && !(ea.argt & NOTRLCOM)) || *p == '|' || *p == '\n') { if (*(p - 1) != '\\') --- 3559,3565 ---- if (p[1] != NUL) ++p; } ! else if ( (*p == '"' && !(ea.argt & EX_NOTRLCOM)) || *p == '|' || *p == '\n') { if (*(p - 1) != '\\') *************** *** 3573,3581 **** } } ! /* no arguments allowed */ ! if (!(ea.argt & EXTRA) && *arg != NUL && ! vim_strchr((char_u *)"|\"", *arg) == NULL) return NULL; /* Find start of last argument (argument just before cursor): */ --- 3573,3581 ---- } } ! if (!(ea.argt & EX_EXTRA) && *arg != NUL ! && vim_strchr((char_u *)"|\"", *arg) == NULL) ! // no arguments allowed but there is something return NULL; /* Find start of last argument (argument just before cursor): */ *************** *** 3597,3603 **** } } ! if (ea.argt & XFILE) { int c; int in_quote = FALSE; --- 3597,3603 ---- } } ! if (ea.argt & EX_XFILE) { int c; int in_quote = FALSE; *************** *** 3630,3636 **** * characters that end the command and white space. */ else if (c == '|' || c == '\n' || c == '"' || (VIM_ISWHITE(c) #ifdef SPACE_IN_FILENAME ! && (!(ea.argt & NOSPC) || usefilter) #endif )) { --- 3630,3636 ---- * characters that end the command and white space. */ else if (c == '|' || c == '\n' || c == '"' || (VIM_ISWHITE(c) #ifdef SPACE_IN_FILENAME ! && (!(ea.argt & EX_NOSPC) || usefilter) #endif )) { *************** *** 4001,4008 **** case CMD_USER_BUF: if (compl != EXPAND_NOTHING) { ! // XFILE: file names are handled above ! if (!(ea.argt & XFILE)) { #ifdef FEAT_MENU if (compl == EXPAND_MENUS) --- 4001,4008 ---- case CMD_USER_BUF: if (compl != EXPAND_NOTHING) { ! // EX_XFILE: file names are handled above ! if (!(ea.argt & EX_XFILE)) { #ifdef FEAT_MENU if (compl == EXPAND_MENUS) *************** *** 4652,4658 **** || eap->line1 > eap->line2) return _(e_invrange); ! if (eap->argt & RANGE) { switch (eap->addr_type) { --- 4652,4658 ---- || eap->line1 > eap->line2) return _(e_invrange); ! if (eap->argt & EX_RANGE) { switch (eap->addr_type) { *************** *** 4738,4744 **** static void correct_range(exarg_T *eap) { ! if (!(eap->argt & ZEROR)) /* zero in range not allowed */ { if (eap->line1 == 0) eap->line1 = 1; --- 4738,4744 ---- static void correct_range(exarg_T *eap) { ! if (!(eap->argt & EX_ZEROR)) // zero in range not allowed { if (eap->line1 == 0) eap->line1 = 1; *************** *** 4947,4953 **** && eap->cmdidx != CMD_make && eap->cmdidx != CMD_terminal #ifndef UNIX ! && !(eap->argt & NOSPC) #endif ) { --- 4947,4953 ---- && eap->cmdidx != CMD_make && eap->cmdidx != CMD_terminal #ifndef UNIX ! && !(eap->argt & EX_NOSPC) #endif ) { *************** *** 4999,5005 **** * One file argument: Expand wildcards. * Don't do this with ":r !command" or ":w !command". */ ! if ((eap->argt & NOSPC) && !eap->usefilter) { /* * May do this twice: --- 4999,5005 ---- * One file argument: Expand wildcards. * Don't do this with ":r !command" or ":w !command". */ ! if ((eap->argt & EX_NOSPC) && !eap->usefilter) { /* * May do this twice: *************** *** 5150,5156 **** { if (*p == Ctrl_V) { ! if (eap->argt & (USECTRLV | XFILE)) ++p; /* skip CTRL-V and next char */ else /* remove CTRL-V and skip next char */ --- 5150,5156 ---- { if (*p == Ctrl_V) { ! if (eap->argt & (EX_CTRLV | EX_XFILE)) ++p; /* skip CTRL-V and next char */ else /* remove CTRL-V and skip next char */ *************** *** 5161,5167 **** #ifdef FEAT_EVAL /* Skip over `=expr` when wildcards are expanded. */ ! else if (p[0] == '`' && p[1] == '=' && (eap->argt & XFILE)) { p += 2; (void)skip_expr(&p); --- 5161,5167 ---- #ifdef FEAT_EVAL /* Skip over `=expr` when wildcards are expanded. */ ! else if (p[0] == '`' && p[1] == '=' && (eap->argt & EX_XFILE)) { p += 2; (void)skip_expr(&p); *************** *** 5171,5177 **** /* Check for '"': start of comment or '|': next command */ /* :@" and :*" do not start a comment! * :redir @" doesn't either. */ ! else if ((*p == '"' && !(eap->argt & NOTRLCOM) && ((eap->cmdidx != CMD_at && eap->cmdidx != CMD_star) || p != eap->arg) && (eap->cmdidx != CMD_redir --- 5171,5177 ---- /* Check for '"': start of comment or '|': next command */ /* :@" and :*" do not start a comment! * :redir @" doesn't either. */ ! else if ((*p == '"' && !(eap->argt & EX_NOTRLCOM) && ((eap->cmdidx != CMD_at && eap->cmdidx != CMD_star) || p != eap->arg) && (eap->cmdidx != CMD_redir *************** *** 5179,5189 **** || *p == '|' || *p == '\n') { /* ! * We remove the '\' before the '|', unless USECTRLV is used * AND 'b' is present in 'cpoptions'. */ if ((vim_strchr(p_cpo, CPO_BAR) == NULL ! || !(eap->argt & USECTRLV)) && *(p - 1) == '\\') { STRMOVE(p - 1, p); /* remove the '\' */ --p; --- 5179,5189 ---- || *p == '|' || *p == '\n') { /* ! * We remove the '\' before the '|', unless EX_CTRLV is used * AND 'b' is present in 'cpoptions'. */ if ((vim_strchr(p_cpo, CPO_BAR) == NULL ! || !(eap->argt & EX_CTRLV)) && *(p - 1) == '\\') { STRMOVE(p - 1, p); /* remove the '\' */ --p; *************** *** 5197,5203 **** } } ! if (!(eap->argt & NOTRLCOM)) /* remove trailing spaces */ del_trailing_spaces(eap->arg); } --- 5197,5203 ---- } } ! if (!(eap->argt & EX_NOTRLCOM)) /* remove trailing spaces */ del_trailing_spaces(eap->arg); } *************** *** 9276,9281 **** --- 9276,9282 ---- * '#' to curwin->w_altfile * '' to word under the cursor * '' to WORD under the cursor + * '' to C-expression under the cursor * '' to path name under the cursor * '' to sourced file name * '' to sourced file line number *** ../vim-8.1.1666/src/ex_getln.c 2019-07-04 20:26:17.798397726 +0200 --- src/ex_getln.c 2019-07-12 17:02:31.487067947 +0200 *************** *** 4834,4840 **** * EXPAND_COMMANDS Cursor is still touching the command, so complete * it. * EXPAND_BUFFERS Complete file names for :buf and :sbuf commands. ! * EXPAND_FILES After command with XFILE set, or after setting * with P_EXPAND set. eg :e ^I, :w>>^I * EXPAND_DIRECTORIES In some cases this is used instead of the latter * when we know only directories are of interest. eg --- 4834,4840 ---- * EXPAND_COMMANDS Cursor is still touching the command, so complete * it. * EXPAND_BUFFERS Complete file names for :buf and :sbuf commands. ! * EXPAND_FILES After command with EX_XFILE set, or after setting * with P_EXPAND set. eg :e ^I, :w>>^I * EXPAND_DIRECTORIES In some cases this is used instead of the latter * when we know only directories are of interest. eg *** ../vim-8.1.1666/src/usercmd.c 2019-05-24 18:48:36.774128421 +0200 --- src/usercmd.c 2019-07-12 17:27:35.592380562 +0200 *************** *** 419,430 **** // Special cases len = 4; ! if (a & BANG) { msg_putchar('!'); --len; } ! if (a & REGSTR) { msg_putchar('"'); --len; --- 419,430 ---- // Special cases len = 4; ! if (a & EX_BANG) { msg_putchar('!'); --len; } ! if (a & EX_REGSTR) { msg_putchar('"'); --len; *************** *** 434,440 **** msg_putchar('b'); --len; } ! if (a & TRLBAR) { msg_putchar('|'); --len; --- 434,440 ---- msg_putchar('b'); --len; } ! if (a & EX_TRLBAR) { msg_putchar('|'); --len; *************** *** 456,468 **** len = 0; // Arguments ! switch ((int)(a & (EXTRA|NOSPC|NEEDARG))) { ! case 0: IObuff[len++] = '0'; break; ! case (EXTRA): IObuff[len++] = '*'; break; ! case (EXTRA|NOSPC): IObuff[len++] = '?'; break; ! case (EXTRA|NEEDARG): IObuff[len++] = '+'; break; ! case (EXTRA|NOSPC|NEEDARG): IObuff[len++] = '1'; break; } do { --- 456,468 ---- len = 0; // Arguments ! switch ((int)(a & (EX_EXTRA|EX_NOSPC|EX_NEEDARG))) { ! case 0: IObuff[len++] = '0'; break; ! case (EX_EXTRA): IObuff[len++] = '*'; break; ! case (EX_EXTRA|EX_NOSPC): IObuff[len++] = '?'; break; ! case (EX_EXTRA|EX_NEEDARG): IObuff[len++] = '+'; break; ! case (EX_EXTRA|EX_NOSPC|EX_NEEDARG): IObuff[len++] = '1'; break; } do { *************** *** 470,484 **** } while (len < 5 - over); // Address / Range ! if (a & (RANGE|COUNT)) { ! if (a & COUNT) { // -count=N sprintf((char *)IObuff + len, "%ldc", cmd->uc_def); len += (int)STRLEN(IObuff + len); } ! else if (a & DFLALL) IObuff[len++] = '%'; else if (cmd->uc_def >= 0) { --- 470,484 ---- } while (len < 5 - over); // Address / Range ! if (a & (EX_RANGE|EX_COUNT)) { ! if (a & EX_COUNT) { // -count=N sprintf((char *)IObuff + len, "%ldc", cmd->uc_def); len += (int)STRLEN(IObuff + len); } ! else if (a & EX_DFLALL) IObuff[len++] = '%'; else if (cmd->uc_def >= 0) { *************** *** 638,647 **** { *complp = command_complete[i].expand; if (command_complete[i].expand == EXPAND_BUFFERS) ! *argt |= BUFNAME; else if (command_complete[i].expand == EXPAND_DIRECTORIES || command_complete[i].expand == EXPAND_FILES) ! *argt |= XFILE; break; } } --- 638,647 ---- { *complp = command_complete[i].expand; if (command_complete[i].expand == EXPAND_BUFFERS) ! *argt |= EX_BUFNAME; else if (command_complete[i].expand == EXPAND_DIRECTORIES || command_complete[i].expand == EXPAND_FILES) ! *argt |= EX_XFILE; break; } } *************** *** 702,714 **** // First, try the simple attributes (no arguments) if (STRNICMP(attr, "bang", len) == 0) ! *argt |= BANG; else if (STRNICMP(attr, "buffer", len) == 0) *flags |= UC_BUFFER; else if (STRNICMP(attr, "register", len) == 0) ! *argt |= REGSTR; else if (STRNICMP(attr, "bar", len) == 0) ! *argt |= TRLBAR; else { int i; --- 702,714 ---- // First, try the simple attributes (no arguments) if (STRNICMP(attr, "bang", len) == 0) ! *argt |= EX_BANG; else if (STRNICMP(attr, "buffer", len) == 0) *flags |= UC_BUFFER; else if (STRNICMP(attr, "register", len) == 0) ! *argt |= EX_REGSTR; else if (STRNICMP(attr, "bar", len) == 0) ! *argt |= EX_TRLBAR; else { int i; *************** *** 736,748 **** // Do nothing - this is the default ; else if (*val == '1') ! *argt |= (EXTRA | NOSPC | NEEDARG); else if (*val == '*') ! *argt |= EXTRA; else if (*val == '?') ! *argt |= (EXTRA | NOSPC); else if (*val == '+') ! *argt |= (EXTRA | NEEDARG); else goto wrong_nargs; } --- 736,748 ---- // Do nothing - this is the default ; else if (*val == '1') ! *argt |= (EX_EXTRA | EX_NOSPC | EX_NEEDARG); else if (*val == '*') ! *argt |= EX_EXTRA; else if (*val == '?') ! *argt |= (EX_EXTRA | EX_NOSPC); else if (*val == '+') ! *argt |= (EX_EXTRA | EX_NEEDARG); else goto wrong_nargs; } *************** *** 755,763 **** } else if (STRNICMP(attr, "range", attrlen) == 0) { ! *argt |= RANGE; if (vallen == 1 && *val == '%') ! *argt |= DFLALL; else if (val != NULL) { p = val; --- 755,763 ---- } else if (STRNICMP(attr, "range", attrlen) == 0) { ! *argt |= EX_RANGE; if (vallen == 1 && *val == '%') ! *argt |= EX_DFLALL; else if (val != NULL) { p = val; *************** *** 769,775 **** } *def = getdigits(&p); ! *argt |= ZEROR; if (p != val + vallen || vallen == 0) { --- 769,775 ---- } *def = getdigits(&p); ! *argt |= EX_ZEROR; if (p != val + vallen || vallen == 0) { *************** *** 784,790 **** } else if (STRNICMP(attr, "count", attrlen) == 0) { ! *argt |= (COUNT | ZEROR | RANGE); // default for -count is using any number if (*addr_type_arg == ADDR_NONE) *addr_type_arg = ADDR_OTHER; --- 784,790 ---- } else if (STRNICMP(attr, "count", attrlen) == 0) { ! *argt |= (EX_COUNT | EX_ZEROR | EX_RANGE); // default for -count is using any number if (*addr_type_arg == ADDR_NONE) *addr_type_arg = ADDR_OTHER; *************** *** 818,824 **** } else if (STRNICMP(attr, "addr", attrlen) == 0) { ! *argt |= RANGE; if (val == NULL) { emsg(_("E179: argument required for -addr")); --- 818,824 ---- } else if (STRNICMP(attr, "addr", attrlen) == 0) { ! *argt |= EX_RANGE; if (val == NULL) { emsg(_("E179: argument required for -addr")); *************** *** 827,833 **** if (parse_addr_type_arg(val, (int)vallen, addr_type_arg) == FAIL) return FAIL; if (*addr_type_arg != ADDR_LINES) ! *argt |= ZEROR; } else { --- 827,833 ---- if (parse_addr_type_arg(val, (int)vallen, addr_type_arg) == FAIL) return FAIL; if (*addr_type_arg != ADDR_LINES) ! *argt |= EX_ZEROR; } else { *************** *** 1315,1321 **** // When specified there is a single argument don't split it. // Works for ":Cmd %" when % is "a b c". ! if ((eap->argt & NOSPC) && quote == 2) quote = 1; switch (quote) --- 1315,1321 ---- // When specified there is a single argument don't split it. // Works for ":Cmd %" when % is "a b c". ! if ((eap->argt & EX_NOSPC) && quote == 2) quote = 1; switch (quote) *** ../vim-8.1.1666/src/syntax.c 2019-07-01 21:47:30.612714048 +0200 --- src/syntax.c 2019-07-12 17:04:13.466611982 +0200 *************** *** 4809,4815 **** * Everything that's left, up to the next command, should be the * filename to include. */ ! eap->argt |= (XFILE | NOSPC); separate_nextcmd(eap); if (*eap->arg == '<' || *eap->arg == '$' || mch_isFullName(eap->arg)) { --- 4809,4815 ---- * Everything that's left, up to the next command, should be the * filename to include. */ ! eap->argt |= (EX_XFILE | EX_NOSPC); separate_nextcmd(eap); if (*eap->arg == '<' || *eap->arg == '$' || mch_isFullName(eap->arg)) { *** ../vim-8.1.1666/src/version.c 2019-07-12 16:35:31.206326782 +0200 --- src/version.c 2019-07-12 17:56:44.604833094 +0200 *************** *** 779,780 **** --- 779,782 ---- { /* Add new patch number below this line */ + /**/ + 1667, /**/ -- CONCORDE: Quickly, sir, come this way! LAUNCELOT: No! It's not right for my idiom. I must escape more ... more ... CONCORDE: Dramatically, sir? LAUNCELOT: Dramatically. "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///