Warning, /frameworks/syntax-highlighting/data/syntax/asm-avr.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE language> 0003 <!-- 0004 0005 ************************************************************************* 0006 * * 0007 * Syntax highlighting for the AVR Assembler * 0008 * Copyright (C) 2004, Roland Nagy * 0009 * * 0010 ************************************************************************* 0011 0012 Author: Rolanf Nagy <R.Nagy@pknc.com> 0013 Date: 18th May, 2004 0014 Version: 1.0 0015 0016 This file contains the XML syntax highlighting description for the AVR 0017 Assembler, for KATE, the KDE Advanced Editor. Keywords have been taken 0018 directly from the AVR Assembler source code. 0019 0020 This program, including associated files, is free software. You may 0021 distribute it and/or modify it under the terms of the GNU General Public 0022 License as published by the Free Software Foundation; either Version 2 of 0023 the license, or (at your option) any later version. 0024 0025 This program is distributed in the hope that it will be useful, but 0026 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 0027 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0028 for more details. 0029 0030 You should have received a copy of the GNU General Public License along 0031 with this program; if not, write to the Free Software Foundation, Inc., 0032 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 0033 0034 --> 0035 0036 <language name="AVR Assembler" version="6" kateversion="5.62" section="Assembler" extensions="*.asm;*.ASM;*.asm-avr" mimetype="text/x-asm;text/x-asm-avr" author="Roland Nagy" license="GPLv2+"> 0037 <highlighting> 0038 <list name="keywords"> 0039 <item>adc</item> 0040 <item>add</item> 0041 <item>adiw</item> 0042 <item>and</item> 0043 <item>andi</item> 0044 <item>asr</item> 0045 <item>bclr</item> 0046 <item>bld</item> 0047 <item>break</item> 0048 <item>bset</item> 0049 <item>bst</item> 0050 <item>cbi</item> 0051 <item>cbr</item> 0052 <item>clc</item> 0053 <item>clh</item> 0054 <item>cli</item> 0055 <item>cln</item> 0056 <item>clr</item> 0057 <item>cls</item> 0058 <item>clt</item> 0059 <item>clv</item> 0060 <item>clz</item> 0061 <item>com</item> 0062 <item>dec</item> 0063 <item>des</item> 0064 <item>elpm</item> 0065 <item>eor</item> 0066 <item>fmul</item> 0067 <item>fmuls</item> 0068 <item>fmulsu</item> 0069 <item>in</item> 0070 <item>inc</item> 0071 <item>lac</item> 0072 <item>las</item> 0073 <item>lat</item> 0074 <item>ld</item> 0075 <item>ldd</item> 0076 <item>ldi</item> 0077 <item>lds</item> 0078 <item>lpm</item> 0079 <item>lsl</item> 0080 <item>lsr</item> 0081 <item>mov</item> 0082 <item>movw</item> 0083 <item>mul</item> 0084 <item>muls</item> 0085 <item>mulsu</item> 0086 <item>neg</item> 0087 <item>nop</item> 0088 <item>or</item> 0089 <item>ori</item> 0090 <item>out</item> 0091 <item>pop</item> 0092 <item>push</item> 0093 <item>rol</item> 0094 <item>ror</item> 0095 <item>sbc</item> 0096 <item>sbr</item> 0097 <item>sec</item> 0098 <item>seh</item> 0099 <item>sbi</item> 0100 <item>sbci</item> 0101 <item>sbiw</item> 0102 <item>sei</item> 0103 <item>sen</item> 0104 <item>ser</item> 0105 <item>ses</item> 0106 <item>set</item> 0107 <item>sev</item> 0108 <item>sez</item> 0109 <item>sleep</item> 0110 <item>spm</item> 0111 <item>st</item> 0112 <item>std</item> 0113 <item>sts</item> 0114 <item>sub</item> 0115 <item>subi</item> 0116 <item>swap</item> 0117 <item>tst</item> 0118 <item>wdr</item> 0119 <item>xch</item> 0120 </list> 0121 0122 <list name="branch instructions"> 0123 <item>brbc</item> 0124 <item>brbs</item> 0125 <item>brcc</item> 0126 <item>brcs</item> 0127 <item>breq</item> 0128 <item>brge</item> 0129 <item>brhc</item> 0130 <item>brhs</item> 0131 <item>brid</item> 0132 <item>brie</item> 0133 <item>brlo</item> 0134 <item>brlt</item> 0135 <item>brmi</item> 0136 <item>brne</item> 0137 <item>brpl</item> 0138 <item>brsh</item> 0139 <item>brtc</item> 0140 <item>brts</item> 0141 <item>brvc</item> 0142 <item>brvs</item> 0143 <item>call</item> 0144 <item>cp</item> 0145 <item>cpc</item> 0146 <item>cpi</item> 0147 <item>cpse</item> 0148 <item>eicall</item> 0149 <item>eijmp</item> 0150 <item>icall</item> 0151 <item>ijmp</item> 0152 <item>jmp</item> 0153 <item>rcall</item> 0154 <item>ret</item> 0155 <item>reti</item> 0156 <item>rjmp</item> 0157 <item>sbic</item> 0158 <item>sbis</item> 0159 <item>sbrc</item> 0160 <item>sbrs</item> 0161 </list> 0162 0163 <list name="directives"> 0164 <item>.byte</item> 0165 <item>.cseg</item> 0166 <item>.csegsize</item> 0167 <item>.db</item> 0168 <item>.dd</item> 0169 <item>.def</item> 0170 <item>.dq</item> 0171 <item>.dseg</item> 0172 <item>.dw</item> 0173 <item>.elif</item> 0174 <item>.else</item> 0175 <item>.endif</item> 0176 <item>.endm</item> 0177 <item>.endmacro</item> 0178 <item>.equ</item> 0179 <item>.error</item> 0180 <item>.esec</item> 0181 <item>.exit</item> 0182 <item>.if</item> 0183 <item>.ifdef</item> 0184 <item>.ifndef</item> 0185 <item>.include</item> 0186 <item>.list</item> 0187 <item>.listmac</item> 0188 <item>.macro</item> 0189 <item>.message</item> 0190 <item>.nolist</item> 0191 <item>.nooverlap</item> 0192 <item>.org</item> 0193 <item>.overlap</item> 0194 <item>.set</item> 0195 <item>.undef</item> 0196 <item>.warning</item> 0197 </list> 0198 0199 <list name="functions"> 0200 <item>low</item> 0201 <item>high</item> 0202 <item>byte2</item> 0203 <item>byte3</item> 0204 <item>byte4</item> 0205 <item>lwrd</item> 0206 <item>hwrd</item> 0207 <item>page</item> 0208 <item>exp2</item> 0209 <item>log2</item> 0210 <item>int</item> 0211 <item>frac</item> 0212 <item>q7</item> 0213 <item>q15</item> 0214 <item>abs</item> 0215 <item>defined</item> 0216 <item>strlen</item> 0217 </list> 0218 0219 <list name="constants"> 0220 <item>__AVRASM_VERSION__</item> 0221 <item>__CORE_VERSION__</item> 0222 <item>__DATE__</item> 0223 <item>__TIME__</item> 0224 <item>__CENTURY__</item> 0225 <item>__YEAR__</item> 0226 <item>__MONTH__</item> 0227 <item>__FILE__</item> 0228 <item>__LINE__</item> 0229 <item>__SECOND__</item> 0230 <item>__MINUTE__</item> 0231 <item>__HOUR__</item> 0232 <item>__DAY__</item> 0233 <item>__PART_NAME__</item> 0234 </list> 0235 0236 <list name="macros"> 0237 <item>#define</item> 0238 <item>#if</item> 0239 <item>#undef</item> 0240 <item>#idef</item> 0241 <item>#ifndef</item> 0242 <item>#if</item> 0243 <item>#elif</item> 0244 <item>#else</item> 0245 <item>#endif</item> 0246 <item>#error</item> 0247 <item>#warning</item> 0248 <item>#message</item> 0249 <item>#include</item> 0250 <item>#pragma</item> 0251 </list> 0252 0253 <contexts> 0254 <context attribute="Normal Text" lineEndContext="#stay" name="Normal"> 0255 <DetectSpaces attribute="Normal Text" /> 0256 <DetectChar attribute="Decimal" context="Number" char="0" lookAhead="1" /> 0257 <Int attribute="Decimal" context="Decimal" /> 0258 <DetectChar attribute="Directive" context="Directive" char="." lookAhead="1"/> 0259 <DetectChar attribute="Hex" context="Hex" char="$" /> 0260 <DetectChar attribute="Referred Macro Parameter" context="RefMacroParam" char="@" lookAhead="1" /> 0261 <HlCChar attribute="Char" context="#stay" /> 0262 <DetectChar attribute="String" context="String" char=""" /> 0263 <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="*" beginRegion="BlockComment" /> 0264 <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="/" /> 0265 <DetectChar attribute="Comment" context="Commentar 2" char=";" /> 0266 <AnyChar attribute="Symbol" context="#stay" String="!~-*/%+-<>=&^|?,()\" /> 0267 <DetectChar attribute="Preprocessor" context="Preprocessor" char="#" firstNonSpace="1" lookAhead="1"/> 0268 <RegExpr attribute="Label" context="#stay" String="[A-Za-z0-9_]+:" firstNonSpace="1"/> 0269 <keyword attribute="Keyword" context="#stay" String="keywords"/> 0270 <keyword attribute="Branch Instructions" context="#stay" String="branch instructions"/> 0271 <keyword attribute="Function" context="#stay" String="functions"/> 0272 <RegExpr context="#stay" String="[A-Za-z_.$][A-Za-z0-9_.$]*" /> 0273 </context> 0274 0275 <context attribute="Referred Macro Parameter" lineEndContext="#pop" name="RefMacroParam"> 0276 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="0" /> 0277 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="1" /> 0278 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="2" /> 0279 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="3" /> 0280 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="4" /> 0281 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="5" /> 0282 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="6" /> 0283 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="7" /> 0284 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="8" /> 0285 <Detect2Chars attribute="Referred Macro Parameter" context="#pop" char="@" char1="9" /> 0286 <DetectChar attribute="Error" context="#pop" char="@" /> 0287 </context> 0288 0289 <context attribute="Directive" lineEndContext="#pop" name="Directive" fallthroughContext="#pop!BadDirective"> 0290 <keyword attribute="Directive" context="#pop" String="directives" insensitive="1" /> 0291 </context> 0292 0293 <context attribute="Error" lineEndContext="#pop" name="BadDirective" fallthroughContext="#pop"> 0294 <DetectChar attribute="Error" context="#stay" char="." /> 0295 <DetectIdentifier attribute="Error" context="#pop" /> 0296 </context> 0297 0298 <context attribute="Decimal" lineEndContext="#pop" name="Number"> 0299 <StringDetect attribute="Hex" context="#pop!Hex" String="0x" insensitive="1" /> 0300 <StringDetect attribute="Binary" context="#pop!Binary" String="0b" insensitive="1" /> 0301 <StringDetect attribute="Float" context="#pop!Float" String="0f" insensitive="1" /> 0302 <StringDetect attribute="Float" context="#pop!Float" String="0e" insensitive="1" /> 0303 <StringDetect attribute="Float" context="#pop!Float" String="0d" insensitive="1" /> 0304 <WordDetect attribute="Decimal" context="#pop" String="0" /> 0305 <DetectChar attribute="Octal" context="#pop!Octal" char="0" /> 0306 </context> 0307 0308 <context attribute="Decimal" lineEndContext="#pop" name="Decimal" fallthroughContext="#pop"> 0309 <AnyChar attribute="Decimal" context="#stay" String="0123456789_" /> 0310 </context> 0311 0312 <context attribute="Binary" lineEndContext="#pop" name="Binary" fallthroughContext="#pop"> 0313 <AnyChar attribute="Binary" context="#stay" String="01_" /> 0314 </context> 0315 0316 <context attribute="Octal" lineEndContext="#pop" name="Octal" fallthroughContext="#pop"> 0317 <AnyChar attribute="Octal" context="#stay" String="01234567_" /> 0318 </context> 0319 0320 <context attribute="Hex" lineEndContext="#pop" name="Hex" fallthroughContext="#pop"> 0321 <AnyChar attribute="Hex" context="#stay" String="0123456789abcdefABCDEF_" /> 0322 </context> 0323 0324 <context attribute="Float" lineEndContext="#pop" name="Float" fallthroughContext="#pop"> 0325 <RegExpr attribute="Float" context="#stay" String="[-+]?[0-9]*+\.?[0-9]*+[eE]?[-+]?[0-9]+" /> 0326 </context> 0327 0328 <context attribute="String" lineEndContext="#pop" name="String"> 0329 <LineContinue attribute="Symbol" /> 0330 <HlCStringChar attribute="String Char" context="#stay" /> 0331 <DetectChar attribute="String" context="#pop" char=""" /> 0332 </context> 0333 0334 <context attribute="Comment" lineEndContext="#stay" name="Commentar 1"> 0335 <DetectSpaces attribute="Comment"/> 0336 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="BlockComment" /> 0337 <IncludeRules context="##Comments"/> 0338 <DetectIdentifier attribute="Comment"/> 0339 </context> 0340 <context attribute="Comment" lineEndContext="#pop" name="Commentar 2"> 0341 <DetectSpaces attribute="Comment"/> 0342 <IncludeRules context="##Comments"/> 0343 <DetectIdentifier attribute="Comment"/> 0344 </context> 0345 0346 <context attribute="Preprocessor" lineEndContext="#pop" name="Preprocessor"> 0347 <keyword attribute="Preprocessor" context="#pop!InPreprocessor" String="macros" /> 0348 <DetectChar attribute="Preprocessor" context="#pop!PreprocessorName" char="#" /> 0349 </context> 0350 <context attribute="Preprocessor" lineEndContext="#pop" name="PreprocessorName"> 0351 <DetectIdentifier attribute="Unknown Preprocessor" context="#pop!InPreprocessor" /> 0352 </context> 0353 0354 <context attribute="Preprocessor" lineEndContext="#pop" name="InPreprocessor"> 0355 <LineContinue attribute="Symbol" /> 0356 <DetectChar attribute="Symbol" context="#stay" char="#" /> 0357 <Detect2Chars attribute="Constant" context="Constant" char="_" char1="_" lookAhead="1"/> 0358 <IncludeRules context="Normal" /> 0359 </context> 0360 0361 <context attribute="Constant" lineEndContext="#stay" name="Constant"> 0362 <keyword attribute="Constant" context="#pop" String="constants"/> 0363 <RegExpr attribute="Constant" context="#pop" String="__(?:[0-9a-zA-Z]++|_(?!_))++__" /> 0364 <DetectIdentifier attribute="Error" context="#pop" /> 0365 </context> 0366 </contexts> 0367 0368 <itemDatas> 0369 <itemData name="Normal Text" defStyleNum="dsNormal" /> 0370 <itemData name="Label" defStyleNum="dsFunction" /> 0371 <itemData name="Function" defStyleNum="dsFunction" /> 0372 <itemData name="Keyword" defStyleNum="dsKeyword" /> 0373 <itemData name="Branch Instructions" defStyleNum="dsControlFlow" /> 0374 <itemData name="Directive" defStyleNum="dsKeyword" /> 0375 <itemData name="Decimal" defStyleNum="dsDecVal" /> 0376 <itemData name="Octal" defStyleNum="dsBaseN" /> 0377 <itemData name="Hex" defStyleNum="dsBaseN" /> 0378 <itemData name="Binary" defStyleNum="dsBaseN" /> 0379 <itemData name="Float" defStyleNum="dsFloat" /> 0380 <itemData name="Char" defStyleNum="dsChar" /> 0381 <itemData name="String" defStyleNum="dsString" /> 0382 <itemData name="String Char" defStyleNum="dsSpecialChar" /> 0383 <itemData name="Symbol" defStyleNum="dsOperator" /> 0384 <itemData name="Comment" defStyleNum="dsComment" /> 0385 <itemData name="Preprocessor" defStyleNum="dsPreprocessor" /> 0386 <itemData name="Constant" defStyleNum="dsOthers" /> 0387 <itemData name="Error" defStyleNum="dsError" /> 0388 <itemData name="Unknown Preprocessor" defStyleNum="dsError" /> 0389 <itemData name="Referred Macro Parameter" defStyleNum="dsVariable" /> 0390 </itemDatas> 0391 </highlighting> 0392 0393 <general> 0394 <comments> 0395 <comment name="singleLine" start=";" /> 0396 <comment name="multiLine" start="/*" end="*/" region="BlockComment" /> 0397 </comments> 0398 <keywords casesensitive="1" weakDeliminator=".$#" /> 0399 </general> 0400 </language> 0401 <!-- kate: replace-tabs on; tab-width 2; indent-width 2; -->