From: Bram Moolenaar Date: Fri, 2 Jul 2010 18:20:09 +0000 (+0200) Subject: Make updating text for conceal mode simpler. A few compiler warning fixes. X-Git-Tag: v7.3~290 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2c0350c67736b0e054718fb5bf136147ee2261e;p=vim Make updating text for conceal mode simpler. A few compiler warning fixes. --- diff --git a/runtime/doc/Makefile b/runtime/doc/Makefile index a8a6410d5..706894325 100644 --- a/runtime/doc/Makefile +++ b/runtime/doc/Makefile @@ -168,6 +168,7 @@ HTMLS = \ gui_x11.html \ hangulin.html \ hebrew.html \ + helphelp.html \ howto.html \ if_cscop.html \ if_mzsch.html \ diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index da5681643..743c712df 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1352,6 +1352,7 @@ The commands are sorted on the non-optional part of their name. |:options| :opt[ions] open the options-window |:ounmap| :ou[nmap] like ":unmap" but for Operator-pending mode |:ounmenu| :ounme[nu] remove menu for Operator-pending mode +|:ownsyntax| :ow[nsyntax] set new local syntax highlight for this window |:pclose| :pc[lose] close preview window |:pedit| :ped[it] edit file in the preview window |:perl| :pe[rl] execute Perl command diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 96c5cfbb5..09336cda6 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -647,6 +647,7 @@ Short explanation of each option: *option-list* 'complete' 'cpt' specify how Insert mode completion works 'completefunc' 'cfu' function to be used for Insert mode completion 'completeopt' 'cot' options for Insert mode completion +'conceallevel' 'conc' whether concealable text is shown or hidden 'confirm' 'cf' ask what to do about unsaved/read-only files 'conskey' 'consk' get keys directly from console (MS-DOS only) 'copyindent' 'ci' make 'autoindent' use existing indent structure @@ -658,6 +659,7 @@ Short explanation of each option: *option-list* 'cscopetag' 'cst' use cscope for tag commands 'cscopetagorder' 'csto' determines ":cstag" search order 'cscopeverbose' 'csverb' give messages when adding a cscope database +'cursorbind' 'crb' move cursor in window as it moves in other windows 'cursorcolumn' 'cuc' highlight the screen column of the cursor 'cursorline' 'cul' highlight the screen line of the cursor 'debug' set to "msg" to see all error messages diff --git a/runtime/doc/tags b/runtime/doc/tags index 35fbdd9fe..fe515e22f 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -1682,6 +1682,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* 32.1 usr_32.txt /*32.1* 32.2 usr_32.txt /*32.2* 32.3 usr_32.txt /*32.3* +32.4 usr_32.txt /*32.4* 40.1 usr_40.txt /*40.1* 40.2 usr_40.txt /*40.2* 40.3 usr_40.txt /*40.3* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index a0675ec0d..d6f6c1207 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -30,11 +30,16 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. *known-bugs* -------------------- Known bugs and current work ----------------------- +Bug in undo, using freed memory. (Dominique Pelle, Jul 1) + Cursor positioning wrong with 0x200e character. (John Becket, 2010 May 6) E315 when trying to change a file in FileChangedRO autocommand event. (Dominique Pelle, 2010 Apr 30) +Bug: searching for tags file uses 'suffixesadd', should not happen. (Dominique +Pelle, 2010 June 28) + When directory "/tmp/tags" contains "tags1" and "tags2", setting 'tags' to "/tmp/tags/*" doesn't pick up these files. (Simon Ruggier, 2010 Mar 17) @@ -74,6 +79,9 @@ Looks like only bash can do it. (Yakov Lerner) Need for CursorHold that retriggers. Use a key that doesn't do anything, or a function that resets did_cursorhold. +Cscope "cs add" stopped working somewhat before 7.2.438. (Gary Johnson, 2010 +Jun 29) Caused by 7.2.433? + I often see pasted text (from Firefox, to Vim in xterm) appear twice. Also, Vim in xterm sometimes loses copy/paste ability (probably after running an external command). @@ -984,8 +992,6 @@ visible. GTK: when setting 'columns' in a startup script and doing ":vertical diffsplit" the window isn't redrawn properly, see two vertical bars. -GTK: file chooser is disabled. Patch by Tim Starling, 2009 Nov 13. - The magic clipboard format "VimClipboard2" appears in several places. Should be only one. @@ -1083,16 +1089,17 @@ When switching between windows the cursor is often put in the middle. Remember the relative position and restore that, just like lnum and col are restored. (Luc St-Louis) +Patch to support horizontal scroll wheel in GTK. Untested. (Bjorn Winckler, +2010 Jun 30) + Vim 7.3: - using NSIS 2.46: install on Windows 7 works, but no "Edit with Vim" menu. Use register_shell_extension()? Patch from Geoffrey Reilly, 2010 Jun 22 -- Patch for conceal feature from Vince, 2010 June 16. - Needs some more testing, better patch is coming. -- implement ":earlier 1f" (f for file)? - Also add ":earlier 1d" (d for day). - Something like changenr() to see the "file saved" marker? +- Patch for conceal feature from Vince, 2010 Jul 1. + fix insert mode, cursor up/down? + CTRL-O j doesn't trigger cursormoved event? - in August remove UF_VERSION_CRYPT_PREV and UF_VERSION_PREV. Patches to include: - Patch for Lisp support with ECL (Mikael Jansson, 2008 Oct 25) @@ -1102,8 +1109,11 @@ Patches to include: - Patch to support :browse for more commands. (Lech Lorens, 2009 Jul 18) - Patch to improve javascript indenting. (Hari Kumar G, 2010 May 22) - Patch to use return value of 'formatexpr'. (James Vega, 2010 Jun 16) +- Patch for gtk main_loop() to enable GtkFileChooser. (James Vega, 2010 Jun 28) + Same as this one? GTK: file chooser is disabled. Patch by Tim Starling, + 2009 Nov 13. - Patch to make CTRL-L work better with 'ignorecase' and 'smarcase'. (Martin - Toft, 2010 Jun 8, Jun 16) + Toft, 2010 Jun 8, Jun 16, Jun 30) - Patch to add diff functionality to 2html.vim. (Christian Brabandt, 2009 Dec 15) - Win32: patch for better font scaling. (George Reilly, 2009 Mar 26) @@ -1356,16 +1366,6 @@ Vi incompatibility: thing. (only repeat insert for the first line). -GTK+ 1 (OK in GTK 2): -8 When using "gvim -geom 40x30" or setting 'columns' in .gvimrc or with a - GUIEnter autocommand, the width is still set to fit the toolbar. Also - happens when changing the font. How to avoid that the toolbar specifies - the minimal window width? -8 When using a theme with different scrollbars (gtkstep), the scrollbars can - be too narrow. (Drazen Kacar) -8 Font "7x14" has a bold version "7x14bold". Try to find the bold font by - appending "bold" when there are not 14 dashes. - GTK+ GUI known bugs: 9 Crash with X command server over ssh. (Ciaran McCreesh, 2006 Feb 6) 8 GTK 2: Combining UTF-8 characters not displayed properly in menus (Mikolaj @@ -2433,8 +2433,6 @@ Folding: edit version.c Can editing version.c twice be avoided? - 'foldmethod' "textobject": fold on sections and paragraph text objects. -- Add 'hidecomment' option: don't display comments in /* */ and after //. - Or is the conceal patch from Vince Negri a more generic solution? - "zuf": undo change in manual fold. "zUf" redo change in manual fold. How to implement this? - "zJ" command: add the line or fold below the fold in the fold under the diff --git a/runtime/indent/vhdl.vim b/runtime/indent/vhdl.vim index 9940cc5b5..a849a2d13 100644 --- a/runtime/indent/vhdl.vim +++ b/runtime/indent/vhdl.vim @@ -1,8 +1,8 @@ " VHDL indent ('93 syntax) " Language: VHDL " Maintainer: Gerald Lai -" Version: 1.54 -" Last Change: 2007 Aug 17 +" Version: 1.55 +" Last Change: 2010 Jun 27 " URL: http://www.vim.org/scripts/script.php?script_id=1450 " only load this indent file when no other was loaded @@ -156,7 +156,7 @@ function GetVHDLindent() let ps = getline(pn) while pn > 0 let t = indent(pn) - if ps !~ '^\s*--' && t < ind + if ps !~ '^\s*--' && (t < ind || (t == ind && m == 3)) " make sure one of these is true " keywords: variable + "<=" without ";" ending " where: start of previous non-comment line diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 12e934f2d..01654c56f 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -482,6 +482,11 @@ if has("scrollbind") call append("$", "scrollopt\t\"ver\", \"hor\" and/or \"jump\"; list of options for 'scrollbind'") call OptionG("sbo", &sbo) endif +if has("cursorbind") + call append("$", "cursorbind\tthis window's cursor moves together with other bound windows") + call append("$", "\t(local to window)") + call BinOptionL("crb") +endif call Header("multiple tab pages") diff --git a/runtime/syntax/tex.vim b/runtime/syntax/tex.vim index 6235df118..c6928cffd 100644 --- a/runtime/syntax/tex.vim +++ b/runtime/syntax/tex.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: TeX " Maintainer: Dr. Charles E. Campbell, Jr. -" Last Change: Apr 14, 2010 -" Version: 47 +" Last Change: Jun 24, 2010 +" Version: 48 " URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax " " Notes: {{{1 @@ -125,6 +125,10 @@ if !exists("tex_no_math") syn cluster texSubSectionGroup contains=texSubSubSectionZone,texParaZone syn cluster texSubSubSectionGroup contains=texParaZone syn cluster texParaGroup contains=texSubParaZone + if has("conceal") && &enc == 'utf-8' + syn cluster texMathZoneGroup add=texGreek,texSuperscript,texSubscript + syn cluster texMathMatchGroup add=texGreek,texSuperscript,texSubscript + endif endif " Try to flag {} and () mismatches: {{{1 @@ -337,11 +341,11 @@ if !exists("tex_no_math") call TexNewMathZone("L","xxalignat",0) " Inline Math Zones: {{{2 - syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup - syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend contains=@texMathZoneGroup - syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup - syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" keepend contains=@texMathZoneGroup - syn region texMathZoneZ matchgroup=texStatement start="\\ensuremath\s*{" matchgroup=texStatement end="}" end="%stopzone\>" contains=@texMathZoneGroup + syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup + syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend contains=@texMathZoneGroup + syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup + syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" keepend contains=@texMathZoneGroup + syn region texMathZoneZ matchgroup=texStatement start="\\ensuremath\s*{" matchgroup=texStatement end="}" end="%stopzone\>" contains=@texMathZoneGroup syn match texMathOper "[_^=]" contained @@ -465,6 +469,118 @@ if !exists("g:tex_no_error") syn region texStyleMatcher matchgroup=Delimiter start="\[" end="]" contains=@texStyleGroup,texError contained endif +" support for +if has("conceal") && &enc == 'utf-8' + syn match texGreek '\\alpha\>' contained conceal cchar=α + syn match texGreek '\\beta\>' contained conceal cchar=β + syn match texGreek '\\gamma\>' contained conceal cchar=γ + syn match texGreek '\\delta\>' contained conceal cchar=δ + syn match texGreek '\\epsilon\>' contained conceal cchar=ϵ + syn match texGreek '\\varepsilon\>' contained conceal cchar=ε + syn match texGreek '\\zeta\>' contained conceal cchar=ζ + syn match texGreek '\\eta\>' contained conceal cchar=η + syn match texGreek '\\theta\>' contained conceal cchar=θ + syn match texGreek '\\vartheta\>' contained conceal cchar=ϑ + syn match texGreek '\\kappa\>' contained conceal cchar=κ + syn match texGreek '\\lambda\>' contained conceal cchar=λ + syn match texGreek '\\mu\>' contained conceal cchar=μ + syn match texGreek '\\nu\>' contained conceal cchar=ν + syn match texGreek '\\xi\>' contained conceal cchar=ξ + syn match texGreek '\\pi\>' contained conceal cchar=π + syn match texGreek '\\varpi\>' contained conceal cchar=ϖ + syn match texGreek '\\rho\>' contained conceal cchar=ρ + syn match texGreek '\\varrho\>' contained conceal cchar=ϱ + syn match texGreek '\\sigma\>' contained conceal cchar=σ + syn match texGreek '\\varsigma\>' contained conceal cchar=ς + syn match texGreek '\\tau\>' contained conceal cchar=τ + syn match texGreek '\\upsilon\>' contained conceal cchar=υ + syn match texGreek '\\phi\>' contained conceal cchar=φ + syn match texGreek '\\varphi\>' contained conceal cchar=ϕ + syn match texGreek '\\chi\>' contained conceal cchar=χ + syn match texGreek '\\psi\>' contained conceal cchar=ψ + syn match texGreek '\\omega\>' contained conceal cchar=ω + syn match texGreek '\\Gamma\>' contained conceal cchar=Γ + syn match texGreek '\\Delta\>' contained conceal cchar=Δ + syn match texGreek '\\Theta\>' contained conceal cchar=Θ + syn match texGreek '\\Lambda\>' contained conceal cchar=Λ + syn match texGreek '\\Xi\>' contained conceal cchar=Χ + syn match texGreek '\\Pi\>' contained conceal cchar=Π + syn match texGreek '\\Sigma\>' contained conceal cchar=Σ + syn match texGreek '\\Upsilon\>' contained conceal cchar=Υ + syn match texGreek '\\Phi\>' contained conceal cchar=Φ + syn match texGreek '\\Psi\>' contained conceal cchar=Ψ + syn match texGreek '\\Omega\>' contained conceal cchar=Ω + syn match texSuperscript '\^0' contained conceal cchar=⁰ + syn match texSuperscript '\^1' contained conceal cchar=¹ + syn match texSuperscript '\^2' contained conceal cchar=² + syn match texSuperscript '\^3' contained conceal cchar=³ + syn match texSuperscript '\^4' contained conceal cchar=⁴ + syn match texSuperscript '\^5' contained conceal cchar=⁵ + syn match texSuperscript '\^6' contained conceal cchar=⁶ + syn match texSuperscript '\^7' contained conceal cchar=⁷ + syn match texSuperscript '\^8' contained conceal cchar=⁸ + syn match texSuperscript '\^9' contained conceal cchar=⁹ + syn match texSuperscript '\^a' contained conceal cchar=ᵃ + syn match texSuperscript '\^b' contained conceal cchar=ᵇ + syn match texSuperscript '\^c' contained conceal cchar=ᶜ + syn match texSuperscript '\^d' contained conceal cchar=ᵈ + syn match texSuperscript '\^e' contained conceal cchar=ᵉ + syn match texSuperscript '\^f' contained conceal cchar=ᶠ + syn match texSuperscript '\^g' contained conceal cchar=ᵍ + syn match texSuperscript '\^h' contained conceal cchar=ʰ + syn match texSuperscript '\^i' contained conceal cchar=ⁱ + syn match texSuperscript '\^j' contained conceal cchar=ʲ + syn match texSuperscript '\^k' contained conceal cchar=ᵏ + syn match texSuperscript '\^l' contained conceal cchar=ˡ + syn match texSuperscript '\^m' contained conceal cchar=ᵐ + syn match texSuperscript '\^n' contained conceal cchar=ⁿ + syn match texSuperscript '\^o' contained conceal cchar=ᵒ + syn match texSuperscript '\^p' contained conceal cchar=ᵖ + syn match texSuperscript '\^r' contained conceal cchar=ʳ + syn match texSuperscript '\^s' contained conceal cchar=ˢ + syn match texSuperscript '\^t' contained conceal cchar=ᵗ + syn match texSuperscript '\^u' contained conceal cchar=ᵘ + syn match texSuperscript '\^v' contained conceal cchar=ᵛ + syn match texSuperscript '\^w' contained conceal cchar=ʷ + syn match texSuperscript '\^x' contained conceal cchar=ˣ + syn match texSuperscript '\^y' contained conceal cchar=ʸ + syn match texSuperscript '\^z' contained conceal cchar=ᶻ + syn match texSuperscript '\^A' contained conceal cchar=ᴬ + syn match texSuperscript '\^B' contained conceal cchar=ᴮ + syn match texSuperscript '\^D' contained conceal cchar=ᴰ + syn match texSuperscript '\^E' contained conceal cchar=ᴱ + syn match texSuperscript '\^G' contained conceal cchar=ᴳ + syn match texSuperscript '\^H' contained conceal cchar=ᴴ + syn match texSuperscript '\^I' contained conceal cchar=ᴵ + syn match texSuperscript '\^J' contained conceal cchar=ᴶ + syn match texSuperscript '\^K' contained conceal cchar=ᴷ + syn match texSuperscript '\^L' contained conceal cchar=ᴸ + syn match texSuperscript '\^M' contained conceal cchar=ᴹ + syn match texSuperscript '\^N' contained conceal cchar=ᴺ + syn match texSuperscript '\^O' contained conceal cchar=ᴼ + syn match texSuperscript '\^P' contained conceal cchar=ᴾ + syn match texSuperscript '\^R' contained conceal cchar=ᴿ + syn match texSuperscript '\^T' contained conceal cchar=ᵀ + syn match texSuperscript '\^U' contained conceal cchar=ᵁ + syn match texSuperscript '\^W' contained conceal cchar=ᵂ + syn match texSubscript '_0' contained conceal cchar=₀ + syn match texSubscript '_1' contained conceal cchar=₁ + syn match texSubscript '_2' contained conceal cchar=₂ + syn match texSubscript '_3' contained conceal cchar=₃ + syn match texSubscript '_4' contained conceal cchar=₄ + syn match texSubscript '_5' contained conceal cchar=₅ + syn match texSubscript '_6' contained conceal cchar=₆ + syn match texSubscript '_7' contained conceal cchar=₇ + syn match texSubscript '_8' contained conceal cchar=₈ + syn match texSubscript '_9' contained conceal cchar=₉ + syn match texSubscript '_a' contained conceal cchar=ₐ + syn match texSubscript '_e' contained conceal cchar=ₑ + syn match texSubscript '_i' contained conceal cchar=ᵢ + syn match texSubscript '_o' contained conceal cchar=ₒ + syn match texSubscript '_u' contained conceal cchar=ᵤ +endif + +" --------------------------------------------------------------------- " LaTeX synchronization: {{{1 syn sync maxlines=200 syn sync minlines=50 @@ -487,6 +603,7 @@ if !exists("tex_no_math") syn sync match texSyncMathZoneA groupthere NONE "\\\(sub\)*section\>" endif +" --------------------------------------------------------------------- " Highlighting: {{{1 if did_tex_syntax_inits == 1 let did_tex_syntax_inits= 2 diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 65de0b51b..46667486a 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -1,8 +1,8 @@ " Vim syntax file -" Language: Vim 7.2 script +" Language: Vim 7.3 script " Maintainer: Dr. Charles E. Campbell, Jr. -" Last Change: Nov 18, 2009 -" Version: 7.2-95 +" Last Change: June 24, 2010 +" Version: 7.3-1 " Automatically generated keyword lists: {{{1 " Quit when a syntax file was already loaded {{{2 @@ -16,31 +16,31 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX syn cluster vimCommentGroup contains=vimTodo,@Spell " regular vim commands {{{2 -syn keyword vimCommand contained abc[lear] argdo argu[ment] bel[owright] bN[ext] breakd[el] b[uffer] caddb[uffer] cb[uffer] cex[pr] cg[etfile] checkt[ime] cnew[er] col[der] con[tinue] cq[uit] delc[ommand] diffoff diffu[pdate] dr[op] echom[sg] em[enu] en[dif] ex files fini[sh] foldc[lose] for grepa[dd] helpg[rep] iabc[lear] imapc[lear] j[oin] keepj[umps] laddf[ile] lb[uffer] le[ft] lfir[st] lgr[ep] ll lmapc[lear] lnf[ile] lockv[ar] lp[revious] lv[imgrep] ma[rk] mk[exrc] mkv[imrc] mz[scheme] N[ext] ol[dfiles] opt[ions] perld[o] pp[op] P[rint] promptr[epl] ptj[ump] ptp[revious] pw[d] q[uit] redi[r] reg[isters] rew[ind] rubyd[o] sal[l] sba[ll] sbn[ext] sb[uffer] setf[iletype] sfir[st] sim[alt] sm[ap] sN[ext] snoremenu spe[llgood] spellw[rong] sta[g] stj[ump] sun[hide] sv[iew] tabc[lose] tabfir[st] tabn[ext] tabr[ewind] tc[l] tf[irst] tm to[pleft] ts[elect] u[ndo] unlo[ckvar] vert[ical] vi[sual] vs[plit] windo wN[ext] w[rite] xa[ll] xmenu xnoremenu -syn keyword vimCommand contained abo[veleft] arge[dit] as[cii] bf[irst] bo[tright] breakl[ist] buffers cad[dexpr] cc cf[ile] c[hange] cla[st] cn[ext] colo[rscheme] cope[n] cr[ewind] d[elete] diffpatch dig[raphs] ds[earch] echon emenu* endt[ry] exi[t] filetype fir[st] folddoc[losed] fu[nction] ha[rdcopy] helpt[ags] if is[earch] ju[mps] kee[pmarks] lan[guage] lc[d] lefta[bove] lgetb[uffer] lgrepa[dd] lla[st] lnew[er] lNf[ile] lol[der] lr[ewind] lvimgrepa[dd] marks mks[ession] mod[e] nbkey nmapc[lear] omapc[lear] pc[lose] po[p] pre[serve] profd[el] ps[earch] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red[o] res[ize] ri[ght] rubyf[ile] san[dbox] sbf[irst] sbN[ext] scripte[ncoding] setg[lobal] sh[ell] sla[st] sme sni[ff] sor[t] spelli[nfo] sp[lit] startg[replace] st[op] sunme syncbind tabd[o] tabl[ast] tabN[ext] tabs tcld[o] th[row] tm[enu] tp[revious] tu undoj[oin] up[date] vie[w] viu[sage] wa[ll] winp[os] wp[revious] ws[verb] x[it] XMLent xunme -syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] bp[revious] br[ewind] bun[load] caddf[ile] ccl[ose] cfir[st] changes cl[ist] cN[ext] comc[lear] co[py] cuna[bbrev] delf[unction] diffpu[t] di[splay] dsp[lit] e[dit] endfo[r] endw[hile] exu[sage] fina[lly] fix[del] foldd[oopen] go[to] h[elp] hid[e] ij[ump] isp[lit] k laddb[uffer] la[st] lch[dir] lex[pr] lgete[xpr] lh[elpgrep] lli[st] lne[xt] lo[adview] lop[en] ls lw[indow] mat[ch] mksp[ell] m[ove] new noh[lsearch] on[ly] ped[it] popu prev[ious] prof[ile] pta[g] ptn[ext] pts[elect] py[thon] r[ead] redr[aw] ret[ab] rightb[elow] ru[ntime] sa[rgument] sbl[ast] sbp[revious] scrip[tnames] setl[ocal] sign sl[eep] smenu sno[magic] so[urce] spellr[epall] spr[evious] star[tinsert] stopi[nsert] sunmenu t tabe[dit] tabm[ove] tabo[nly] ta[g] tclf[ile] tj[ump] tn[ext] tr[ewind] tu[nmenu] undol[ist] verb[ose] vim[grep] vmapc[lear] wh[ile] win[size] wq wv[iminfo] xmapc[lear] XMLns xunmenu -syn keyword vimCommand contained arga[dd] argl[ocal] ba[ll] bm[odified] brea[k] bro[wse] bw[ipeout] cal[l] cd cgetb[uffer] chd[ir] clo[se] cnf[ile] comp[iler] cpf[ile] cw[indow] delm[arks] diffsplit dj[ump] earlier el[se] endf[unction] ene[w] f[ile] fin[d] fo[ld] foldo[pen] gr[ep] helpf[ind] his[tory] il[ist] iuna[bbrev] keepalt lad[dexpr] later lcl[ose] lf[ile] lg[etfile] l[ist] lmak[e] lN[ext] loc[kmarks] lpf[ile] lt[ag] mak[e] menut[ranslate] mkvie[w] mzf[ile] n[ext] nu[mber] o[pen] pe[rl] popu[p] p[rint] promptf[ind] ptf[irst] ptN[ext] pu[t] qa[ll] rec[over] redraws[tatus] retu[rn] rub[y] rv[iminfo] sav[eas] sbm[odified] sbr[ewind] se[t] sf[ind] sil[ent] sm[agic] sn[ext] snoreme spelld[ump] spellu[ndo] sre[wind] startr[eplace] sts[elect] sus[pend] tab tabf[ind] tabnew tabp[revious] tags te[aroff] tl[ast] tN[ext] try una[bbreviate] unh[ide] ve[rsion] vimgrepa[dd] vne[w] winc[md] wn[ext] wqa[ll] X xme xnoreme y[ank] -syn keyword vimCommand contained argd[elete] ar[gs] bd[elete] bn[ext] breaka[dd] bufdo cabc[lear] cat[ch] ce[nter] cgete[xpr] che[ckpath] cmapc[lear] cNf[ile] conf[irm] cp[revious] debugg[reedy] diffg[et] diffthis dl[ist] echoe[rr] elsei[f] +syn keyword vimCommand contained abc[lear] argdo argu[ment] bel[owright] bN[ext] breakd[el] b[uffer] caddb[uffer] cb[uffer] cex[pr] cg[etfile] checkt[ime] cnew[er] col[der] con[tinue] cq[uit] delc[ommand] diffoff diffu[pdate] dr[op] echoe[rr] el[se] endfo[r] endw[hile] f[ile] fin[d] fo[ld] foldo[pen] gr[ep] his[tory] il[ist] iuna[bbrev] keepalt lad[dexpr] later lcl[ose] lf[ile] lg[etfile] ll lmapc[lear] lnf[ile] lockv[ar] lp[revious] lv[imgrep] ma[rk] mk[exrc] mkv[imrc] mz[scheme] new noh[lsearch] on[ly] ped[it] popu prev[ious] prof[ile] pta[g] ptn[ext] pts[elect] py[thon] r[ead] redr[aw] ret[ab] rightb[elow] rundo san[dbox] sbf[irst] sbN[ext] scripte[ncoding] setg[lobal] sh[ell] sla[st] sme sni[ff] sor[t] spelli[nfo] sp[lit] startg[replace] st[op] sunme syncbind tabd[o] tabl[ast] tabN[ext] tabs tcld[o] th[row] tm[enu] tp[revious] tu undoj[oin] uns[ilent] vert[ical] vi[sual] wa[ll] winp[os] wp[revious] ws[verb] xa[ll] xmenu xnoremenu +syn keyword vimCommand contained abo[veleft] arge[dit] as[cii] bf[irst] bo[tright] breakl[ist] buffers cad[dexpr] cc cf[ile] c[hange] cla[st] cn[ext] colo[rscheme] cope[n] cr[ewind] d[elete] diffpatch dig[raphs] ds[earch] echom[sg] elsei[f] endf[unction] ene[w] files fini[sh] foldc[lose] for grepa[dd] iabc[lear] imapc[lear] j[oin] keepj[umps] laddf[ile] lb[uffer] le[ft] lfir[st] lgr[ep] lla[st] lnew[er] lNf[ile] lol[der] lr[ewind] lvimgrepa[dd] marks mks[ession] mod[e] nbc[lose] n[ext] nu[mber] o[pen] pe[rl] popu[p] p[rint] promptf[ind] ptf[irst] ptN[ext] pu[t] qa[ll] rec[over] redraws[tatus] retu[rn] rub[y] ru[ntime] sa[rgument] sbl[ast] sbp[revious] scrip[tnames] setl[ocal] sign sl[eep] smenu sno[magic] so[urce] spellr[epall] spr[evious] star[tinsert] stopi[nsert] sunmenu t tabe[dit] tabm[ove] tabo[nly] ta[g] tclf[ile] tj[ump] tn[ext] tr[ewind] tu[nmenu] undol[ist] up[date] vie[w] vmapc[lear] wh[ile] win[size] wq wundo x[it] XMLent xunme +syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] bp[revious] br[ewind] bun[load] caddf[ile] ccl[ose] cfir[st] changes cl[ist] cN[ext] comc[lear] co[py] cuna[bbrev] delf[unction] diffpu[t] di[splay] dsp[lit] echon em[enu] en[dif] ex filetype fir[st] folddoc[losed] fu[nction] ha[rdcopy] if is[earch] ju[mps] kee[pmarks] lan[guage] lc[d] lefta[bove] lgetb[uffer] lgrepa[dd] lli[st] lne[xt] lo[adview] lop[en] ls lw[indow] mat[ch] mksp[ell] m[ove] nb[key] N[ext] ol[dfiles] opt[ions] perld[o] pp[op] P[rint] promptr[epl] ptj[ump] ptp[revious] pw[d] q[uit] redi[r] reg[isters] rew[ind] rubyd[o] rv[iminfo] sav[eas] sbm[odified] sbr[ewind] se[t] sf[ind] sil[ent] sm[agic] sn[ext] snoreme spelld[ump] spellu[ndo] sre[wind] startr[eplace] sts[elect] sus[pend] tab tabf[ind] tabnew tabp[revious] tags te[aroff] tl[ast] tN[ext] try una[bbreviate] unh[ide] verb[ose] vim[grep] vne[w] winc[md] wn[ext] wqa[ll] wv[iminfo] xmapc[lear] XMLns xunmenu +syn keyword vimCommand contained arga[dd] argl[ocal] ba[ll] bm[odified] brea[k] bro[wse] bw[ipeout] cal[l] cd cgetb[uffer] chd[ir] clo[se] cnf[ile] comp[iler] cpf[ile] cw[indow] delm[arks] diffsplit dj[ump] earlier e[dit] emenu* endt[ry] exi[t] fina[lly] fix[del] foldd[oopen] go[to] hid[e] ij[ump] isp[lit] k laddb[uffer] la[st] lch[dir] lex[pr] lgete[xpr] l[ist] lmak[e] lN[ext] loc[kmarks] lpf[ile] lt[ag] mak[e] menut[ranslate] mkvie[w] mzf[ile] nbs[tart] nmapc[lear] omapc[lear] pc[lose] po[p] pre[serve] profd[el] ps[earch] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red[o] res[ize] ri[ght] rubyf[ile] sal[l] sba[ll] sbn[ext] sb[uffer] setf[iletype] sfir[st] sim[alt] sm[ap] sN[ext] snoremenu spe[llgood] spellw[rong] sta[g] stj[ump] sun[hide] sv[iew] tabc[lose] tabfir[st] tabn[ext] tabr[ewind] tc[l] tf[irst] tm to[pleft] ts[elect] u[ndo] unlo[ckvar] ve[rsion] vimgrepa[dd] vs[plit] windo wN[ext] w[rite] X xme xnoreme y[ank] +syn keyword vimCommand contained argd[elete] ar[gs] bd[elete] bn[ext] breaka[dd] bufdo cabc[lear] cat[ch] ce[nter] cgete[xpr] che[ckpath] cmapc[lear] cNf[ile] conf[irm] cp[revious] debugg[reedy] diffg[et] diffthis dl[ist] syn match vimCommand contained "\