" Vim syntax file " Language: Kotlin " Maintainer: Alexander Udalov " Latest Revision: 8 June 2015 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 companion enum inner internal private protected public abstract final open override sealed vararg dynamic syn keyword ktStructure class object interface trait fun val var constructor init syn keyword ktTypedef typealias syn keyword ktBoolean true false syn keyword ktConstant null syn keyword ktModifier data inline reified native synchronized transient volatile syn keyword ktTodo TODO FIXME XXX contained syn match ktLineComment "//.*$" contains=ktTodo,@Spell syn region ktComment matchgroup=ktCommentMatchGroup start="/\*" end="\*/" contains=ktComment,ktTodo,@Spell syn match ktSpecialCharError "\v\\." contained syn match ktSpecialChar "\v\\([tbnr'"$\\]|u\x{4})" contained syn region ktString start='"' skip='\\"' end='"' contains=ktSimpleInterpolation,ktComplexInterpolation,ktSpecialChar,ktSpecialCharError syn region ktString start='"""' end='"""' contains=ktSimpleInterpolation,ktComplexInterpolation,ktSpecialChar,ktSpecialCharError syn match ktCharacter "\v'[^']*'" contains=ktSpecialChar,ktSpecialCharError syn match ktCharacter "\v'\\''" contains=ktSpecialChar syn match ktCharacter "\v'[^\\]'" syn match ktAnnotation "\v\@\h[[:alnum:]_.]*" syn match ktLabel "\v\w+\@" syn match ktSimpleInterpolation "\v\$\h\w*" contained syn region ktComplexInterpolation matchgroup=ktComplexInterpolationBrace start="\v\$\{" end="\v\}" contains=ALLBUT,ktSimpleInterpolation syn match ktNumber "\v<\d+[LFf]?" syn match ktNumber "\v<0[Xx]\x+L?" syn match ktNumber "\v<0[Bb]\d+L?" syn match ktFloat "\v<\d*(\d[eE][-+]?\d+|\.\d+([eE][-+]?\d+)?)[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 ktCommentMatchGroup Comment hi link ktSpecialChar SpecialChar hi link ktSpecialCharError Error hi link ktString String hi link ktCharacter Character hi link ktAnnotation Identifier hi link ktLabel Identifier hi link ktSimpleInterpolation Identifier hi link ktComplexInterpolationBrace Identifier hi link ktNumber Number hi link ktFloat Float hi link ktExclExcl Special hi link ktArrow Structure