diff options
Diffstat (limited to 'kate/data/scheme.xml')
-rw-r--r-- | kate/data/scheme.xml | 436 |
1 files changed, 436 insertions, 0 deletions
diff --git a/kate/data/scheme.xml b/kate/data/scheme.xml new file mode 100644 index 000000000..027989b90 --- /dev/null +++ b/kate/data/scheme.xml @@ -0,0 +1,436 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<!-- + This file is part of KDE's kate project. + + copyright : (C) 2004-2005 by Dominik Haumann + email : dhdev at gmx dot de + + + copyright : (C) 2004 by Goffart Olivier + email : ogoffart @ kde.org + (brackets coloration) + + + ********************************************************************** + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Library General Public * + * License as published by the Free Software Foundation; either * + * version 2 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Library General Public License for more details. * + * * + * You should have received a copy of the GNU Library General Public * + * License along with this library; if not, write to the * + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * + * Boston, MA 02110-1301, USA. * + ********************************************************************** + NOTE: + This file defines highlighting rules for both Scheme AND Guile. + Scheme usually has no block comments. Guile has block comments: #! !# + I support these block comments: "Good design means good compromises" :) + Singleline comments are introduced through ';'. In reality EVERY + scheme/guile developer use ';;'. It is indented in emacs in a special way. + That's why I set <comment singleLine=";;">. + + As a guile guru tole me it would not make sense to highlight all scheme and + guile procedures (cause then almost everything would be highlighted) I + removed some to have a rather small but "senseful" list of highlighted words. +--> +<language version="1.12" kateversion="2.4" name="Scheme" section="Scripts" extensions="*.scm;*.ss;*.scheme;*.guile" mimetype="text/x-scheme" author="Dominik Haumann (dhdev@gmx.de)" license="LGPL"> + <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="Data" defStyleNum="dsDataType"/> + <itemData name="Decimal" defStyleNum="dsDecVal"/> + <itemData name="BaseN" defStyleNum="dsBaseN"/> + <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> |