runtime(vim): Update base-syntax, match :debuggreedy count prefix
Commit:
https://github.com/vim/vim/commit/4a530a632bb220b9aec827a12ab211a563c5583d
Author: Doug Kearns <[email protected]>
Date: Mon Feb 3 18:59:09 2025 +0100
runtime(vim): Update base-syntax, match :debuggreedy count prefix
Match :0debuggreedy as a special case until better range/count support
is implemented.
closes: #16572
Signed-off-by: Doug Kearns <[email protected]>
Signed-off-by: Christian Brabandt <[email protected]>
diff --git a/runtime/syntax/generator/gen_syntax_vim.vim
b/runtime/syntax/generator/gen_syntax_vim.vim
index 92f988734..a994af54f 100644
--- a/runtime/syntax/generator/gen_syntax_vim.vim
+++ b/runtime/syntax/generator/gen_syntax_vim.vim
@@ -1,7 +1,7 @@
" Vim syntax file generator
" Language: Vim script
" Maintainer: Hirohito Higashi (h_east)
-" Last Change: 2024 Dec 29
+" Last Change: 2024 Feb 03
let s:keepcpo= &cpo
set cpo&vim
@@ -263,6 +263,7 @@ function s:get_vim_command_type(cmd_name)
call
catch
class
+ debuggreedy
def
delcommand
doautoall
diff --git a/runtime/syntax/generator/vim.vim.base
b/runtime/syntax/generator/vim.vim.base
index 802907358..c30034c14 100644
--- a/runtime/syntax/generator/vim.vim.base
+++ b/runtime/syntax/generator/vim.vim.base
@@ -2,7 +2,7 @@
" Language: Vim script
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
" Doug Kearns <[email protected]>
-" Last Change: 2025 Jan 20
+" Last Change: 2025 Feb 03
" Former Maintainer: Charles E. Campbell
" DO NOT CHANGE DIRECTLY.
@@ -202,9 +202,10 @@ syn match vimNumber '\%(^\|\A\)\zs#\x\{6}'
skipwhite nextgroup=vimGlobal,vimSub
syn case match
" All vimCommands are contained by vimIsCommand. {{{2
-syn cluster vimCmdList
contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimCall,vimCatch,vimConst,vimDef,vimDefFold,vimDelcommand,@vimEcho,vimEnddef,vimEndfunction,vimExecute,vimIsCommand,vimExtCmd,vimFor,vimFunction,vimFuncFold,vimGlobal,vimHighlight,vimLet,vimLoadkeymap,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimSet,vimSleep,vimSyntax,vimThrow,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate,@vim9CmdList
+syn cluster vimCmdList
contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimCall,vimCatch,vimConst,vimDebuggreedy,vimDef,vimDefFold,vimDelcommand,@vimEcho,vimEnddef,vimEndfunction,vimExecute,vimIsCommand,vimExtCmd,vimFor,vimFunction,vimFuncFold,vimGlobal,vimHighlight,vimLet,vimLoadkeymap,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimSet,vimSleep,vimSyntax,vimThrow,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate,@vim9CmdList
syn cluster vim9CmdList
contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
syn match vimCmdSep "[:|]\+" skipwhite
nextgroup=@vimCmdList,vimSubst1
+syn match vimCount contained "\d\+"
syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" nextgroup=vimBang
contains=vimCommand
syn match vimBang contained "!"
syn match vimVar contained "\<\h[a-zA-Z0-9#_]*\>"
@@ -240,6 +241,11 @@ syn keyword vimBehaveModel contained mswin xterm
" ====
syn match vimCall "\<call\=\>" skipwhite nextgroup=vimFunc
+" Debuggready {{{2
+" ===========
+" TODO: special-cased until generalised range/count support is implemented
+syn match vimDebuggreedy "\<0\=debugg\%[reedy]\>" contains=vimCount
+
" Exception Handling {{{2
syn keyword vimThrow th[row] skipwhite nextgroup=@vimExprList
syn keyword vimCatch cat[ch] skipwhite nextgroup=vimCatchPattern
@@ -1301,7 +1307,9 @@ if !exists("skip_vim_syntax_inits")
hi def link vimConst vimCommand
hi def link vimContinue Special
hi def link vimContinueComment vimComment
+ hi def link vimCount Number
hi def link vimCtrlChar SpecialChar
+ hi def link vimDebuggreedy vimCommand
hi def link vimDefComment vim9Comment
hi def link vimDefKey vimCommand
hi def link vimDefParam vimVar
diff --git a/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_00.dump
b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_00.dump
new file mode 100644
index 000000000..479c44aa7
--- /dev/null
+++ b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_00.dump
@@ -0,0 +1,20 @@
+>"+0#0000e05#ffffff0| |V|i|m| |:|d|e|b|u|g@1|r|e@1|d|y| |c|o|m@1|a|n|d|
+0#0000000&@48
+@75
+|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@63
+|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@62
+@75
+|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@52
+|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@52
+@75
+|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1||| |e+0#af5f00255&|c|h|o|
+0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@49
+|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|||
|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@49
+@75
+|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@61
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@60
+@75
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@75
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1||| |e+0#af5f00255&|c|h|o|
+0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47
+@57|1|,|1| @10|T|o|p|
diff --git a/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_01.dump
b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_01.dump
new file mode 100644
index 000000000..d1aa25210
--- /dev/null
+++ b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_01.dump
@@ -0,0 +1,20 @@
+| +0&#ffffff0@1|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@60
+@75
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|"+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@75
+@2>d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1||| |e+0#af5f00255&|c|h|o|
+0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|||
|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47
+|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63
+@75
+|d+0#af5f00255&|e|f| +0#0000000&|B|a|r|(+0#e000e06&|)| +0#0000000&@65
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@61
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@60
+@75
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1|#+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|#+0#0000e05&|
|c|o|m@1|e|n|t| +0#0000000&@50
+@75
+@2|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&@1||| |e+0#af5f00255&|c|h|o|
+0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47
+@2|0+0#e000002&|d+0#af5f00255&|e|b|u|g@1|r|e@1|d|y| +0#0000000&|||
|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47
+|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
+@57|1|9|,|3| @9|9|2|%|
diff --git a/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_02.dump
b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_02.dump
new file mode 100644
index 000000000..7bb07b6c5
--- /dev/null
+++ b/runtime/syntax/testdir/dumps/vim_ex_debuggreedy_02.dump
@@ -0,0 +1,20 @@
+|e+0#af5f00255#ffffff0|n|d@1|e|f| +0#0000000&@68
+> @74
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|3@1|,|0|-|1| @7|B|o|t|
diff --git a/runtime/syntax/testdir/input/vim_ex_debuggreedy.vim
b/runtime/syntax/testdir/input/vim_ex_debuggreedy.vim
new file mode 100644
index 000000000..965c543da
--- /dev/null
+++ b/runtime/syntax/testdir/input/vim_ex_debuggreedy.vim
@@ -0,0 +1,33 @@
+" Vim :debuggreedy command
+
+debuggreedy
+0debuggreedy
+
+debuggreedy " comment
+0debuggreedy " comment
+
+debuggreedy | echo "Foo"
+0debuggreedy | echo "Foo"
+
+function Foo()
+ debuggreedy
+ 0debuggreedy
+
+ debuggreedy " comment
+ 0debuggreedy " comment
+
+ debuggreedy | echo "Foo"
+ 0debuggreedy | echo "Foo"
+endfunction
+
+def Bar()
+ debuggreedy
+ 0debuggreedy
+
+ debuggreedy # comment
+ 0debuggreedy # comment
+
+ debuggreedy | echo "Foo"
+ 0debuggreedy | echo "Foo"
+enddef
+
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index b19a43522..6d4b6eeef 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -2,7 +2,7 @@
" Language: Vim script
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
" Doug Kearns <[email protected]>
-" Last Change: 2025 Jan 20
+" Last Change: 2025 Feb 03
" Former Maintainer: Charles E. Campbell
" DO NOT CHANGE DIRECTLY.
@@ -28,11 +28,11 @@ syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
" GEN_SYN_VIM: vimCommand normal, START_STR='syn keyword vimCommand
contained', END_STR='nextgroup=vimBang'
syn keyword vimCommand contained abo[veleft] al[l] ar[gs] arga[dd] argd[elete]
argdo argded[upe] arge[dit] argg[lobal] argl[ocal] argu[ment] as[cii] b[uffer]
bN[ext] ba[ll] bad[d] balt bd[elete] bel[owright] bf[irst] bl[ast] bm[odified]
bn[ext] bo[tright] bp[revious] br[ewind] brea[k] breaka[dd] breakd[el]
breakl[ist] bro[wse] buffers bufd[o] bun[load] bw[ipeout] c[hange] cN[ext]
cNf[ile] cabo[ve] cad[dbuffer] cadde[xpr] caddf[ile] caf[ter] cb[uffer]
cbe[fore] cbel[ow] cbo[ttom] cc ccl[ose] cd cdo ce[nter] cex[pr] cf[ile] cfd[o]
cfir[st] cg[etfile] cgetb[uffer] cgete[xpr] chd[ir] changes che[ckpath]
checkt[ime] chi[story] cl[ist] cla[st] clo[se] cle[arjumps] cn[ext] cnew[er]
cnf[ile] co[py] col[der] colo[rscheme] com[mand] comc[lear] comp[iler]
con[tinue] conf[irm] nextgroup=vimBang
-syn keyword vimCommand contained cons[t] cope[n] cp[revious] cpf[ile] cq[uit]
cr[ewind] cs[cope] cst[ag] cw[indow] d[elete] delm[arks] deb[ug] debugg[reedy]
defc[ompile] defe[r] delf[unction] di[splay] dif[fupdate] diffg[et] diffo[ff]
diffp[atch] diffpu[t] diffs[plit] difft[his] dig[raphs] disa[ssemble] dj[ump]
dli[st] dr[op] ds[earch] dsp[lit] e[dit] ea[rlier] el[se] em[enu] en[dif]
endfo[r] endt[ry] endw[hile] ene[w] ev[al] ex exi[t] exu[sage] f[ile] files
filet[ype] filt[er] fin[d] fina[lly] fini[sh] fir[st] fix[del] fo[ld]
foldc[lose] foldd[oopen] folddoc[losed] foldo[pen] g[lobal] go[to] gr[ep]
grepa[dd] gu[i] gv[im] h[elp] helpc[lose] helpf[ind] helpg[rep] helpt[ags]
ha[rdcopy] hi[ghlight] hid[e] his[tory] hor[izontal] ij[ump] il[ist] imp[ort]
int[ro] is[earch] nextgroup=vimBang
-syn keyword vimCommand contained isp[lit] j[oin] ju[mps] k kee[pmarks]
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] lcs[cope] ld[o] le[ft]
lefta[bove] lex[pr] leg[acy] lf[ile] lfd[o] lfir[st] lg[etfile] lgetb[uffer]
lgete[xpr] lgr[ep] lgrepa[dd] lh[elpgrep] lhi[story] ll lla[st] lli[st] lmak[e]
lne[xt] lnew[er] lnf[ile] lo[adview] loc[kmarks] lockv[ar] lol[der] lop[en]
lp[revious] lpf[ile] lr[ewind] lt[ag] lua luad[o] luaf[ile] lv[imgrep]
lvimgrepa[dd] lw[indow] ls m[ove] ma[rk] mak[e] marks menut[ranslate]
mes[sages] mk[exrc] mks[ession] mksp[ell] mkv[imrc] mkvie[w] mod[e] mz[scheme]
mzf[ile] n[ext] nb[key] nextgroup=vimBang
-syn keyword vimCommand contained nbc[lose] nbs[tart] noa[utocmd] noh[lsearch]
nos[wapfile] nu[mber] o[pen] ol[dfiles] on[ly] opt[ions] ow[nsyntax] p[rint]
pa[ckadd] packl[oadall] pb[uffer] pc[lose] pe[rl] perld[o] ped[it] po[p] pp[op]
pre[serve] prev[ious] pro[mptfind] promptr[epl] prof[ile] 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] python3 py3f[ile]
pyx pyxd[o] pythonx pyxf[ile] 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]
rew[ind] ri[ght] rightb[elow] ru[ntime] rub[y] rubyd[o] rubyf[ile] rund[o]
rv[iminfo] sN[ext] sa[rgument] sal[l] san[dbox] sav[eas] sb[uffer] sbN[ext]
nextgroup=vimBang
-syn keyword vimCommand contained sba[ll] sbf[irst] sbl[ast] sbm[odified]
sbn[ext] sbp[revious] sbr[ewind] scr[iptnames] scripte[ncoding] scriptv[ersion]
scs[cope] setf[iletype] sf[ind] sfir[st] sh[ell] sim[alt] sig[n] sil[ent]
sla[st] sn[ext] so[urce] sor[t] sp[lit] spe[llgood] spelld[ump] spelli[nfo]
spellr[epall] spellra[re] spellu[ndo] spellw[rong] spr[evious] sre[wind] st[op]
sta[g] star[tinsert] startg[replace] startr[eplace] stopi[nsert] stj[ump]
sts[elect] sun[hide] sus[pend] sv[iew] sw[apname] synti[me] sync[bind] smi[le]
t 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[d] tch[dir] tcl tcld[o] tclf[ile] te[aroff] ter[minal]
tf[irst] tj[ump] nextgroup=vimBang
-syn keyword vimCommand contained tl[ast] tn[ext] to[pleft] tp[revious]
tr[ewind] try ts[elect] u[ndo] undoj[oin] undol[ist] unh[ide] unlo[ckvar]
uns[ilent] up[date] v[global] ve[rsion] verb[ose] vert[ical] vi[sual] vie[w]
vim[grep] vimgrepa[dd] vim9[cmd] viu[sage] vne[w] vs[plit] w[rite] wN[ext]
wa[ll] wi[nsize] winc[md] wind[o] winp[os] wn[ext] wp[revious] wq wqa[ll]
wu[ndo] wv[iminfo] x[it] xa[ll] xr[estore] y[ank] z dl dell delel deletl
deletel dp dep delp delep deletp deletep a i nextgroup=vimBang
+syn keyword vimCommand contained cons[t] cope[n] cp[revious] cpf[ile] cq[uit]
cr[ewind] cs[cope] cst[ag] cw[indow] d[elete] delm[arks] deb[ug] defc[ompile]
defe[r] delf[unction] di[splay] dif[fupdate] diffg[et] diffo[ff] diffp[atch]
diffpu[t] diffs[plit] difft[his] dig[raphs] disa[ssemble] dj[ump] dli[st]
dr[op] ds[earch] dsp[lit] e[dit] ea[rlier] el[se] em[enu] en[dif] endfo[r]
endt[ry] endw[hile] ene[w] ev[al] ex exi[t] exu[sage] f[ile] files filet[ype]
filt[er] fin[d] fina[lly] fini[sh] fir[st] fix[del] fo[ld] foldc[lose]
foldd[oopen] folddoc[losed] foldo[pen] g[lobal] go[to] gr[ep] grepa[dd] gu[i]
gv[im] h[elp] helpc[lose] helpf[ind] helpg[rep] helpt[ags] ha[rdcopy]
hi[ghlight] hid[e] his[tory] hor[izontal] ij[ump] il[ist] imp[ort] int[ro]
is[earch] isp[lit] nextgroup=vimBang
+syn keyword vimCommand contained j[oin] ju[mps] k kee[pmarks] 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] lcs[cope] ld[o] le[ft] lefta[bove]
lex[pr] leg[acy] lf[ile] lfd[o] lfir[st] lg[etfile] lgetb[uffer] lgete[xpr]
lgr[ep] lgrepa[dd] lh[elpgrep] lhi[story] ll lla[st] lli[st] lmak[e] lne[xt]
lnew[er] lnf[ile] lo[adview] loc[kmarks] lockv[ar] lol[der] lop[en] lp[revious]
lpf[ile] lr[ewind] lt[ag] lua luad[o] luaf[ile] lv[imgrep] lvimgrepa[dd]
lw[indow] ls m[ove] ma[rk] mak[e] marks menut[ranslate] mes[sages] mk[exrc]
mks[ession] mksp[ell] mkv[imrc] mkvie[w] mod[e] mz[scheme] mzf[ile] n[ext]
nb[key] nbc[lose] nextgroup=vimBang
+syn keyword vimCommand contained nbs[tart] noa[utocmd] noh[lsearch]
nos[wapfile] nu[mber] o[pen] ol[dfiles] on[ly] opt[ions] ow[nsyntax] p[rint]
pa[ckadd] packl[oadall] pb[uffer] pc[lose] pe[rl] perld[o] ped[it] po[p] pp[op]
pre[serve] prev[ious] pro[mptfind] promptr[epl] prof[ile] 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] python3 py3f[ile]
pyx pyxd[o] pythonx pyxf[ile] 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]
rew[ind] ri[ght] rightb[elow] ru[ntime] rub[y] rubyd[o] rubyf[ile] rund[o]
rv[iminfo] sN[ext] sa[rgument] sal[l] san[dbox] sav[eas] sb[uffer] sbN[ext]
sba[ll] nextgroup=vimBang
+syn keyword vimCommand contained sbf[irst] sbl[ast] sbm[odified] sbn[ext]
sbp[revious] sbr[ewind] scr[iptnames] scripte[ncoding] scriptv[ersion]
scs[cope] setf[iletype] sf[ind] sfir[st] sh[ell] sim[alt] sig[n] sil[ent]
sla[st] sn[ext] so[urce] sor[t] sp[lit] spe[llgood] spelld[ump] spelli[nfo]
spellr[epall] spellra[re] spellu[ndo] spellw[rong] spr[evious] sre[wind] st[op]
sta[g] star[tinsert] startg[replace] startr[eplace] stopi[nsert] stj[ump]
sts[elect] sun[hide] sus[pend] sv[iew] sw[apname] synti[me] sync[bind] smi[le]
t 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[d] tch[dir] tcl tcld[o] tclf[ile] te[aroff] ter[minal]
tf[irst] tj[ump] tl[ast] nextgroup=vimBang
+syn keyword vimCommand contained tn[ext] to[pleft] tp[revious] tr[ewind] try
ts[elect] u[ndo] undoj[oin] undol[ist] unh[ide] unlo[ckvar] uns[ilent] up[date]
v[global] ve[rsion] verb[ose] vert[ical] vi[sual] vie[w] vim[grep] vimgrepa[dd]
vim9[cmd] viu[sage] vne[w] vs[plit] w[rite] wN[ext] wa[ll] wi[nsize] winc[md]
wind[o] winp[os] wn[ext] wp[revious] wq wqa[ll] wu[ndo] wv[iminfo] x[it] xa[ll]
xr[estore] y[ank] z dl dell delel deletl deletel dp dep delp delep deletp
deletep a i nextgroup=vimBang
" Lower priority for _new_ to distinguish constructors from the command.
syn match vimCommand contained "\<new\>(\@!"
@@ -104,12 +104,12 @@ syn case match
syn keyword vimFuncName contained abs acos add and 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 autocmd_add autocmd_delete autocmd_get balloon_gettext balloon_show
balloon_split base64_decode base64_encode bindtextdomain blob2list blob2str
browse browsedir bufadd bufexists buflisted bufload bufloaded bufname bufnr
bufwinid bufwinnr byte2line byteidx byteidxcomp call ceil ch_canread ch_close
ch_close_in ch_evalexpr ch_evalraw ch_getbufnr ch_getjob ch_info ch_log
ch_logfile ch_open ch_read ch_readblob ch_readraw ch_sendexpr ch_sendraw
ch_setoptions ch_status changenr
syn keyword vimFuncName contained char2nr charclass charcol charidx chdir
cindent clearmatches col complete complete_add complete_check complete_info
confirm copy cos cosh count cscope_connection cursor debugbreak deepcopy delete
deletebufline did_filetype diff diff_filler diff_hlID digraph_get
digraph_getlist digraph_set digraph_setlist echoraw empty environ err_teapot
escape eval eventhandler executable execute exepath exists exists_compiled exp
expand expandcmd extend extendnew feedkeys filecopy 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
syn keyword vimFuncName contained getbufvar getcellpixels getcellwidths
getchangelist getchar getcharmod getcharpos getcharsearch getcharstr
getcmdcomplpat getcmdcompltype getcmdline getcmdpos getcmdprompt
getcmdscreenpos getcmdtype getcmdwintype getcompletion getcurpos
getcursorcharpos getcwd getenv getfontname getfperm getfsize getftime getftype
getimstatus getjumplist getline getloclist getmarklist getmatches getmousepos
getmouseshape getpid getpos getqflist getreg getreginfo getregion getregionpos
getregtype getscriptinfo getstacktrace gettabinfo gettabvar gettabwinvar
gettagstack gettext getwininfo getwinpos getwinposx getwinposy getwinvar glob
glob2regpat globpath has has_key haslocaldir hasmapto histadd histdel histget
histnr hlID hlexists hlget hlset hostname
-syn keyword vimFuncName contained iconv id indent index indexof input
inputdialog inputlist inputrestore inputsave inputsecret insert instanceof
interrupt invert isabsolutepath isdirectory isinf islocked isnan items
job_getchannel job_info job_setoptions job_start job_status job_stop join
js_decode js_encode json_decode json_encode keys keytrans len libcall libcallnr
line line2byte lispindent list2blob list2str listener_add listener_flush
listener_remove 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_info min mkdir mode mzeval nextnonblank nr2char or pathshorten perleval
popup_atcursor popup_beval
-syn keyword vimFuncName contained popup_clear popup_close popup_create
popup_dialog popup_filter_menu popup_filter_yesno popup_findecho popup_findinfo
popup_findpreview popup_getoptions popup_getpos popup_hide popup_list
popup_locate popup_menu popup_move popup_notification popup_setbuf
popup_setoptions popup_settext popup_show pow prevnonblank printf
prompt_getprompt prompt_setcallback prompt_setinterrupt prompt_setprompt
prop_add prop_add_list prop_clear prop_find prop_list prop_remove prop_type_add
prop_type_change prop_type_delete prop_type_get prop_type_list pum_getpos
pumvisible py3eval pyeval pyxeval rand range readblob readdir readdirex
readfile reduce reg_executing reg_recording reltime reltimefloat reltimestr
remote_expr remote_foreground remote_peek
-syn keyword vimFuncName contained remote_read remote_send remote_startserver
remove rename repeat resolve reverse round rubyeval screenattr screenchar
screenchars screencol screenpos screenrow screenstring search searchcount
searchdecl searchpair searchpairpos searchpos server2client serverlist
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 sign_getdefined sign_getplaced sign_jump
sign_place sign_placelist sign_undefine sign_unplace sign_unplacelist simplify
sin sinh slice sort sound_clear sound_playevent sound_playfile sound_stop
soundfold spellbadword spellsuggest
-syn keyword vimFuncName contained split sqrt srand state str2blob 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 term_dumpdiff term_dumpload
term_dumpwrite term_getaltscreen term_getansicolors term_getattr term_getcursor
term_getjob term_getline term_getscrolled term_getsize term_getstatus
term_gettitle term_gettty term_list term_scrape term_sendkeys
term_setansicolors term_setapi term_setkill term_setrestore term_setsize
term_start term_wait terminalprops
-syn keyword vimFuncName contained test_alloc_fail test_autochdir
test_feedinput test_garbagecollect_now test_garbagecollect_soon test_getvalue
test_gui_event test_ignore_error test_mswin_event test_null_blob
test_null_channel test_null_dict test_null_function test_null_job
test_null_list test_null_partial test_null_string test_option_not_set
test_override test_refcount test_setmouse test_settime test_srand_seed
test_unknown test_void timer_info timer_pause timer_start timer_stop
timer_stopall tolower toupper tr trim trunc type typename undofile undotree
uniq utf16idx values virtcol virtcol2col visualmode wildmenumode win_execute
win_findbuf win_getid win_gettype win_gotoid win_id2tabwin win_id2win
win_move_separator win_move_statusline win_screenpos win_splitmove
-syn keyword vimFuncName contained winbufnr wincol windowsversion winheight
winlayout winline winnr winrestcmd winrestview winsaveview winwidth wordcount
writefile xor
+syn keyword vimFuncName contained iconv id indent index indexof input
inputdialog inputlist inputrestore inputsave inputsecret insert instanceof
interrupt invert isabsolutepath isdirectory isinf islocked isnan items
job_getchannel job_info job_setoptions job_start job_status job_stop join
js_decode js_encode json_decode json_encode keys keytrans len libcall libcallnr
line line2byte lispindent list2blob list2str listener_add listener_flush
listener_remove 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_info min mkdir mode mzeval nextnonblank ngettext nr2char or pathshorten
perleval popup_atcursor
+syn keyword vimFuncName contained popup_beval popup_clear popup_close
popup_create popup_dialog popup_filter_menu popup_filter_yesno popup_findecho
popup_findinfo popup_findpreview popup_getoptions popup_getpos popup_hide
popup_list popup_locate popup_menu popup_move popup_notification popup_setbuf
popup_setoptions popup_settext popup_show pow prevnonblank printf
prompt_getprompt prompt_setcallback prompt_setinterrupt prompt_setprompt
prop_add prop_add_list prop_clear prop_find prop_list prop_remove prop_type_add
prop_type_change prop_type_delete prop_type_get prop_type_list pum_getpos
pumvisible py3eval pyeval pyxeval rand range readblob readdir readdirex
readfile reduce reg_executing reg_recording reltime reltimefloat reltimestr
remote_expr remote_foreground
+syn keyword vimFuncName contained remote_peek remote_read remote_send
remote_startserver remove rename repeat resolve reverse round rubyeval
screenattr screenchar screenchars screencol screenpos screenrow screenstring
search searchcount searchdecl searchpair searchpairpos searchpos server2client
serverlist 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 sign_getdefined sign_getplaced
sign_jump sign_place sign_placelist sign_undefine sign_unplace sign_unplacelist
simplify sin sinh slice sort sound_clear sound_playevent sound_playfile
sound_stop soundfold spellbadword
+syn keyword vimFuncName contained spellsuggest split sqrt srand state str2blob
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 term_dumpdiff
term_dumpload term_dumpwrite term_getaltscreen term_getansicolors term_getattr
term_getcursor term_getjob term_getline term_getscrolled term_getsize
term_getstatus term_gettitle term_gettty term_list term_scrape term_sendkeys
term_setansicolors term_setapi term_setkill term_setrestore term_setsize
term_start term_wait
+syn keyword vimFuncName contained terminalprops test_alloc_fail test_autochdir
test_feedinput test_garbagecollect_now test_garbagecollect_soon test_getvalue
test_gui_event test_ignore_error test_mswin_event test_null_blob
test_null_channel test_null_dict test_null_function test_null_job
test_null_list test_null_partial test_null_string test_option_not_set
test_override test_refcount test_setmouse test_settime test_srand_seed
test_unknown test_void timer_info timer_pause timer_start timer_stop
timer_stopall tolower toupper tr trim trunc type typename undofile undotree
uniq utf16idx values virtcol virtcol2col visualmode wildmenumode win_execute
win_findbuf win_getid win_gettype win_gotoid win_id2tabwin win_id2win
win_move_separator win_move_statusline win_screenpos
+syn keyword vimFuncName contained win_splitmove winbufnr wincol windowsversion
winheight winlayout winline winnr winrestcmd winrestview winsaveview winwidth
wordcount writefile xor
"--- syntax here and above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
@@ -240,9 +240,10 @@ syn match vimNumber '\%(^\|\A\)\zs#\x\{6}'
skipwhite nextgroup=vimGlobal,vimSub
syn case match
" All vimCommands are contained by vimIsCommand. {{{2
-syn cluster vimCmdList
contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimCall,vimCatch,vimConst,vimDef,vimDefFold,vimDelcommand,@vimEcho,vimEnddef,vimEndfunction,vimExecute,vimIsCommand,vimExtCmd,vimFor,vimFunction,vimFuncFold,vimGlobal,vimHighlight,vimLet,vimLoadkeymap,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimSet,vimSleep,vimSyntax,vimThrow,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate,@vim9CmdList
+syn cluster vimCmdList
contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimCall,vimCatch,vimConst,vimDebuggreedy,vimDef,vimDefFold,vimDelcommand,@vimEcho,vimEnddef,vimEndfunction,vimExecute,vimIsCommand,vimExtCmd,vimFor,vimFunction,vimFuncFold,vimGlobal,vimHighlight,vimLet,vimLoadkeymap,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimSet,vimSleep,vimSyntax,vimThrow,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate,@vim9CmdList
syn cluster vim9CmdList
contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
syn match vimCmdSep "[:|]\+" skipwhite
nextgroup=@vimCmdList,vimSubst1
+syn match vimCount contained "\d\+"
syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" nextgroup=vimBang
contains=vimCommand
syn match vimBang contained "!"
syn match vimVar contained "\<\h[a-zA-Z0-9#_]*\>"
@@ -278,6 +279,11 @@ syn keyword vimBehaveModel contained mswin xterm
" ====
syn match vimCall "\<call\=\>" skipwhite nextgroup=vimFunc
+" Debuggready {{{2
+" ===========
+" TODO: special-cased until generalised range/count support is implemented
+syn match vimDebuggreedy "\<0\=debugg\%[reedy]\>" contains=vimCount
+
" Exception Handling {{{2
syn keyword vimThrow th[row] skipwhite nextgroup=@vimExprList
syn keyword vimCatch cat[ch] skipwhite nextgroup=vimCatchPattern
@@ -1347,7 +1353,9 @@ if !exists("skip_vim_syntax_inits")
hi def link vimConst vimCommand
hi def link vimContinue Special
hi def link vimContinueComment vimComment
+ hi def link vimCount Number
hi def link vimCtrlChar SpecialChar
+ hi def link vimDebuggreedy vimCommand
hi def link vimDefComment vim9Comment
hi def link vimDefKey vimCommand
hi def link vimDefParam vimVar
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/vim_dev/E1tf0yN-003Zh3-8i%40256bit.org.