You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
395 lines
14 KiB
395 lines
14 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE language SYSTEM "language.dtd">
|
|
<language version="5" kateversion="2.4" name="Scheme" section="Scripts" extensions="*.scm;*.ss;*.scheme;*.guile" mimetype="text/x-scheme" author="Dominik Haumann (dhaumann@kde.org)" license="MIT" priority="9">
|
|
<highlighting>
|
|
<list name="operators">
|
|
<item><=</item>
|
|
<item><</item>
|
|
<item>=</item>
|
|
<item>=></item>
|
|
<item>>=</item>
|
|
<item>></item>
|
|
<item>-</item>
|
|
<item>/</item>
|
|
<item>*,*</item>
|
|
<item>*)</item>
|
|
<item>+</item>
|
|
</list>
|
|
<list name="characters">
|
|
<item>#\nul</item>
|
|
<item>#\soh</item>
|
|
<item>#\stx</item>
|
|
<item>#\etx</item>
|
|
<item>#\eot</item>
|
|
<item>#\enq</item>
|
|
<item>#\ack</item>
|
|
<item>#\bel</item>
|
|
<item>#\bs</item>
|
|
<item>#\ht</item>
|
|
<item>#\nl</item>
|
|
<item>#\vt</item>
|
|
<item>#\np</item>
|
|
<item>#\cr</item>
|
|
<item>#\so</item>
|
|
<item>#\si</item>
|
|
<item>#\dle</item>
|
|
<item>#\dc1</item>
|
|
<item>#\dc2</item>
|
|
<item>#\dc3</item>
|
|
<item>#\dc4</item>
|
|
<item>#\nak</item>
|
|
<item>#\syn</item>
|
|
<item>#\etb</item>
|
|
<item>#\can</item>
|
|
<item>#\em</item>
|
|
<item>#\sub</item>
|
|
<item>#\esc</item>
|
|
<item>#\fs</item>
|
|
<item>#\gs</item>
|
|
<item>#\rs</item>
|
|
<item>#\us</item>
|
|
<item>#\space</item>
|
|
<item>#\sp</item>
|
|
<item>#\newline</item>
|
|
<item>#\nl</item>
|
|
<item>#\tab</item>
|
|
<item>#\ht</item>
|
|
<item>#\backspace</item>
|
|
<item>#\bs</item>
|
|
<item>#\return</item>
|
|
<item>#\cr</item>
|
|
<item>#\page</item>
|
|
<item>#\np</item>
|
|
<item>#\null</item>
|
|
<item>#\nul</item>
|
|
</list>
|
|
<list name="defines">
|
|
<item>define</item>
|
|
<item>define*</item>
|
|
<item>define-accessor</item>
|
|
<item>define-class</item>
|
|
<item>defined?</item>
|
|
<item>define-generic</item>
|
|
<item>define-macro</item>
|
|
<item>define-method</item>
|
|
<item>define-module</item>
|
|
<item>define-private</item>
|
|
<item>define-public</item>
|
|
<item>define*-public</item>
|
|
<item>define-reader-ctor</item>
|
|
<item>define-syntax</item>
|
|
<item>define-syntax-macro</item>
|
|
<item>defmacro</item>
|
|
<item>defmacro*</item>
|
|
<item>defmacro*-public</item>
|
|
</list>
|
|
<list name="keywords">
|
|
<item>abs</item>
|
|
<item>acos</item>
|
|
<item>and</item>
|
|
<item>angle</item>
|
|
<item>append</item>
|
|
<item>applymap</item>
|
|
<item>asin</item>
|
|
<item>assoc</item>
|
|
<item>assq</item>
|
|
<item>assv</item>
|
|
<item>atan</item>
|
|
<item>begin</item>
|
|
<item>boolean?</item>
|
|
<item>break</item>
|
|
<item>caaaar</item>
|
|
<item>caaadr</item>
|
|
<item>caaar</item>
|
|
<item>caadar</item>
|
|
<item>caaddr</item>
|
|
<item>caadr</item>
|
|
<item>caar</item>
|
|
<item>cadaar</item>
|
|
<item>cadadr</item>
|
|
<item>cadar</item>
|
|
<item>caddar</item>
|
|
<item>cadddr</item>
|
|
<item>caddr</item>
|
|
<item>cadr</item>
|
|
<item>call/cc</item>
|
|
<item>call-with-current-continuation</item>
|
|
<item>call-with-input-file</item>
|
|
<item>call-with-output-file</item>
|
|
<item>call-with-values</item>
|
|
<item>car</item>
|
|
<item>case</item>
|
|
<item>catch</item>
|
|
<item>cdaaar</item>
|
|
<item>cdaadr</item>
|
|
<item>cdaar</item>
|
|
<item>cdadar</item>
|
|
<item>cdaddr</item>
|
|
<item>cdadr</item>
|
|
<item>cdar</item>
|
|
<item>cddaar</item>
|
|
<item>cddadr</item>
|
|
<item>cddar</item>
|
|
<item>cdddar</item>
|
|
<item>cddddr</item>
|
|
<item>cdddr</item>
|
|
<item>cddr</item>
|
|
<item>cdr</item>
|
|
<item>ceiling</item>
|
|
<item>char-alphabetic?</item>
|
|
<item>char-ci>=?</item>
|
|
<item>char-ci>?</item>
|
|
<item>char-ci=?</item>
|
|
<item>char-ci<=?</item>
|
|
<item>char-downcase</item>
|
|
<item>char->integer</item>
|
|
<item>char>=?</item>
|
|
<item>char>?</item>
|
|
<item>char=?</item>
|
|
<item>char?</item>
|
|
<item>char-lower-case?</item>
|
|
<item>char<?c</item>
|
|
<item>char<=?</item>
|
|
<item>char-numeric?</item>
|
|
<item>char-ready?</item>
|
|
<item>char-upcase</item>
|
|
<item>char-upper-case?</item>
|
|
<item>char-whitespace?</item>
|
|
<item>close-input-port</item>
|
|
<item>close-output-port</item>
|
|
<item>complex?</item>
|
|
<item>cond</item>
|
|
<item>cons</item>
|
|
<item>continue</item>
|
|
<item>cos</item>
|
|
<item>current-input-port</item>
|
|
<item>current-output-port</item>
|
|
<item>denominator</item>
|
|
<item>display</item>
|
|
<item>do</item>
|
|
<item>dynamic-wind</item>
|
|
<item>else</item>
|
|
<item>eof-object?</item>
|
|
<item>eq?</item>
|
|
<item>equal?</item>
|
|
<item>eqv?</item>
|
|
<item>eval</item>
|
|
<item>even?</item>
|
|
<item>exact->inexact</item>
|
|
<item>exact?</item>
|
|
<item>exp</item>
|
|
<item>expt</item>
|
|
<item>floor</item>
|
|
<item>force</item>
|
|
<item>for-each</item>
|
|
<item>gcd</item>
|
|
<item>har-ci<?</item>
|
|
<item>if</item>
|
|
<item>imag-part</item>
|
|
<item>inexact->exact</item>
|
|
<item>inexact?</item>
|
|
<item>input-port?</item>
|
|
<item>integer->char</item>
|
|
<item>integer?</item>
|
|
<item>interaction-environment</item>
|
|
<item>lambda</item>
|
|
<item>lcm</item>
|
|
<item>length</item>
|
|
<item>let</item>
|
|
<item>let*</item>
|
|
<item>letrec</item>
|
|
<item>letrec-syntax</item>
|
|
<item>let-syntax</item>
|
|
<item>list->string</item>
|
|
<item>list</item>
|
|
<item>list?</item>
|
|
<item>list-ref</item>
|
|
<item>list-tail</item>
|
|
<item>load</item>
|
|
<item>log</item>
|
|
<item>magnitude</item>
|
|
<item>make-polar</item>
|
|
<item>make-rectangular</item>
|
|
<item>make-string</item>
|
|
<item>make-vector</item>
|
|
<item>max</item>
|
|
<item>member</item>
|
|
<item>memq</item>
|
|
<item>memv</item>
|
|
<item>min</item>
|
|
<item>modulo</item>
|
|
<item>negative?</item>
|
|
<item>newline</item>
|
|
<item>not</item>
|
|
<item>null-environment</item>
|
|
<item>null?</item>
|
|
<item>number?</item>
|
|
<item>number->string</item>
|
|
<item>numerator</item>
|
|
<item>odd?</item>
|
|
<item>open-input-file</item>
|
|
<item>open-output-file</item>
|
|
<item>or</item>
|
|
<item>output-port?</item>
|
|
<item>pair?</item>
|
|
<item>peek-char</item>
|
|
<item>port?</item>
|
|
<item>positive?</item>
|
|
<item>procedure?</item>
|
|
<item>quotient</item>
|
|
<item>rational?</item>
|
|
<item>rationalize</item>
|
|
<item>read-char</item>
|
|
<item>read</item>
|
|
<item>real?</item>
|
|
<item>real-part</item>
|
|
<item>remainder</item>
|
|
<item>reverse</item>
|
|
<item>round</item>
|
|
<item>scheme-report-environment</item>
|
|
<item>set-car!</item>
|
|
<item>set-cdr!</item>
|
|
<item>sin</item>
|
|
<item>sqrt</item>
|
|
<item>string-append</item>
|
|
<item>string-ci>=?</item>
|
|
<item>string-ci>?</item>
|
|
<item>string-ci=?</item>
|
|
<item>string-ci<=?</item>
|
|
<item>string-ci<?</item>
|
|
<item>string-copy</item>
|
|
<item>string-fill!</item>
|
|
<item>string>=?</item>
|
|
<item>string>?</item>
|
|
<item>string->list</item>
|
|
<item>string->number</item>
|
|
<item>string->symbol</item>
|
|
<item>string=?</item>
|
|
<item>string</item>
|
|
<item>string?</item>
|
|
<item>string-length</item>
|
|
<item>string<=?</item>
|
|
<item>string<?</item>
|
|
<item>string-ref</item>
|
|
<item>string-set!</item>
|
|
<item>substring</item>
|
|
<item>symbol->string</item>
|
|
<item>symbol?</item>
|
|
<item>syntax-rules</item>
|
|
<item>tan</item>
|
|
<item>transcript-off</item>
|
|
<item>transcript-on</item>
|
|
<item>truncate</item>
|
|
<item>values</item>
|
|
<item>vector-fill!</item>
|
|
<item>vector->listlist->vector</item>
|
|
<item>vector</item>
|
|
<item>vector?</item>
|
|
<item>vector-length</item>
|
|
<item>vector-ref</item>
|
|
<item>vector-set!</item>
|
|
<item>while</item>
|
|
<item>with-input-from-file</item>
|
|
<item>with-output-to-file</item>
|
|
<item>write-char</item>
|
|
<item>write</item>
|
|
<item>zero?</item>
|
|
</list>
|
|
<contexts>
|
|
<context name="Level0" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets1" context="Level1" char="("/>
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Default" attribute="Normal" lineEndContext="#stay">
|
|
<RegExpr attribute="Region Marker" context="#stay" String=";+\s*BEGIN.*$" beginRegion="region"/>
|
|
<RegExpr attribute="Region Marker" context="#stay" String=";+\s*END.*$" endRegion="region"/>
|
|
<RegExpr attribute="Comment" context="#stay" String=";.*$"/>
|
|
<Detect2Chars attribute="Comment" context="MultiLineComment" char="#" char1="!" beginRegion="region"/>
|
|
<keyword attribute="Keyword" context="#stay" String="keywords"/>
|
|
<keyword attribute="Operator" context="#stay" String="operators"/>
|
|
<keyword attribute="Definition" context="function_decl" String="defines"/>
|
|
<keyword attribute="Char" context="#stay" String="characters"/>
|
|
<RegExpr attribute="Char" context="#stay" String="#\\."/>
|
|
<DetectChar attribute="String" context="String" char="""/>
|
|
<RegExpr attribute="Char" context="SpecialNumber" String="#[bodxei]"/>
|
|
<RegExpr attribute="Decimal" context="#stay" String="#[tf]"/>
|
|
<Float attribute="Float" context="#stay"/>
|
|
<Int attribute="Decimal" context="#stay"/>
|
|
<DetectChar attribute="Brackets1" context="Level1" char="("/>
|
|
</context>
|
|
<context name="MultiLineComment" attribute="Comment" lineEndContext="#stay">
|
|
<RegExpr attribute="Comment" context="#pop" String="!#\s*$" endRegion="region" column="0"/>
|
|
</context>
|
|
<context name="SpecialNumber" attribute="Normal" fallthrough="true" lineEndContext="#pop">
|
|
<RegExpr attribute="Decimal" context="#pop" String="\d*(\.\d+)?"/>
|
|
</context>
|
|
<context name="String" attribute="String" lineEndContext="#stay">
|
|
<keyword attribute="Char" context="#stay" String="characters"/>
|
|
<RegExpr attribute="Char" context="#stay" String="#\\."/>
|
|
<Detect2Chars attribute="Char" context="#stay" char="\" char1="""/>
|
|
<Detect2Chars attribute="Char" context="#stay" char="\" char1="\"/>
|
|
<DetectChar attribute="String" context="#pop" char="""/>
|
|
</context>
|
|
<context name="function_decl" attribute="Function" lineEndContext="#stay">
|
|
<RegExpr attribute="Function" context="#pop" String="\s*[A-Za-z0-9-+\<\>//\*]*\s*" />
|
|
</context>
|
|
<context name="Level1" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets2" context="Level2" char="("/>
|
|
<DetectChar attribute="Brackets1" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Level2" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets3" context="Level3" char="("/>
|
|
<DetectChar attribute="Brackets2" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Level3" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets4" context="Level4" char="("/>
|
|
<DetectChar attribute="Brackets3" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Level4" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets5" context="Level5" char="("/>
|
|
<DetectChar attribute="Brackets4" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Level5" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets6" context="Level6" char="("/>
|
|
<DetectChar attribute="Brackets5" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
<context name="Level6" attribute="Normal" lineEndContext="#stay">
|
|
<DetectChar attribute="Brackets1" context="Level1" char="("/>
|
|
<DetectChar attribute="Brackets6" context="#pop" char=")" />
|
|
<IncludeRules context="Default" />
|
|
</context>
|
|
</contexts>
|
|
<itemDatas>
|
|
<itemData name="Normal" defStyleNum="dsNormal"/>
|
|
<itemData name="Keyword" defStyleNum="dsKeyword"/>
|
|
<itemData name="Definition" defStyleNum="dsKeyword" color="#d22811"/>
|
|
<itemData name="Operator" defStyleNum="dsKeyword" color="#d22811"/>
|
|
<itemData name="Function" defStyleNum="dsFunction"/>
|
|
<itemData name="Decimal" defStyleNum="dsDecVal"/>
|
|
<itemData name="Float" defStyleNum="dsFloat"/>
|
|
<itemData name="Char" defStyleNum="dsChar"/>
|
|
<itemData name="String" defStyleNum="dsString"/>
|
|
<itemData name="Comment" defStyleNum="dsComment"/>
|
|
<itemData name="Region Marker" defStyleNum="dsRegionMarker"/>
|
|
<itemData name="Brackets1" defStyleNum="dsNormal" color="#ff0000" selColor="#000000" bold="1" italic="0"/>
|
|
<itemData name="Brackets2" defStyleNum="dsNormal" color="#ff8800" selColor="#000000" bold="1" italic="0"/>
|
|
<itemData name="Brackets3" defStyleNum="dsNormal" color="#888800" selColor="#000000" bold="1" italic="0"/>
|
|
<itemData name="Brackets4" defStyleNum="dsNormal" color="#008800" selColor="#000000" bold="1" italic="0"/>
|
|
<itemData name="Brackets5" defStyleNum="dsNormal" color="#000088" selColor="#000000" bold="1" italic="0"/>
|
|
<itemData name="Brackets6" defStyleNum="dsNormal" color="#880088" selColor="#000000" bold="1" italic="0"/>
|
|
</itemDatas>
|
|
</highlighting>
|
|
<general>
|
|
<keywords casesensitive="1" weakDeliminator="-+*?!<>=/:#\"/>
|
|
<comments>
|
|
<comment name="singleLine" start=";;" />
|
|
<comment name="multiLine" start="#!" end="!#" />
|
|
</comments>
|
|
</general>
|
|
</language>
|