Warning, /frameworks/syntax-highlighting/data/syntax/klipper-config.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 ident "[_a-zA-Z][_a-zA-Z0-9]+"> 0005 <!ENTITY params "DEFHIJNPQRSTUVWXYZdefhijnpqrstuvwxyz"> 0006 ]> 0007 <language name="Klipper Config" version="1" kateversion="5.79" section="3D" extensions="*.cfg" mimetype="" author="Jonathan Poelen (jonathan.poelen@gmail.com)" license="MIT"> 0008 0009 <!-- https://github.com/Klipper3d/klipper/ --> 0010 0011 <highlighting> 0012 <list name="special variables"> 0013 <item>true</item> 0014 <item>True</item> 0015 <item>false</item> 0016 <item>False</item> 0017 <item>none</item> 0018 <item>None</item> 0019 </list> 0020 0021 <list name="jinja control flow"> 0022 <item>for</item> 0023 <item>endfor</item> 0024 <item>if</item> 0025 <item>elif</item> 0026 <item>else</item> 0027 <item>endif</item> 0028 </list> 0029 0030 <list name="jinja keywords"> 0031 <item>in</item> 0032 <item>is</item> 0033 <item>set</item> 0034 <item>not</item> 0035 <item>and</item> 0036 <item>or</item> 0037 </list> 0038 0039 <list name="jinja filter"> 0040 <item>abs</item> 0041 <item>attr</item> 0042 <item>batch</item> 0043 <item>capitalize</item> 0044 <item>center</item> 0045 <item>default</item> 0046 <item>dictsort</item> 0047 <item>escape</item> 0048 <item>filesizeformat</item> 0049 <item>first</item> 0050 <item>float</item> 0051 <item>forceescape</item> 0052 <item>format</item> 0053 <item>groupby</item> 0054 <item>indent</item> 0055 <item>int</item> 0056 <item>join</item> 0057 <item>last</item> 0058 <item>length</item> 0059 <item>list</item> 0060 <item>lower</item> 0061 <item>map</item> 0062 <item>max</item> 0063 <item>min</item> 0064 <item>pprint</item> 0065 <item>random</item> 0066 <item>reject</item> 0067 <item>rejectattr</item> 0068 <item>replace</item> 0069 <item>reverse</item> 0070 <item>round</item> 0071 <item>safe</item> 0072 <item>select</item> 0073 <item>selectattr</item> 0074 <item>slice</item> 0075 <item>sort</item> 0076 <item>string</item> 0077 <item>striptags</item> 0078 <item>sum</item> 0079 <item>title</item> 0080 <item>tojson</item> 0081 <item>truncate</item> 0082 <item>unique</item> 0083 <item>upper</item> 0084 <item>urlencode</item> 0085 <item>urlize</item> 0086 <item>wordcount</item> 0087 <item>wordwrap</item> 0088 <item>xmlattr</item> 0089 </list> 0090 0091 <contexts> 0092 <context name="Start" attribute="Normal Text" fallthroughContext="Property"> 0093 <IncludeRules context="FindComment"/> 0094 <DetectChar char="[" attribute="Section Symbol" context="Section" column="0"/> 0095 <WordDetect String="gcode" attribute="Property gcode" context="GCode" column="0"/> 0096 <RegExpr String="^(_?pin|[_a-z][_a-z0-9]*?_pin)\b" attribute="Property pin" context="Pin" column="0" insensitive="1"/> 0097 <DetectIdentifier attribute="Property" context="Property" column="0"/> 0098 </context> 0099 0100 <context name="FindComment" attribute="Normal Text" lineEndContext="#pop"> 0101 <AnyChar String="#;" attribute="Comment" context="comment"/> 0102 </context> 0103 0104 <!-- [ ... ] --> 0105 <context name="Section" attribute="Section" lineEndContext="#pop" fallthroughContext="#pop"> 0106 <WordDetect String="include" attribute="Section" context="Include"/> 0107 <DetectIdentifier attribute="Section" context="SectionName"/> 0108 </context> 0109 <context name="SectionName" attribute="Section Name" lineEndContext="#pop#pop"> 0110 <DetectChar char="]" attribute="Section Symbol" context="#pop#pop!SectionEnd"/> 0111 </context> 0112 <context name="Include" attribute="Path" lineEndContext="#pop#pop"> 0113 <IncludeRules context="SectionName"/> 0114 </context> 0115 <context name="SectionEnd" attribute="Normal Text" lineEndContext="#pop"> 0116 <DetectSpaces/> 0117 <IncludeRules context="FindComment"/> 0118 </context> 0119 0120 <!-- ^&ident;: --> 0121 <context name="Property" attribute="Normal Text" lineEndContext="#pop"> 0122 <DetectChar char=":" attribute="Symbol Separator" context="PropertyBody"/> 0123 <DetectSpaces attribute="Normal Text"/> 0124 </context> 0125 <context name="PropertyBody" attribute="Normal Text" fallthroughContext="PropertyLine"> 0126 <DetectSpaces attribute="Normal Text" context="PropertyLine" column="0"/> 0127 <IncludeRules context="FindPropertyEnd"/> 0128 </context> 0129 <context name="FindPropertyEnd" attribute="Normal Text" lineEndContext="#pop"> 0130 <RegExpr String="." context="#pop#pop" lookAhead="1" column="0"/> 0131 </context> 0132 <context name="PropertyLine" attribute="Normal Text" lineEndContext="#pop"> 0133 <DetectSpaces/> 0134 <IncludeRules context="FindValue"/> 0135 <IncludeRules context="FindComment"/> 0136 <IncludeRules context="FindWord"/> 0137 </context> 0138 <context name="FindValue" attribute="Normal Text" lineEndContext="#pop"> 0139 <Float attribute="Float"/> 0140 <Int attribute="Int"/> 0141 <DetectChar char="-" attribute="Operator"/> 0142 <DetectChar char="'" attribute="String" context="StringSQ"/> 0143 <DetectChar char=""" attribute="String" context="StringDQ"/> 0144 </context> 0145 <context name="FindWord" attribute="Normal Text" lineEndContext="#pop"> 0146 <keyword String="special variables" attribute="Special Variable"/> 0147 <DetectIdentifier/> 0148 </context> 0149 0150 <!-- ^.*_pin: --> 0151 <context name="Pin" attribute="Normal Text" lineEndContext="#pop"> 0152 <DetectChar char=":" attribute="Symbol Separator" context="PinBody"/> 0153 <DetectSpaces attribute="Normal Text"/> 0154 </context> 0155 <context name="PinBody" attribute="Normal Text" fallthroughContext="PinLine"> 0156 <DetectSpaces attribute="Normal Text" context="PropertyLine" column="0"/> 0157 <IncludeRules context="FindPropertyEnd"/> 0158 </context> 0159 <context name="PinLine" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="#pop!PropertyLine"> 0160 <DetectSpaces/> 0161 <AnyChar String="-!^" attribute="Operator"/> 0162 <RegExpr String="([A-Z]{1,2}|gpio)[0-9]+" attribute="Pin Id"/> 0163 <IncludeRules context="FindComment"/> 0164 </context> 0165 0166 <!-- ^gcode: --> 0167 <context name="GCode" attribute="Path" lineEndContext="#pop#pop"> 0168 <DetectChar char=":" attribute="Symbol Separator" context="GCodeBody"/> 0169 <DetectSpaces attribute="Normal Text"/> 0170 </context> 0171 <context name="GCodeBody" attribute="Normal Text" fallthroughContext="GCodeCommand"> 0172 <DetectSpaces attribute="Normal Text" context="GCodeCommand" column="0"/> 0173 <IncludeRules context="FindPropertyEnd"/> 0174 <IncludeRules context="FindComment"/> 0175 </context> 0176 <context name="GCodeCommand" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="GCodeExtendedLine"> 0177 <RegExpr String="[gG][0-9]{1,3}" attribute="G-word" context="GCodeLine"/> 0178 <RegExpr String="[mM][0-9]{1,3}" attribute="M-word" context="GCodeLine"/> 0179 <DetectIdentifier attribute="Macro" context="GCodeExtendedLine"/> 0180 </context> 0181 <context name="GCodeLine" attribute="Normal Text" lineEndContext="#pop"> 0182 <DetectSpaces/> 0183 <IncludeRules context="FindValue"/> 0184 <IncludeRules context="FindTemplate"/> 0185 <IncludeRules context="FindComment"/> 0186 <IncludeRules context="FindGCodeParam"/> 0187 <IncludeRules context="FindWord"/> 0188 </context> 0189 <context name="FindGCodeParam" attribute="Normal Text" lineEndContext="#pop"> 0190 <RegExpr String="\b[¶ms;](?=-?(\{|\.?[0-9]))" attribute="Parameter" context="GCodeParam"/> 0191 </context> 0192 <context name="GCodeExtendedLine" attribute="Normal Text" lineEndContext="#pop"> 0193 <DetectSpaces/> 0194 <DetectChar char="=" attribute="Operator"/> 0195 <IncludeRules context="FindValue"/> 0196 <IncludeRules context="FindTemplate"/> 0197 <IncludeRules context="FindComment"/> 0198 <RegExpr String="\b&ident;(?==)" attribute="Parameter"/> 0199 <IncludeRules context="FindGCodeParam"/> 0200 <IncludeRules context="FindWord"/> 0201 </context> 0202 <context name="GCodeParam" attribute="Parameter Value" lineEndContext="#pop" fallthroughContext="#pop"> 0203 <DetectChar char="-"/> 0204 <Float attribute="Float" context="#pop" additionalDeliminator="¶ms;"/> 0205 <Int attribute="Int" context="#pop" additionalDeliminator="¶ms;"/> 0206 </context> 0207 0208 <!-- jinja template --> 0209 <context name="FindTemplate" attribute="String" lineEndContext="#pop"> 0210 <StringDetect String="{%" attribute="Jinja Expression" context="Jinja{%"/> 0211 <DetectChar char="{" attribute="Jinja Expression" context="Jinja{"/> 0212 </context> 0213 <context name="Jinja{" attribute="Normal Text"> 0214 <DetectChar char="}" attribute="Jinja Expression" context="#pop"/> 0215 <IncludeRules context="Jinja"/> 0216 </context> 0217 <context name="Jinja{%" attribute="Normal Text"> 0218 <StringDetect String="%}" attribute="Jinja Expression" context="#pop"/> 0219 <IncludeRules context="Jinja"/> 0220 </context> 0221 <context name="Jinja" attribute="Normal Text"> 0222 <DetectSpaces/> 0223 <AnyChar String="/*+-%!=<>~|" attribute="Jinja Operator Symbol"/> 0224 <AnyChar String=",;" attribute="Jinja Symbol Separator"/> 0225 <DetectChar char="." attribute="Jinja Accessor Symbol"/> 0226 <Float attribute="Float"/> 0227 <Int attribute="Int"/> 0228 <DetectChar char="'" attribute="String" context="StringSQ"/> 0229 <DetectChar char=""" attribute="String" context="StringDQ"/> 0230 <WordDetect String="if" attribute="Jinja Control Flow" beginRegion="if"/> 0231 <WordDetect String="endif" attribute="Jinja Control Flow" endRegion="if"/> 0232 <WordDetect String="for" attribute="Jinja Control Flow" beginRegion="for"/> 0233 <WordDetect String="endfor" attribute="Jinja Control Flow" endRegion="for"/> 0234 <keyword String="jinja control flow" attribute="Jinja Control Flow"/> 0235 <keyword String="jinja keywords" attribute="Jinja Keyword"/> 0236 <keyword String="jinja filter" attribute="Jinja Function"/> 0237 <keyword String="special variables" attribute="Special Variable"/> 0238 <DetectIdentifier/> 0239 </context> 0240 0241 <!-- ' ... ' --> 0242 <context name="StringSQ" attribute="String" lineEndContext="#pop"> 0243 <StringDetect String="\'" attribute="String Special Char"/> 0244 <DetectChar char="'" attribute="String" context="#pop"/> 0245 </context> 0246 0247 <!-- " ... " --> 0248 <context name="StringDQ" attribute="String" lineEndContext="#pop"> 0249 <StringDetect String="\"" attribute="String Special Char"/> 0250 <DetectChar char=""" attribute="String" context="#pop"/> 0251 </context> 0252 0253 <context name="comment" attribute="Comment" lineEndContext="#pop"> 0254 <DetectSpaces/> 0255 <IncludeRules context="##Comments"/> 0256 <DetectIdentifier/> 0257 </context> 0258 </contexts> 0259 0260 <itemDatas> 0261 <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="0"/> 0262 <itemData name="Section Symbol" defStyleNum="dsOperator" spellChecking="0"/> 0263 <itemData name="Section" defStyleNum="dsKeyword" spellChecking="0"/> 0264 <itemData name="Section Name" defStyleNum="dsString" spellChecking="0"/> 0265 <itemData name="Property" defStyleNum="dsVariable" spellChecking="0"/> 0266 <itemData name="Property gcode" defStyleNum="dsVerbatimString" spellChecking="0"/> 0267 <itemData name="Property pin" defStyleNum="dsAttribute" spellChecking="0"/> 0268 <itemData name="Path" defStyleNum="dsVerbatimString" spellChecking="0"/> 0269 <itemData name="Operator" defStyleNum="dsOperator" spellChecking="0"/> 0270 <itemData name="Comment" defStyleNum="dsComment"/> 0271 <itemData name="String" defStyleNum="dsString"/> 0272 <itemData name="String Special Char" defStyleNum="dsSpecialChar" spellChecking="false"/> 0273 <itemData name="Int" defStyleNum="dsDecVal" spellChecking="false"/> 0274 <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> 0275 <itemData name="Pin Id" defStyleNum="dsPreprocessor" spellChecking="false"/> 0276 <itemData name="Symbol Separator" defStyleNum="dsOperator" spellChecking="0"/> 0277 <itemData name="Special Variable" defStyleNum="dsConstant" spellChecking="0"/> 0278 <itemData name="G-word" defStyleNum="dsKeyword" spellChecking="0"/> 0279 <itemData name="M-word" defStyleNum="dsKeyword" spellChecking="0"/> 0280 <itemData name="Macro" defStyleNum="dsExtension" spellChecking="0"/> 0281 <itemData name="Parameter" defStyleNum="dsVariable" spellChecking="0"/> 0282 <itemData name="Parameter Value" defStyleNum="dsDecVal" spellChecking="0"/> 0283 <itemData name="Jinja Expression" defStyleNum="dsPreprocessor" spellChecking="0"/> 0284 <itemData name="Jinja Symbol Separator" defStyleNum="dsNormal" spellChecking="0"/> 0285 <itemData name="Jinja Operator Symbol" defStyleNum="dsOperator" spellChecking="0"/> 0286 <itemData name="Jinja Accessor Symbol" defStyleNum="dsNormal" spellChecking="0"/> 0287 <itemData name="Jinja Control Flow" defStyleNum="dsControlFlow" spellChecking="0"/> 0288 <itemData name="Jinja Keyword" defStyleNum="dsKeyword" spellChecking="0"/> 0289 <itemData name="Jinja Function" defStyleNum="dsFunction" spellChecking="0"/> 0290 </itemDatas> 0291 </highlighting> 0292 0293 <general> 0294 <folding indentationsensitive="1"/> 0295 <comments> 0296 <comment name="singleLine" start="#"/> 0297 </comments> 0298 <keywords casesensitive="0"/> 0299 </general> 0300 </language> 0301 <!-- kate: replace-tabs on; indent-width 2; tab-width 2; -->