Warning, /frameworks/syntax-highlighting/data/syntax/r.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE language> 0003 <!-- Kate 2.5 (KDE 3.5) highlighting module for R 0004 based on an earlier version by E.L. Willighagen. Code folding code by Ben Goodrich 0005 version 2.0: (c) 2006 Thomas Friedrichsmeier, Arne Henningsen, and the RKWard Team 0006 license: GPL v2 0007 Kate : http://kate.kde.org/ 0008 R : http://www.r-project.org/ 0009 RKWard : http://rkward.kde.org/ 0010 --> 0011 <language version="13" kateversion="5.0" name="R Script" section="Scientific" extensions="*.R;*.r;*.S;*.s;*.q" mimetype="" license="GPLv2"> 0012 <highlighting> 0013 0014 <list name="controls"> 0015 <item>for</item> 0016 <item>in</item> 0017 <item>next</item> 0018 <item>break</item> 0019 <item>while</item> 0020 <item>repeat</item> 0021 <item>if</item> 0022 <item>else</item> 0023 <item>switch</item> 0024 <item>function</item> 0025 </list> 0026 <list name="words"> 0027 <item>TRUE</item> 0028 <item>FALSE</item> 0029 <item>NULL</item> 0030 <item>NA</item> 0031 <item>NA_integer_</item> 0032 <item>NA_real_</item> 0033 <item>NA_complex_</item> 0034 <item>NA_character_</item> 0035 <item>Inf</item> 0036 <item>NaN</item> 0037 </list> 0038 0039 <contexts> 0040 <!-- This context is really only good for detecting unexpected closing braces '}'. Since opening braces go to ctx0 (and nesting in there), this context is only active on the base level --> 0041 <context attribute="Normal Text" lineEndContext="#stay" name="level0"> 0042 <IncludeRules context="CommonRules"/> 0043 0044 <AnyChar attribute="Error" context="#stay" String="})"/> 0045 </context> 0046 0047 <context attribute="Normal Text" lineEndContext="#stay" name="ctx0"> 0048 <IncludeRules context="CommonRules"/> 0049 0050 <DetectChar attribute="Symbol" context="#pop" char="}" endRegion="Brace1" /> 0051 <DetectChar attribute="Error" context="#stay" char=")"/> 0052 </context> 0053 0054 <context attribute="Normal Text" lineEndContext="#stay" name="parenthesis"> 0055 <LineContinue attribute="Operator" context="#stay"/> 0056 <DetectChar attribute="Symbol" context="#pop" char=")"/> 0057 0058 <RegExpr attribute="Identifier" context="#stay" String="[a-zA-Z_\.][0-9a-zA-Z_\.]*[\s]*[:]?=(?=[^=]|$)"/> 0059 0060 <IncludeRules context="CommonRules"/> 0061 <DetectChar attribute="Error" context="#stay" char="}" /> 0062 </context> 0063 0064 <context attribute="String" lineEndContext="#stay" name="string"> 0065 <DetectChar attribute="String" context="#pop" char="""/> 0066 <HlCStringChar attribute="String Char" context="#stay"/> 0067 </context> 0068 0069 <context attribute="String" lineEndContext="#stay" name="string2"> 0070 <DetectChar attribute="String" context="#pop" char="'"/> 0071 <HlCStringChar attribute="String Char" context="#stay"/> 0072 </context> 0073 0074 <context attribute="Identifier" lineEndContext="#stay" name="backquotedsymbol"> 0075 <DetectChar attribute="String" context="#pop" char="`"/> 0076 <HlCStringChar attribute="String Char" context="#stay"/> 0077 </context> 0078 0079 <context attribute="Normal Text" lineEndContext="#stay" name="operator_rhs" fallthrough="true" fallthroughContext="#pop"> 0080 <!-- While there is nothing of interest, stay in the context --> 0081 <DetectSpaces /> 0082 <IncludeRules context="FindComments"/> 0083 <!-- Operators other than +, -, and ! directly after another operator are an error. --> 0084 <Detect2Chars attribute="Error" context="#stay" char="!" char1="="/> 0085 <AnyChar attribute="Error" context="#stay" String="*/<>=|&:^@$~"/> 0086 </context> 0087 0088 <context attribute="Normal Text" lineEndContext="#stay" name="FindComments"> 0089 <Detect2Chars attribute="Headline" context="Headline" char="#" char1="#"/> 0090 <DetectChar attribute="Comment" context="Comment" char="#"/> 0091 </context> 0092 <context attribute="Headline" lineEndContext="#pop" name="Headline"> 0093 <DetectSpaces /> 0094 <IncludeRules context="##Comments" /> 0095 </context> 0096 <context attribute="Comment" lineEndContext="#pop" name="Comment"> 0097 <DetectSpaces /> 0098 <IncludeRules context="##Comments" /> 0099 </context> 0100 0101 <!-- This context is not really used, but contains the common rules --> 0102 <context name="CommonRules" lineEndContext="#stay" attribute="Normal Text" > 0103 <DetectSpaces /> 0104 <IncludeRules context="FindComments"/> 0105 <DetectChar attribute="String" context="string" char="""/> 0106 <DetectChar attribute="String" context="string2" char="'"/> 0107 <DetectChar attribute="String" context="backquotedsymbol" char="`"/> 0108 <keyword attribute="Control Structure" context="#stay" String="controls"/> 0109 <keyword attribute="Reserved Words" context="#stay" String="words"/> 0110 <Float attribute="Float" context="#stay"/> 0111 <Int attribute="Int" context="#stay"/> 0112 <RegExpr attribute="Keyword" context="#stay" String="[a-zA-Z_]+[a-zA-Z_\.0-9]*(?=[\s]*[(])|\.[a-zA-Z_\.]+[a-zA-Z_\.0-9]*(?=[\s]*[(])"/> 0113 <DetectChar attribute="Symbol" context="parenthesis" char="("/> 0114 0115 <!-- For (assignment) operators, enter a new context operator_rhs to check what follows (generally, that should not be another op) --> 0116 <StringDetect attribute="Assign" context="operator_rhs" String="<<-"/> 0117 <Detect2Chars attribute="Assign" context="operator_rhs" char="<" char1="-"/> 0118 <StringDetect attribute="Assign" context="operator_rhs" String="->>"/> 0119 <Detect2Chars attribute="Assign" context="operator_rhs" char="-" char1=">"/> 0120 <RegExpr attribute="Assign" context="operator_rhs" String="=(?!(=|>))"/> 0121 <Detect2Chars attribute="Operator" context="operator_rhs" char="*" char1="*"/> 0122 <Detect2Chars attribute="Operator" context="operator_rhs" char="<" char1="="/> 0123 <Detect2Chars attribute="Operator" context="operator_rhs" char=">" char1="="/> 0124 <Detect2Chars attribute="Operator" context="operator_rhs" char="=" char1="="/> 0125 <Detect2Chars attribute="Operator" context="operator_rhs" char="=" char1=">"/> 0126 <Detect2Chars attribute="Operator" context="operator_rhs" char="!" char1="="/> 0127 <Detect2Chars attribute="Operator" context="operator_rhs" char="|" char1=">"/> 0128 <Detect2Chars attribute="Operator" context="operator_rhs" char="|" char1="|"/> 0129 <Detect2Chars attribute="Operator" context="operator_rhs" char="&" char1="&"/> 0130 <StringDetect attribute="Operator" context="operator_rhs" String=":::"/> 0131 <Detect2Chars attribute="Operator" context="operator_rhs" char=":" char1=":"/> 0132 <Detect2Chars attribute="Operator" context="operator_rhs" char=":" char1="="/> 0133 <AnyChar attribute="Operator" context="operator_rhs" String="+-*/<>=!|&:^@$~"/> 0134 <RangeDetect attribute="Operator" context="operator_rhs" char="%" char1="%"/> 0135 0136 <DetectChar attribute="Symbol" context="ctx0" char="{" beginRegion="Brace1" /> 0137 0138 <!-- This is needed only to assist variable based indentation --> 0139 <AnyChar attribute="Symbol" context="#stay" String="[]" /> 0140 </context> 0141 </contexts> 0142 0143 <itemDatas> 0144 <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> 0145 <itemData name="Symbol" defStyleNum="dsNormal" spellChecking="false"/> 0146 <itemData name="Keyword" defStyleNum="dsFunction" spellChecking="false"/> 0147 <itemData name="Identifier" defStyleNum="dsAttribute" spellChecking="false"/> 0148 <itemData name="String" defStyleNum="dsString"/> 0149 <itemData name="Headline" defStyleNum="dsDocumentation" bold="1"/> 0150 <itemData name="Comment" defStyleNum="dsComment"/> 0151 <itemData name="Assign" defStyleNum="dsOthers" bold="1" italic="0" spellChecking="false"/> 0152 <itemData name="Control Structure" defStyleNum="dsControlFlow" spellChecking="false"/> 0153 <itemData name="Reserved Words" defStyleNum="dsConstant" spellChecking="false"/> 0154 <itemData name="Error" defStyleNum="dsError" spellChecking="false"/> 0155 <itemData name="Operator" defStyleNum="dsSpecialChar" spellChecking="false"/> 0156 <itemData name="String Char" defStyleNum="dsSpecialChar" spellChecking="false"/> 0157 <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> 0158 <itemData name="Int" defStyleNum="dsDecVal" spellChecking="false"/> 0159 </itemDatas> 0160 </highlighting> 0161 0162 <general> 0163 <comments> 0164 <comment name="singleLine" start="#"/> 0165 </comments> 0166 <keywords casesensitive="true" weakDeliminator="." additionalDeliminator="$"/> 0167 </general> 0168 </language> 0169 <!-- kate: replace-tabs off; -->