annotate runtime/syntax/vim.vim @ 32669:448aef880252

normalize line endings
author Christian Brabandt <cb@256bit.org>
date Mon, 26 Jun 2023 09:54:34 +0200
parents 2a17771529af
children 695b50472e85
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
32669
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1 " Vim syntax file
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
2 " Language: Vim 9.0 script
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
3 " Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
4 " Last Change: May 09, 2023
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
5 " Version: 9.0-25
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
6 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
7 " Automatically generated keyword lists: {{{1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
8
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
9 " Quit when a syntax file was already loaded {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
10 if exists("b:current_syntax")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
11 finish
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
12 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
13 let s:keepcpo= &cpo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
14 set cpo&vim
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
15
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
16 " vimTodo: contains common special-notices for comments {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
17 " Use the vimCommentGroup cluster to add your own.
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
18 syn keyword vimTodo contained COMBAK FIXME TODO XXX
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
19 syn cluster vimCommentGroup contains=vimTodo,@Spell
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
20
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
21 " regular vim commands {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
22 syn keyword vimCommand contained a ar[gs] argl[ocal] bad[d] bn[ext] breakd[el] bw[ipeout] cabo[ve] cat[ch] ccl[ose] cfdo chd[ir] class cnf[ile] comc[lear] cp[revious] cstag debugg[reedy] delep dell diffg[et] dig[raphs] do dsp[lit] echoe[rr] em[enu] endfo[r] eval f[ile] fina[lly] foldd[oopen] gr[ep] helpc[lose] his[tory] ij[ump] inor j[oin] keepj[umps] lab[ove] lat lc[d] le[ft] lfir[st] lh[elpgrep] lmak[e] loadk lp[revious] luado ma[rk] mk[exrc] mz[scheme] new nore on[ly] pc[lose] pp[op] promptf[ind] ptj[ump] pu[t] py3f[ile] pyx r[ead] redrawt[abline] ri[ght] rundo sIl sal[l] sbf[irst] sc scp se[t] sg sgn sie sip sme snoremenu spelli[nfo] spr[evious] sri star[tinsert] sts[elect] sus[pend] syncbind tabN[ext] tabl[ast] tabr[ewind] tcld[o] tj[ump] tlu tno[remap] tu[nmenu] undol[ist] v vim9[cmd] vs[plit] win[size] wq xmapc[lear] xr[estore]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
23 syn keyword vimCommand contained ab arga[dd] argu[ment] balt bo[tright] breakl[ist] cN[ext] cad[dbuffer] cb[uffer] cd cfir[st] che[ckpath] cle[arjumps] cnor comp[iler] cpf[ile] cun def deletel delm[arks] diffo[ff] dir doau e[dit] echom[sg] en[dif] endinterface ex files fini[sh] folddoc[losed] grepa[dd] helpf[ind] hor[izontal] il[ist] interface ju[mps] keepp[atterns] lad[dexpr] later lch[dir] lefta[bove] lg[etfile] lhi[story] lmapc[lear] loadkeymap lpf[ile] luafile mak[e] mks[ession] mzf[ile] nmapc[lear] nos[wapfile] opt[ions] pe[rl] pre[serve] promptr[epl] ptl[ast] public py[thon] pyxdo rec[over] reg[isters] rightb[elow] rv[iminfo] sIn san[dbox] sbl[ast] scI scr[iptnames] setf[iletype] sgI sgp sig sir smenu so[urce] spellr[are] sr srl startg[replace] substitutepattern sv[iew] syntime tabc[lose] tabm[ove] tabs tclf[ile] tl[ast] tlunmenu to[pleft] tunma[p] unh[ide] ve[rsion] vim9s[cript] wN[ext] winc[md] wqa[ll] xme xunme
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
24 syn keyword vimCommand contained abc[lear] argd[elete] as[cii] bd[elete] bp[revious] bro[wse] cNf[ile] cadde[xpr] cbe[fore] cdo cg[etfile] checkt[ime] clo[se] co[py] con[tinue] cq[uit] cuna[bbrev] defc[ompile] deletep delp diffp[atch] disa[ssemble] doaut ea echon endclass endt[ry] exi[t] filet fir[st] foldo[pen] gui helpg[rep] i imapc[lear] intro k lN[ext] laddb[uffer] lb[uffer] lcl[ose] leg[acy] lgetb[uffer] ll lne[xt] loc[kmarks] lr[ewind] lv[imgrep] marks mksp[ell] n[ext] noa nu[mber] ownsyntax ped[it] prev[ious] ps[earch] ptn[ext] pw[d] pydo pyxfile red[o] res[ize] ru[ntime] sI sIp sav[eas] sbm[odified] sce scripte[ncoding] setg[lobal] sgc sgr sign sl[eep] smile sor[t] spellr[epall] srI srn startr[eplace] substituterepeat sw[apname] t tabd[o] tabn[ext] tags te[aroff] tlm tm[enu] tp[revious] type unl verb[ose] vim[grep] w[rite] windo wundo xmenu xunmenu
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
25 syn keyword vimCommand contained abo[veleft] argded[upe] au bel[owright] br[ewind] bufdo c[hange] caddf[ile] cbel[ow] ce[nter] cgetb[uffer] chi[story] cmapc[lear] col[der] conf[irm] cr[ewind] cw[indow] defer deletl dep diffpu[t] dj[ump] dp earlier echow[indow] enddef endw[hile] exp filetype fix[del] for gvim helpt[ags] ia imp is[earch] kee[pmarks] lNf[ile] laddf[ile] lbe[fore] lcs lex[pr] lgete[xpr] lla[st] lnew[er] lockv[ar] ls lvimgrepa[dd] mat[ch] mkv[imrc] nb[key] noautocmd o[pen] p[rint] perld[o] pro ptN[ext] ptp[revious] py3 pyf[ile] q[uit] redi[r] ret[ab] rub[y] sIc sIr sbN[ext] sbn[ext] scg scriptv[ersion] setl[ocal] sge sh[ell] sil[ent] sla[st] sn[ext] sp[lit] spellr[rare] src srp static sun[hide] sy tN[ext] tabe[dit] tabnew tc[d] ter[minal] tlmenu tma[p] tr[ewind] u[ndo] unlo[ckvar] vert[ical] vimgrepa[dd] wa[ll] winp[os] wv[iminfo] xnoreme xwininfo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
26 syn keyword vimCommand contained abstract argdo bN[ext] bf[irst] brea[k] buffers ca caf[ter] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cn[ext] colo[rscheme] cons[t] cs d[elete] delc[ommand] deletp di[splay] diffs[plit] dl dr[op] ec el[se] endenum ene[w] export filt[er] fo[ld] fu[nction] h[elp] hi iabc[lear] import isp[lit] keepa l[ist] laf[ter] lbel[ow] lcscope lf[ile] lgr[ep] lli[st] lnf[ile] lol[der] lt[ag] lw[indow] menut[ranslate] mkvie[w] nbc[lose] noh[lsearch] ol[dfiles] pa[ckadd] po[p] prof[ile] pta[g] ptr[ewind] py3do python3 qa[ll] redr[aw] retu[rn] rubyd[o] sIe sN[ext] sb[uffer] sbp[revious] sci scs sf[ind] sgi si sim[alt] sm[agic] sno[magic] spe[llgood] spellu[ndo] sre[wind] st[op] stj[ump] sunme syn ta[g] tabf[ind] tabo[nly] tch[dir] tf[irst] tln tmapc[lear] try una[bbreviate] uns[ilent] vi[sual] viu[sage] wh[ile] wn[ext] x[it] xnoremenu y[ank]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
27 syn keyword vimCommand contained addd arge[dit] b[uffer] bl[ast] breaka[dd] bun[load] cabc[lear] cal[l] cc cf[ile] changes cla[st] cnew[er] com cope[n] cscope debug delel delf[unction] dif[fupdate] difft[his] dli[st] ds[earch] echoc[onsole] elsei[f] endf[unction] enum exu[sage] fin[d] foldc[lose] go[to] ha[rdcopy] hid[e] if in iuna[bbrev] keepalt la[st] lan[guage] lbo[ttom] ld[o] lfdo lgrepa[dd] lma lo[adview] lop[en] lua m[ove] mes[sages] mod[e] nbs[tart] nor omapc[lear] packl[oadall] popu[p] profd[el] ptf[irst] pts[elect] py3f[ile] pythonx quita[ll] redraws[tatus] rew[ind] rubyf[ile] sIg sa[rgument] sba[ll] sbr[ewind] scl scscope sfir[st] sgl sic sin sm[ap] snoreme spelld[ump] spellw[rong] srg sta[g] stopi[nsert] sunmenu sync tab tabfir[st] tabp[revious] tcl th[row] tlnoremenu tn[ext] ts[elect] undoj[oin] up[date] vie[w] vne[w] wi wp[revious] xa[ll] xprop z[^.=]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
28 syn keyword vimCommand contained al[l] argg[lobal] ba[ll] bm[odified]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
29 syn match vimCommand contained "\<z[-+^.=]\=\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
30 syn keyword vimStdPlugin contained Arguments Asm Break Cfilter Clear Continue DiffOrig Evaluate Finish Gdb Lfilter Man N[ext] Over P[rint] Program Run S Source Step Stop Termdebug TermdebugCommand TOhtml Until Winbar XMLent XMLns
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
31
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
32 " vimOptions are caught only when contained in a vimSet {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
33 syn keyword vimOption contained acd ambw arshape aw backupskip beval bk bri bufhidden cdh ci cinsd cms commentstring conceallevel cpt cscopetagorder csto cursorlineopt dg dir ed enc equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr gli guifont guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langmap linebreak lm lsp makeencoding maxmem mh mmp more mousemoveevent mzq numberwidth opfunc patchexpr pfn pp printfont pumwidth pythonthreehome re restorescreen ro rulerformat scl scs sft shellslash shortmess showtabline slm smoothscroll spell spl srr statusline sw sxq tag tal tenc termwintype tgst titleold tpm ttm tw udir ur verbose viminfofile warn wfh wildchar wim winminheight wmh write
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
34 syn keyword vimOption contained ai anti asd awa balloondelay bevalterm bkc briopt buflisted cdhome cin cinw co compatible confirm crb cscopeverbose csverb cwh dict directory edcompatible encoding errorbells exrc fdm ff filetype fmr foldlevelstart formatlistpat gd go guifontset helpfile highlight hls imactivatekey iminsert include inf isk keymodel langmenu lines lmap luadll makeprg maxmempattern mis mmt mouse mouses mzquantum nuw osfiletype patchmode ph preserveindent printheader pvh pyx readonly revins rop runtimepath scr sect sh shelltemp shortname shq sloc sms spellcapcheck splitbelow ss stl swapfile syn tagbsearch tb term terse thesaurus titlestring tr tty twk ul ut verbosefile virtualedit wb wfw wildcharm winaltkeys winminwidth wmnu writeany
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
35 syn keyword vimOption contained akm antialias autochdir background ballooneval bex bl brk buftype cdpath cindent cinwords cocu complete copyindent cryptmethod csl cuc debug dictionary display ef endoffile errorfile fcl fdn ffs fillchars fo foldmarker formatoptions gdefault gp guifontwide helpheight history hlsearch imaf ims includeexpr infercase iskeyword keyprotocol langnoremap linespace lnr lw mat maxmemtot mkspellmem mod mousef mouseshape mzschemedll odev pa path pheader previewheight printmbcharset pvp pyxversion redrawtime ri rs sb scroll sections shcf shelltype showbreak si sm sn spellfile splitkeep ssl stmp swapsync synmaxcol tagcase tbi termbidi textauto thesaurusfunc tl ts ttybuiltin tws undodir varsofttabstop vfile visualbell wc wh wildignore wincolor winptydll wmw writebackup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
36 syn keyword vimOption contained al ar autoindent backspace balloonevalterm bexpr bo browsedir casemap cedit cink clipboard cole completefunc cot cscopepathcomp cspc cul deco diff dy efm endofline errorformat fcs fdo fic fixendofline foldclose foldmethod formatprg gfm grepformat guiheadroom helplang hk ic imak imsearch incsearch insertmode isp keywordprg langremap lisp loadplugins lz matchpairs mco ml modeline mousefocus mouset mzschemegcdll oft packpath pdev pi previewpopup printmbfont pvw qe regexpengine rightleft rtp sbo scrollbind secure shell shellxescape showcmd sidescroll smartcase so spelllang splitright ssop sts swb syntax tagfunc tbidi termencoding textmode tildeop tm tsl ttyfast twsl undofile vartabstop vi vop wcm whichwrap wildignorecase window winwidth wop writedelay
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
37 syn keyword vimOption contained aleph arab autoread backup balloonexpr bg bomb bs cb cf cinkeys cm colorcolumn completeopt cp cscopeprg csprg culopt def diffexpr ea ei eof esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn grepprg guiligatures hf hkmap icon imc imsf inde is isprint km laststatus lispoptions lop ma matchtime mef mle modelineexpr mousehide mousetime nf ofu para penc pm previewwindow printoptions pw qftf relativenumber rightleftcmd ru sbr scrollfocus sel shellcmdflag shellxquote showcmdloc sidescrolloff smartindent softtabstop spelloptions spo st su swf ta taglength tbis termguicolors textwidth timeout to tsr ttym twt undolevels vb viewdir vsts wcr wi wildmenu winfixheight wiv wrap ws
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
38 syn keyword vimOption contained allowrevins arabic autoshelldir backupcopy bdir bh breakat bsdir cc cfu cino cmdheight columns completepopup cpo cscopequickfix csqf cursorbind define diffopt ead ek eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtl guioptions hh hkmapp iconstring imcmdline imst indentexpr isf joinspaces kmp lazyredraw lispwords lpl macatsui maxcombine menc mls modelines mousem mp nrformats omnifunc paragraphs perldll pmbcs printdevice prompt pythondll quickfixtextfunc remap rl rubydll sc scrolljump selection shellpipe shiftround showfulltag signcolumn smarttab sol spellsuggest spr sta sua switchbuf tabline tagrelative tbs termwinkey tf timeoutlen toolbar tsrfu ttymouse tx undoreload vbs viewoptions vts wd wic wildmode winfixwidth wiw wrapmargin ww
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
39 syn keyword vimOption contained altkeymap arabicshape autowrite backupdir bdlay bin breakindent bsk ccv ch cinoptions cmdwinheight com completeslash cpoptions cscoperelative csre cursorcolumn delcombine digraph eadirection emo ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw gtt guipty hi hkp ignorecase imd imstatusfunc indentkeys isfname js kp lbr list lrm magic maxfuncdepth menuitems mm modifiable mousemev mps nu opendevice paste pex pmbfn printencoding pt pythonhome quoteescape renderoptions rlc ruf scb scrolloff selectmode shellquote shiftwidth showmatch siso smc sp spf sps stal suffixes sws tabpagemax tags tc termwinscroll tfu title toolbariconsize ttimeout ttyscroll uc updatecount vdir vif wa weirdinvert wig wildoptions winheight wm wrapscan xtermcodes
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
40 syn keyword vimOption contained ambiwidth ari autowriteall backupext belloff binary breakindentopt bt cd charconvert cinscopedecls cmp comments concealcursor cpp cscopetag cst cursorline dex dip eb emoji equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guicursor guitablabel hid hl im imdisable imstyle indk isi key kpc lcs listchars ls makeef maxmapdepth mfd mmd modified mousemodel msm number operatorfunc pastetoggle pexpr popt printexpr pumheight pythonthreedll rdt report rnu ruler scf scrollopt sessionoptions shellredir shm showmode sj smd spc spk sr startofline suffixesadd sxe tabstop tagstack tcldll termwinsize tgc titlelen top ttimeoutlen ttytype udf updatetime ve viminfo wak
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
41
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
42 " vimOptions: These are the turn-off setting variants {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
43 syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoindent noautowrite noawa noballoonevalterm nobin nobl nobri nocdhome nocin noconfirm nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noendoffile noeol noesckeys noexpandtab nofic nofixeol nofoldenable nogd nohid nohkmap nohls noicon noimc noimdisable noinfercase nojoinspaces nolangremap nolinebreak nolnr nolrm nomacatsui noml nomodeline nomodified nomousefocus nomousemoveevent noodev nopi noprompt norelativenumber norevins norl nors noruler nosc noscf noscrollfocus nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosmoothscroll nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi noterse notextmode notgc notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
44 syn keyword vimOption contained noai noaltkeymap noar noarabicshape noasd noautoread noautowriteall nobackup nobeval nobinary nobomb nobuflisted nocf nocindent nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noemo noendofline noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs nolazyredraw nolisp noloadplugins nolz nomagic nomle nomodelineexpr nomore nomousehide nonu noopendevice nopreserveindent nopvw noremap nori nornu noru nosb noscb noscrollbind noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosms nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs notermguicolors notextauto notf notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup noxtermcodes
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
45 syn keyword vimOption contained noakm noanti noarab noari noautochdir noautoshelldir noaw noballooneval nobevalterm nobk nobreakindent nocdh noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noeof noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf nois nolangnoremap nolbr nolist nolpl noma nomh nomod nomodifiable nomousef nomousemev nonumber nopaste nopreviewwindow noreadonly norestorescreen norightleft noro
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
46
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
47 " vimOptions: These are the invertible variants {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
48 syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoindent invautowrite invawa invballoonevalterm invbin invbl invbri invcdhome invcin invconfirm invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invendoffile inveol invesckeys invexpandtab invfic invfixeol invfoldenable invgd invhid invhkmap invhls invicon invimc invimdisable invinfercase invjoinspaces invlangremap invlinebreak invlnr invlrm invmacatsui invml invmodeline invmodified invmousefocus invmousemoveevent invodev invpi invprompt invrelativenumber invrevins invrl invrs invruler invsc invscf invscrollfocus invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsmoothscroll invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invterse invtextmode invtgc invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
49 syn keyword vimOption contained invai invaltkeymap invar invarabicshape invasd invautoread invautowriteall invbackup invbeval invbinary invbomb invbuflisted invcf invcindent invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invemo invendofline invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs invlazyredraw invlisp invloadplugins invlz invmagic invmle invmodelineexpr invmore invmousehide invnu invopendevice invpreserveindent invpvw invremap invri invrnu invru invsb invscb invscrollbind invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsms invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invtermguicolors invtextauto invtf invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup invxtermcodes
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
50 syn keyword vimOption contained invakm invanti invarab invari invautochdir invautoshelldir invaw invballooneval invbevalterm invbk invbreakindent invcdh invci invcompatible invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible invemoji inveof inverrorbells invex invfen invfixendofline invfkmap invfsync invguipty invhk invhkp invic invim invimd invinf invis invlangnoremap invlbr invlist invlpl invma invmh invmod invmodifiable invmousef invmousemev invnumber invpaste invpreviewwindow invreadonly invrestorescreen invrightleft invro
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
51
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
52 " termcap codes (which can also be set) {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
53 syn keyword vimOption contained t_8b t_8u t_AF t_AL t_bc t_BE t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_Ds t_EI t_F2 t_F4 t_F6 t_F8 t_fd t_fs t_IE t_k1 t_k2 t_K3 t_K4 t_K5 t_K6 t_K7 t_K8 t_K9 t_kb t_KB t_kd t_KD t_KE t_KG t_KH t_KI t_KK t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_PE t_PS t_RB t_RC t_RF t_Ri t_RI t_RK t_RS t_RT t_RV t_Sb t_SC t_se t_Sf t_SH t_Si t_SI t_so t_sr t_SR t_ST t_te t_Te t_TE t_ti t_TI t_ts t_Ts t_u7 t_ue t_us t_Us t_ut t_vb t_ve t_vi t_vs t_VS t_WP t_WS t_XM t_xn t_xs t_ZH t_ZR
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
54 syn keyword vimOption contained t_8f t_AB t_al t_AU t_BD t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_ds t_EC t_F1 t_F3 t_F5 t_F7 t_F9 t_fe t_GP t_IS t_K1 t_k3 t_k4 t_k5 t_k6 t_k7 t_k8 t_k9 t_KA t_kB t_KC t_kD t_ke t_KF t_kh t_kI t_KJ t_kl
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
55 syn match vimOption contained "t_%1"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
56 syn match vimOption contained "t_#2"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
57 syn match vimOption contained "t_#4"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
58 syn match vimOption contained "t_@7"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
59 syn match vimOption contained "t_*7"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
60 syn match vimOption contained "t_&8"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
61 syn match vimOption contained "t_%i"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
62 syn match vimOption contained "t_k;"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
63
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
64 " unsupported settings: some were supported by vi but don't do anything in vim {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
65 " others have been dropped along with msdos support
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
66 syn keyword vimErrSetting contained bioskey biosk conskey consk autoprint beautify flash graphic hardtabs mesg novice open op optimize redraw slow slowopen sourceany w300 w1200 w9600 hardtabs ht nobioskey nobiosk noconskey noconsk noautoprint nobeautify noflash nographic nohardtabs nomesg nonovice noopen noop nooptimize noredraw noslow noslowopen nosourceany now300 now1200 now9600 w1200 w300 w9600
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
67
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
68 " AutoCmd Events {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
69 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
70 syn keyword vimAutoEvent contained BufAdd BufDelete BufFilePost BufHidden BufNew BufRead BufReadPost BufUnload BufWinLeave BufWrite BufWritePost CmdlineChanged CmdlineLeave CmdwinEnter ColorScheme CompleteChanged CompleteDonePre CursorHoldI CursorMovedI DiffUpdated DirChanged DirChangedPre EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileExplorer FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SafeStateAgain SessionLoadPost ShellCmdPost ShellFilterPost SigUSR1 SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TerminalWinOpen TermResponse TextChanged TextChangedI TextChangedP TextChangedT TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew WinResized WinScrolled
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
71 syn keyword vimAutoEvent contained BufCreate BufEnter BufFilePre BufLeave BufNewFile BufReadCmd BufReadPre BufWinEnter BufWipeout BufWriteCmd BufWritePre CmdlineEnter CmdUndefined CmdwinLeave ColorSchemePre CompleteDone CursorHold CursorMoved
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
72
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
73 " Highlight commonly used Groupnames {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
74 syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
75
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
76 " Default highlighting groups {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
77 syn keyword vimHLGroup contained ColorColumn CurSearch Cursor CursorColumn CursorIM CursorLine CursorLineFold CursorLineNr CursorLineSign DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr LineNrAbove LineNrBelow MatchParen Menu MessageWindow ModeMsg MoreMsg NonText Normal Pmenu PmenuExtra PmenuExtraSel PmenuKind PmenuKindSel PmenuSbar PmenuSel PmenuThumb Question QuickFixLine Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC StatusLineTerm StatusLineTermNC TabLine TabLineFill TabLineSel Terminal Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
78 syn match vimHLGroup contained "Conceal"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
79 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
80
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
81 " Function Names {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
82 syn keyword vimFuncName contained abs argc assert_equal assert_match atan balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled extendnew findfile fnameescape foldtextresult get getchangelist getcmdcompltype getcompletion getfperm getline getpid getscriptinfo getwininfo glob2regpat histadd hlID indexof inputsecret isinf job_setoptions js_encode libcall list2str log10 mapnew matchdelete matchstrpos mzeval popup_atcursor popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx substitute synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_event test_null_dict test_null_string test_settime timer_pause toupper typename values winbufnr win_getid win_id2win winnr win_splitmove
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
83 syn keyword vimFuncName contained acos argidx assert_equalfile assert_nobeep atan2 balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp feedkeys flatten fnamemodify foreground getbufinfo getchar getcmdline getcurpos getfsize getloclist getpos gettabinfo getwinpos globpath histdel hlset input insert islocked job_start json_decode libcallnr listener_add luaeval mapset matchend max nextnonblank popup_beval popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapfilelist synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_ignore_error test_null_function test_option_not_set test_srand_seed timer_start tr undofile virtcol wincol win_gettype winlayout winrestcmd winwidth
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
84 syn keyword vimFuncName contained add arglistid assert_exception assert_notequal autocmd_add blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filereadable flattennew foldclosed fullcommand getbufline getcharmod getcmdpos getcursorcharpos getftime getmarklist getqflist gettabvar getwinposx has histget hostname inputdialog interrupt isnan job_status json_encode line listener_flush map match matchfuzzy menu_info nr2char popup_clear popup_findecho popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strutf16len swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_mswin_event test_null_job test_override test_unknown timer_stop trim undotree virtcol2col windowsversion win_gotoid winline winrestview wordcount
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
85 syn keyword vimFuncName contained and argv assert_fails assert_notmatch autocmd_delete browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filewritable float2nr foldclosedend funcref getbufoneline getcharpos getcmdscreenpos getcwd getftype getmatches getreg gettabwinvar getwinposy has_key histnr iconv inputlist invert items job_stop keys line2byte listener_remove maparg matchadd matchfuzzypos min or popup_close popup_findinfo popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdline setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart strwidth swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_blob test_null_list test_refcount test_void timer_stopall trunc uniq visualmode win_execute winheight win_move_separator winsaveview writefile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
86 syn keyword vimFuncName contained append asin assert_false assert_report autocmd_get browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath expr10 filter floor foldlevel function getbufvar getcharsearch getcmdtype getenv getimstatus getmousepos getreginfo gettagstack getwinvar haslocaldir hlexists indent inputrestore isabsolutepath job_getchannel join keytrans lispindent localtime mapcheck matchaddpos matchlist mkdir pathshorten popup_create popup_findpreview popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime submatch synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_channel test_null_partial test_setmouse timer_info tolower type utf16idx wildmenumode win_findbuf win_id2tabwin win_move_statusline win_screenpos xor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
87 syn keyword vimFuncName contained appendbufline assert_beeps assert_inrange assert_true balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extend finddir fmod foldtext garbagecollect getcellwidths getcharstr getcmdwintype getfontname getjumplist getmouseshape getregtype gettext glob hasmapto hlget index inputsave isdirectory job_info js_decode len list2blob log maplist matcharg matchstr mode perleval popup_dialog popup_getoptions
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
88
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
89 "--- syntax here and above generated by mkvimvim ---
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
90 " Special Vim Highlighting (not automatic) {{{1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
91
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
92 " Set up folding commands for this syntax highlighting file {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
93 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# '[afhlmpPrt]'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
94 if g:vimsyn_folding =~# 'a'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
95 com! -nargs=* VimFolda <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
96 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
97 com! -nargs=* VimFolda <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
98 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
99 if g:vimsyn_folding =~# 'f'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
100 com! -nargs=* VimFoldf <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
101 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
102 com! -nargs=* VimFoldf <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
103 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
104 if g:vimsyn_folding =~# 'h'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
105 com! -nargs=* VimFoldh <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
106 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
107 com! -nargs=* VimFoldh <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
108 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
109 if g:vimsyn_folding =~# 'l'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
110 com! -nargs=* VimFoldl <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
111 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
112 com! -nargs=* VimFoldl <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
113 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
114 if g:vimsyn_folding =~# 'm'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
115 com! -nargs=* VimFoldm <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
116 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
117 com! -nargs=* VimFoldm <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
118 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
119 if g:vimsyn_folding =~# 'p'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
120 com! -nargs=* VimFoldp <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
121 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
122 com! -nargs=* VimFoldp <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
123 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
124 if g:vimsyn_folding =~# 'P'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
125 com! -nargs=* VimFoldP <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
126 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
127 com! -nargs=* VimFoldP <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
128 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
129 if g:vimsyn_folding =~# 'r'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
130 com! -nargs=* VimFoldr <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
131 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
132 com! -nargs=* VimFoldr <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
133 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
134 if g:vimsyn_folding =~# 't'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
135 com! -nargs=* VimFoldt <args> fold
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
136 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
137 com! -nargs=* VimFoldt <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
138 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
139 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
140 com! -nargs=* VimFolda <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
141 com! -nargs=* VimFoldf <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
142 com! -nargs=* VimFoldh <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
143 com! -nargs=* VimFoldl <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
144 com! -nargs=* VimFoldm <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
145 com! -nargs=* VimFoldp <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
146 com! -nargs=* VimFoldP <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
147 com! -nargs=* VimFoldr <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
148 com! -nargs=* VimFoldt <args>
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
149 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
150
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
151 " commands not picked up by the generator (due to non-standard format) {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
152 syn keyword vimCommand contained py3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
153
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
154 " Deprecated variable options {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
155 if exists("g:vim_minlines")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
156 let g:vimsyn_minlines= g:vim_minlines
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
157 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
158 if exists("g:vim_maxlines")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
159 let g:vimsyn_maxlines= g:vim_maxlines
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
160 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
161 if exists("g:vimsyntax_noerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
162 let g:vimsyn_noerror= g:vimsyntax_noerror
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
163 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
164
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
165 " Variable options {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
166 if exists("g:vim_maxlines")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
167 let s:vimsyn_maxlines= g:vim_maxlines
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
168 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
169 let s:vimsyn_maxlines= 60
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
170 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
171
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
172 " Numbers {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
173 " =======
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
174 syn match vimNumber '\<\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
175 syn match vimNumber '-\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
176 syn match vimNumber '\<0[xX]\x\+' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
177 syn match vimNumber '\%(^\|\A\)\zs#\x\{6}' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
178 syn match vimNumber '\<0[zZ][a-zA-Z0-9.]\+' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
179 syn match vimNumber '0[0-7]\+' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
180 syn match vimNumber '0[bB][01]\+' skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
181
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
182 " All vimCommands are contained by vimIsCommand. {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
183 syn match vimCmdSep "[:|]\+" skipwhite nextgroup=vimAddress,vimAutoCmd,vimEcho,vimIsCommand,vimExtCmd,vimFilter,vimLet,vimMap,vimMark,vimSet,vimSyntax,vimUserCmd
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
184 syn match vimIsCommand "\<\h\w*\>" contains=vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
185 syn match vimVar contained "\<\h[a-zA-Z0-9#_]*\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
186 syn match vimVar "\<[bwglstav]:\h[a-zA-Z0-9#_]*\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
187 syn match vimVar "\s\zs&\a\+\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
188 syn match vimFBVar contained "\<[bwglstav]:\h[a-zA-Z0-9#_]*\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
189 syn keyword vimCommand contained in
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
190
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
191 " Insertions And Appends: insert append {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
192 " (buftype != nofile test avoids having append, change, insert show up in the command window)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
193 " =======================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
194 if &buftype != 'nofile'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
195 syn region vimInsert matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=a\%[ppend]$" matchgroup=vimCommand end="^\.$""
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
196 syn region vimInsert matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=c\%[hange]$" matchgroup=vimCommand end="^\.$""
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
197 syn region vimInsert matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=i\%[nsert]$" matchgroup=vimCommand end="^\.$""
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
198 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
199
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
200 " Behave! {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
201 " =======
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
202 syn match vimBehave "\<be\%[have]\>" skipwhite nextgroup=vimBehaveModel,vimBehaveError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
203 syn keyword vimBehaveModel contained mswin xterm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
204 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_nobehaveerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
205 syn match vimBehaveError contained "[^ ]\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
206 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
207
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
208 " Filetypes {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
209 " =========
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
210 syn match vimFiletype "\<filet\%[ype]\(\s\+\I\i*\)*" skipwhite contains=vimFTCmd,vimFTOption,vimFTError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
211 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_vimFTError")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
212 syn match vimFTError contained "\I\i*"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
213 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
214 syn keyword vimFTCmd contained filet[ype]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
215 syn keyword vimFTOption contained detect indent off on plugin
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
216
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
217 " Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
218 " ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
219 syn cluster vimAugroupList contains=vimAugroup,vimIsCommand,vimUserCmd,vimExecute,vimNotFunc,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimNotFunc,vimMap,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vim9Comment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vim9Comment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue,vimSetEqual,vimOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
220 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'a'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
221 syn region vimAugroup fold matchgroup=vimAugroupKey start="\<aug\%[roup]\>\ze\s\+\K\k*" end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
222 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
223 syn region vimAugroup matchgroup=vimAugroupKey start="\<aug\%[roup]\>\ze\s\+\K\k*" end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
224 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
225 syn match vimAugroup "aug\%[roup]!" contains=vimAugroupKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
226 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_noaugrouperror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
227 syn match vimAugroupError "\<aug\%[roup]\>\s\+[eE][nN][dD]\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
228 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
229 syn keyword vimAugroupKey contained aug[roup]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
230
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
231 " Operators: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
232 " =========
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
233 syn cluster vimOperGroup contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimType,vimRegister,vimContinue,vim9Comment,vimVar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
234 syn match vimOper "||\|&&\|[-+.!]" skipwhite nextgroup=vimString,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
235 syn match vimOper "\%#=1\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\|!\~#\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
236 syn match vimOper "\(\<is\|\<isnot\)[?#]\{0,2}\>" skipwhite nextgroup=vimString,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
237 syn region vimOperParen matchgroup=vimParenSep start="(" end=")" contains=vimoperStar,@vimOperGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
238 syn region vimOperParen matchgroup=vimSep start="#\={" end="}" contains=@vimOperGroup nextgroup=vimVar,vimFuncVar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
239 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_noopererror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
240 syn match vimOperError ")"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
241 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
242
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
243 " Functions : Tag is provided for those who wish to highlight tagged functions {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
244 " =========
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
245 syn cluster vimFuncList contains=vimCommand,vimFunctionError,vimFuncKey,Tag,vimFuncSID
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
246 syn cluster vimFuncBodyList contains=vimAbb,vimAddress,vimAugroupKey,vimAutoCmd,vimCmplxRepeat,vimComment,vim9Comment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimEnvvar,vimExecute,vimIsCommand,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimGlobal,vimHighlight,vimIsCommand,vimLet,vimLetHereDoc,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSearch,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUnmap,vimUserCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
247 syn match vimFunction "\<\(fu\%[nction]\)!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\=\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
248 syn match vimFunction "\<def!\=\s\+\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
249 "syn match vimFunction "\<def!\=\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
250
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
251 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'f'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
252 syn region vimFuncBody contained fold start="\ze\s*(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\|enddef\>\)" contains=@vimFuncBodyList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
253 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
254 syn region vimFuncBody contained start="\ze\s*(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\|enddef\>\)" contains=@vimFuncBodyList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
255 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
256 syn match vimFuncVar contained "a:\(\K\k*\|\d\+\)"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
257 syn match vimFuncSID contained "\c<sid>\|\<s:"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
258 syn keyword vimFuncKey contained fu[nction]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
259 syn keyword vimFuncKey contained def
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
260 syn match vimFuncBlank contained "\s\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
261
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
262 syn keyword vimPattern contained start skip end
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
263
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
264 " vimTypes : new for vim9
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
265 syn match vimType ":\s*\zs\<\(bool\|number\|float\|string\|blob\|list<\|dict<\|job\|channel\|func\)\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
266
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
267 " Special Filenames, Modifiers, Extension Removal: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
268 " ===============================================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
269 syn match vimSpecFile "<c\(word\|WORD\)>" nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
270 syn match vimSpecFile "<\([acs]file\|amatch\|abuf\)>" nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
271 syn match vimSpecFile "\s%[ \t:]"ms=s+1,me=e-1 nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
272 syn match vimSpecFile "\s%$"ms=s+1 nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
273 syn match vimSpecFile "\s%<"ms=s+1,me=e-1 nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
274 syn match vimSpecFile "#\d\+\|[#%]<\>" nextgroup=vimSpecFileMod,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
275 syn match vimSpecFileMod "\(:[phtre]\)\+" contained
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
276
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
277 " User-Specified Commands: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
278 " =======================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
279 syn cluster vimUserCmdList contains=vimAddress,vimSyntax,vimHighlight,vimAutoCmd,vimCmplxRepeat,vimComment,vim9Comment,vimCtrlChar,vimEscapeBrace,vimFunc,vimFuncName,vimFunction,vimFunctionError,vimIsCommand,vimMark,vimNotation,vimNumber,vimOper,vimRegion,vimRegister,vimLet,vimSet,vimSetEqual,vimSetString,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange,vimSynLine
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
280 syn keyword vimUserCommand contained com[mand]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
281 syn match vimUserCmd "\<com\%[mand]!\=\>.*$" contains=vimUserAttrb,vimUserAttrbError,vimUserCommand,@vimUserCmdList,vimComFilter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
282 syn match vimUserAttrbError contained "-\a\+\ze\s"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
283 syn match vimUserAttrb contained "-nargs=[01*?+]" contains=vimUserAttrbKey,vimOper
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
284 syn match vimUserAttrb contained "-complete=" contains=vimUserAttrbKey,vimOper nextgroup=vimUserAttrbCmplt,vimUserCmdError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
285 syn match vimUserAttrb contained "-range\(=%\|=\d\+\)\=" contains=vimNumber,vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
286 syn match vimUserAttrb contained "-count\(=\d\+\)\=" contains=vimNumber,vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
287 syn match vimUserAttrb contained "-bang\>" contains=vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
288 syn match vimUserAttrb contained "-bar\>" contains=vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
289 syn match vimUserAttrb contained "-buffer\>" contains=vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
290 syn match vimUserAttrb contained "-register\>" contains=vimOper,vimUserAttrbKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
291 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_nousercmderror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
292 syn match vimUserCmdError contained "\S\+\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
293 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
294 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
295 syn keyword vimUserAttrbKey contained bar ban[g] cou[nt] ra[nge] com[plete] n[args] re[gister]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
296 syn keyword vimUserAttrbCmplt contained augroup buffer behave color command compiler cscope dir environment event expression file file_in_path filetype function help highlight history locale mapping menu option packadd shellcmd sign syntax syntime tag tag_listfiles user var
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
297 syn keyword vimUserAttrbCmplt contained custom customlist nextgroup=vimUserAttrbCmpltFunc,vimUserCmdError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
298 syn match vimUserAttrbCmpltFunc contained ",\%([sS]:\|<[sS][iI][dD]>\)\=\%(\h\w*\%(#\h\w*\)\+\|\h\w*\)"hs=s+1 nextgroup=vimUserCmdError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
299
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
300 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
301 syn match vimUserAttrbCmplt contained "custom,\u\w*"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
302
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
303 " Lower Priority Comments: after some vim commands... {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
304 " =======================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
305 syn match vimComment excludenl +\s"[^\-:.%#=*].*$+lc=1 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
306 syn match vimComment +\<endif\s\+".*$+lc=5 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
307 syn match vimComment +\<else\s\+".*$+lc=4 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
308 syn region vimCommentString contained oneline start='\S\s\+"'ms=e end='"'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
309 " Vim9 comments - TODO: might be highlighted while they don't work
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
310 syn match vim9Comment excludenl +\s#[^{].*$+lc=1 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
311 syn match vim9Comment +\<endif\s\+#[^{].*$+lc=5 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
312 syn match vim9Comment +\<else\s\+#[^{].*$+lc=4 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
313 " Vim9 comment inside expression
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
314 syn match vim9Comment +\s\zs#[^{].*$+ms=s+1 contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
315 syn match vim9Comment +^\s*#[^{].*$+ contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
316 syn match vim9Comment +^\s*#$+ contains=@vimCommentGroup,vimCommentString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
317
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
318 " Environment Variables: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
319 " =====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
320 syn match vimEnvvar "\$\I\i*"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
321 syn match vimEnvvar "\${\I\i*}"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
322
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
323 " In-String Specials: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
324 " Try to catch strings, if nothing else matches (therefore it must precede the others!)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
325 " vimEscapeBrace handles ["] []"] (ie. "s don't terminate string inside [])
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
326 syn region vimEscapeBrace oneline contained transparent start="[^\\]\(\\\\\)*\[\zs\^\=\]\=" skip="\\\\\|\\\]" end="]"me=e-1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
327 syn match vimPatSepErr contained "\\)"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
328 syn match vimPatSep contained "\\|"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
329 syn region vimPatSepZone oneline contained matchgroup=vimPatSepZ start="\\%\=\ze(" skip="\\\\" end="\\)\|[^\\]['"]" contains=@vimStringGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
330 syn region vimPatRegion contained transparent matchgroup=vimPatSepR start="\\[z%]\=(" end="\\)" contains=@vimSubstList oneline
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
331 syn match vimNotPatSep contained "\\\\"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
332 syn cluster vimStringGroup contains=vimEscape,vimEscapeBrace,vimPatSep,vimNotPatSep,vimPatSepErr,vimPatSepZone,@Spell
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
333 syn region vimString oneline keepend start=+[^a-zA-Z>!\\@]"+lc=1 skip=+\\\\\|\\"+ matchgroup=vimStringEnd end=+"+ contains=@vimStringGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
334 syn region vimString oneline keepend start=+[^a-zA-Z>!\\@]'+lc=1 end=+'+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
335 syn region vimString oneline start=+=!+lc=1 skip=+\\\\\|\\!+ end=+!+ contains=@vimStringGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
336 syn region vimString oneline start="=+"lc=1 skip="\\\\\|\\+" end="+" contains=@vimStringGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
337 "syn region vimString oneline start="\s/\s*\A"lc=1 skip="\\\\\|\\+" end="/" contains=@vimStringGroup " see tst45.vim
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
338 syn match vimString contained +"[^"]*\\$+ skipnl nextgroup=vimStringCont
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
339 syn match vimStringCont contained +\(\\\\\|.\)\{-}[^\\]"+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
340 syn match vimEscape contained "\\."
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
341
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
342 " Substitutions: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
343 " =============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
344 syn cluster vimSubstList contains=vimPatSep,vimPatRegion,vimPatSepErr,vimSubstTwoBS,vimSubstRange,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
345 syn cluster vimSubstRepList contains=vimSubstSubstr,vimSubstTwoBS,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
346 syn cluster vimSubstList add=vimCollection
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
347 syn match vimSubst "\(:\+\s*\|^\s*\||\s*\)\<\%(\<s\%[ubstitute]\>\|\<sm\%[agic]\>\|\<sno\%[magic]\>\)[:#[:alpha:]]\@!" nextgroup=vimSubstPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
348 "syn match vimSubst "\%(^\|[^\\]\)\<s\%[ubstitute]\>[:#[:alpha:]]\@!" nextgroup=vimSubstPat contained
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
349 syn match vimSubst "\%(^\|[^\\\"']\)\<s\%[ubstitute]\>[:#[:alpha:]\"']\@!" nextgroup=vimSubstPat contained
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
350 syn match vimSubst "/\zs\<s\%[ubstitute]\>\ze/" nextgroup=vimSubstPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
351 syn match vimSubst "\(:\+\s*\|^\s*\)s\ze#.\{-}#.\{-}#" nextgroup=vimSubstPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
352 syn match vimSubst1 contained "\<s\%[ubstitute]\>" nextgroup=vimSubstPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
353 syn match vimSubst2 contained "s\%[ubstitute]\>" nextgroup=vimSubstPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
354 syn region vimSubstPat contained matchgroup=vimSubstDelim start="\z([^a-zA-Z( \t[\]&]\)"rs=s+1 skip="\\\\\|\\\z1" end="\z1"re=e-1,me=e-1 contains=@vimSubstList nextgroup=vimSubstRep4 oneline
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
355 syn region vimSubstRep4 contained matchgroup=vimSubstDelim start="\z(.\)" skip="\\\\\|\\\z1" end="\z1" matchgroup=vimNotation end="<[cC][rR]>" contains=@vimSubstRepList nextgroup=vimSubstFlagErr oneline
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
356 syn region vimCollection contained transparent start="\\\@<!\[" skip="\\\[" end="\]" contains=vimCollClass
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
357 syn match vimCollClassErr contained "\[:.\{-\}:\]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
358 syn match vimCollClass contained transparent "\%#=1\[:\(alnum\|alpha\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|xdigit\|retu\%[rn]\|tab\|escape\|backspace\):\]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
359 syn match vimSubstSubstr contained "\\z\=\d"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
360 syn match vimSubstTwoBS contained "\\\\"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
361 syn match vimSubstFlagErr contained "[^< \t\r|]\+" contains=vimSubstFlags
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
362 syn match vimSubstFlags contained "[&cegiIlnpr#]\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
363
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
364 " 'String': {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
365 syn match vimString "[^(,]'[^']\{-}\zs'"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
366
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
367 " Marks, Registers, Addresses, Filters: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
368 syn match vimMark "'[a-zA-Z0-9]\ze[-+,!]" nextgroup=vimFilter,vimMarkNumber,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
369 syn match vimMark "'[<>]\ze[-+,!]" nextgroup=vimFilter,vimMarkNumber,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
370 syn match vimMark ",\zs'[<>]\ze" nextgroup=vimFilter,vimMarkNumber,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
371 syn match vimMark "[!,:]\zs'[a-zA-Z0-9]" nextgroup=vimFilter,vimMarkNumber,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
372 syn match vimMark "\<norm\%[al]\s\zs'[a-zA-Z0-9]" nextgroup=vimFilter,vimMarkNumber,vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
373 syn match vimMarkNumber "[-+]\d\+" contained contains=vimOper nextgroup=vimSubst2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
374 syn match vimPlainMark contained "'[a-zA-Z0-9]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
375 syn match vimRange "[`'][a-zA-Z0-9],[`'][a-zA-Z0-9]" contains=vimMark skipwhite nextgroup=vimFilter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
376
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
377 syn match vimRegister '[^,;[{: \t]\zs"[a-zA-Z0-9.%#:_\-/]\ze[^a-zA-Z_":0-9]'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
378 syn match vimRegister '\<norm\s\+\zs"[a-zA-Z0-9]'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
379 syn match vimRegister '\<normal\s\+\zs"[a-zA-Z0-9]'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
380 syn match vimRegister '@"'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
381 syn match vimPlainRegister contained '"[a-zA-Z0-9\-:.%#*+=]'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
382
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
383 syn match vimAddress ",\zs[.$]" skipwhite nextgroup=vimSubst1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
384 syn match vimAddress "%\ze\a" skipwhite nextgroup=vimString,vimSubst1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
385
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
386 syn match vimFilter "^!!\=[^"]\{-}\(|\|\ze\"\|$\)" contains=vimOper,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
387 syn match vimFilter contained "!!\=[^"]\{-}\(|\|\ze\"\|$\)" contains=vimOper,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
388 syn match vimComFilter contained "|!!\=[^"]\{-}\(|\|\ze\"\|$\)" contains=vimOper,vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
389
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
390 " Complex Repeats: (:h complex-repeat) {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
391 " ===============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
392 syn match vimCmplxRepeat '[^a-zA-Z_/\\()]q[0-9a-zA-Z"]\>'lc=1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
393 syn match vimCmplxRepeat '@[0-9a-z".=@:]\ze\($\|[^a-zA-Z]\>\)'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
394
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
395 " Set command and associated set-options (vimOptions) with comment {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
396 syn region vimSet matchgroup=vimCommand start="\<\%(setl\%[ocal]\|setg\%[lobal]\|se\%[t]\)\>" skip="\%(\\\\\)*\\.\n\@!" end="$" end="|" matchgroup=vimNotation end="<[cC][rR]>" keepend contains=vimSetEqual,vimOption,vimErrSetting,vimComment,vim9Comment,vimSetString,vimSetMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
397 syn region vimSetEqual contained start="[=:]\|[-+^]=" skip="\\\\\|\\\s" end="[| \t]"me=e-1 end="$" contains=vimCtrlChar,vimSetSep,vimNotation,vimEnvvar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
398 syn region vimSetString contained start=+="+hs=s+1 skip=+\\\\\|\\"+ end=+"+ contains=vimCtrlChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
399 syn match vimSetSep contained "[,:]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
400 syn match vimSetMod contained "&vim\=\|[!&?<]\|all&"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
401
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
402 " Let And Var: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
403 " ===========
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
404 syn keyword vimLet let unl[et] skipwhite nextgroup=vimVar,vimFuncVar,vimLetHereDoc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
405 VimFoldh syn region vimLetHereDoc matchgroup=vimLetHereDocStart start='=<<\s\+\%(trim\s\+\)\=\%(eval\s\+\)\=\s*\z(\L\S*\)' matchgroup=vimLetHereDocStop end='^\s*\z1\s*$'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
406 syn keyword vimLet var skipwhite nextgroup=vimVar,vimFuncVar,vimLetHereDoc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
407
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
408 " Abbreviations: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
409 " =============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
410 syn keyword vimAbb ab[breviate] ca[bbrev] inorea[bbrev] cnorea[bbrev] norea[bbrev] ia[bbrev] skipwhite nextgroup=vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
411
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
412 " Autocmd: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
413 " =======
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
414 syn match vimAutoEventList contained "\(!\s\+\)\=\(\a\+,\)*\a\+" contains=vimAutoEvent nextgroup=vimAutoCmdSpace
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
415 syn match vimAutoCmdSpace contained "\s\+" nextgroup=vimAutoCmdSfxList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
416 syn match vimAutoCmdSfxList contained "\S*" skipwhite nextgroup=vimAutoCmdMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
417 syn keyword vimAutoCmd au[tocmd] do[autocmd] doautoa[ll] skipwhite nextgroup=vimAutoEventList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
418 syn match vimAutoCmdMod "\(++\)\=\(once\|nested\)"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
419
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
420 " Echo And Execute: -- prefer strings! {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
421 " ================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
422 syn region vimEcho oneline excludenl matchgroup=vimCommand start="\<ec\%[ho]\>" skip="\(\\\\\)*\\|" end="$\||" contains=vimFunc,vimFuncVar,vimString,vimVar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
423 syn region vimExecute oneline excludenl matchgroup=vimCommand start="\<exe\%[cute]\>" skip="\(\\\\\)*\\|" end="$\||\|<[cC][rR]>" contains=vimFuncVar,vimIsCommand,vimOper,vimNotation,vimOperParen,vimString,vimVar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
424 syn match vimEchoHL "echohl\=" skipwhite nextgroup=vimGroup,vimHLGroup,vimEchoHLNone
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
425 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
426 syn keyword vimEchoHLNone none
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
427 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
428
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
429 " Maps: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
430 " ====
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
431 syn match vimMap "\<map\>!\=\ze\s*[^(]" skipwhite nextgroup=vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
432 syn keyword vimMap cm[ap] cno[remap] im[ap] ino[remap] lm[ap] ln[oremap] nm[ap] nn[oremap] no[remap] om[ap] ono[remap] smap snor[emap] tno[remap] tm[ap] vm[ap] vmapc[lear] vn[oremap] xm[ap] xn[oremap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
433 syn keyword vimMap mapc[lear] smapc[lear]
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
434 syn keyword vimUnmap cu[nmap] iu[nmap] lu[nmap] nun[map] ou[nmap] sunm[ap] tunma[p] unm[ap] unm[ap] vu[nmap] xu[nmap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
435 syn match vimMapLhs contained "\S\+" contains=vimNotation,vimCtrlChar skipwhite nextgroup=vimMapRhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
436 syn match vimMapBang contained "!" skipwhite nextgroup=vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
437 syn match vimMapMod contained "\%#=1\c<\(buffer\|expr\|\(local\)\=leader\|nowait\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
438 syn match vimMapRhs contained ".*" contains=vimNotation,vimCtrlChar skipnl nextgroup=vimMapRhsExtend
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
439 syn match vimMapRhsExtend contained "^\s*\\.*$" contains=vimContinue
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
440 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
441 syn keyword vimMapModKey contained buffer expr leader localleader nowait plug script sid silent unique
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
442 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
443
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
444 " Menus: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
445 " =====
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
446 syn cluster vimMenuList contains=vimMenuBang,vimMenuPriority,vimMenuName,vimMenuMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
447 syn keyword vimCommand am[enu] an[oremenu] aun[menu] cme[nu] cnoreme[nu] cunme[nu] ime[nu] inoreme[nu] iunme[nu] me[nu] nme[nu] nnoreme[nu] noreme[nu] nunme[nu] ome[nu] onoreme[nu] ounme[nu] unme[nu] vme[nu] vnoreme[nu] vunme[nu] skipwhite nextgroup=@vimMenuList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
448 syn match vimMenuName "[^ \t\\<]\+" contained nextgroup=vimMenuNameMore,vimMenuMap
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
449 syn match vimMenuPriority "\d\+\(\.\d\+\)*" contained skipwhite nextgroup=vimMenuName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
450 syn match vimMenuNameMore "\c\\\s\|<tab>\|\\\." contained nextgroup=vimMenuName,vimMenuNameMore contains=vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
451 syn match vimMenuMod contained "\c<\(script\|silent\)\+>" skipwhite contains=vimMapModKey,vimMapModErr nextgroup=@vimMenuList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
452 syn match vimMenuMap "\s" contained skipwhite nextgroup=vimMenuRhs
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
453 syn match vimMenuRhs ".*$" contained contains=vimString,vimComment,vim9Comment,vimIsCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
454 syn match vimMenuBang "!" contained skipwhite nextgroup=@vimMenuList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
455
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
456 " Angle-Bracket Notation: (tnx to Michael Geddes) {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
457 " ======================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
458 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
459 syn match vimNotation "\%#=1\(\\\|<lt>\)\=<\([scamd]-\)\{0,4}x\=\(f\d\{1,2}\|[^ \t:]\|cmd\|cr\|lf\|linefeed\|retu\%[rn]\|k\=del\%[ete]\|bs\|backspace\|tab\|esc\|right\|left\|help\|undo\|insert\|ins\|mouse\|k\=home\|k\=end\|kplus\|kminus\|kdivide\|kmultiply\|kenter\|kpoint\|space\|k\=\(page\)\=\(\|down\|up\|k\d\>\)\)>" contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
460 syn match vimNotation "\%#=1\(\\\|<lt>\)\=<\([scam2-4]-\)\{0,4}\(right\|left\|middle\)\(mouse\)\=\(drag\|release\)\=>" contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
461 syn match vimNotation "\%#=1\(\\\|<lt>\)\=<\(bslash\|plug\|sid\|space\|bar\|nop\|nul\|lt\)>" contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
462 syn match vimNotation '\(\\\|<lt>\)\=<C-R>[0-9a-z"%#:.\-=]'he=e-1 contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
463 syn match vimNotation '\%#=1\(\\\|<lt>\)\=<\%(q-\)\=\(line[12]\|count\|bang\|reg\|args\|mods\|f-args\|f-mods\|lt\)>' contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
464 syn match vimNotation "\%#=1\(\\\|<lt>\)\=<\([cas]file\|abuf\|amatch\|cword\|cWORD\|client\)>" contains=vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
465 syn match vimBracket contained "[\\<>]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
466 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
467
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
468 " User Function Highlighting: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
469 " (following Gautam Iyer's suggestion)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
470 " ==========================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
471 syn match vimFunc "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" contains=vimFuncEcho,vimFuncName,vimUserFunc,vimExecute
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
472 syn match vimUserFunc contained "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
473 syn keyword vimFuncEcho contained ec ech echo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
474
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
475 " User Command Highlighting: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
476 syn match vimUsrCmd '^\s*\zs\u\%(\w*\)\@>\%([(#[]\|\s\+\%([-+*/%]\=\|\.\.\)=\)\@!'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
477
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
478 " Errors And Warnings: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
479 " ====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
480 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimfunctionerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
481 syn match vimFunctionError "\s\zs[a-z0-9]\i\{-}\ze\s*(" contained contains=vimFuncKey,vimFuncBlank
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
482 syn match vimFunctionError "\s\zs\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\d\i\{-}\ze\s*(" contained contains=vimFuncKey,vimFuncBlank
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
483 syn match vimElseIfErr "\<else\s\+if\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
484 syn match vimBufnrWarn /\<bufnr\s*(\s*["']\.['"]\s*)/
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
485 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
486
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
487 syn match vimNotFunc "\<if\>\|\<el\%[seif]\>\|\<retu\%[rn]\>\|\<while\>" skipwhite nextgroup=vimOper,vimOperParen,vimVar,vimFunc,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
488
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
489 " Norm: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
490 " ====
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
491 syn match vimNorm "\<norm\%[al]!\=" skipwhite nextgroup=vimNormCmds
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
492 syn match vimNormCmds contained ".*$"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
493
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
494 " Syntax: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
495 "=======
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
496 syn match vimGroupList contained "@\=[^ \t,]*" contains=vimGroupSpecial,vimPatSep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
497 syn match vimGroupList contained "@\=[^ \t,]*," nextgroup=vimGroupList contains=vimGroupSpecial,vimPatSep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
498 syn keyword vimGroupSpecial contained ALL ALLBUT CONTAINED TOP
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
499 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsynerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
500 syn match vimSynError contained "\i\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
501 syn match vimSynError contained "\i\+=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
502 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
503 syn match vimSynContains contained "\<contain\(s\|edin\)=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
504 syn match vimSynKeyContainedin contained "\<containedin=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
505 syn match vimSynNextgroup contained "nextgroup=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
506
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
507 syn match vimSyntax "\<sy\%[ntax]\>" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
508 syn match vimAuSyntax contained "\s+sy\%[ntax]" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
509 syn cluster vimFuncBodyList add=vimSyntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
510
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
511 " Syntax: case {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
512 syn keyword vimSynType contained case skipwhite nextgroup=vimSynCase,vimSynCaseError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
513 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsyncaseerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
514 syn match vimSynCaseError contained "\i\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
515 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
516 syn keyword vimSynCase contained ignore match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
517
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
518 " Syntax: clear {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
519 syn keyword vimSynType contained clear skipwhite nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
520
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
521 " Syntax: cluster {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
522 syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
523 syn region vimClusterName contained matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="$\||" contains=vimGroupAdd,vimGroupRem,vimSynContains,vimSynError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
524 syn match vimGroupAdd contained "add=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
525 syn match vimGroupRem contained "remove=" nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
526 syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
527
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
528 " Syntax: iskeyword {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
529 syn keyword vimSynType contained iskeyword skipwhite nextgroup=vimIskList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
530 syn match vimIskList contained '\S\+' contains=vimIskSep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
531 syn match vimIskSep contained ','
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
532
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
533 " Syntax: include {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
534 syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
535 syn cluster vimFuncBodyList add=vimSynType
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
536
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
537 " Syntax: keyword {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
538 syn cluster vimSynKeyGroup contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
539 syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
540 syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
541 syn match vimSynKeyOpt contained "\%#=1\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
542 syn cluster vimFuncBodyList add=vimSynType
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
543
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
544 " Syntax: match {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
545 syn cluster vimSynMtchGroup contains=vimMtchComment,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
546 syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
547 syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
548 syn match vimSynMtchOpt contained "\%#=1\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
549 if has("conceal")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
550 syn match vimSynMtchOpt contained "\<cchar=" nextgroup=vimSynMtchCchar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
551 syn match vimSynMtchCchar contained "\S"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
552 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
553 syn cluster vimFuncBodyList add=vimSynMtchGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
554
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
555 " Syntax: off and on {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
556 syn keyword vimSynType contained enable list manual off on reset
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
557
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
558 " Syntax: region {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
559 syn cluster vimSynRegPatGroup contains=vimPatSep,vimNotPatSep,vimSynPatRange,vimSynNotPatRange,vimSubstSubstr,vimPatRegion,vimPatSepErr,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
560 syn cluster vimSynRegGroup contains=vimSynContains,vimSynNextgroup,vimSynRegOpt,vimSynReg,vimSynMtchGrp
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
561 syn keyword vimSynType contained region skipwhite nextgroup=vimSynRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
562 syn region vimSynRegion contained keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" end="|\|$" contains=@vimSynRegGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
563 syn match vimSynRegOpt contained "\%#=1\<\(conceal\(ends\)\=\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|keepend\|oneline\|extend\|skipnl\|fold\)\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
564 syn match vimSynReg contained "\(start\|skip\|end\)="he=e-1 nextgroup=vimSynRegPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
565 syn match vimSynMtchGrp contained "matchgroup=" nextgroup=vimGroup,vimHLGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
566 syn region vimSynRegPat contained extend start="\z([-`~!@#$%^&*_=+;:'",./?]\)" skip="\\\\\|\\\z1" end="\z1" contains=@vimSynRegPatGroup skipwhite nextgroup=vimSynPatMod,vimSynReg
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
567 syn match vimSynPatMod contained "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\="
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
568 syn match vimSynPatMod contained "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\=," nextgroup=vimSynPatMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
569 syn match vimSynPatMod contained "lc=\d\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
570 syn match vimSynPatMod contained "lc=\d\+," nextgroup=vimSynPatMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
571 syn region vimSynPatRange contained start="\[" skip="\\\\\|\\]" end="]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
572 syn match vimSynNotPatRange contained "\\\\\|\\\["
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
573 syn match vimMtchComment contained '"[^"]\+$'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
574 syn cluster vimFuncBodyList add=vimSynType
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
575
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
576 " Syntax: sync {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
577 " ============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
578 syn keyword vimSynType contained sync skipwhite nextgroup=vimSyncC,vimSyncLines,vimSyncMatch,vimSyncError,vimSyncLinebreak,vimSyncLinecont,vimSyncRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
579 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsyncerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
580 syn match vimSyncError contained "\i\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
581 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
582 syn keyword vimSyncC contained ccomment clear fromstart
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
583 syn keyword vimSyncMatch contained match skipwhite nextgroup=vimSyncGroupName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
584 syn keyword vimSyncRegion contained region skipwhite nextgroup=vimSynReg
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
585 syn match vimSyncLinebreak contained "\<linebreaks=" skipwhite nextgroup=vimNumber
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
586 syn keyword vimSyncLinecont contained linecont skipwhite nextgroup=vimSynRegPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
587 syn match vimSyncLines contained "\(min\|max\)\=lines=" nextgroup=vimNumber
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
588 syn match vimSyncGroupName contained "\h\w*" skipwhite nextgroup=vimSyncKey
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
589 syn match vimSyncKey contained "\<groupthere\|grouphere\>" skipwhite nextgroup=vimSyncGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
590 syn match vimSyncGroup contained "\h\w*" skipwhite nextgroup=vimSynRegPat,vimSyncNone
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
591 syn keyword vimSyncNone contained NONE
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
592
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
593 " Additional IsCommand: here by reasons of precedence {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
594 " ====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
595 syn match vimIsCommand "<Bar>\s*\a\+" transparent contains=vimCommand,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
596
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
597 " Highlighting: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
598 " ============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
599 syn cluster vimHighlightCluster contains=vimHiLink,vimHiClear,vimHiKeyList,vimComment,vim9Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
600 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimhictermerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
601 syn match vimHiCtermError contained "\D\i*"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
602 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
603 syn match vimHighlight "\<hi\%[ghlight]\>" skipwhite nextgroup=vimHiBang,@vimHighlightCluster
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
604 syn match vimHiBang contained "!" skipwhite nextgroup=@vimHighlightCluster
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
605
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
606 syn match vimHiGroup contained "\i\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
607 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
608 syn keyword vimHiAttrib contained none bold inverse italic nocombine reverse standout strikethrough underline undercurl
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
609 syn keyword vimFgBgAttrib contained none bg background fg foreground
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
610 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
611 syn match vimHiAttribList contained "\i\+" contains=vimHiAttrib
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
612 syn match vimHiAttribList contained "\i\+,"he=e-1 contains=vimHiAttrib nextgroup=vimHiAttribList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
613 syn case ignore
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
614 syn keyword vimHiCtermColor contained black blue brown cyan darkblue darkcyan darkgray darkgreen darkgrey darkmagenta darkred darkyellow gray green grey grey40 grey50 grey90 lightblue lightcyan lightgray lightgreen lightgrey lightmagenta lightred lightyellow magenta red seagreen white yellow
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
615 syn match vimHiCtermColor contained "\<color\d\{1,3}\>"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
616
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
617 syn case match
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
618 syn match vimHiFontname contained "[a-zA-Z\-*]\+"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
619 syn match vimHiGuiFontname contained "'[a-zA-Z\-* ]\+'"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
620 syn match vimHiGuiRgb contained "#\x\{6}"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
621
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
622 " Highlighting: hi group key=arg ... {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
623 syn cluster vimHiCluster contains=vimGroup,vimHiGroup,vimHiTerm,vimHiCTerm,vimHiStartStop,vimHiCtermFgBg,vimHiCtermul,vimHiGui,vimHiGuiFont,vimHiGuiFgBg,vimHiKeyError,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
624 syn region vimHiKeyList contained oneline start="\i\+" skip="\\\\\|\\|" end="$\||" contains=@vimHiCluster
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
625 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_vimhikeyerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
626 syn match vimHiKeyError contained "\i\+="he=e-1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
627 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
628 syn match vimHiTerm contained "\cterm="he=e-1 nextgroup=vimHiAttribList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
629 syn match vimHiStartStop contained "\c\(start\|stop\)="he=e-1 nextgroup=vimHiTermcap,vimOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
630 syn match vimHiCTerm contained "\ccterm="he=e-1 nextgroup=vimHiAttribList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
631 syn match vimHiCtermFgBg contained "\ccterm[fb]g="he=e-1 nextgroup=vimHiNmbr,vimHiCtermColor,vimFgBgAttrib,vimHiCtermError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
632 syn match vimHiCtermul contained "\cctermul="he=e-1 nextgroup=vimHiNmbr,vimHiCtermColor,vimFgBgAttrib,vimHiCtermError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
633 syn match vimHiGui contained "\cgui="he=e-1 nextgroup=vimHiAttribList
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
634 syn match vimHiGuiFont contained "\cfont="he=e-1 nextgroup=vimHiFontname
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
635 syn match vimHiGuiFgBg contained "\cgui\%([fb]g\|sp\)="he=e-1 nextgroup=vimHiGroup,vimHiGuiFontname,vimHiGuiRgb,vimFgBgAttrib
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
636 syn match vimHiTermcap contained "\S\+" contains=vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
637 syn match vimHiNmbr contained '\d\+'
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
638
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
639 " Highlight: clear {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
640 syn keyword vimHiClear contained clear nextgroup=vimHiGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
641
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
642 " Highlight: link {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
643 " see tst24 (hi def vs hi) (Jul 06, 2018)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
644 "syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
645 syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=@vimHiCluster
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
646 syn cluster vimFuncBodyList add=vimHiLink
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
647
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
648 " Control Characters: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
649 " ==================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
650 syn match vimCtrlChar "[- -]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
651
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
652 " Beginners - Patterns that involve ^ {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
653 " =========
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
654 syn match vimLineComment +^[ \t:]*".*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle,vimComment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
655 syn match vimLineComment +^[ \t:]*"\("[^"]*"\|[^"]\)*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
656 syn match vim9LineComment +^[ \t:]\+#.*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
657 syn match vimCommentTitle '"\s*\%([sS]:\|\h\w*#\)\=\u\w*\(\s\+\u\w*\)*:'hs=s+1 contained contains=vimCommentTitleLeader,vimTodo,@vimCommentGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
658 syn match vimContinue "^\s*\\"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
659 syn region vimString start="^\s*\\\z(['"]\)" skip='\\\\\|\\\z1' end="\z1" oneline keepend contains=@vimStringGroup,vimContinue
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
660 syn match vimCommentTitleLeader '"\s\+'ms=s+1 contained
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
661
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
662 " Searches And Globals: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
663 " ====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
664 syn match vimSearch '^\s*[/?].*' contains=vimSearchDelim
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
665 syn match vimSearchDelim '^\s*\zs[/?]\|[/?]$' contained
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
666 syn region vimGlobal matchgroup=Statement start='\<g\%[lobal]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
667 syn region vimGlobal matchgroup=Statement start='\<v\%[global]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
668
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
669 " Embedded Scripts: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
670 " ================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
671 " perl,ruby : Benoit Cerrina
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
672 " python,tcl : Johannes Zellner
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
673 " mzscheme, lua : Charles Campbell
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
674
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
675 " Allows users to specify the type of embedded script highlighting
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
676 " they want: (perl/python/ruby/tcl support)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
677 " g:vimsyn_embed == 0 : don't embed any scripts
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
678 " g:vimsyn_embed =~# 'l' : embed lua (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
679 " g:vimsyn_embed =~# 'm' : embed mzscheme (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
680 " g:vimsyn_embed =~# 'p' : embed perl (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
681 " g:vimsyn_embed =~# 'P' : embed python (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
682 " g:vimsyn_embed =~# 'r' : embed ruby (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
683 " g:vimsyn_embed =~# 't' : embed tcl (but only if vim supports it)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
684 if !exists("g:vimsyn_embed")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
685 let g:vimsyn_embed= "lmpPr"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
686 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
687
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
688 " [-- lua --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
689 let s:luapath= fnameescape(expand("<sfile>:p:h")."/lua.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
690 if !filereadable(s:luapath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
691 for s:luapath in split(globpath(&rtp,"syntax/lua.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
692 if filereadable(fnameescape(s:luapath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
693 let s:luapath= fnameescape(s:luapath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
694 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
695 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
696 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
697 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
698 if (g:vimsyn_embed =~# 'l' && has("lua")) && filereadable(s:luapath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
699 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
700 syn cluster vimFuncBodyList add=vimLuaRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
701 exe "syn include @vimLuaScript ".s:luapath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
702 VimFoldl syn region vimLuaRegion matchgroup=vimScriptDelim start=+lua\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimLuaScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
703 VimFoldl syn region vimLuaRegion matchgroup=vimScriptDelim start=+lua\s*<<\s*$+ end=+\.$+ contains=@vimLuaScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
704 syn cluster vimFuncBodyList add=vimLuaRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
705 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
706 syn region vimEmbedError start=+lua\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
707 syn region vimEmbedError start=+lua\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
708 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
709 unlet s:luapath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
710
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
711 " [-- perl --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
712 let s:perlpath= fnameescape(expand("<sfile>:p:h")."/perl.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
713 if !filereadable(s:perlpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
714 for s:perlpath in split(globpath(&rtp,"syntax/perl.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
715 if filereadable(fnameescape(s:perlpath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
716 let s:perlpath= fnameescape(s:perlpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
717 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
718 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
719 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
720 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
721 if (g:vimsyn_embed =~# 'p' && has("perl")) && filereadable(s:perlpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
722 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
723 syn cluster vimFuncBodyList add=vimPerlRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
724 exe "syn include @vimPerlScript ".s:perlpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
725 VimFoldp syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*\z(\S*\)\ze\(\s*["#].*\)\=$+ end=+^\z1\ze\(\s*[#"].*\)\=$+ contains=@vimPerlScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
726 VimFoldp syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*$+ end=+\.$+ contains=@vimPerlScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
727 syn cluster vimFuncBodyList add=vimPerlRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
728 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
729 syn region vimEmbedError start=+pe\%[rl]\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
730 syn region vimEmbedError start=+pe\%[rl]\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
731 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
732 unlet s:perlpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
733
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
734 " [-- ruby --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
735 let s:rubypath= fnameescape(expand("<sfile>:p:h")."/ruby.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
736 if !filereadable(s:rubypath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
737 for s:rubypath in split(globpath(&rtp,"syntax/ruby.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
738 if filereadable(fnameescape(s:rubypath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
739 let s:rubypath= fnameescape(s:rubypath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
740 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
741 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
742 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
743 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
744 if (g:vimsyn_embed =~# 'r' && has("ruby")) && filereadable(s:rubypath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
745 syn cluster vimFuncBodyList add=vimRubyRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
746 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
747 exe "syn include @vimRubyScript ".s:rubypath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
748 VimFoldr syn region vimRubyRegion matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*\z(\S*\)\ze\(\s*#.*\)\=$+ end=+^\z1\ze\(\s*".*\)\=$+ contains=@vimRubyScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
749 syn region vimRubyRegion matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*$+ end=+\.$+ contains=@vimRubyScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
750 syn cluster vimFuncBodyList add=vimRubyRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
751 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
752 syn region vimEmbedError start=+rub[y]\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
753 syn region vimEmbedError start=+rub[y]\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
754 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
755 unlet s:rubypath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
756
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
757 " [-- python --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
758 let s:pythonpath= fnameescape(expand("<sfile>:p:h")."/python.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
759 if !filereadable(s:pythonpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
760 for s:pythonpath in split(globpath(&rtp,"syntax/python.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
761 if filereadable(fnameescape(s:pythonpath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
762 let s:pythonpath= fnameescape(s:pythonpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
763 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
764 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
765 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
766 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
767 if g:vimsyn_embed =~# 'P' && has("pythonx") && filereadable(s:pythonpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
768 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
769 syn cluster vimFuncBodyList add=vimPythonRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
770 exe "syn include @vimPythonScript ".s:pythonpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
771 VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon][3x]\=\s*<<\s*\%(trim\s*\)\=\z(\S*\)\ze\(\s*#.*\)\=$+ end=+^\z1\ze\(\s*".*\)\=$+ contains=@vimPythonScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
772 VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon][3x]\=\s*<<\s*\%(trim\s*\)\=$+ end=+\.$+ contains=@vimPythonScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
773 VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+Py\%[thon]2or3\s*<<\s*\%(trim\s*\)\=\z(\S*\)\ze\(\s*#.*\)\=$+ end=+^\z1\ze\(\s*".*\)\=$+ contains=@vimPythonScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
774 VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+Py\%[thon]2or3\=\s*<<\s*\%(trim\s*\)\=$+ end=+\.$+ contains=@vimPythonScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
775 syn cluster vimFuncBodyList add=vimPythonRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
776 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
777 syn region vimEmbedError start=+py\%[thon]3\=\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
778 syn region vimEmbedError start=+py\%[thon]3\=\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
779 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
780 unlet s:pythonpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
781
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
782 " [-- tcl --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
783 if has("win32") || has("win95") || has("win64") || has("win16")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
784 " apparently has("tcl") has been hanging vim on some windows systems with cygwin
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
785 let s:trytcl= (&shell !~ '\<\%(bash\>\|4[nN][tT]\|\<zsh\)\>\%(\.exe\)\=$')
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
786 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
787 let s:trytcl= 1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
788 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
789 if s:trytcl
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
790 let s:tclpath= fnameescape(expand("<sfile>:p:h")."/tcl.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
791 if !filereadable(s:tclpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
792 for s:tclpath in split(globpath(&rtp,"syntax/tcl.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
793 if filereadable(fnameescape(s:tclpath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
794 let s:tclpath= fnameescape(s:tclpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
795 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
796 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
797 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
798 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
799 if (g:vimsyn_embed =~# 't' && has("tcl")) && filereadable(s:tclpath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
800 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
801 syn cluster vimFuncBodyList add=vimTclRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
802 exe "syn include @vimTclScript ".s:tclpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
803 VimFoldt syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimTclScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
804 VimFoldt syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+ contains=@vimTclScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
805 syn cluster vimFuncBodyList add=vimTclScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
806 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
807 syn region vimEmbedError start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
808 syn region vimEmbedError start=+tc[l]\=\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
809 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
810 unlet s:tclpath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
811 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
812 syn region vimEmbedError start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
813 syn region vimEmbedError start=+tc[l]\=\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
814 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
815 unlet s:trytcl
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
816
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
817 " [-- mzscheme --] {{{3
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
818 let s:mzschemepath= fnameescape(expand("<sfile>:p:h")."/scheme.vim")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
819 if !filereadable(s:mzschemepath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
820 for s:mzschemepath in split(globpath(&rtp,"syntax/mzscheme.vim"),"\n")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
821 if filereadable(fnameescape(s:mzschemepath))
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
822 let s:mzschemepath= fnameescape(s:mzschemepath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
823 break
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
824 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
825 endfor
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
826 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
827 if (g:vimsyn_embed =~# 'm' && has("mzscheme")) && filereadable(s:mzschemepath)
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
828 unlet! b:current_syntax
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
829 let s:iskKeep= &isk
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
830 syn cluster vimFuncBodyList add=vimMzSchemeRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
831 exe "syn include @vimMzSchemeScript ".s:mzschemepath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
832 let &isk= s:iskKeep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
833 unlet s:iskKeep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
834 VimFoldm syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimMzSchemeScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
835 VimFoldm syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*$+ end=+\.$+ contains=@vimMzSchemeScript
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
836 syn cluster vimFuncBodyList add=vimMzSchemeRegion
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
837 else
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
838 syn region vimEmbedError start=+mz\%[scheme]\s*<<\s*\z(.*\)$+ end=+^\z1$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
839 syn region vimEmbedError start=+mz\%[scheme]\s*<<\s*$+ end=+\.$+
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
840 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
841 unlet s:mzschemepath
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
842
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
843 " Synchronize (speed) {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
844 "============
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
845 if exists("g:vimsyn_minlines")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
846 exe "syn sync minlines=".g:vimsyn_minlines
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
847 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
848 exe "syn sync maxlines=".s:vimsyn_maxlines
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
849 syn sync linecont "^\s\+\\"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
850 syn sync match vimAugroupSyncA groupthere NONE "\<aug\%[roup]\>\s\+[eE][nN][dD]"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
851
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
852 " ====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
853 " Highlighting Settings {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
854 " ====================
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
855
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
856 if !exists("skip_vim_syntax_inits")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
857 if !exists("g:vimsyn_noerror")
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
858 hi def link vimBehaveError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
859 hi def link vimCollClassErr vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
860 hi def link vimErrSetting vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
861 hi def link vimEmbedError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
862 hi def link vimFTError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
863 hi def link vimFunctionError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
864 hi def link vimFunc vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
865 hi def link vimHiAttribList vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
866 hi def link vimHiCtermError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
867 hi def link vimHiKeyError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
868 hi def link vimKeyCodeError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
869 hi def link vimMapModErr vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
870 hi def link vimSubstFlagErr vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
871 hi def link vimSynCaseError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
872 hi def link vimBufnrWarn vimWarn
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
873 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
874
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
875 hi def link vimAbb vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
876 hi def link vimAddress vimMark
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
877 hi def link vimAugroupError vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
878 hi def link vimAugroupKey vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
879 hi def link vimAuHighlight vimHighlight
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
880 hi def link vimAutoCmdOpt vimOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
881 hi def link vimAutoCmd vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
882 hi def link vimAutoEvent Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
883 hi def link vimAutoCmdMod Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
884 hi def link vimAutoSet vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
885 hi def link vimBehaveModel vimBehave
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
886 hi def link vimBehave vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
887 hi def link vimBracket Delimiter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
888 hi def link vimCmplxRepeat SpecialChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
889 hi def link vimCommand Statement
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
890 hi def link vimComment Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
891 hi def link vim9Comment Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
892 hi def link vimCommentString vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
893 hi def link vimCommentTitle PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
894 hi def link vimCondHL vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
895 hi def link vimContinue Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
896 hi def link vimCtrlChar SpecialChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
897 hi def link vimEchoHLNone vimGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
898 hi def link vimEchoHL vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
899 hi def link vimElseIfErr Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
900 hi def link vimElseif vimCondHL
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
901 hi def link vimEnvvar PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
902 hi def link vimError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
903 hi def link vimEscape Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
904 hi def link vimFBVar vimVar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
905 hi def link vimFgBgAttrib vimHiAttrib
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
906 hi def link vimFuncEcho vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
907 hi def link vimHiCtermul vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
908 hi def link vimFold Folded
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
909 hi def link vimFTCmd vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
910 hi def link vimFTOption vimSynType
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
911 hi def link vimFuncKey vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
912 hi def link vimFuncName Function
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
913 hi def link vimFuncSID Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
914 hi def link vimFuncVar Identifier
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
915 hi def link vimGroupAdd vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
916 hi def link vimGroupName vimGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
917 hi def link vimGroupRem vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
918 hi def link vimGroupSpecial Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
919 hi def link vimGroup Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
920 hi def link vimHiAttrib PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
921 hi def link vimHiClear vimHighlight
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
922 hi def link vimHiCtermFgBg vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
923 hi def link vimHiCTerm vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
924 hi def link vimHighlight vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
925 hi def link vimHiGroup vimGroupName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
926 hi def link vimHiGuiFgBg vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
927 hi def link vimHiGuiFont vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
928 hi def link vimHiGuiRgb vimNumber
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
929 hi def link vimHiGui vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
930 hi def link vimHiNmbr Number
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
931 hi def link vimHiStartStop vimHiTerm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
932 hi def link vimHiTerm Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
933 hi def link vimHLGroup vimGroup
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
934 hi def link vimHLMod PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
935 hi def link vimInsert vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
936 hi def link vimIskSep Delimiter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
937 hi def link vimKeyCode vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
938 hi def link vimKeyword Statement
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
939 hi def link vimLet vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
940 hi def link vimLetHereDoc vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
941 hi def link vimLetHereDocStart Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
942 hi def link vimLetHereDocStop Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
943 hi def link vimLineComment vimComment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
944 hi def link vim9LineComment vimComment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
945 hi def link vimMapBang vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
946 hi def link vimMapModKey vimFuncSID
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
947 hi def link vimMapMod vimBracket
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
948 hi def link vimMap vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
949 hi def link vimMark Number
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
950 hi def link vimMarkNumber vimNumber
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
951 hi def link vimMenuMod vimMapMod
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
952 hi def link vimMenuNameMore vimMenuName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
953 hi def link vimMenuName PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
954 hi def link vimMtchComment vimComment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
955 hi def link vimNorm vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
956 hi def link vimNotation Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
957 hi def link vimNotFunc vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
958 hi def link vimNotPatSep vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
959 hi def link vimNumber Number
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
960 hi def link vimOperError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
961 hi def link vimOper Operator
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
962 hi def link vimOperStar vimOper
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
963 hi def link vimOption PreProc
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
964 hi def link vimParenSep Delimiter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
965 hi def link vimPatSepErr vimError
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
966 hi def link vimPatSepR vimPatSep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
967 hi def link vimPatSep SpecialChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
968 hi def link vimPatSepZone vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
969 hi def link vimPatSepZ vimPatSep
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
970 hi def link vimPattern Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
971 hi def link vimPlainMark vimMark
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
972 hi def link vimPlainRegister vimRegister
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
973 hi def link vimRegister SpecialChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
974 hi def link vimScriptDelim Comment
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
975 hi def link vimSearchDelim Statement
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
976 hi def link vimSearch vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
977 hi def link vimSep Delimiter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
978 hi def link vimSetMod vimOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
979 hi def link vimSetSep Statement
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
980 hi def link vimSetString vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
981 hi def link vimSpecFile Identifier
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
982 hi def link vimSpecFileMod vimSpecFile
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
983 hi def link vimSpecial Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
984 hi def link vimStatement Statement
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
985 hi def link vimStringCont vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
986 hi def link vimString String
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
987 hi def link vimStringEnd vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
988 hi def link vimSubst1 vimSubst
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
989 hi def link vimSubstDelim Delimiter
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
990 hi def link vimSubstFlags Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
991 hi def link vimSubstSubstr SpecialChar
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
992 hi def link vimSubstTwoBS vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
993 hi def link vimSubst vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
994 hi def link vimSynCaseError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
995 hi def link vimSynCase Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
996 hi def link vimSyncC Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
997 hi def link vimSyncError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
998 hi def link vimSyncGroupName vimGroupName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
999 hi def link vimSyncGroup vimGroupName
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1000 hi def link vimSyncKey Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1001 hi def link vimSyncNone Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1002 hi def link vimSynContains vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1003 hi def link vimSynError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1004 hi def link vimSynKeyContainedin vimSynContains
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1005 hi def link vimSynKeyOpt vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1006 hi def link vimSynMtchGrp vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1007 hi def link vimSynMtchOpt vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1008 hi def link vimSynNextgroup vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1009 hi def link vimSynNotPatRange vimSynRegPat
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1010 hi def link vimSynOption Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1011 hi def link vimSynPatRange vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1012 hi def link vimSynRegOpt vimSynOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1013 hi def link vimSynRegPat vimString
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1014 hi def link vimSynReg Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1015 hi def link vimSyntax vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1016 hi def link vimSynType vimSpecial
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1017 hi def link vimTodo Todo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1018 hi def link vimType Type
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1019 hi def link vimUnmap vimMap
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1020 hi def link vimUserAttrbCmpltFunc Special
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1021 hi def link vimUserAttrbCmplt vimSpecial
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1022 hi def link vimUserAttrbKey vimOption
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1023 hi def link vimUserAttrb vimSpecial
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1024 hi def link vimUserAttrbError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1025 hi def link vimUserCmdError Error
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1026 hi def link vimUserCommand vimCommand
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1027 hi def link vimUserFunc Normal
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1028 hi def link vimVar Identifier
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1029 hi def link vimWarn WarningMsg
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1030 endif
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1031
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1032 " Current Syntax Variable: {{{2
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1033 let b:current_syntax = "vim"
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1034
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1035 " ---------------------------------------------------------------------
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1036 " Cleanup: {{{1
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1037 delc VimFolda
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1038 delc VimFoldf
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1039 delc VimFoldl
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1040 delc VimFoldm
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1041 delc VimFoldp
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1042 delc VimFoldP
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1043 delc VimFoldr
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1044 delc VimFoldt
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1045 let &cpo = s:keepcpo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1046 unlet s:keepcpo
448aef880252 normalize line endings
Christian Brabandt <cb@256bit.org>
parents: 32449
diff changeset
1047 " vim:ts=18 fdm=marker