aboutsummaryrefslogtreecommitdiff
path: root/runtime/syntax/cs.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/cs.vim')
-rw-r--r--runtime/syntax/cs.vim26
1 files changed, 17 insertions, 9 deletions
diff --git a/runtime/syntax/cs.vim b/runtime/syntax/cs.vim
index 1652cb63c3..eeb990215d 100644
--- a/runtime/syntax/cs.vim
+++ b/runtime/syntax/cs.vim
@@ -3,7 +3,7 @@
" Maintainer: Nick Jensen <nickspoon@gmail.com>
" Former Maintainers: Anduin Withers <awithers@anduin.com>
" Johannes Zellner <johannes@zellner.org>
-" Last Change: 2018-11-26
+" Last Change: 2019-08-01
" Filenames: *.cs
" License: Vim (see :h license)
" Repository: https://github.com/nickspoons/vim-cs
@@ -51,9 +51,11 @@ syn region csTypeOfStatement start="typeof(" end=")" contains=csType, csTypeOf
" Punctuation
syn match csBraces "[{}\[\]]" display
syn match csParens "[()]" display
-syn match csOpSymbols "[+\-=]\{1,2}" display
-syn match csOpSymbols "[><]\{2}" display
-syn match csOpSymbols "\s\zs[><]\ze\_s" display
+syn match csOpSymbols "+\{1,2}" display
+syn match csOpSymbols "-\{1,2}" display
+syn match csOpSymbols "=\{1,2}" display
+syn match csOpSymbols ">\{1,2}" display
+syn match csOpSymbols "<\{1,2}" display
syn match csOpSymbols "[!><+\-*/]=" display
syn match csOpSymbols "[!*/^]" display
syn match csOpSymbols "=>" display
@@ -63,6 +65,9 @@ syn match csLogicSymbols "||" display
syn match csLogicSymbols "?" display
syn match csLogicSymbols ":" display
+" Generics
+syn region csGeneric matchgroup=csGenericBraces start="<" end=">" oneline contains=csType,csGeneric,csUserType,csUserIdentifier,csUserInterface,csUserMethod
+
" Comments
"
" PROVIDES: @csCommentHook
@@ -87,8 +92,8 @@ syn keyword csXmlTag contained list listheader item term description altcomplian
syn cluster xmlTagHook add=csXmlTag
-syn match csXmlCommentLeader +\/\/\/+ contained
-syn match csXmlComment +\/\/\/.*$+ contains=csXmlCommentLeader,@csXml,@Spell
+syn match csXmlCommentLeader "///" contained
+syn match csXmlComment "///.*$" contains=csXmlCommentLeader,@csXml,@Spell keepend
syn include @csXml syntax/xml.vim
hi def link xmlRegion Comment
@@ -100,7 +105,8 @@ syn region csSummary start="^\s*/// <summary" end="^\%\(\s*///\)\@!" transparent
syn region csClassType start="@\@1<!\<class\>"hs=s+6 end="[:\n{]"me=e-1 contains=csClass
-syn region csNewType start="@\@1<!\<new\>"hs=s+4 end="[;\n{(<\[]"me=e-1 contains=csNew contains=csNewType
+" csUserType may be defined by user scripts/plugins - it should be contained in csNewType
+syn region csNewType start="@\@1<!\<new\>"hs=s+4 end="[;\n{(<\[]"me=e-1 contains=csNew,csUserType
syn region csIsType start=" is "hs=s+4 end="[A-Za-z0-9]\+" oneline contains=csIsAs
syn region csIsType start=" as "hs=s+4 end="[A-Za-z0-9]\+" oneline contains=csIsAs
syn keyword csNew new contained
@@ -146,7 +152,7 @@ syn region csInterVerbString matchgroup=csQuote start=+\$@"+ end=+"+ skip=+""+ e
syn region csBracketed matchgroup=csParens start=+(+ end=+)+ contained transparent contains=@csAll,csBracketed
-syn cluster csAll contains=csCharacter,csClassType,csComment,csContextualStatement,csEndColon,csInterpolatedString,csIsType,csLabel,csLogicSymbols,csNewType,csConstant,csNumber,csOpSymbols,csOperatorError,csParens,csPreCondit,csRegion,csString,csSummary,csUnicodeNumber,csUnicodeSpecifier,csVerbatimString
+syn cluster csAll contains=csCharacter,csClassType,csComment,csContextualStatement,csEndColon,csInterpolatedString,csIsType,csLabel,csLogicSymbols,csNewType,csConstant,csNumber,csOpSymbols,csOperatorError,csParens,csPreCondit,csRegion,csString,csSummary,csType,csUnicodeNumber,csUnicodeSpecifier,csVerbatimString,csUserType,csUserIdentifier,csUserInterface,csUserMethod
" The default highlighting.
hi def link csType Type
@@ -160,7 +166,7 @@ hi def link csLabel Label
hi def link csModifier StorageClass
hi def link csConstant Constant
hi def link csException Exception
-hi def link csTypeOf Operator
+hi def link csTypeOf Keyword
hi def link csTypeOfStatement Typedef
hi def link csUnspecifiedStatement Statement
hi def link csUnsupportedStatement Statement
@@ -198,6 +204,8 @@ hi def link csInterpolationAlignDel csInterpolationDelimiter
hi def link csInterpolationFormat csInterpolationDelimiter
hi def link csInterpolationFormatDel csInterpolationDelimiter
+hi def link csGenericBraces csBraces
+
" xml markup
hi def link csXmlCommentLeader Comment
hi def link csXmlComment Comment