syn keyword vimCommand contained  a[ppend] ab[breviate] abc[lear] abo[veleft] al[l] am[enu] an[oremenu] ar[gs] arga[dd] argd[elete] argdo argde[dupe] arge[dit] argg[lobal] argl[ocal] argu[ment] as[cii] aun[menu] b[uffer] bN[ext] ba[ll] bad[d] bal[t] bd[elete] be[lowright] bf[irst] bl[ast] bm[odified] bn[ext] bo[tright] bp[revious] br[ewind] brea[k] breaka[dd] breakd[el] breakl[ist] bro[wse] bu[ffers] bufd[o] bun[load] bw[ipeout] c[hange] cN[ext] cNf[ile] ca[bbrev] cabc[lear] cabo[ve] cad[dbuffer] cadde[xpr] caddf[ile] caf[ter] cal[l] cat[ch] cb[uffer] cbe[fore] cbel[ow] cbo[ttom] cc ccl[ose] cd cdo ce[nter] cex[pr] cf[ile] cfd[o] cfi[rst] cg[etfile] cgetb[uffer] cgete[xpr] ch[dir] cha[nges] che[ckhealth] checkp[ath] checkt[ime] chi[story] cl[ist] cla[st] clo[se] cle[arjumps] cm[ap] cmapc[lear] cme[nu] cn[ext] cnew[er] cnf[ile] cno[remap] cnorea[bbrev]
syn keyword vimCommand contained  cnorem[enu] co[py] col[der] colo[rscheme] com[mand] comc[lear] comp[iler] con[tinue] conf[irm] cons[t] cop[en] cp[revious] cpf[ile] cq[uit] cr[ewind] cu[nmap] cuna[bbrev] cunm[enu] cw[indow] d[elete] dl dell delel deletl deletel dp dep delp delep deletp deletep delm[arks] deb[ug] debugg[reedy] defe[r] del[command] delf[unction] di[splay] dif[fupdate] diffg[et] diffo[ff] diffp[atch] diffpu[t] diffs[plit] difft[his] dig[raphs] dj[ump] dl[ist] dr[op] ds[earch] dsp[lit] e[dit] ea[rlier] ec[ho] echoe[rr] echoh[l] echom[sg] echon el[se] elsei[f] em[enu] en[dif] endf[unction] endfo[r] endt[ry] endw[hile] ene[w] ev[al] ex exe[cute] exi[t] exu[sage] f[ile] files filet[ype] filt[er] fin[d] fina[lly] fini[sh] fir[st] fo[ld] foldc[lose] foldd[oopen] folddoc[losed] foldo[pen] for fu[nction] fc[lose] go[to] gr[ep] grepa[dd]
syn keyword vimCommand contained  gu[i] gv[im] h[elp] helpc[lose] helpg[rep] helpt[ags] hi[ghlight] hid[e] his[tory] ho[rizontal] i[nsert] ia[bbrev] iabc[lear] if ij[ump] il[ist] im[ap] imapc[lear] ime[nu] in[oremap] inorea[bbrev] inorem[enu] int[ro] is[earch] isp[lit] iu[nmap] iuna[bbrev] iunm[enu] j[oin] ju[mps] k ke[epmarks] keepj[umps] keepp[atterns] keepa[lt] l[ist] lN[ext] lNf[ile] la[st] lab[ove] lan[guage] lad[dexpr] laddb[uffer] laddf[ile] laf[ter] lat[er] lb[uffer] lbe[fore] lbel[ow] lbo[ttom] lc[d] lch[dir] lcl[ose] ld[o] le[ft] lefta[bove] let lex[pr] lf[ile] lfd[o] lfi[rst] lg[etfile] lgetb[uffer] lgete[xpr] lgr[ep] lgrepa[dd] lh[elpgrep] lhi[story] ll lla[st] lli[st] lm[ap] lmapc[lear] lmak[e] ln[oremap] lne[xt] lnew[er] lnf[ile] lo[adview] loadk[eymap] loc[kmarks] lockv[ar] lol[der] lop[en] lp[revious] lpf[ile] lr[ewind] lt[ag]
syn keyword vimCommand contained  lu[nmap] lua luad[o] luaf[ile] lv[imgrep] lvimgrepa[dd] lw[indow] ls m[ove] ma[rk] mak[e] map mapc[lear] mar[ks] mat[ch] me[nu] menut[ranslate] mes[sages] mk[exrc] mks[ession] mksp[ell] mkv[imrc] mkvie[w] mo[de] mz[scheme] mzf[ile] n[ext] new nm[ap] nmapc[lear] nme[nu] nn[oremap] nnoreme[nu] no[remap] noa[utocmd] noh[lsearch] nor[eabbrev] norem[enu] nos[wapfile] nor[mal] nu[mber] nun[map] nunme[nu] o[ldfiles] om[ap] omapc[lear] ome[nu] on[ly] ono[remap] onoreme[nu] op[tions] ou[nmap] ounme[nu] ow[nsyntax] p[rint] pa[ckadd] packl[oadall] pc[lose] pe[rl] perld[o] perlf[ile] ped[it] po[p] popu[p] pp[op] pr[eserve] prev[ious] pro[file] profd[el] ps[earch] pt[ag] ptN[ext] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] py[thon] pyd[o] pyf[ile] py3 py3d[o] pyt[hon3] py3[file] pyx
syn keyword vimCommand contained  pyxd[o] pyt[honx] pyx[file] q[uit] quita[ll] qa[ll] r[ead] rec[over] red[o] redi[r] redr[aw] redraws[tatus] redrawt[abline] reg[isters] res[ize] ret[ab] retu[rn] rew[ind] ri[ght] rightb[elow] rs[hada] ru[ntime] rund[o] rub[y] rubyd[o] rubyf[ile] rv[iminfo] sN[ext] sa[rgument] sal[l] san[dbox] sav[eas] sb[uffer] sbN[ext] sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbp[revious] sbr[ewind] sc[riptnames] scripte[ncoding] se[t] setf[iletype] setg[lobal] setl[ocal] sf[ind] sfir[st] si[malt] sig[n] sil[ent] sl[eep] sla[st] sm[agic] smap smapc[lear] sme[nu] sn[ext] sno[magic] snor[emap] snoreme[nu] so[urce] sor[t] sp[lit] spe[llgood] spelld[ump] spelli[nfo] spellr[epall] spellra[re] spellu[ndo] spellw[rong] spr[evious] sr[ewind] st[op] sta[g] star[tinsert] startg[replace] startr[eplace] sto[pinsert] stj[ump] sts[elect]
syn keyword vimCommand contained  su[nhide] sunm[ap] sunme[nu] sus[pend] sv[iew] sw[apname] sy[ntax] synti[me] sync[bind] t tc[d] tch[dir] tN[ext] ta[g] tags tab tabc[lose] tabd[o] tabe[dit] tabf[ind] tabfir[st] tabm[ove] tabl[ast] tabn[ext] tabnew tabo[nly] tabp[revious] tabN[ext] tabr[ewind] tabs tc[l] tcld[o] tclf[ile] te[rminal] tf[irst] th[row] tj[ump] tl[ast] tlm[enu] tln[oremenu] tlu[nmenu] tm[enu] tma[p] tmapc[lear] tn[ext] tno[remap] to[pleft] tp[revious] tr[ewind] tru[st] try ts[elect] tu[nmenu] tunma[p] u[ndo] undoj[oin] undol[ist] una[bbreviate] unh[ide] unl[et] unlo[ckvar] unm[ap] unme[nu] uns[ilent] up[date] v[global] ve[rsion] verb[ose] vert[ical] vi[sual] vie[w] vim[grep] vimgrepa[dd] viu[sage] vm[ap] vmapc[lear] vme[nu] vn[oremap] vne[w] vno[remenu] vs[plit] vu[nmap] vunme[nu] w[rite] wN[ext] wa[ll] wh[ile] wi[nsize] winc[md]
syn keyword vimCommand contained  wind[o] winp[os] wn[ext] wp[revious] wq wqa[ll] ws[hada] wu[ndo] wv[iminfo] x[it] xa[ll] xm[ap] xmapc[lear] xme[nu] xn[oremap] xnoreme[nu] xu[nmap] xunme[nu] y[ank] N[ext]

