Warning, /frameworks/syntax-highlighting/data/syntax/pony.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 punctuators ":!&()%+-/.*<=>?[]{|}~^,;"> 0005 <!ENTITY EXP "(?:[eE][+-]?[0-9](?:_?[0-9]+)*)"> 0006 <!ENTITY HEX "[0-9A-Fa-f]"> 0007 <!ENTITY SPECHAR "(?:\\[abefnrtv\\0]|\\x&HEX;&HEX;|\\u&HEX;&HEX;&HEX;&HEX;|\\U&HEX;&HEX;&HEX;&HEX;&HEX;&HEX;)"> 0008 <!ENTITY IDVAR "[a-z][_a-zA-Z0-9]*'*(?!\w)"> 0009 <!ENTITY IDTYPE "_?[A-Z][_a-zA-Z0-9]*"> 0010 ]> 0011 <language author="Jonathan Poelen (jonathan.poelen@gmail.com)" 0012 name="Pony" section="Sources" 0013 version="7" kateversion="5.0" 0014 indenter="ruby" 0015 extensions="*.pony" 0016 mimetype="text/x-pony" 0017 priority="5" 0018 license="MIT" 0019 > 0020 <!-- https://github.com/ponylang/ponyc/blob/master/pony.g --> 0021 0022 <highlighting> 0023 <list name="class_def"> 0024 <item>type</item> 0025 <item>interface</item> 0026 <item>trait</item> 0027 <item>primitive</item> 0028 <item>struct</item> 0029 <item>class</item> 0030 <item>actor</item> 0031 </list> 0032 <list name="method"> 0033 <item>fun</item> 0034 <item>be</item> 0035 </list> 0036 <list name="method_new"> 0037 <item>new</item> 0038 </list> 0039 <list name="controlflow"> 0040 <item>do</item> 0041 <item>then</item> 0042 <item>return</item> 0043 <item>break</item> 0044 <item>continue</item> 0045 <item>error</item> 0046 <item>compile_intrinsic</item> 0047 <item>compile_error</item> 0048 <item>recover</item> <!-- not a control flow, but ended by 'end' --> 0049 <item>until</item> 0050 </list> 0051 <list name="controlflow_begin"> 0052 <item>if</item> 0053 <item>ifdef</item> 0054 <item>iftype</item> 0055 <item>match</item> 0056 <item>while</item> 0057 <item>repeat</item> 0058 <item>for</item> 0059 <item>with</item> 0060 <item>try</item> 0061 </list> 0062 <list name="controlflow_else"> 0063 <item>else</item> 0064 <item>elseif</item> 0065 <item>elseiftype</item> 0066 </list> 0067 <list name="controlflow_end"> 0068 <item>end</item> 0069 </list> 0070 <list name="operators"> 0071 <item>and</item> 0072 <item>or</item> 0073 <item>xor</item> 0074 <item>not</item> 0075 </list> 0076 <list name="new_overloaders"> 0077 <item>create</item> 0078 </list> 0079 <list name="overloaders"> 0080 <item>update</item> 0081 <item>apply</item> 0082 <item>add</item> 0083 <item>sub</item> 0084 <item>mul</item> 0085 <item>div</item> 0086 <item>mod</item> 0087 <item>eq</item> 0088 <item>ne</item> 0089 <item>lt</item> 0090 <item>le</item> 0091 <item>ge</item> 0092 <item>gt</item> 0093 <item>shl</item> 0094 <item>shr</item> 0095 <item>op_and</item> 0096 <item>op_or</item> 0097 <item>op_xor</item> 0098 </list> 0099 <list name="capability"> 0100 <item>iso</item> 0101 <item>trn</item> 0102 <item>ref</item> 0103 <item>val</item> 0104 <item>box</item> 0105 <item>tag</item> 0106 </list> 0107 <list name="gencapability"> 0108 <item>#read</item> 0109 <item>#send</item> 0110 <item>#share</item> 0111 <item>#alias</item> 0112 <item>#any</item> 0113 </list> 0114 <list name="keyword"> 0115 <item>this</item> 0116 <item>use</item> 0117 <item>object</item> 0118 <item>as</item> 0119 <item>is</item> 0120 <item>isnt</item> 0121 <item>in</item> 0122 <item>where</item> 0123 <item>is</item> 0124 <item>consume</item> 0125 <item>addressof</item> 0126 <item>digestof</item> 0127 <!-- literal --> 0128 <item>true</item> 0129 <item>false</item> 0130 <!-- field --> 0131 <item>var</item> 0132 <item>let</item> 0133 <item>embed</item> 0134 </list> 0135 <list name="types"> 0136 <item>None</item> 0137 <item>String</item> 0138 <item>Bool</item> 0139 <item>ISize</item> 0140 <item>ILong</item> 0141 <item>I8</item> 0142 <item>I16</item> 0143 <item>I32</item> 0144 <item>I64</item> 0145 <item>I128</item> 0146 <item>USize</item> 0147 <item>ULong</item> 0148 <item>U8</item> 0149 <item>U16</item> 0150 <item>U32</item> 0151 <item>U64</item> 0152 <item>U128</item> 0153 <item>F32</item> 0154 <item>F64</item> 0155 </list> 0156 <contexts> 0157 <context attribute="Normal Text" lineEndContext="#stay" name="Normal"> 0158 <DetectSpaces /> 0159 0160 <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" /> 0161 <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" /> 0162 0163 <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> 0164 <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> 0165 0166 <RegExpr attribute="Hex" context="#stay" String="[\+\-]?0x&HEX;(?:_?&HEX;+)*\b" /> 0167 <RegExpr attribute="Binary" context="#stay" String="[\+\-]?0b[01](?:_?[01]+)*\b" /> 0168 <RegExpr attribute="Float" context="#stay" String="[\+\-]?[0-9](?:_?[0-9]+)*(?:\.[0-9](?:_?[0-9]+)*&EXP;?|&EXP;)\b" /> 0169 <RegExpr attribute="Error" context="#stay" String="[\+\-]?[0-9](?:_?[0-9]+)*\." /> 0170 <RegExpr attribute="Decimal" context="#stay" String="[\+\-]?[0-9](?:_?[0-9]+)*\b" /> 0171 <RegExpr attribute="Error" context="#stay" String="[\+\-]?\.?[0-9]\w*" /> 0172 0173 <DetectChar attribute="External Function" context="External Function" char="@" /> 0174 <LineContinue attribute="Error" char=";" /> 0175 <AnyChar attribute="Symbol" context="#stay" String="&punctuators;" /> 0176 0177 <keyword attribute="Data Type" context="#stay" String="types"/> 0178 0179 <keyword attribute="Control Flow" context="#stay" String="controlflow_begin" beginRegion="Block"/> 0180 <keyword attribute="Control Flow" context="#stay" String="controlflow_else" endRegion="Block" beginRegion="Block"/> 0181 <keyword attribute="Control Flow" context="#stay" String="controlflow_end" endRegion="Block"/> 0182 <keyword attribute="Control Flow" context="#stay" String="controlflow"/> 0183 <Detect2Chars attribute="Attributes" context="Attributes" char="\" char1="\"/> 0184 0185 <keyword attribute="Keyword" context="DefClass" String="class_def"/> 0186 <keyword attribute="Keyword" context="DefFun" String="method"/> 0187 <keyword attribute="Keyword" context="DefNew" String="method_new"/> 0188 <keyword attribute="Keyword" context="#stay" String="keyword"/> 0189 0190 <keyword attribute="Capability" context="#stay" String="capability"/> 0191 0192 <keyword attribute="Symbol" context="#stay" String="operators"/> 0193 0194 <RegExpr attribute="Normal Text" context="#stay" String="&IDVAR;" /> 0195 0196 <RegExpr attribute="Char" context="#stay" String="'[^\\']'" /> <!-- only ascii char --> 0197 <RegExpr attribute="Special Char" context="#stay" String="'(?:&SPECHAR;|\\')'" /> 0198 <DetectChar attribute="Error" context="#stay" char="'" /> 0199 <DetectChar attribute="String" context="String" char=""" /> 0200 0201 <RegExpr attribute="Data Type" context="#stay" String="&IDTYPE;" /> 0202 0203 <keyword attribute="Constraint" context="#stay" String="gencapability"/> 0204 0205 <RegExpr attribute="Error" context="#stay" String="#\w+"/> 0206 0207 <DetectIdentifier /> 0208 </context> 0209 0210 0211 <context attribute="String" lineEndContext="SimpleString" name="String" fallthrough="true" fallthroughContext="SimpleString"> 0212 <Detect2Chars attribute="String" context="LongString" char=""" char1="""/> 0213 </context> 0214 0215 <context attribute="String" lineEndContext="#stay" name="SimpleString"> 0216 <RegExpr attribute="Special Char" context="#stay" String="&SPECHAR;|\\"" /> 0217 <RegExpr attribute="Error" context="#stay" String="\\." /> 0218 <DetectChar attribute="String" context="#pop#pop" char="""/> 0219 <DetectIdentifier /> 0220 </context> 0221 0222 <context attribute="String" lineEndContext="#stay" name="LongString"> 0223 <DetectSpaces /> 0224 <RegExpr attribute="Special Char" context="#stay" String="&SPECHAR;" /> 0225 <RegExpr attribute="Error" context="#stay" String="\\." /> 0226 <StringDetect attribute="String" context="#pop#pop" String="""""/> 0227 <DetectIdentifier /> 0228 </context> 0229 0230 0231 <context attribute="Comment" lineEndContext="#pop" name="Commentar 1"> 0232 <DetectSpaces /> 0233 <IncludeRules context="##Comments" /> 0234 <DetectIdentifier /> 0235 </context> 0236 0237 <context attribute="Comment" lineEndContext="#stay" name="Commentar 2"> 0238 <DetectSpaces /> 0239 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> 0240 <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> 0241 <IncludeRules context="##Comments" /> 0242 <DetectIdentifier /> 0243 </context> 0244 0245 0246 <context attribute="Normal Text" lineEndContext="#stay" name="def_base"> 0247 <DetectSpaces/> 0248 <Detect2Chars attribute="Attributes" context="Attributes" char="\" char1="\"/> 0249 <keyword attribute="Capability" context="#stay" String="capability"/> 0250 <DetectChar attribute="External Function" context="#pop!External Function" char="@"/> 0251 </context> 0252 0253 <context attribute="Normal Text" lineEndContext="#stay" name="DefNew" fallthrough="true" fallthroughContext="#pop"> 0254 <IncludeRules context="def_base" /> 0255 <keyword attribute="Overloaders" context="#pop" String="new_overloaders"/> 0256 <DetectIdentifier attribute="Function"/> 0257 </context> 0258 0259 <context attribute="Normal Text" lineEndContext="#stay" name="DefFun" fallthrough="true" fallthroughContext="#pop"> 0260 <IncludeRules context="def_base" /> 0261 <keyword attribute="Overloaders" context="#pop" String="overloaders"/> 0262 <DetectIdentifier attribute="Function"/> 0263 </context> 0264 0265 <context attribute="Normal Text" lineEndContext="#stay" name="DefClass" fallthrough="true" fallthroughContext="#pop"> 0266 <IncludeRules context="def_base" /> 0267 <RegExpr attribute="Data Type" context="#pop" String="&IDTYPE;"/> 0268 <DetectIdentifier attribute="Error" context="#pop"/> 0269 </context> 0270 0271 0272 <context attribute="External Function" lineEndContext="#pop" name="External Function" fallthrough="true" fallthroughContext="#pop"> 0273 <DetectIdentifier attribute="External Function"/> 0274 </context> 0275 0276 0277 <context attribute="Attributes" lineEndContext="#pop" name="Attributes"> 0278 <DetectSpaces/> 0279 <Detect2Chars attribute="Attributes" context="#pop" char="\" char1="\"/> 0280 <DetectChar attribute="Attributes" context="#stay" char=","/> 0281 <DetectIdentifier/> 0282 </context> 0283 </contexts> 0284 <itemDatas> 0285 <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> 0286 <itemData name="Control Flow" defStyleNum="dsControlFlow" spellChecking="false"/> 0287 <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> 0288 <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> 0289 <itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/> 0290 <itemData name="External Function" defStyleNum="dsFunction" spellChecking="false"/> 0291 <itemData name="Overloaders" defStyleNum="dsFunction" spellChecking="false"/> 0292 <itemData name="Attributes" defStyleNum="dsAttribute" spellChecking="false"/> 0293 <itemData name="Constraint" defStyleNum="dsAttribute" spellChecking="false"/> 0294 <itemData name="Capability" defStyleNum="dsAttribute" spellChecking="false" bold="false" italic="true" /> 0295 <itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="false"/> 0296 <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/> 0297 <itemData name="Binary" defStyleNum="dsBaseN" spellChecking="false"/> 0298 <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> 0299 <itemData name="Char" defStyleNum="dsChar" spellChecking="false"/> 0300 <itemData name="Special Char" defStyleNum="dsSpecialChar" spellChecking="false"/> 0301 <itemData name="String" defStyleNum="dsString"/> 0302 <itemData name="Comment" defStyleNum="dsComment"/> 0303 <itemData name="Symbol" defStyleNum="dsOperator" spellChecking="false"/> 0304 <itemData name="Error" defStyleNum="dsError" spellChecking="false"/> 0305 </itemDatas> 0306 </highlighting> 0307 <general> 0308 <comments> 0309 <comment name="singleLine" start="//" position="afterwhitespace" /> 0310 <comment name="multiLine" start="/*" end="*/" region="Comment" /> 0311 </comments> 0312 <keywords casesensitive="1" weakDeliminator="#" /> 0313 </general> 0314 </language> 0315 <!-- kate: indent-width 2; tab-width 2; -->