Mercurial > vim
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 |