Warning, /frameworks/syntax-highlighting/data/syntax/racket.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 xmlattrs "\s+([^&quot;/>]++|&quot;[^&quot;]*+&quot;)*+">
0005   <!ENTITY tab      "&#009;">
0006   <!ENTITY regex    "(?:[^\\(\[/]++|\\.|\[\^?\]?([^\\\[\]]++|\\.|\[(:[^:]+:\])?)++\]|\((?R)\))+">
0007 
0008   <!ENTITY initial_ascii_set "a-zA-Z!$&#37;&amp;*/:&lt;=&gt;?~_^">
0009   <!ENTITY initial_unicode_set "\p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Mn}\p{Nl}\p{No}\p{Pd}\p{Pc}\p{Po}\p{Sc}\p{Sm}\p{Sk}\p{So}\p{Co}">
0010   <!ENTITY initial_others "\\x[0-9a-fA-F]++;|(?![\x01-\x7f])[&initial_unicode_set;]">
0011   <!ENTITY initial "(?:[&initial_ascii_set;]|&initial_others;)">
0012   <!ENTITY subsequent "(?:[&initial_ascii_set;0-9-@.+\p{Nd}\p{Mc}\p{Me}]|&initial_others;)">
0013   <!ENTITY symbol "(?:&initial;&subsequent;*+)">
0014 ]>
0015 <!--
0016 Since Racket supports multiple scheme-like language, this was an extension to scheme.xml
0017 It also contains keywords for a few popular racket-based langs.
0018 -->
0019 <language version="2" kateversion="5.62" name="Racket" section="Scripts" extensions="*.rkt;*.scrbl" author="slbtty(shenlebantongying@gmail.com)" license="MIT" priority="9">
0020   <highlighting>
0021     <list name="operators">
0022       <item>&lt;=</item>
0023       <item>&lt;</item>
0024       <item>=</item>
0025       <item>=&gt;</item>
0026       <item>&gt;=</item>
0027       <item>&gt;</item>
0028       <item>-</item>
0029       <item>/</item>
0030       <item>+</item>
0031       <item>!</item>
0032       <item>$</item>
0033       <item>%</item>
0034       <item>*</item>
0035       <item>/</item>
0036       <item>=</item>
0037       <item>></item>
0038       <item>?</item>
0039       <item>^</item>
0040       <item>_</item>
0041       <item>~</item>
0042     </list>
0043 
0044     <list name="characters">
0045       <item>alarm</item>
0046       <item>backspace</item>
0047       <item>delete</item>
0048       <item>esc</item>
0049       <item>linefeed</item>
0050       <item>newline</item>
0051       <item>page</item>
0052       <item>return</item>
0053       <item>space</item>
0054       <item>tab</item>
0055       <item>vtab</item>
0056       <!-- extension -->
0057       <item>nul</item>
0058       <item>soh</item>
0059       <item>stx</item>
0060       <item>etx</item>
0061       <item>eot</item>
0062       <item>enq</item>
0063       <item>ack</item>
0064       <item>bel</item>
0065       <item>bs</item>
0066       <item>ht</item>
0067       <item>nl</item>
0068       <item>vt</item>
0069       <item>np</item>
0070       <item>cr</item>
0071       <item>so</item>
0072       <item>si</item>
0073       <item>dle</item>
0074       <item>dc1</item>
0075       <item>dc2</item>
0076       <item>dc3</item>
0077       <item>dc4</item>
0078       <item>nak</item>
0079       <item>syn</item>
0080       <item>etb</item>
0081       <item>can</item>
0082       <item>em</item>
0083       <item>sub</item>
0084       <item>fs</item>
0085       <item>gs</item>
0086       <item>rs</item>
0087       <item>us</item>
0088       <item>sp</item>
0089       <item>nl</item>
0090       <item>ht</item>
0091       <item>bs</item>
0092       <item>cr</item>
0093       <item>np</item>
0094       <item>null</item>
0095       <item>nul</item>
0096     </list>
0097     <list name="defines">
0098       <item>define</item>
0099       <item>define*</item>
0100       <item>define-accessor</item>
0101       <item>define-class</item>
0102       <item>defined?</item>
0103       <item>define-generic</item>
0104       <item>define-macro</item>
0105       <item>define-method</item>
0106       <item>define-module</item>
0107       <item>define-private</item>
0108       <item>define-public</item>
0109       <item>define*-public</item>
0110       <item>define-reader-ctor</item>
0111       <item>define-syntax</item>
0112       <item>define-simple-macro</item>
0113       <item>define-syntax-macro</item>
0114       <item>efine-syntax-rule </item>
0115       <item>define-syntax-class</item>
0116       <item>define-syntax-parameter</item>
0117       <item>defmacro</item>
0118       <item>defmacro*</item>
0119       <item>defmacro*-public</item>
0120     </list>
0121     <list name="keywords">
0122       <item>require</item>
0123       <item>provide</item>
0124       <item>&amp;assertion</item>
0125       <item>&amp;condition</item>
0126       <item>&amp;error</item>
0127       <item>&amp;i/o-decoding</item>
0128       <item>&amp;i/o-encoding</item>
0129       <item>&amp;i/o-file-already-exists</item>
0130       <item>&amp;i/o-file-does-not-exist</item>
0131       <item>&amp;i/o-file-is-read-only</item>
0132       <item>&amp;i/o-file-protection</item>
0133       <item>&amp;i/o-filename</item>
0134       <item>&amp;i/o-invalid-position</item>
0135       <item>&amp;i/o-port</item>
0136       <item>&amp;i/o-read</item>
0137       <item>&amp;i/o-write</item>
0138       <item>&amp;i/o</item>
0139       <item>&amp;implementation-restriction</item>
0140       <item>&amp;implementation-violation</item>
0141       <item>&amp;irritants</item>
0142       <item>&amp;lexical</item>
0143       <item>&amp;message</item>
0144       <item>&amp;mistake</item>
0145       <item>&amp;no-infinities</item>
0146       <item>&amp;no-nans</item>
0147       <item>&amp;non-continuable</item>
0148       <item>&amp;serious</item>
0149       <item>&amp;syntax</item>
0150       <item>&amp;undefined</item>
0151       <item>&amp;violation</item>
0152       <item>&amp;warning</item>
0153       <item>&amp;who</item>
0154       <item>&amp;xcond</item>
0155       <item>abs</item>
0156       <item>acos</item>
0157       <item>and</item>
0158       <item>angle</item>
0159       <item>append</item>
0160       <item>apply</item>
0161       <item>applymap</item>
0162       <item>asin</item>
0163       <item>assert</item>
0164       <item>assertion-violation</item>
0165       <item>assertion-violation?</item>
0166       <item>assoc</item>
0167       <item>assp</item>
0168       <item>assq</item>
0169       <item>assv</item>
0170       <item>atan</item>
0171       <item>begin</item>
0172       <item>binary-port?</item>
0173       <item>bitwise-and</item>
0174       <item>bitwise-arithmetic-shift-left</item>
0175       <item>bitwise-arithmetic-shift-right</item>
0176       <item>bitwise-arithmetic-shift</item>
0177       <item>bitwise-bit-count</item>
0178       <item>bitwise-bit-field</item>
0179       <item>bitwise-bit-set?</item>
0180       <item>bitwise-copy-bit-field</item>
0181       <item>bitwise-copy-bit</item>
0182       <item>bitwise-first-bit-set</item>
0183       <item>bitwise-if</item>
0184       <item>bitwise-ior</item>
0185       <item>bitwise-length</item>
0186       <item>bitwise-not</item>
0187       <item>bitwise-reverse-bit-field</item>
0188       <item>bitwise-rotate-bit-field</item>
0189       <item>bitwise-xor</item>
0190       <item>boolean=?</item>
0191       <item>boolean?</item>
0192       <item>bound-identifier=?</item>
0193       <item>break</item>
0194       <item>buffer-mode</item>
0195       <item>buffer-mode?</item>
0196       <item>bytevector-&gt;sint-list</item>
0197       <item>bytevector-&gt;string</item>
0198       <item>bytevector-&gt;u8-list</item>
0199       <item>bytevector-&gt;uint-list</item>
0200       <item>bytevector-copy!</item>
0201       <item>bytevector-copy</item>
0202       <item>bytevector-fill!</item>
0203       <item>bytevector-ieee-double-native-ref</item>
0204       <item>bytevector-ieee-double-native-set!</item>
0205       <item>bytevector-ieee-double-ref</item>
0206       <item>bytevector-ieee-double-set!</item>
0207       <item>bytevector-ieee-single-native-ref</item>
0208       <item>bytevector-ieee-single-native-set!</item>
0209       <item>bytevector-ieee-single-ref</item>
0210       <item>bytevector-ieee-single-set!</item>
0211       <item>bytevector-length</item>
0212       <item>bytevector-s16-native-ref</item>
0213       <item>bytevector-s16-native-set!</item>
0214       <item>bytevector-s16-ref</item>
0215       <item>bytevector-s16-set!</item>
0216       <item>bytevector-s32-native-ref</item>
0217       <item>bytevector-s32-native-set!</item>
0218       <item>bytevector-s32-ref</item>
0219       <item>bytevector-s32-set!</item>
0220       <item>bytevector-s64-native-ref</item>
0221       <item>bytevector-s64-native-set!</item>
0222       <item>bytevector-s64-ref</item>
0223       <item>bytevector-s64-set!</item>
0224       <item>bytevector-s8-ref</item>
0225       <item>bytevector-s8-set!</item>
0226       <item>bytevector-sint-ref</item>
0227       <item>bytevector-sint-set!</item>
0228       <item>bytevector-u16-native-ref</item>
0229       <item>bytevector-u16-native-set!</item>
0230       <item>bytevector-u16-ref</item>
0231       <item>bytevector-u16-set!</item>
0232       <item>bytevector-u32-native-ref</item>
0233       <item>bytevector-u32-native-set!</item>
0234       <item>bytevector-u32-ref</item>
0235       <item>bytevector-u32-set!</item>
0236       <item>bytevector-u64-native-ref</item>
0237       <item>bytevector-u64-native-set!</item>
0238       <item>bytevector-u64-ref</item>
0239       <item>bytevector-u64-set!</item>
0240       <item>bytevector-u8-ref</item>
0241       <item>bytevector-u8-set!</item>
0242       <item>bytevector-uint-ref</item>
0243       <item>bytevector-uint-set!</item>
0244       <item>bytevector=?</item>
0245       <item>bytevector?</item>
0246       <item>caaaar</item>
0247       <item>caaadr</item>
0248       <item>caaar</item>
0249       <item>caadar</item>
0250       <item>caaddr</item>
0251       <item>caadr</item>
0252       <item>caar</item>
0253       <item>cadaar</item>
0254       <item>cadadr</item>
0255       <item>cadar</item>
0256       <item>caddar</item>
0257       <item>cadddr</item>
0258       <item>caddr</item>
0259       <item>cadr</item>
0260       <item>call-with-bytevector-output-port</item>
0261       <item>call-with-current-continuation</item>
0262       <item>call-with-input-file</item>
0263       <item>call-with-output-file</item>
0264       <item>call-with-port</item>
0265       <item>call-with-string-output-port</item>
0266       <item>call-with-values</item>
0267       <item>call/cc</item>
0268       <item>let/cc</item>
0269       <item>car</item>
0270       <item>case-lambda</item>
0271       <item>case</item>
0272       <item>catch</item>
0273       <item>cdaaar</item>
0274       <item>cdaadr</item>
0275       <item>cdaar</item>
0276       <item>cdadar</item>
0277       <item>cdaddr</item>
0278       <item>cdadr</item>
0279       <item>cdar</item>
0280       <item>cddaar</item>
0281       <item>cddadr</item>
0282       <item>cddar</item>
0283       <item>cdddar</item>
0284       <item>cddddr</item>
0285       <item>cdddr</item>
0286       <item>cddr</item>
0287       <item>cdr</item>
0288       <item>ceiling</item>
0289       <item>char&gt;=?</item>
0290       <item>char&gt;?</item>
0291       <item>char&lt;=?</item>
0292       <item>char&lt;?</item>
0293       <item>char&lt;?c</item>
0294       <item>char-&gt;integer</item>
0295       <item>char-alphabetic?</item>
0296       <item>char-ci&gt;=?</item>
0297       <item>char-ci&gt;?</item>
0298       <item>char-ci&lt;=?</item>
0299       <item>char-ci&lt;?</item>
0300       <item>char-ci=?</item>
0301       <item>char-downcase</item>
0302       <item>char-foldcase</item>
0303       <item>char-general-category</item>
0304       <item>char-lower-case?</item>
0305       <item>char-numeric?</item>
0306       <item>char-ready?</item>
0307       <item>char-title-case?</item>
0308       <item>char-titlecase</item>
0309       <item>char-upcase</item>
0310       <item>char-upper-case?</item>
0311       <item>char-whitespace?</item>
0312       <item>char=?</item>
0313       <item>char?</item>
0314       <item>close-input-port</item>
0315       <item>close-output-port</item>
0316       <item>close-port</item>
0317       <item>complex?</item>
0318       <item>cond</item>
0319       <item>condition-accessor</item>
0320       <item>condition-irritants</item>
0321       <item>condition-message</item>
0322       <item>condition-predicate</item>
0323       <item>condition-who</item>
0324       <item>condition</item>
0325       <item>condition?</item>
0326       <item>cons*</item>
0327       <item>cons</item>
0328       <item>continue</item>
0329       <item>cos</item>
0330       <item>current-error-port</item>
0331       <item>current-input-port</item>
0332       <item>current-output-port</item>
0333       <item>datum-&gt;syntax</item>
0334       <item>define-condition-type</item>
0335       <item>define-enumeration</item>
0336       <item>define-record-type</item>
0337       <item>delete-file</item>
0338       <item>denominator</item>
0339       <item>display</item>
0340       <item>div-and-mod</item>
0341       <item>div0-and-mod0</item>
0342       <item>div0</item>
0343       <item>div</item>
0344       <item>do</item>
0345       <item>dynamic-wind</item>
0346       <item>else</item>
0347       <item>endianness</item>
0348       <item>enum-set-&gt;list</item>
0349       <item>enum-set-complement</item>
0350       <item>enum-set-constructor</item>
0351       <item>enum-set-difference</item>
0352       <item>enum-set-indexer</item>
0353       <item>enum-set-intersection</item>
0354       <item>enum-set-member?</item>
0355       <item>enum-set-projection</item>
0356       <item>enum-set-subset?</item>
0357       <item>enum-set-union</item>
0358       <item>enum-set-universe</item>
0359       <item>enum-set=?</item>
0360       <item>eof-object</item>
0361       <item>eof-object?</item>
0362       <item>eol-style</item>
0363       <item>eq?</item>
0364       <item>equal-hash</item>
0365       <item>equal?</item>
0366       <item>eqv?</item>
0367       <item>error-handling-mode</item>
0368       <item>error</item>
0369       <item>error?</item>
0370       <item>eval</item>
0371       <item>even?</item>
0372       <item>exact-&gt;inexact</item>
0373       <item>exact->inexact</item>
0374       <item>exact-integer-sqrt</item>
0375       <item>exact</item>
0376       <item>exact?</item>
0377       <item>exp</item>
0378       <item>expt</item>
0379       <item>file-exists?</item>
0380       <item>file-options</item>
0381       <item>filter</item>
0382       <item>find</item>
0383       <item>finite?</item>
0384       <item>fixnum-&gt;flonum</item>
0385       <item>fixnum-width</item>
0386       <item>fixnum?</item>
0387       <item>fl&gt;=?</item>
0388       <item>fl&gt;?</item>
0389       <item>fl&lt;=?</item>
0390       <item>fl&lt;?</item>
0391       <item>fl*</item>
0392       <item>fl+</item>
0393       <item>fl-</item>
0394       <item>fl/</item>
0395       <item>fl=?</item>
0396       <item>flabs</item>
0397       <item>flacos</item>
0398       <item>flasin</item>
0399       <item>flatan</item>
0400       <item>flceiling</item>
0401       <item>flcos</item>
0402       <item>fldenominator</item>
0403       <item>fldiv-and-mod</item>
0404       <item>fldiv0-and-mod0</item>
0405       <item>fldiv0</item>
0406       <item>fldiv</item>
0407       <item>fleven?</item>
0408       <item>flexp</item>
0409       <item>flexpt</item>
0410       <item>flfinite?</item>
0411       <item>flfloor</item>
0412       <item>flinfinite?</item>
0413       <item>flinteger?</item>
0414       <item>fllog</item>
0415       <item>flmax</item>
0416       <item>flmin</item>
0417       <item>flmod0</item>
0418       <item>flmod</item>
0419       <item>flnan?</item>
0420       <item>flnegative?</item>
0421       <item>flnumerator</item>
0422       <item>flodd?</item>
0423       <item>flonum?</item>
0424       <item>floor</item>
0425       <item>flpositive?</item>
0426       <item>flround</item>
0427       <item>flsin</item>
0428       <item>flsqrt</item>
0429       <item>fltan</item>
0430       <item>fltruncate</item>
0431       <item>flush-output-port</item>
0432       <item>flzero?</item>
0433       <item>for-each</item>
0434       <item>force</item>
0435       <item>free-identifier=?</item>
0436       <item>fx&gt;=?</item>
0437       <item>fx&gt;?</item>
0438       <item>fx&lt;=?</item>
0439       <item>fx&lt;?</item>
0440       <item>fx*/carry</item>
0441       <item>fx*</item>
0442       <item>fx+/carry</item>
0443       <item>fx+</item>
0444       <item>fx-/carry</item>
0445       <item>fx-</item>
0446       <item>fx=?</item>
0447       <item>fxand</item>
0448       <item>fxarithmetic-shift-left</item>
0449       <item>fxarithmetic-shift-right</item>
0450       <item>fxarithmetic-shift</item>
0451       <item>fxbit-count</item>
0452       <item>fxbit-field</item>
0453       <item>fxbit-set?</item>
0454       <item>fxcopy-bit-field</item>
0455       <item>fxcopy-bit</item>
0456       <item>fxdiv-and-mod</item>
0457       <item>fxdiv0-and-mod0</item>
0458       <item>fxdiv0</item>
0459       <item>fxdiv</item>
0460       <item>fxeven?</item>
0461       <item>fxfirst-bit-set</item>
0462       <item>fxif</item>
0463       <item>fxior</item>
0464       <item>fxlength</item>
0465       <item>fxmax</item>
0466       <item>fxmin</item>
0467       <item>fxmod0</item>
0468       <item>fxmod</item>
0469       <item>fxnegative?</item>
0470       <item>fxnot</item>
0471       <item>fxodd?</item>
0472       <item>fxpositive?</item>
0473       <item>fxreverse-bit-field</item>
0474       <item>fxrotate-bit-field</item>
0475       <item>fxxor</item>
0476       <item>fxzero?</item>
0477       <item>gcd</item>
0478       <item>generate-temporaries</item>
0479       <item>get-bytevector-all</item>
0480       <item>get-bytevector-n!</item>
0481       <item>get-bytevector-n</item>
0482       <item>get-bytevector-some</item>
0483       <item>get-char</item>
0484       <item>get-datum</item>
0485       <item>get-line</item>
0486       <item>get-string-all</item>
0487       <item>get-string-n!</item>
0488       <item>get-string-n</item>
0489       <item>get-u8</item>
0490       <item>greatest-fixnum</item>
0491       <item>guard</item>
0492       <item>har-ci&lt;?</item>
0493       <item>hashtable-clear!</item>
0494       <item>hashtable-contains?</item>
0495       <item>hashtable-copy</item>
0496       <item>hashtable-delete!</item>
0497       <item>hashtable-entries</item>
0498       <item>hashtable-equivalence-function</item>
0499       <item>hashtable-hash-function</item>
0500       <item>hashtable-keys</item>
0501       <item>hashtable-mutable?</item>
0502       <item>hashtable-ref</item>
0503       <item>hashtable-set!</item>
0504       <item>hashtable-size</item>
0505       <item>hashtable-update!</item>
0506       <item>hashtable?</item>
0507       <item>i/o-decoding-error?</item>
0508       <item>i/o-encoding-error-char</item>
0509       <item>i/o-encoding-error?</item>
0510       <item>i/o-error-filename</item>
0511       <item>i/o-error-port</item>
0512       <item>i/o-error-position</item>
0513       <item>i/o-error?</item>
0514       <item>i/o-file-already-exists-error?</item>
0515       <item>i/o-file-does-not-exist-error?</item>
0516       <item>i/o-file-is-read-only-error?</item>
0517       <item>i/o-file-protection-error?</item>
0518       <item>i/o-filename-error?</item>
0519       <item>i/o-invalid-position-error?</item>
0520       <item>i/o-port-error?</item>
0521       <item>i/o-read-error?</item>
0522       <item>i/o-write-error?</item>
0523       <item>identifier-syntax</item>
0524       <item>identifier?</item>
0525       <item>if</item>
0526       <item>imag-part</item>
0527       <item>implementation-restriction-violation?</item>
0528       <item>inexact-&gt;exact</item>
0529       <item>inexact</item>
0530       <item>inexact?</item>
0531       <item>infinite?</item>
0532       <item>input-port?</item>
0533       <item>integer-&gt;char</item>
0534       <item>integer-valued?</item>
0535       <item>integer?</item>
0536       <item>interaction-environment</item>
0537       <item>irritants-condition?</item>
0538       <item>lambda</item>
0539       <item>latin-1-codec</item>
0540       <item>lcm</item>
0541       <item>least-fixnum</item>
0542       <item>length</item>
0543       <item>let*-values</item>
0544       <item>let*</item>
0545       <item>let-syntax</item>
0546       <item>let-values</item>
0547       <item>let</item>
0548       <item>letrec*</item>
0549       <item>letrec-syntax</item>
0550       <item>letrec</item>
0551       <item>lexical-violation?</item>
0552       <item>list-&gt;string</item>
0553       <item>list-&gt;vector</item>
0554       <item>list-ref</item>
0555       <item>list-sort</item>
0556       <item>list-tail</item>
0557       <item>list</item>
0558       <item>list?</item>
0559       <item>load</item>
0560       <item>log</item>
0561       <item>lookahead-char</item>
0562       <item>lookahead-u8</item>
0563       <item>map</item>
0564       <item>magnitude</item>
0565       <item>make-assertion-violation</item>
0566       <item>make-bytevector</item>
0567       <item>make-custom-binary-input-port</item>
0568       <item>make-custom-binary-input/output-port</item>
0569       <item>make-custom-binary-output-port</item>
0570       <item>make-custom-textual-input-port</item>
0571       <item>make-custom-textual-input/output-port</item>
0572       <item>make-custom-textual-output-port</item>
0573       <item>make-enumeration</item>
0574       <item>make-eq-hashtable</item>
0575       <item>make-eqv-hashtable</item>
0576       <item>make-error</item>
0577       <item>make-hashtable</item>
0578       <item>make-i/o-decoding-error</item>
0579       <item>make-i/o-encoding-error</item>
0580       <item>make-i/o-error</item>
0581       <item>make-i/o-file-already-exists-error</item>
0582       <item>make-i/o-file-does-not-exist-error</item>
0583       <item>make-i/o-file-is-read-only-error</item>
0584       <item>make-i/o-file-protection-error</item>
0585       <item>make-i/o-filename-error</item>
0586       <item>make-i/o-invalid-position-error</item>
0587       <item>make-i/o-port-error</item>
0588       <item>make-i/o-read-error</item>
0589       <item>make-i/o-write-error</item>
0590       <item>make-implementation-restriction-violation</item>
0591       <item>make-irritants-condition</item>
0592       <item>make-lexical-violation</item>
0593       <item>make-message-condition</item>
0594       <item>make-no-infinities-violation</item>
0595       <item>make-no-nans-violation</item>
0596       <item>make-non-continuable-violation</item>
0597       <item>make-polar</item>
0598       <item>make-record-constructor-descriptor</item>
0599       <item>make-record-type-descriptor</item>
0600       <item>make-rectangular</item>
0601       <item>make-serious-condition</item>
0602       <item>make-string</item>
0603       <item>make-syntax-violation</item>
0604       <item>make-transcoder</item>
0605       <item>make-undefined-violation</item>
0606       <item>make-variable-transformer</item>
0607       <item>make-vector</item>
0608       <item>make-violation</item>
0609       <item>make-warning</item>
0610       <item>make-who-condition</item>
0611       <item>max</item>
0612       <item>member</item>
0613       <item>memp</item>
0614       <item>memq</item>
0615       <item>memv</item>
0616       <item>message-condition?</item>
0617       <item>min</item>
0618       <item>mod0</item>
0619       <item>mod</item>
0620       <item>modulo</item>
0621       <item>nan?</item>
0622       <item>native-endianness</item>
0623       <item>native-eol-style</item>
0624       <item>native-transcoder</item>
0625       <item>negative?</item>
0626       <item>newline</item>
0627       <item>no-infinities-violation?</item>
0628       <item>no-nans-violation?</item>
0629       <item>non-continuable-violation?</item>
0630       <item>not</item>
0631       <item>null-environment</item>
0632       <item>null?</item>
0633       <item>number-&gt;string</item>
0634       <item>number->string</item>
0635       <item>number?</item>
0636       <item>numerator</item>
0637       <item>odd?</item>
0638       <item>open-bytevector-input-port</item>
0639       <item>open-bytevector-output-port</item>
0640       <item>open-file-input-port</item>
0641       <item>open-file-input/output-port</item>
0642       <item>open-file-output-port</item>
0643       <item>open-input-file</item>
0644       <item>open-output-file</item>
0645       <item>open-string-input-port</item>
0646       <item>open-string-output-port</item>
0647       <item>or</item>
0648       <item>output-port-buffer-mode</item>
0649       <item>output-port?</item>
0650       <item>pair?</item>
0651       <item>partition</item>
0652       <item>peek-char</item>
0653       <item>port-eof?</item>
0654       <item>port-has-port-position?</item>
0655       <item>port-has-set-port-position!?</item>
0656       <item>port-position</item>
0657       <item>port-transcoder</item>
0658       <item>port?</item>
0659       <item>positive?</item>
0660       <item>procedure?</item>
0661       <item>put-bytevector</item>
0662       <item>put-char</item>
0663       <item>put-datum</item>
0664       <item>put-string</item>
0665       <item>put-u8</item>
0666       <item>quasiquote</item>
0667       <item>quasisyntax</item>
0668       <item>quote</item>
0669       <item>quotient</item>
0670       <item>raise-continuable</item>
0671       <item>raise</item>
0672       <item>rational-valued?</item>
0673       <item>rational?</item>
0674       <item>rationalize</item>
0675       <item>read-char</item>
0676       <item>read</item>
0677       <item>real-&gt;flonum</item>
0678       <item>real-part</item>
0679       <item>real-valued?</item>
0680       <item>real?</item>
0681       <item>record-accessor</item>
0682       <item>record-constructor-descriptor</item>
0683       <item>record-constructor</item>
0684       <item>record-field-mutable?</item>
0685       <item>record-mutator</item>
0686       <item>record-predicate</item>
0687       <item>record-rtd</item>
0688       <item>record-type-descriptor</item>
0689       <item>record-type-descriptor?</item>
0690       <item>record-type-field-names</item>
0691       <item>record-type-generative?</item>
0692       <item>record-type-name</item>
0693       <item>record-type-opaque?</item>
0694       <item>record-type-parent</item>
0695       <item>record-type-sealed?</item>
0696       <item>record-type-uid</item>
0697       <item>record?</item>
0698       <item>remainder</item>
0699       <item>remove</item>
0700       <item>remp</item>
0701       <item>remq</item>
0702       <item>remv</item>
0703       <item>reverse</item>
0704       <item>round</item>
0705       <item>scheme-report-environment</item>
0706       <item>serious-condition?</item>
0707       <item>set!</item>
0708       <item>set-car!</item>
0709       <item>set-cdr!</item>
0710       <item>set-port-position!</item>
0711       <item>simple-conditions</item>
0712       <item>sin</item>
0713       <item>sint-list-&gt;bytevector</item>
0714       <item>sqrt</item>
0715       <item>standard-error-port</item>
0716       <item>standard-input-port</item>
0717       <item>standard-output-port</item>
0718       <item>string&gt;=?</item>
0719       <item>string&gt;?</item>
0720       <item>string&lt;=?</item>
0721       <item>string&lt;?</item>
0722       <item>string-&gt;bytevector</item>
0723       <item>string-&gt;list</item>
0724       <item>string-&gt;number</item>
0725       <item>string-&gt;symbol</item>
0726       <item>string-&gt;utf16</item>
0727       <item>string-&gt;utf32</item>
0728       <item>string-&gt;utf8</item>
0729       <item>string-append</item>
0730       <item>string-ci&gt;=?</item>
0731       <item>string-ci&gt;?</item>
0732       <item>string-ci&lt;=?</item>
0733       <item>string-ci&lt;?</item>
0734       <item>string-ci-hash</item>
0735       <item>string-ci=?</item>
0736       <item>string-copy</item>
0737       <item>string-downcase</item>
0738       <item>string-fill!</item>
0739       <item>string-foldcase</item>
0740       <item>string-hash</item>
0741       <item>string-length</item>
0742       <item>string-normalize-nfc</item>
0743       <item>string-normalize-nfd</item>
0744       <item>string-normalize-nfkc</item>
0745       <item>string-normalize-nfkd</item>
0746       <item>string-ref</item>
0747       <item>string-set!</item>
0748       <item>string-titlecase</item>
0749       <item>string-upcase</item>
0750       <item>string</item>
0751       <item>string=?</item>
0752       <item>string?</item>
0753       <item>struct</item>
0754       <item>substring</item>
0755       <item>symbol-&gt;string</item>
0756       <item>symbol-hash</item>
0757       <item>symbol=?</item>
0758       <item>symbol?</item>
0759       <item>syntax-&gt;datum</item>
0760       <item>syntax-case</item>
0761       <item>syntax-rules</item>
0762       <item>syntax-violation-form</item>
0763       <item>syntax-violation-subform</item>
0764       <item>syntax-violation</item>
0765       <item>syntax-violation?</item>
0766       <item>syntax</item>
0767       <item>tan</item>
0768       <item>textual-port?</item>
0769       <item>transcoded-port</item>
0770       <item>transcoder-codec</item>
0771       <item>transcoder-eol-style</item>
0772       <item>transcoder-error-handling-mode</item>
0773       <item>transcript-off</item>
0774       <item>transcript-on</item>
0775       <item>truncate</item>
0776       <item>u8-list-&gt;bytevector</item>
0777       <item>uint-list-&gt;bytevector</item>
0778       <item>undefined-violation?</item>
0779       <item>unquote-splicing</item>
0780       <item>unquote</item>
0781       <item>unsyntax-splicing</item>
0782       <item>unsyntax</item>
0783       <item>utf-16-codec</item>
0784       <item>utf-8-codec</item>
0785       <item>utf16-&gt;string</item>
0786       <item>utf32-&gt;string</item>
0787       <item>utf8-&gt;string</item>
0788       <item>values</item>
0789       <item>vector-&gt;list</item>
0790       <item>vector-&gt;listlist->vector</item>
0791       <item>vector-fill!</item>
0792       <item>vector-length</item>
0793       <item>vector-ref</item>
0794       <item>vector-set!</item>
0795       <item>vector-sort!</item>
0796       <item>vector-sort</item>
0797       <item>vector</item>
0798       <item>vector?</item>
0799       <item>violation?</item>
0800       <item>warning?</item>
0801       <item>while</item>
0802       <item>who-condition?</item>
0803       <item>with-exception-handler</item>
0804       <item>with-input-from-file</item>
0805       <item>with-output-to-file</item>
0806       <item>with-syntax</item>
0807       <item>write-char</item>
0808       <item>write</item>
0809       <item>zero?</item>
0810     </list>
0811     <contexts>
0812 
0813 
0814       <context name="Default" attribute="Normal" lineEndContext="#stay">
0815         <DetectSpaces/>
0816 
0817         <!-- "#lang x" line -->
0818         <RegExpr attribute="Comment" String="^#lang.*" context="#stay" column="0"/>
0819         <DetectChar attribute="Comment" context="hash" char="#" lookAhead="1"/>
0820         <DetectChar attribute="Comment" context="semicolon" char=";" lookAhead="1"/>
0821         <DetectChar attribute="String" context="String" char="&quot;"/>
0822         <Detect2Chars attribute="String" context="Template" char="&amp;" char1="{"/>
0823         <AnyChar attribute="Brackets" context="#stay" String="(){}[]"/>
0824         <keyword attribute="Keyword" context="#stay" String="keywords"/>
0825         <keyword attribute="Definition" context="function_decl" String="defines"/>
0826         <keyword attribute="Operator" context="#stay" String="operators"/>
0827         <RegExpr attribute="Normal" context="#stay" String="&symbol;"/>
0828         <!-- s, f, d, l are extensions of Kawa -->
0829         <RegExpr attribute="Float" context="#stay" String="[0-9]*+\.[0-9]++([esfdl][+-]?[0-9]++)?|[0-9]++[esfdl][+-]?[0-9]++"/>
0830         <RegExpr attribute="Decimal" context="#stay" String="[0-9]++"/>
0831       </context>
0832 
0833 
0834       <context name="Template" attribute="String" lineEndContext="#stay">
0835         <DetectSpaces/>
0836         <DetectIdentifier/>
0837         <DetectChar attribute="String" context="#pop" char="}"/>
0838         <DetectChar attribute="String" context="Template" char="{"/>
0839         <DetectChar attribute="Char" context="TemplateTemplate" char="&amp;" lookAhead="1"/>
0840       </context>
0841       <context name="TemplateTemplate" attribute="String" lineEndContext="#pop">
0842         <Detect2Chars attribute="Operator" context="#stay" char="&amp;" char1="|" firstNonSpace="1"/>
0843         <Detect2Chars attribute="Operator" context="#pop!NotNewlineTemplate" char="&amp;" char1="-"/>
0844         <Detect2Chars attribute="Extension" context="#pop!FormatTemplate" char="&amp;" char1="~"/>
0845         <StringDetect attribute="Comment" context="#pop!MultiLineComment" String="&amp;#|" beginRegion="comment"/>
0846         <RegExpr attribute="Char" context="#pop!EndCharTemplate" String="(&amp;(?:#(?:[0-9]+|x[0-9a-fA-F]+)|[_a-zA-Z][-:_a-zA-Z0-9]*))" lookAhead="1"/>
0847         <DetectChar attribute="String" context="#pop" char="&amp;"/>
0848       </context>
0849       <context name="FormatTemplate" attribute="Extension" lineEndContext="#pop" fallthroughContext="#pop">
0850         <AnyChar attribute="Extension" context="#pop" String="({["/>
0851         <AnyChar attribute="Extension" context="FormatTemplate" String=")}]"/>
0852         <RegExpr attribute="Extension" context="#pop" String="[^(){}\[\]]+"/>
0853       </context>
0854       <context name="NotNewlineTemplate" attribute="String" lineEndContext="#pop" fallthroughContext="#pop">
0855         <DetectSpaces/>
0856         <Detect2Chars attribute="Comment" context="#pop!MultiLineComment" char="#" char1="|" beginRegion="comment"/>
0857       </context>
0858       <context name="EndCharTemplate" attribute="Comment" lineEndContext="#stay">
0859         <StringDetect attribute="Char" context="#pop" String="%1;" dynamic="1"/>
0860         <StringDetect attribute="Error" context="#pop" String="%1" dynamic="1"/>
0861       </context>
0862 
0863 
0864       <context name="semicolon" attribute="Comment" lineEndContext="#stay" fallthroughContext="#pop!comment">
0865         <RegExpr attribute="Region Marker" context="#pop" String=";+\s*BEGIN\b.*" beginRegion="region"/>
0866         <RegExpr attribute="Region Marker" context="#pop" String=";+\s*END\b.*" endRegion="region"/>
0867       </context>
0868       <context name="comment" attribute="Comment" lineEndContext="#pop">
0869         <DetectSpaces/>
0870         <IncludeRules context="##Comments"/>
0871         <DetectIdentifier/>
0872       </context>
0873 
0874       <context name="hash" attribute="Normal" lineEndContext="#stay">
0875         <Detect2Chars attribute="Decimal" context="#pop" char="#" char1="t"/>
0876         <Detect2Chars attribute="Decimal" context="#pop" char="#" char1="T"/>
0877         <Detect2Chars attribute="Decimal" context="#pop" char="#" char1="f"/>
0878         <Detect2Chars attribute="Decimal" context="#pop" char="#" char1="F"/>
0879         <Detect2Chars attribute="Base Prefix" context="#pop!Num16" char="#" char1="x"/>
0880         <Detect2Chars attribute="Base Prefix" context="#pop!Num8" char="#" char1="o"/>
0881         <Detect2Chars attribute="Base Prefix" context="#pop!Num2" char="#" char1="b"/>
0882         <Detect2Chars attribute="Base Prefix" context="#pop!Num10" char="#" char1="e"/>
0883         <Detect2Chars attribute="Base Prefix" context="#pop!Num10" char="#" char1="i"/>
0884         <Detect2Chars attribute="Base Prefix" context="#pop!Num10" char="#" char1="d"/>
0885         <Detect2Chars attribute="Char" context="#pop!Char" char="#" char1="\"/>
0886         <Detect2Chars attribute="Comment" context="#pop!DatumComment" char="#" char1=";"/>
0887         <Detect2Chars attribute="Comment" context="#pop!MultiLineComment" char="#" char1="|" beginRegion="comment"/>
0888         <Detect2Chars attribute="Comment" context="#pop!MultiLineGuileCommentOrExtension" char="#" char1="!" lookAhead="1"/>
0889 
0890         <!-- Kawa extension -->
0891         <Detect2Chars attribute="Operator" context="#pop!Regex" char="#" char1="/"/>
0892         <Detect2Chars attribute="XML Tag" context="#pop!XML" char="#" char1="&lt;" lookAhead="1"/>
0893 
0894         <DetectChar attribute="Normal" context="#pop" char="#"/>
0895       </context>
0896 
0897 
0898       <context name="XML" attribute="XML Tag" lineEndContext="#pop">
0899         <StringDetect attribute="XML Tag" context="#pop!XMLProc" String="#&lt;?"/>
0900         <StringDetect attribute="XML Comment" context="#pop!XMLComment" String="#&lt;!--"/>
0901         <StringDetect attribute="XML Tag" context="#pop!XMLCDATA" String="#&lt;![CDATA["/>
0902         <StringDetect attribute="XML Tag" context="#pop!XMLTagExpr1" String="#&lt;("/>
0903         <StringDetect attribute="XML Tag" context="#pop!XMLTagExpr2" String="#&lt;{"/>
0904         <RegExpr attribute="XML Tag" context="#pop!XMLTag" String="#&lt;[^\s>]++"/>
0905         <Detect2Chars attribute="Error" context="#pop" char="#" char1="&lt;"/>
0906       </context>
0907 
0908       <context name="XMLTagExpr1" attribute="Normal" lineEndContext="#stay">
0909         <DetectChar attribute="XML Tag" context="#pop!XMLTag" char=")"/>
0910         <IncludeRules context="Default"/>
0911       </context>
0912       <context name="XMLTagExpr2" attribute="Normal" lineEndContext="#stay">
0913         <DetectChar attribute="XML Tag" context="#pop!XMLTag" char="}"/>
0914         <IncludeRules context="Default"/>
0915       </context>
0916 
0917       <context name="XMLTag" attribute="XML Attribute" lineEndContext="#stay">
0918         <DetectSpaces/>
0919         <Detect2Chars attribute="XML Tag" context="#pop" char="/" char1=">"/>
0920         <DetectChar attribute="XML Tag" context="#pop!XMLInnerTag" char=">"/>
0921         <RegExpr attribute="XML Attribute" context="XMLAttribute" String="[^\s=/>]++\s*"/>
0922       </context>
0923       <context name="XMLInnerTag" attribute="XML Tag" lineEndContext="#stay">
0924         <DetectSpaces/>
0925         <DetectIdentifier/>
0926         <DetectChar attribute="XML String" context="XMLEscape" char="&amp;" lookAhead="1"/>
0927         <DetectChar attribute="XML Tag" context="XMLFindXML" char="&lt;" lookAhead="1"/>
0928       </context>
0929       <context name="XMLFindXML" attribute="String" lineEndContext="#stay">
0930         <Detect2Chars attribute="XML Tag" context="#pop!XMLProc" char="&lt;" char1="?"/>
0931         <Detect2Chars attribute="XML Tag" context="#pop!XMLTagExpr1" char="&lt;" char1="("/>
0932         <Detect2Chars attribute="XML Tag" context="#pop!XMLTagExpr2" char="&lt;" char1="{"/>
0933         <StringDetect attribute="XML Comment" context="#pop!XMLComment" String="&lt;!--"/>
0934         <StringDetect attribute="XML Tag" context="#pop!XMLCDATA" String="&lt;![CDATA["/>
0935         <Detect2Chars attribute="XML Tag" context="#pop!XMLCloseTag" char="&lt;" char1="/" lookAhead="1"/>
0936         <RegExpr attribute="XML Tag" context="#pop!XMLTag" String="&lt;[^\s>]++"/>
0937         <DetectChar attribute="XML Error" context="#pop" char="&lt;"/>
0938       </context>
0939       <context name="XMLCloseTag" attribute="String" lineEndContext="#pop#pop">
0940         <RegExpr attribute="XML Tag" context="#pop#pop" String="&lt;/[^\s>]*>"/>
0941         <Detect2Chars attribute="XML Error" context="#pop#pop" char="&lt;" char1="/"/>
0942       </context>
0943 
0944       <context name="XMLAttribute" attribute="XML Attribute" lineEndContext="#stay" fallthroughContext="#pop">
0945         <DetectSpaces/>
0946         <DetectChar attribute="XML Attribute" context="XMLAttributeValue" char="="/>
0947       </context>
0948       <context name="XMLAttributeValue" attribute="XML Attribute" lineEndContext="#stay" fallthroughContext="#pop#pop">
0949         <DetectSpaces/>
0950         <DetectChar attribute="XML String" context="XMLDQ" char="&quot;"/>
0951         <DetectChar attribute="XML String" context="XMLSQ" char="'"/>
0952       </context>
0953       <context name="XMLDQ" attribute="XML String" lineEndContext="#stay">
0954         <DetectSpaces/>
0955         <DetectIdentifier/>
0956         <DetectChar attribute="XML String" context="#pop#pop#pop" char="&quot;"/>
0957         <IncludeRules context="XMLStringEscape"/>
0958       </context>
0959       <context name="XMLSQ" attribute="XML String" lineEndContext="#stay">
0960         <DetectSpaces/>
0961         <DetectIdentifier/>
0962         <DetectChar attribute="XML String" context="#pop#pop#pop" char="'"/>
0963         <IncludeRules context="XMLStringEscape"/>
0964       </context>
0965       <context name="XMLStringEscape" attribute="XML String" lineEndContext="#stay">
0966         <DetectChar attribute="XML String" context="XMLEscape" char="&amp;" lookAhead="1"/>
0967         <DetectChar attribute="XML Error" context="#stay" char="&lt;"/>
0968       </context>
0969       <context name="XMLEscape" attribute="XML String" lineEndContext="#stay">
0970         <RegExpr attribute="XML Entity" context="#pop" String="&amp;(?:lt|gt|amp|quot|apos|#[0-9]+|x[0-9a-fA-F]+);"/>
0971         <DetectChar attribute="XML Error" context="#pop" char="&amp;"/>
0972       </context>
0973       <context name="XMLProc" attribute="XML Attribute" lineEndContext="#stay" fallthroughContext="XMLProcAttrs">
0974         <RegExpr attribute="XML Tag" context="XMLProcAttrs" String="[^\s?]+"/>
0975       </context>
0976       <context name="XMLProcAttrs" attribute="XML Attribute" lineEndContext="#stay">
0977         <Detect2Chars attribute="XML Tag" context="#pop#pop" char="?" char1=">"/>
0978       </context>
0979 
0980       <context name="XMLComment" attribute="XML Comment" lineEndContext="#stay">
0981         <DetectSpaces/>
0982         <DetectIdentifier/>
0983         <Detect2Chars attribute="XML Comment" context="XMLCommentCheck" char="-" char1="-" lookAhead="1"/>
0984       </context>
0985       <context name="XMLCommentCheck" attribute="Comment" lineEndContext="#stay">
0986         <StringDetect attribute="XML Tag" context="#pop#pop" String="-->"/>
0987         <Detect2Chars attribute="XML Error" context="#pop" char="-" char1="-"/>
0988       </context>
0989 
0990       <context name="XMLCDATA" attribute="XML CDATA" lineEndContext="#stay">
0991         <DetectSpaces/>
0992         <DetectIdentifier/>
0993         <StringDetect attribute="XML Tag" context="#pop" String="]]>"/>
0994       </context>
0995 
0996 
0997       <context name="Regex" attribute="Extension" lineEndContext="#pop" fallthroughContext="#pop">
0998         <RegExpr attribute="Extension" context="RegexEnd" String="&regex;"/>
0999       </context>
1000       <context name="RegexEnd" attribute="Extension" lineEndContext="#pop#pop" fallthroughContext="#pop#pop">
1001         <DetectChar attribute="Operator" context="RegexModifier" char="/"/>
1002       </context>
1003       <context name="RegexModifier" attribute="Extension" lineEndContext="#pop#pop#pop" fallthroughContext="#pop#pop#pop">
1004         <AnyChar attribute="Extension" context="#stay" String="ism"/>
1005       </context>
1006 
1007 
1008       <context name="Num2" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop!Digit2">
1009         <IncludeRules context="NumPrefix"/>
1010         <AnyChar attribute="Function" context="#pop!Digit2" String="+-"/>
1011       </context>
1012       <context name="Digit2" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop">
1013         <AnyChar attribute="Decimal" context="#stay" String="01"/>
1014       </context>
1015 
1016       <context name="Num8" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop!Digit8">
1017         <IncludeRules context="NumPrefix"/>
1018         <AnyChar attribute="Function" context="#pop!Digit8" String="+-"/>
1019       </context>
1020       <context name="Digit8" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop">
1021         <AnyChar attribute="Decimal" context="#stay" String="01234567"/>
1022       </context>
1023 
1024       <context name="Num10" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop!Digit10">
1025         <IncludeRules context="NumPrefix"/>
1026         <AnyChar attribute="Function" context="#pop!Digit10" String="+-"/>
1027       </context>
1028       <context name="Digit10" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop">
1029         <!-- s, f, d, l are extensions of Kawa -->
1030         <RegExpr attribute="Float" context="#pop" String="[0-9]*+\.[0-9]++([esfdl][+-]?[0-9]++)?|[0-9]++[esfdl][+-]?[0-9]++"/>
1031         <RegExpr attribute="Decimal" context="#pop" String="[0-9]++"/>
1032       </context>
1033 
1034       <context name="Num16" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop!Digit16">
1035         <IncludeRules context="NumPrefix"/>
1036         <AnyChar attribute="Function" context="#pop!Digit16" String="+-"/>
1037       </context>
1038       <context name="Digit16" attribute="Decimal" lineEndContext="#pop" fallthroughContext="#pop">
1039         <RegExpr attribute="Decimal" context="#pop" String="[0-9a-fA-F]+"/>
1040       </context>
1041 
1042       <context name="NumPrefix" attribute="Decimal" lineEndContext="#pop">
1043         <Detect2Chars attribute="Decimal" context="#stay" char="#" char1="e"/>
1044         <Detect2Chars attribute="Decimal" context="#stay" char="#" char1="i"/>
1045       </context>
1046 
1047 
1048       <context name="Char" attribute="Char" lineEndContext="#pop">
1049         <DetectChar attribute="Char" context="HexChar" char="x"/>
1050         <keyword attribute="Char" context="#pop" String="characters" insensitive="1"/>
1051         <RegExpr attribute="Char" context="#pop" String=".(?!\w)"/>
1052         <RegExpr attribute="Error" context="#pop" String="\w+|."/>
1053       </context>
1054       <context name="HexChar" attribute="Char" lineEndContext="#pop#pop">
1055         <RegExpr attribute="Char" context="#pop#pop" String="[0-9a-fA-F]+"/>
1056       </context>
1057 
1058 
1059       <context name="MultiLineGuileCommentOrExtension" attribute="Comment" lineEndContext="#stay">
1060         <RegExpr attribute="Extension" context="#pop" String="#!\w+"/>
1061         <Detect2Chars attribute="Comment" context="#pop!MultiLineGuileComment" char="#" char1="!" beginRegion="comment"/>
1062       </context>
1063 
1064       <context name="MultiLineGuileComment" attribute="Comment" lineEndContext="#stay" fallthroughContext="comment">
1065         <RegExpr attribute="Comment" context="#pop" String="^!#\s*$" endRegion="comment" column="0"/>
1066       </context>
1067 
1068       <context name="MultiLineComment" attribute="Comment" lineEndContext="#stay">
1069         <DetectSpaces/>
1070         <Detect2Chars attribute="Comment" context="#pop" char="|" char1="#" endRegion="comment"/>
1071         <Detect2Chars attribute="Comment" context="MultiLineComment" char="#" char1="|" beginRegion="comment"/>
1072         <IncludeRules context="##Comments"/>
1073         <DetectIdentifier/>
1074       </context>
1075 
1076 
1077       <context name="DatumComment" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1078         <DetectChar attribute="Comment" context="#pop!DatumCommentParent" char="(" beginRegion="comment"/>
1079         <DetectChar attribute="Comment" context="#pop!DatumCommentBracket" char="[" beginRegion="comment"/>
1080         <DetectChar attribute="Comment" context="#pop!DatumCommentBrace" char="{" beginRegion="comment"/>
1081         <DetectChar attribute="Comment" context="#pop!DatumCommentString" char="&quot;"/>
1082 
1083         <DetectChar attribute="Comment" context="#pop!DatumCommentHash" char="#"/>
1084 
1085         <RegExpr attribute="Comment" context="#pop!DatumCommentExpr" String="[^{}\[\]()\s]+"/>
1086       </context>
1087       <context name="DatumCommentHash" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1088         <DetectChar attribute="Comment" context="#pop!DatumCommentRegex" char="/"/>
1089         <DetectChar attribute="Comment" context="#pop!DatumCommentXML" char="&lt;"/>
1090         <Detect2Chars attribute="Comment" context="#pop!DatumCommentTemplate" char="&amp;" char1="{"/>
1091         <DetectIdentifier/>
1092       </context>
1093 
1094       <context name="DatumCommentTemplate" attribute="Comment" lineEndContext="#stay">
1095         <DetectSpaces/>
1096         <DetectIdentifier/>
1097         <DetectChar attribute="Comment" context="#pop" char="}"/>
1098         <DetectChar attribute="Comment" context="DatumCommentTemplate" char="{"/>
1099         <DetectChar attribute="Comment" context="DatumCommentTemplateTemplate" char="&amp;"/>
1100       </context>
1101       <context name="DatumCommentTemplateTemplate" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1102         <DetectChar attribute="Comment" context="#pop!DatumCommentParent2" char="("/>
1103         <DetectChar attribute="Comment" context="#pop!DatumCommentBracket2" char="["/>
1104         <Detect2Chars attribute="Comment" context="#pop!MultiLineComment" char="#" char1="|"/>
1105         <DetectChar attribute="Comment" context="#pop!DatumCommentFormatTemplate" char="~"/>
1106         <RegExpr attribute="Comment" context="#pop" String="&amp;(?:#(?:[0-9]+|x[0-9a-fA-F]+)|[_a-zA-Z][-:_a-zA-Z0-9]*);?"/>
1107       </context>
1108       <context name="DatumCommentFormatTemplate" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1109         <AnyChar attribute="Comment" context="#pop" String="({["/>
1110         <AnyChar attribute="Comment" context="DatumCommentFormatTemplate" String=")}]"/>
1111         <RegExpr attribute="Comment" context="#pop" String="[^(){}\[\]]+"/>
1112       </context>
1113 
1114       <context name="DatumCommentRegex" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1115         <RegExpr attribute="Comment" context="DatumCommentRegexEnd" String="&regex;"/>
1116       </context>
1117       <context name="DatumCommentRegexEnd" attribute="Comment" lineEndContext="#pop#pop" fallthroughContext="#pop#pop">
1118         <DetectChar attribute="Comment" context="DatumCommentRegexModifier" char="/"/>
1119       </context>
1120       <context name="DatumCommentRegexModifier" attribute="Comment" lineEndContext="#pop#pop#pop" fallthroughContext="#pop#pop#pop">
1121         <AnyChar attribute="Comment" context="#stay" String="ism"/>
1122       </context>
1123 
1124       <context name="DatumCommentXML" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1125         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLProc" char="?"/>
1126         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLTagExpr1" char="("/>
1127         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLTagExpr2" char="{"/>
1128         <Detect2Chars attribute="Comment" context="#pop" char="/" char1=">"/>
1129         <StringDetect attribute="Comment" context="#pop!DatumCommentXMLComment" String="!--"/>
1130         <StringDetect attribute="Comment" context="#pop!DatumCommentXMLCDATA" String="![CDATA["/>
1131         <RegExpr attribute="Comment" context="#pop!DatumCommentXMLTag" String="[^\s>]++\s*"/>
1132       </context>
1133 
1134       <context name="DatumCommentXMLProc" attribute="Comment" lineEndContext="#stay">
1135         <Detect2Chars attribute="Comment" context="#pop" char="?" char1=">"/>
1136       </context>
1137       <context name="DatumCommentXMLCDATA" attribute="Comment" lineEndContext="#stay">
1138         <StringDetect attribute="Comment" context="#pop" String="]]>"/>
1139       </context>
1140       <context name="DatumCommentXMLComment" attribute="Comment" lineEndContext="#stay">
1141         <StringDetect attribute="Comment" context="#pop" String="-->"/>
1142       </context>
1143       <context name="DatumCommentXMLTagExpr1" attribute="Comment" lineEndContext="#stay">
1144         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLTag" char=")"/>
1145         <IncludeRules context="DatumCommentInExpr"/>
1146       </context>
1147       <context name="DatumCommentXMLTagExpr2" attribute="Comment" lineEndContext="#stay">
1148         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLTag" char="}"/>
1149         <IncludeRules context="DatumCommentInExpr"/>
1150       </context>
1151 
1152       <context name="DatumCommentXMLTag" attribute="Comment" lineEndContext="#stay">
1153         <DetectSpaces/>
1154         <Detect2Chars attribute="Comment" context="#pop" char="/" char1=">"/>
1155         <DetectChar attribute="Comment" context="#pop!DatumCommentXMLInnerTag" char=">"/>
1156         <RegExpr attribute="Comment" context="DatumCommentXMLAttribute" String="[^\s=/>]++\s*"/>
1157       </context>
1158       <context name="DatumCommentXMLInnerTag" attribute="Comment" lineEndContext="#stay">
1159         <DetectSpaces/>
1160         <DetectIdentifier/>
1161         <DetectChar attribute="Comment" context="DatumCommentXMLEscape" char="&amp;" lookAhead="1"/>
1162         <DetectChar attribute="Comment" context="DatumCommentXMLFindXML" char="&lt;" lookAhead="1"/>
1163       </context>
1164       <context name="DatumCommentXMLFindXML" attribute="Comment" lineEndContext="#stay">
1165         <Detect2Chars attribute="Comment" context="#pop!DatumCommentXMLProc" char="&lt;" char1="?"/>
1166         <Detect2Chars attribute="Comment" context="#pop!DatumCommentXMLTagExpr1" char="&lt;" char1="("/>
1167         <Detect2Chars attribute="Comment" context="#pop!DatumCommentXMLTagExpr2" char="&lt;" char1="{"/>
1168         <StringDetect attribute="Comment" context="#pop!DatumCommentXMLComment" String="&lt;!--"/>
1169         <StringDetect attribute="Comment" context="#pop!DatumCommentXMLCDATA" String="&lt;![CDATA["/>
1170         <Detect2Chars attribute="Comment" context="#pop!DatumCommentXMLCloseTag" char="&lt;" char1="/" lookAhead="1"/>
1171         <RegExpr attribute="Comment" context="#pop!DatumCommentXMLTag" String="&lt;[^\s>]++"/>
1172         <DetectChar attribute="Comment" context="#pop" char="&lt;"/>
1173       </context>
1174       <context name="DatumCommentXMLCloseTag" attribute="Comment" lineEndContext="#pop#pop">
1175         <RegExpr attribute="Comment" context="#pop#pop" String="&lt;/[^\s>]*>"/>
1176         <Detect2Chars attribute="XML Error" context="#pop#pop" char="&lt;" char1="/"/>
1177       </context>
1178 
1179       <context name="DatumCommentXMLAttribute" attribute="Comment" lineEndContext="#stay" fallthroughContext="#pop">
1180         <DetectSpaces/>
1181         <DetectChar attribute="Comment" context="DatumCommentXMLAttributeValue" char="="/>
1182       </context>
1183       <context name="DatumCommentXMLAttributeValue" attribute="Comment" lineEndContext="#stay" fallthroughContext="#pop#pop">
1184         <DetectSpaces/>
1185         <DetectChar attribute="Comment" context="DatumCommentXMLDQ" char="&quot;"/>
1186         <DetectChar attribute="Comment" context="DatumCommentXMLSQ" char="'"/>
1187       </context>
1188       <context name="DatumCommentXMLDQ" attribute="Comment" lineEndContext="#stay">
1189         <DetectSpaces/>
1190         <DetectIdentifier/>
1191         <DetectChar attribute="Comment" context="#pop#pop#pop" char="&quot;"/>
1192         <IncludeRules context="DatumCommentXMLStringEscape"/>
1193       </context>
1194       <context name="DatumCommentXMLSQ" attribute="Comment" lineEndContext="#stay">
1195         <DetectSpaces/>
1196         <DetectIdentifier/>
1197         <DetectChar attribute="Comment" context="#pop#pop#pop" char="'"/>
1198         <IncludeRules context="DatumCommentXMLStringEscape"/>
1199       </context>
1200       <context name="DatumCommentXMLStringEscape" attribute="Comment" lineEndContext="#stay">
1201         <DetectChar attribute="Comment" context="DatumCommentXMLEscape" char="&amp;" lookAhead="1"/>
1202         <DetectChar attribute="XML Error" context="#stay" char="&lt;"/>
1203       </context>
1204 
1205       <context name="DatumCommentXMLEscape" attribute="Comment" lineEndContext="#stay">
1206         <Detect2Chars attribute="Comment" context="#pop!DatumCommentParent2" char="&amp;" char1="("/>
1207         <Detect2Chars attribute="Comment" context="#pop!DatumCommentBrace2" char="&amp;" char1="{"/>
1208         <RegExpr attribute="Comment" context="#pop" String="&amp;(?:lt|gt|amp|quot|apos|#[0-9]+|x[0-9a-fA-F]+);"/>
1209         <DetectChar attribute="XML Error" context="#pop" char="&amp;"/>
1210       </context>
1211 
1212       <context name="DatumCommentExpr" attribute="Comment" lineEndContext="#pop" fallthroughContext="#pop">
1213         <DetectChar attribute="Comment" context="#pop!DatumCommentParent2" char="("/>
1214         <DetectChar attribute="Comment" context="#pop!DatumCommentBrace2" char="{"/>
1215         <DetectChar attribute="Comment" context="#pop!DatumCommentBracket2" char="["/>
1216       </context>
1217 
1218       <context name="DatumCommentString" attribute="Comment" lineEndContext="#stay">
1219         <DetectChar attribute="Comment" context="#pop" char="&quot;"/>
1220         <RegExpr attribute="Comment" context="#stay" String="(?:[^\\&quot;]++|\\.)++"/>
1221       </context>
1222 
1223       <context name="DatumCommentParent" attribute="Comment" lineEndContext="#stay">
1224         <DetectChar attribute="Comment" context="#pop" char=")" endRegion="comment"/>
1225         <IncludeRules context="DatumCommentInExpr"/>
1226       </context>
1227       <context name="DatumCommentParent2" attribute="Comment" lineEndContext="#stay">
1228         <DetectChar attribute="Comment" context="#pop" char=")"/>
1229         <IncludeRules context="DatumCommentInExpr"/>
1230       </context>
1231       <context name="DatumCommentBracket" attribute="Comment" lineEndContext="#stay">
1232         <DetectChar attribute="Comment" context="#pop" char="]" endRegion="comment"/>
1233         <IncludeRules context="DatumCommentInExpr"/>
1234       </context>
1235       <context name="DatumCommentBracket2" attribute="Comment" lineEndContext="#stay">
1236         <DetectChar attribute="Comment" context="#pop" char="]"/>
1237         <IncludeRules context="DatumCommentInExpr"/>
1238       </context>
1239       <context name="DatumCommentBrace" attribute="Comment" lineEndContext="#stay">
1240         <DetectChar attribute="Comment" context="#pop" char="}" endRegion="comment"/>
1241         <IncludeRules context="DatumCommentInExpr"/>
1242       </context>
1243       <context name="DatumCommentBrace2" attribute="Comment" lineEndContext="#stay">
1244         <DetectChar attribute="Comment" context="#pop" char="}"/>
1245         <IncludeRules context="DatumCommentInExpr"/>
1246       </context>
1247 
1248       <context name="DatumCommentInExpr" attribute="Comment" lineEndContext="#stay">
1249         <DetectSpaces/>
1250         <DetectIdentifier/>
1251         <DetectChar attribute="Comment" context="DatumCommentParent2" char="("/>
1252         <DetectChar attribute="Comment" context="DatumCommentBrace2" char="{"/>
1253         <DetectChar attribute="Comment" context="DatumCommentBracket2" char="["/>
1254         <DetectChar attribute="Comment" context="DatumCommentString" char="&quot;"/>
1255         <DetectChar attribute="Comment" context="DatumCommentHash" char="#"/>
1256       </context>
1257 
1258 
1259       <context name="String" attribute="String" lineEndContext="#stay">
1260         <DetectChar attribute="String" context="#pop" char="&quot;"/>
1261         <DetectChar attribute="Char" context="EscapeString" char="\"/>
1262       </context>
1263       <context name="EscapeString" attribute="Char" lineEndContext="#pop" fallthroughContext="#pop">
1264         <AnyChar attribute="Char" context="#pop" String="abfnrtv&quot;\"/>
1265         <AnyChar attribute="Char" context="MultiLineString" String="&tab; "/>
1266         <RegExpr attribute="Char" context="#pop" String="[xXu][0-9a-fA-F]+;|\\[0-7]{3}|(?:[MC]-|\^)?."/>
1267       </context>
1268       <context name="MultiLineString" attribute="String" lineEndContext="#stay" fallthroughContext="#pop#pop">
1269         <DetectSpaces/>
1270       </context>
1271 
1272       <context name="function_decl" attribute="Function" lineEndContext="#stay">
1273         <RegExpr attribute="Function" context="#pop" String="\s*[A-Za-z0-9-!$%&quot;*/:&lt;=>?~_^+.@]*\s*"/>
1274       </context>
1275     </contexts>
1276     <itemDatas>
1277       <itemData name="Normal"      defStyleNum="dsNormal"/>
1278       <itemData name="Keyword"     defStyleNum="dsKeyword" spellChecking="0"/>
1279       <itemData name="Definition"  defStyleNum="dsExtension" spellChecking="0"/>
1280       <itemData name="Operator"    defStyleNum="dsOperator" spellChecking="0"/>
1281       <itemData name="Function"    defStyleNum="dsFunction" spellChecking="0"/>
1282       <itemData name="Base Prefix" defStyleNum="dsSpecialChar" spellChecking="0"/>
1283       <itemData name="Decimal"     defStyleNum="dsDecVal" spellChecking="0"/>
1284       <itemData name="Float"       defStyleNum="dsFloat" spellChecking="0"/>
1285       <itemData name="Char"        defStyleNum="dsChar" spellChecking="0"/>
1286       <itemData name="String"      defStyleNum="dsString"/>
1287       <itemData name="Comment"     defStyleNum="dsComment"/>
1288       <itemData name="Error"       defStyleNum="dsError" spellChecking="0"/>
1289       <itemData name="Extension"   defStyleNum="dsExtension" spellChecking="0"/>
1290       <itemData name="Region Marker" defStyleNum="dsRegionMarker"/>
1291       <itemData name="XML Tag"     defStyleNum="dsString" spellChecking="0"/>
1292       <itemData name="XML Comment" defStyleNum="dsComment"/>
1293       <itemData name="XML CDATA"   defStyleNum="dsString"/>
1294       <itemData name="XML Attribute" defStyleNum="dsOthers" spellChecking="0"/>
1295       <itemData name="XML String"  defStyleNum="dsString"/>
1296       <itemData name="XML Error"   defStyleNum="dsError" spellChecking="0"/>
1297       <itemData name="XML Entity"  defStyleNum="dsDecVal" spellChecking="0"/>
1298       <itemData name="Brackets" defStyleNum="dsOperator" spellChecking="0"/>
1299     </itemDatas>
1300   </highlighting>
1301   <general>
1302     <keywords casesensitive="1" weakDeliminator="-+*?!&lt;&gt;=/:.,\&amp;" additionalDeliminator="&quot;;#"/>
1303     <comments>
1304       <comment name="singleLine" start=";;"/>
1305       <comment name="multiLine" start="#|" end="|#" region="comment"/>
1306     </comments>
1307   </general>
1308 </language>
1309 <!-- kate: replace-tabs on; tab-width 2; indent-width 2; -->