if exists('g:polyglot_disabled') && index(g:polyglot_disabled, 'kotlin') != -1 finish endif " Vim syntax file " Language: Kotlin " Maintainer: Alexander Udalov " Latest Revision: 26 May 2019 if exists('b:current_syntax') finish endif syn keyword ktStatement break continue return syn keyword ktConditional if else when syn keyword ktRepeat do for while syn keyword ktOperator in is by syn keyword ktKeyword get set out super 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 expect actual syn keyword ktStructure class object interface typealias fun val var constructor init syn keyword ktReservedKeyword typeof syn keyword ktBoolean true false syn keyword ktConstant null syn keyword ktModifier data tailrec lateinit reified external inline noinline crossinline const operator infix suspend syn match ktOperator "\v\?:|::|\<\=? | \>\=?|[!=]\=\=?|\??|[-!%&*+/|]" syn keyword ktTodo TODO FIXME XXX contained syn match ktShebang "\v^#!.*$" syn match ktLineComment "\v//.*$" contains=ktTodo,@Spell syn region ktComment matchgroup=ktCommentMatchGroup start="/\*" end="\*/" contains=ktComment,ktTodo,@Spell syn region ktDocComment start="/\*\*" end="\*/" contains=ktDocTag,ktTodo,@Spell syn match ktDocTag "\v\@(author|constructor|receiver|return|since|suppress)>" contained syn match ktDocTag "\v\@(exception|param|property|throws|see|sample)>\s*\S+" contains=ktDocTagParam contained syn match ktDocTagParam "\v(\s|\[)\S+" contained syn match ktComment "/\*\*/" 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'[^\\]'" " TODO: highlight label in 'this@Foo' syn match ktAnnotation "\v(\w)@" hi def link ktStatement Statement hi def link ktConditional Conditional hi def link ktRepeat Repeat hi def link ktOperator Operator hi def link ktKeyword Keyword hi def link ktException Exception hi def link ktReservedKeyword Error hi def link ktInclude Include hi def link ktType Type hi def link ktModifier StorageClass hi def link ktStructure Structure hi def link ktTypedef Typedef hi def link ktBoolean Boolean hi def link ktConstant Constant hi def link ktTodo Todo hi def link ktShebang Comment hi def link ktLineComment Comment hi def link ktComment Comment hi def link ktCommentMatchGroup Comment hi def link ktDocComment Comment hi def link ktDocTag Special hi def link ktDocTagParam Identifier hi def link ktSpecialChar SpecialChar hi def link ktSpecialCharError Error hi def link ktString String hi def link ktCharacter Character hi def link ktAnnotation Identifier hi def link ktLabel Identifier hi def link ktSimpleInterpolation Identifier hi def link ktComplexInterpolationBrace Identifier hi def link ktNumber Number hi def link ktFloat Float hi def link ktExclExcl Special hi def link ktArrow Structure let b:current_syntax = 'kotlin'