Warning, /frameworks/syntax-highlighting/data/syntax/elvish.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 tab "	"> 0005 <!ENTITY space " "> 0006 <!ENTITY CR "
"> 0007 <!ENTITY LF "
"> 0008 <!ENTITY comment "#.*?(?:[&CR;&LF;]|$)"> <!-- starting with # and ending before (but not including) the next carriage return, newline or end of file; --> 0009 <!ENTITY line_continue "^(?:&CR;|&CR;&LF;)"> <!-- a ^ followed by a newline ("\n"), or a carriage return and newline ("\r\n"). --> 0010 <!ENTITY inline_whitespace "&space;|&tab;|&comment;|&line_continue;"> 0011 <!ENTITY whitespace "&inline_whitespace;|&CR;|&LF;"> 0012 <!ENTITY bareword "[a-zA-Z0-9!%+,-.\/:@\_~]+|\p{L}+"> <!-- Matches a-z, A-Z, 0-9, ! % + , - . / : @ \ _ ~ OR Any letter from any language UTF-8 --> 0013 <!ENTITY ns_identifier "[\p{L}_]+"> <!-- Matches any letter from any language UTF-8 or _. NOTE: This is not explicitly defined by the language author --> 0014 ]> 0015 0016 <!-- NOTE: This document was made for Elvish version 0.19.1 and may be inaccurate when the language gets updated --> 0017 <language name="Elvish" version="1" kateversion="5.72" section="Scripts" extensions="*.elv" casesensitive="1" author="Lilith Houtjes (lilith@stroopwafel.dev)" license="MIT"> 0018 0019 <highlighting> 0020 <list name="keywords"> 0021 <item>fn</item> 0022 <item>pragma</item> 0023 </list> 0024 0025 <list name="variables"> 0026 <item>var</item> 0027 <item>tmp</item> 0028 <item>set</item> 0029 <item>del</item> 0030 </list> 0031 0032 <list name="controlFlow"> 0033 <item>break</item> 0034 <item>continue</item> 0035 <item>defer</item> 0036 <item>elif</item> 0037 <item>else</item> 0038 <item>if</item> 0039 <item>return</item> 0040 <item>while</item> 0041 <item>try</item> 0042 <item>catch</item> 0043 <item>except</item> 0044 <item>finally</item> 0045 <item>for</item> 0046 </list> 0047 0048 <list name="functions"> 0049 <item>+</item> 0050 <item>-</item> 0051 <item>*</item> 0052 <item>/</item> 0053 <item>%</item> 0054 <item><</item> 0055 <item><=</item> 0056 <item>==</item> 0057 <item>!=</item> 0058 <item>></item> 0059 <item>>=</item> 0060 <item><s</item> 0061 <item><=s</item> 0062 <item>==s</item> 0063 <item>!=s</item> 0064 <item>>s</item> 0065 <item>>=s</item> 0066 <item>all</item> 0067 <item>assoc</item> 0068 <item>base</item> 0069 <item>benchmark</item> 0070 <item>bool</item> 0071 <item>call</item> 0072 <item>cd</item> 0073 <item>compact</item> 0074 <item>compare</item> 0075 <item>conj</item> 0076 <item>constantly</item> 0077 <item>count</item> 0078 <item>deprecate</item> 0079 <item>dissoc</item> 0080 <item>drop</item> 0081 <item>each</item> 0082 <item>eawk</item> 0083 <item>echo</item> 0084 <item>eq</item> 0085 <item>eval</item> 0086 <item>exact-num</item> 0087 <item>exec</item> 0088 <item>exit</item> 0089 <item>external</item> 0090 <item>fail</item> 0091 <item>float64</item> 0092 <item>from-terminated</item> 0093 <item>get-env</item> 0094 <item>has-env</item> 0095 <item>has-external</item> 0096 <item>has-key</item> 0097 <item>has-value</item> 0098 <item>inexact-num</item> 0099 <item>is</item> 0100 <item>keys</item> 0101 <item>kind-of</item> 0102 <item>-log</item> 0103 <item>make-map</item> 0104 <item>nop</item> 0105 <item>not-eq</item> 0106 <item>ns</item> 0107 <item>num</item> 0108 <item>one</item> 0109 <item>order</item> 0110 <item>peach</item> 0111 <item>pprint</item> 0112 <item>print</item> 0113 <item>printf</item> 0114 <item>put</item> 0115 <item>randint</item> 0116 <item>-randseed</item> 0117 <item>range</item> 0118 <item>read-upto</item> 0119 <item>repeat</item> 0120 <item>repr</item> 0121 <item>resolve</item> 0122 <item>run-parallel</item> 0123 <item>search-external</item> 0124 <item>set-env</item> 0125 <item>show</item> 0126 <item>sleep</item> 0127 <item>styled</item> 0128 <item>styled-segment</item> 0129 <item>take</item> 0130 <item>tilde-abbr</item> 0131 <item>time</item> 0132 <item>to-lines</item> 0133 <item>to-string</item> 0134 <item>to-terminated</item> 0135 <item>unset-env</item> 0136 <item>use-mod</item> 0137 <item>wcswidth</item> 0138 </list> 0139 0140 <list name="functionsnoargs"> 0141 <item>from-json</item> 0142 <item>from-lines</item> 0143 <item>-gc</item> 0144 <item>-ifaddrs</item> 0145 <item>only-bytes</item> 0146 <item>only-values</item> 0147 <item>rand</item> 0148 <item>read-line</item> 0149 <item>slurp</item> 0150 <item>src</item> 0151 <item>-stack</item> 0152 <item>to-json</item> 0153 </list> 0154 0155 <list name="booloperators"> 0156 <item>and</item> 0157 <item>not</item> 0158 <item>coalesce</item> 0159 </list> 0160 0161 <list name="docfunctions"> 0162 <item>find</item> 0163 <item>show</item> 0164 <item>source</item> 0165 </list> 0166 0167 <list name="editfunctions"> 0168 <item>add-var</item> 0169 <item>add-vars</item> 0170 <item>binding-table</item> 0171 <item>command-history</item> 0172 <item>complete-filename</item> 0173 <item>complete-getopt</item> 0174 <item>complex-candidate</item> 0175 <item>del-var</item> 0176 <item>del-vars</item> 0177 <item>insert-at-dot</item> 0178 <item>key</item> 0179 <item>listing:start-custom</item> 0180 <item>match-prefix</item> 0181 <item>match-subseq</item> 0182 <item>match-substr</item> 0183 <item>notify</item> 0184 <item>redraw</item> 0185 <item>replace-input</item> 0186 <item>wordify</item> 0187 </list> 0188 0189 <list name="editfunctionsnoargs"> 0190 <item>apply-autofix</item> 0191 <item>clear</item> 0192 <item>close-mode</item> 0193 <item>command:start</item> 0194 <item>completion:close</item> 0195 <item>completion:smart-start</item> 0196 <item>completion:start</item> 0197 <item>end-of-history</item> 0198 <item>histlist:start</item> 0199 <item>histlist:toggle-dedup</item> 0200 <item>history:accept</item> 0201 <item>history:down</item> 0202 <item>history:down-or-quit</item> 0203 <item>history:fast-forward</item> 0204 <item>history:start</item> 0205 <item>history:up</item> 0206 <item>insert-last-word</item> 0207 <item>insert-raw</item> 0208 <item>-instant:start</item> 0209 <item>kill-alnum-word-left</item> 0210 <item>kill-alnum-word-right</item> 0211 <item>kill-line-left</item> 0212 <item>kill-line-right</item> 0213 <item>kill-rune-left</item> 0214 <item>kill-rune-right</item> 0215 <item>kill-small-word-left</item> 0216 <item>kill-small-word-right</item> 0217 <item>kill-word-left</item> 0218 <item>kill-word-right</item> 0219 <item>lastcmd:start</item> 0220 <item>listing:accept</item> 0221 <item>listing:down</item> 0222 <item>listing:down-cycle</item> 0223 <item>listing:page-down</item> 0224 <item>listing:page-up</item> 0225 <item>listing:up</item> 0226 <item>listing:up-cycle</item> 0227 <item>move-dot-down</item> 0228 <item>move-dot-eol</item> 0229 <item>move-dot-left</item> 0230 <item>move-dot-left-alnum-word</item> 0231 <item>move-dot-left-small-word</item> 0232 <item>move-dot-left-word</item> 0233 <item>move-dot-right</item> 0234 <item>move-dot-right-alnum-word</item> 0235 <item>move-dot-right-small-word</item> 0236 <item>move-dot-right-word</item> 0237 <item>move-dot-sol</item> 0238 <item>move-dot-up</item> 0239 <item>navigation:insert-selected</item> 0240 <item>navigation:insert-selected-and-quit</item> 0241 <item>navigation:start</item> 0242 <item>navigation:trigger-filter</item> 0243 <item>navigation:trigger-shown-hidden</item> 0244 <item>return-eof</item> 0245 <item>return-line</item> 0246 <item>smart-enter</item> 0247 <item>toggle-quote-paste</item> 0248 <item>transponse-alnum-word</item> 0249 <item>tranpose-rune</item> 0250 <item>tranpose-small-word</item> 0251 <item>tranpose-word</item> 0252 </list> 0253 0254 <list name="epmfunctions"> 0255 <item>dest</item> 0256 <item>install</item> 0257 <item>is-installed</item> 0258 <item>metadata</item> 0259 <item>query</item> 0260 <item>uninstall</item> 0261 <item>upgrade</item> 0262 </list> 0263 0264 <list name="epmfunctionsnoargs"> 0265 <item>installed</item> 0266 <item>list</item> 0267 </list> 0268 0269 <list name="flagfunctions"> 0270 <item>call</item> 0271 <item>parse</item> 0272 <item>parse-getopt</item> 0273 </list> 0274 0275 <list name="filefunctions"> 0276 <item>close</item> 0277 <item>is-tty</item> 0278 <item>open</item> 0279 <item>truncate</item> 0280 </list> 0281 0282 <list name="filefunctionsnoargs"> 0283 <item>pipe</item> 0284 </list> 0285 0286 <list name="mathfunctions"> 0287 <item>abs</item> 0288 <item>acos</item> 0289 <item>acosh</item> 0290 <item>asin</item> 0291 <item>asinh</item> 0292 <item>atan</item> 0293 <item>atanh</item> 0294 <item>ceil</item> 0295 <item>cos</item> 0296 <item>cosh</item> 0297 <item>floor</item> 0298 <item>is-inf</item> 0299 <item>is-nan</item> 0300 <item>log</item> 0301 <item>log10</item> 0302 <item>log2</item> 0303 <item>max</item> 0304 <item>min</item> 0305 <item>pow</item> 0306 <item>round</item> 0307 <item>round-to-even</item> 0308 <item>sin</item> 0309 <item>sinh</item> 0310 <item>sqrt</item> 0311 <item>tan</item> 0312 <item>tanh</item> 0313 <item>trunc</item> 0314 </list> 0315 0316 <list name="pathfunctions"> 0317 <item>abs</item> 0318 <item>base</item> 0319 <item>clean</item> 0320 <item>dir</item> 0321 <item>eval-symlinks</item> 0322 <item>ext</item> 0323 <item>is-abs</item> 0324 <item>is-dir</item> 0325 <item>is-regular</item> 0326 <item>join</item> 0327 <item>temp-dir</item> 0328 <item>temp-file</item> 0329 </list> 0330 0331 <list name="platformfunctions"> 0332 <item>hostname</item> 0333 </list> 0334 0335 <list name="refunctions"> 0336 <item>find</item> 0337 <item>match</item> 0338 <item>quote</item> 0339 <item>replace</item> 0340 <item>split</item> 0341 </list> 0342 0343 <list name="storefunctions"> 0344 <item>add-cmd</item> 0345 <item>add-dir</item> 0346 <item>cmd</item> 0347 <item>cmds</item> 0348 <item>del-cmd</item> 0349 <item>del-dir</item> 0350 </list> 0351 0352 <list name="storefunctionsnoargs"> 0353 <item>dirs</item> 0354 <item>next-cmd-seq</item> 0355 </list> 0356 0357 <list name="stringfunctions"> 0358 <item>compare</item> 0359 <item>contains</item> 0360 <item>contains-any</item> 0361 <item>count</item> 0362 <item>equal-fold</item> 0363 <item>fields</item> 0364 <item>from-codepoints</item> 0365 <item>from-utf8-bytes</item> 0366 <item>has-prefix</item> 0367 <item>has-suffix</item> 0368 <item>index</item> 0369 <item>index-any</item> 0370 <item>join</item> 0371 <item>last-index</item> 0372 <item>replace</item> 0373 <item>split</item> 0374 <item>title</item> 0375 <item>to-codepoints</item> 0376 <item>to-lower</item> 0377 <item>to-title</item> 0378 <item>to-upper</item> 0379 <item>to-utf8-bytes</item> 0380 <item>trim</item> 0381 <item>trim-left</item> 0382 <item>trim-prefix</item> 0383 <item>trim-right</item> 0384 <item>trim-space</item> 0385 <item>trim-suffix</item> 0386 </list> 0387 0388 <list name="unixcommands"> 0389 <include>unixcommands##Bash</include> 0390 </list> 0391 0392 <contexts> 0393 <context name="normal" attribute="Normal Text" lineEndContext="#stay"> 0394 <DetectSpaces /> 0395 0396 <!-- Match keywords --> 0397 <keyword attribute="Keyword" context="#stay" String="keywords" /> 0398 0399 <!-- Match control flow statements --> 0400 <keyword attribute="Control Flow" context="#stay" String="controlFlow" /> 0401 0402 <!-- Match functions --> 0403 <keyword attribute="Builtin" context="#stay" String="functions" /> 0404 <keyword attribute="Builtin" context="#stay" String="functionsnoargs" /> 0405 <AnyChar attribute="Builtin" context="CompFunction" String="<>" /> 0406 <keyword attribute="Function" context="#stay" String="unixcommands" /> 0407 0408 <!-- Match braces --> 0409 <DetectChar attribute="Operator" context="TryVariable" char="{" lookAhead="true" beginRegion="Brace1" /> 0410 <DetectChar attribute="Operator" context="#stay" char="}" endRegion="Brace1" /> 0411 0412 <!-- Match variables --> 0413 <keyword attribute="Keyword" context="Variable" String="variables" firstNonSpace="true" /> 0414 <AnyChar context="TryVariable" lookAhead="true" String="{(|;" /> 0415 <DetectChar attribute="Variable" context="Variable" char="$" /> 0416 0417 <!-- Match operators --> 0418 <AnyChar attribute="Operator" context="#stay" String="*?|&;<>()[]{}=" /> 0419 <keyword attribute="Operator" context="#stay" String="booloperators" /> 0420 0421 <!-- Match use statement --> 0422 <WordDetect String="use" attribute="Use" context="#stay" /> 0423 0424 <!-- Match builtin functions with namespaces --> 0425 <StringDetect String="builtin:" attribute="Builtin" context="BuiltinFunctions" /> 0426 <StringDetect String="doc:" attribute="Builtin" context="DocFunctions" /> 0427 <StringDetect String="edit:" attribute="Builtin" context="EditFunctions" /> 0428 <StringDetect String="epm:" attribute="Builtin" context="EpmFunctions" /> 0429 <StringDetect String="flag:" attribute="Builtin" context="FlagFunctions" /> 0430 <StringDetect String="file:" attribute="Builtin" context="FileFunctions" /> 0431 <StringDetect String="math:" attribute="Builtin" context="MathFunctions" /> 0432 <StringDetect String="path:" attribute="Builtin" context="PathFunctions" /> 0433 <StringDetect String="platform:" attribute="Builtin" context="PlatformFunctions" /> 0434 <StringDetect String="re:" attribute="Builtin" context="RegexFunctions" /> 0435 <StringDetect String="store:" attribute="Builtin" context="StoreFunctions" /> 0436 <StringDetect String="str:" attribute="Builtin" context="StringFunctions" /> 0437 0438 <!-- Match comments --> 0439 <DetectChar attribute="Comment" context="Comment" char="#" /> 0440 0441 <!-- Match numbers --> 0442 <HlCOct attribute="NumberBaseN" context="#stay" /> <!-- This matches \b0[0-7]+ and not \b0o[0-7]+ so we have to check for that as well --> 0443 <RegExpr String="\b0o[0-7]+|\b0b[01]+" attribute="NumberBaseN" context="#stay" /> <!-- Now we match against both octal types and Elvish also supports binary number declaration --> 0444 <HlCHex attribute="NumberBaseN" context="#stay" /> 0445 <Float attribute="Float" context="#stay" /> 0446 <Int attribute="Decimal" context="#stay" /> 0447 0448 <!-- Match strings --> 0449 <DetectChar attribute="String" context="StringDouble" char=""" /> 0450 <DetectChar attribute="String" context="StringSingle" char="'" /> 0451 0452 <RegExpr String="(&ns_identifier;){1}(:){1}(&bareword;){1}" context="TryExternal" lookAhead="true" /> 0453 </context> 0454 0455 <!-- Match comparison functions: < <= >= > <s <=s >=s >s --> 0456 <context attribute="Builtin" lineEndContext="#pop" name="CompFunction" fallthroughContext="#pop"> 0457 <Detect2Chars attribute="Builtin" context="#pop" char="=" char1="s" /> 0458 <AnyChar attribute="Builtin" context="#pop" String="=s" /> 0459 </context> 0460 0461 <!-- BEGIN Region of matching builtin namespace functions --> 0462 0463 <!-- Users can explicitly call builtin functions using the builtin: namespace --> 0464 <context attribute="Builtin" lineEndContext="#pop" name="BuiltinFunctions" fallthroughContext="#pop"> 0465 <keyword attribute="Builtin" context="#pop" String="functions" /> 0466 <keyword attribute="Builtin" context="#pop" String="functionsnoargs" /> 0467 </context> 0468 0469 <context attribute="Builtin" lineEndContext="#pop" name="DocFunctions" fallthroughContext="#pop"> 0470 <keyword attribute="Builtin" context="#pop" String="docfunctions" /> 0471 </context> 0472 0473 <context attribute="Builtin" lineEndContext="#pop" name="EditFunctions" fallthroughContext="#pop"> 0474 <keyword attribute="Builtin" context="#pop" String="editfunctions" /> 0475 <keyword attribute="Builtin" context="#pop" String="editfunctionsnoargs" /> 0476 </context> 0477 0478 <context attribute="Builtin" lineEndContext="#pop" name="EpmFunctions" fallthroughContext="#pop"> 0479 <keyword attribute="Builtin" context="#pop" String="epmfunctions" /> 0480 <keyword attribute="Builtin" context="#pop" String="epmfunctionsnoargs" /> 0481 </context> 0482 0483 <context attribute="Builtin" lineEndContext="#pop" name="FlagFunctions" fallthroughContext="#pop"> 0484 <keyword attribute="Builtin" context="#pop" String="flagfunctions" /> 0485 </context> 0486 0487 <context attribute="Builtin" lineEndContext="#pop" name="FileFunctions" fallthroughContext="#pop"> 0488 <keyword attribute="Builtin" context="#pop" String="filefunctions" /> 0489 <keyword attribute="Builtin" context="#pop" String="filefunctionsnoargs" /> 0490 </context> 0491 0492 <context attribute="Builtin" lineEndContext="#pop" name="MathFunctions" fallthroughContext="#pop"> 0493 <keyword attribute="Builtin" context="#pop" String="mathfunctions" /> 0494 </context> 0495 0496 <context attribute="Builtin" lineEndContext="#pop" name="PathFunctions" fallthroughContext="#pop"> 0497 <keyword attribute="Builtin" context="#pop" String="pathfunctions" /> 0498 </context> 0499 0500 <context attribute="Builtin" lineEndContext="#pop" name="PlatformFunctions" fallthroughContext="#pop"> 0501 <keyword attribute="Builtin" context="#pop" String="platformfunctions" /> 0502 </context> 0503 0504 <context attribute="Builtin" lineEndContext="#pop" name="RegexFunctions" fallthroughContext="#pop"> 0505 <keyword attribute="Builtin" context="#pop" String="refunctions" /> 0506 </context> 0507 0508 <context attribute="Builtin" lineEndContext="#pop" name="StoreFunctions" fallthroughContext="#pop"> 0509 <keyword attribute="Builtin" context="#pop" String="storefunctions" /> 0510 <keyword attribute="Builtin" context="#pop" String="storefunctionsnoargs" /> 0511 </context> 0512 0513 <context attribute="Builtin" lineEndContext="#pop" name="StringFunctions" fallthroughContext="#pop"> 0514 <keyword attribute="Builtin" context="#pop" String="stringfunctions" /> 0515 </context> 0516 0517 <!-- END Region of matching builtin namespace functions --> 0518 0519 <!-- Use the comment rules already defined --> 0520 <context attribute="Comment" lineEndContext="#pop" name="Comment"> 0521 <DetectSpaces /> 0522 <IncludeRules context="##Comments" /> 0523 <DetectIdentifier /> 0524 </context> 0525 0526 <!-- Try to match variables that are not at the start of a line --> 0527 <context attribute="Normal Text" lineEndContext="#pop" name="TryVariable" fallthroughContext="#pop"> 0528 <DetectChar context="CurlyVariable" char="{" lookAhead="true" /> 0529 <AnyChar attribute="Operator" context="#stay" String="{(|;" /> 0530 <DetectSpaces /> 0531 <keyword attribute="Keyword" context="Variable" String="variables" /> 0532 </context> 0533 0534 <!-- Elvish only allows variable declarations after a whitespace when it's proceded by a curly brace ('{') --> 0535 <context attribute="Normal Text" lineEndContext="#pop#pop" name="CurlyVariable" fallthroughContext="#pop#pop"> 0536 <Detect2Chars attribute="Operator" context="#pop" char="{" char1=" " /> 0537 <Detect2Chars attribute="Operator" context="#pop" char="{" char1="&tab;" /> 0538 <DetectChar attribute="Operator" context="#stay" char="{" /> 0539 <DetectIdentifier context="#pop#pop" /> 0540 </context> 0541 0542 <!-- 0543 The definition of a variable is: 0544 * ASCII letters (a-z and A-Z) and numbers (0-9) 0545 * The symbols -_:~ 0546 * Non-ASCII codepoints that are printable, as defined by unicode.IsPrint in Go’s standard library. 0547 - Source (https://elv.sh/ref/language.html#variable) 0548 --> 0549 <context attribute="Variable" lineEndContext="#pop" name="Variable" fallthroughContext="#pop"> 0550 <DetectSpaces /> 0551 <RegExpr String="&bareword;" attribute="Variable" context="#pop" /> 0552 </context> 0553 0554 <!-- Match strings with double quotes (") --> 0555 <context attribute="String" lineEndContext="#pop" name="StringDouble"> 0556 <DetectChar attribute="String" context="#pop" char=""" /> 0557 <HlCStringChar attribute="Keychar" context="#stay" /> 0558 </context> 0559 0560 <!-- Match strings with single quotes (') --> 0561 <context attribute="String" lineEndContext="#pop" name="StringSingle"> 0562 <Detect2Chars attribute="String" context="#stay" char="'" char1="'" /> 0563 <DetectChar attribute="String" context="#pop" char="'" /> 0564 <HlCStringChar attribute="Keychar" context="#stay" /> 0565 </context> 0566 0567 <context attribute="Normal Text" lineEndContext="#pop" name="TryExternal" fallthroughContext="#pop"> 0568 <StringDetect context="#stay" attribute="Extension" String="%1" dynamic="true" /> 0569 <StringDetect context="#stay" attribute="Operator" String="%2" dynamic="true" /> 0570 <StringDetect context="#pop" attribute="Function" String="%3" dynamic="true" /> 0571 </context> 0572 0573 </contexts> 0574 0575 <itemDatas> 0576 <itemData name="Builtin" defStyleNum="dsBuiltIn" /> 0577 <itemData name="Comment" defStyleNum="dsComment" /> 0578 <itemData name="Control Flow" defStyleNum="dsControlFlow" /> 0579 <itemData name="Decimal" defStyleNum="dsDecVal" /> 0580 <itemData name="Extension" defStyleNum="dsExtension" /> 0581 <itemData name="Float" defStyleNum="dsFloat" /> 0582 <itemData name="Function" defStyleNum="dsFunction" /> 0583 <itemData name="Keychar" defStyleNum="dsSpecialChar" /> 0584 <itemData name="Keyword" defStyleNum="dsKeyword" /> 0585 <itemData name="Normal Text" defStyleNum="dsNormal" /> 0586 <itemData name="NumberBaseN" defStyleNum="dsBaseN" /> 0587 <itemData name="Operator" defStyleNum="dsOperator" /> 0588 <itemData name="String" defStyleNum="dsString" /> 0589 <itemData name="Use" defStyleNum="dsImport" /> 0590 <itemData name="Variable" defStyleNum="dsVariable" /> 0591 </itemDatas> 0592 </highlighting> 0593 <general> 0594 <keywords casesensitive="1" weakDeliminator="\+,-:=!.@#%^_`~" wordWrapDeliminator="&whitespace;"/> 0595 <comments> 0596 <comment name="singleLine" start="#"/> 0597 </comments> 0598 </general> 0599 </language>