vim: add missing operators; fix highlighting of tokens after labels
This commit is contained in:
@@ -4,16 +4,22 @@ endif
|
|||||||
|
|
||||||
let s:save_cpo = &cpoptions
|
let s:save_cpo = &cpoptions
|
||||||
set cpoptions&vim
|
set cpoptions&vim
|
||||||
setlocal iskeyword+=:
|
"setlocal iskeyword+=:
|
||||||
|
|
||||||
syn keyword ivyType Object Int Enum Bool Iterator Lambda Selector Package String Exception Tuple
|
|
||||||
syn match ivyType /\<[A-Z]\{1,2\}\([a-z0-9]\+[A-Z]\{0,2\}\)*\>/
|
syn match ivyType /\<[A-Z]\{1,2\}\([a-z0-9]\+[A-Z]\{0,2\}\)*\>/
|
||||||
|
|
||||||
syn keyword ivyStorage class protocol
|
" we have to use syn match for keywords because any keyword can be used as a
|
||||||
syn keyword ivyRepeat for while in break continue
|
" label by adding : to the end, and adding : to iskeyword causes more problems
|
||||||
syn keyword ivyConditional if elif else unless match
|
" than it solves.
|
||||||
syn match ivySelectorLabel /\<[a-z]\([A-Za-z0-9_]\+\)\:\(\:\)\@!/
|
syn match ivyStorage /\(class\|protocol\)\(\:\)\@!/
|
||||||
syn match ivySelectorLabel /\<\([a-z]\([A-Za-z0-9_]\+\)\:\(\:\)\@!\)\+/
|
syn match ivyRepeat /\(for\|while\|break\|continue\)\(\:\)\@!/
|
||||||
|
syn match ivyConditional /\(if\|elif\|else\|unless\|match\)\(\:\)\@!/
|
||||||
|
syn match ivyException /\(try\|catch\|finally\|throw\)\(\:\)\@!/
|
||||||
|
syn match ivyBuiltinVar /\(error\|cout\|cin\|cerr\)\(\:\)\@!/
|
||||||
|
syn match ivyUnspecifiedStatement /\(end\|package\|use\|as\|then\|do\|get\|set\)\(\:\)\@!/
|
||||||
|
|
||||||
|
syn match ivySelectorLabel /\<[a-z][A-Za-z0-9_]*\:/
|
||||||
|
"syn match ivySelectorLabel /\<\([a-z]\([A-Za-z0-9_]\+\)\:\(\:\)\@!\)\+/
|
||||||
syn match ivyUnnamedVariable /\<_\>/
|
syn match ivyUnnamedVariable /\<_\>/
|
||||||
|
|
||||||
syn match ivyAtomName /#[a-z][a-z0-9_:/]*\>/
|
syn match ivyAtomName /#[a-z][a-z0-9_:/]*\>/
|
||||||
@@ -29,12 +35,9 @@ syn match ivyPropertyName /\($\s*\)\@<=[a-z][A-Za-z0-9_]*/
|
|||||||
syn match ivyLineContinuation /\\\n/
|
syn match ivyLineContinuation /\\\n/
|
||||||
|
|
||||||
" Modifiers
|
" Modifiers
|
||||||
syn keyword ivyException try catch finally throw
|
|
||||||
|
|
||||||
syn match ivySelfVar /\<self\([^a-zA-Z0-9_]\)\@=/
|
syn match ivySelfVar /\<self\([^a-zA-Z0-9_]\)\@=/
|
||||||
syn keyword ivyBuiltinVar error cout cin cerr
|
|
||||||
|
|
||||||
syn keyword ivyUnspecifiedStatement end package use as then do get set
|
|
||||||
|
|
||||||
syn match ivyPackageStmtIdentifier /\(package \)\@<=\([A-Za-z_][A-Za-z0-9_]*\)\(.\([A-Za-z_][A-Za-z0-9_]*\)\)*\(\n\)\@=\>/
|
syn match ivyPackageStmtIdentifier /\(package \)\@<=\([A-Za-z_][A-Za-z0-9_]*\)\(.\([A-Za-z_][A-Za-z0-9_]*\)\)*\(\n\)\@=\>/
|
||||||
syn match ivyUseStmtIdentifier /\(use \)\@<=\([A-Za-z_][A-Za-z0-9_]*\)\(.\([A-Za-z_][A-Za-z0-9_]*\)\)*\(\n\)\@=\>/
|
syn match ivyUseStmtIdentifier /\(use \)\@<=\([A-Za-z_][A-Za-z0-9_]*\)\(.\([A-Za-z_][A-Za-z0-9_]*\)\)*\(\n\)\@=\>/
|
||||||
@@ -43,8 +46,10 @@ syn match ivyUseStmtIdentifier /\(use \)\@<=\([A-Za-z_][A-Za-z0-9_]*\)\(.\([A-Za
|
|||||||
syn match ivyBraces "[{}]" display
|
syn match ivyBraces "[{}]" display
|
||||||
syn match ivyBrackets "[[\]]" display
|
syn match ivyBrackets "[[\]]" display
|
||||||
syn match ivyParens "[()]" display
|
syn match ivyParens "[()]" display
|
||||||
syn match ivyOpSymbols "+\{1,2}" display
|
syn match ivyOpSymbols "+" display
|
||||||
syn match ivyOpSymbols "-\{1,2}" display
|
syn match ivyOpSymbols "-" display
|
||||||
|
syn match ivyOpSymbols "\*" display
|
||||||
|
syn match ivyOpSymbols "/" display
|
||||||
syn match ivyOpSymbols "=\{1,2}" display
|
syn match ivyOpSymbols "=\{1,2}" display
|
||||||
syn match ivyOpSymbols ">\{1,2}" display
|
syn match ivyOpSymbols ">\{1,2}" display
|
||||||
syn match ivyOpSymbols "<\{1,2}" display
|
syn match ivyOpSymbols "<\{1,2}" display
|
||||||
|
|||||||
Reference in New Issue
Block a user