Warning, /frameworks/syntax-highlighting/data/syntax/kotlin.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE language 0003 [ 0004 <!ENTITY int "(?:[0-9]++(_++[0-9]++)*+)"> 0005 <!ENTITY hex "(?:[0-9a-fA-F]++(_++[0-9a-fA-F]++)*+)"> 0006 <!ENTITY exp "(?:[eE][-+]?∫)"> 0007 <!ENTITY float "(\b∫(\.((∫&exp;?+|&exp;)[fF]?\b|[fF]\b)?|&exp;[fF]?\b|[fF]\b)|\.∫&exp;?[fF]?\b)"> 0008 <!ENTITY hexfloat "\b0[xX](&hex;\.?+&hex;?+|\.&hex;?)[pP][-+]?∫[fF]?\b"> 0009 ]> 0010 <!-- kotlin language syntax http://kotlinlang.org --> 0011 <language name="Kotlin" version="11" kateversion="5.62" section="Sources" extensions="*.kt;*.kts" license="LGPLv2+" author="Sergey Mashkov (sergey.mashkov@jetbrains.com)" style="cstyle" indenter="cstyle"> 0012 <highlighting> 0013 <list name="keywords"> 0014 <item>package</item> 0015 <item>import</item> 0016 0017 <item>sealed</item> 0018 <item>data</item> 0019 <item>class</item> 0020 <item>enum</item> 0021 <item>interface</item> 0022 <item>companion</item> 0023 <item>object</item> 0024 0025 <item>private</item> 0026 <item>public</item> 0027 <item>protected</item> 0028 <item>internal</item> 0029 <item>open</item> 0030 <item>final</item> 0031 0032 <item>get</item> 0033 <item>set</item> 0034 <item>fun</item> 0035 <item>var</item> 0036 <item>val</item> 0037 <item>constructor</item> 0038 0039 <item>inline</item> 0040 <item>reified</item> 0041 <item>crossinline</item> 0042 <item>tailrec</item> 0043 0044 <item>in</item> 0045 <item>out</item> 0046 <item>is</item> 0047 <item>as</item> 0048 <item>by</item> 0049 <item>where</item> 0050 0051 <item>vararg</item> 0052 <item>get</item> 0053 <item>set</item> 0054 0055 <item>return</item> 0056 <item>throw</item> 0057 0058 <item>typealias</item> 0059 <item>typeof</item> 0060 <item>override</item> 0061 <item>abstract</item> 0062 <item>infix</item> 0063 <item>operator</item> 0064 0065 <item>annotation</item> 0066 <item>const</item> 0067 <item>lateinit</item> 0068 <item>inner</item> 0069 <item>external</item> 0070 <item>noinline</item> 0071 </list> 0072 <list name="controlFlowKeyword"> 0073 <item>if</item> 0074 <item>else</item> 0075 <item>when</item> 0076 0077 <item>for</item> 0078 <item>while</item> 0079 <item>do</item> 0080 0081 <item>try</item> 0082 <item>catch</item> 0083 <item>finally</item> 0084 0085 <item>continue</item> 0086 <item>break</item> 0087 <item>yield</item> 0088 </list> 0089 <list name="predeclared"> 0090 <item>this</item> 0091 <item>super</item> 0092 <item>null</item> 0093 <item>true</item> 0094 <item>false</item> 0095 </list> 0096 <list name="types"> 0097 <item>Unit</item> 0098 <item>Nothing</item> 0099 0100 <item>String</item> 0101 <item>Char</item> 0102 0103 <item>Int</item> 0104 <item>Long</item> 0105 <item>Byte</item> 0106 <item>Short</item> 0107 <item>Float</item> 0108 <item>Double</item> 0109 0110 <item>Boolean</item> 0111 0112 <item>dynamic</item> 0113 </list> 0114 0115 <contexts> 0116 <context attribute="Normal Text" lineEndContext="#stay" name="Start" fallthroughContext="Normal"> 0117 <Detect2Chars attribute="Comment" context="Shebang" char="#" char1="!" /> 0118 </context> 0119 <context attribute="Normal Text" lineEndContext="#pop!Normal" name="Shebang"> 0120 </context> 0121 0122 <context attribute="Normal Text" lineEndContext="#stay" name="Normal"> 0123 <DetectSpaces context="#stay"/> 0124 0125 <DetectChar attribute="Symbol" context="Dot" char="." lookAhead="1"/> 0126 <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1"/> 0127 <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1"/> 0128 <DetectChar attribute="Annotation" context="Annotation" char="@" /> 0129 0130 <IncludeRules context="Comment"/> 0131 0132 <AnyChar attribute="Symbol" context="#stay" String="()[]&|+,-/*<=>;!%?:~^"/> 0133 0134 <AnyChar context="Number" String="0123456789" lookAhead="1"/> 0135 0136 <DetectChar context="String" char=""" lookAhead="1"/> 0137 <DetectChar context="Char" char="'" lookAhead="1"/> 0138 0139 <WordDetect attribute="Keyword" context="VariableDeclaration" String="val"/> 0140 <WordDetect attribute="Keyword" context="VariableDeclaration" String="var"/> 0141 0142 <WordDetect attribute="Keyword" context="FunctionDeclaration" String="fun"/> 0143 0144 <WordDetect attribute="Keyword" context="Imports" String="package"/> 0145 <WordDetect attribute="Keyword" context="Imports" String="import"/> 0146 0147 <WordDetect attribute="Keyword" context="TypeDeclaration" String="object"/> 0148 <WordDetect attribute="Keyword" context="TypeDeclaration" String="class"/> 0149 <WordDetect attribute="Keyword" context="TypeDeclaration" String="interface"/> 0150 0151 <keyword attribute="Keyword" context="#stay" String="predeclared"/> 0152 <keyword attribute="Keyword" context="#stay" String="keywords"/> 0153 <keyword attribute="ControlFlowKeyword" context="#stay" String="controlFlowKeyword"/> 0154 <keyword attribute="Keyword" context="#stay" String="types"/> 0155 0156 <DetectIdentifier attribute="Normal Text"/> 0157 </context> 0158 0159 <context attribute="Normal Text" lineEndContext="#stay" name="Comment"> 0160 <Detect2Chars attribute="Comment" context="CommentSingleLine" char="/" char1="/"/> 0161 <Detect2Chars attribute="Comment" context="CommentMultiline" char="/" char1="*" beginRegion="Comment"/> 0162 </context> 0163 0164 <context attribute="Normal Text" lineEndContext="#stay" name="Number"> 0165 <IncludeRules context="FindFloat"/> 0166 <RegExpr attribute="Hex" context="#pop" String="\b0[xX]&hex;[lL]?\b"/> 0167 <RegExpr attribute="Binary" context="#pop" String="\b0[bB][01]++(_++[01]++)*+[uUlL]?\b"/> 0168 <RegExpr attribute="Decimal" context="#pop" String="\b(0|[1-9][0-9]*+(_++[0-9_]++)*+)[uUlL]?\b"/> 0169 <AnyChar attribute="Error" context="#pop" String="0123456789"/> 0170 </context> 0171 <context attribute="Normal Text" lineEndContext="#stay" name="FindFloat"> 0172 <RegExpr attribute="Float" context="#pop" String="&float;|&hexfloat;"/> 0173 </context> 0174 0175 <context attribute="Normal Text" lineEndContext="#stay" name="Dot"> 0176 <IncludeRules context="FindFloat"/> 0177 <DetectChar attribute="Symbol" context="#pop" char="." /> 0178 </context> 0179 0180 <context attribute="Normal Text" lineEndContext="#pop" name="Annotation" fallthroughContext="#pop"> 0181 <DetectIdentifier attribute="Annotation"/> 0182 <DetectChar attribute="Symbol" char=":"/> 0183 <RangeDetect attribute="Annotation" context="#pop" char="[" char1="]"/> 0184 <IncludeRules context="Comment"/> 0185 </context> 0186 0187 <context attribute="Normal Text" lineEndContext="#stay" name="Char"> 0188 <HlCChar attribute="Char" context="#pop"/> 0189 <RegExpr attribute="Char" context="#pop" String="'\\u[0-9a-fA-F]{4}'"/> 0190 <RegExpr attribute="Error" context="#pop" String="'(\\(u[0-9a-fA-F]*|.))?'?"/> 0191 </context> 0192 0193 <context attribute="String" lineEndContext="#pop" name="String"> 0194 <StringDetect attribute="String" context="#pop!MultiLineString" String=""""" beginRegion="MultiLineString"/> 0195 <DetectChar attribute="String" context="#pop!SingleLineString" char="""/> 0196 </context> 0197 <context attribute="String" lineEndContext="#pop" name="SingleLineString"> 0198 <DetectChar context="StringEscapedChar" char="\" lookAhead="1"/> 0199 <DetectChar context="Interpolation" char="$" lookAhead="1"/> 0200 <DetectChar attribute="String" context="#pop" char="""/> 0201 </context> 0202 <context attribute="String" lineEndContext="#stay" name="MultiLineString"> 0203 <DetectChar context="StringEscapedChar" char="\" lookAhead="1"/> 0204 <DetectChar context="Interpolation" char="$" lookAhead="1"/> 0205 <DetectChar context="MultiLineStringFinal" char=""" lookAhead="1"/> 0206 </context> 0207 <context attribute="String" lineEndContext="#stay" name="MultiLineStringFinal"> 0208 <StringDetect context="MultiLineStringNoFinal" String="""""" lookAhead="1"/> 0209 <StringDetect attribute="String" context="#pop#pop" String=""""" endRegion="MultiLineString"/> 0210 <Detect2Chars attribute="String" context="#pop" char=""" char1="""/> 0211 <DetectChar attribute="String" context="#pop" char="""/> 0212 </context> 0213 <context attribute="String" lineEndContext="#stay" name="MultiLineStringNoFinal"> 0214 <DetectChar attribute="String" context="#pop" char="""/> 0215 </context> 0216 <context attribute="String" lineEndContext="#pop" name="StringEscapedChar"> 0217 <HlCStringChar attribute="String Char" context="#pop"/> 0218 <Detect2Chars attribute="String Char" context="#pop" char="\" char1="$"/> 0219 <RegExpr attribute="String Char" context="#pop" String="\\u[0-9a-fA-F]{4}"/> 0220 <RegExpr attribute="Error" context="#pop" String="\\(u[0-9a-fA-F]*|.)?"/> 0221 </context> 0222 0223 <context attribute="String" lineEndContext="#stay" name="Interpolation"> 0224 <Detect2Chars attribute="String Interpolation" context="#pop!InInterpolation" char="$" char1="{"/> 0225 <DetectChar attribute="String Interpolation" context="#pop!Variable" char="$"/> 0226 </context> 0227 <context attribute="String Interpolation" lineEndContext="#stay" name="InInterpolation"> 0228 <DetectChar attribute="String Interpolation" context="#pop" char="}"/> 0229 <IncludeRules context="Normal"/> 0230 </context> 0231 <context attribute="String" lineEndContext="#pop" name="Variable" fallthroughContext="#pop"> 0232 <DetectIdentifier attribute="String Interpolation" context="#pop"/> 0233 </context> 0234 0235 <context attribute="Normal Text" lineEndContext="#pop" name="Imports"> 0236 <AnyChar attribute="Symbol" context="#stay" String=".*"/> 0237 <WordDetect attribute="Keyword" context="TypeName" String="as" /> 0238 <DetectIdentifier attribute="Imports" context="#stay"/> 0239 <DetectChar attribute="Symbol" context="#pop" char=";"/> 0240 <IncludeRules context="Comment"/> 0241 </context> 0242 0243 <context name="VariableDeclaration" lineEndContext="#stay" attribute="Normal Text"> 0244 <DetectIdentifier attribute="Variable" context="#pop" /> 0245 <IncludeRules context="Comment"/> 0246 </context> 0247 0248 <context name="TypeDeclaration" lineEndContext="#stay" attribute="Normal Text"> 0249 <keyword attribute="Keyword" context="#stay" String="keywords"/> 0250 0251 <DetectChar attribute="Symbol" context="TypeParameters" char="<" /> 0252 <DetectChar attribute="Symbol" context="Parameters" char="(" /> 0253 <DetectChar attribute="Symbol" context="SuperTypes" char=":" /> 0254 <DetectChar attribute="Symbol" context="#pop" char="{" lookAhead="true" /> 0255 0256 <IncludeRules context="Comment"/> 0257 </context> 0258 0259 <context name="SuperTypes" lineEndContext="#stay" attribute="Normal Text"> 0260 <keyword attribute="Keyword" context="#pop#pop" String="keywords" lookAhead="true" /> 0261 0262 <DetectChar attribute="Symbol" context="#stay" char="," /> 0263 <DetectChar attribute="Symbol" context="#pop" char="{" lookAhead="true" /> 0264 <DetectChar attribute="Symbol" context="Parameters" char="(" /> 0265 <DetectChar attribute="Symbol" context="TypeParameters" char="<" /> 0266 0267 <DetectIdentifier attribute="Data Type" context="#stay"/> 0268 0269 <IncludeRules context="Comment"/> 0270 </context> 0271 0272 <context name="FunctionDeclaration" lineEndContext="#stay" attribute="Normal Text"> 0273 <keyword attribute="Keyword" context="#stay" String="keywords"/> 0274 <DetectChar attribute="Annotation" context="Annotation" char="@" /> 0275 <DetectChar attribute="Symbol" context="#stay" char="." /> 0276 <DetectChar attribute="Symbol" context="Parameters" char="(" /> 0277 <DetectChar attribute="Symbol" context="TypeParameters" char="<" /> 0278 <DetectChar attribute="Symbol" context="TypeName" char=":" /> 0279 0280 <AnyChar attribute="Symbol" context="#pop" String="{=" lookAhead="true" /> 0281 0282 <DetectIdentifier attribute="Function" context="#stay"/> 0283 0284 <IncludeRules context="Comment"/> 0285 </context> 0286 0287 <context name="TypeParameters" lineEndContext="#stay" attribute="Normal Text"> 0288 <keyword attribute="Keyword" context="#stay" String="keywords"/> 0289 0290 <DetectChar attribute="Symbol" context="TypeName" char=":" /> 0291 <DetectChar attribute="Symbol" context="#stay" char="*" /> 0292 0293 <DetectChar attribute="Symbol" context="#pop" char=">" /> 0294 <DetectChar attribute="Symbol" context="TypeParameters" char="<" /> 0295 0296 <DetectIdentifier attribute="Data Type" context="DataTypeSuffix"/> 0297 0298 <IncludeRules context="Comment"/> 0299 </context> 0300 <context name="DataTypeSuffix" lineEndContext="#pop" attribute="Normal Text" fallthroughContext="#pop"> 0301 <DetectChar attribute="Symbol" context="#pop" char="?"/> 0302 0303 <IncludeRules context="Comment"/> 0304 </context> 0305 0306 <context name="Parameters" lineEndContext="#stay" attribute="Normal Text"> 0307 <keyword attribute="Keyword" context="#stay" String="keywords" /> 0308 <DetectChar attribute="Symbol" context="#pop" char=")" /> 0309 <DetectChar attribute="Symbol" context="TypeName" char=":" /> 0310 <DetectChar attribute="Symbol" context="Expression" char="=" /> 0311 <DetectIdentifier attribute="Variable" context="#stay"/> 0312 <DetectChar attribute="Symbol" context="#stay" char=","/> 0313 <IncludeRules context="Comment"/> 0314 </context> 0315 0316 <context name="TypeName" lineEndContext="#stay" attribute="Normal Text"> 0317 <AnyChar attribute="Symbol" context="#pop" String=",*" /> 0318 <DetectChar attribute="Symbol" context="FunctionType" char="(" /> 0319 <Detect2Chars attribute="Symbol" context="#stay" char="-" char1=">" /> 0320 <DetectIdentifier attribute="Data Type" context="#pop!DataTypeSuffix"/> 0321 <IncludeRules context="Comment"/> 0322 </context> 0323 0324 <context name="FunctionType" lineEndContext="#stay" attribute="Normal Text"> 0325 <DetectChar attribute="Symbol" context="#pop" char=")" /> 0326 <DetectIdentifier attribute="Data Type" context="DataTypeSuffix"/> 0327 <Detect2Chars attribute="Symbol" context="#stay" char="-" char1=">" /> 0328 <DetectChar attribute="Symbol" context="#stay" char="," /> 0329 <IncludeRules context="Comment"/> 0330 </context> 0331 0332 <context name="Expression" lineEndContext="#stay" attribute="Normal Text"> 0333 <DetectChar attribute="Symbol" context="#pop" char=")" lookAhead="true" /> 0334 <DetectChar attribute="Error" context="#pop" char="}" /> 0335 <DetectChar attribute="Symbol" context="#pop" char=","/> 0336 <IncludeRules context="FindSubExpression"/> 0337 </context> 0338 <context name="FindSubExpression" lineEndContext="#stay" attribute="Normal Text"> 0339 <DetectSpaces attribute="Normal Text"/> 0340 0341 <AnyChar attribute="Symbol" context="ExpressionInner" String="({" /> 0342 0343 <DetectChar context="MaybeTypeParameters" char="<" lookAhead="1" /> 0344 0345 <DetectChar attribute="Symbol" context="Dot" char="." lookAhead="1"/> 0346 <AnyChar context="Number" String="0123456789" lookAhead="1"/> 0347 <DetectChar context="String" char=""" lookAhead="1"/> 0348 <DetectChar context="Char" char="'" lookAhead="1"/> 0349 0350 <IncludeRules context="Comment"/> 0351 0352 <DetectIdentifier attribute="Normal Text"/> 0353 </context> 0354 <context name="MaybeTypeParameters" lineEndContext="#pop" attribute="Normal Text"> 0355 <RegExpr context="#pop!TypeParameters" String="<\w" lookAhead="1" /> 0356 <DetectChar attribute="Symbol" context="#pop" char="<"/> 0357 <IncludeRules context="Comment"/> 0358 </context> 0359 0360 <context name="ExpressionInner" lineEndContext="#stay" attribute="Normal Text"> 0361 <AnyChar attribute="Symbol" context="#pop" String=")}" /> 0362 <IncludeRules context="FindSubExpression"/> 0363 </context> 0364 0365 <context attribute="Comment" lineEndContext="#pop" name="CommentSingleLine"> 0366 <DetectSpaces /> 0367 <IncludeRules context="##Comments"/> 0368 </context> 0369 <context attribute="Comment" lineEndContext="#stay" name="CommentMultiline"> 0370 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> 0371 <Detect2Chars attribute="Comment" context="CommentMultiline" char="/" char1="*" beginRegion="Comment"/> 0372 <DetectSpaces /> 0373 <IncludeRules context="##Comments"/> 0374 </context> 0375 0376 </contexts> 0377 0378 <itemDatas> 0379 <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> 0380 <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> 0381 <itemData name="ControlFlowKeyword" defStyleNum="dsControlFlow" spellChecking="false"/> 0382 <itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/> 0383 <itemData name="Variable" defStyleNum="dsVariable" spellChecking="false"/> 0384 <itemData name="Imports" defStyleNum="dsImport" spellChecking="false"/> 0385 <itemData name="Annotation" defStyleNum="dsAttribute" spellChecking="false"/> 0386 <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> 0387 <itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="false"/> 0388 <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/> 0389 <itemData name="Binary" defStyleNum="dsBaseN" spellChecking="false"/> 0390 <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> 0391 <itemData name="Char" defStyleNum="dsChar" spellChecking="false"/> 0392 <itemData name="String" defStyleNum="dsString"/> 0393 <itemData name="String Char" defStyleNum="dsSpecialChar" spellChecking="false"/> 0394 <itemData name="String Interpolation" defStyleNum="dsSpecialString"/> 0395 <itemData name="Comment" defStyleNum="dsComment"/> 0396 <itemData name="Symbol" defStyleNum="dsOperator" spellChecking="false"/> 0397 <itemData name="Error" defStyleNum="dsError" spellChecking="false"/> 0398 </itemDatas> 0399 </highlighting> 0400 <general> 0401 <comments> 0402 <comment name="singleLine" start="//"/> 0403 <comment name="multiLine" start="/*" end="*/" region="Comment"/> 0404 </comments> 0405 <keywords casesensitive="1"/> 0406 </general> 0407 </language> 0408 <!-- kate: replace-tabs on; tab-width 4; indent-width 4; -->