diff options
Diffstat (limited to 'runtime/syntax')
-rw-r--r-- | runtime/syntax/ant.vim | 94 | ||||
-rw-r--r-- | runtime/syntax/query.lua | 2 | ||||
-rw-r--r-- | runtime/syntax/vim.vim | 64 |
3 files changed, 88 insertions, 72 deletions
diff --git a/runtime/syntax/ant.vim b/runtime/syntax/ant.vim index 6696f96eb1..b0231236dd 100644 --- a/runtime/syntax/ant.vim +++ b/runtime/syntax/ant.vim @@ -1,9 +1,9 @@ " Vim syntax file -" Language: ANT build file (xml) -" Maintainer: Johannes Zellner <johannes@zellner.org> -" Last Change: Tue Apr 27 13:05:59 CEST 2004 -" Filenames: build.xml -" $Id: ant.vim,v 1.1 2004/06/13 18:13:18 vimboss Exp $ +" Language: ANT build file (xml) +" Maintainer: Doug Kearns <dougkearns@gmail.com> +" Previous Maintainer: Johannes Zellner <johannes@zellner.org> +" Last Change: 2024 Jan 27 +" Filenames: build.xml " Quit when a syntax file was already loaded if exists("b:current_syntax") @@ -44,48 +44,48 @@ call AntSyntaxScript('jpython', 'python.vim') syn cluster xmlTagHook add=antElement -syn keyword antElement display WsdlToDotnet addfiles and ant antcall antstructure apply archives arg argument -syn keyword antElement display assertions attrib attribute available basename bcc blgenclient bootclasspath -syn keyword antElement display borland bottom buildnumber buildpath buildpathelement bunzip2 bzip2 cab -syn keyword antElement display catalogpath cc cccheckin cccheckout cclock ccmcheckin ccmcheckintask ccmcheckout -syn keyword antElement display ccmcreatetask ccmkattr ccmkbl ccmkdir ccmkelem ccmklabel ccmklbtype -syn keyword antElement display ccmreconfigure ccrmtype ccuncheckout ccunlock ccupdate checksum chgrp chmod -syn keyword antElement display chown classconstants classes classfileset classpath commandline comment -syn keyword antElement display compilerarg compilerclasspath concat concatfilter condition copy copydir -syn keyword antElement display copyfile coveragepath csc custom cvs cvschangelog cvspass cvstagdiff cvsversion -syn keyword antElement display daemons date defaultexcludes define delete deletecharacters deltree depend -syn keyword antElement display depends dependset depth description different dirname dirset disable dname -syn keyword antElement display doclet doctitle dtd ear echo echoproperties ejbjar element enable entity entry -syn keyword antElement display env equals escapeunicode exclude excludepackage excludesfile exec execon -syn keyword antElement display existing expandproperties extdirs extension extensionSet extensionset factory -syn keyword antElement display fail filelist filename filepath fileset filesmatch filetokenizer filter -syn keyword antElement display filterchain filterreader filters filterset filtersfile fixcrlf footer format -syn keyword antElement display from ftp generic genkey get gjdoc grant group gunzip gzip header headfilter http -syn keyword antElement display ignoreblank ilasm ildasm import importtypelib include includesfile input iplanet -syn keyword antElement display iplanet-ejbc isfalse isreference isset istrue jar jarlib-available -syn keyword antElement display jarlib-manifest jarlib-resolve java javac javacc javadoc javadoc2 jboss jdepend -syn keyword antElement display jjdoc jjtree jlink jonas jpcoverage jpcovmerge jpcovreport jsharpc jspc -syn keyword antElement display junitreport jvmarg lib libfileset linetokenizer link loadfile loadproperties -syn keyword antElement display location macrodef mail majority manifest map mapper marker mergefiles message -syn keyword antElement display metainf method mimemail mkdir mmetrics modified move mparse none not options or -syn keyword antElement display os outputproperty package packageset parallel param patch path pathconvert -syn keyword antElement display pathelement patternset permissions prefixlines present presetdef project -syn keyword antElement display property propertyfile propertyref propertyset pvcs pvcsproject record reference -syn keyword antElement display regexp rename renameext replace replacefilter replaceregex replaceregexp -syn keyword antElement display replacestring replacetoken replacetokens replacevalue replyto report resource -syn keyword antElement display revoke rmic root rootfileset rpm scp section selector sequential serverdeploy -syn keyword antElement display setproxy signjar size sleep socket soscheckin soscheckout sosget soslabel source -syn keyword antElement display sourcepath sql src srcfile srcfilelist srcfiles srcfileset sshexec stcheckin -syn keyword antElement display stcheckout stlabel stlist stringtokenizer stripjavacomments striplinebreaks -syn keyword antElement display striplinecomments style subant substitution support symlink sync sysproperty -syn keyword antElement display syspropertyset tabstospaces tag taglet tailfilter tar tarfileset target -syn keyword antElement display targetfile targetfilelist targetfileset taskdef tempfile test testlet text title -syn keyword antElement display to token tokenfilter touch transaction translate triggers trim tstamp type -syn keyword antElement display typedef unjar untar unwar unzip uptodate url user vbc vssadd vsscheckin -syn keyword antElement display vsscheckout vsscp vsscreate vssget vsshistory vsslabel waitfor war wasclasspath -syn keyword antElement display webapp webinf weblogic weblogictoplink websphere whichresource wlclasspath -syn keyword antElement display wljspc wsdltodotnet xmlcatalog xmlproperty xmlvalidate xslt zip zipfileset -syn keyword antElement display zipgroupfileset +syn keyword antElement WsdlToDotnet addfiles and ant antcall antstructure apply archives arg argument +syn keyword antElement assertions attrib attribute available basename bcc blgenclient bootclasspath +syn keyword antElement borland bottom buildnumber buildpath buildpathelement bunzip2 bzip2 cab +syn keyword antElement catalogpath cc cccheckin cccheckout cclock ccmcheckin ccmcheckintask ccmcheckout +syn keyword antElement ccmcreatetask ccmkattr ccmkbl ccmkdir ccmkelem ccmklabel ccmklbtype +syn keyword antElement ccmreconfigure ccrmtype ccuncheckout ccunlock ccupdate checksum chgrp chmod +syn keyword antElement chown classconstants classes classfileset classpath commandline comment +syn keyword antElement compilerarg compilerclasspath concat concatfilter condition copy copydir +syn keyword antElement copyfile coveragepath csc custom cvs cvschangelog cvspass cvstagdiff cvsversion +syn keyword antElement daemons date defaultexcludes define delete deletecharacters deltree depend +syn keyword antElement depends dependset depth description different dirname dirset disable dname +syn keyword antElement doclet doctitle dtd ear echo echoproperties ejbjar element enable entity entry +syn keyword antElement env equals escapeunicode exclude excludepackage excludesfile exec execon +syn keyword antElement existing expandproperties extdirs extension extensionSet extensionset factory +syn keyword antElement fail filelist filename filepath fileset filesmatch filetokenizer filter +syn keyword antElement filterchain filterreader filters filterset filtersfile fixcrlf footer format +syn keyword antElement from ftp generic genkey get gjdoc grant group gunzip gzip header headfilter http +syn keyword antElement ignoreblank ilasm ildasm import importtypelib include includesfile input iplanet +syn keyword antElement iplanet-ejbc isfalse isreference isset istrue jar jarlib-available +syn keyword antElement jarlib-manifest jarlib-resolve java javac javacc javadoc javadoc2 jboss jdepend +syn keyword antElement jjdoc jjtree jlink jonas jpcoverage jpcovmerge jpcovreport jsharpc jspc +syn keyword antElement junitreport jvmarg lib libfileset linetokenizer link loadfile loadproperties +syn keyword antElement location macrodef mail majority manifest map mapper marker mergefiles message +syn keyword antElement metainf method mimemail mkdir mmetrics modified move mparse none not options or +syn keyword antElement os outputproperty package packageset parallel param patch path pathconvert +syn keyword antElement pathelement patternset permissions prefixlines present presetdef project +syn keyword antElement property propertyfile propertyref propertyset pvcs pvcsproject record reference +syn keyword antElement regexp rename renameext replace replacefilter replaceregex replaceregexp +syn keyword antElement replacestring replacetoken replacetokens replacevalue replyto report resource +syn keyword antElement revoke rmic root rootfileset rpm scp section selector sequential serverdeploy +syn keyword antElement setproxy signjar size sleep socket soscheckin soscheckout sosget soslabel source +syn keyword antElement sourcepath sql src srcfile srcfilelist srcfiles srcfileset sshexec stcheckin +syn keyword antElement stcheckout stlabel stlist stringtokenizer stripjavacomments striplinebreaks +syn keyword antElement striplinecomments style subant substitution support symlink sync sysproperty +syn keyword antElement syspropertyset tabstospaces tag taglet tailfilter tar tarfileset target +syn keyword antElement targetfile targetfilelist targetfileset taskdef tempfile test testlet text title +syn keyword antElement to token tokenfilter touch transaction translate triggers trim tstamp type +syn keyword antElement typedef unjar untar unwar unzip uptodate url user vbc vssadd vsscheckin +syn keyword antElement vsscheckout vsscp vsscreate vssget vsshistory vsslabel waitfor war wasclasspath +syn keyword antElement webapp webinf weblogic weblogictoplink websphere whichresource wlclasspath +syn keyword antElement wljspc wsdltodotnet xmlcatalog xmlproperty xmlvalidate xslt zip zipfileset +syn keyword antElement zipgroupfileset hi def link antElement Statement diff --git a/runtime/syntax/query.lua b/runtime/syntax/query.lua index 8f40b1cb8a..1e129dbeff 100644 --- a/runtime/syntax/query.lua +++ b/runtime/syntax/query.lua @@ -1,5 +1,5 @@ -- Neovim syntax file --- Language: Tree-sitter query +-- Language: Treesitter query -- Last Change: 2022 Apr 13 -- it's a lisp! diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 71556b4848..298215b880 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -204,7 +204,7 @@ syn keyword vimAugroupKey contained aug[roup] " Operators: {{{2 " ========= -syn cluster vimOperGroup contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimType,vimRegister,vimContinue,vim9Comment,vimVar +syn cluster vimOperGroup contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimType,vimRegister,@vimContinue,vim9Comment,vimVar syn match vimOper "||\|&&\|[-+*/%.!]" skipwhite nextgroup=vimString,vimSpecFile syn match vimOper "\%#=1\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\|!\~#\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile syn match vimOper "\(\<is\|\<isnot\)[?#]\{0,2}\>" skipwhite nextgroup=vimString,vimSpecFile @@ -311,6 +311,12 @@ syn match vimString contained +"[^"]*\\$+ skipnl nextgroup=vimStringCont syn match vimStringCont contained +\(\\\\\|.\)\{-}[^\\]"+ syn match vimEscape contained "\\." +syn region vimString start=+$'+ end=+'+ skip=+''+ oneline contains=vimStringInterpolationBrace,vimStringInterpolationExpr +syn region vimString start=+$"+ end=+"+ oneline contains=@vimStringGroup,vimStringInterpolationBrace,vimStringInterpolationExpr +syn region vimStringInterpolationExpr matchgroup=vimOperParen start=+{+ end=+}+ oneline contains=vimFunc,vimFuncVar,vimOper,vimNotation,vimOperParen,vimString,vimVar +syn match vimStringInterpolationBrace "{{" +syn match vimStringInterpolationBrace "}}" + " Substitutions: {{{2 " ============= syn cluster vimSubstList contains=vimPatSep,vimPatRegion,vimPatSepErr,vimSubstTwoBS,vimSubstRange,vimNotation @@ -476,16 +482,22 @@ syn match vimNormCmds contained ".*$" " Syntax: {{{2 "======= -syn match vimGroupList contained "@\=[^ \t,]*" contains=vimGroupSpecial,vimPatSep -syn match vimGroupList contained "@\=[^ \t,]*," nextgroup=vimGroupList contains=vimGroupSpecial,vimPatSep +syn match vimGroupList contained "[^[:space:],]\+\%(\s*,\s*[^[:space:],]\+\)*" contains=vimGroupSpecial +syn region vimGroupList contained start=/^\s*["#]\\ \|^\s*\\\|[^[:space:],]\+\s*,/ skip=/\s*\n\s*\\\|\s*\n\s*["#]\\ \|^\s*\\\|^\s*["#]\\ / end=/[^[:space:],]\s*$\|[^[:space:],]\ze\s\+\w/ contains=@vimContinue,vimGroupSpecial syn keyword vimGroupSpecial contained ALL ALLBUT CONTAINED TOP + if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsynerror") syn match vimSynError contained "\i\+" syn match vimSynError contained "\i\+=" nextgroup=vimGroupList endif -syn match vimSynContains contained "\<contain\(s\|edin\)=" nextgroup=vimGroupList -syn match vimSynKeyContainedin contained "\<containedin=" nextgroup=vimGroupList -syn match vimSynNextgroup contained "nextgroup=" nextgroup=vimGroupList +syn match vimSynContains contained "\<contain\%(s\|edin\)=" skipwhite skipnl nextgroup=vimGroupList +syn match vimSynKeyContainedin contained "\<containedin=" skipwhite skipnl nextgroup=vimGroupList +syn match vimSynNextgroup contained "\<nextgroup=" skipwhite skipnl nextgroup=vimGroupList +if has("conceal") + " no whitespace allowed after '=' + syn match vimSynCchar contained "\<cchar=" nextgroup=vimSynCcharValue + syn match vimSynCcharValue contained "\S" +endif syn match vimSyntax "\<sy\%[ntax]\>" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment,vim9Comment syn match vimAuSyntax contained "\s+sy\%[ntax]" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment,vim9Comment @@ -503,9 +515,9 @@ syn keyword vimSynType contained clear skipwhite nextgroup=vimGroupList " Syntax: cluster {{{2 syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName -syn region vimClusterName contained matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="$\||" contains=vimGroupAdd,vimGroupRem,vimSynContains,vimSynError -syn match vimGroupAdd contained "add=" nextgroup=vimGroupList -syn match vimGroupRem contained "remove=" nextgroup=vimGroupList +syn region vimClusterName contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="$\||" contains=@vimContinue,vimGroupAdd,vimGroupRem,vimSynContains,vimSynError +syn match vimGroupAdd contained keepend "\<add=" skipwhite skipnl nextgroup=vimGroupList +syn match vimGroupRem contained keepend "\<remove=" skipwhite skipnl nextgroup=vimGroupList syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem " Syntax: foldlevel {{{2 @@ -525,35 +537,31 @@ syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList syn cluster vimFuncBodyList add=vimSynType " Syntax: keyword {{{2 -syn cluster vimSynKeyGroup contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin +syn cluster vimSynKeyGroup contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion -syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup +syn region vimSynKeyRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynKeyGroup syn match vimSynKeyOpt contained "\%#=1\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>" syn cluster vimFuncBodyList add=vimSynType " Syntax: match {{{2 -syn cluster vimSynMtchGroup contains=vimMtchComment,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vim9Comment +syn cluster vimSynMtchGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vimMtchComment syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion -syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup +syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynMtchGroup syn match vimSynMtchOpt contained "\%#=1\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>" -if has("conceal") - syn match vimSynMtchOpt contained "\<cchar=" nextgroup=vimSynMtchCchar - syn match vimSynMtchCchar contained "\S" -endif syn cluster vimFuncBodyList add=vimSynMtchGroup " Syntax: off and on {{{2 syn keyword vimSynType contained enable list manual off on reset " Syntax: region {{{2 -syn cluster vimSynRegPatGroup contains=vimPatSep,vimNotPatSep,vimSynPatRange,vimSynNotPatRange,vimSubstSubstr,vimPatRegion,vimPatSepErr,vimNotation -syn cluster vimSynRegGroup contains=vimSynContains,vimSynNextgroup,vimSynRegOpt,vimSynReg,vimSynMtchGrp +syn cluster vimSynRegPatGroup contains=@vimContinue,vimPatSep,vimNotPatSep,vimSynPatRange,vimSynNotPatRange,vimSubstSubstr,vimPatRegion,vimPatSepErr,vimNotation +syn cluster vimSynRegGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynNextgroup,vimSynRegOpt,vimSynReg,vimSynMtchGrp syn keyword vimSynType contained region skipwhite nextgroup=vimSynRegion -syn region vimSynRegion contained keepend matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" end="|\|$" contains=@vimSynRegGroup +syn region vimSynRegion contained keepend matchgroup=vimGroupName start="\h\w*" skip=+\\\\\|\\\|\n\s*\\\|\n\s*"\\ + end="|\|$" contains=@vimSynRegGroup syn match vimSynRegOpt contained "\%#=1\<\(conceal\(ends\)\=\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|keepend\|oneline\|extend\|skipnl\|fold\)\>" -syn match vimSynReg contained "\(start\|skip\|end\)="he=e-1 nextgroup=vimSynRegPat +syn match vimSynReg contained "\<\%(start\|skip\|end\)=" nextgroup=vimSynRegPat syn match vimSynMtchGrp contained "matchgroup=" nextgroup=vimGroup,vimHLGroup,vimOnlyHLGroup,nvimHLGroup -syn region vimSynRegPat contained extend start="\z([-`~!@#$%^&*_=+;:'",./?]\)" skip="\\\\\|\\\z1" end="\z1" contains=@vimSynRegPatGroup skipwhite nextgroup=vimSynPatMod,vimSynReg +syn region vimSynRegPat contained extend start="\z([-`~!@#$%^&*_=+;:'",./?]\)" skip=/\\\\\|\\\z1\|\n\s*\\\|\n\s*"\\ / end="\z1" contains=@vimSynRegPatGroup skipwhite nextgroup=vimSynPatMod,vimSynReg syn match vimSynPatMod contained "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\=" syn match vimSynPatMod contained "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\=," nextgroup=vimSynPatMod syn match vimSynPatMod contained "lc=\d\+" @@ -642,10 +650,14 @@ syn match vimCtrlChar "[--]" " Beginners - Patterns that involve ^ {{{2 " ========= -syn match vimLineComment +^[ \t:]*".*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle +syn match vimLineComment +^[ \t:]*".*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle,vimComment +syn match vimLineComment +^[ \t:]*"\("[^"]*"\|[^"]\)*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle syn match vim9LineComment +^[ \t:]\+#.*$+ contains=@vimCommentGroup,vimCommentString,vimCommentTitle syn match vimCommentTitle '"\s*\%([sS]:\|\h\w*#\)\=\u\w*\(\s\+\u\w*\)*:'hs=s+1 contained contains=vimCommentTitleLeader,vimTodo,@vimCommentGroup -syn match vimContinue "^\s*\\" +" Note: Look-behind to work around nextgroup skipnl consuming leading whitespace and preventing a match +syn match vimContinue "^\s*\zs\\" +syn match vimContinueComment '^\s*\zs["#]\\ .*' contained +syn cluster vimContinue contains=vimContinue,vimContinueComment syn region vimString start="^\s*\\\z(['"]\)" skip='\\\\\|\\\z1' end="\z1" oneline keepend contains=@vimStringGroup,vimContinue syn match vimCommentTitleLeader '"\s\+'ms=s+1 contained @@ -889,6 +901,7 @@ if !exists("skip_vim_syntax_inits") hi def link vimCondHL vimCommand hi def link vimConst vimCommand hi def link vimContinue Special + hi def link vimContinueComment vimComment hi def link vimCtrlChar SpecialChar hi def link vimEchoHLNone vimGroup hi def link vimEchoHL vimCommand @@ -984,6 +997,7 @@ if !exists("skip_vim_syntax_inits") hi def link vimStringCont vimString hi def link vimString String hi def link vimStringEnd vimString + hi def link vimStringInterpolationBrace vimEscape hi def link vimSubst1 vimSubst hi def link vimSubstDelim Delimiter hi def link vimSubstFlags Special @@ -1004,6 +1018,8 @@ if !exists("skip_vim_syntax_inits") hi def link vimSynFoldMethod Type hi def link vimSynKeyContainedin vimSynContains hi def link vimSynKeyOpt vimSynOption + hi def link vimSynCchar vimSynOption + hi def link vimSynCcharValue Character hi def link vimSynMtchGrp vimSynOption hi def link vimSynMtchOpt vimSynOption hi def link vimSynNextgroup vimSynOption |