syn keyword vimOption contained  aleph al allowrevins ari ambiwidth ambw arabic arab arabicshape arshape autochdir acd autoindent ai autoread ar autowrite aw autowriteall awa background bg backspace bs backup bk backupcopy bkc backupdir bdir backupext bex backupskip bsk belloff bo binary bin bomb breakat brk breakindent bri breakindentopt briopt browsedir bsdir bufhidden bh buflisted bl buftype bt casemap cmp cdhome cdh cdpath cd cedit channel charconvert ccv cindent cin cinkeys cink cinoptions cino cinscopedecls cinsd cinwords cinw clipboard cb cmdheight ch cmdwinheight cwh colorcolumn cc columns co comments com commentstring cms compatible cp complete cpt completefunc cfu completeopt cot completeslash csl concealcursor cocu conceallevel cole confirm cf copyindent ci cpoptions cpo cursorbind crb cursorcolumn cuc cursorline cul cursorlineopt culopt
syn keyword vimOption contained  debug define def delcombine deco dictionary dict diff diffexpr dex diffopt dip digraph dg directory dir display dy eadirection ead edcompatible ed emoji emo encoding enc endoffile eof endofline eol equalalways ea equalprg ep errorbells eb errorfile ef errorformat efm eventignore ei expandtab et exrc ex fileencoding fenc fileencodings fencs fileformat ff fileformats ffs fileignorecase fic filetype ft fillchars fcs fixendofline fixeol foldclose fcl foldcolumn fdc foldenable fen foldexpr fde foldignore fdi foldlevel fdl foldlevelstart fdls foldmarker fmr foldmethod fdm foldminlines fml foldnestmax fdn foldopen fdo foldtext fdt formatexpr fex formatlistpat flp formatoptions fo formatprg fp fsync fs gdefault gd grepformat gfm grepprg gp guicursor gcr guifont gfn guifontwide gfw guioptions go guitablabel gtl guitabtooltip gtt
syn keyword vimOption contained  helpfile hf helpheight hh helplang hlg hidden hid highlight hl history hi hkmap hk hkmapp hkp hlsearch hls icon iconstring ignorecase ic imcmdline imc imdisable imd iminsert imi imsearch ims inccommand icm include inc includeexpr inex incsearch is indentexpr inde indentkeys indk infercase inf insertmode im isfname isf isident isi iskeyword isk isprint isp joinspaces js jumpoptions jop keymap kmp keymodel km keywordprg kp langmap lmap langmenu lm langnoremap lnr langremap lrm laststatus ls lazyredraw lz linebreak lbr lines linespace lsp lisp lispoptions lop lispwords lw list listchars lcs loadplugins lpl magic makeef mef makeencoding menc makeprg mp matchpairs mps matchtime mat maxcombine mco maxfuncdepth mfd maxmapdepth mmd maxmempattern mmp menuitems mis mkspellmem msm modeline ml modelineexpr mle modelines mls
syn keyword vimOption contained  modifiable ma modified mod more mouse mousefocus mousef mousehide mh mousemodel mousem mousemoveevent mousemev mousescroll mouseshape mouses mousetime mouset nrformats nf number nu numberwidth nuw omnifunc ofu opendevice odev operatorfunc opfunc packpath pp paragraphs para paste pastetoggle pt patchexpr pex patchmode pm path pa preserveindent pi previewheight pvh previewwindow pvw prompt pumblend pb pumheight ph pumwidth pw pyxversion pyx quickfixtextfunc qftf quoteescape qe readonly ro redrawdebug rdb redrawtime rdt regexpengine re relativenumber rnu remap report revins ri rightleft rl rightleftcmd rlc ruler ru rulerformat ruf runtimepath rtp scroll scr scrollback scbk scrollbind scb scrolljump sj scrolloff so scrollopt sbo sections sect secure selection sel selectmode slm sessionoptions ssop shada sd shadafile sdf
syn keyword vimOption contained  shell sh shellcmdflag shcf shellpipe sp shellquote shq shellredir srr shellslash ssl shelltemp stmp shellxescape sxe shellxquote sxq shiftround sr shiftwidth sw shortmess shm showbreak sbr showcmd sc showcmdloc sloc showfulltag sft showmatch sm showmode smd showtabline stal sidescroll ss sidescrolloff siso signcolumn scl smartcase scs smartindent si smarttab sta smoothscroll sms softtabstop sts spell spellcapcheck spc spellfile spf spelllang spl spelloptions spo spellsuggest sps splitbelow sb splitkeep spk splitright spr startofline sol statuscolumn stc statusline stl suffixes su suffixesadd sua swapfile swf switchbuf swb synmaxcol smc syntax syn tabline tal tabpagemax tpm tabstop ts tagbsearch tbs tagcase tc tagfunc tfu taglength tl tagrelative tr tags tag tagstack tgst termbidi tbidi termencoding tenc termguicolors tgc
syn keyword vimOption contained  termpastefilter tpf termsync terse textwidth tw thesaurus tsr thesaurusfunc tsrfu tildeop top timeout to timeoutlen tm title titlelen titleold titlestring ttimeout ttimeoutlen ttm ttyfast tf undodir udir undofile udf undolevels ul undoreload ur updatecount uc updatetime ut varsofttabstop vsts vartabstop vts verbose vbs verbosefile vfile viewdir vdir viewoptions vop virtualedit ve visualbell vb warn whichwrap ww wildchar wc wildcharm wcm wildignore wig wildignorecase wic wildmenu wmnu wildmode wim wildoptions wop winaltkeys wak winbar wbr winblend winbl window wi winfixheight wfh winfixwidth wfw winheight wh winhighlight winhl winminheight wmh winminwidth wmw winwidth wiw wrap wrapmargin wm wrapscan ws write writeany wa writebackup wb writedelay wd

