mirror of
https://github.com/udalov/kotlin-vim.git
synced 2025-12-17 12:00:17 +01:00
78 lines
2.0 KiB
VimL
78 lines
2.0 KiB
VimL
" Vim syntax file
|
|
" Language: Kotlin
|
|
" Maintainer: Alexander Udalov
|
|
" Latest Revision: 13 June 2014
|
|
|
|
if exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
let b:current_syntax = "kotlin"
|
|
|
|
syn keyword ktStatement break continue return
|
|
syn keyword ktConditional if else when
|
|
syn keyword ktRepeat do for while
|
|
syn keyword ktOperator as in is by
|
|
syn keyword ktKeyword get set out super this This where
|
|
syn keyword ktException try catch finally throw
|
|
|
|
syn keyword ktInclude import package
|
|
|
|
syn keyword ktType Any Boolean Byte Char Double Float Int Long Nothing Short Unit
|
|
syn keyword ktModifier annotation data enum inner internal private protected public abstract final open override vararg
|
|
syn keyword ktStructure class fun object trait val var
|
|
syn keyword ktTypedef type
|
|
|
|
syn keyword ktBoolean true false
|
|
syn keyword ktConstant null
|
|
|
|
syn keyword ktTodo contained TODO FIXME XXX
|
|
syn match ktLineComment "//.*" contains=ktTodo,@Spell
|
|
syn region ktComment start="/\*" end="\*/" contains=ktTodo,@Spell
|
|
|
|
syn region ktString start='"' skip='\\"' end='"'
|
|
syn region ktString start='"""' end='"""'
|
|
syn match ktCharacter "'.'"
|
|
|
|
syn match ktNumber "\v<[0-9]+[LFf]?"
|
|
syn match ktNumber "\v<0[Xx][0-9A-Fa-f]+L?"
|
|
syn match ktNumber "\v<0[Bb][0-9]+L?"
|
|
syn match ktFloat "\v[-+]?[0-9]*([eE][-+]?[0-9]+|\.[0-9]+([eE][-+]?[0-9]+)?)[Ff]?"
|
|
|
|
syn match ktEscapedName "\v`.*`"
|
|
|
|
syn match ktExclExcl "!!"
|
|
syn match ktArrow "->"
|
|
|
|
|
|
|
|
hi link ktStatement Statement
|
|
hi link ktConditional Conditional
|
|
hi link ktRepeat Repeat
|
|
hi link ktOperator Operator
|
|
hi link ktKeyword Keyword
|
|
hi link ktException Exception
|
|
|
|
hi link ktInclude Include
|
|
|
|
hi link ktType Type
|
|
hi link ktModifier StorageClass
|
|
hi link ktStructure Structure
|
|
hi link ktTypedef Typedef
|
|
|
|
hi link ktBoolean Boolean
|
|
hi link ktConstant Constant
|
|
|
|
hi link ktTodo Todo
|
|
hi link ktLineComment Comment
|
|
hi link ktComment Comment
|
|
|
|
hi link ktString String
|
|
hi link ktCharacter Character
|
|
|
|
hi link ktNumber Number
|
|
hi link ktFloat Float
|
|
|
|
hi link ktExclExcl Special
|
|
hi link ktArrow Structure
|