From 7ae7fb50fc701754db23e67dbb682a3f85c1246b Mon Sep 17 00:00:00 2001 From: tyru Date: Sat, 20 Jul 2019 01:56:08 +0900 Subject: [PATCH 1/5] support relpath, output to stdout --- scripts/update_builtin_commands.sh | 4 ++-- scripts/update_builtin_commands.vim | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/scripts/update_builtin_commands.sh b/scripts/update_builtin_commands.sh index dbb8d3b6..9ac5a7d2 100755 --- a/scripts/update_builtin_commands.sh +++ b/scripts/update_builtin_commands.sh @@ -8,6 +8,6 @@ fi vim -u NONE -i NONE -n -N -e -s \ --cmd "let &rtp .= ',' . getcwd()" \ --cmd "source scripts/update_builtin_commands.vim" \ - --cmd "call VimLParserNewCmds('$1')" \ - --cmd "qall!" + --cmd "call VimLParserNewCmds(expand('$1'))" \ + --cmd "qall!" 2>&1 echo diff --git a/scripts/update_builtin_commands.vim b/scripts/update_builtin_commands.vim index ae6472d7..3b3b2e6c 100644 --- a/scripts/update_builtin_commands.vim +++ b/scripts/update_builtin_commands.vim @@ -135,4 +135,3 @@ function! VimLParserNewCmds(ex_cmds_h) abort verbose echo generated_text endif endfunction -" call s:vimlparser_new_cmds('/home/haya14busa/src/github.com/vim/vim/src/ex_cmds.h') From 154e58ce1aa4c2ae88859e44bfd433818eb04ee7 Mon Sep 17 00:00:00 2001 From: tyru Date: Sat, 20 Jul 2019 01:56:53 +0900 Subject: [PATCH 2/5] add scripts/update_builtin_functions.{sh,vim} This function list is the result of Vim 8.1.1711 --- autoload/vimlparser.vim | 475 +++++++++++++++++++++++++++ scripts/update_builtin_functions.sh | 13 + scripts/update_builtin_functions.vim | 72 ++++ 3 files changed, 560 insertions(+) create mode 100755 scripts/update_builtin_functions.sh create mode 100644 scripts/update_builtin_functions.vim diff --git a/autoload/vimlparser.vim b/autoload/vimlparser.vim index 83a78dd2..4e45dc4e 100644 --- a/autoload/vimlparser.vim +++ b/autoload/vimlparser.vim @@ -2548,6 +2548,481 @@ let s:VimLParser.builtin_commands = [ \ {'flags': 'EX_EXTRA|EX_TRLBAR|EX_CMDWIN', 'minlen': 2, 'name': 'xrestore', 'parser': 'parse_cmd_common'}, \] +let s:VimLParser.builtin_functions = [ + \ {'name': 'abs', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'acos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'add', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'and', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'append', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'appendbufline', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'argc', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'argidx', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'arglistid', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'argv', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'asin', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'assert_beeps', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'assert_equal', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'assert_equalfile', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'assert_exception', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'assert_fails', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'assert_false', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'assert_inrange', 'min_argc': 3, 'max_argc': 4}, + \ {'name': 'assert_match', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'assert_notequal', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'assert_notmatch', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'assert_report', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'assert_true', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'atan', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'atan2', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'balloon_gettext', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'balloon_show', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'balloon_split', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'browse', 'min_argc': 4, 'max_argc': 4}, + \ {'name': 'browsedir', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'bufadd', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufexists', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'buffer_exists', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'buffer_name', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'buffer_number', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'buflisted', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufload', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufloaded', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufname', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufnr', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'bufwinid', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'bufwinnr', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'byte2line', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'byteidx', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'byteidxcomp', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'call', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'ceil', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_canread', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_close', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_close_in', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_evalexpr', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'ch_evalraw', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'ch_getbufnr', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'ch_getjob', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_info', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'ch_log', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_logfile', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_open', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_read', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_readblob', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_readraw', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'ch_sendexpr', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'ch_sendraw', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'ch_setoptions', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'ch_status', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'changenr', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'char2nr', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'chdir', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'cindent', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'clearmatches', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'col', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'complete', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'complete_add', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'complete_check', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'complete_info', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'confirm', 'min_argc': 1, 'max_argc': 4}, + \ {'name': 'copy', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'cos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'cosh', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'count', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'cscope_connection', 'min_argc': 0, 'max_argc': 3}, + \ {'name': 'cursor', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'debugbreak', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'deepcopy', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'delete', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'deletebufline', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'did_filetype', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'diff_filler', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'diff_hlID', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'empty', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'environ', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'escape', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'eval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'eventhandler', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'executable', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'execute', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'exepath', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'exists', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'exp', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'expand', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'expandcmd', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'extend', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'feedkeys', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'file_readable', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'filereadable', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'filewritable', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'filter', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'finddir', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'findfile', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'float2nr', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'floor', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'fmod', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'fnameescape', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'fnamemodify', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'foldclosed', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'foldclosedend', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'foldlevel', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'foldtext', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'foldtextresult', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'foreground', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'funcref', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'function', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'garbagecollect', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'get', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'get_lazy', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'getbufinfo', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getbufline', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'getbufvar', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'getchangelist', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getchar', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getcharmod', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcharsearch', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcmdline', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcmdpos', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcmdtype', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcmdwintype', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcompletion', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'getcurpos', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getcwd', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'getenv', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getfontname', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getfperm', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getfsize', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getftime', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getftype', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getjumplist', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'getline', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'getloclist', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'getmatches', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getpid', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getpos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'getqflist', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getreg', 'min_argc': 0, 'max_argc': 3}, + \ {'name': 'getregtype', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'gettabinfo', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'gettabvar', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'gettabwinvar', 'min_argc': 3, 'max_argc': 4}, + \ {'name': 'gettagstack', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getwininfo', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getwinpos', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'getwinposx', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getwinposy', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'getwinvar', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'glob', 'min_argc': 1, 'max_argc': 4}, + \ {'name': 'glob2regpat', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'globpath', 'min_argc': 2, 'max_argc': 5}, + \ {'name': 'has', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'has_key', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'haslocaldir', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'hasmapto', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'highlightID', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'highlight_exists', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'histadd', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'histdel', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'histget', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'histnr', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'hlID', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'hlexists', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'hostname', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'iconv', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'indent', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'index', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'input', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'inputdialog', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'inputlist', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'inputrestore', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'inputsave', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'inputsecret', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'insert', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'invert', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'isdirectory', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'isinf', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'islocked', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'isnan', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'items', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'job_getchannel', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'job_info', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'job_setoptions', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'job_start', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'job_status', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'job_stop', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'join', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'js_decode', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'js_encode', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'json_decode', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'json_encode', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'keys', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'last_buffer_nr', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'len', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'libcall', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'libcallnr', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'line', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'line2byte', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'lispindent', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'list2str', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'listener_add', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'listener_flush', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'listener_remove', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'localtime', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'log', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'log10', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'luaeval', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'map', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'maparg', 'min_argc': 1, 'max_argc': 4}, + \ {'name': 'mapcheck', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'match', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'matchadd', 'min_argc': 2, 'max_argc': 5}, + \ {'name': 'matchaddpos', 'min_argc': 2, 'max_argc': 5}, + \ {'name': 'matcharg', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'matchdelete', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'matchend', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'matchlist', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'matchstr', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'matchstrpos', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'max', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'min', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'mkdir', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'mode', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'mzeval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'nextnonblank', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'nr2char', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'or', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'pathshorten', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'perleval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'popup_atcursor', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_beval', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_clear', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'popup_close', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'popup_create', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_dialog', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_filter_menu', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_filter_yesno', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_getoptions', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'popup_getpos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'popup_hide', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'popup_locate', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_menu', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_move', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_notification', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_setoptions', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_settext', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'popup_show', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'pow', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prevnonblank', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'printf', 'min_argc': 1, 'max_argc': 19}, + \ {'name': 'prompt_setcallback', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prompt_setinterrupt', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prompt_setprompt', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prop_add', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'prop_clear', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'prop_list', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'prop_remove', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'prop_type_add', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prop_type_change', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'prop_type_delete', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'prop_type_get', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'prop_type_list', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'pumvisible', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'py3eval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'pyeval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'pyxeval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'range', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'readdir', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'readfile', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'reg_executing', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'reg_recording', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'reltime', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'reltimefloat', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'reltimestr', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'remote_expr', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'remote_foreground', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'remote_peek', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'remote_read', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'remote_send', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'remote_startserver', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'remove', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'rename', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'repeat', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'resolve', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'reverse', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'round', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'rubyeval', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'screenattr', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'screenchar', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'screenchars', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'screencol', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'screenpos', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'screenrow', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'screenstring', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'search', 'min_argc': 1, 'max_argc': 4}, + \ {'name': 'searchdecl', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'searchpair', 'min_argc': 3, 'max_argc': 7}, + \ {'name': 'searchpairpos', 'min_argc': 3, 'max_argc': 7}, + \ {'name': 'searchpos', 'min_argc': 1, 'max_argc': 4}, + \ {'name': 'server2client', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'serverlist', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'setbufline', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'setbufvar', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'setcharsearch', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'setcmdpos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'setenv', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'setfperm', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'setline', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'setloclist', 'min_argc': 2, 'max_argc': 4}, + \ {'name': 'setmatches', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'setpos', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'setqflist', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'setreg', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'settabvar', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'settabwinvar', 'min_argc': 4, 'max_argc': 4}, + \ {'name': 'settagstack', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'setwinvar', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'sha256', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'shellescape', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'shiftwidth', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'sign_define', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'sign_getdefined', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'sign_getplaced', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'sign_jump', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'sign_place', 'min_argc': 4, 'max_argc': 5}, + \ {'name': 'sign_placelist', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'sign_undefine', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'sign_unplace', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'sign_unplacelist', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'simplify', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'sin', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'sinh', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'sort', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'sound_clear', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'sound_playevent', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'sound_playfile', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'sound_stop', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'soundfold', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'spellbadword', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'spellsuggest', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'split', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'sqrt', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'str2float', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'str2list', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'str2nr', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'strcharpart', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'strchars', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'strdisplaywidth', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'strftime', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'strgetchar', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'stridx', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'string', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'strlen', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'strpart', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'strridx', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'strtrans', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'strwidth', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'submatch', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'substitute', 'min_argc': 4, 'max_argc': 4}, + \ {'name': 'swapinfo', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'swapname', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'synID', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'synIDattr', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'synIDtrans', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'synconcealed', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'synstack', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'system', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'systemlist', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'tabpagebuflist', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'tabpagenr', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'tabpagewinnr', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'tagfiles', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'taglist', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'tan', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'tanh', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'tempname', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'term_dumpdiff', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'term_dumpload', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'term_dumpwrite', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'term_getaltscreen', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getansicolors', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getattr', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_getcursor', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getjob', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getline', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_getscrolled', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getsize', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_getstatus', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_gettitle', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'term_gettty', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'term_list', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'term_scrape', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_sendkeys', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_setansicolors', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_setkill', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_setrestore', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'term_setsize', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'term_start', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'term_wait', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'test_alloc_fail', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'test_autochdir', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_feedinput', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'test_garbagecollect_now', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_garbagecollect_soon', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_getvalue', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'test_ignore_error', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'test_null_blob', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_channel', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_dict', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_job', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_list', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_partial', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_null_string', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'test_option_not_set', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'test_override', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'test_refcount', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'test_scrollbar', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'test_setmouse', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'test_settime', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'timer_info', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'timer_pause', 'min_argc': 2, 'max_argc': 2}, + \ {'name': 'timer_start', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'timer_stop', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'timer_stopall', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'tolower', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'toupper', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'tr', 'min_argc': 3, 'max_argc': 3}, + \ {'name': 'trim', 'min_argc': 1, 'max_argc': 2}, + \ {'name': 'trunc', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'type', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'undofile', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'undotree', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'uniq', 'min_argc': 1, 'max_argc': 3}, + \ {'name': 'values', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'virtcol', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'visualmode', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'wildmenumode', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'win_execute', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'win_findbuf', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'win_getid', 'min_argc': 0, 'max_argc': 2}, + \ {'name': 'win_gotoid', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'win_id2tabwin', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'win_id2win', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'win_screenpos', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'winbufnr', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'wincol', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'winheight', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'winlayout', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'winline', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'winnr', 'min_argc': 0, 'max_argc': 1}, + \ {'name': 'winrestcmd', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'winrestview', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'winsaveview', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'winwidth', 'min_argc': 1, 'max_argc': 1}, + \ {'name': 'wordcount', 'min_argc': 0, 'max_argc': 0}, + \ {'name': 'writefile', 'min_argc': 2, 'max_argc': 3}, + \ {'name': 'xor', 'min_argc': 2, 'max_argc': 2}, + \] + let s:ExprTokenizer = {} function! s:ExprTokenizer.new(...) diff --git a/scripts/update_builtin_functions.sh b/scripts/update_builtin_functions.sh new file mode 100755 index 00000000..ff1dbcce --- /dev/null +++ b/scripts/update_builtin_functions.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +if [ $# -ne 1 ]; then + echo "USAGE: ./scripts/update_builtin_functions.sh /path/to/vim/src/evalfunc.c" + exit 1 +fi + +vim -u NONE -i NONE -n -N -e -s \ + --cmd "let &rtp .= ',' . getcwd()" \ + --cmd "source scripts/update_builtin_functions.vim" \ + --cmd "call VimLParserNewFuncs(expand('$1'))" \ + --cmd "qall!" 2>&1 +echo diff --git a/scripts/update_builtin_functions.vim b/scripts/update_builtin_functions.vim new file mode 100644 index 00000000..c9cd7714 --- /dev/null +++ b/scripts/update_builtin_functions.vim @@ -0,0 +1,72 @@ +" create builtin function table + +" TODO more loose pattern? +function! s:get_parse_lines(lines) abort + let from = index(a:lines, '} functions[] =') + if from ==# -1 + return [] + endif + " find next '{' + let from = index(a:lines, '{', from + 1) + let to = index(a:lines, '};', from + 1) + return map(range(from + 1, to - 1), {_,i -> a:lines[i] }) +endfunction + +function! s:gen(evalfunc_c) abort + let lines = readfile(a:evalfunc_c) + + " { 'name': string, 'min_argc': integer, 'max_argc': integer } + let funcs = [] + + for line in s:get_parse_lines(lines) + let m = matchlist(line, '\v\{\s*"(\w+)"\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*\w+\s*\}') + if !empty(m) + let [name, min_argc, max_argc] = m[1:3] + call add(funcs, { + \ 'name': name, + \ 'min_argc': min_argc + 0, + \ 'max_argc': max_argc + 0, + \}) + endif + endfor + return funcs +endfunction + +function! s:gen_new_builtin(existing, latest) abort + let existing_names = {} + for func in a:existing + let existing_names[func.name] = v:true + endfor + let new_funcs = [] + for func in filter(copy(a:latest), {_, f -> !has_key(existing_names, f.name)}) + let new_funcs = add(new_funcs, func) + endfor + return new_funcs +endfunction + +function! s:gen_viml(new_funcs) abort + let lines = [] + for f in a:new_funcs + " output items in this key order + let lines = add(lines, + \ printf(' \ {''name'': %s, ''min_argc'': %s, ''max_argc'': %s},', + \ string(f.name), string(f.min_argc), string(f.max_argc))) + endfor + return join(lines, "\n") +endfunction + +" -- main + +" evalfunc_c: path to vim/src/evalfunc.c +function! VimLParserNewFuncs(evalfunc_c) abort + let vimlparser = vimlparser#import() + let latest = s:gen(a:evalfunc_c) + let new_funcs = s:gen_new_builtin(vimlparser#import().VimLParser.builtin_functions, latest) + let generated_text = s:gen_viml(new_funcs) + if generated_text ==# '' + verbose echo 's:VimLParser.builtin_functions in autoload/vimlparser.vim is up-to-date.' + else + verbose echo "Append following lines to s:VimLParser.builtin_functions in autoload/vimlparser.vim\n" + verbose echo generated_text + endif +endfunction From b680c53795b9cfe5a2984d8545323c68743a62aa Mon Sep 17 00:00:00 2001 From: tyru Date: Sat, 20 Jul 2019 02:32:04 +0900 Subject: [PATCH 3/5] use s:VimLParser.builtin_functions in js,py compilers --- js/jscompiler.vim | 2 +- js/vimlparser.js | 1 + py/pycompiler.vim | 3 ++- py/vimlparser.py | 1 + 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/js/jscompiler.vim b/js/jscompiler.vim index da90892b..e3850d43 100644 --- a/js/jscompiler.vim +++ b/js/jscompiler.vim @@ -839,7 +839,7 @@ function s:JavascriptCompiler.compile_op2(node, op) endfunction -let s:viml_builtin_functions = ['abs', 'acos', 'add', 'and', 'append', 'append', 'argc', 'argidx', 'argv', 'argv', 'asin', 'atan', 'atan2', 'browse', 'browsedir', 'bufexists', 'buflisted', 'bufloaded', 'bufname', 'bufnr', 'bufwinnr', 'byte2line', 'byteidx', 'call', 'ceil', 'changenr', 'char2nr', 'cindent', 'clearmatches', 'col', 'complete', 'complete_add', 'complete_check', 'confirm', 'copy', 'cos', 'cosh', 'count', 'cscope_connection', 'cursor', 'cursor', 'deepcopy', 'delete', 'did_filetype', 'diff_filler', 'diff_hlID', 'empty', 'escape', 'eval', 'eventhandler', 'executable', 'exists', 'extend', 'exp', 'expand', 'feedkeys', 'filereadable', 'filewritable', 'filter', 'finddir', 'findfile', 'float2nr', 'floor', 'fmod', 'fnameescape', 'fnamemodify', 'foldclosed', 'foldclosedend', 'foldlevel', 'foldtext', 'foldtextresult', 'foreground', 'function', 'garbagecollect', 'get', 'get', 'getbufline', 'getbufvar', 'getchar', 'getcharmod', 'getcmdline', 'getcmdpos', 'getcmdtype', 'getcwd', 'getfperm', 'getfsize', 'getfontname', 'getftime', 'getftype', 'getline', 'getline', 'getloclist', 'getmatches', 'getpid', 'getpos', 'getqflist', 'getreg', 'getregtype', 'gettabvar', 'gettabwinvar', 'getwinposx', 'getwinposy', 'getwinvar', 'glob', 'globpath', 'has', 'has_key', 'haslocaldir', 'hasmapto', 'histadd', 'histdel', 'histget', 'histnr', 'hlexists', 'hlID', 'hostname', 'iconv', 'indent', 'index', 'input', 'inputdialog', 'inputlist', 'inputrestore', 'inputsave', 'inputsecret', 'insert', 'invert', 'isdirectory', 'islocked', 'items', 'join', 'keys', 'len', 'libcall', 'libcallnr', 'line', 'line2byte', 'lispindent', 'localtime', 'log', 'log10', 'luaeval', 'map', 'maparg', 'mapcheck', 'match', 'matchadd', 'matcharg', 'matchdelete', 'matchend', 'matchlist', 'matchstr', 'max', 'min', 'mkdir', 'mode', 'mzeval', 'nextnonblank', 'nr2char', 'or', 'pathshorten', 'pow', 'prevnonblank', 'printf', 'pumvisible', 'pyeval', 'py3eval', 'range', 'readfile', 'reltime', 'reltimestr', 'remote_expr', 'remote_foreground', 'remote_peek', 'remote_read', 'remote_send', 'remove', 'remove', 'rename', 'repeat', 'resolve', 'reverse', 'round', 'screencol', 'screenrow', 'search', 'searchdecl', 'searchpair', 'searchpairpos', 'searchpos', 'server2client', 'serverlist', 'setbufvar', 'setcmdpos', 'setline', 'setloclist', 'setmatches', 'setpos', 'setqflist', 'setreg', 'settabvar', 'settabwinvar', 'setwinvar', 'sha256', 'shellescape', 'shiftwidth', 'simplify', 'sin', 'sinh', 'sort', 'soundfold', 'spellbadword', 'spellsuggest', 'split', 'sqrt', 'str2float', 'str2nr', 'strchars', 'strdisplaywidth', 'strftime', 'stridx', 'string', 'strlen', 'strpart', 'strridx', 'strtrans', 'strwidth', 'submatch', 'substitute', 'synID', 'synIDattr', 'synIDtrans', 'synconcealed', 'synstack', 'system', 'tabpagebuflist', 'tabpagenr', 'tabpagewinnr', 'taglist', 'tagfiles', 'tempname', 'tan', 'tanh', 'tolower', 'toupper', 'tr', 'trunc', 'type', 'undofile', 'undotree', 'values', 'virtcol', 'visualmode', 'wildmenumode', 'winbufnr', 'wincol', 'winheight', 'winline', 'winnr', 'winrestcmd', 'winrestview', 'winsaveview', 'winwidth', 'writefile', 'xor'] +let s:viml_builtin_functions = map(copy(s:VimLParser.builtin_functions), 'v:val.name') let s:script_dir = expand(':h') function! s:convert(in, out) abort diff --git a/js/vimlparser.js b/js/vimlparser.js index f161274a..caefec66 100644 --- a/js/vimlparser.js +++ b/js/vimlparser.js @@ -2267,6 +2267,7 @@ VimLParser.prototype.neovim_removed_commands = [{"name":"Print", "minlen":1, "fl // To find new builtin_commands, run the below script. // $ scripts/update_builtin_commands.sh /path/to/vim/src/ex_cmds.h VimLParser.prototype.builtin_commands = [{"name":"append", "minlen":1, "flags":"BANG|RANGE|ZEROR|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_append"}, {"name":"abbreviate", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"abclear", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"aboveleft", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"all", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"amenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"anoremenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"args", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"argadd", "minlen":4, "flags":"BANG|NEEDARG|RANGE|NOTADR|ZEROR|FILES|TRLBAR", "parser":"parse_cmd_common"}, {"name":"argdelete", "minlen":4, "flags":"BANG|RANGE|NOTADR|FILES|TRLBAR", "parser":"parse_cmd_common"}, {"name":"argedit", "minlen":4, "flags":"BANG|NEEDARG|RANGE|NOTADR|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"argdo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"argglobal", "minlen":4, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"arglocal", "minlen":4, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"argument", "minlen":4, "flags":"BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"ascii", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"autocmd", "minlen":2, "flags":"BANG|EXTRA|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"augroup", "minlen":3, "flags":"BANG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"aunmenu", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"buffer", "minlen":1, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"bNext", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"ball", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"badd", "minlen":3, "flags":"NEEDARG|FILE1|EDITCMD|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"bdelete", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"behave", "minlen":2, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"belowright", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"bfirst", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}, {"name":"blast", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}, {"name":"bmodified", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"bnext", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"botright", "minlen":2, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"bprevious", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"brewind", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}, {"name":"break", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_break"}, {"name":"breakadd", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"breakdel", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"breaklist", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"browse", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"bufdo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"buffers", "minlen":7, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"bunload", "minlen":3, "flags":"BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"bwipeout", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"change", "minlen":1, "flags":"BANG|WHOLEFOLD|RANGE|COUNT|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"cNext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cNfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cabbrev", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cabclear", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"caddbuffer", "minlen":3, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"caddexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}, {"name":"caddfile", "minlen":5, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}, {"name":"call", "minlen":3, "flags":"RANGE|NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_call"}, {"name":"catch", "minlen":3, "flags":"EXTRA|SBOXOK|CMDWIN", "parser":"parse_cmd_catch"}, {"name":"cbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cc", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cclose", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cd", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"center", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"cexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cfile", "minlen":2, "flags":"TRLBAR|FILE1|BANG", "parser":"parse_cmd_common"}, {"name":"cfirst", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cgetbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cgetexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cgetfile", "minlen":2, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}, {"name":"changes", "minlen":7, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"chdir", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"checkpath", "minlen":3, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"checktime", "minlen":6, "flags":"RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"clist", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"clast", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"close", "minlen":3, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cnext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cnewer", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cnfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cnoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cnoreabbrev", "minlen":6, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"copy", "minlen":2, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"colder", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"colorscheme", "minlen":4, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"command", "minlen":3, "flags":"EXTRA|BANG|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"comclear", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"compiler", "minlen":4, "flags":"BANG|TRLBAR|WORD1|CMDWIN", "parser":"parse_cmd_common"}, {"name":"continue", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_continue"}, {"name":"confirm", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"copen", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"cprevious", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cpfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cquit", "minlen":2, "flags":"TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"crewind", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"cscope", "minlen":2, "flags":"EXTRA|NOTRLCOM|XFILE", "parser":"parse_cmd_common"}, {"name":"cstag", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"cunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cunabbrev", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"cwindow", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"delete", "minlen":1, "flags":"RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"delmarks", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"debug", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"debuggreedy", "minlen":6, "flags":"RANGE|NOTADR|ZEROR|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"delcommand", "minlen":4, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"delfunction", "minlen":4, "flags":"BANG|NEEDARG|WORD1|CMDWIN", "parser":"parse_cmd_delfunction"}, {"name":"diffupdate", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"diffget", "minlen":5, "flags":"RANGE|EXTRA|TRLBAR|MODIFY", "parser":"parse_cmd_common"}, {"name":"diffoff", "minlen":5, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"diffpatch", "minlen":5, "flags":"EXTRA|FILE1|TRLBAR|MODIFY", "parser":"parse_cmd_common"}, {"name":"diffput", "minlen":6, "flags":"RANGE|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"diffsplit", "minlen":5, "flags":"EXTRA|FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"diffthis", "minlen":5, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"digraphs", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"display", "minlen":2, "flags":"EXTRA|NOTRLCOM|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"djump", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}, {"name":"dlist", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"doautocmd", "minlen":2, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"doautoall", "minlen":7, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"drop", "minlen":2, "flags":"FILES|EDITCMD|NEEDARG|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"dsearch", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"dsplit", "minlen":3, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}, {"name":"edit", "minlen":1, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"earlier", "minlen":2, "flags":"TRLBAR|EXTRA|NOSPC|CMDWIN", "parser":"parse_cmd_common"}, {"name":"echo", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echo"}, {"name":"echoerr", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echoerr"}, {"name":"echohl", "minlen":5, "flags":"EXTRA|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_echohl"}, {"name":"echomsg", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echomsg"}, {"name":"echon", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echon"}, {"name":"else", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_else"}, {"name":"elseif", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_elseif"}, {"name":"emenu", "minlen":2, "flags":"NEEDARG|EXTRA|TRLBAR|NOTRLCOM|RANGE|NOTADR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"endif", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endif"}, {"name":"endfor", "minlen":5, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endfor"}, {"name":"endfunction", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_endfunction"}, {"name":"endtry", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endtry"}, {"name":"endwhile", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endwhile"}, {"name":"enew", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"ex", "minlen":2, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"execute", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_execute"}, {"name":"exit", "minlen":3, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"exusage", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"file", "minlen":1, "flags":"RANGE|NOTADR|ZEROR|BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"files", "minlen":5, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"filetype", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"find", "minlen":3, "flags":"RANGE|NOTADR|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"finally", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_finally"}, {"name":"finish", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_finish"}, {"name":"first", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"fixdel", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"fold", "minlen":2, "flags":"RANGE|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"foldclose", "minlen":5, "flags":"RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"folddoopen", "minlen":5, "flags":"RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"folddoclosed", "minlen":7, "flags":"RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"foldopen", "minlen":5, "flags":"RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"for", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_for"}, {"name":"function", "minlen":2, "flags":"EXTRA|BANG|CMDWIN", "parser":"parse_cmd_function"}, {"name":"global", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"goto", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"grep", "minlen":2, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"grepadd", "minlen":5, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"gui", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"gvim", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"hardcopy", "minlen":2, "flags":"RANGE|COUNT|EXTRA|TRLBAR|DFLALL|BANG", "parser":"parse_cmd_common"}, {"name":"help", "minlen":1, "flags":"BANG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"helpfind", "minlen":5, "flags":"EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"helpgrep", "minlen":5, "flags":"EXTRA|NOTRLCOM|NEEDARG", "parser":"parse_cmd_common"}, {"name":"helptags", "minlen":5, "flags":"NEEDARG|FILES|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"highlight", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"hide", "minlen":3, "flags":"BANG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"history", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"insert", "minlen":1, "flags":"BANG|RANGE|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_insert"}, {"name":"iabbrev", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"iabclear", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"if", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_if"}, {"name":"ijump", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}, {"name":"ilist", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"imap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"imapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"imenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"inoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"inoreabbrev", "minlen":6, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"inoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"intro", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"isearch", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"isplit", "minlen":3, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}, {"name":"iunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"iunabbrev", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"iunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"join", "minlen":1, "flags":"BANG|RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"jumps", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"k", "minlen":1, "flags":"RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"keepalt", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"keepmarks", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"keepjumps", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"keeppatterns", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"lNext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lNfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"list", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"laddexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}, {"name":"laddbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"laddfile", "minlen":5, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}, {"name":"last", "minlen":2, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"language", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"later", "minlen":3, "flags":"TRLBAR|EXTRA|NOSPC|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lcd", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lchdir", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lclose", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lcscope", "minlen":3, "flags":"EXTRA|NOTRLCOM|XFILE", "parser":"parse_cmd_common"}, {"name":"left", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"leftabove", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"let", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_let"}, {"name":"lexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lfile", "minlen":2, "flags":"TRLBAR|FILE1|BANG", "parser":"parse_cmd_common"}, {"name":"lfirst", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lgetbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lgetexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lgetfile", "minlen":2, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}, {"name":"lgrep", "minlen":3, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"lgrepadd", "minlen":6, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"lhelpgrep", "minlen":2, "flags":"EXTRA|NOTRLCOM|NEEDARG", "parser":"parse_cmd_common"}, {"name":"ll", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"llast", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"list", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lmake", "minlen":4, "flags":"BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"lmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lnext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lnewer", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lnfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"loadkeymap", "minlen":5, "flags":"CMDWIN", "parser":"parse_cmd_loadkeymap"}, {"name":"loadview", "minlen":2, "flags":"FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lockmarks", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"lockvar", "minlen":5, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_lockvar"}, {"name":"lolder", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lopen", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"lprevious", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lpfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"lrewind", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}, {"name":"ls", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"ltag", "minlen":2, "flags":"NOTADR|TRLBAR|BANG|WORD1", "parser":"parse_cmd_common"}, {"name":"lunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lua", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_lua"}, {"name":"luado", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"luafile", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"lvimgrep", "minlen":2, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"lvimgrepadd", "minlen":9, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"lwindow", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"move", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"mark", "minlen":2, "flags":"RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"make", "minlen":3, "flags":"BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"map", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"mapclear", "minlen":4, "flags":"EXTRA|BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"marks", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"match", "minlen":3, "flags":"RANGE|NOTADR|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"menu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"menutranslate", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"messages", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"mkexrc", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"mksession", "minlen":3, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"mkspell", "minlen":4, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"mkvimrc", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"mkview", "minlen":5, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"mode", "minlen":3, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"mzscheme", "minlen":2, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN|SBOXOK", "parser":"parse_cmd_mzscheme"}, {"name":"mzfile", "minlen":3, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nbclose", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nbkey", "minlen":2, "flags":"EXTRA|NOTADR|NEEDARG", "parser":"parse_cmd_common"}, {"name":"nbstart", "minlen":3, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"next", "minlen":1, "flags":"RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"new", "minlen":3, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"nmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"noautocmd", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"noremap", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nohlsearch", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"noreabbrev", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"noremenu", "minlen":6, "flags":"RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"normal", "minlen":4, "flags":"RANGE|BANG|EXTRA|NEEDARG|NOTRLCOM|USECTRLV|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"number", "minlen":2, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nunmap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"nunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"oldfiles", "minlen":2, "flags":"BANG|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"open", "minlen":1, "flags":"RANGE|BANG|EXTRA", "parser":"parse_cmd_common"}, {"name":"omap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"omapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"omenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"only", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"onoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"onoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"options", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"ounmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"ounmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"ownsyntax", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"pclose", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"pedit", "minlen":3, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"perl", "minlen":2, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_perl"}, {"name":"print", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}, {"name":"profdel", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"profile", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"promptfind", "minlen":3, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"promptrepl", "minlen":7, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"perldo", "minlen":5, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"pop", "minlen":2, "flags":"RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"popup", "minlen":4, "flags":"NEEDARG|EXTRA|BANG|TRLBAR|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"ppop", "minlen":2, "flags":"RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"preserve", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"previous", "minlen":4, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"psearch", "minlen":2, "flags":"BANG|RANGE|WHOLEFOLD|DFLALL|EXTRA", "parser":"parse_cmd_common"}, {"name":"ptag", "minlen":2, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptNext", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptfirst", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptjump", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"ptlast", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"ptnext", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptprevious", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptrewind", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"ptselect", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"put", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|REGSTR|TRLBAR|ZEROR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"pwd", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"py3", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python3"}, {"name":"python3", "minlen":7, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python3"}, {"name":"py3file", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"python", "minlen":2, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python"}, {"name":"pyfile", "minlen":3, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"pydo", "minlen":3, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"py3do", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"quit", "minlen":1, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"quitall", "minlen":5, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"qall", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"read", "minlen":1, "flags":"BANG|RANGE|WHOLEFOLD|FILE1|ARGOPT|TRLBAR|ZEROR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"recover", "minlen":3, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}, {"name":"redo", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"redir", "minlen":4, "flags":"BANG|FILES|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"redraw", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"redrawstatus", "minlen":7, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"registers", "minlen":3, "flags":"EXTRA|NOTRLCOM|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"resize", "minlen":3, "flags":"RANGE|NOTADR|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"retab", "minlen":3, "flags":"TRLBAR|RANGE|WHOLEFOLD|DFLALL|BANG|WORD1|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"return", "minlen":4, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_return"}, {"name":"rewind", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"right", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"rightbelow", "minlen":6, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"ruby", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_ruby"}, {"name":"rubydo", "minlen":5, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"rubyfile", "minlen":5, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"rundo", "minlen":4, "flags":"NEEDARG|FILE1", "parser":"parse_cmd_common"}, {"name":"runtime", "minlen":2, "flags":"BANG|NEEDARG|FILES|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"rviminfo", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"substitute", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sNext", "minlen":2, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sandbox", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"sargument", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sall", "minlen":3, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"saveas", "minlen":3, "flags":"BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbNext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sball", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbfirst", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"sblast", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbmodified", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbnext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbprevious", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sbrewind", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"scriptnames", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"scriptencoding", "minlen":7, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"scscope", "minlen":3, "flags":"EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"set", "minlen":2, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}, {"name":"setfiletype", "minlen":4, "flags":"TRLBAR|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"setglobal", "minlen":4, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}, {"name":"setlocal", "minlen":4, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}, {"name":"sfind", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sfirst", "minlen":4, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"shell", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"simalt", "minlen":3, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sign", "minlen":3, "flags":"NEEDARG|RANGE|NOTADR|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"silent", "minlen":3, "flags":"NEEDARG|EXTRA|BANG|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sleep", "minlen":2, "flags":"RANGE|NOTADR|COUNT|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"slast", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"smagic", "minlen":2, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"smap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"smapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"smenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"snext", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sniff", "minlen":3, "flags":"EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"snomagic", "minlen":3, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}, {"name":"snoremap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"snoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sort", "minlen":3, "flags":"RANGE|DFLALL|WHOLEFOLD|BANG|EXTRA|NOTRLCOM|MODIFY", "parser":"parse_cmd_common"}, {"name":"source", "minlen":2, "flags":"BANG|FILE1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"spelldump", "minlen":6, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"spellgood", "minlen":3, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"spellinfo", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"spellrepall", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"spellundo", "minlen":6, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"spellwrong", "minlen":6, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}, {"name":"split", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sprevious", "minlen":3, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"srewind", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"stop", "minlen":2, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"stag", "minlen":3, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"startinsert", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"startgreplace", "minlen":6, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"startreplace", "minlen":6, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"stopinsert", "minlen":5, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"stjump", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"stselect", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"sunhide", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"sunmap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"suspend", "minlen":3, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"sview", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"swapname", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"syntax", "minlen":2, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_syntax"}, {"name":"syntime", "minlen":5, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"syncbind", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"t", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"tNext", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"tabNext", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabclose", "minlen":4, "flags":"RANGE|NOTADR|COUNT|BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tabdo", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"tabedit", "minlen":4, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabfind", "minlen":4, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|NEEDARG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabfirst", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"tablast", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabmove", "minlen":4, "flags":"RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabnew", "minlen":6, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabnext", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabonly", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tabprevious", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabrewind", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"tabs", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tab", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"tag", "minlen":2, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"tags", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tcl", "minlen":2, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_tcl"}, {"name":"tcldo", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tclfile", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tearoff", "minlen":2, "flags":"NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tfirst", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"throw", "minlen":2, "flags":"EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_throw"}, {"name":"tjump", "minlen":2, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"tlast", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"tmenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"tnext", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"topleft", "minlen":2, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"tprevious", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"trewind", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}, {"name":"try", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_try"}, {"name":"tselect", "minlen":2, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}, {"name":"tunmenu", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"undo", "minlen":1, "flags":"RANGE|NOTADR|COUNT|ZEROR|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"undojoin", "minlen":5, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"undolist", "minlen":5, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"unabbreviate", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"unhide", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"unlet", "minlen":3, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_unlet"}, {"name":"unlockvar", "minlen":4, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_unlockvar"}, {"name":"unmap", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"unmenu", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"unsilent", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"update", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}, {"name":"vglobal", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|DFLALL|CMDWIN", "parser":"parse_cmd_common"}, {"name":"version", "minlen":2, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"verbose", "minlen":4, "flags":"NEEDARG|RANGE|NOTADR|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vertical", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"vimgrep", "minlen":3, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"vimgrepadd", "minlen":8, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}, {"name":"visual", "minlen":2, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"viusage", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"view", "minlen":3, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"vmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vnew", "minlen":3, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"vnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vsplit", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"vunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"vunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"windo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}, {"name":"write", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"wNext", "minlen":2, "flags":"RANGE|WHOLEFOLD|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wall", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"while", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_while"}, {"name":"winsize", "minlen":2, "flags":"EXTRA|NEEDARG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wincmd", "minlen":4, "flags":"NEEDARG|WORD1|RANGE|NOTADR", "parser":"parse_wincmd"}, {"name":"winpos", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"wnext", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wprevious", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wq", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wqall", "minlen":3, "flags":"BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}, {"name":"wsverb", "minlen":2, "flags":"EXTRA|NOTADR|NEEDARG", "parser":"parse_cmd_common"}, {"name":"wundo", "minlen":2, "flags":"BANG|NEEDARG|FILE1", "parser":"parse_cmd_common"}, {"name":"wviminfo", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xit", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xall", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}, {"name":"xmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"xunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}, {"name":"yank", "minlen":1, "flags":"RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"z", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"!", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILES|CMDWIN", "parser":"parse_cmd_common"}, {"name":"#", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"&", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"*", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"<", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"=", "minlen":1, "flags":"RANGE|TRLBAR|DFLALL|EXFLAGS|CMDWIN", "parser":"parse_cmd_common"}, {"name":">", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"name":"@", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"Next", "minlen":1, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}, {"name":"Print", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}, {"name":"X", "minlen":1, "flags":"TRLBAR", "parser":"parse_cmd_common"}, {"name":"~", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}, {"flags":"TRLBAR", "minlen":3, "name":"cbottom", "parser":"parse_cmd_common"}, {"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"cdo", "parser":"parse_cmd_common"}, {"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"cfdo", "parser":"parse_cmd_common"}, {"flags":"TRLBAR", "minlen":3, "name":"chistory", "parser":"parse_cmd_common"}, {"flags":"TRLBAR|CMDWIN", "minlen":3, "name":"clearjumps", "parser":"parse_cmd_common"}, {"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "minlen":4, "name":"filter", "parser":"parse_cmd_common"}, {"flags":"RANGE|NOTADR|COUNT|TRLBAR", "minlen":5, "name":"helpclose", "parser":"parse_cmd_common"}, {"flags":"TRLBAR", "minlen":3, "name":"lbottom", "parser":"parse_cmd_common"}, {"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":2, "name":"ldo", "parser":"parse_cmd_common"}, {"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"lfdo", "parser":"parse_cmd_common"}, {"flags":"TRLBAR", "minlen":3, "name":"lhistory", "parser":"parse_cmd_common"}, {"flags":"BANG|EXTRA|TRLBAR|CMDWIN", "minlen":3, "name":"llist", "parser":"parse_cmd_common"}, {"flags":"NEEDARG|EXTRA|NOTRLCOM", "minlen":3, "name":"noswapfile", "parser":"parse_cmd_common"}, {"flags":"BANG|FILE1|NEEDARG|TRLBAR|SBOXOK|CMDWIN", "minlen":2, "name":"packadd", "parser":"parse_cmd_common"}, {"flags":"BANG|TRLBAR|SBOXOK|CMDWIN", "minlen":5, "name":"packloadall", "parser":"parse_cmd_common"}, {"flags":"TRLBAR|CMDWIN|SBOXOK", "minlen":3, "name":"smile", "parser":"parse_cmd_common"}, {"flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "minlen":3, "name":"pyx", "parser":"parse_cmd_common"}, {"flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "minlen":4, "name":"pyxdo", "parser":"parse_cmd_common"}, {"flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "minlen":7, "name":"pythonx", "parser":"parse_cmd_common"}, {"flags":"RANGE|FILE1|NEEDARG|CMDWIN", "minlen":4, "name":"pyxfile", "parser":"parse_cmd_common"}, {"flags":"RANGE|BANG|FILES|CMDWIN", "minlen":3, "name":"terminal", "parser":"parse_cmd_common"}, {"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":3, "name":"tmap", "parser":"parse_cmd_common"}, {"flags":"EXTRA|TRLBAR|CMDWIN", "minlen":5, "name":"tmapclear", "parser":"parse_cmd_common"}, {"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":3, "name":"tnoremap", "parser":"parse_cmd_common"}, {"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":5, "name":"tunmap", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"cabove", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"cafter", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"cbefore", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"cbelow", "parser":"parse_cmd_common"}, {"flags":"EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN", "minlen":4, "name":"const", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"labove", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"lafter", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"lbefore", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"lbelow", "parser":"parse_cmd_common"}, {"flags":"EX_TRLBAR|EX_CMDWIN", "minlen":7, "name":"redrawtabline", "parser":"parse_cmd_common"}, {"flags":"EX_WORD1|EX_TRLBAR|EX_CMDWIN", "minlen":7, "name":"scriptversion", "parser":"parse_cmd_common"}, {"flags":"EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN", "minlen":2, "name":"tcd", "parser":"parse_cmd_common"}, {"flags":"EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN", "minlen":3, "name":"tchdir", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlmenu", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlnoremenu", "parser":"parse_cmd_common"}, {"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlunmenu", "parser":"parse_cmd_common"}, {"flags":"EX_EXTRA|EX_TRLBAR|EX_CMDWIN", "minlen":2, "name":"xrestore", "parser":"parse_cmd_common"}]; +VimLParser.prototype.builtin_functions = [{"name":"abs", "min_argc":1, "max_argc":1}, {"name":"acos", "min_argc":1, "max_argc":1}, {"name":"add", "min_argc":2, "max_argc":2}, {"name":"and", "min_argc":2, "max_argc":2}, {"name":"append", "min_argc":2, "max_argc":2}, {"name":"appendbufline", "min_argc":3, "max_argc":3}, {"name":"argc", "min_argc":0, "max_argc":1}, {"name":"argidx", "min_argc":0, "max_argc":0}, {"name":"arglistid", "min_argc":0, "max_argc":2}, {"name":"argv", "min_argc":0, "max_argc":2}, {"name":"asin", "min_argc":1, "max_argc":1}, {"name":"assert_beeps", "min_argc":1, "max_argc":2}, {"name":"assert_equal", "min_argc":2, "max_argc":3}, {"name":"assert_equalfile", "min_argc":2, "max_argc":2}, {"name":"assert_exception", "min_argc":1, "max_argc":2}, {"name":"assert_fails", "min_argc":1, "max_argc":3}, {"name":"assert_false", "min_argc":1, "max_argc":2}, {"name":"assert_inrange", "min_argc":3, "max_argc":4}, {"name":"assert_match", "min_argc":2, "max_argc":3}, {"name":"assert_notequal", "min_argc":2, "max_argc":3}, {"name":"assert_notmatch", "min_argc":2, "max_argc":3}, {"name":"assert_report", "min_argc":1, "max_argc":1}, {"name":"assert_true", "min_argc":1, "max_argc":2}, {"name":"atan", "min_argc":1, "max_argc":1}, {"name":"atan2", "min_argc":2, "max_argc":2}, {"name":"balloon_gettext", "min_argc":0, "max_argc":0}, {"name":"balloon_show", "min_argc":1, "max_argc":1}, {"name":"balloon_split", "min_argc":1, "max_argc":1}, {"name":"browse", "min_argc":4, "max_argc":4}, {"name":"browsedir", "min_argc":2, "max_argc":2}, {"name":"bufadd", "min_argc":1, "max_argc":1}, {"name":"bufexists", "min_argc":1, "max_argc":1}, {"name":"buffer_exists", "min_argc":1, "max_argc":1}, {"name":"buffer_name", "min_argc":1, "max_argc":1}, {"name":"buffer_number", "min_argc":1, "max_argc":1}, {"name":"buflisted", "min_argc":1, "max_argc":1}, {"name":"bufload", "min_argc":1, "max_argc":1}, {"name":"bufloaded", "min_argc":1, "max_argc":1}, {"name":"bufname", "min_argc":1, "max_argc":1}, {"name":"bufnr", "min_argc":1, "max_argc":2}, {"name":"bufwinid", "min_argc":1, "max_argc":1}, {"name":"bufwinnr", "min_argc":1, "max_argc":1}, {"name":"byte2line", "min_argc":1, "max_argc":1}, {"name":"byteidx", "min_argc":2, "max_argc":2}, {"name":"byteidxcomp", "min_argc":2, "max_argc":2}, {"name":"call", "min_argc":2, "max_argc":3}, {"name":"ceil", "min_argc":1, "max_argc":1}, {"name":"ch_canread", "min_argc":1, "max_argc":1}, {"name":"ch_close", "min_argc":1, "max_argc":1}, {"name":"ch_close_in", "min_argc":1, "max_argc":1}, {"name":"ch_evalexpr", "min_argc":2, "max_argc":3}, {"name":"ch_evalraw", "min_argc":2, "max_argc":3}, {"name":"ch_getbufnr", "min_argc":2, "max_argc":2}, {"name":"ch_getjob", "min_argc":1, "max_argc":1}, {"name":"ch_info", "min_argc":1, "max_argc":1}, {"name":"ch_log", "min_argc":1, "max_argc":2}, {"name":"ch_logfile", "min_argc":1, "max_argc":2}, {"name":"ch_open", "min_argc":1, "max_argc":2}, {"name":"ch_read", "min_argc":1, "max_argc":2}, {"name":"ch_readblob", "min_argc":1, "max_argc":2}, {"name":"ch_readraw", "min_argc":1, "max_argc":2}, {"name":"ch_sendexpr", "min_argc":2, "max_argc":3}, {"name":"ch_sendraw", "min_argc":2, "max_argc":3}, {"name":"ch_setoptions", "min_argc":2, "max_argc":2}, {"name":"ch_status", "min_argc":1, "max_argc":2}, {"name":"changenr", "min_argc":0, "max_argc":0}, {"name":"char2nr", "min_argc":1, "max_argc":2}, {"name":"chdir", "min_argc":1, "max_argc":1}, {"name":"cindent", "min_argc":1, "max_argc":1}, {"name":"clearmatches", "min_argc":0, "max_argc":1}, {"name":"col", "min_argc":1, "max_argc":1}, {"name":"complete", "min_argc":2, "max_argc":2}, {"name":"complete_add", "min_argc":1, "max_argc":1}, {"name":"complete_check", "min_argc":0, "max_argc":0}, {"name":"complete_info", "min_argc":0, "max_argc":1}, {"name":"confirm", "min_argc":1, "max_argc":4}, {"name":"copy", "min_argc":1, "max_argc":1}, {"name":"cos", "min_argc":1, "max_argc":1}, {"name":"cosh", "min_argc":1, "max_argc":1}, {"name":"count", "min_argc":2, "max_argc":4}, {"name":"cscope_connection", "min_argc":0, "max_argc":3}, {"name":"cursor", "min_argc":1, "max_argc":3}, {"name":"debugbreak", "min_argc":1, "max_argc":1}, {"name":"deepcopy", "min_argc":1, "max_argc":2}, {"name":"delete", "min_argc":1, "max_argc":2}, {"name":"deletebufline", "min_argc":2, "max_argc":3}, {"name":"did_filetype", "min_argc":0, "max_argc":0}, {"name":"diff_filler", "min_argc":1, "max_argc":1}, {"name":"diff_hlID", "min_argc":2, "max_argc":2}, {"name":"empty", "min_argc":1, "max_argc":1}, {"name":"environ", "min_argc":0, "max_argc":0}, {"name":"escape", "min_argc":2, "max_argc":2}, {"name":"eval", "min_argc":1, "max_argc":1}, {"name":"eventhandler", "min_argc":0, "max_argc":0}, {"name":"executable", "min_argc":1, "max_argc":1}, {"name":"execute", "min_argc":1, "max_argc":2}, {"name":"exepath", "min_argc":1, "max_argc":1}, {"name":"exists", "min_argc":1, "max_argc":1}, {"name":"exp", "min_argc":1, "max_argc":1}, {"name":"expand", "min_argc":1, "max_argc":3}, {"name":"expandcmd", "min_argc":1, "max_argc":1}, {"name":"extend", "min_argc":2, "max_argc":3}, {"name":"feedkeys", "min_argc":1, "max_argc":2}, {"name":"file_readable", "min_argc":1, "max_argc":1}, {"name":"filereadable", "min_argc":1, "max_argc":1}, {"name":"filewritable", "min_argc":1, "max_argc":1}, {"name":"filter", "min_argc":2, "max_argc":2}, {"name":"finddir", "min_argc":1, "max_argc":3}, {"name":"findfile", "min_argc":1, "max_argc":3}, {"name":"float2nr", "min_argc":1, "max_argc":1}, {"name":"floor", "min_argc":1, "max_argc":1}, {"name":"fmod", "min_argc":2, "max_argc":2}, {"name":"fnameescape", "min_argc":1, "max_argc":1}, {"name":"fnamemodify", "min_argc":2, "max_argc":2}, {"name":"foldclosed", "min_argc":1, "max_argc":1}, {"name":"foldclosedend", "min_argc":1, "max_argc":1}, {"name":"foldlevel", "min_argc":1, "max_argc":1}, {"name":"foldtext", "min_argc":0, "max_argc":0}, {"name":"foldtextresult", "min_argc":1, "max_argc":1}, {"name":"foreground", "min_argc":0, "max_argc":0}, {"name":"funcref", "min_argc":1, "max_argc":3}, {"name":"function", "min_argc":1, "max_argc":3}, {"name":"garbagecollect", "min_argc":0, "max_argc":1}, {"name":"get", "min_argc":2, "max_argc":3}, {"name":"get_lazy", "min_argc":2, "max_argc":3}, {"name":"getbufinfo", "min_argc":0, "max_argc":1}, {"name":"getbufline", "min_argc":2, "max_argc":3}, {"name":"getbufvar", "min_argc":2, "max_argc":3}, {"name":"getchangelist", "min_argc":1, "max_argc":1}, {"name":"getchar", "min_argc":0, "max_argc":1}, {"name":"getcharmod", "min_argc":0, "max_argc":0}, {"name":"getcharsearch", "min_argc":0, "max_argc":0}, {"name":"getcmdline", "min_argc":0, "max_argc":0}, {"name":"getcmdpos", "min_argc":0, "max_argc":0}, {"name":"getcmdtype", "min_argc":0, "max_argc":0}, {"name":"getcmdwintype", "min_argc":0, "max_argc":0}, {"name":"getcompletion", "min_argc":2, "max_argc":3}, {"name":"getcurpos", "min_argc":0, "max_argc":0}, {"name":"getcwd", "min_argc":0, "max_argc":2}, {"name":"getenv", "min_argc":1, "max_argc":1}, {"name":"getfontname", "min_argc":0, "max_argc":1}, {"name":"getfperm", "min_argc":1, "max_argc":1}, {"name":"getfsize", "min_argc":1, "max_argc":1}, {"name":"getftime", "min_argc":1, "max_argc":1}, {"name":"getftype", "min_argc":1, "max_argc":1}, {"name":"getjumplist", "min_argc":0, "max_argc":2}, {"name":"getline", "min_argc":1, "max_argc":2}, {"name":"getloclist", "min_argc":1, "max_argc":2}, {"name":"getmatches", "min_argc":0, "max_argc":1}, {"name":"getpid", "min_argc":0, "max_argc":0}, {"name":"getpos", "min_argc":1, "max_argc":1}, {"name":"getqflist", "min_argc":0, "max_argc":1}, {"name":"getreg", "min_argc":0, "max_argc":3}, {"name":"getregtype", "min_argc":0, "max_argc":1}, {"name":"gettabinfo", "min_argc":0, "max_argc":1}, {"name":"gettabvar", "min_argc":2, "max_argc":3}, {"name":"gettabwinvar", "min_argc":3, "max_argc":4}, {"name":"gettagstack", "min_argc":0, "max_argc":1}, {"name":"getwininfo", "min_argc":0, "max_argc":1}, {"name":"getwinpos", "min_argc":0, "max_argc":1}, {"name":"getwinposx", "min_argc":0, "max_argc":0}, {"name":"getwinposy", "min_argc":0, "max_argc":0}, {"name":"getwinvar", "min_argc":2, "max_argc":3}, {"name":"glob", "min_argc":1, "max_argc":4}, {"name":"glob2regpat", "min_argc":1, "max_argc":1}, {"name":"globpath", "min_argc":2, "max_argc":5}, {"name":"has", "min_argc":1, "max_argc":1}, {"name":"has_key", "min_argc":2, "max_argc":2}, {"name":"haslocaldir", "min_argc":0, "max_argc":2}, {"name":"hasmapto", "min_argc":1, "max_argc":3}, {"name":"highlightID", "min_argc":1, "max_argc":1}, {"name":"highlight_exists", "min_argc":1, "max_argc":1}, {"name":"histadd", "min_argc":2, "max_argc":2}, {"name":"histdel", "min_argc":1, "max_argc":2}, {"name":"histget", "min_argc":1, "max_argc":2}, {"name":"histnr", "min_argc":1, "max_argc":1}, {"name":"hlID", "min_argc":1, "max_argc":1}, {"name":"hlexists", "min_argc":1, "max_argc":1}, {"name":"hostname", "min_argc":0, "max_argc":0}, {"name":"iconv", "min_argc":3, "max_argc":3}, {"name":"indent", "min_argc":1, "max_argc":1}, {"name":"index", "min_argc":2, "max_argc":4}, {"name":"input", "min_argc":1, "max_argc":3}, {"name":"inputdialog", "min_argc":1, "max_argc":3}, {"name":"inputlist", "min_argc":1, "max_argc":1}, {"name":"inputrestore", "min_argc":0, "max_argc":0}, {"name":"inputsave", "min_argc":0, "max_argc":0}, {"name":"inputsecret", "min_argc":1, "max_argc":2}, {"name":"insert", "min_argc":2, "max_argc":3}, {"name":"invert", "min_argc":1, "max_argc":1}, {"name":"isdirectory", "min_argc":1, "max_argc":1}, {"name":"isinf", "min_argc":1, "max_argc":1}, {"name":"islocked", "min_argc":1, "max_argc":1}, {"name":"isnan", "min_argc":1, "max_argc":1}, {"name":"items", "min_argc":1, "max_argc":1}, {"name":"job_getchannel", "min_argc":1, "max_argc":1}, {"name":"job_info", "min_argc":0, "max_argc":1}, {"name":"job_setoptions", "min_argc":2, "max_argc":2}, {"name":"job_start", "min_argc":1, "max_argc":2}, {"name":"job_status", "min_argc":1, "max_argc":1}, {"name":"job_stop", "min_argc":1, "max_argc":2}, {"name":"join", "min_argc":1, "max_argc":2}, {"name":"js_decode", "min_argc":1, "max_argc":1}, {"name":"js_encode", "min_argc":1, "max_argc":1}, {"name":"json_decode", "min_argc":1, "max_argc":1}, {"name":"json_encode", "min_argc":1, "max_argc":1}, {"name":"keys", "min_argc":1, "max_argc":1}, {"name":"last_buffer_nr", "min_argc":0, "max_argc":0}, {"name":"len", "min_argc":1, "max_argc":1}, {"name":"libcall", "min_argc":3, "max_argc":3}, {"name":"libcallnr", "min_argc":3, "max_argc":3}, {"name":"line", "min_argc":1, "max_argc":1}, {"name":"line2byte", "min_argc":1, "max_argc":1}, {"name":"lispindent", "min_argc":1, "max_argc":1}, {"name":"list2str", "min_argc":1, "max_argc":2}, {"name":"listener_add", "min_argc":1, "max_argc":2}, {"name":"listener_flush", "min_argc":0, "max_argc":1}, {"name":"listener_remove", "min_argc":1, "max_argc":1}, {"name":"localtime", "min_argc":0, "max_argc":0}, {"name":"log", "min_argc":1, "max_argc":1}, {"name":"log10", "min_argc":1, "max_argc":1}, {"name":"luaeval", "min_argc":1, "max_argc":2}, {"name":"map", "min_argc":2, "max_argc":2}, {"name":"maparg", "min_argc":1, "max_argc":4}, {"name":"mapcheck", "min_argc":1, "max_argc":3}, {"name":"match", "min_argc":2, "max_argc":4}, {"name":"matchadd", "min_argc":2, "max_argc":5}, {"name":"matchaddpos", "min_argc":2, "max_argc":5}, {"name":"matcharg", "min_argc":1, "max_argc":1}, {"name":"matchdelete", "min_argc":1, "max_argc":2}, {"name":"matchend", "min_argc":2, "max_argc":4}, {"name":"matchlist", "min_argc":2, "max_argc":4}, {"name":"matchstr", "min_argc":2, "max_argc":4}, {"name":"matchstrpos", "min_argc":2, "max_argc":4}, {"name":"max", "min_argc":1, "max_argc":1}, {"name":"min", "min_argc":1, "max_argc":1}, {"name":"mkdir", "min_argc":1, "max_argc":3}, {"name":"mode", "min_argc":0, "max_argc":1}, {"name":"mzeval", "min_argc":1, "max_argc":1}, {"name":"nextnonblank", "min_argc":1, "max_argc":1}, {"name":"nr2char", "min_argc":1, "max_argc":2}, {"name":"or", "min_argc":2, "max_argc":2}, {"name":"pathshorten", "min_argc":1, "max_argc":1}, {"name":"perleval", "min_argc":1, "max_argc":1}, {"name":"popup_atcursor", "min_argc":2, "max_argc":2}, {"name":"popup_beval", "min_argc":2, "max_argc":2}, {"name":"popup_clear", "min_argc":0, "max_argc":0}, {"name":"popup_close", "min_argc":1, "max_argc":2}, {"name":"popup_create", "min_argc":2, "max_argc":2}, {"name":"popup_dialog", "min_argc":2, "max_argc":2}, {"name":"popup_filter_menu", "min_argc":2, "max_argc":2}, {"name":"popup_filter_yesno", "min_argc":2, "max_argc":2}, {"name":"popup_getoptions", "min_argc":1, "max_argc":1}, {"name":"popup_getpos", "min_argc":1, "max_argc":1}, {"name":"popup_hide", "min_argc":1, "max_argc":1}, {"name":"popup_locate", "min_argc":2, "max_argc":2}, {"name":"popup_menu", "min_argc":2, "max_argc":2}, {"name":"popup_move", "min_argc":2, "max_argc":2}, {"name":"popup_notification", "min_argc":2, "max_argc":2}, {"name":"popup_setoptions", "min_argc":2, "max_argc":2}, {"name":"popup_settext", "min_argc":2, "max_argc":2}, {"name":"popup_show", "min_argc":1, "max_argc":1}, {"name":"pow", "min_argc":2, "max_argc":2}, {"name":"prevnonblank", "min_argc":1, "max_argc":1}, {"name":"printf", "min_argc":1, "max_argc":19}, {"name":"prompt_setcallback", "min_argc":2, "max_argc":2}, {"name":"prompt_setinterrupt", "min_argc":2, "max_argc":2}, {"name":"prompt_setprompt", "min_argc":2, "max_argc":2}, {"name":"prop_add", "min_argc":3, "max_argc":3}, {"name":"prop_clear", "min_argc":1, "max_argc":3}, {"name":"prop_list", "min_argc":1, "max_argc":2}, {"name":"prop_remove", "min_argc":1, "max_argc":3}, {"name":"prop_type_add", "min_argc":2, "max_argc":2}, {"name":"prop_type_change", "min_argc":2, "max_argc":2}, {"name":"prop_type_delete", "min_argc":1, "max_argc":2}, {"name":"prop_type_get", "min_argc":1, "max_argc":2}, {"name":"prop_type_list", "min_argc":0, "max_argc":1}, {"name":"pumvisible", "min_argc":0, "max_argc":0}, {"name":"py3eval", "min_argc":1, "max_argc":1}, {"name":"pyeval", "min_argc":1, "max_argc":1}, {"name":"pyxeval", "min_argc":1, "max_argc":1}, {"name":"range", "min_argc":1, "max_argc":3}, {"name":"readdir", "min_argc":1, "max_argc":2}, {"name":"readfile", "min_argc":1, "max_argc":3}, {"name":"reg_executing", "min_argc":0, "max_argc":0}, {"name":"reg_recording", "min_argc":0, "max_argc":0}, {"name":"reltime", "min_argc":0, "max_argc":2}, {"name":"reltimefloat", "min_argc":1, "max_argc":1}, {"name":"reltimestr", "min_argc":1, "max_argc":1}, {"name":"remote_expr", "min_argc":2, "max_argc":4}, {"name":"remote_foreground", "min_argc":1, "max_argc":1}, {"name":"remote_peek", "min_argc":1, "max_argc":2}, {"name":"remote_read", "min_argc":1, "max_argc":2}, {"name":"remote_send", "min_argc":2, "max_argc":3}, {"name":"remote_startserver", "min_argc":1, "max_argc":1}, {"name":"remove", "min_argc":2, "max_argc":3}, {"name":"rename", "min_argc":2, "max_argc":2}, {"name":"repeat", "min_argc":2, "max_argc":2}, {"name":"resolve", "min_argc":1, "max_argc":1}, {"name":"reverse", "min_argc":1, "max_argc":1}, {"name":"round", "min_argc":1, "max_argc":1}, {"name":"rubyeval", "min_argc":1, "max_argc":1}, {"name":"screenattr", "min_argc":2, "max_argc":2}, {"name":"screenchar", "min_argc":2, "max_argc":2}, {"name":"screenchars", "min_argc":2, "max_argc":2}, {"name":"screencol", "min_argc":0, "max_argc":0}, {"name":"screenpos", "min_argc":3, "max_argc":3}, {"name":"screenrow", "min_argc":0, "max_argc":0}, {"name":"screenstring", "min_argc":2, "max_argc":2}, {"name":"search", "min_argc":1, "max_argc":4}, {"name":"searchdecl", "min_argc":1, "max_argc":3}, {"name":"searchpair", "min_argc":3, "max_argc":7}, {"name":"searchpairpos", "min_argc":3, "max_argc":7}, {"name":"searchpos", "min_argc":1, "max_argc":4}, {"name":"server2client", "min_argc":2, "max_argc":2}, {"name":"serverlist", "min_argc":0, "max_argc":0}, {"name":"setbufline", "min_argc":3, "max_argc":3}, {"name":"setbufvar", "min_argc":3, "max_argc":3}, {"name":"setcharsearch", "min_argc":1, "max_argc":1}, {"name":"setcmdpos", "min_argc":1, "max_argc":1}, {"name":"setenv", "min_argc":2, "max_argc":2}, {"name":"setfperm", "min_argc":2, "max_argc":2}, {"name":"setline", "min_argc":2, "max_argc":2}, {"name":"setloclist", "min_argc":2, "max_argc":4}, {"name":"setmatches", "min_argc":1, "max_argc":2}, {"name":"setpos", "min_argc":2, "max_argc":2}, {"name":"setqflist", "min_argc":1, "max_argc":3}, {"name":"setreg", "min_argc":2, "max_argc":3}, {"name":"settabvar", "min_argc":3, "max_argc":3}, {"name":"settabwinvar", "min_argc":4, "max_argc":4}, {"name":"settagstack", "min_argc":2, "max_argc":3}, {"name":"setwinvar", "min_argc":3, "max_argc":3}, {"name":"sha256", "min_argc":1, "max_argc":1}, {"name":"shellescape", "min_argc":1, "max_argc":2}, {"name":"shiftwidth", "min_argc":0, "max_argc":1}, {"name":"sign_define", "min_argc":1, "max_argc":2}, {"name":"sign_getdefined", "min_argc":0, "max_argc":1}, {"name":"sign_getplaced", "min_argc":0, "max_argc":2}, {"name":"sign_jump", "min_argc":3, "max_argc":3}, {"name":"sign_place", "min_argc":4, "max_argc":5}, {"name":"sign_placelist", "min_argc":1, "max_argc":1}, {"name":"sign_undefine", "min_argc":0, "max_argc":1}, {"name":"sign_unplace", "min_argc":1, "max_argc":2}, {"name":"sign_unplacelist", "min_argc":1, "max_argc":2}, {"name":"simplify", "min_argc":1, "max_argc":1}, {"name":"sin", "min_argc":1, "max_argc":1}, {"name":"sinh", "min_argc":1, "max_argc":1}, {"name":"sort", "min_argc":1, "max_argc":3}, {"name":"sound_clear", "min_argc":0, "max_argc":0}, {"name":"sound_playevent", "min_argc":1, "max_argc":2}, {"name":"sound_playfile", "min_argc":1, "max_argc":2}, {"name":"sound_stop", "min_argc":1, "max_argc":1}, {"name":"soundfold", "min_argc":1, "max_argc":1}, {"name":"spellbadword", "min_argc":0, "max_argc":1}, {"name":"spellsuggest", "min_argc":1, "max_argc":3}, {"name":"split", "min_argc":1, "max_argc":3}, {"name":"sqrt", "min_argc":1, "max_argc":1}, {"name":"str2float", "min_argc":1, "max_argc":1}, {"name":"str2list", "min_argc":1, "max_argc":2}, {"name":"str2nr", "min_argc":1, "max_argc":2}, {"name":"strcharpart", "min_argc":2, "max_argc":3}, {"name":"strchars", "min_argc":1, "max_argc":2}, {"name":"strdisplaywidth", "min_argc":1, "max_argc":2}, {"name":"strftime", "min_argc":1, "max_argc":2}, {"name":"strgetchar", "min_argc":2, "max_argc":2}, {"name":"stridx", "min_argc":2, "max_argc":3}, {"name":"string", "min_argc":1, "max_argc":1}, {"name":"strlen", "min_argc":1, "max_argc":1}, {"name":"strpart", "min_argc":2, "max_argc":3}, {"name":"strridx", "min_argc":2, "max_argc":3}, {"name":"strtrans", "min_argc":1, "max_argc":1}, {"name":"strwidth", "min_argc":1, "max_argc":1}, {"name":"submatch", "min_argc":1, "max_argc":2}, {"name":"substitute", "min_argc":4, "max_argc":4}, {"name":"swapinfo", "min_argc":1, "max_argc":1}, {"name":"swapname", "min_argc":1, "max_argc":1}, {"name":"synID", "min_argc":3, "max_argc":3}, {"name":"synIDattr", "min_argc":2, "max_argc":3}, {"name":"synIDtrans", "min_argc":1, "max_argc":1}, {"name":"synconcealed", "min_argc":2, "max_argc":2}, {"name":"synstack", "min_argc":2, "max_argc":2}, {"name":"system", "min_argc":1, "max_argc":2}, {"name":"systemlist", "min_argc":1, "max_argc":2}, {"name":"tabpagebuflist", "min_argc":0, "max_argc":1}, {"name":"tabpagenr", "min_argc":0, "max_argc":1}, {"name":"tabpagewinnr", "min_argc":1, "max_argc":2}, {"name":"tagfiles", "min_argc":0, "max_argc":0}, {"name":"taglist", "min_argc":1, "max_argc":2}, {"name":"tan", "min_argc":1, "max_argc":1}, {"name":"tanh", "min_argc":1, "max_argc":1}, {"name":"tempname", "min_argc":0, "max_argc":0}, {"name":"term_dumpdiff", "min_argc":2, "max_argc":3}, {"name":"term_dumpload", "min_argc":1, "max_argc":2}, {"name":"term_dumpwrite", "min_argc":2, "max_argc":3}, {"name":"term_getaltscreen", "min_argc":1, "max_argc":1}, {"name":"term_getansicolors", "min_argc":1, "max_argc":1}, {"name":"term_getattr", "min_argc":2, "max_argc":2}, {"name":"term_getcursor", "min_argc":1, "max_argc":1}, {"name":"term_getjob", "min_argc":1, "max_argc":1}, {"name":"term_getline", "min_argc":2, "max_argc":2}, {"name":"term_getscrolled", "min_argc":1, "max_argc":1}, {"name":"term_getsize", "min_argc":1, "max_argc":1}, {"name":"term_getstatus", "min_argc":1, "max_argc":1}, {"name":"term_gettitle", "min_argc":1, "max_argc":1}, {"name":"term_gettty", "min_argc":1, "max_argc":2}, {"name":"term_list", "min_argc":0, "max_argc":0}, {"name":"term_scrape", "min_argc":2, "max_argc":2}, {"name":"term_sendkeys", "min_argc":2, "max_argc":2}, {"name":"term_setansicolors", "min_argc":2, "max_argc":2}, {"name":"term_setkill", "min_argc":2, "max_argc":2}, {"name":"term_setrestore", "min_argc":2, "max_argc":2}, {"name":"term_setsize", "min_argc":3, "max_argc":3}, {"name":"term_start", "min_argc":1, "max_argc":2}, {"name":"term_wait", "min_argc":1, "max_argc":2}, {"name":"test_alloc_fail", "min_argc":3, "max_argc":3}, {"name":"test_autochdir", "min_argc":0, "max_argc":0}, {"name":"test_feedinput", "min_argc":1, "max_argc":1}, {"name":"test_garbagecollect_now", "min_argc":0, "max_argc":0}, {"name":"test_garbagecollect_soon", "min_argc":0, "max_argc":0}, {"name":"test_getvalue", "min_argc":1, "max_argc":1}, {"name":"test_ignore_error", "min_argc":1, "max_argc":1}, {"name":"test_null_blob", "min_argc":0, "max_argc":0}, {"name":"test_null_channel", "min_argc":0, "max_argc":0}, {"name":"test_null_dict", "min_argc":0, "max_argc":0}, {"name":"test_null_job", "min_argc":0, "max_argc":0}, {"name":"test_null_list", "min_argc":0, "max_argc":0}, {"name":"test_null_partial", "min_argc":0, "max_argc":0}, {"name":"test_null_string", "min_argc":0, "max_argc":0}, {"name":"test_option_not_set", "min_argc":1, "max_argc":1}, {"name":"test_override", "min_argc":2, "max_argc":2}, {"name":"test_refcount", "min_argc":1, "max_argc":1}, {"name":"test_scrollbar", "min_argc":3, "max_argc":3}, {"name":"test_setmouse", "min_argc":2, "max_argc":2}, {"name":"test_settime", "min_argc":1, "max_argc":1}, {"name":"timer_info", "min_argc":0, "max_argc":1}, {"name":"timer_pause", "min_argc":2, "max_argc":2}, {"name":"timer_start", "min_argc":2, "max_argc":3}, {"name":"timer_stop", "min_argc":1, "max_argc":1}, {"name":"timer_stopall", "min_argc":0, "max_argc":0}, {"name":"tolower", "min_argc":1, "max_argc":1}, {"name":"toupper", "min_argc":1, "max_argc":1}, {"name":"tr", "min_argc":3, "max_argc":3}, {"name":"trim", "min_argc":1, "max_argc":2}, {"name":"trunc", "min_argc":1, "max_argc":1}, {"name":"type", "min_argc":1, "max_argc":1}, {"name":"undofile", "min_argc":1, "max_argc":1}, {"name":"undotree", "min_argc":0, "max_argc":0}, {"name":"uniq", "min_argc":1, "max_argc":3}, {"name":"values", "min_argc":1, "max_argc":1}, {"name":"virtcol", "min_argc":1, "max_argc":1}, {"name":"visualmode", "min_argc":0, "max_argc":1}, {"name":"wildmenumode", "min_argc":0, "max_argc":0}, {"name":"win_execute", "min_argc":2, "max_argc":3}, {"name":"win_findbuf", "min_argc":1, "max_argc":1}, {"name":"win_getid", "min_argc":0, "max_argc":2}, {"name":"win_gotoid", "min_argc":1, "max_argc":1}, {"name":"win_id2tabwin", "min_argc":1, "max_argc":1}, {"name":"win_id2win", "min_argc":1, "max_argc":1}, {"name":"win_screenpos", "min_argc":1, "max_argc":1}, {"name":"winbufnr", "min_argc":1, "max_argc":1}, {"name":"wincol", "min_argc":0, "max_argc":0}, {"name":"winheight", "min_argc":1, "max_argc":1}, {"name":"winlayout", "min_argc":0, "max_argc":1}, {"name":"winline", "min_argc":0, "max_argc":0}, {"name":"winnr", "min_argc":0, "max_argc":1}, {"name":"winrestcmd", "min_argc":0, "max_argc":0}, {"name":"winrestview", "min_argc":1, "max_argc":1}, {"name":"winsaveview", "min_argc":0, "max_argc":0}, {"name":"winwidth", "min_argc":1, "max_argc":1}, {"name":"wordcount", "min_argc":0, "max_argc":0}, {"name":"writefile", "min_argc":2, "max_argc":3}, {"name":"xor", "min_argc":2, "max_argc":2}]; function ExprTokenizer() { this.__init__.apply(this, arguments); } ExprTokenizer.prototype.__init__ = function(reader) { this.reader = reader; diff --git a/py/pycompiler.vim b/py/pycompiler.vim index 2d5f4c5f..909a7b25 100644 --- a/py/pycompiler.vim +++ b/py/pycompiler.vim @@ -822,7 +822,8 @@ function s:PythonCompiler.compile_op2(node, op) return printf('%s %s %s', left, a:op, right) endfunction -let s:viml_builtin_functions = ['abs', 'acos', 'add', 'and', 'append', 'append', 'argc', 'argidx', 'argv', 'argv', 'asin', 'atan', 'atan2', 'browse', 'browsedir', 'bufexists', 'buflisted', 'bufloaded', 'bufname', 'bufnr', 'bufwinnr', 'byte2line', 'byteidx', 'call', 'ceil', 'changenr', 'char2nr', 'cindent', 'clearmatches', 'col', 'complete', 'complete_add', 'complete_check', 'confirm', 'copy', 'cos', 'cosh', 'count', 'cscope_connection', 'cursor', 'cursor', 'deepcopy', 'delete', 'did_filetype', 'diff_filler', 'diff_hlID', 'empty', 'escape', 'eval', 'eventhandler', 'executable', 'exists', 'extend', 'exp', 'expand', 'feedkeys', 'filereadable', 'filewritable', 'filter', 'finddir', 'findfile', 'float2nr', 'floor', 'fmod', 'fnameescape', 'fnamemodify', 'foldclosed', 'foldclosedend', 'foldlevel', 'foldtext', 'foldtextresult', 'foreground', 'function', 'garbagecollect', 'get', 'get', 'getbufline', 'getbufvar', 'getchar', 'getcharmod', 'getcmdline', 'getcmdpos', 'getcmdtype', 'getcwd', 'getfperm', 'getfsize', 'getfontname', 'getftime', 'getftype', 'getline', 'getline', 'getloclist', 'getmatches', 'getpid', 'getpos', 'getqflist', 'getreg', 'getregtype', 'gettabvar', 'gettabwinvar', 'getwinposx', 'getwinposy', 'getwinvar', 'glob', 'globpath', 'has', 'has_key', 'haslocaldir', 'hasmapto', 'histadd', 'histdel', 'histget', 'histnr', 'hlexists', 'hlID', 'hostname', 'iconv', 'indent', 'index', 'input', 'inputdialog', 'inputlist', 'inputrestore', 'inputsave', 'inputsecret', 'insert', 'invert', 'isdirectory', 'islocked', 'items', 'join', 'keys', 'len', 'libcall', 'libcallnr', 'line', 'line2byte', 'lispindent', 'localtime', 'log', 'log10', 'luaeval', 'map', 'maparg', 'mapcheck', 'match', 'matchadd', 'matcharg', 'matchdelete', 'matchend', 'matchlist', 'matchstr', 'max', 'min', 'mkdir', 'mode', 'mzeval', 'nextnonblank', 'nr2char', 'or', 'pathshorten', 'pow', 'prevnonblank', 'printf', 'pumvisible', 'pyeval', 'py3eval', 'range', 'readfile', 'reltime', 'reltimestr', 'remote_expr', 'remote_foreground', 'remote_peek', 'remote_read', 'remote_send', 'remove', 'remove', 'rename', 'repeat', 'resolve', 'reverse', 'round', 'screencol', 'screenrow', 'search', 'searchdecl', 'searchpair', 'searchpairpos', 'searchpos', 'server2client', 'serverlist', 'setbufvar', 'setcmdpos', 'setline', 'setloclist', 'setmatches', 'setpos', 'setqflist', 'setreg', 'settabvar', 'settabwinvar', 'setwinvar', 'sha256', 'shellescape', 'shiftwidth', 'simplify', 'sin', 'sinh', 'sort', 'soundfold', 'spellbadword', 'spellsuggest', 'split', 'sqrt', 'str2float', 'str2nr', 'strchars', 'strdisplaywidth', 'strftime', 'stridx', 'string', 'strlen', 'strpart', 'strridx', 'strtrans', 'strwidth', 'submatch', 'substitute', 'synID', 'synIDattr', 'synIDtrans', 'synconcealed', 'synstack', 'system', 'tabpagebuflist', 'tabpagenr', 'tabpagewinnr', 'taglist', 'tagfiles', 'tempname', 'tan', 'tanh', 'tolower', 'toupper', 'tr', 'trunc', 'type', 'undofile', 'undotree', 'values', 'virtcol', 'visualmode', 'wildmenumode', 'winbufnr', 'wincol', 'winheight', 'winline', 'winnr', 'winrestcmd', 'winrestview', 'winsaveview', 'winwidth', 'writefile', 'xor'] + +let s:viml_builtin_functions = map(copy(s:VimLParser.builtin_functions), 'v:val.name') let s:script_dir = expand(':h') function! s:convert(in, out) diff --git a/py/vimlparser.py b/py/vimlparser.py index 171ab863..d29fe745 100644 --- a/py/vimlparser.py +++ b/py/vimlparser.py @@ -1809,6 +1809,7 @@ def parse_cmd_syntax(self): # To find new builtin_commands, run the below script. # $ scripts/update_builtin_commands.sh /path/to/vim/src/ex_cmds.h builtin_commands = [AttributeDict({"name":"append", "minlen":1, "flags":"BANG|RANGE|ZEROR|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_append"}), AttributeDict({"name":"abbreviate", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"abclear", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"aboveleft", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"all", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"amenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"anoremenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"args", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"argadd", "minlen":4, "flags":"BANG|NEEDARG|RANGE|NOTADR|ZEROR|FILES|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"argdelete", "minlen":4, "flags":"BANG|RANGE|NOTADR|FILES|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"argedit", "minlen":4, "flags":"BANG|NEEDARG|RANGE|NOTADR|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"argdo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"argglobal", "minlen":4, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"arglocal", "minlen":4, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"argument", "minlen":4, "flags":"BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ascii", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"autocmd", "minlen":2, "flags":"BANG|EXTRA|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"augroup", "minlen":3, "flags":"BANG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"aunmenu", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"buffer", "minlen":1, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"bNext", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ball", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"badd", "minlen":3, "flags":"NEEDARG|FILE1|EDITCMD|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"bdelete", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"behave", "minlen":2, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"belowright", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"bfirst", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"blast", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"bmodified", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"bnext", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"botright", "minlen":2, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"bprevious", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"brewind", "minlen":2, "flags":"BANG|RANGE|NOTADR|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"break", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_break"}), AttributeDict({"name":"breakadd", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"breakdel", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"breaklist", "minlen":6, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"browse", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"bufdo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"buffers", "minlen":7, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"bunload", "minlen":3, "flags":"BANG|RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"bwipeout", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"change", "minlen":1, "flags":"BANG|WHOLEFOLD|RANGE|COUNT|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"cNext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cNfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cabbrev", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cabclear", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"caddbuffer", "minlen":3, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"caddexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"caddfile", "minlen":5, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"call", "minlen":3, "flags":"RANGE|NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_call"}), AttributeDict({"name":"catch", "minlen":3, "flags":"EXTRA|SBOXOK|CMDWIN", "parser":"parse_cmd_catch"}), AttributeDict({"name":"cbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cc", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cclose", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cd", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"center", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"cexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cfile", "minlen":2, "flags":"TRLBAR|FILE1|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cfirst", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cgetbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cgetexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cgetfile", "minlen":2, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"changes", "minlen":7, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"chdir", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"checkpath", "minlen":3, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"checktime", "minlen":6, "flags":"RANGE|NOTADR|BUFNAME|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"clist", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"clast", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"close", "minlen":3, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnewer", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnoreabbrev", "minlen":6, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"copy", "minlen":2, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"colder", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"colorscheme", "minlen":4, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"command", "minlen":3, "flags":"EXTRA|BANG|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"comclear", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"compiler", "minlen":4, "flags":"BANG|TRLBAR|WORD1|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"continue", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_continue"}), AttributeDict({"name":"confirm", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"copen", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"cprevious", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cpfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cquit", "minlen":2, "flags":"TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"crewind", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"cscope", "minlen":2, "flags":"EXTRA|NOTRLCOM|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"cstag", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"cunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cunabbrev", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"cwindow", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"delete", "minlen":1, "flags":"RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"delmarks", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"debug", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"debuggreedy", "minlen":6, "flags":"RANGE|NOTADR|ZEROR|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"delcommand", "minlen":4, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"delfunction", "minlen":4, "flags":"BANG|NEEDARG|WORD1|CMDWIN", "parser":"parse_cmd_delfunction"}), AttributeDict({"name":"diffupdate", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffget", "minlen":5, "flags":"RANGE|EXTRA|TRLBAR|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffoff", "minlen":5, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffpatch", "minlen":5, "flags":"EXTRA|FILE1|TRLBAR|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffput", "minlen":6, "flags":"RANGE|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffsplit", "minlen":5, "flags":"EXTRA|FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"diffthis", "minlen":5, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"digraphs", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"display", "minlen":2, "flags":"EXTRA|NOTRLCOM|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"djump", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"dlist", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"doautocmd", "minlen":2, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"doautoall", "minlen":7, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"drop", "minlen":2, "flags":"FILES|EDITCMD|NEEDARG|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"dsearch", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"dsplit", "minlen":3, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"edit", "minlen":1, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"earlier", "minlen":2, "flags":"TRLBAR|EXTRA|NOSPC|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"echo", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echo"}), AttributeDict({"name":"echoerr", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echoerr"}), AttributeDict({"name":"echohl", "minlen":5, "flags":"EXTRA|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_echohl"}), AttributeDict({"name":"echomsg", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echomsg"}), AttributeDict({"name":"echon", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_echon"}), AttributeDict({"name":"else", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_else"}), AttributeDict({"name":"elseif", "minlen":5, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_elseif"}), AttributeDict({"name":"emenu", "minlen":2, "flags":"NEEDARG|EXTRA|TRLBAR|NOTRLCOM|RANGE|NOTADR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"endif", "minlen":2, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endif"}), AttributeDict({"name":"endfor", "minlen":5, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endfor"}), AttributeDict({"name":"endfunction", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_endfunction"}), AttributeDict({"name":"endtry", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endtry"}), AttributeDict({"name":"endwhile", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_endwhile"}), AttributeDict({"name":"enew", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ex", "minlen":2, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"execute", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_execute"}), AttributeDict({"name":"exit", "minlen":3, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"exusage", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"file", "minlen":1, "flags":"RANGE|NOTADR|ZEROR|BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"files", "minlen":5, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"filetype", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"find", "minlen":3, "flags":"RANGE|NOTADR|BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"finally", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_finally"}), AttributeDict({"name":"finish", "minlen":4, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_finish"}), AttributeDict({"name":"first", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"fixdel", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"fold", "minlen":2, "flags":"RANGE|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"foldclose", "minlen":5, "flags":"RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"folddoopen", "minlen":5, "flags":"RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"folddoclosed", "minlen":7, "flags":"RANGE|DFLALL|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"foldopen", "minlen":5, "flags":"RANGE|BANG|WHOLEFOLD|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"for", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_for"}), AttributeDict({"name":"function", "minlen":2, "flags":"EXTRA|BANG|CMDWIN", "parser":"parse_cmd_function"}), AttributeDict({"name":"global", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"goto", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"grep", "minlen":2, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"grepadd", "minlen":5, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"gui", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"gvim", "minlen":2, "flags":"BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"hardcopy", "minlen":2, "flags":"RANGE|COUNT|EXTRA|TRLBAR|DFLALL|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"help", "minlen":1, "flags":"BANG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"helpfind", "minlen":5, "flags":"EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"helpgrep", "minlen":5, "flags":"EXTRA|NOTRLCOM|NEEDARG", "parser":"parse_cmd_common"}), AttributeDict({"name":"helptags", "minlen":5, "flags":"NEEDARG|FILES|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"highlight", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"hide", "minlen":3, "flags":"BANG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"history", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"insert", "minlen":1, "flags":"BANG|RANGE|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_insert"}), AttributeDict({"name":"iabbrev", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"iabclear", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"if", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_if"}), AttributeDict({"name":"ijump", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"ilist", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"imap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"imapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"imenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"inoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"inoreabbrev", "minlen":6, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"inoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"intro", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"isearch", "minlen":2, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"isplit", "minlen":3, "flags":"BANG|RANGE|DFLALL|WHOLEFOLD|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"iunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"iunabbrev", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"iunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"join", "minlen":1, "flags":"BANG|RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"jumps", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"k", "minlen":1, "flags":"RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"keepalt", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"keepmarks", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"keepjumps", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"keeppatterns", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"lNext", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lNfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"list", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"laddexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"laddbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"laddfile", "minlen":5, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"last", "minlen":2, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"language", "minlen":3, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"later", "minlen":3, "flags":"TRLBAR|EXTRA|NOSPC|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lcd", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lchdir", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lclose", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lcscope", "minlen":3, "flags":"EXTRA|NOTRLCOM|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"left", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"leftabove", "minlen":5, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"let", "minlen":3, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_let"}), AttributeDict({"name":"lexpr", "minlen":3, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lfile", "minlen":2, "flags":"TRLBAR|FILE1|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lfirst", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lgetbuffer", "minlen":5, "flags":"RANGE|NOTADR|WORD1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lgetexpr", "minlen":5, "flags":"NEEDARG|WORD1|NOTRLCOM|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lgetfile", "minlen":2, "flags":"TRLBAR|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"lgrep", "minlen":3, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"lgrepadd", "minlen":6, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"lhelpgrep", "minlen":2, "flags":"EXTRA|NOTRLCOM|NEEDARG", "parser":"parse_cmd_common"}), AttributeDict({"name":"ll", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"llast", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"list", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lmake", "minlen":4, "flags":"BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"lmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lnext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lnewer", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lnfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"loadkeymap", "minlen":5, "flags":"CMDWIN", "parser":"parse_cmd_loadkeymap"}), AttributeDict({"name":"loadview", "minlen":2, "flags":"FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lockmarks", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"lockvar", "minlen":5, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_lockvar"}), AttributeDict({"name":"lolder", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lopen", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"lprevious", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lpfile", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"lrewind", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR|BANG", "parser":"parse_cmd_common"}), AttributeDict({"name":"ls", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"ltag", "minlen":2, "flags":"NOTADR|TRLBAR|BANG|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"lunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lua", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_lua"}), AttributeDict({"name":"luado", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"luafile", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"lvimgrep", "minlen":2, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"lvimgrepadd", "minlen":9, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"lwindow", "minlen":2, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"move", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"mark", "minlen":2, "flags":"RANGE|WORD1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"make", "minlen":3, "flags":"BANG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"map", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"mapclear", "minlen":4, "flags":"EXTRA|BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"marks", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"match", "minlen":3, "flags":"RANGE|NOTADR|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"menu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"menutranslate", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"messages", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"mkexrc", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"mksession", "minlen":3, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"mkspell", "minlen":4, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"mkvimrc", "minlen":3, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"mkview", "minlen":5, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"mode", "minlen":3, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"mzscheme", "minlen":2, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN|SBOXOK", "parser":"parse_cmd_mzscheme"}), AttributeDict({"name":"mzfile", "minlen":3, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nbclose", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nbkey", "minlen":2, "flags":"EXTRA|NOTADR|NEEDARG", "parser":"parse_cmd_common"}), AttributeDict({"name":"nbstart", "minlen":3, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"next", "minlen":1, "flags":"RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"new", "minlen":3, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"nmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"noautocmd", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"noremap", "minlen":2, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nohlsearch", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"noreabbrev", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"noremenu", "minlen":6, "flags":"RANGE|NOTADR|ZEROR|BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"normal", "minlen":4, "flags":"RANGE|BANG|EXTRA|NEEDARG|NOTRLCOM|USECTRLV|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"number", "minlen":2, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nunmap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"nunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"oldfiles", "minlen":2, "flags":"BANG|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"open", "minlen":1, "flags":"RANGE|BANG|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"omap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"omapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"omenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"only", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"onoremap", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"onoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"options", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ounmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"ounmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"ownsyntax", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"pclose", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"pedit", "minlen":3, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"perl", "minlen":2, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_perl"}), AttributeDict({"name":"print", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}), AttributeDict({"name":"profdel", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"profile", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"promptfind", "minlen":3, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"promptrepl", "minlen":7, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"perldo", "minlen":5, "flags":"RANGE|EXTRA|DFLALL|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"pop", "minlen":2, "flags":"RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"popup", "minlen":4, "flags":"NEEDARG|EXTRA|BANG|TRLBAR|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"ppop", "minlen":2, "flags":"RANGE|NOTADR|BANG|COUNT|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"preserve", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"previous", "minlen":4, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"psearch", "minlen":2, "flags":"BANG|RANGE|WHOLEFOLD|DFLALL|EXTRA", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptag", "minlen":2, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptNext", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptfirst", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptjump", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptlast", "minlen":3, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptnext", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptprevious", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptrewind", "minlen":3, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"ptselect", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"put", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|REGSTR|TRLBAR|ZEROR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"pwd", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"py3", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python3"}), AttributeDict({"name":"python3", "minlen":7, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python3"}), AttributeDict({"name":"py3file", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"python", "minlen":2, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_python"}), AttributeDict({"name":"pyfile", "minlen":3, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"pydo", "minlen":3, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"py3do", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"quit", "minlen":1, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"quitall", "minlen":5, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"qall", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"read", "minlen":1, "flags":"BANG|RANGE|WHOLEFOLD|FILE1|ARGOPT|TRLBAR|ZEROR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"recover", "minlen":3, "flags":"BANG|FILE1|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"redo", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"redir", "minlen":4, "flags":"BANG|FILES|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"redraw", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"redrawstatus", "minlen":7, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"registers", "minlen":3, "flags":"EXTRA|NOTRLCOM|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"resize", "minlen":3, "flags":"RANGE|NOTADR|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"retab", "minlen":3, "flags":"TRLBAR|RANGE|WHOLEFOLD|DFLALL|BANG|WORD1|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"return", "minlen":4, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_return"}), AttributeDict({"name":"rewind", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"right", "minlen":2, "flags":"TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"rightbelow", "minlen":6, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"ruby", "minlen":3, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_ruby"}), AttributeDict({"name":"rubydo", "minlen":5, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"rubyfile", "minlen":5, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"rundo", "minlen":4, "flags":"NEEDARG|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"runtime", "minlen":2, "flags":"BANG|NEEDARG|FILES|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"rviminfo", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"substitute", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sNext", "minlen":2, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sandbox", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"sargument", "minlen":2, "flags":"BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sall", "minlen":3, "flags":"BANG|RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"saveas", "minlen":3, "flags":"BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbuffer", "minlen":2, "flags":"BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbNext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sball", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbfirst", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sblast", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbmodified", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbnext", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbprevious", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sbrewind", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"scriptnames", "minlen":3, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"scriptencoding", "minlen":7, "flags":"WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"scscope", "minlen":3, "flags":"EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"set", "minlen":2, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}), AttributeDict({"name":"setfiletype", "minlen":4, "flags":"TRLBAR|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"setglobal", "minlen":4, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}), AttributeDict({"name":"setlocal", "minlen":4, "flags":"TRLBAR|EXTRA|CMDWIN|SBOXOK", "parser":"parse_cmd_common"}), AttributeDict({"name":"sfind", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sfirst", "minlen":4, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"shell", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"simalt", "minlen":3, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sign", "minlen":3, "flags":"NEEDARG|RANGE|NOTADR|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"silent", "minlen":3, "flags":"NEEDARG|EXTRA|BANG|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sleep", "minlen":2, "flags":"RANGE|NOTADR|COUNT|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"slast", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"smagic", "minlen":2, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"smap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"smapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"smenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"snext", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILES|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sniff", "minlen":3, "flags":"EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"snomagic", "minlen":3, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"snoremap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"snoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sort", "minlen":3, "flags":"RANGE|DFLALL|WHOLEFOLD|BANG|EXTRA|NOTRLCOM|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"source", "minlen":2, "flags":"BANG|FILE1|TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"spelldump", "minlen":6, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"spellgood", "minlen":3, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"spellinfo", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"spellrepall", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"spellundo", "minlen":6, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"spellwrong", "minlen":6, "flags":"BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"split", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sprevious", "minlen":3, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"srewind", "minlen":3, "flags":"EXTRA|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"stop", "minlen":2, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"stag", "minlen":3, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"startinsert", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"startgreplace", "minlen":6, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"startreplace", "minlen":6, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"stopinsert", "minlen":5, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"stjump", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"stselect", "minlen":3, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"sunhide", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"sunmap", "minlen":4, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"suspend", "minlen":3, "flags":"TRLBAR|BANG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"sview", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"swapname", "minlen":2, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"syntax", "minlen":2, "flags":"EXTRA|NOTRLCOM|CMDWIN", "parser":"parse_cmd_syntax"}), AttributeDict({"name":"syntime", "minlen":5, "flags":"NEEDARG|WORD1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"syncbind", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"t", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"tNext", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabNext", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabclose", "minlen":4, "flags":"RANGE|NOTADR|COUNT|BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabdo", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabedit", "minlen":4, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabfind", "minlen":4, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|NEEDARG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabfirst", "minlen":6, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tablast", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabmove", "minlen":4, "flags":"RANGE|NOTADR|ZEROR|EXTRA|NOSPC|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabnew", "minlen":6, "flags":"BANG|FILE1|RANGE|NOTADR|ZEROR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabnext", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabonly", "minlen":4, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabprevious", "minlen":4, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabrewind", "minlen":4, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tabs", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tab", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"tag", "minlen":2, "flags":"RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tags", "minlen":4, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tcl", "minlen":2, "flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_tcl"}), AttributeDict({"name":"tcldo", "minlen":4, "flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tclfile", "minlen":4, "flags":"RANGE|FILE1|NEEDARG|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tearoff", "minlen":2, "flags":"NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tfirst", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"throw", "minlen":2, "flags":"EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_throw"}), AttributeDict({"name":"tjump", "minlen":2, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"tlast", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"tmenu", "minlen":2, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"tnext", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"topleft", "minlen":2, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"tprevious", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"trewind", "minlen":2, "flags":"RANGE|NOTADR|BANG|TRLBAR|ZEROR", "parser":"parse_cmd_common"}), AttributeDict({"name":"try", "minlen":3, "flags":"TRLBAR|SBOXOK|CMDWIN", "parser":"parse_cmd_try"}), AttributeDict({"name":"tselect", "minlen":2, "flags":"BANG|TRLBAR|WORD1", "parser":"parse_cmd_common"}), AttributeDict({"name":"tunmenu", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"undo", "minlen":1, "flags":"RANGE|NOTADR|COUNT|ZEROR|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"undojoin", "minlen":5, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"undolist", "minlen":5, "flags":"TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"unabbreviate", "minlen":3, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"unhide", "minlen":3, "flags":"RANGE|NOTADR|COUNT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"unlet", "minlen":3, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_unlet"}), AttributeDict({"name":"unlockvar", "minlen":4, "flags":"BANG|EXTRA|NEEDARG|SBOXOK|CMDWIN", "parser":"parse_cmd_unlockvar"}), AttributeDict({"name":"unmap", "minlen":3, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"unmenu", "minlen":4, "flags":"BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"unsilent", "minlen":3, "flags":"NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"update", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"vglobal", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|DFLALL|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"version", "minlen":2, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"verbose", "minlen":4, "flags":"NEEDARG|RANGE|NOTADR|EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vertical", "minlen":4, "flags":"NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"vimgrep", "minlen":3, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"vimgrepadd", "minlen":8, "flags":"RANGE|NOTADR|BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE", "parser":"parse_cmd_common"}), AttributeDict({"name":"visual", "minlen":2, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"viusage", "minlen":3, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"view", "minlen":3, "flags":"BANG|FILE1|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"vmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vnew", "minlen":3, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"vnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vsplit", "minlen":2, "flags":"BANG|FILE1|RANGE|NOTADR|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"vunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"vunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"windo", "minlen":5, "flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "parser":"parse_cmd_common"}), AttributeDict({"name":"write", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"wNext", "minlen":2, "flags":"RANGE|WHOLEFOLD|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wall", "minlen":2, "flags":"BANG|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"while", "minlen":2, "flags":"EXTRA|NOTRLCOM|SBOXOK|CMDWIN", "parser":"parse_cmd_while"}), AttributeDict({"name":"winsize", "minlen":2, "flags":"EXTRA|NEEDARG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wincmd", "minlen":4, "flags":"NEEDARG|WORD1|RANGE|NOTADR", "parser":"parse_wincmd"}), AttributeDict({"name":"winpos", "minlen":4, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"wnext", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wprevious", "minlen":2, "flags":"RANGE|NOTADR|BANG|FILE1|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wq", "minlen":2, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wqall", "minlen":3, "flags":"BANG|FILE1|ARGOPT|DFLALL|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"wsverb", "minlen":2, "flags":"EXTRA|NOTADR|NEEDARG", "parser":"parse_cmd_common"}), AttributeDict({"name":"wundo", "minlen":2, "flags":"BANG|NEEDARG|FILE1", "parser":"parse_cmd_common"}), AttributeDict({"name":"wviminfo", "minlen":2, "flags":"BANG|FILE1|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xit", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xall", "minlen":2, "flags":"BANG|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"xmapclear", "minlen":5, "flags":"EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xmenu", "minlen":3, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xnoremap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xnoremenu", "minlen":7, "flags":"RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xunmap", "minlen":2, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"xunmenu", "minlen":5, "flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"yank", "minlen":1, "flags":"RANGE|WHOLEFOLD|REGSTR|COUNT|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"z", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"!", "minlen":1, "flags":"RANGE|WHOLEFOLD|BANG|FILES|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"#", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"&", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"*", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"<", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"=", "minlen":1, "flags":"RANGE|TRLBAR|DFLALL|EXFLAGS|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":">", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"name":"@", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"Next", "minlen":1, "flags":"EXTRA|RANGE|NOTADR|COUNT|BANG|EDITCMD|ARGOPT|TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"Print", "minlen":1, "flags":"RANGE|WHOLEFOLD|COUNT|EXFLAGS|TRLBAR|CMDWIN", "parser":"parse_cmd_common"}), AttributeDict({"name":"X", "minlen":1, "flags":"TRLBAR", "parser":"parse_cmd_common"}), AttributeDict({"name":"~", "minlen":1, "flags":"RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR", "minlen":3, "name":"cbottom", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"cdo", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"cfdo", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR", "minlen":3, "name":"chistory", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR|CMDWIN", "minlen":3, "name":"clearjumps", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM", "minlen":4, "name":"filter", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|NOTADR|COUNT|TRLBAR", "minlen":5, "name":"helpclose", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR", "minlen":3, "name":"lbottom", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":2, "name":"ldo", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL", "minlen":3, "name":"lfdo", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR", "minlen":3, "name":"lhistory", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|EXTRA|TRLBAR|CMDWIN", "minlen":3, "name":"llist", "parser":"parse_cmd_common"}), AttributeDict({"flags":"NEEDARG|EXTRA|NOTRLCOM", "minlen":3, "name":"noswapfile", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|FILE1|NEEDARG|TRLBAR|SBOXOK|CMDWIN", "minlen":2, "name":"packadd", "parser":"parse_cmd_common"}), AttributeDict({"flags":"BANG|TRLBAR|SBOXOK|CMDWIN", "minlen":5, "name":"packloadall", "parser":"parse_cmd_common"}), AttributeDict({"flags":"TRLBAR|CMDWIN|SBOXOK", "minlen":3, "name":"smile", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "minlen":3, "name":"pyx", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|DFLALL|EXTRA|NEEDARG|CMDWIN", "minlen":4, "name":"pyxdo", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|EXTRA|NEEDARG|CMDWIN", "minlen":7, "name":"pythonx", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|FILE1|NEEDARG|CMDWIN", "minlen":4, "name":"pyxfile", "parser":"parse_cmd_common"}), AttributeDict({"flags":"RANGE|BANG|FILES|CMDWIN", "minlen":3, "name":"terminal", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":3, "name":"tmap", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EXTRA|TRLBAR|CMDWIN", "minlen":5, "name":"tmapclear", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":3, "name":"tnoremap", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN", "minlen":5, "name":"tunmap", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"cabove", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"cafter", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"cbefore", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"cbelow", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN", "minlen":4, "name":"const", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"labove", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"lafter", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":3, "name":"lbefore", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_COUNT|EX_TRLBAR", "minlen":4, "name":"lbelow", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_TRLBAR|EX_CMDWIN", "minlen":7, "name":"redrawtabline", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_WORD1|EX_TRLBAR|EX_CMDWIN", "minlen":7, "name":"scriptversion", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN", "minlen":2, "name":"tcd", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_BANG|EX_FILE1|EX_TRLBAR|EX_CMDWIN", "minlen":3, "name":"tchdir", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlmenu", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlnoremenu", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_RANGE|EX_ZEROR|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN", "minlen":3, "name":"tlunmenu", "parser":"parse_cmd_common"}), AttributeDict({"flags":"EX_EXTRA|EX_TRLBAR|EX_CMDWIN", "minlen":2, "name":"xrestore", "parser":"parse_cmd_common"})] + builtin_functions = [AttributeDict({"name":"abs", "min_argc":1, "max_argc":1}), AttributeDict({"name":"acos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"add", "min_argc":2, "max_argc":2}), AttributeDict({"name":"and", "min_argc":2, "max_argc":2}), AttributeDict({"name":"append", "min_argc":2, "max_argc":2}), AttributeDict({"name":"appendbufline", "min_argc":3, "max_argc":3}), AttributeDict({"name":"argc", "min_argc":0, "max_argc":1}), AttributeDict({"name":"argidx", "min_argc":0, "max_argc":0}), AttributeDict({"name":"arglistid", "min_argc":0, "max_argc":2}), AttributeDict({"name":"argv", "min_argc":0, "max_argc":2}), AttributeDict({"name":"asin", "min_argc":1, "max_argc":1}), AttributeDict({"name":"assert_beeps", "min_argc":1, "max_argc":2}), AttributeDict({"name":"assert_equal", "min_argc":2, "max_argc":3}), AttributeDict({"name":"assert_equalfile", "min_argc":2, "max_argc":2}), AttributeDict({"name":"assert_exception", "min_argc":1, "max_argc":2}), AttributeDict({"name":"assert_fails", "min_argc":1, "max_argc":3}), AttributeDict({"name":"assert_false", "min_argc":1, "max_argc":2}), AttributeDict({"name":"assert_inrange", "min_argc":3, "max_argc":4}), AttributeDict({"name":"assert_match", "min_argc":2, "max_argc":3}), AttributeDict({"name":"assert_notequal", "min_argc":2, "max_argc":3}), AttributeDict({"name":"assert_notmatch", "min_argc":2, "max_argc":3}), AttributeDict({"name":"assert_report", "min_argc":1, "max_argc":1}), AttributeDict({"name":"assert_true", "min_argc":1, "max_argc":2}), AttributeDict({"name":"atan", "min_argc":1, "max_argc":1}), AttributeDict({"name":"atan2", "min_argc":2, "max_argc":2}), AttributeDict({"name":"balloon_gettext", "min_argc":0, "max_argc":0}), AttributeDict({"name":"balloon_show", "min_argc":1, "max_argc":1}), AttributeDict({"name":"balloon_split", "min_argc":1, "max_argc":1}), AttributeDict({"name":"browse", "min_argc":4, "max_argc":4}), AttributeDict({"name":"browsedir", "min_argc":2, "max_argc":2}), AttributeDict({"name":"bufadd", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufexists", "min_argc":1, "max_argc":1}), AttributeDict({"name":"buffer_exists", "min_argc":1, "max_argc":1}), AttributeDict({"name":"buffer_name", "min_argc":1, "max_argc":1}), AttributeDict({"name":"buffer_number", "min_argc":1, "max_argc":1}), AttributeDict({"name":"buflisted", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufload", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufloaded", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufname", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufnr", "min_argc":1, "max_argc":2}), AttributeDict({"name":"bufwinid", "min_argc":1, "max_argc":1}), AttributeDict({"name":"bufwinnr", "min_argc":1, "max_argc":1}), AttributeDict({"name":"byte2line", "min_argc":1, "max_argc":1}), AttributeDict({"name":"byteidx", "min_argc":2, "max_argc":2}), AttributeDict({"name":"byteidxcomp", "min_argc":2, "max_argc":2}), AttributeDict({"name":"call", "min_argc":2, "max_argc":3}), AttributeDict({"name":"ceil", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_canread", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_close", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_close_in", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_evalexpr", "min_argc":2, "max_argc":3}), AttributeDict({"name":"ch_evalraw", "min_argc":2, "max_argc":3}), AttributeDict({"name":"ch_getbufnr", "min_argc":2, "max_argc":2}), AttributeDict({"name":"ch_getjob", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_info", "min_argc":1, "max_argc":1}), AttributeDict({"name":"ch_log", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_logfile", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_open", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_read", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_readblob", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_readraw", "min_argc":1, "max_argc":2}), AttributeDict({"name":"ch_sendexpr", "min_argc":2, "max_argc":3}), AttributeDict({"name":"ch_sendraw", "min_argc":2, "max_argc":3}), AttributeDict({"name":"ch_setoptions", "min_argc":2, "max_argc":2}), AttributeDict({"name":"ch_status", "min_argc":1, "max_argc":2}), AttributeDict({"name":"changenr", "min_argc":0, "max_argc":0}), AttributeDict({"name":"char2nr", "min_argc":1, "max_argc":2}), AttributeDict({"name":"chdir", "min_argc":1, "max_argc":1}), AttributeDict({"name":"cindent", "min_argc":1, "max_argc":1}), AttributeDict({"name":"clearmatches", "min_argc":0, "max_argc":1}), AttributeDict({"name":"col", "min_argc":1, "max_argc":1}), AttributeDict({"name":"complete", "min_argc":2, "max_argc":2}), AttributeDict({"name":"complete_add", "min_argc":1, "max_argc":1}), AttributeDict({"name":"complete_check", "min_argc":0, "max_argc":0}), AttributeDict({"name":"complete_info", "min_argc":0, "max_argc":1}), AttributeDict({"name":"confirm", "min_argc":1, "max_argc":4}), AttributeDict({"name":"copy", "min_argc":1, "max_argc":1}), AttributeDict({"name":"cos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"cosh", "min_argc":1, "max_argc":1}), AttributeDict({"name":"count", "min_argc":2, "max_argc":4}), AttributeDict({"name":"cscope_connection", "min_argc":0, "max_argc":3}), AttributeDict({"name":"cursor", "min_argc":1, "max_argc":3}), AttributeDict({"name":"debugbreak", "min_argc":1, "max_argc":1}), AttributeDict({"name":"deepcopy", "min_argc":1, "max_argc":2}), AttributeDict({"name":"delete", "min_argc":1, "max_argc":2}), AttributeDict({"name":"deletebufline", "min_argc":2, "max_argc":3}), AttributeDict({"name":"did_filetype", "min_argc":0, "max_argc":0}), AttributeDict({"name":"diff_filler", "min_argc":1, "max_argc":1}), AttributeDict({"name":"diff_hlID", "min_argc":2, "max_argc":2}), AttributeDict({"name":"empty", "min_argc":1, "max_argc":1}), AttributeDict({"name":"environ", "min_argc":0, "max_argc":0}), AttributeDict({"name":"escape", "min_argc":2, "max_argc":2}), AttributeDict({"name":"eval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"eventhandler", "min_argc":0, "max_argc":0}), AttributeDict({"name":"executable", "min_argc":1, "max_argc":1}), AttributeDict({"name":"execute", "min_argc":1, "max_argc":2}), AttributeDict({"name":"exepath", "min_argc":1, "max_argc":1}), AttributeDict({"name":"exists", "min_argc":1, "max_argc":1}), AttributeDict({"name":"exp", "min_argc":1, "max_argc":1}), AttributeDict({"name":"expand", "min_argc":1, "max_argc":3}), AttributeDict({"name":"expandcmd", "min_argc":1, "max_argc":1}), AttributeDict({"name":"extend", "min_argc":2, "max_argc":3}), AttributeDict({"name":"feedkeys", "min_argc":1, "max_argc":2}), AttributeDict({"name":"file_readable", "min_argc":1, "max_argc":1}), AttributeDict({"name":"filereadable", "min_argc":1, "max_argc":1}), AttributeDict({"name":"filewritable", "min_argc":1, "max_argc":1}), AttributeDict({"name":"filter", "min_argc":2, "max_argc":2}), AttributeDict({"name":"finddir", "min_argc":1, "max_argc":3}), AttributeDict({"name":"findfile", "min_argc":1, "max_argc":3}), AttributeDict({"name":"float2nr", "min_argc":1, "max_argc":1}), AttributeDict({"name":"floor", "min_argc":1, "max_argc":1}), AttributeDict({"name":"fmod", "min_argc":2, "max_argc":2}), AttributeDict({"name":"fnameescape", "min_argc":1, "max_argc":1}), AttributeDict({"name":"fnamemodify", "min_argc":2, "max_argc":2}), AttributeDict({"name":"foldclosed", "min_argc":1, "max_argc":1}), AttributeDict({"name":"foldclosedend", "min_argc":1, "max_argc":1}), AttributeDict({"name":"foldlevel", "min_argc":1, "max_argc":1}), AttributeDict({"name":"foldtext", "min_argc":0, "max_argc":0}), AttributeDict({"name":"foldtextresult", "min_argc":1, "max_argc":1}), AttributeDict({"name":"foreground", "min_argc":0, "max_argc":0}), AttributeDict({"name":"funcref", "min_argc":1, "max_argc":3}), AttributeDict({"name":"function", "min_argc":1, "max_argc":3}), AttributeDict({"name":"garbagecollect", "min_argc":0, "max_argc":1}), AttributeDict({"name":"get", "min_argc":2, "max_argc":3}), AttributeDict({"name":"get_lazy", "min_argc":2, "max_argc":3}), AttributeDict({"name":"getbufinfo", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getbufline", "min_argc":2, "max_argc":3}), AttributeDict({"name":"getbufvar", "min_argc":2, "max_argc":3}), AttributeDict({"name":"getchangelist", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getchar", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getcharmod", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcharsearch", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcmdline", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcmdpos", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcmdtype", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcmdwintype", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcompletion", "min_argc":2, "max_argc":3}), AttributeDict({"name":"getcurpos", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getcwd", "min_argc":0, "max_argc":2}), AttributeDict({"name":"getenv", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getfontname", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getfperm", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getfsize", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getftime", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getftype", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getjumplist", "min_argc":0, "max_argc":2}), AttributeDict({"name":"getline", "min_argc":1, "max_argc":2}), AttributeDict({"name":"getloclist", "min_argc":1, "max_argc":2}), AttributeDict({"name":"getmatches", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getpid", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getpos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"getqflist", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getreg", "min_argc":0, "max_argc":3}), AttributeDict({"name":"getregtype", "min_argc":0, "max_argc":1}), AttributeDict({"name":"gettabinfo", "min_argc":0, "max_argc":1}), AttributeDict({"name":"gettabvar", "min_argc":2, "max_argc":3}), AttributeDict({"name":"gettabwinvar", "min_argc":3, "max_argc":4}), AttributeDict({"name":"gettagstack", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getwininfo", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getwinpos", "min_argc":0, "max_argc":1}), AttributeDict({"name":"getwinposx", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getwinposy", "min_argc":0, "max_argc":0}), AttributeDict({"name":"getwinvar", "min_argc":2, "max_argc":3}), AttributeDict({"name":"glob", "min_argc":1, "max_argc":4}), AttributeDict({"name":"glob2regpat", "min_argc":1, "max_argc":1}), AttributeDict({"name":"globpath", "min_argc":2, "max_argc":5}), AttributeDict({"name":"has", "min_argc":1, "max_argc":1}), AttributeDict({"name":"has_key", "min_argc":2, "max_argc":2}), AttributeDict({"name":"haslocaldir", "min_argc":0, "max_argc":2}), AttributeDict({"name":"hasmapto", "min_argc":1, "max_argc":3}), AttributeDict({"name":"highlightID", "min_argc":1, "max_argc":1}), AttributeDict({"name":"highlight_exists", "min_argc":1, "max_argc":1}), AttributeDict({"name":"histadd", "min_argc":2, "max_argc":2}), AttributeDict({"name":"histdel", "min_argc":1, "max_argc":2}), AttributeDict({"name":"histget", "min_argc":1, "max_argc":2}), AttributeDict({"name":"histnr", "min_argc":1, "max_argc":1}), AttributeDict({"name":"hlID", "min_argc":1, "max_argc":1}), AttributeDict({"name":"hlexists", "min_argc":1, "max_argc":1}), AttributeDict({"name":"hostname", "min_argc":0, "max_argc":0}), AttributeDict({"name":"iconv", "min_argc":3, "max_argc":3}), AttributeDict({"name":"indent", "min_argc":1, "max_argc":1}), AttributeDict({"name":"index", "min_argc":2, "max_argc":4}), AttributeDict({"name":"input", "min_argc":1, "max_argc":3}), AttributeDict({"name":"inputdialog", "min_argc":1, "max_argc":3}), AttributeDict({"name":"inputlist", "min_argc":1, "max_argc":1}), AttributeDict({"name":"inputrestore", "min_argc":0, "max_argc":0}), AttributeDict({"name":"inputsave", "min_argc":0, "max_argc":0}), AttributeDict({"name":"inputsecret", "min_argc":1, "max_argc":2}), AttributeDict({"name":"insert", "min_argc":2, "max_argc":3}), AttributeDict({"name":"invert", "min_argc":1, "max_argc":1}), AttributeDict({"name":"isdirectory", "min_argc":1, "max_argc":1}), AttributeDict({"name":"isinf", "min_argc":1, "max_argc":1}), AttributeDict({"name":"islocked", "min_argc":1, "max_argc":1}), AttributeDict({"name":"isnan", "min_argc":1, "max_argc":1}), AttributeDict({"name":"items", "min_argc":1, "max_argc":1}), AttributeDict({"name":"job_getchannel", "min_argc":1, "max_argc":1}), AttributeDict({"name":"job_info", "min_argc":0, "max_argc":1}), AttributeDict({"name":"job_setoptions", "min_argc":2, "max_argc":2}), AttributeDict({"name":"job_start", "min_argc":1, "max_argc":2}), AttributeDict({"name":"job_status", "min_argc":1, "max_argc":1}), AttributeDict({"name":"job_stop", "min_argc":1, "max_argc":2}), AttributeDict({"name":"join", "min_argc":1, "max_argc":2}), AttributeDict({"name":"js_decode", "min_argc":1, "max_argc":1}), AttributeDict({"name":"js_encode", "min_argc":1, "max_argc":1}), AttributeDict({"name":"json_decode", "min_argc":1, "max_argc":1}), AttributeDict({"name":"json_encode", "min_argc":1, "max_argc":1}), AttributeDict({"name":"keys", "min_argc":1, "max_argc":1}), AttributeDict({"name":"last_buffer_nr", "min_argc":0, "max_argc":0}), AttributeDict({"name":"len", "min_argc":1, "max_argc":1}), AttributeDict({"name":"libcall", "min_argc":3, "max_argc":3}), AttributeDict({"name":"libcallnr", "min_argc":3, "max_argc":3}), AttributeDict({"name":"line", "min_argc":1, "max_argc":1}), AttributeDict({"name":"line2byte", "min_argc":1, "max_argc":1}), AttributeDict({"name":"lispindent", "min_argc":1, "max_argc":1}), AttributeDict({"name":"list2str", "min_argc":1, "max_argc":2}), AttributeDict({"name":"listener_add", "min_argc":1, "max_argc":2}), AttributeDict({"name":"listener_flush", "min_argc":0, "max_argc":1}), AttributeDict({"name":"listener_remove", "min_argc":1, "max_argc":1}), AttributeDict({"name":"localtime", "min_argc":0, "max_argc":0}), AttributeDict({"name":"log", "min_argc":1, "max_argc":1}), AttributeDict({"name":"log10", "min_argc":1, "max_argc":1}), AttributeDict({"name":"luaeval", "min_argc":1, "max_argc":2}), AttributeDict({"name":"map", "min_argc":2, "max_argc":2}), AttributeDict({"name":"maparg", "min_argc":1, "max_argc":4}), AttributeDict({"name":"mapcheck", "min_argc":1, "max_argc":3}), AttributeDict({"name":"match", "min_argc":2, "max_argc":4}), AttributeDict({"name":"matchadd", "min_argc":2, "max_argc":5}), AttributeDict({"name":"matchaddpos", "min_argc":2, "max_argc":5}), AttributeDict({"name":"matcharg", "min_argc":1, "max_argc":1}), AttributeDict({"name":"matchdelete", "min_argc":1, "max_argc":2}), AttributeDict({"name":"matchend", "min_argc":2, "max_argc":4}), AttributeDict({"name":"matchlist", "min_argc":2, "max_argc":4}), AttributeDict({"name":"matchstr", "min_argc":2, "max_argc":4}), AttributeDict({"name":"matchstrpos", "min_argc":2, "max_argc":4}), AttributeDict({"name":"max", "min_argc":1, "max_argc":1}), AttributeDict({"name":"min", "min_argc":1, "max_argc":1}), AttributeDict({"name":"mkdir", "min_argc":1, "max_argc":3}), AttributeDict({"name":"mode", "min_argc":0, "max_argc":1}), AttributeDict({"name":"mzeval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"nextnonblank", "min_argc":1, "max_argc":1}), AttributeDict({"name":"nr2char", "min_argc":1, "max_argc":2}), AttributeDict({"name":"or", "min_argc":2, "max_argc":2}), AttributeDict({"name":"pathshorten", "min_argc":1, "max_argc":1}), AttributeDict({"name":"perleval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"popup_atcursor", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_beval", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_clear", "min_argc":0, "max_argc":0}), AttributeDict({"name":"popup_close", "min_argc":1, "max_argc":2}), AttributeDict({"name":"popup_create", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_dialog", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_filter_menu", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_filter_yesno", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_getoptions", "min_argc":1, "max_argc":1}), AttributeDict({"name":"popup_getpos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"popup_hide", "min_argc":1, "max_argc":1}), AttributeDict({"name":"popup_locate", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_menu", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_move", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_notification", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_setoptions", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_settext", "min_argc":2, "max_argc":2}), AttributeDict({"name":"popup_show", "min_argc":1, "max_argc":1}), AttributeDict({"name":"pow", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prevnonblank", "min_argc":1, "max_argc":1}), AttributeDict({"name":"printf", "min_argc":1, "max_argc":19}), AttributeDict({"name":"prompt_setcallback", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prompt_setinterrupt", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prompt_setprompt", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prop_add", "min_argc":3, "max_argc":3}), AttributeDict({"name":"prop_clear", "min_argc":1, "max_argc":3}), AttributeDict({"name":"prop_list", "min_argc":1, "max_argc":2}), AttributeDict({"name":"prop_remove", "min_argc":1, "max_argc":3}), AttributeDict({"name":"prop_type_add", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prop_type_change", "min_argc":2, "max_argc":2}), AttributeDict({"name":"prop_type_delete", "min_argc":1, "max_argc":2}), AttributeDict({"name":"prop_type_get", "min_argc":1, "max_argc":2}), AttributeDict({"name":"prop_type_list", "min_argc":0, "max_argc":1}), AttributeDict({"name":"pumvisible", "min_argc":0, "max_argc":0}), AttributeDict({"name":"py3eval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"pyeval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"pyxeval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"range", "min_argc":1, "max_argc":3}), AttributeDict({"name":"readdir", "min_argc":1, "max_argc":2}), AttributeDict({"name":"readfile", "min_argc":1, "max_argc":3}), AttributeDict({"name":"reg_executing", "min_argc":0, "max_argc":0}), AttributeDict({"name":"reg_recording", "min_argc":0, "max_argc":0}), AttributeDict({"name":"reltime", "min_argc":0, "max_argc":2}), AttributeDict({"name":"reltimefloat", "min_argc":1, "max_argc":1}), AttributeDict({"name":"reltimestr", "min_argc":1, "max_argc":1}), AttributeDict({"name":"remote_expr", "min_argc":2, "max_argc":4}), AttributeDict({"name":"remote_foreground", "min_argc":1, "max_argc":1}), AttributeDict({"name":"remote_peek", "min_argc":1, "max_argc":2}), AttributeDict({"name":"remote_read", "min_argc":1, "max_argc":2}), AttributeDict({"name":"remote_send", "min_argc":2, "max_argc":3}), AttributeDict({"name":"remote_startserver", "min_argc":1, "max_argc":1}), AttributeDict({"name":"remove", "min_argc":2, "max_argc":3}), AttributeDict({"name":"rename", "min_argc":2, "max_argc":2}), AttributeDict({"name":"repeat", "min_argc":2, "max_argc":2}), AttributeDict({"name":"resolve", "min_argc":1, "max_argc":1}), AttributeDict({"name":"reverse", "min_argc":1, "max_argc":1}), AttributeDict({"name":"round", "min_argc":1, "max_argc":1}), AttributeDict({"name":"rubyeval", "min_argc":1, "max_argc":1}), AttributeDict({"name":"screenattr", "min_argc":2, "max_argc":2}), AttributeDict({"name":"screenchar", "min_argc":2, "max_argc":2}), AttributeDict({"name":"screenchars", "min_argc":2, "max_argc":2}), AttributeDict({"name":"screencol", "min_argc":0, "max_argc":0}), AttributeDict({"name":"screenpos", "min_argc":3, "max_argc":3}), AttributeDict({"name":"screenrow", "min_argc":0, "max_argc":0}), AttributeDict({"name":"screenstring", "min_argc":2, "max_argc":2}), AttributeDict({"name":"search", "min_argc":1, "max_argc":4}), AttributeDict({"name":"searchdecl", "min_argc":1, "max_argc":3}), AttributeDict({"name":"searchpair", "min_argc":3, "max_argc":7}), AttributeDict({"name":"searchpairpos", "min_argc":3, "max_argc":7}), AttributeDict({"name":"searchpos", "min_argc":1, "max_argc":4}), AttributeDict({"name":"server2client", "min_argc":2, "max_argc":2}), AttributeDict({"name":"serverlist", "min_argc":0, "max_argc":0}), AttributeDict({"name":"setbufline", "min_argc":3, "max_argc":3}), AttributeDict({"name":"setbufvar", "min_argc":3, "max_argc":3}), AttributeDict({"name":"setcharsearch", "min_argc":1, "max_argc":1}), AttributeDict({"name":"setcmdpos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"setenv", "min_argc":2, "max_argc":2}), AttributeDict({"name":"setfperm", "min_argc":2, "max_argc":2}), AttributeDict({"name":"setline", "min_argc":2, "max_argc":2}), AttributeDict({"name":"setloclist", "min_argc":2, "max_argc":4}), AttributeDict({"name":"setmatches", "min_argc":1, "max_argc":2}), AttributeDict({"name":"setpos", "min_argc":2, "max_argc":2}), AttributeDict({"name":"setqflist", "min_argc":1, "max_argc":3}), AttributeDict({"name":"setreg", "min_argc":2, "max_argc":3}), AttributeDict({"name":"settabvar", "min_argc":3, "max_argc":3}), AttributeDict({"name":"settabwinvar", "min_argc":4, "max_argc":4}), AttributeDict({"name":"settagstack", "min_argc":2, "max_argc":3}), AttributeDict({"name":"setwinvar", "min_argc":3, "max_argc":3}), AttributeDict({"name":"sha256", "min_argc":1, "max_argc":1}), AttributeDict({"name":"shellescape", "min_argc":1, "max_argc":2}), AttributeDict({"name":"shiftwidth", "min_argc":0, "max_argc":1}), AttributeDict({"name":"sign_define", "min_argc":1, "max_argc":2}), AttributeDict({"name":"sign_getdefined", "min_argc":0, "max_argc":1}), AttributeDict({"name":"sign_getplaced", "min_argc":0, "max_argc":2}), AttributeDict({"name":"sign_jump", "min_argc":3, "max_argc":3}), AttributeDict({"name":"sign_place", "min_argc":4, "max_argc":5}), AttributeDict({"name":"sign_placelist", "min_argc":1, "max_argc":1}), AttributeDict({"name":"sign_undefine", "min_argc":0, "max_argc":1}), AttributeDict({"name":"sign_unplace", "min_argc":1, "max_argc":2}), AttributeDict({"name":"sign_unplacelist", "min_argc":1, "max_argc":2}), AttributeDict({"name":"simplify", "min_argc":1, "max_argc":1}), AttributeDict({"name":"sin", "min_argc":1, "max_argc":1}), AttributeDict({"name":"sinh", "min_argc":1, "max_argc":1}), AttributeDict({"name":"sort", "min_argc":1, "max_argc":3}), AttributeDict({"name":"sound_clear", "min_argc":0, "max_argc":0}), AttributeDict({"name":"sound_playevent", "min_argc":1, "max_argc":2}), AttributeDict({"name":"sound_playfile", "min_argc":1, "max_argc":2}), AttributeDict({"name":"sound_stop", "min_argc":1, "max_argc":1}), AttributeDict({"name":"soundfold", "min_argc":1, "max_argc":1}), AttributeDict({"name":"spellbadword", "min_argc":0, "max_argc":1}), AttributeDict({"name":"spellsuggest", "min_argc":1, "max_argc":3}), AttributeDict({"name":"split", "min_argc":1, "max_argc":3}), AttributeDict({"name":"sqrt", "min_argc":1, "max_argc":1}), AttributeDict({"name":"str2float", "min_argc":1, "max_argc":1}), AttributeDict({"name":"str2list", "min_argc":1, "max_argc":2}), AttributeDict({"name":"str2nr", "min_argc":1, "max_argc":2}), AttributeDict({"name":"strcharpart", "min_argc":2, "max_argc":3}), AttributeDict({"name":"strchars", "min_argc":1, "max_argc":2}), AttributeDict({"name":"strdisplaywidth", "min_argc":1, "max_argc":2}), AttributeDict({"name":"strftime", "min_argc":1, "max_argc":2}), AttributeDict({"name":"strgetchar", "min_argc":2, "max_argc":2}), AttributeDict({"name":"stridx", "min_argc":2, "max_argc":3}), AttributeDict({"name":"string", "min_argc":1, "max_argc":1}), AttributeDict({"name":"strlen", "min_argc":1, "max_argc":1}), AttributeDict({"name":"strpart", "min_argc":2, "max_argc":3}), AttributeDict({"name":"strridx", "min_argc":2, "max_argc":3}), AttributeDict({"name":"strtrans", "min_argc":1, "max_argc":1}), AttributeDict({"name":"strwidth", "min_argc":1, "max_argc":1}), AttributeDict({"name":"submatch", "min_argc":1, "max_argc":2}), AttributeDict({"name":"substitute", "min_argc":4, "max_argc":4}), AttributeDict({"name":"swapinfo", "min_argc":1, "max_argc":1}), AttributeDict({"name":"swapname", "min_argc":1, "max_argc":1}), AttributeDict({"name":"synID", "min_argc":3, "max_argc":3}), AttributeDict({"name":"synIDattr", "min_argc":2, "max_argc":3}), AttributeDict({"name":"synIDtrans", "min_argc":1, "max_argc":1}), AttributeDict({"name":"synconcealed", "min_argc":2, "max_argc":2}), AttributeDict({"name":"synstack", "min_argc":2, "max_argc":2}), AttributeDict({"name":"system", "min_argc":1, "max_argc":2}), AttributeDict({"name":"systemlist", "min_argc":1, "max_argc":2}), AttributeDict({"name":"tabpagebuflist", "min_argc":0, "max_argc":1}), AttributeDict({"name":"tabpagenr", "min_argc":0, "max_argc":1}), AttributeDict({"name":"tabpagewinnr", "min_argc":1, "max_argc":2}), AttributeDict({"name":"tagfiles", "min_argc":0, "max_argc":0}), AttributeDict({"name":"taglist", "min_argc":1, "max_argc":2}), AttributeDict({"name":"tan", "min_argc":1, "max_argc":1}), AttributeDict({"name":"tanh", "min_argc":1, "max_argc":1}), AttributeDict({"name":"tempname", "min_argc":0, "max_argc":0}), AttributeDict({"name":"term_dumpdiff", "min_argc":2, "max_argc":3}), AttributeDict({"name":"term_dumpload", "min_argc":1, "max_argc":2}), AttributeDict({"name":"term_dumpwrite", "min_argc":2, "max_argc":3}), AttributeDict({"name":"term_getaltscreen", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getansicolors", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getattr", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_getcursor", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getjob", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getline", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_getscrolled", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getsize", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_getstatus", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_gettitle", "min_argc":1, "max_argc":1}), AttributeDict({"name":"term_gettty", "min_argc":1, "max_argc":2}), AttributeDict({"name":"term_list", "min_argc":0, "max_argc":0}), AttributeDict({"name":"term_scrape", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_sendkeys", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_setansicolors", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_setkill", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_setrestore", "min_argc":2, "max_argc":2}), AttributeDict({"name":"term_setsize", "min_argc":3, "max_argc":3}), AttributeDict({"name":"term_start", "min_argc":1, "max_argc":2}), AttributeDict({"name":"term_wait", "min_argc":1, "max_argc":2}), AttributeDict({"name":"test_alloc_fail", "min_argc":3, "max_argc":3}), AttributeDict({"name":"test_autochdir", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_feedinput", "min_argc":1, "max_argc":1}), AttributeDict({"name":"test_garbagecollect_now", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_garbagecollect_soon", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_getvalue", "min_argc":1, "max_argc":1}), AttributeDict({"name":"test_ignore_error", "min_argc":1, "max_argc":1}), AttributeDict({"name":"test_null_blob", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_channel", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_dict", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_job", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_list", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_partial", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_null_string", "min_argc":0, "max_argc":0}), AttributeDict({"name":"test_option_not_set", "min_argc":1, "max_argc":1}), AttributeDict({"name":"test_override", "min_argc":2, "max_argc":2}), AttributeDict({"name":"test_refcount", "min_argc":1, "max_argc":1}), AttributeDict({"name":"test_scrollbar", "min_argc":3, "max_argc":3}), AttributeDict({"name":"test_setmouse", "min_argc":2, "max_argc":2}), AttributeDict({"name":"test_settime", "min_argc":1, "max_argc":1}), AttributeDict({"name":"timer_info", "min_argc":0, "max_argc":1}), AttributeDict({"name":"timer_pause", "min_argc":2, "max_argc":2}), AttributeDict({"name":"timer_start", "min_argc":2, "max_argc":3}), AttributeDict({"name":"timer_stop", "min_argc":1, "max_argc":1}), AttributeDict({"name":"timer_stopall", "min_argc":0, "max_argc":0}), AttributeDict({"name":"tolower", "min_argc":1, "max_argc":1}), AttributeDict({"name":"toupper", "min_argc":1, "max_argc":1}), AttributeDict({"name":"tr", "min_argc":3, "max_argc":3}), AttributeDict({"name":"trim", "min_argc":1, "max_argc":2}), AttributeDict({"name":"trunc", "min_argc":1, "max_argc":1}), AttributeDict({"name":"type", "min_argc":1, "max_argc":1}), AttributeDict({"name":"undofile", "min_argc":1, "max_argc":1}), AttributeDict({"name":"undotree", "min_argc":0, "max_argc":0}), AttributeDict({"name":"uniq", "min_argc":1, "max_argc":3}), AttributeDict({"name":"values", "min_argc":1, "max_argc":1}), AttributeDict({"name":"virtcol", "min_argc":1, "max_argc":1}), AttributeDict({"name":"visualmode", "min_argc":0, "max_argc":1}), AttributeDict({"name":"wildmenumode", "min_argc":0, "max_argc":0}), AttributeDict({"name":"win_execute", "min_argc":2, "max_argc":3}), AttributeDict({"name":"win_findbuf", "min_argc":1, "max_argc":1}), AttributeDict({"name":"win_getid", "min_argc":0, "max_argc":2}), AttributeDict({"name":"win_gotoid", "min_argc":1, "max_argc":1}), AttributeDict({"name":"win_id2tabwin", "min_argc":1, "max_argc":1}), AttributeDict({"name":"win_id2win", "min_argc":1, "max_argc":1}), AttributeDict({"name":"win_screenpos", "min_argc":1, "max_argc":1}), AttributeDict({"name":"winbufnr", "min_argc":1, "max_argc":1}), AttributeDict({"name":"wincol", "min_argc":0, "max_argc":0}), AttributeDict({"name":"winheight", "min_argc":1, "max_argc":1}), AttributeDict({"name":"winlayout", "min_argc":0, "max_argc":1}), AttributeDict({"name":"winline", "min_argc":0, "max_argc":0}), AttributeDict({"name":"winnr", "min_argc":0, "max_argc":1}), AttributeDict({"name":"winrestcmd", "min_argc":0, "max_argc":0}), AttributeDict({"name":"winrestview", "min_argc":1, "max_argc":1}), AttributeDict({"name":"winsaveview", "min_argc":0, "max_argc":0}), AttributeDict({"name":"winwidth", "min_argc":1, "max_argc":1}), AttributeDict({"name":"wordcount", "min_argc":0, "max_argc":0}), AttributeDict({"name":"writefile", "min_argc":2, "max_argc":3}), AttributeDict({"name":"xor", "min_argc":2, "max_argc":2})] class ExprTokenizer: def __init__(self, reader): self.reader = reader From 1ea6512a38fbe3d2af316b34ede59ab148ff4889 Mon Sep 17 00:00:00 2001 From: tyru Date: Sat, 20 Jul 2019 03:16:37 +0900 Subject: [PATCH 4/5] refactor function names --- scripts/update_builtin_commands.vim | 11 ++++++----- scripts/update_builtin_functions.vim | 8 ++++---- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/scripts/update_builtin_commands.vim b/scripts/update_builtin_commands.vim index 3b3b2e6c..431c823e 100644 --- a/scripts/update_builtin_commands.vim +++ b/scripts/update_builtin_commands.vim @@ -72,7 +72,7 @@ function! s:Trie.remove(s) abort return v:true endfunction -function! s:gen(ex_cmds_h) abort +function! s:parse(ex_cmds_h) abort let lines = readfile(a:ex_cmds_h) " { 'name': string, 'flags': string, 'minlen': int, 'parser': string} @@ -100,14 +100,14 @@ function! s:gen(ex_cmds_h) abort return cmds endfunction -function! s:gen_new_builtin(existing, latest) abort +function! s:diff(existing, latest) abort let existing_names = {} for cmd in a:existing let existing_names[cmd.name] = v:true endfor let newcmds = [] for cmd in filter(copy(a:latest), {_, c -> !has_key(existing_names, c.name)}) - let newcmds = add(newcmds, extend(cmd, {'parser': 'parse_cmd_common'})) + let newcmds = add(newcmds, cmd) endfor return newcmds endfunction @@ -125,8 +125,9 @@ endfunction " ex_cmds_h: path to vim/src/ex_cmds.h function! VimLParserNewCmds(ex_cmds_h) abort let vimlparser = vimlparser#import() - let latest = s:gen(a:ex_cmds_h) - let new_cmds = s:gen_new_builtin(vimlparser#import().VimLParser.builtin_commands, latest) + let latest = s:parse(a:ex_cmds_h) + let new_cmds = s:diff(vimlparser#import().VimLParser.builtin_commands, latest) + call map(new_cmds, {_,cmd -> extend(cmd, {'parser': 'parse_cmd_common'})}) let generated_text = s:gen_viml(new_cmds) if generated_text ==# '' verbose echo 's:VimLParser.builtin_commands in autoload/vimlparser.vim is up-to-date.' diff --git a/scripts/update_builtin_functions.vim b/scripts/update_builtin_functions.vim index c9cd7714..532dd923 100644 --- a/scripts/update_builtin_functions.vim +++ b/scripts/update_builtin_functions.vim @@ -12,7 +12,7 @@ function! s:get_parse_lines(lines) abort return map(range(from + 1, to - 1), {_,i -> a:lines[i] }) endfunction -function! s:gen(evalfunc_c) abort +function! s:parse(evalfunc_c) abort let lines = readfile(a:evalfunc_c) " { 'name': string, 'min_argc': integer, 'max_argc': integer } @@ -32,7 +32,7 @@ function! s:gen(evalfunc_c) abort return funcs endfunction -function! s:gen_new_builtin(existing, latest) abort +function! s:diff(existing, latest) abort let existing_names = {} for func in a:existing let existing_names[func.name] = v:true @@ -60,8 +60,8 @@ endfunction " evalfunc_c: path to vim/src/evalfunc.c function! VimLParserNewFuncs(evalfunc_c) abort let vimlparser = vimlparser#import() - let latest = s:gen(a:evalfunc_c) - let new_funcs = s:gen_new_builtin(vimlparser#import().VimLParser.builtin_functions, latest) + let latest = s:parse(a:evalfunc_c) + let new_funcs = s:diff(vimlparser#import().VimLParser.builtin_functions, latest) let generated_text = s:gen_viml(new_funcs) if generated_text ==# '' verbose echo 's:VimLParser.builtin_functions in autoload/vimlparser.vim is up-to-date.' From fc35a19c1eafb15d17e8fafbf2e6dfd7e0cc5e56 Mon Sep 17 00:00:00 2001 From: tyru Date: Wed, 24 Jul 2019 23:56:15 +0900 Subject: [PATCH 5/5] throw 'cannot parse functions' --- scripts/update_builtin_functions.vim | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/scripts/update_builtin_functions.vim b/scripts/update_builtin_functions.vim index 532dd923..ce13e4c5 100644 --- a/scripts/update_builtin_functions.vim +++ b/scripts/update_builtin_functions.vim @@ -4,7 +4,7 @@ function! s:get_parse_lines(lines) abort let from = index(a:lines, '} functions[] =') if from ==# -1 - return [] + throw 'cannot parse functions' endif " find next '{' let from = index(a:lines, '{', from + 1) @@ -59,14 +59,19 @@ endfunction " evalfunc_c: path to vim/src/evalfunc.c function! VimLParserNewFuncs(evalfunc_c) abort - let vimlparser = vimlparser#import() - let latest = s:parse(a:evalfunc_c) - let new_funcs = s:diff(vimlparser#import().VimLParser.builtin_functions, latest) - let generated_text = s:gen_viml(new_funcs) - if generated_text ==# '' - verbose echo 's:VimLParser.builtin_functions in autoload/vimlparser.vim is up-to-date.' - else - verbose echo "Append following lines to s:VimLParser.builtin_functions in autoload/vimlparser.vim\n" - verbose echo generated_text - endif + try + let vimlparser = vimlparser#import() + let latest = s:parse(a:evalfunc_c) + let new_funcs = s:diff(vimlparser#import().VimLParser.builtin_functions, latest) + let generated_text = s:gen_viml(new_funcs) + if generated_text ==# '' + verbose echo 's:VimLParser.builtin_functions in autoload/vimlparser.vim is up-to-date.' + else + verbose echo "Append following lines to s:VimLParser.builtin_functions in autoload/vimlparser.vim\n" + verbose echo generated_text + endif + catch + " :echoerr doesn't show output + verbose echo '[ERROR]' v:exception 'at' v:throwpoint + endtry endfunction