syn case ignore

syn keyword vimAutoEvent contained  BufAdd BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWriteCmd BufWritePost BufWritePre ChanInfo ChanOpen CmdUndefined CmdWinEnter CmdWinLeave CmdlineChanged CmdlineEnter CmdlineLeave ColorScheme ColorSchemePre CompleteChanged CompleteDone CompleteDonePre CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged DirChangedPre EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave
syn keyword vimAutoEvent contained  InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SearchWrapped SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TermEnter TermLeave TermResponse TextChanged TextChangedI TextChangedP TextChangedT TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew WinResized WinScrolled BufCreate BufRead BufWrite FileEncoding

syn keyword nvimAutoEvent contained  BufModifiedSet DiagnosticChanged LspAttach LspDetach LspNotify LspProgress LspRequest LspTokenUpdate RecordingEnter RecordingLeave Signal TabNewEntered TermClose TermOpen TermRequest UIEnter UILeave

syn case match

syn keyword vimFuncName contained  abs acos add and api_info append appendbufline argc argidx arglistid argv asin assert_beeps assert_equal assert_equalfile assert_exception assert_fails assert_false assert_inrange assert_match assert_nobeep assert_notequal assert_notmatch assert_report assert_true atan atan2 blob2list browse browsedir bufadd bufexists buffer_exists buffer_name buffer_number buflisted bufload bufloaded bufname bufnr bufwinid bufwinnr byte2line byteidx byteidxcomp call ceil chanclose changenr chansend char2nr charclass charcol charidx chdir cindent clearmatches col complete complete_add complete_check complete_info confirm copy cos cosh count ctxget ctxpop ctxpush ctxset ctxsize cursor debugbreak deepcopy delete deletebufline dictwatcheradd dictwatcherdel did_filetype diff_filler diff_hlID digraph_get digraph_getlist digraph_set
syn keyword vimFuncName contained  digraph_setlist empty environ escape eval eventhandler executable execute exepath exists exp expand expandcmd extend extendnew feedkeys file_readable filereadable filewritable filter finddir findfile flatten flattennew float2nr floor fmod fnameescape fnamemodify foldclosed foldclosedend foldlevel foldtext foldtextresult foreach foreground fullcommand funcref function garbagecollect get getbufinfo getbufline getbufoneline getbufvar getcellwidths getchangelist getchar getcharmod getcharpos getcharsearch getcharstr getcmdcompltype getcmdline getcmdpos getcmdscreenpos getcmdtype getcmdwintype getcompletion getcurpos getcursorcharpos getcwd getenv getfontname getfperm getfsize getftime getftype getjumplist getline getloclist getmarklist getmatches getmousepos getpid getpos getqflist getreg getreginfo getregtype
syn keyword vimFuncName contained  getscriptinfo gettabinfo gettabvar gettabwinvar gettagstack gettext getwininfo getwinpos getwinposx getwinposy getwinvar glob glob2regpat globpath has has_key haslocaldir hasmapto highlightID highlight_exists histadd histdel histget histnr hlID hlexists hostname iconv id indent index indexof input inputdialog inputlist inputrestore inputsave inputsecret insert interrupt invert isdirectory isinf islocked isnan items jobclose jobpid jobresize jobsend jobstart jobstop jobwait join json_decode json_encode keys keytrans last_buffer_nr len libcall libcallnr line line2byte lispindent list2blob list2str localtime log log10 luaeval map maparg mapcheck maplist mapnew mapset match matchadd matchaddpos matcharg matchbufline matchdelete matchend matchfuzzy matchfuzzypos matchlist matchstr matchstrlist matchstrpos max menu_get
syn keyword vimFuncName contained  menu_info min mkdir mode msgpackdump msgpackparse nextnonblank nr2char nvim__buf_debug_extmarks nvim__buf_redraw_range nvim__buf_stats nvim__get_lib_dir nvim__get_runtime nvim__id nvim__id_array nvim__id_dictionary nvim__id_float nvim__inspect_cell nvim__invalidate_glyph_cache nvim__runtime_inspect nvim__screenshot nvim__stats nvim__unpack nvim_buf_add_highlight nvim_buf_attach nvim_buf_clear_highlight nvim_buf_clear_namespace nvim_buf_create_user_command nvim_buf_del_extmark nvim_buf_del_keymap nvim_buf_del_mark nvim_buf_del_user_command nvim_buf_del_var nvim_buf_delete nvim_buf_get_changedtick nvim_buf_get_commands nvim_buf_get_extmark_by_id nvim_buf_get_extmarks nvim_buf_get_keymap nvim_buf_get_lines nvim_buf_get_mark nvim_buf_get_name nvim_buf_get_number nvim_buf_get_offset nvim_buf_get_option nvim_buf_get_text
syn keyword vimFuncName contained  nvim_buf_get_var nvim_buf_is_loaded nvim_buf_is_valid nvim_buf_line_count nvim_buf_set_extmark nvim_buf_set_keymap nvim_buf_set_lines nvim_buf_set_mark nvim_buf_set_name nvim_buf_set_option nvim_buf_set_text nvim_buf_set_var nvim_buf_set_virtual_text nvim_call_dict_function nvim_call_function nvim_clear_autocmds nvim_cmd nvim_command nvim_command_output nvim_complete_set nvim_create_augroup nvim_create_autocmd nvim_create_buf nvim_create_namespace nvim_create_user_command nvim_del_augroup_by_id nvim_del_augroup_by_name nvim_del_autocmd nvim_del_current_line nvim_del_keymap nvim_del_mark nvim_del_user_command nvim_del_var nvim_echo nvim_err_write nvim_err_writeln nvim_eval nvim_eval_statusline nvim_exec nvim_exec2 nvim_exec_autocmds nvim_feedkeys nvim_get_all_options_info nvim_get_autocmds nvim_get_chan_info
syn keyword vimFuncName contained  nvim_get_color_by_name nvim_get_color_map nvim_get_commands nvim_get_context nvim_get_current_buf nvim_get_current_line nvim_get_current_tabpage nvim_get_current_win nvim_get_hl nvim_get_hl_by_id nvim_get_hl_by_name nvim_get_hl_id_by_name nvim_get_hl_ns nvim_get_keymap nvim_get_mark nvim_get_mode nvim_get_namespaces nvim_get_option nvim_get_option_info nvim_get_option_info2 nvim_get_option_value nvim_get_proc nvim_get_proc_children nvim_get_runtime_file nvim_get_var nvim_get_vvar nvim_input nvim_input_mouse nvim_list_bufs nvim_list_chans nvim_list_runtime_paths nvim_list_tabpages nvim_list_uis nvim_list_wins nvim_load_context nvim_notify nvim_open_term nvim_open_win nvim_out_write nvim_parse_cmd nvim_parse_expression nvim_paste nvim_put nvim_replace_termcodes nvim_select_popupmenu_item nvim_set_current_buf
syn keyword vimFuncName contained  nvim_set_current_dir nvim_set_current_line nvim_set_current_tabpage nvim_set_current_win nvim_set_hl nvim_set_hl_ns nvim_set_hl_ns_fast nvim_set_keymap nvim_set_option nvim_set_option_value nvim_set_var nvim_set_vvar nvim_strwidth nvim_tabpage_del_var nvim_tabpage_get_number nvim_tabpage_get_var nvim_tabpage_get_win nvim_tabpage_is_valid nvim_tabpage_list_wins nvim_tabpage_set_var nvim_tabpage_set_win nvim_win_close nvim_win_del_var nvim_win_get_buf nvim_win_get_config nvim_win_get_cursor nvim_win_get_height nvim_win_get_number nvim_win_get_option nvim_win_get_position nvim_win_get_tabpage nvim_win_get_var nvim_win_get_width nvim_win_hide nvim_win_is_valid nvim_win_set_buf nvim_win_set_config nvim_win_set_cursor nvim_win_set_height nvim_win_set_hl_ns nvim_win_set_option nvim_win_set_var nvim_win_set_width
syn keyword vimFuncName contained  nvim_win_text_height or pathshorten perleval pow prevnonblank printf prompt_getprompt prompt_setcallback prompt_setinterrupt prompt_setprompt pum_getpos pumvisible py3eval pyeval pyxeval rand range readblob readdir readfile reduce reg_executing reg_recorded reg_recording reltime reltimefloat reltimestr remove rename repeat resolve reverse round rpcnotify rpcrequest rpcstart rpcstop rubyeval screenattr screenchar screenchars screencol screenpos screenrow screenstring search searchcount searchdecl searchpair searchpairpos searchpos serverlist serverstart serverstop setbufline setbufvar setcellwidths setcharpos setcharsearch setcmdline setcmdpos setcursorcharpos setenv setfperm setline setloclist setmatches setpos setqflist setreg settabvar settabwinvar settagstack setwinvar sha256 shellescape shiftwidth sign_define
syn keyword vimFuncName contained  sign_getdefined sign_getplaced sign_jump sign_place sign_placelist sign_undefine sign_unplace sign_unplacelist simplify sin sinh slice sockconnect sort soundfold spellbadword spellsuggest split sqrt srand state stdioopen stdpath str2float str2list str2nr strcharlen strcharpart strchars strdisplaywidth strftime strgetchar stridx string strlen strpart strptime strridx strtrans strutf16len strwidth submatch substitute swapfilelist swapinfo swapname synID synIDattr synIDtrans synconcealed synstack system systemlist tabpagebuflist tabpagenr tabpagewinnr tagfiles taglist tan tanh tempname termopen test_garbagecollect_now test_write_list_log timer_info timer_pause timer_start timer_stop timer_stopall tolower toupper tr trim trunc type undofile undotree uniq utf16idx values virtcol virtcol2col visualmode wait wildmenumode
syn keyword vimFuncName contained  win_execute win_findbuf win_getid win_gettype win_gotoid win_id2tabwin win_id2win win_move_separator win_move_statusline win_screenpos win_splitmove winbufnr wincol windowsversion winheight winlayout winline winnr winrestcmd winrestview winsaveview winwidth wordcount writefile xor
