runtime(vim): Update base-syntax, match ternary and falsy operators
fixes: #14423 fixes: #16227 closes: #16484 Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
cb848b687f
commit
c273f1ac77
@ -2,7 +2,7 @@
|
||||
" Language: Vim script
|
||||
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
|
||||
" Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2025 Jan 19
|
||||
" Last Change: 2025 Jan 20
|
||||
" Former Maintainer: Charles E. Campbell
|
||||
|
||||
" DO NOT CHANGE DIRECTLY.
|
||||
@ -283,6 +283,10 @@ syn keyword vimAugroupKey contained aug[roup] skipwhite nextgroup=vimAugroupBan
|
||||
syn cluster vimOperGroup contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimRegister,@vimContinue,vim9Comment,vimVar,vimBoolean,vimNull
|
||||
syn match vimOper "\a\@<!!" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn match vimOper "||\|&&\|[-+*/%.]" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn match vimOper "?" skipwhite nextgroup=@vimExprList
|
||||
" distinguish ternary : from ex-colon
|
||||
syn match vimOper "\s\@1<=:\ze\s\|\s\@1<=:$" skipwhite nextgroup=@vimExprList
|
||||
syn match vimOper "??" skipwhite nextgroup=@vimExprList
|
||||
syn match vimOper "=" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn match vimOper "\%#=1\%(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\)[?#]\=" skipwhite nextgroup=vimString,vimSpecFile
|
||||
syn match vimOper "\<is\%(not\)\=\>" skipwhite nextgroup=vimString,vimSpecFile
|
||||
@ -298,9 +302,9 @@ endif
|
||||
syn cluster vimFuncList contains=vimFuncBang,vimFunctionError,vimFuncKey,vimFuncSID,Tag
|
||||
syn cluster vimDefList contains=vimFuncBang,vimFunctionError,vimDefKey,vimFuncSID,Tag
|
||||
|
||||
syn cluster vimFuncBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimEnvvar,vimFBVar,vimFunc,vimFunction,vimLetHereDoc,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSearch,vimSpecFile,vimString,vimSubst,vimFuncFold,vimDefFold
|
||||
syn cluster vimFuncBodyList contains=@vimFuncBodyCommon,vimComment,vimLineComment,vimFuncVar,vimInsert,vimConst,vimLet
|
||||
syn cluster vimDefBodyList contains=@vimFuncBodyCommon,vim9Comment,vim9LineComment,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For
|
||||
syn cluster vimFuncBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimEnvvar,vimFBVar,vimFunc,vimFunction,vimLetHereDoc,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSpecFile,vimString,vimSubst,vimFuncFold,vimDefFold
|
||||
syn cluster vimFuncBodyList contains=@vimFuncBodyCommon,vimComment,vimLineComment,vimFuncVar,vimInsert,vimConst,vimLet,vimSearch
|
||||
syn cluster vimDefBodyList contains=@vimFuncBodyCommon,vim9Comment,vim9LineComment,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For,vim9Search
|
||||
|
||||
syn region vimFuncPattern contained matchgroup=vimOper start="/" end="$" contains=@vimSubstList
|
||||
syn match vimFunction "\<fu\%[nction]\>" skipwhite nextgroup=vimCmdSep,vimComment,vimFuncPattern contains=vimFuncKey
|
||||
@ -1017,8 +1021,10 @@ syn match vim9CommentTitleLeader '#\s\+'ms=s+1 contained
|
||||
|
||||
" Searches And Globals: {{{2
|
||||
" ====================
|
||||
syn match vimSearch '^\s*[/?].*' contains=vimSearchDelim
|
||||
VimL syn match vimSearch '^\s*[/?].*' contains=vimSearchDelim
|
||||
syn match vimSearchDelim '^\s*\zs[/?]\|[/?]$' contained
|
||||
Vim9 syn match vim9Search '^\s*:[/?].*' contains=vim9SearchDelim
|
||||
syn match vim9SearchDelim '^\s*\zs:[/?]\|[/?]$' contained contains=vimCmdSep
|
||||
syn region vimGlobal matchgroup=Statement start='\<g\%[lobal]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst1
|
||||
syn region vimGlobal matchgroup=Statement start='\<v\%[global]!\=/' skip='\\.' end='/' skipwhite nextgroup=vimSubst1
|
||||
|
||||
@ -1399,8 +1405,8 @@ if !exists("skip_vim_syntax_inits")
|
||||
hi def link vimQuoteEscape vimEscape
|
||||
hi def link vimRegister SpecialChar
|
||||
hi def link vimScriptDelim Comment
|
||||
hi def link vimSearchDelim Statement
|
||||
hi def link vimSearch vimString
|
||||
hi def link vimSearchDelim Delimiter
|
||||
hi def link vimSep Delimiter
|
||||
hi def link vimSet vimCommand
|
||||
hi def link vimSetAll vimOption
|
||||
@ -1493,6 +1499,8 @@ if !exists("skip_vim_syntax_inits")
|
||||
hi def link vim9MethodNameError vimFunctionError
|
||||
hi def link vim9Null Constant
|
||||
hi def link vim9Public vimCommand
|
||||
hi def link vim9Search vimString
|
||||
hi def link vim9SearchDelim Delimiter
|
||||
hi def link vim9Static vimCommand
|
||||
hi def link vim9Super Identifier
|
||||
hi def link vim9This Identifier
|
||||
|
||||
Reference in New Issue
Block a user