format cpp and update tsl.vim
This commit is contained in:
+20
-21
@@ -13,7 +13,7 @@ syn case ignore
|
||||
# Keywords
|
||||
# 程序结构声明
|
||||
syn keyword tslProgramStructure program function procedure nextgroup=tslFuncName skipwhite
|
||||
syn keyword tslModuleStructure unit uses implementation interface initalization finalization
|
||||
syn keyword tslModuleStructure unit uses implementation interface initialization finalization
|
||||
|
||||
# 数据类型
|
||||
syn keyword tslPrimitiveType string integer boolean int64 real array
|
||||
@@ -87,9 +87,9 @@ syn match tslReturnType ':\s*[^;]*' contained contains=tslColon
|
||||
syn match tslParamSep '[;,]' contained
|
||||
syn match tslColon ':' contained
|
||||
|
||||
syn match tslVarDecl '\(?\s*\)\@<!\h\w*\s*:=\@!\s*[^;?]*;' contains=tslVarName,tslVarType
|
||||
syn match tslVarName '\(?\s*\)\@<!\h\w*\ze\s*:=\@!' contained
|
||||
syn match tslVarType ':=\@!\s*[^;?]*' contained contains=tslColon
|
||||
syn match tslVarDecl '\(?\s\)\@<!\h\w\s:=\@!\s[^;?];' contains=tslVarName,tslVarType
|
||||
syn match tslVarName '\(?\s\)\@<!\h\w\ze\s:=\@!' contained
|
||||
syn match tslVarType ':=\@!\s[^;?]' contained contains=tslColon
|
||||
|
||||
# 匹配完整的属性链
|
||||
syn match tslPropertyChain '\h\w*\%(\.\h\w*\)\+' contains=tslObjectName,tslPropertyDot,tslPropertyName
|
||||
@@ -99,31 +99,30 @@ syn match tslPropertyName '\.\@<=\h\w*\%(\ze\.\|\ze\s*[^(]\|\ze\s*$\)' contain
|
||||
|
||||
# Function calls
|
||||
syn match tslFuncCallName '\%(\<\%(function\|procedure\)\s\+\%(\h\w*\.\)\?\)\@<!\h\w*\ze\s*('
|
||||
\ containedin=ALLBUT,tslFuncParams,tslPropertyChain,tslFunction,tslFuncName,tslFuncNamePart
|
||||
\ containedin=ALLBUT,tslFuncParams,tslPropertyChain,tslFunction,tslFuncName,tslFuncNamePart,tslComment,tslString,tslRawString
|
||||
|
||||
syn region tslFuncCall
|
||||
\ start='\%(\<\h\w*\s*(\)'
|
||||
\ end=')'
|
||||
\ contains=tslCallParams,tslCallSep,tslCallValue,tslCallParam,tslString,tslNumber,tslIdentifier,tslOperator
|
||||
\ start='\h\w*\s*(\zs'
|
||||
\ end='\ze)'
|
||||
\ contains=tslFuncCallName,tslFuncCall,tslNamedParam,tslPositionalParam,tslString,tslRawString,tslNumber,tslIdentifier,tslOperator,tslParamSep
|
||||
\ transparent
|
||||
|
||||
syn region tslCallParams
|
||||
\ start='\%(\<\h\w*\s*(\)\zs'
|
||||
\ end='\ze)'
|
||||
\ contained
|
||||
\ contains=tslCallParam,tslCallValue,tslCallSep,tslString,tslNumber,tslIdentifier,tslOperator,tslFuncCall
|
||||
syn match tslNamedParam '\h\w*\s*:\s*[^;,)]*' contained
|
||||
\ contains=tslParamName,tslParamColon,tslParamValue
|
||||
|
||||
syn match tslParamName '\h\w*\ze\s*:' contained
|
||||
syn match tslParamColon ':' contained
|
||||
syn match tslParamValue ':\s*\zs[^;,)]*' contained
|
||||
\ contains=tslString,tslNumber,tslIdentifier,tslOperator,tslFuncCall,tslFuncCallName
|
||||
|
||||
syn match tslPositionalParam '[^;,():]*' contained
|
||||
\ contains=tslString,tslNumber,tslIdentifier,tslOperator,tslFuncCall,tslFuncCallName
|
||||
|
||||
syn match tslParamSep '[;,]' contained
|
||||
|
||||
syn match tslCallParam '\h\w*\ze\s*:' contained
|
||||
syn match tslCallValue ':\s*\zs[^;)]*' contained
|
||||
syn match tslCallValue
|
||||
\ ':\s*\zs\\%([^;,)]\+\|.\{-}\%([;,)]\|$\))'
|
||||
\ contained
|
||||
\ contains=tslString,tslNumber,tslIdentifier,tslOperator,tslFunctionCall
|
||||
syn match tslCallSep '[;,]' contained
|
||||
|
||||
# Operators and delimiters
|
||||
syn match tslOperator '[+\-*/<>=!&|^~%]'
|
||||
syn match tslOperator ':='
|
||||
syn match tslDelimiter '[()[\]{},;:.@?]'
|
||||
|
||||
# Comments
|
||||
|
||||
Reference in New Issue
Block a user