comparison runtime/syntax/vim.vim @ 34482:7375d8465b7e

runtime(vim): Update base-syntax, fix escaping :syn and :hi sub-groups (#14137) Commit: https://github.com/vim/vim/commit/e5c9ba6015735b8b12e35dc5873bfc957dcbb600 Author: dkearns <dougkearns@gmail.com> Date: Tue Mar 5 05:15:42 2024 +1100 runtime(vim): Update base-syntax, fix escaping :syn and :hi sub-groups (https://github.com/vim/vim/issues/14137) * runtime(vim): Update base-syntax, fix escaping :syn and :hi sub-groups - Remove contained :syntax and :highlight sub-groups from the function body cluster. These should only match in the respective commands. - Remove vimSynLine syntax group from several clusters. The definition of vimSynLine was removed in Vim 5.3. * runtime(vim): Update syntax generator, use standard Last Change date format The de facto standard date format is YYYY MMM DD. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Mon, 04 Mar 2024 19:30:03 +0100
parents 86c7f8ed551f
children 408e9818595d
comparison
equal deleted inserted replaced
34481:de28179cc9cd 34482:7375d8465b7e
1 " Vim syntax file 1 " Vim syntax file
2 " Language: Vim script 2 " Language: Vim script
3 " Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com> 3 " Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
4 " Doug Kearns <dougkearns@gmail.com> 4 " Doug Kearns <dougkearns@gmail.com>
5 " URL: https://github.com/vim-jp/syntax-vim-ex 5 " URL: https://github.com/vim-jp/syntax-vim-ex
6 " Last Change: Mar 04, 2024 6 " Last Change: 2024 Mar 04
7 " Former Maintainer: Charles E. Campbell 7 " Former Maintainer: Charles E. Campbell
8 " Base File URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM 8 " Base File URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
9 " Base File Version: 9.0-25 9 " Base File Version: 9.0-25
10 10
11 " DO NOT CHANGE DIRECTLY. 11 " DO NOT CHANGE DIRECTLY.
244 syn keyword vimFTCmd contained filet[ype] 244 syn keyword vimFTCmd contained filet[ype]
245 syn keyword vimFTOption contained detect indent off on plugin 245 syn keyword vimFTOption contained detect indent off on plugin
246 246
247 " Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2 247 " Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
248 " ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking. 248 " ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
249 syn cluster vimAugroupList contains=@vimCmdList,vimFilter,vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vim9Comment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue 249 syn cluster vimAugroupList contains=@vimCmdList,vimFilter,vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vim9Comment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimRegion,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
250 syn match vimAugroup "\<aug\%[roup]\>" contains=vimAugroupKey,vimAugroupBang skipwhite nextgroup=vimAugroupBang,vimAutoCmdGroup 250 syn match vimAugroup "\<aug\%[roup]\>" contains=vimAugroupKey,vimAugroupBang skipwhite nextgroup=vimAugroupBang,vimAutoCmdGroup
251 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'a' 251 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'a'
252 syn region vimAugroup fold start="\<aug\%[roup]\>\ze\s\+\%([eE][nN][dD]\)\@!\S\+" matchgroup=vimAugroupKey end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList,vimAugroupkey skipwhite nextgroup=vimAugroupEnd 252 syn region vimAugroup fold start="\<aug\%[roup]\>\ze\s\+\%([eE][nN][dD]\)\@!\S\+" matchgroup=vimAugroupKey end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList,vimAugroupkey skipwhite nextgroup=vimAugroupEnd
253 else 253 else
254 syn region vimAugroup start="\<aug\%[roup]\>\ze\s\+\%([eE][nN][dD]\)\@!\S\+" matchgroup=vimAugroupKey end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList,vimAugroupkey skipwhite nextgroup=vimAugroupEnd 254 syn region vimAugroup start="\<aug\%[roup]\>\ze\s\+\%([eE][nN][dD]\)\@!\S\+" matchgroup=vimAugroupKey end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList,vimAugroupkey skipwhite nextgroup=vimAugroupEnd
275 endif 275 endif
276 276
277 " Functions : Tag is provided for those who wish to highlight tagged functions {{{2 277 " Functions : Tag is provided for those who wish to highlight tagged functions {{{2
278 " ========= 278 " =========
279 syn cluster vimFuncList contains=vimCommand,vimFunctionError,vimFuncKey,Tag,vimFuncSID 279 syn cluster vimFuncList contains=vimCommand,vimFunctionError,vimFuncKey,Tag,vimFuncSID
280 syn cluster vimFuncBodyList contains=@vimCmdList,vimCmplxRepeat,vimComment,vim9Comment,vimContinue,vimCtrlChar,vimEnvvar,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimLetHereDoc,vimLineComment,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSearch,vimSpecFile,vimString,vimSubst,vimSynLine 280 syn cluster vimFuncBodyList contains=@vimCmdList,vimCmplxRepeat,vimComment,vim9Comment,vimContinue,vimCtrlChar,vimEnvvar,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimLetHereDoc,vimLineComment,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSearch,vimSpecFile,vimString,vimSubst
281 syn match vimFunction "\<\(fu\%[nction]\)!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\=\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody 281 syn match vimFunction "\<\(fu\%[nction]\)!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\=\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
282 syn match vimFunction "\<def\s\+new\i\{-}(" contains=@vimFuncList nextgroup=vimFuncBody 282 syn match vimFunction "\<def\s\+new\i\{-}(" contains=@vimFuncList nextgroup=vimFuncBody
283 syn match vimFunction "\<def!\=\s\+\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody 283 syn match vimFunction "\<def!\=\s\+\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
284 "syn match vimFunction "\<def!\=\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody 284 "syn match vimFunction "\<def!\=\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
285 285
322 syn match vimSpecFile "#\d\+\|[#%]<\>" nextgroup=vimSpecFileMod,vimSubst1 322 syn match vimSpecFile "#\d\+\|[#%]<\>" nextgroup=vimSpecFileMod,vimSubst1
323 syn match vimSpecFileMod "\(:[phtre]\)\+" contained 323 syn match vimSpecFileMod "\(:[phtre]\)\+" contained
324 324
325 " User-Specified Commands: {{{2 325 " User-Specified Commands: {{{2
326 " ======================= 326 " =======================
327 syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,vimComment,vim9Comment,vimCtrlChar,vimEscapeBrace,vimFunc,vimNotation,vimNumber,vimOper,vimRegion,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange,vimSynLine 327 syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,vimComment,vim9Comment,vimCtrlChar,vimEscapeBrace,vimFunc,vimNotation,vimNumber,vimOper,vimRegion,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
328 syn keyword vimUserCommand contained com[mand] 328 syn keyword vimUserCommand contained com[mand]
329 syn match vimUserCmd "\<com\%[mand]!\=\>.*$" contains=vimUserAttrb,vimUserAttrbError,vimUserCommand,@vimUserCmdList,vimComFilter 329 syn match vimUserCmd "\<com\%[mand]!\=\>.*$" contains=vimUserAttrb,vimUserAttrbError,vimUserCommand,@vimUserCmdList,vimComFilter
330 syn match vimUserAttrbError contained "-\a\+\ze\s" 330 syn match vimUserAttrbError contained "-\a\+\ze\s"
331 syn match vimUserAttrb contained "-nargs=[01*?+]" contains=vimUserAttrbKey,vimOper 331 syn match vimUserAttrb contained "-nargs=[01*?+]" contains=vimUserAttrbKey,vimOper
332 syn match vimUserAttrb contained "-complete=" contains=vimUserAttrbKey,vimOper nextgroup=vimUserAttrbCmplt,vimUserCmdError 332 syn match vimUserAttrb contained "-complete=" contains=vimUserAttrbKey,vimOper nextgroup=vimUserAttrbCmplt,vimUserCmdError
619 " Syntax: cluster {{{2 619 " Syntax: cluster {{{2
620 syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName 620 syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName
621 syn region vimClusterName contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="$\||" contains=@vimContinue,vimGroupAdd,vimGroupRem,vimSynContains,vimSynError 621 syn region vimClusterName contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="$\||" contains=@vimContinue,vimGroupAdd,vimGroupRem,vimSynContains,vimSynError
622 syn match vimGroupAdd contained keepend "\<add=" skipwhite skipnl nextgroup=vimGroupList 622 syn match vimGroupAdd contained keepend "\<add=" skipwhite skipnl nextgroup=vimGroupList
623 syn match vimGroupRem contained keepend "\<remove=" skipwhite skipnl nextgroup=vimGroupList 623 syn match vimGroupRem contained keepend "\<remove=" skipwhite skipnl nextgroup=vimGroupList
624 syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem
625 624
626 " Syntax: foldlevel {{{2 625 " Syntax: foldlevel {{{2
627 syn keyword vimSynType contained foldlevel skipwhite nextgroup=vimSynFoldMethod,vimSynFoldMethodError 626 syn keyword vimSynType contained foldlevel skipwhite nextgroup=vimSynFoldMethod,vimSynFoldMethodError
628 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsynfoldmethoderror") 627 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsynfoldmethoderror")
629 syn match vimSynFoldMethodError contained "\i\+" 628 syn match vimSynFoldMethodError contained "\i\+"
635 syn match vimIskList contained '\S\+' contains=vimIskSep 634 syn match vimIskList contained '\S\+' contains=vimIskSep
636 syn match vimIskSep contained ',' 635 syn match vimIskSep contained ','
637 636
638 " Syntax: include {{{2 637 " Syntax: include {{{2
639 syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList 638 syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList
640 syn cluster vimFuncBodyList add=vimSynType
641 639
642 " Syntax: keyword {{{2 640 " Syntax: keyword {{{2
643 syn cluster vimSynKeyGroup contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin 641 syn cluster vimSynKeyGroup contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
644 syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion 642 syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion
645 syn region vimSynKeyRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynKeyGroup 643 syn region vimSynKeyRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynKeyGroup
646 syn match vimSynKeyOpt contained "\%#=1\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>" 644 syn match vimSynKeyOpt contained "\%#=1\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
647 syn cluster vimFuncBodyList add=vimSynType
648 645
649 " Syntax: match {{{2 646 " Syntax: match {{{2
650 syn cluster vimSynMtchGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vimMtchComment 647 syn cluster vimSynMtchGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vimMtchComment
651 syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion 648 syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion
652 syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynMtchGroup 649 syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + matchgroup=vimCmdSep end="|\|$" contains=@vimSynMtchGroup
653 syn match vimSynMtchOpt contained "\%#=1\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>" 650 syn match vimSynMtchOpt contained "\%#=1\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
654 syn cluster vimFuncBodyList add=vimSynMtchGroup
655 651
656 " Syntax: off and on {{{2 652 " Syntax: off and on {{{2
657 syn keyword vimSynType contained enable list manual off on reset 653 syn keyword vimSynType contained enable list manual off on reset
658 654
659 " Syntax: region {{{2 655 " Syntax: region {{{2
670 syn match vimSynPatMod contained "lc=\d\+" 666 syn match vimSynPatMod contained "lc=\d\+"
671 syn match vimSynPatMod contained "lc=\d\+," nextgroup=vimSynPatMod 667 syn match vimSynPatMod contained "lc=\d\+," nextgroup=vimSynPatMod
672 syn region vimSynPatRange contained start="\[" skip="\\\\\|\\]" end="]" 668 syn region vimSynPatRange contained start="\[" skip="\\\\\|\\]" end="]"
673 syn match vimSynNotPatRange contained "\\\\\|\\\[" 669 syn match vimSynNotPatRange contained "\\\\\|\\\["
674 syn match vimMtchComment contained '"[^"]\+$' 670 syn match vimMtchComment contained '"[^"]\+$'
675 syn cluster vimFuncBodyList add=vimSynType
676 671
677 " Syntax: sync {{{2 672 " Syntax: sync {{{2
678 " ============ 673 " ============
679 syn keyword vimSynType contained sync skipwhite nextgroup=vimSyncC,vimSyncLines,vimSyncMatch,vimSyncError,vimSyncLinebreak,vimSyncLinecont,vimSyncRegion 674 syn keyword vimSynType contained sync skipwhite nextgroup=vimSyncC,vimSyncLines,vimSyncMatch,vimSyncError,vimSyncLinebreak,vimSyncLinecont,vimSyncRegion
680 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsyncerror") 675 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimsyncerror")
743 738
744 " Highlight: link {{{2 739 " Highlight: link {{{2
745 " see tst24 (hi def vs hi) (Jul 06, 2018) 740 " see tst24 (hi def vs hi) (Jul 06, 2018)
746 "syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation 741 "syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
747 syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=@vimHiCluster 742 syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=@vimHiCluster
748 syn cluster vimFuncBodyList add=vimHiLink
749 743
750 " Control Characters: {{{2 744 " Control Characters: {{{2
751 " ================== 745 " ==================
752 syn match vimCtrlChar "[- -]" 746 syn match vimCtrlChar "[- -]"
753 747