summaryrefslogtreecommitdiffstats
path: root/kate
diff options
context:
space:
mode:
Diffstat (limited to 'kate')
-rw-r--r--kate/data/alert.xml2
-rw-r--r--kate/data/ansic89.xml2
-rw-r--r--kate/data/clojure.xml69
-rw-r--r--kate/data/cmake.xml2
-rw-r--r--kate/data/coffee.xml6
-rw-r--r--kate/data/commonlisp.xml2
-rw-r--r--kate/data/cpp.xml57
-rw-r--r--kate/data/ddoc.xml2
-rw-r--r--kate/data/debianchangelog.xml12
-rw-r--r--kate/data/dosbat.xml4
-rw-r--r--kate/data/dot.xml172
-rw-r--r--kate/data/doxygen.xml637
-rw-r--r--kate/data/fortran.xml2
-rw-r--r--kate/data/gettext.xml2
-rw-r--r--kate/data/go.xml60
-rw-r--r--kate/data/latex.xml15
-rw-r--r--kate/data/lua.xml6
-rw-r--r--kate/data/m4.xml2
-rw-r--r--kate/data/mason.xml6
-rw-r--r--kate/data/modelines.xml155
-rw-r--r--kate/data/objectivecpp.xml2
-rw-r--r--kate/data/perl.xml20
-rw-r--r--kate/data/pig.xml202
-rw-r--r--kate/data/prolog.xml4
-rw-r--r--kate/data/qmake.xml8
-rw-r--r--kate/data/scss.xml714
26 files changed, 1688 insertions, 477 deletions
diff --git a/kate/data/alert.xml b/kate/data/alert.xml
index f18d94dbc..3a023d72d 100644
--- a/kate/data/alert.xml
+++ b/kate/data/alert.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
copyright : (C) 2004 by Dominik Haumann
email : dhdev at gmx dot de
diff --git a/kate/data/ansic89.xml b/kate/data/ansic89.xml
index bcd3170b6..5bf84ca6a 100644
--- a/kate/data/ansic89.xml
+++ b/kate/data/ansic89.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
copyright : (C) 2004 by Dominik Haumann
email : dhdev at gmx dot de
diff --git a/kate/data/clojure.xml b/kate/data/clojure.xml
index dfacdd5b3..885d81b4f 100644
--- a/kate/data/clojure.xml
+++ b/kate/data/clojure.xml
@@ -22,7 +22,7 @@
* Boston, MA 02110-1301, USA. *
**********************************************************************
-->
-<language version="1.00" kateversion="2.3" name="Clojure" section="Sources" extensions="*.clj" mimetype="" author="Dominik Haumann [lisp] modified for clojure by Caspar Hasenclever" license="LGPL">
+<language version="2" kateversion="2.3" name="Clojure" section="Sources" extensions="*.clj" mimetype="" author="Dominik Haumann [lisp] modified for clojure by Caspar Hasenclever" license="LGPL">
<highlighting>
<list name="definitions">
<item> def </item>
@@ -638,6 +638,7 @@
<item> with-test </item>
<item> with-test-out </item>
<item> xml-seq </item>
+ <item> zero? </item>
</list>
<list name="variables">
<item> *1 </item>
@@ -681,20 +682,22 @@
<item> *warn-on-reflection* </item>
</list>
<contexts>
- <context name="Normal" attribute="Normal" lineEndContext="#stay">
+ <context name="Level0" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets1" context="Level1" char="("/>
+ <Detect2Chars attribute="Brackets1" context="Level1" char="#" char1="("/>
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Default" attribute="Normal" lineEndContext="#stay">
<RegExpr attribute="Comment" context="#stay" String=";.*$"/>
<Detect2Chars attribute="Comment" context="#stay" char="#" char1="_"/>
- <RegExpr attribute="Modifier" context="#stay" String=":\S+"/>
<RegExpr attribute="Modifier" context="#stay" String="[@~]\S+"/>
- <Detect2Chars attribute="Brackets" context="#stay" char="#" char1="("/>
- <DetectChar attribute="Brackets" context="#stay" char="("/>
- <DetectChar attribute="Brackets" context="#stay" char=")"/>
+ <RegExpr attribute="Modifier2" context="#stay" String="::?[a-zA-Z0-9\-]+"/>
<Detect2Chars attribute="Brackets" context="#stay" char="#" char1="{"/>
<Detect2Chars attribute="Brackets" context="#stay" char="^" char1="{"/>
- <DetectChar attribute="Brackets" context="#stay" char="{"/>
- <DetectChar attribute="Brackets" context="#stay" char="}"/>
- <DetectChar attribute="Brackets" context="#stay" char="["/>
- <DetectChar attribute="Brackets" context="#stay" char="]"/>
+ <DetectChar attribute="BracketsCurly" context="#stay" char="{"/>
+ <DetectChar attribute="BracketsCurly" context="#stay" char="}"/>
+ <DetectChar attribute="BracketsSquare" context="#stay" char="["/>
+ <DetectChar attribute="BracketsSquare" context="#stay" char="]"/>
<Detect2Chars attribute="Variable" context="#stay" char="#" char1="'"/>
<keyword attribute="Keyword" context="#stay" String="keywords"/>
<keyword attribute="Variable" context="#stay" String="variables"/>
@@ -704,6 +707,7 @@
<DetectChar attribute="String" context="String" char="&quot;"/>
<Float attribute="Float" context="#stay"/>
<Int attribute="Decimal" context="#stay"/>
+ <DetectChar attribute="Brackets1" context="Level1" char="("/>
</context>
<context name="function_decl" attribute="Function" lineEndContext="#stay">
<RegExpr attribute="Function" context="#pop" String="\s*[A-Za-z0-9-+\&lt;\&gt;//\*]*\s*"/>
@@ -719,12 +723,49 @@
<HlCStringChar attribute="String Char" context="#stay"/>
<DetectChar attribute="String" context="#pop" char="&quot;"/>
</context>
+ <context name="Level1" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets2" context="Level2" char="("/>
+ <Detect2Chars attribute="Brackets2" context="Level2" char="#" char1="("/>
+ <DetectChar attribute="Brackets1" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Level2" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets3" context="Level3" char="("/>
+ <Detect2Chars attribute="Brackets3" context="Level3" char="#" char1="("/>
+ <DetectChar attribute="Brackets2" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Level3" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets4" context="Level4" char="("/>
+ <Detect2Chars attribute="Brackets4" context="Level4" char="#" char1="("/>
+ <DetectChar attribute="Brackets3" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Level4" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets5" context="Level5" char="("/>
+ <Detect2Chars attribute="Brackets5" context="Level5" char="#" char1="("/>
+ <DetectChar attribute="Brackets4" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Level5" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets6" context="Level6" char="("/>
+ <Detect2Chars attribute="Brackets6" context="Level6" char="#" char1="("/>
+ <DetectChar attribute="Brackets5" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
+ <context name="Level6" attribute="Normal" lineEndContext="#stay">
+ <DetectChar attribute="Brackets1" context="Level1" char="("/>
+ <Detect2Chars attribute="Brackets1" context="Level1" char="#" char1="("/>
+ <DetectChar attribute="Brackets6" context="#pop" char=")" />
+ <IncludeRules context="Default" />
+ </context>
</contexts>
<itemDatas>
<itemData name="Normal" defStyleNum="dsNormal"/>
<itemData name="Keyword" defStyleNum="dsKeyword"/>
<itemData name="Operator" defStyleNum="dsKeyword" color="#d22811"/>
<itemData name="Modifier" defStyleNum="dsKeyword" color="#800000"/>
+ <itemData name="Modifier2" defStyleNum="dsKeyword" color="#555555"/>
<itemData name="Variable" defStyleNum="dsKeyword" color="#b07e1f"/>
<itemData name="Definition" defStyleNum="dsKeyword" color="#d22811"/>
<itemData name="Data" defStyleNum="dsDataType"/>
@@ -737,6 +778,14 @@
<itemData name="Comment" defStyleNum="dsComment"/>
<itemData name="Region Marker" defStyleNum="dsRegionMarker"/>
<itemData name="Brackets" defStyleNum="dsNormal" color="#0000ff" selColor="#00ff00" bold="1" italic="0"/>
+ <itemData name="BracketsSquare" defStyleNum="dsNormal" color="#3333ff" selColor="#3333aa"/>
+ <itemData name="BracketsCurly" defStyleNum="dsNormal" color="#206620" selColor="#219921"/>
+ <itemData name="Brackets1" defStyleNum="dsNormal" color="#ff0000" selColor="#ffaa00" bold="0" italic="0"/>
+ <itemData name="Brackets2" defStyleNum="dsNormal" color="#ff8800" selColor="#ffff00" bold="0" italic="0"/>
+ <itemData name="Brackets3" defStyleNum="dsNormal" color="#888800" selColor="#888888" bold="0" italic="0"/>
+ <itemData name="Brackets4" defStyleNum="dsNormal" color="#008800" selColor="#000000" bold="0" italic="0"/>
+ <itemData name="Brackets5" defStyleNum="dsNormal" color="#000088" selColor="#000000" bold="0" italic="0"/>
+ <itemData name="Brackets6" defStyleNum="dsNormal" color="#880088" selColor="#000000" bold="0" italic="0"/>
</itemDatas>
</highlighting>
<general>
diff --git a/kate/data/cmake.xml b/kate/data/cmake.xml
index 9201933a0..600caf3df 100644
--- a/kate/data/cmake.xml
+++ b/kate/data/cmake.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
Copyright 2004 Alexander Neundorf (neundorf@kde.org)
Copyright 2005 Dominik Haumann (dhdev@gmx.de)
diff --git a/kate/data/coffee.xml b/kate/data/coffee.xml
index b56386a7a..1401946e7 100644
--- a/kate/data/coffee.xml
+++ b/kate/data/coffee.xml
@@ -2,7 +2,7 @@
<!DOCTYPE language SYSTEM "language.dtd">
<language name="CoffeeScript"
- version="1.2"
+ version="1.3"
kateversion="2.4"
section="Scripts"
extensions="Cakefile;*.coffee;*.coco"
@@ -154,11 +154,11 @@
<keyword attribute="Browser Globals" context="#stay" String="browser_globals"/>
<keyword attribute="Node.js Globals" context="#stay" String="nodejs_globals"/>
<!-- Member accessors. -->
- <RegExpr attribute="Accessor" context="#stay" String="(@[_$a-zA-Z][$\w]+|\bthis)\b" insensitive="false"/>
+ <RegExpr attribute="Accessor" context="#stay" String="(@[_$a-zA-Z][$\w]*|\bthis)\b" insensitive="false"/>
<!-- Function definitions. Matches an optional argument list followed by a function arrow (normal or fat). -->
<RegExpr attribute="Function" context="#stay" String="(\((\'[^']*'|&quot;[^&quot;]*&quot;|[^()])*\))?\s*(-|=)&gt;" insensitive="true"/>
<!-- Generic identifiers. -->
- <RegExpr attribute="Identifier" context="#stay" String="[_$a-z][$\w]+\b" insensitive="true"/>
+ <RegExpr attribute="Identifier" context="#stay" String="[_$a-z][$\w]*\b" insensitive="true"/>
<!-- Strings. -->
<StringDetect attribute="String" context="Heredoc" String="'''" beginRegion="Heredoc"/>
<StringDetect attribute="String" context="Rich Heredoc" String="&quot;&quot;&quot;" beginRegion="Rich Heredoc"/>
diff --git a/kate/data/commonlisp.xml b/kate/data/commonlisp.xml
index 563e56002..f183f956b 100644
--- a/kate/data/commonlisp.xml
+++ b/kate/data/commonlisp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
copyright : (C) 2004 by Dominik Haumann
email : dhdev at gmx dot de
diff --git a/kate/data/cpp.xml b/kate/data/cpp.xml
index e1ba132d3..50b6991d6 100644
--- a/kate/data/cpp.xml
+++ b/kate/data/cpp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="C++" section="Sources"
- version="1.49" kateversion="2.4"
+ version="1.55" kateversion="2.4"
indenter="cstyle"
mimetype="text/x-c++src;text/x-c++hdr;text/x-chdr"
extensions="*.c++;*.cxx;*.cpp;*.cc;*.C;*.h;*.hh;*.H;*.h++;*.hxx;*.hpp;*.hcc;*.moc"
@@ -34,6 +34,7 @@
<item> export </item>
<item> extern </item>
<item> false </item>
+ <item> final </item>
<item> friend </item>
<item> for </item>
<item> goto </item>
@@ -41,8 +42,10 @@
<item> inline </item>
<item> namespace </item>
<item> new </item>
+ <item> noexcept </item>
<item> nullptr </item>
<item> operator </item>
+ <item> override </item>
<item> private </item>
<item> protected </item>
<item> public </item>
@@ -87,7 +90,7 @@
<item> Q_ARG </item>
<item> Q_ASSERT </item>
<item> Q_ASSERT_X </item>
- <item> TQ_CHECK_PTR </item>
+ <item> Q_CHECK_PTR </item>
<item> Q_CLASSINFO </item>
<item> Q_CLEANUP_RESOURCE </item>
<item> Q_D </item>
@@ -100,7 +103,8 @@
<item> Q_DECLARE_PUBLIC </item>
<item> Q_DECLARE_SHARED </item>
<item> Q_DECLARE_TYPEINFO </item>
- <item> TQ_DISABLE_COPY </item>
+ <item> Q_DISABLE_COPY </item>
+ <item> Q_EMIT </item>
<item> Q_ENUMS </item>
<item> Q_EXPORT </item>
<item> Q_FLAGS </item>
@@ -114,7 +118,6 @@
<item> Q_INVOKABLE </item>
<item> Q_NOREPLY </item>
<item> Q_OBJECT </item>
- <item> TQ_OBJECT </item>
<item> Q_OVERRIDE </item>
<item> Q_PRIVATE_SLOT </item>
<item> Q_PROPERTY </item>
@@ -129,6 +132,51 @@
<item> SLOT </item>
<item> TRUE </item>
<item> FALSE </item>
+ <item> TQ_ARG </item>
+ <item> TQ_ASSERT </item>
+ <item> TQ_ASSERT_X </item>
+ <item> TQ_CHECK_PTR </item>
+ <item> TQ_CLASSINFO </item>
+ <item> TQ_CLEANUP_RESOURCE </item>
+ <item> TQ_D </item>
+ <item> TQ_DECLARE_FLAGS </item>
+ <item> TQ_DECLARE_INTERFACE </item>
+ <item> TQ_DECLARE_METATYPE </item>
+ <item> TQ_DECLARE_OPERATORS_FOR_FLAGS </item>
+ <item> TQ_DECLARE_PRIVATE </item>
+ <item> TQ_DECLARE_PUBLIC </item>
+ <item> TQ_DECLARE_SHARED </item>
+ <item> TQ_DECLARE_TYPEINFO </item>
+ <item> TQ_DISABLE_COPY </item>
+ <item> TQ_EMIT </item>
+ <item> TQ_ENUMS </item>
+ <item> TQ_EXPORT </item>
+ <item> TQ_FLAGS </item>
+ <item> TQ_FOREACH </item>
+ <item> TQ_FOREVER </item>
+ <item> TQ_GADGET </item>
+ <item> TQ_GLOBAL_STATIC </item>
+ <item> TQ_GLOBAL_STATIC_WITH_ARGS </item>
+ <item> TQ_INIT_RESOURCE </item>
+ <item> TQ_INTERFACES </item>
+ <item> TQ_INVOKABLE </item>
+ <item> TQ_NOREPLY </item>
+ <item> TQ_OBJECT </item>
+ <item> TQ_OVERRIDE </item>
+ <item> TQ_PRIVATE_SLOT </item>
+ <item> TQ_PROPERTY </item>
+ <item> TQ_Q </item>
+ <item> TQ_RETURN_ARG </item>
+ <item> TQ_SCRIPTABLE </item>
+ <item> TQ_SETS </item>
+ <item> TQ_SIGNAL </item>
+ <item> TQ_SIGNALS </item>
+ <item> TQ_SLOT </item>
+ <item> TQ_SLOTS </item>
+ <item> TQ_UNUSED </item>
+ <item> TQT_SIGNAL </item>
+ <item> TQT_SLOT </item>
+ <item> TQT_TQOBJECT </item>
<item> connect </item>
<item> disconnect </item>
<item> emit </item>
@@ -136,7 +184,6 @@
<item> slots </item>
<item> foreach </item>
<item> forever </item>
- <item> tqt_dynamic_cast</item>
<item> qint8 </item>
<item> qint16 </item>
diff --git a/kate/data/ddoc.xml b/kate/data/ddoc.xml
index 4e9fbe2b8..b826fec6a 100644
--- a/kate/data/ddoc.xml
+++ b/kate/data/ddoc.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
Copyright 2007-2008 Kate project.
diff --git a/kate/data/debianchangelog.xml b/kate/data/debianchangelog.xml
index bfa265ddf..63808d74b 100644
--- a/kate/data/debianchangelog.xml
+++ b/kate/data/debianchangelog.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language name="Debian Changelog" version="0.65" kateversion="2.4" section="Other" extensions="" mimetype="">
+<language name="Debian Changelog" version="0.66" kateversion="2.4" section="Other" extensions="" mimetype="">
<highlighting>
<list name="keywords">
<item>urgency</item>
@@ -92,6 +92,16 @@
<item>natty-proposed</item>
<item>natty-updates</item>
<item>natty-backports</item>
+ <item>oneiric</item>
+ <item>oneiric-security</item>
+ <item>oneiric-proposed</item>
+ <item>oneiric-updates</item>
+ <item>oneiric-backports</item>
+ <item>precise</item>
+ <item>precise-security</item>
+ <item>precise-proposed</item>
+ <item>precise-updates</item>
+ <item>precise-backports</item>
</list>
<list name="urgencies">
diff --git a/kate/data/dosbat.xml b/kate/data/dosbat.xml
index c99a11a1b..d85bcbc55 100644
--- a/kate/data/dosbat.xml
+++ b/kate/data/dosbat.xml
@@ -8,7 +8,7 @@
<!ENTITY eop "(?=([\s\\;&quot;&#37;]|$))"> <!-- end of path -->
<!ENTITY pathpart "[^\s\\&#37;;/:\*\?&quot;&gt;&lt;\|]"> <!-- valid character in a file name -->
]>
-<language name="MS-DOS Batch" version="0.2" kateversion="2.4" section="Scripts" extensions="*.bat" mimetype="application/x-dos" casesensitive="0" author="Matthew Woehlke (mw_triad@users.sourceforge.net)" license="LGPL">
+<language name="MS-DOS Batch" version="0.30" kateversion="2.4" section="Scripts" extensions="*.bat" mimetype="application/x-dos" casesensitive="0" author="Matthew Woehlke (mw_triad@users.sourceforge.net)" license="LGPL">
<!-- (c) 2006, 2009, 2010 Matthew Woehlke (mw_triad@users.sourceforge.net)
Released under the LGPL -->
@@ -109,7 +109,7 @@
<!-- special built-ins -->
<RegExpr attribute="Builtin" context="#stay" String="\b[Ee][Cc][Hh][Oo]\s+[Oo]([Ff][Ff]|[Nn])\s*$"/>
<keyword attribute="Builtin" context="CmdEcho" String="echo"/>
- <keyword attribute="Keyword" context="CmdIf" String="if"/>
+ <keyword attribute="Keyword" context="#stay" String="if"/>
<keyword attribute="Keyword" context="CmdFor" String="for"/>
<keyword attribute="Keyword" context="Label" String="goto"/>
<keyword attribute="Builtin" context="CmdSet" String="set"/>
diff --git a/kate/data/dot.xml b/kate/data/dot.xml
new file mode 100644
index 000000000..5b0e66389
--- /dev/null
+++ b/kate/data/dot.xml
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<!-- Adapted from the VIM highlighter, by Markus Mottl (markus@oefai.at) -->
+<language name="dot" version="1.1" kateversion="2.4" section="Scientific" extensions="*.dot" mimetype="text/x-dot" author="Postula Loïs (lois.postula@live.be)" priority="0">
+
+ <highlighting>
+
+ <list name="keywords">
+ <item> digraph </item>
+ <item> node </item>
+ <item> edge </item>
+ <item> subgraph </item>
+ </list>
+
+ <list name="attributes">
+ <!-- Graph attributes -->
+ <item> center </item>
+ <item> layers </item>
+ <item> margin </item>
+ <item> mclimit </item>
+ <item> name </item>
+ <item> nodesep </item>
+ <item> nslimit </item>
+ <item> ordering </item>
+ <item> page </item>
+ <item> pagedir </item>
+ <item> rank </item>
+ <item> rankdir </item>
+ <item> ranksep </item>
+ <item> ratio </item>
+ <item> rotate </item>
+ <item> size </item>
+ <!-- Node attributes -->
+ <item> distortion </item>
+ <item> fillcolor </item>
+ <item> fontcolor </item>
+ <item> fontname </item>
+ <item> fontsize </item>
+ <item> height </item>
+ <item> layer </item>
+ <item> orientation </item>
+ <item> peripheries </item>
+ <item> regular </item>
+ <item> shape </item>
+ <item> shapefile </item>
+ <item> sides </item>
+ <item> skew </item>
+ <item> width</item>
+ <!-- Edge attributes -->
+ <item> arrowhead </item>
+ <item> arrowsize </item>
+ <item> arrowtail </item>
+ <item> constraint </item>
+ <item> decorateP </item>
+ <item> dir </item>
+ <item> headclip </item>
+ <item> headlabel </item>
+ <item> labelangle </item>
+ <item> labeldistance </item>
+ <item> labelfontcolor </item>
+ <item> labelfontname </item>
+ <item> labelfontsize </item>
+ <item> minlen </item>
+ <item> port_label_distance </item>
+ <item> samehead </item>
+ <item> sametail </item>
+ <item> tailclip </item>
+ <item> taillabel </item>
+ <item> weight </item>
+ <!-- Shared attributes (graphs, nodes, edges) -->
+ <item> color </item>
+ <!-- Shared attributes (graphs and edges) -->
+ <item> bgcolor </item>
+ <item> label </item>
+ <item> URL </item>
+ <!-- Shared attributes (nodes and edges) -->
+ <item> fontcolor </item>
+ <item> fontname </item>
+ <item> fontsize </item>
+ <item> layer </item>
+ <item> style </item>
+ </list>
+
+ <contexts>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
+ <IncludeRules context="DetectAll"/>
+ </context>
+
+ <!-- detector contexts -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="DetectAll">
+ <keyword attribute="Keyword" context="#stay" String="keywords"/>
+ <keyword attribute="Attribute" context="#stay" String="attributes"/>
+ <DetectChar attribute="String" context="String" char="&quot;"/>
+ <AnyChar attribute="Symbol" context="#stay" String=";="/>
+ <Detect2Chars attribute="Symbol" context="#stay" char="-" char1="&gt;"/>
+ <Float attribute="Number" context="#stay"/>
+ <Int attribute="Number" context="#stay"/>
+ <RegExpr attribute="Identifier" context="#stay" String="\b\w+\b"/>
+ <IncludeRules context="DetectComments"/>
+ <DetectChar attribute="Symbol" context="RegionCurly" char="{" beginRegion="curly"/>
+ <DetectChar attribute="Symbol" context="RegionSquare" char="[" beginRegion="square"/>
+ <DetectChar attribute="Symbol" context="RegionParen" char="(" beginRegion="paren"/>
+ <AnyChar attribute="Error" context="#stay" String=")]}"/>
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="DetectComments">
+ <Detect2Chars attribute="Comment" context="CommentSL" char="/" char1="/"/>
+ <Detect2Chars attribute="Comment" context="CommentML" char="/" char1="*" beginRegion="Comment"/>
+ </context>
+
+ <!-- region contexts -->
+ <context attribute="Comment" lineEndContext="#stay" name="RegionCurly">
+ <DetectChar attribute="Symbol" context="#pop" char="}" endRegion="curly"/>
+ <IncludeRules context="DetectAll"/>
+ </context>
+
+ <context attribute="Comment" lineEndContext="#stay" name="RegionSquare">
+ <DetectChar attribute="Symbol" context="#pop" char="]" endRegion="square"/>
+ <IncludeRules context="DetectAll"/>
+ </context>
+
+ <context attribute="Comment" lineEndContext="#stay" name="RegionParen">
+ <DetectChar attribute="Symbol" context="#pop" char=")" endRegion="paren"/>
+ <IncludeRules context="DetectAll"/>
+ </context>
+
+ <!-- other contexts -->
+ <context attribute="String" lineEndContext="#pop" name="String">
+ <Detect2Chars attribute="String Char" context="#stay" char="\\" char1="\\"/>
+ <Detect2Chars attribute="String Char" context="#stay" char="\\" char1="&quot;"/>
+ <DetectChar attribute="String" context="#pop" char="&quot;"/>
+ </context>
+
+ <context attribute="Comment" lineEndContext="#pop" name="CommentSL">
+ <IncludeRules context="##Alerts"/>
+ </context>
+
+ <context attribute="Comment" lineEndContext="#stay" name="CommentML">
+ <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/>
+ <IncludeRules context="##Alerts"/>
+ </context>
+
+ </contexts>
+
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal"/>
+ <itemData name="Keyword" defStyleNum="dsKeyword"/>
+ <itemData name="Attribute" defStyleNum="dsDataType"/>
+ <itemData name="Symbol" defStyleNum="dsOthers"/>
+ <itemData name="Number" defStyleNum="dsDecVal"/>
+ <itemData name="Identifier" defStyleNum="dsFunction"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="String Char" defStyleNum="dsChar"/>
+ <itemData name="Comment" defStyleNum="dsComment"/>
+ <itemData name="Error" defStyleNum="dsError"/>
+ </itemDatas>
+
+ </highlighting>
+
+ <general>
+
+ <comments>
+ <comment name="singleLine" start="//"/>
+ <comment name="multiLine" start="/*" end="*/"/>
+ </comments>
+
+ <keywords casesensitive="1"/>
+
+ </general>
+
+</language>
diff --git a/kate/data/doxygen.xml b/kate/data/doxygen.xml
index bb3818b33..37b95877c 100644
--- a/kate/data/doxygen.xml
+++ b/kate/data/doxygen.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd"
[
- <!ENTITY wordsep "([][,?;()]|\.$|\.?\s)"> <!-- things that end a TagWord -->
+ <!ENTITY wordsep "([][,?;()]|\.$|\.?\s)"> <!-- things that end a TagWord -->
]>
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
Copyright 2004 Dominik Haumann (dhdev@gmx.de)
Copyright 2007 Matthew Woehlke (mw_triad@users.sourceforge.net)
- Copyright 2009 Alex Turbov (I.zaufi@gmail.com)
+ Copyright 2009-2012 Alex Turbov (I.zaufi@gmail.com)
**********************************************************************
* This library is free software; you can redistribute it and/or *
@@ -28,375 +28,215 @@
**********************************************************************
-->
-<!-- NOTE: Tags @code and @endcode do not present in keywords due
- separate handle rules...
- -->
-
-<language name="Doxygen" version="1.32" kateversion="2.4" section="Markup" extensions="*.dox;*.doxygen" mimetype="text/x-doxygen" author="Dominik Haumann (dhdev@gmx.de)" license="LGPL" priority="9">
+<language name="Doxygen"
+ version="1.33"
+ kateversion="2.4"
+ section="Markup"
+ extensions="*.dox;*.doxygen"
+ mimetype="text/x-doxygen"
+ author="Dominik Haumann (dhdev@gmx.de)"
+ license="LGPL"
+ priority="9">
<highlighting>
- <!-- note: all tags may begin with a \ or @ char
+ <!-- NOTE: all tags may begin with a \ or @ char
so if you add/change tags you have to do it twice -->
+ <!-- NOTE: Tags @code/@endcode, @dot/@enddot, @vermatim/@endverbatim, @msc/@endmsc, @f[/@f]
+ do not present in keywords due separate handle rules...
+ -->
<list name="TagOnly">
- <item> \arg </item>
-
- <item> \attention </item>
- <item> \author </item>
- <item> \callgraph </item>
- <item> \callergraph </item>
-<!-- <item> \code </item> -->
-
- <item> \details </item>
- <item> \dot </item>
- <item> \else </item>
-<!-- <item> \endcode </item> -->
- <item> \endcond </item>
-
- <item> \enddot </item>
- <item> \endhtmlonly </item>
- <item> \endif </item>
- <item> \endlatexonly </item>
- <item> \endlink </item>
-
- <item> \endmanonly </item>
- <item> \endmsc </item>
- <item> \endverbatim </item>
- <item> \endxmlonly </item>
- <item> \f[ </item>
-
- <item> \f] </item>
- <item> \f$ </item>
- <item> \hideinitializer </item>
- <item> \htmlonly </item>
- <item> \interface </item>
-
- <item> \internal </item>
- <item> \invariant </item>
- <item> \~ </item>
- <item> \@ </item>
- <item> \$ </item>
-
- <item> \\ </item>
- <item> \# </item>
- <item> \latexonly </item>
- <item> \li </item>
- <item> \manonly </item>
-
- <item> \msc </item>
- <item> \n </item>
- <item> \nosubgrouping </item>
- <item> \note </item>
- <item> \only </item>
-
- <item> \post </item>
- <item> \pre </item>
- <item> \private </item>
- <item> \privatesection </item>
- <item> \protected </item>
-
- <item> \protectedsection </item>
- <item> \public </item>
- <item> \publicsection </item>
- <item> \remarks </item>
- <item> \return </item>
-
- <item> \returns </item>
-<!-- <item> \sa </item> -->
-<!-- <item> \see </item> -->
- <item> \showinitializer </item>
- <item> \since </item>
- <item> \test </item>
-
- <item> \todo </item>
- <item> \verbatim </item>
- <item> \warning </item>
- <item> \xmlonly </item>
-
- <item> @arg </item>
- <item> @attention </item>
- <item> @author </item>
- <item> @callgraph </item>
- <item> @callergraph </item>
-
-<!-- <item> @code </item> -->
- <item> @details </item>
- <item> @dot </item>
- <item> @else </item>
-<!-- <item> @endcode </item> -->
- <item> @endcond </item>
-
- <item> @enddot </item>
- <item> @endhtmlonly </item>
- <item> @endif </item>
- <item> @endlatexonly </item>
- <item> @endlink </item>
-
- <item> @endmanonly </item>
- <item> @endmsc </item>
- <item> @endverbatim </item>
- <item> @endxmlonly </item>
- <item> @f[ </item>
-
- <item> @f] </item>
- <item> @f$ </item>
- <item> @hideinitializer </item>
- <item> @htmlonly </item>
- <item> @interface </item>
-
- <item> @internal </item>
- <item> @invariant </item>
- <item> @~ </item>
- <item> @@ </item>
- <item> @$ </item>
-
- <item> @\ </item>
- <item> @# </item>
- <item> @latexonly </item>
- <item> @li </item>
- <item> @manonly </item>
-
- <item> @msc </item>
- <item> @n </item>
- <item> @nosubgrouping </item>
- <item> @note </item>
- <item> @only </item>
-
- <item> @post </item>
- <item> @pre </item>
- <item> @pivate </item>
- <item> @pivatesection </item>
- <item> @protected </item>
-
- <item> @protectedsection </item>
- <item> @public </item>
- <item> @publicsection </item>
- <item> @remarks </item>
- <item> @return </item>
-
- <item> @returns </item>
-<!-- <item> @sa </item> -->
-<!-- <item> @see </item> -->
- <item> @showinitializer </item>
- <item> @since </item>
- <item> @test </item>
-
- <item> @todo </item>
- <item> @verbatim </item>
- <item> @warning </item>
- <item> @xmlonly </item>
+ <item> \arg </item> <item> @arg </item>
+ <item> \author </item> <item> @author </item>
+ <item> \authors </item> <item> @authors </item>
+ <item> \brief </item> <item> @brief </item>
+ <item> \bug </item> <item> @bug </item>
+ <item> \callgraph </item> <item> @callgraph </item>
+ <item> \callergraph </item> <item> @callergraph </item>
+ <item> \date </item> <item> @date </item>
+ <item> \deprecated </item> <item> @deprecated </item>
+ <item> \details </item> <item> @details </item>
+ <item> \else </item> <item> @else </item>
+ <item> \endcond </item> <item> @endcond </item>
+ <item> \endhtmlonly </item> <item> @endhtmlonly </item>
+ <item> \endif </item> <item> @endif </item>
+ <item> \enditernal </item> <item> @enditernal </item>
+ <item> \endlatexonly </item> <item> @endlatexonly </item>
+ <item> \endlink </item> <item> @endlink </item>
+ <item> \endmanonly </item> <item> @endmanonly </item>
+ <item> \endrtfonly </item> <item> @endrtfonly </item>
+ <item> \endxmlonly </item> <item> @endxmlonly </item>
+ <item> \f[ </item> <item> @f[ </item>
+ <item> \f] </item> <item> @f] </item>
+ <item> \f$ </item> <item> @f$ </item>
+ <!-- TODO Add @f{environment}{ and @f} -->
+ <item> \hideinitializer </item> <item> @hideinitializer </item>
+ <item> \htmlonly </item> <item> @htmlonly </item>
+ <!-- TODO @internal is a candidate to be handled separately, cuz may introduce folding region -->
+ <item> \internal </item> <item> @internal </item>
+ <item> \invariant </item> <item> @invariant </item>
+ <item> \latexonly </item> <item> @latexonly </item>
+ <item> \li </item> <item> @li </item>
+ <item> \manonly </item> <item> @manonly </item>
+ <item> \n </item> <item> @n </item>
+ <item> \nosubgrouping </item> <item> @nosubgrouping </item>
+ <item> \only </item> <item> @only </item>
+ <item> \post </item> <item> @post </item>
+ <item> \pre </item> <item> @pre </item>
+ <item> \private </item> <item> @pivate </item>
+ <item> \privatesection </item> <item> @pivatesection </item>
+ <item> \protected </item> <item> @protected </item>
+ <item> \protectedsection </item> <item> @protectedsection </item>
+ <item> \public </item> <item> @public </item>
+ <item> \publicsection </item> <item> @publicsection </item>
+ <item> \remarks </item> <item> @remarks </item>
+ <item> \return </item> <item> @return </item>
+ <item> \returns </item> <item> @returns </item>
+ <item> \result </item> <item> @result </item>
+ <item> \rtfonly </item> <item> @rtfonly </item>
+ <item> \sa </item> <item> @sa </item>
+ <item> \see </item> <item> @see </item>
+ <item> \short </item> <item> @short </item>
+ <item> \showinitializer </item> <item> @showinitializer </item>
+ <item> \since </item> <item> @since </item>
+ <item> \tableofcontents </item> <item> @tableofcontents </item>
+ <item> \test </item> <item> @test </item>
+ <item> \version </item> <item> @version </item>
+ <item> \xmlonly </item> <item> @xmlonly </item>
+ <!-- TODO Introduce separate context for @~ ? -->
+ <item> \# </item> <item> @# </item>
+ <item> \$ </item> <item> @$ </item>
+ <item> \% </item> <item> @% </item>
+ <item> \&amp; </item> <item> @&amp; </item>
+ <item> \&gt; </item> <item> @&gt; </item>
+ <item> \&lt; </item> <item> @&lt; </item>
+ <item> \&quot; </item> <item> @&quot; </item>
+ <item> \:: </item> <item> @:: </item>
+ <item> \@ </item> <item> @@ </item>
+ <item> \\ </item> <item> @\ </item>
+ <item> \~ </item> <item> @~ </item>
</list>
<list name="TagWord">
- <item> \addtogroup </item>
- <item> \a </item>
- <item> \anchor </item>
- <item> \b </item>
-
- <item> \c </item>
- <item> \class </item>
- <item> \cond </item>
- <item> \copybrief </item>
- <item> \copydetails </item>
-
- <item> \copydoc </item>
- <item> \def </item>
- <item> \dir </item>
- <item> \dontinclude </item>
- <item> \dotfile </item>
-
- <item> \e </item>
- <item> \elseif </item>
- <item> \em </item>
- <item> \enum </item>
- <item> \example </item>
-
- <item> \exception </item>
- <item> \exceptions </item>
- <item> \extends </item>
- <item> \file </item>
- <item> \htmlinclude </item>
-
- <item> \if </item>
- <item> \ifnot </item>
- <item> \implements </item>
- <item> \include </item>
- <item> \includelineno </item>
-
- <item> \link </item>
- <item> \memberof </item>
- <item> \namespace </item>
- <item> \p </item>
- <item> \package </item>
-
- <item> \property </item>
- <item> \protocol </item>
- <item> \ref </item>
- <item> \relatesalso </item>
- <item> \relates </item>
-
- <item> \retval </item>
- <item> \throw </item>
- <item> \throws </item>
- <item> \verbinclude </item>
- <item> \version </item>
-
- <item> \xrefitem </item>
-
- <item> @addtogroup </item>
- <item> @a </item>
- <item> @anchor </item>
-
- <item> @b </item>
- <item> @c </item>
- <item> @class </item>
- <item> @cond </item>
- <item> @copybrief </item>
-
- <item> @copydetails </item>
- <item> @copydoc </item>
- <item> @def </item>
- <item> @dir </item>
- <item> @dontinclude </item>
-
- <item> @dotfile </item>
- <item> @e </item>
- <item> @elseif </item>
- <item> @em </item>
- <item> @enum </item>
-
- <item> @example </item>
- <item> @exception </item>
- <item> @exceptions </item>
- <item> @extends </item>
- <item> @file </item>
-
- <item> @htmlinclude </item>
- <item> @if </item>
- <item> @ifnot </item>
- <item> @implements </item>
- <item> @include </item>
-
- <item> @includelineno </item>
- <item> @link </item>
- <item> @memberof </item>
- <item> @namespace </item>
- <item> @p </item>
-
- <item> @package </item>
- <item> @property </item>
- <item> @prtocol </item>
- <item> @ref </item>
- <item> @relatesalso </item>
-
- <item> @relates </item>
- <item> @retval </item>
- <item> @throw </item>
- <item> @throws </item>
- <item> @verbinclude </item>
-
- <item> @version </item>
- <item> @xrefitem </item>
+ <item> \a </item> <item> @a </item>
+ <item> \anchor </item> <item> @anchor </item>
+ <item> \b </item> <item> @b </item>
+ <item> \c </item> <item> @c </item>
+ <item> \cond </item> <item> @cond </item>
+ <item> \copybrief </item> <item> @copybrief </item>
+ <item> \copydetails </item> <item> @copydetails </item>
+ <item> \copydoc </item> <item> @copydoc </item>
+ <item> \def </item> <item> @def </item>
+ <item> \dir </item> <item> @dir </item>
+ <item> \dontinclude </item> <item> @dontinclude </item>
+ <item> \e </item> <item> @e </item>
+ <item> \elseif </item> <item> @elseif </item>
+ <item> \em </item> <item> @em </item>
+ <item> \enum </item> <item> @enum </item>
+ <item> \example </item> <item> @example </item>
+ <item> \exception </item> <item> @exception </item>
+ <item> \exceptions </item> <item> @exceptions </item>
+ <item> \extends </item> <item> @extends </item>
+ <item> \file </item> <item> @file </item>
+ <item> \htmlinclude </item> <item> @htmlinclude </item>
+ <item> \if </item> <item> @if </item>
+ <item> \ifnot </item> <item> @ifnot </item>
+ <item> \implements </item> <item> @implements </item>
+ <item> \include </item> <item> @include </item>
+ <item> \includelineno </item> <item> @includelineno </item>
+ <item> \link </item> <item> @link </item>
+ <item> \memberof </item> <item> @memberof </item>
+ <item> \namespace </item> <item> @namespace </item>
+ <item> \p </item> <item> @p </item>
+ <item> \package </item> <item> @package </item>
+ <item> \property </item> <item> @property </item>
+ <item> \relatedalso </item> <item> @relatedalso </item>
+ <item> \relatesalso </item> <item> @relatesalso </item>
+ <item> \related </item> <item> @related </item>
+ <item> \relates </item> <item> @relates </item>
+ <item> \retval </item> <item> @retval </item>
+ <item> \throw </item> <item> @throw </item>
+ <item> \throws </item> <item> @throws </item>
+ <item> \verbinclude </item> <item> @verbinclude </item>
+ <item> \version </item> <item> @version </item>
+ <!-- TODO Introduce separate context for @xrefitem? -->
+ <item> \xrefitem </item> <item> @xrefitem </item>
</list>
<list name="TagParam">
- <item> \param </item>
- <item> \tparam </item>
-
- <item> @param </item>
- <item> @tparam </item>
+ <item> \param </item> <item> @param </item>
+ <!-- TODO @tparam has no optional direction actually! -->
+ <item> \tparam </item> <item> @tparam </item>
</list>
+ <!-- TODO Better (separate?) highlighting for @image required -->
<list name="TagWordWord">
- <item> \image </item>
-
- <item> @image </item>
+ <item> \image </item> <item> @image </item>
</list>
+ <!-- TODO @union, @struct, @protocol, @interface, @class, @category
+ actually takes 3 params, 1 mandatory and 2 optional
+ -->
+ <!-- TODO @headerfile actually takes 2 params, where last one is optional -->
<list name="TagWordString">
- <item> \category </item>
- <item> \defgroup </item>
-
- <item> \headerfile </item>
- <item> \page </item>
- <item> \paragraph </item>
- <item> \section </item>
- <item> \struct </item>
-
- <item> \subpage </item>
- <item> \subsection </item>
- <item> \subsubsection </item>
- <item> \union </item>
- <item> \weakgroup </item>
-
- <item> @category </item>
- <item> @defgroup </item>
- <item> @headerfile </item>
- <item> @page </item>
-
- <item> @paragraph </item>
- <item> @section </item>
- <item> @struct </item>
- <item> @subpage </item>
- <item> @subsection </item>
-
- <item> @subsubsection </item>
- <item> @union </item>
- <item> @weakgroup </item>
+ <item> \addtogroup </item> <item> @addtogroup </item>
+ <item> \category </item> <item> @category </item>
+ <item> \class </item> <item> @class </item>
+ <item> \dotfile </item> <item> @dotfile </item>
+ <item> \defgroup </item> <item> @defgroup </item>
+ <item> \interface </item> <item> @interface </item>
+ <item> \headerfile </item> <item> @headerfile </item>
+ <item> \mscfile </item> <item> @mscfile </item>
+ <item> \page </item> <item> @page </item>
+ <item> \paragraph </item> <item> @paragraph </item>
+ <item> \protocol </item> <item> @prtocol </item>
+ <item> \ref </item> <item> @ref </item>
+ <item> \section </item> <item> @section </item>
+ <item> \snippet </item> <item> @snippet </item>
+ <item> \struct </item> <item> @struct </item>
+ <item> \subpage </item> <item> @subpage </item>
+ <item> \subsection </item> <item> @subsection </item>
+ <item> \subsubsection </item> <item> @subsubsection </item>
+ <item> \union </item> <item> @union </item>
+ <item> \weakgroup </item> <item> @weakgroup </item>
</list>
<list name="TagString">
- <item> \addindex </item>
-
- <item> \brief </item>
- <item> \bug </item>
- <item> \date </item>
- <item> \deprecated </item>
- <item> \fn </item>
-
- <item> \ingroup </item>
- <item> \line </item>
- <item> \mainpage </item>
- <item> \name </item>
- <item> \overload </item>
-
- <item> \par </item>
- <item> \sa </item>
- <item> \see </item>
- <item> \short </item>
- <item> \skip </item>
-
- <item> \skipline </item>
- <item> \typedef </item>
- <item> \until </item>
- <item> \var </item>
-
- <item> @addindex </item>
- <item> @brief </item>
- <item> @bug </item>
- <item> @date </item>
- <item> @deprecated </item>
-
- <item> @fn </item>
- <item> @ingroup </item>
- <item> @line </item>
- <item> @mainpage </item>
- <item> @name </item>
-
- <item> @overload </item>
- <item> @par </item>
- <item> @sa </item>
- <item> @see </item>
- <item> @short </item>
-
- <item> @skip </item>
- <item> @skipline </item>
- <item> @typedef </item>
- <item> @until </item>
- <item> @var </item>
-
+ <item> \addindex </item> <item> @addindex </item>
+ <item> \copyright </item> <item> @copyright </item>
+ <item> \fn </item> <item> @fn </item>
+ <item> \ingroup </item> <item> @ingroup </item>
+ <item> \line </item> <item> @line </item>
+ <item> \mainpage </item> <item> @mainpage </item>
+ <item> \name </item> <item> @name </item>
+ <item> \overload </item> <item> @overload </item>
+ <item> \par </item> <item> @par </item>
+ <item> \skip </item> <item> @skip </item>
+ <item> \skipline </item> <item> @skipline </item>
+ <item> \typedef </item> <item> @typedef </item>
+ <item> \until </item> <item> @until </item>
+ <item> \var </item> <item> @var </item>
+ </list>
+ <list name="Note">
+ <item> \note </item> <item> @note </item>
+ </list>
+ <list name="Warning">
+ <item> \warning </item> <item> @warning </item>
+ </list>
+ <list name="Attention">
+ <item> \attention </item> <item> @attention </item>
+ </list>
+ <list name="Todo">
+ <item> \todo </item> <item> @todo </item>
</list>
+
<contexts>
- <!-- different formats:
- @tag : TagOnly
- @tag rest_of_line : TagString
- @tag <word> : TagWord
- @tag <word> <word> : TagWordWord
- @tag <word> rest_of_line : TagWordString
+ <!--
+ Different types of recognized command formats:
+ (w/ params specified according doxygen manual (http://www.stack.nl/~dimitri/doxygen/commands.html))
+
+ @tag : TagOnly
+ @tag <word> : TagWord
+ @tag (rest_of_line) : TagString
+ @tag {paragraph} : TagOnly
+ @tag <word> <word> : TagWordWord
+ @tag <word> (rest_of_line) : TagWordString
+
+ TODO Not all commands are handled properly nowadays :( Need few more contexts...
-->
<context attribute="Normal Text" lineEndContext="#stay" name="Normal">
<RegExpr attribute="Comment" context="LineComment" String="//(!|(/(?=[^/]|$)))&lt;?" />
@@ -404,7 +244,6 @@
<RegExpr attribute="Region" context="#stay" String="//\s*@\{\s*$" beginRegion="MemberGroup" />
<RegExpr attribute="Region" context="#stay" String="//\s*@\}\s*$" endRegion="MemberGroup" />
<RegExpr attribute="Region" context="#stay" String="/\*\s*@\{\s*\*/" beginRegion="MemberGroup" />
-
<RegExpr attribute="Region" context="#stay" String="/\*\s*@\}\s*\*/" endRegion="MemberGroup" />
</context>
<context attribute="Comment" lineEndContext="#pop" name="LineComment">
@@ -414,17 +253,16 @@
<IncludeRules context="SL_DetectEnv" />
<keyword attribute="Tags" context="#stay" String="TagOnly" />
<keyword attribute="Tags" context="SL_TagWord" String="TagWord" />
-
<keyword attribute="Tags" context="SL_TagParam" String="TagParam" />
<keyword attribute="Tags" context="SL_TagWordWord" String="TagWordWord" />
<keyword attribute="Tags" context="SL_TagString" String="TagString" />
<keyword attribute="Tags" context="SL_TagWordString" String="TagWordString" />
+ <RegExpr attribute="Custom Tags" context="#stay" String="[@\\][^@\\ \t]+" />
<DetectIdentifier />
<StringDetect attribute="HTML Comment" context="SL_htmlcomment" String="&lt;!--" />
<Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
<RegExpr attribute="HTML Tag" context="SL_htmltag" String="&lt;\/?[a-zA-Z_:][a-zA-Z0-9._:-]*" />
</context>
-
<context attribute="Comment" lineEndContext="#stay" name="BlockComment">
<DetectSpaces />
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="BlockComment" />
@@ -434,31 +272,32 @@
<IncludeRules context="SL_DetectEnv" />
<keyword attribute="Tags" context="#stay" String="TagOnly" />
<keyword attribute="Tags" context="ML_TagWord" String="TagWord" />
-
<keyword attribute="Tags" context="ML_TagParam" String="TagParam" />
<keyword attribute="Tags" context="ML_TagWordWord" String="TagWordWord" />
<keyword attribute="Tags" context="ML_TagString" String="TagString" />
<keyword attribute="Tags" context="ML_TagWordString" String="TagWordString" />
+ <RegExpr attribute="Custom Tags" context="#stay" String="[@\\][^@\\ \t]+" />
<DetectIdentifier />
<RegExpr attribute="Tags" context="#stay" String="\\(&lt;|&gt;)" />
<Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
<RegExpr attribute="HTML Tag" context="ML_htmltag" String="&lt;\/?[a-zA-Z_:][a-zA-Z0-9._:-]*" />
<StringDetect attribute="HTML Comment" context="ML_htmlcomment" String="&lt;!--" />
-
</context>
-
-
-<!-- NOTE: all contexts beginning with ML_ are for multiline comments
- The following contexts contain a Detect2Chars that looks for a */ sequence to end multiline comments. Singleline comments do not have this limitation - that's why all contexts are copy&pasted and the line <Detect2Chars ... */> is removed. <IncludeRules context="acontext"> could be used instead but it would make context switching much more complex and very hard to understand! (But use IncludeRules where the rules don't refer to another SL_*/ML_* context, to help maintainability.)
--->
+ <!-- NOTE: all contexts beginning with ML_ are for multiline comments
+ The following contexts contain a Detect2Chars that looks for a */ sequence
+ to end multiline comments. Singleline comments do not have this limitation -
+ that's why all contexts are copy&pasted and the line <Detect2Chars ... */> is removed.
+ <IncludeRules context="acontext"> could be used instead but it would make context switching
+ much more complex and very hard to understand! (But use IncludeRules where the rules don't
+ refer to another SL_*/ML_* context, to help maintainability.)
+ -->
<!-- tag contexts -->
<context attribute="Comment" lineEndContext="#pop" name="ML_TagWord">
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<IncludeRules context="SL_TagWord" />
</context>
<context attribute="Comment" lineEndContext="#pop" name="ML_TagParam">
-
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<DetectSpaces />
<StringDetect attribute="Tags" context="ML_Tag2ndWord" String="[in]" />
@@ -468,7 +307,6 @@
<RegExpr attribute="Word" context="#stay" String="\S" />
</context>
<context attribute="Comment" lineEndContext="#pop" name="ML_TagWordWord">
-
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<DetectSpaces />
<RegExpr attribute="Word" context="ML_Tag2ndWord" String="\S(?=&wordsep;)" />
@@ -478,7 +316,6 @@
<context attribute="Comment" lineEndContext="#pop#pop" name="ML_Tag2ndWord">
<Detect2Chars attribute="Comment" context="#pop#pop" char="*" char1="/" lookAhead="true" />
<IncludeRules context="SL_Tag2ndWord" />
-
</context>
<context attribute="Comment" lineEndContext="#pop" name="ML_TagString">
<DetectSpaces />
@@ -488,7 +325,6 @@
<RegExpr attribute="HTML Tag" context="ML_htmltag" String="&lt;\/?[a-zA-Z_:][a-zA-Z0-9._:-]*" />
<RegExpr attribute="Description" context="#stay" String="." />
</context>
-
<context attribute="Comment" lineEndContext="#pop" name="ML_TagWordString">
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<IncludeRules context="SL_TagWordString" />
@@ -498,7 +334,6 @@
<context name="ML_htmltag" attribute="Identifier" lineEndContext="#stay">
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<Detect2Chars attribute="HTML Tag" context="#pop" char="/" char1="&gt;" />
-
<DetectChar attribute="HTML Tag" context="#pop" char="&gt;" />
<RegExpr attribute="Identifier" context="ML_identifiers" String="\s*=\s*" />
</context>
@@ -508,7 +343,6 @@
<StringDetect attribute="HTML Comment" context="#pop" String="--&gt;" />
</context>
<context name="ML_identifiers" attribute="Identifier" lineEndContext="#stay">
-
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<RegExpr attribute="String" context="#pop" String="\s*#?[a-zA-Z0-9]*" />
<DetectChar attribute="Types" context="ML_types1" char="'" />
@@ -518,18 +352,16 @@
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<DetectChar attribute="Types" context="#pop#pop" char="'" />
</context>
-
<context name="ML_types2" attribute="Types" lineEndContext="#stay">
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" />
<DetectChar attribute="Types" context="#pop#pop" char="&quot;" />
</context>
-<!-- NOTE: all contexts beginning with SL_ are for singleline comments -->
+ <!-- NOTE: all contexts beginning with SL_ are for singleline comments -->
<!-- tag contexts -->
<context attribute="Comment" lineEndContext="#pop" name="SL_TagWord">
<DetectSpaces />
<keyword attribute="Tags" context="#pop" String="TagWord" lookAhead="true" />
-
<RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
<RegExpr attribute="Word" context="#stay" String="\S" />
</context>
@@ -539,7 +371,6 @@
<StringDetect attribute="Tags" context="SL_Tag2ndWord" String="[out]" />
<StringDetect attribute="Tags" context="SL_Tag2ndWord" String="[in,out]" />
<RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
-
<RegExpr attribute="Word" context="#stay" String="\S" />
</context>
<context attribute="Comment" lineEndContext="#pop" name="SL_TagWordWord">
@@ -549,7 +380,6 @@
</context>
<!-- TODO for kate 2.x, convert references to "#pop!SL_TagWord" -->
<context attribute="Comment" lineEndContext="#pop#pop" name="SL_Tag2ndWord">
-
<DetectSpaces />
<RegExpr attribute="Word" context="#pop#pop" String="\S(?=&wordsep;)" />
<RegExpr attribute="Word" context="#stay" String="\S" />
@@ -559,7 +389,6 @@
<StringDetect attribute="HTML Comment" context="SL_htmlcomment" String="&lt;!--" />
<Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
<RegExpr attribute="HTML Tag" context="SL_htmltag" String="&lt;\/?[a-zA-Z_:][a-zA-Z0-9._:-]*" />
-
<RegExpr attribute="Description" context="#stay" String="." />
</context>
<context attribute="Comment" lineEndContext="#pop" name="SL_TagWordString">
@@ -569,7 +398,6 @@
</context>
<!-- html contexts -->
-
<context name="SL_htmltag" attribute="Identifier" lineEndContext="#pop">
<Detect2Chars attribute="HTML Tag" context="#pop" char="/" char1="&gt;" />
<DetectChar attribute="HTML Tag" context="#pop" char="&gt;" />
@@ -579,7 +407,6 @@
<IncludeRules context="##Alerts" />
<StringDetect attribute="HTML Comment" context="#pop" String="--&gt;" />
</context>
-
<context name="SL_identifiers" attribute="Identifier" lineEndContext="#pop">
<RegExpr attribute="String" context="#pop" String="\s*#?[a-zA-Z0-9]*" />
<DetectChar attribute="Types" context="SL_types1" char="'" />
@@ -589,36 +416,39 @@
<DetectChar attribute="Types" context="#pop#pop" char="'" />
</context>
<context name="SL_types2" attribute="Types" lineEndContext="#pop">
-
<DetectChar attribute="Types" context="#pop#pop" char="&quot;" />
</context>
- <context name="SL_DetectEnv" lineEndContext="#pop">
- <RegExpr attribute="Tags" context="Code" String="[@\\]code" beginRegion="Code" />
- <RegExpr attribute="Tags" context="Verbatim" String="[@\\]verbatim" beginRegion="Verbatim" />
+ <context attribute="Comment" name="SL_DetectEnv" lineEndContext="#pop">
+ <RegExpr attribute="Tags" context="Code" String="[@\\]code\b" beginRegion="Code" />
+ <RegExpr attribute="Tags" context="Verbatim" String="[@\\]verbatim\b" beginRegion="Verbatim" />
<RegExpr attribute="Tags" context="Formula" String="[@\\]f\[" beginRegion="Formula" />
- <RegExpr attribute="Tags" context="Msc" String="[@\\]msc" beginRegion="Msc" />
- <RegExpr attribute="Tags" context="Dot" String="[@\\]dot" beginRegion="Dot" />
-
+ <RegExpr attribute="Tags" context="Msc" String="[@\\]msc\b" beginRegion="Msc" />
+ <RegExpr attribute="Tags" context="Dot" String="[@\\]dot\b" beginRegion="Dot" />
+ <keyword attribute="Note" context="#stay" String="Note" />
+ <keyword attribute="Warning" context="#stay" String="Warning" />
+ <keyword attribute="Attention" context="#stay" String="Attention" />
+ <keyword attribute="Todo" context="#stay" String="Todo" />
+ <RegExpr attribute="Entities" context="#stay" String="&amp;[A-Za-z]+&#59;" />
</context>
- <context name="SL_DetectComment" lineEndContext="#pop">
+ <context attribute="Comment" name="SL_DetectComment" lineEndContext="#pop">
<Detect2Chars attribute="Comment" context="#pop#pop" char="*" char1="/" endRegion="BlockComment" />
+ <DetectChar attribute="Comment" context="#stay" char="*" />
+ <StringDetect attribute="Comment" context="#stay" String="///" />
</context>
<context attribute="Code" lineEndContext="#stay" name="Code">
-
<IncludeRules context="SL_DetectComment" />
- <RegExpr attribute="Tags" context="#pop" String="[@\\]endcode" endRegion="Code" />
+ <RegExpr attribute="Tags" context="#pop" String="[@\\]endcode\b" endRegion="Code" />
</context>
<context attribute="Verbatim" lineEndContext="#stay" name="Verbatim">
<IncludeRules context="SL_DetectComment" />
- <RegExpr attribute="Tags" context="#pop" String="[@\\]endverbatim" endRegion="Verbatim" />
+ <RegExpr attribute="Tags" context="#pop" String="[@\\]endverbatim\b" endRegion="Verbatim" />
</context>
<context attribute="Formulas" lineEndContext="#stay" name="Formula">
-
<IncludeRules context="SL_DetectComment" />
<RegExpr attribute="Tags" context="#pop" String="[@\\]f\]" endRegion="Formula" />
<!-- TODO: How to force LaTeX math context here?? -->
@@ -627,38 +457,41 @@
<context attribute="Message Sequence Chart" lineEndContext="#stay" name="Msc">
<IncludeRules context="SL_DetectComment" />
- <RegExpr attribute="Tags" context="#pop" String="[@\\]endmsc" endRegion="Msc" />
-
+ <RegExpr attribute="Tags" context="#pop" String="[@\\]endmsc\b" endRegion="Msc" />
</context>
<context attribute="Dot Graph" lineEndContext="#stay" name="Dot">
<IncludeRules context="SL_DetectComment" />
- <RegExpr attribute="Tags" context="#pop" String="[@\\]enddot" endRegion="Dot" />
+ <RegExpr attribute="Tags" context="#pop" String="[@\\]enddot\b" endRegion="Dot" />
</context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal" />
-
- <itemData name="Tags" defStyleNum="dsKeyword" color="#ca60ca" selColor="#ffffff" bold="1" italic="0" />
- <itemData name="Word" defStyleNum="dsKeyword" color="#0095ff" selColor="#ffffff" bold="1" italic="0" />
- <itemData name="HTML Tag" defStyleNum="dsKeyword" color="#000000" selColor="#ffffff" bold="1" italic="0" />
+ <itemData name="Tags" defStyleNum="dsKeyword" color="#ca60ca" bold="1" italic="0" />
+ <itemData name="Custom Tags" defStyleNum="dsNormal" color="#458C61" bold="1" italic="0" />
+ <itemData name="Word" defStyleNum="dsKeyword" color="#0095ff" bold="1" italic="0" />
+ <itemData name="HTML Tag" defStyleNum="dsKeyword" color="#000000" bold="1" italic="0" />
+ <itemData name="Entities" defStyleNum="dsOthers" color="#4086C0" bold="1" italic="1" />
<itemData name="Description" defStyleNum="dsString" color="#ff0000" />
- <itemData name="Comment" defStyleNum="dsComment" color="#0000ff" selColor="#ffffff" italic="1" />
+ <itemData name="Comment" defStyleNum="dsComment" color="#0000ff" italic="1" />
<itemData name="Region" defStyleNum="dsRegionMarker" />
<itemData name="Identifier" defStyleNum="dsOthers" />
<itemData name="HTML Comment" defStyleNum="dsComment" />
<itemData name="Types" defStyleNum="dsDataType" />
-
<itemData name="Code" defStyleNum="dsComment" />
<itemData name="Dot Graph" defStyleNum="dsComment" color="#00A000" selColor="#ffffff" italic="1" />
<itemData name="Formulas" defStyleNum="dsComment" color="#00A000" selColor="#ffffff" italic="1" />
<itemData name="Message Sequence Chart" defStyleNum="dsComment" color="#00A000" selColor="#ffffff" italic="1" />
<itemData name="Verbatim" defStyleNum="dsComment" />
+ <itemData name="Note" defStyleNum="dsKeyword" color="#81ca2d" selColor="#81ca2d" bold="1" italic="0" />
+ <itemData name="Warning" defStyleNum="dsKeyword" color="#ca9219" selColor="#ca9219" bold="1" italic="0" />
+ <itemData name="Attention" defStyleNum="dsKeyword" color="#e85848" selColor="#e85848" bold="1" italic="0" />
+ <itemData name="Todo" defStyleNum="dsKeyword" color="#ca60ca" selColor="#ffffff" bold="1" italic="0" />
</itemDatas>
</highlighting>
<general>
<keywords casesensitive="0" weakDeliminator="\$~" />
-
</general>
</language>
+<!-- kate: indent-width 2; -->
diff --git a/kate/data/fortran.xml b/kate/data/fortran.xml
index 4a83a703a..43817994b 100644
--- a/kate/data/fortran.xml
+++ b/kate/data/fortran.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language name="Fortran" version="1.12" kateversion="2.4" section="Sources" extensions="*.f;*.F;*.for;*.FOR;*.f90;*.F90;*.fpp;*.FPP;*.f95;*.F95;" mimetype="text/x-fortran-src" casesensitive="0" author="Franchin Matteo (fnch@libero.it)" license="LGPL">
+<language name="Fortran" version="1.13" kateversion="2.4" section="Sources" extensions="*.f;*.F;*.for;*.FOR;*.f90;*.F90;*.fpp;*.FPP;*.f95;*.F95;" mimetype="text/x-fortran-src" casesensitive="0" author="Franchin Matteo (fnch@libero.it)" license="LGPL" priority="9">
<!-- by Franchin Matteo, fnch@libero.it -->
<highlighting>
diff --git a/kate/data/gettext.xml b/kate/data/gettext.xml
index 3bfe298fe..827468a16 100644
--- a/kate/data/gettext.xml
+++ b/kate/data/gettext.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
- This file is part of KDE's kate project.
+ This file is part of TDE's kate project.
Copyright 2004, Dominik Haumann <dhdev@gmx.de>
Copyright 2008, Chusslove Illich <caslav.ilic@gmx.net>
diff --git a/kate/data/go.xml b/kate/data/go.xml
index 2913ce0c7..1b0701565 100644
--- a/kate/data/go.xml
+++ b/kate/data/go.xml
@@ -26,7 +26,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
-->
-<language name="Go" version="1.00" kateversion="2.4" section="Sources" indenter="cstyle" extensions="*.go" author="Miquel Sabaté (mikisabate@gmail.com)" license="GPL">
+<language name="Go" version="1.01" kateversion="2.4" section="Sources" indenter="cstyle" extensions="*.go" author="Miquel Sabaté (mikisabate@gmail.com)" license="GPL">
<highlighting>
<list name="keywords">
<!-- Keywords have been taken from The Go Programming Language Specification -> Keywords section -->
@@ -47,7 +47,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<item>import</item>
<item>interface</item>
<item>map</item>
-<!-- <item>package</item> -->
+ <item>package</item>
<item>range</item>
<item>return</item>
<item>select</item>
@@ -61,6 +61,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<item>byte</item>
<item>complex64</item>
<item>complex128</item>
+ <item>error</item>
<item>float</item>
<item>float32</item>
<item>float64</item>
@@ -69,6 +70,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<item>int16</item>
<item>int32</item>
<item>int64</item>
+ <item>rune</item>
<item>string</item>
<item>uint</item>
<item>uint8</item>
@@ -77,31 +79,43 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<item>uint64</item>
</list>
<list name="builtin">
- <item>cap</item>
- <item>len</item>
- <item>make</item>
- <item>new</item>
- <item>panic</item>
- <item>recover</item>
+ <item> append </item>
+ <item> cap </item>
+ <item> close </item>
+ <item> complex </item>
+ <item> copy </item>
+ <item> imag </item>
+ <item> len </item>
+ <item> make </item>
+ <item> new </item>
+ <item> panic </item>
+ <item> print </item>
+ <item> println </item>
+ <item> real </item>
+ <item> recover </item>
</list>
- <list name="special">
+ <list name="predeclared">
<item>false</item>
<item>nil</item>
<item>true</item>
+ <item>iota</item>
</list>
<contexts>
<context name="normal" attribute="Normal Text" lineEndContext="#stay">
<keyword attribute="Keyword" context="#stay" String="keywords" />
- <keyword attribute="Special" context="#stay" String="special" />
- <keyword attribute="Type" context="#stay" String="types" />
- <keyword attribute="Builtin" context="#stay" String="builtin" />
- <StringDetect attribute="Package" context="Package" String="package" />
+ <keyword attribute="Predeclared Identifier" context="#stay" String="predeclared" />
+ <keyword attribute="Data Type" context="#stay" String="types" />
+ <keyword attribute="Builtin Function" context="#stay" String="builtin" />
<DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" />
<DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" />
<Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/" />
<Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" />
+ <HlCOct attribute="Octal" context="#stay"/>
+ <HlCHex attribute="Hex" context="#stay"/>
<HlCChar attribute="Char" context="#stay" />
<DetectChar attribute="String" context="String" char="&quot;" />
+ <DetectChar attribute="Multiline String" context="Multiline String" char="`"/>
+ <AnyChar attribute="Symbol" context="#stay" String=":!%&amp;()+,-/.*&lt;=&gt;?[]|~^&#59;"/>
</context>
<context attribute="Comment" lineEndContext="#pop" name="Commentar 1">
@@ -118,26 +132,32 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<DetectIdentifier />
</context>
- <context attribute="Package" lineEndContext="#pop" name="Package" />
-
<context attribute="String" lineEndContext="#pop" name="String">
<LineContinue attribute="String" context="#stay" />
<HlCStringChar attribute="String Char" context="#stay" />
<DetectChar attribute="String" context="#pop" char="&quot;" />
</context>
+
+ <context attribute="String" lineEndContext="#stay" name="Multiline String">
+ <LineContinue attribute="String" context="#stay"/>
+ <HlCStringChar attribute="String Char" context="#stay"/>
+ <DetectChar attribute="String" context="#pop" char="`"/>
+ </context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
<itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
- <itemData name="Special" defStyleNum="dsOthers" spellChecking="false"/>
- <itemData name="Type" defStyleNum="dsDataType" spellChecking="false"/>
- <itemData name="Builtin" defStyleNum="dsOthers" color="#000e52" selColor="#ffffff" spellChecking="false" />
+ <itemData name="Predeclared Identifier" defStyleNum="dsOthers" spellChecking="false" />
+ <itemData name="Builtin Function" defStyleNum="dsFunction" spellChecking="false" />
+ <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/>
<itemData name="String Char" defStyleNum="dsChar" />
<itemData name="String" defStyleNum="dsString" />
<itemData name="Comment" defStyleNum="dsComment" />
+ <itemData name="Octal" defStyleNum="dsBaseN" spellChecking="false"/>
+ <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/>
<itemData name="Char" defStyleNum="dsChar" spellChecking="false"/>
- <itemData name="Package" defStyleNum="dsNormal" color="#000080" selColor="#ffffff" spellChecking="false" />
<itemData name="Symbol" defStyleNum="dsNormal" spellChecking="false"/>
+ <itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
</itemDatas>
</highlighting>
<general>
@@ -145,6 +165,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<comment name="singleLine" start="//" />
<comment name="multiLine" start="/*" end="*/" region="Comment"/>
</comments>
- <keywords casesensitive="1"/>
+ <keywords casesensitive="1" additionalDeliminator="'&quot;" />
</general>
</language>
diff --git a/kate/data/latex.xml b/kate/data/latex.xml
index f138b53d9..d15e8e429 100644
--- a/kate/data/latex.xml
+++ b/kate/data/latex.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language name="LaTeX" version="1.47" section="Markup" kateversion="2.3" priority="10" extensions="*.tex;*.ltx;*.dtx;*.sty;*.cls;*.bbx;*.cbx;*.lbx;" mimetype="text/x-tex" casesensitive="1" author="Jeroen Wijnhout (Jeroen.Wijnhout@kdemail.net)+Holger Danielsson (holger.danielsson@versanet.de)+Michel Ludwig (michel.ludwig@kdemail.net)+Thomas Braun (thomas.braun@virtuell-zuhause.de)" license="LGPL" >
+<language name="LaTeX" version="1.48" section="Markup" kateversion="2.3" priority="10" extensions="*.tex;*.ltx;*.dtx;*.sty;*.cls;*.bbx;*.cbx;*.lbx;" mimetype="text/x-tex" casesensitive="1" author="Jeroen Wijnhout (Jeroen.Wijnhout@kdemail.net)+Holger Danielsson (holger.danielsson@versanet.de)+Michel Ludwig (michel.ludwig@kdemail.net)+Thomas Braun (thomas.braun@virtuell-zuhause.de)" license="LGPL" >
<highlighting>
<contexts>
<!-- Normal text -->
@@ -68,7 +68,7 @@
<context name="SectioningMathContrSeq" attribute="Structure Keyword Mathmode" lineEndContext="#pop">
<DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>
<RegExpr String="[a-zA-Z]+\*?" attribute="Structure Keyword Mathmode" context="#pop"/>
- <RegExpr String="[^a-zA-Z]" attribute="Structure Keyword Mathmode" context="#pop" />
+ <RegExpr String="[^a-zA-Z]" attribute="Structure Keyword Mathmode" context="#pop" />
</context>
<!-- LaTeX Footnote commands -->
@@ -339,11 +339,11 @@
<RegExpr String="\\end(?=\s*\{(tabularx|tabular|supertabular|mpsupertabular|xtabular|mpxtabular|longtable)\*?\})" attribute="Structure" context="TabFindEnd"/>
<IncludeRules context="Normal Text" />
</context>
-
+
<context name="Column Separator" attribute="Column Separator" lineEndContext="#stay">
<DetectChar char="{" attribute="Column Separator" context="Column Separator"/>
<DetectChar char="}" attribute="Column Separator" context="#pop"/>
- <RegExpr String="." attribute="Column Separator" context="#stay"/>
+ <RegExpr String="." attribute="Column Separator" context="#stay"/>
<!-- the last regexp is very stupid. Suggestions are welcome! Fallthrough did not help-->
</context>
@@ -405,7 +405,7 @@
<context name="MathContrSeq" attribute="Keyword Mathmode" lineEndContext="#pop">
<DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>
<RegExpr String="[a-zA-Z]+\*?" attribute="Keyword Mathmode" context="#pop"/>
- <RegExpr String="[^a-zA-Z]" attribute="Keyword Mathmode" context="#pop" />
+ <RegExpr String="[^a-zA-Z]" attribute="Keyword Mathmode" context="#pop" />
</context>
<!-- text in mathmode -->
@@ -414,7 +414,7 @@
</context>
<context name="MathModeTextParameterStart" attribute="Normal Text" lineEndContext="#stay" >
- <RegExpr String="\\." attribute="Normal Text" context="#stay"/>
+ <RegExpr String="\\." attribute="Normal Text" context="#stay"/>
<DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>
<RegExpr String="\$.*\$" minimal="true" attribute="Math" context="#stay"/>
<DetectChar char="{" attribute="Normal Text" context="MathModeTextParameter"/>
@@ -423,7 +423,7 @@
</context>
<context name="MathModeTextParameter" attribute="Normal Text" lineEndContext="#stay" >
- <RegExpr String="\\." attribute="Normal Text" context="#stay"/>
+ <RegExpr String="\\." attribute="Normal Text" context="#stay"/>
<DetectChar char="{" attribute="Normal Text" context="MathModeTextParameter"/>
<DetectChar char="}" attribute="Normal Text" context="#pop"/>
<DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>
@@ -588,6 +588,7 @@
<encoding char="&#255;" string="\&#34;{y}" />
<encoding char="&#255;" string="\&#34;y" />
<encoding string="''" ignored="true" />
+ <encoding string="\-" ignored="true" />
</encodings>
</spellchecking>
</language>
diff --git a/kate/data/lua.xml b/kate/data/lua.xml
index 52442de05..0c3bb1a99 100644
--- a/kate/data/lua.xml
+++ b/kate/data/lua.xml
@@ -35,7 +35,7 @@
- improved highlighting
-->
-<language name="Lua" version="1.04" indenter="lua" kateversion="2.4" section="Scripts" extensions="*.lua" mimetype="text/x-lua">
+<language name="Lua" version="1.05" indenter="lua" kateversion="2.4" section="Scripts" extensions="*.lua" mimetype="text/x-lua">
<highlighting>
<list name="keywords">
<item> and </item>
@@ -213,10 +213,6 @@
</list>
<contexts>
- <context name="Base" attribute="Comment" lineEndContext="Normal">
- <RegExpr attribute="Comment" context="Normal" String="#!.*$" column="0" />
- <RegExpr attribute="Comment" context="Normal" String="^.*$" lookAhead="true" />
- </context>
<context name="Normal" attribute="Normal Text" lineEndContext="#stay">
<IncludeRules context="##DoxygenLua" />
<keyword attribute="Error" context="#stay" String="deprecated" />
diff --git a/kate/data/m4.xml b/kate/data/m4.xml
index 23e3f3576..e39c6e696 100644
--- a/kate/data/m4.xml
+++ b/kate/data/m4.xml
@@ -6,7 +6,7 @@
Corresponds to GNU M4 version 1.4.16.
For KatePart (Kate, KWrite etc) copy this file to
- ~/.tde/share/apps/katepart/syntax/
+ $TDEHOME/share/apps/katepart/syntax/
For Qt Creator copy this file to
~/.config/Nokia/qtcreator/generic-highlighter/
diff --git a/kate/data/mason.xml b/kate/data/mason.xml
index 3fd1b4992..d369fb0ee 100644
--- a/kate/data/mason.xml
+++ b/kate/data/mason.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language version="1.04" kateversion="2.1" name="Mason" section="Scripts" extensions="*.html;" mimetype="">
+<language version="1.05" kateversion="2.1" name="Mason" section="Scripts" extensions="*.html;" mimetype="">
<highlighting>
<list name="keywords">
<item> sub </item>
@@ -72,6 +72,8 @@
<StringDetect attribute="Comment" context="Documentation" String="&lt;%doc&gt;" insensitive="FALSE" />
<StringDetect attribute="Mason Tag" context="EmbeddedPerl" String="&lt;%perl&gt;" insensitive="FALSE" />
+ <StringDetect attribute="Mason Tag" context="EmbeddedPerl" String="&lt;%init&gt;" insensitive="FALSE" />
+ <StringDetect attribute="Mason Tag" context="EmbeddedPerl" String="&lt;%args&gt;" insensitive="FALSE" />
<Detect2Chars attribute="Mason Tag" context="EmbeddedPerl" char="&lt;" char1="%" />
<Detect2Chars attribute="Mason Method" context="MethodCall" char="&lt;" char1="&amp;" />
<RegExpr attribute="Mason Tag" context="PerlOneLiner" String="^%" />
@@ -81,6 +83,8 @@
<Detect2Chars attribute="Mason Tag" context="#pop" char="%" char1="&gt;" />
<StringDetect attribute="Mason Tag" context="#pop" String="&lt;/%perl&gt;" insensitive="FALSE" />
<StringDetect attribute="Mason Tag" context="#pop" String="&lt;/%method&gt;" insensitive="FALSE" />
+ <StringDetect attribute="Mason Tag" context="#pop" String="&lt;/%init&gt;" insensitive="FALSE" />
+ <StringDetect attribute="Mason Tag" context="#pop" String="&lt;/%args&gt;" insensitive="FALSE" />
<keyword attribute="Keyword" context="#stay" String="keywords"/>
<keyword attribute="Data Type" context="#stay" String="types"/>
<HlCOct attribute="Octal" context="#stay"/>
diff --git a/kate/data/modelines.xml b/kate/data/modelines.xml
new file mode 100644
index 000000000..eb72e6be1
--- /dev/null
+++ b/kate/data/modelines.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd"
+[
+ <!ENTITY space " ">
+ <!ENTITY end "&#59;">
+]>
+<!--
+ Copyright (c) 2012 by Alex Turbov (i.zaufi@gmail.com)
+
+ Homepage: http://kde-files.org/content/show.php?content=90660
+ -->
+<language name="Modelines"
+ version="0.3"
+ kateversion="2.4"
+ section="Other"
+ extensions=""
+ mimetype=""
+ author="Alex Turbov (i.zaufi@gmail.com)"
+ license="LGPL"
+ hidden="true"
+ priority="5">
+<!--
+ The main purpose of this file is to be included into other syntax files.
+
+ NOTE Default colors are set to 'Comment', so if u don't want to highight it,
+ just leave colors as is...
+
+ TODO Support for other modelines? emacs/vim??
+-->
+<highlighting>
+ <list name="ModelineStartKeyword">
+ <item> kate: </item>
+ </list>
+
+ <list name="Booleans">
+ <item> auto-brackets </item>
+ <item> auto-insert-doxygen </item>
+ <item> backspace-indents </item>
+ <item> block-selection </item>
+ <item> bom </item>
+ <item> byte-order-marker </item>
+ <item> folding-markers </item>
+ <item> icon-border </item>
+ <item> keep-extra-spaces </item>
+ <item> line-numbers </item>
+ <item> newline-at-eof </item> <!-- Since KDE 4.9 -->
+ <item> overwrite-mode </item>
+ <item> persistent-selection </item>
+ <item> remove-trailing-space </item>
+ <item> replace-tabs-save </item>
+ <item> replace-tabs </item>
+ <item> replace-trailing-space-save </item>
+ <item> space-indent </item>
+ <item> show-tabs </item>
+ <item> tab-indents </item>
+ <item> word-wrap </item>
+ <item> wrap-cursor </item>
+ </list>
+
+ <list name="True">
+ <item> on </item>
+ <item> true </item>
+ <item> 1 </item>
+ </list>
+
+ <list name="False">
+ <item> off </item>
+ <item> false </item>
+ <item> 0 </item>
+ </list>
+
+ <list name="Integrals">
+ <item> auto-center-lines </item>
+ <item> font-size </item>
+ <item> indent-width </item>
+ <item> smart-home </item>
+ <item> tab-width </item>
+ <item> undo-steps </item>
+ <item> word-wrap-column </item>
+ </list>
+
+ <list name="Strings">
+ <item> background-color </item>
+ <item> bracket-highlight-color </item>
+ <item> current-line-color </item>
+ <item> default-dictionary </item>
+ <item> dynamic-word-wrap </item>
+ <item> eol </item>
+ <item> end-of-line </item> <!-- Valid settings are unix, mac and dos -->
+ <item> font </item>
+ <item> hl </item>
+ <item> icon-bar-color </item>
+ <item> indent-mode </item>
+ <item> scheme </item>
+ <item> selection-color </item>
+ <item> word-wrap-marker-color </item>
+ </list>
+
+ <contexts>
+ <context name="Normal" attribute="Comment" lineEndContext="#pop">
+ <DetectSpaces />
+ <keyword String="ModelineStartKeyword" context="Modeline" attribute="Keyword" />
+ <LineContinue context="#pop" />
+ </context>
+
+ <context name="Modeline" attribute="Comment" lineEndContext="#pop">
+ <DetectSpaces />
+ <keyword String="Booleans" context="Booleans" attribute="Variable" />
+ <keyword String="Integrals" context="Integrals" attribute="Variable" />
+ <keyword String="Strings" context="Strings" attribute="Variable" />
+ <LineContinue context="#pop" />
+ </context>
+
+ <context name="Booleans" attribute="Comment" lineEndContext="#pop">
+ <DetectSpaces />
+ <keyword String="True" attribute="Boolean True" context="#stay" />
+ <keyword String="False" attribute="Boolean False" context="#stay" />
+ <DetectChar char="&end;" context="#pop" attribute="Variable" />
+ <LineContinue context="#pop" />
+ </context>
+
+ <context name="Integrals" attribute="Comment" lineEndContext="#pop">
+ <DetectSpaces />
+ <Int attribute="Number" context="#stay" />
+ <DetectChar char="&end;" context="#pop" attribute="Variable" />
+ <LineContinue context="#pop" />
+ </context>
+
+ <context name="Strings" attribute="String" lineEndContext="#pop">
+ <DetectSpaces />
+ <RegExpr String="[^&end;&space;]" context="#stay" />
+ <DetectChar char="&end;" context="#pop" attribute="Variable" />
+ <LineContinue context="#pop" />
+ </context>
+
+ </contexts>
+
+ <itemDatas>
+ <itemData name="Comment" defStyleNum="dsComment" spellChecking="true" />
+ <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false" />
+ <itemData name="Variable" defStyleNum="dsFunction" spellChecking="false" />
+ <itemData name="Boolean True" defStyleNum="dsOthers" spellChecking="false" />
+ <itemData name="Boolean False" defStyleNum="dsOthers" spellChecking="false" />
+ <itemData name="Number" defStyleNum="dsDecVal" spellChecking="false" />
+ <itemData name="String" defStyleNum="dsString" spellChecking="false" />
+ </itemDatas>
+
+</highlighting>
+
+<general>
+ <keywords casesensitive="1" weakDeliminator=":-" />
+</general>
+
+</language>
+<!-- kate: indent-width 2; -->
diff --git a/kate/data/objectivecpp.xml b/kate/data/objectivecpp.xml
index 1552d264a..bf038d4a2 100644
--- a/kate/data/objectivecpp.xml
+++ b/kate/data/objectivecpp.xml
@@ -109,7 +109,7 @@
<item> Q_DECLARE_PUBLIC </item>
<item> Q_D </item>
<item> Q_Q </item>
- <item> TQ_DISABLE_COPY </item>
+ <item> Q_DISABLE_COPY </item>
<item> Q_INTERFACES </item>
<item> Q_FLAGS </item>
<item> Q_SCRIPTABLE </item>
diff --git a/kate/data/perl.xml b/kate/data/perl.xml
index 71b04ad9f..b92b52dff 100644
--- a/kate/data/perl.xml
+++ b/kate/data/perl.xml
@@ -39,7 +39,7 @@
Enhance tr/// and y/// support.
-->
-<language name="Perl" version="1.25" kateversion="2.4" section="Scripts" extensions="*.pl;*.pm" mimetype="application/x-perl;text/x-perl" author="Anders Lund (anders@alweb.dk)" license="LGPL">
+<language name="Perl" version="1.26" kateversion="2.4" section="Scripts" extensions="*.pl;*.pm" mimetype="application/x-perl;text/x-perl" author="Anders Lund (anders@alweb.dk)" license="LGPL">
<highlighting>
<list name="keywords">
<item> if </item>
@@ -56,18 +56,18 @@
<item> break </item>
<item> continue </item>
<item> return </item>
- <item> use </item>
- <item> no </item>
- <item> require </item>
<item> my </item>
<item> our </item>
<item> local </item>
+ <item> state </item>
<item> BEGIN </item>
<item> END </item>
- <item>require</item>
<item> package </item>
<item> sub </item>
<item> do </item>
+ <item> given </item>
+ <item> when </item>
+ <item> default </item>
<item> __END__ </item>
<item> __DATA__ </item>
<item> __FILE__ </item>
@@ -221,6 +221,7 @@
<item>msgget</item>
<item>msgrcv</item>
<item>msgsnd</item>
+ <item>no</item>
<item>oct</item>
<item>open</item>
<item>opendir</item>
@@ -244,6 +245,7 @@
<item>redo</item>
<item>ref</item>
<item>rename</item>
+ <item>require</item>
<item>reset</item>
<item>return</item>
<item>reverse</item>
@@ -307,6 +309,7 @@
<item>unpack</item>
<item>unshift</item>
<item>untie</item>
+ <item>use</item>
<item>utime</item>
<item>values</item>
<item>vec</item>
@@ -366,7 +369,7 @@
<RegExpr attribute="Normal Text" context="#stay" String="\s*\}\s*/{1,2}" endRegion="Block"/>
<RegExpr attribute="Normal Text" context="#stay" String="\s*[)\]]\s*/{1,2}" />
-
+
<RegExpr attribute="Function" context="sub_name_def" String="\w+::" />
<RegExpr attribute="Normal Text" context="#stay" String="\w+[=]" />
@@ -765,9 +768,8 @@
</context>
<context name="slash_safe_escape" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">
- <DetectSpaces />
- <RegExpr attribute="Normal Text" context="#pop" String="\}\s*/{1,2}" endRegion="Block"/>
- <RegExpr attribute="Normal Text" context="#pop" String="[)\]]?\s*/{1,2}" />
+ <RegExpr attribute="Normal Text" context="#pop" String="\s*\}\s*/{1,2}" endRegion="Block"/>
+ <RegExpr attribute="Normal Text" context="#pop" String="\s*[)\]]?\s*/{1,2}" />
<keyword attribute="Keyword" context="#pop" String="keywords" /><!-- wonder why??? -->
</context>
diff --git a/kate/data/pig.xml b/kate/data/pig.xml
new file mode 100644
index 000000000..a3dc318fa
--- /dev/null
+++ b/kate/data/pig.xml
@@ -0,0 +1,202 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<!-- Pig syntax highlighting v3.0, Copyright © 2012 Johannes Schwenk, johannes.schwenk@adition.com -->
+<language name="Pig" version="3.0" kateversion="2.4" section="Scripts" extensions="*.pig" mimetype="application/x-pig;text/x-pig" casesensitive="0" author="Johannes Schwenk, johannes.schwenk@adition.com" license="GNU GPL">
+ <highlighting>
+ <list name="keywords">
+ <item> load </item>
+ <item> store </item>
+ <item> filter </item>
+ <item> foreach </item>
+ <item> order </item>
+ <item> arrange </item>
+ <item> distinct </item>
+ <item> cogroup </item>
+ <item> join </item>
+ <item> cross </item>
+ <item> union </item>
+ <item> onschema </item>
+ <item> split </item>
+ <item> into </item>
+ <item> if </item>
+ <item> all </item>
+ <item> any </item>
+ <item> as </item>
+ <item> by </item>
+ <item> using </item>
+ <item> inner </item>
+ <item> outer </item>
+ <item> parallel </item>
+ <item> group </item>
+ <item> continuously </item>
+ <item> window </item>
+ <item> tuples </item>
+ <item> generate </item>
+ <item> eval </item>
+ <item> define </item>
+ <item> returns </item>
+ <item> input </item>
+ <item> output </item>
+ <item> ship </item>
+ <item> cache </item>
+ <item> stream </item>
+ <item> through </item>
+ <item> seconds </item>
+ <item> minutes </item>
+ <item> hours </item>
+ <item> asc </item>
+ <item> desc </item>
+ <item> null </item>
+ <item> left </item>
+ <item> right </item>
+ <item> full </item>
+ </list>
+ <list name="grunts">
+ <item> cat </item>
+ <item> cd </item>
+ <item> cp </item>
+ <item> copyFromLocal </item>
+ <item> copyToLocal </item>
+ <item> define </item>
+ <item> dump </item>
+ <item> illustrate </item>
+ <item> describe </item>
+ <item> explain </item>
+ <item> exec </item>
+ <item> help </item>
+ <item> kill </item>
+ <item> ls </item>
+ <item> mv </item>
+ <item> mkdir </item>
+ <item> pwd </item>
+ <item> quit </item>
+ <item> register </item>
+ <item> import </item>
+ <item> rm </item>
+ <item> set </item>
+ </list>
+ <list name="types">
+ <item> chararray </item>
+ <item> bytearray </item>
+ <item> int </item>
+ <item> long </item>
+ <item> float </item>
+ <item> double </item>
+ <item> tuple </item>
+ <item> bag </item>
+ <item> map </item>
+ </list>
+ <list name="operators">
+ <item> and </item>
+ <item> is </item>
+ <item> not </item>
+ <item> or </item>
+ <item> eq </item>
+ <item> neq </item>
+ <item> gt </item>
+ <item> lt </item>
+ <item> gte </item>
+ <item> lte </item>
+ <item> matches </item>
+ </list>
+ <list name="functions">
+ <item> flatten </item>
+ <item> sum </item>
+ <item> count </item>
+ <item> min </item>
+ <item> max </item>
+ <item> avg </item>
+ <item> arity </item>
+ <item> tokenize </item>
+ <item> diff </item>
+ <item> size </item>
+ <item> concat </item>
+ <item> BinStorage </item>
+ <item> PigStorage </item>
+ <item> TextLoader </item>
+ <item> PigDump </item>
+ <item> IsEmpty </item>
+ </list>
+ <contexts>
+ <context name="Normal" attribute="Normal Text" lineEndContext="#stay">
+ <keyword attribute="Keyword" String="keywords" context="#stay"/>
+ <keyword attribute="Operator" String="operators" context="#stay"/>
+ <keyword attribute="Type" String="types" context="#stay"/>
+ <keyword attribute="Grunt" String="grunts" context="#stay"/>
+ <keyword attribute="Function" String="functions" context="#stay"/>
+ <RegExpr attribute="Statement" String="[%](declare|default)" context="#stay"/>
+ <Float attribute="Float" context="#stay" />
+ <HlCHex attribute="Hex" context="#stay"/>
+ <HlCOct attribute="Octal" context="#stay"/>
+ <Int attribute="Int" context="#stay">
+ <StringDetect attribute="Int" String="L" insensitive="true" context="#stay"/>
+ </Int>
+ <Detect2Chars attribute="Comment" char="/" char1="*" context="Multiline comment" beginRegion="Comment"/>
+ <DetectChar attribute="String" char="'" context="Single A-string"/>
+<!-- <DetectChar attribute="String" char="&quot;" context="Single Q-string"/>-->
+ <Detect2Chars attribute="Comment" char="-" char1='-' context="Dash comment"/>
+ <IncludeRules context="Parameter variable" />
+ </context>
+
+ <context name="Parameter variable" attribute="Normal Text" lineEndContext="#pop">
+ <DetectSpaces />
+ <RegExpr attribute="Parameter" String="[$][a-zA-Z0-9_]+" context="#stay" />
+ </context>
+
+ <context name="Single A-string" attribute="String" lineEndContext="#pop">
+ <IncludeRules context="Parameter variable" />
+ <HlCStringChar attribute="String Char" context="#stay"/>
+ <DetectChar attribute="String" char="'" context="#pop"/>
+ </context>
+
+<!-- <context name="Single Q-string" attribute="String" lineEndContext="#stay">
+ <IncludeRules context="Parameter variable" />
+ <HlCStringChar attribute="String Char" context="#stay"/>
+ <DetectChar attribute="String" char="&quot;" context="#pop"/>
+ </context>-->
+
+ <context name="Dash comment" attribute="Comment" lineEndContext="#pop">
+ <LineContinue attribute="Comment" context="#stay"/>
+ <DetectSpaces />
+ <IncludeRules context="##Alerts_indent" />
+ <DetectIdentifier />
+ </context>
+
+ <context name="Multiline comment" attribute="Comment" lineEndContext="#stay">
+ <DetectSpaces />
+ <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/>
+ <IncludeRules context="##Alerts" />
+ <DetectIdentifier />
+ </context>
+
+
+ </contexts>
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
+ <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
+ <itemData name="Statement" defStyleNum="dsOthers" bold="1" spellChecking="false"/>
+ <itemData name="Operator" defStyleNum="dsNormal" bold="1" spellChecking="false"/>
+ <itemData name="Type" defStyleNum="dsDataType" spellChecking="false"/>
+ <itemData name="Grunt" defStyleNum="dsOthers" color="#BA8200" selColor="#FFFFFF" bold="1" italic="0" spellChecking="false"/>
+ <itemData name="Function" defStyleNum="dsDataType" bold="1" spellChecking="false"/>
+ <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/>
+ <itemData name="Int" defStyleNum="dsDecVal" spellChecking="false"/>
+ <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/>
+ <itemData name="Octal" defStyleNum="dsBaseN" spellChecking="false"/>
+ <itemData name="Comment" defStyleNum="dsComment"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="Parameter" defStyleNum="dsOthers" color="#25A000" selColor="#FFFFFF" spellChecking="false"/>
+ </itemDatas>
+ </highlighting>
+ <general>
+ <folding indentationsensitive="1" />
+ <emptyLines>
+ <emptyLine regexpr="(?:\s+|\s*#.*)"/>
+ </emptyLines>
+ <comments>
+ <comment name="singleLine" start="--" position="afterwhitespace"/>
+ <comment name="multiLine" start="/*" end="*/" region="Comment" />
+ </comments>
+ <keywords casesensitive="0" />
+ </general>
+</language>
diff --git a/kate/data/prolog.xml b/kate/data/prolog.xml
index 2f6e468bf..732048845 100644
--- a/kate/data/prolog.xml
+++ b/kate/data/prolog.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language name="Prolog" version="1.04" kateversion="2.1" section="Sources" extensions="*.prolog" mimetype="text/x-prolog">
+<language name="Prolog" version="1.05" kateversion="2.1" section="Sources" extensions="*.prolog" mimetype="text/x-prolog">
<highlighting>
<list name="keywordl">
<item> abstract </item>
@@ -195,9 +195,11 @@
</context>
<context name="comment" attribute="Comment" lineEndContext="#pop" />
<context name="string" attribute="String" lineEndContext="#stay" >
+ <HlCStringChar attribute="String" context="#stay" />
<DetectChar attribute="String" context="#pop" char="&quot;" />
</context>
<context name="string2" attribute="String" lineEndContext="#stay">
+ <HlCChar attribute="String" context="#stay" />
<DetectChar attribute="String" context="#pop" char="'" />
</context>
<context name="comment region" attribute="Comment" lineEndContext="#stay">
diff --git a/kate/data/qmake.xml b/kate/data/qmake.xml
index d267033c4..821213a14 100644
--- a/kate/data/qmake.xml
+++ b/kate/data/qmake.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
-<language name="QMake" section="Other" extensions="*.pro;*.pri;" mimetype="" version="1.1" kateversion="2.0" author="Milian Wolff (mail@milianw.de)" license="LGPL">
+<language name="QMake" section="Other" extensions="*.pro;*.pri;*.prf;" mimetype="" version="1.2" kateversion="2.0" author="Milian Wolff (mail@milianw.de)" license="LGPL">
<highlighting>
<list name="variables">
@@ -38,6 +38,10 @@
<item>UI_DIR</item>
<item>MOC_DIR</item>
<item>OBJECTS_DIR</item>
+ <item>VPATH</item>
+ <!--TODO: add all items from the right panel on
+ http://doc.qt.nokia.com/stable/qmake-variable-reference.html
+ -->
</list>
<list name="functions">
<item>contains</item>
@@ -120,4 +124,4 @@
</general>
</language>
-<!-- kate: indent-width 2; --> \ No newline at end of file
+<!-- kate: indent-width 2; -->
diff --git a/kate/data/scss.xml b/kate/data/scss.xml
new file mode 100644
index 000000000..918f5c0b3
--- /dev/null
+++ b/kate/data/scss.xml
@@ -0,0 +1,714 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+
+<!--
+
+ Kate SCSS syntax highlighting definition
+ Modified the Kate CSS syntax highlighting definition to support SCSS.
+ This file should be merged with any updates to the normal Kate CCS definition (see note on version numbering in changelog for 1.2.03.0).
+ The latest version of this file can be found at https://gist.github.com/958598
+
+
+ Changelog:
+
+ - Version 1.2.03.1, by Tijn Schuurmans
+ - Added basic support for "@include mixin();"
+ - Clean the indentation to use 4 spaces everywhere
+
+ - Version 1.2.03.0, by Evan Sosenko
+ - Added basic SCSS syntax support (e.g. nesting).
+ - New version numbering: version 1.x.xx.y is for SCSS, where x.xx is forked version of original CSS syntax file, and y is minor revision to SCSS support.
+
+-->
+
+<language name="SCSS" version="2.04" kateversion="2.4" section="Markup" extensions="*.scss" indenter="cstyle"
+ mimetype="text/css" author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL">
+
+ <highlighting>
+ <list name="properties">
+ <!-- CSS2 -->
+ <item> azimuth </item>
+ <item> background </item>
+ <item> background-attachment </item>
+ <item> background-color </item>
+ <item> background-image </item>
+ <item> background-position </item>
+ <item> background-repeat </item>
+ <item> border </item>
+ <item> border-bottom </item>
+ <item> border-bottom-color </item>
+ <item> border-bottom-style </item>
+ <item> border-bottom-width </item>
+ <item> border-collapse </item>
+ <item> border-color </item>
+ <item> border-left </item>
+ <item> border-left-color </item>
+ <item> border-left-style </item>
+ <item> border-left-width </item>
+ <item> border-right </item>
+ <item> border-right-color </item>
+ <item> border-right-style </item>
+ <item> border-right-width </item>
+ <item> border-spacing </item>
+ <item> border-style </item>
+ <item> border-top </item>
+ <item> border-top-color </item>
+ <item> border-top-style </item>
+ <item> border-top-width </item>
+ <item> border-width </item>
+ <item> bottom </item>
+ <item> caption-side </item>
+ <item> clear </item>
+ <item> clip </item>
+ <item> color </item>
+ <item> content </item>
+ <item> counter-increment </item>
+ <item> counter-reset </item>
+ <item> cue </item>
+ <item> cue-after </item>
+ <item> cue-before </item>
+ <item> cursor </item>
+ <item> direction </item>
+ <item> display </item>
+ <item> elevation </item>
+ <item> empty-cells </item>
+ <item> float </item>
+ <item> font </item>
+ <item> font-family </item>
+ <item> font-size </item>
+ <item> font-size-adjust </item>
+ <item> font-stretch </item>
+ <item> font-style </item>
+ <item> font-variant </item>
+ <item> font-weight </item>
+ <item> height </item>
+ <item> left </item>
+ <item> letter-spacing </item>
+ <item> line-height </item>
+ <item> list-style </item>
+ <item> list-style-image </item>
+ <item> list-style-keyword </item>
+ <item> list-style-position </item>
+ <item> list-style-type </item>
+ <item> margin </item>
+ <item> margin-bottom </item>
+ <item> margin-left </item>
+ <item> margin-right </item>
+ <item> margin-top </item>
+ <item> marker-offset </item>
+ <item> max-height </item>
+ <item> max-width </item>
+ <item> min-height </item>
+ <item> min-width </item>
+ <item> orphans </item>
+ <item> outline </item>
+ <item> outline-color </item>
+ <item> outline-style </item>
+ <item> outline-width </item>
+ <item> overflow </item>
+ <item> padding </item>
+ <item> padding-bottom </item>
+ <item> padding-left </item>
+ <item> padding-right </item>
+ <item> padding-top </item>
+ <item> page </item>
+ <item> page-break-after </item>
+ <item> page-break-before </item>
+ <item> page-break-inside </item>
+ <item> pause </item>
+ <item> pause-after </item>
+ <item> pause-before </item>
+ <item> pitch </item>
+ <item> pitch-range </item>
+ <item> play-during </item>
+ <item> position </item>
+ <item> quotes </item>
+ <item> richness </item>
+ <item> right </item>
+ <item> size </item>
+ <item> speak </item>
+ <item> speak-header </item>
+ <item> speak-numeral </item>
+ <item> speak-punctuation </item>
+ <item> speech-rate </item>
+ <item> stress </item>
+ <item> table-layout </item>
+ <item> text-align </item>
+ <item> text-decoration </item>
+ <item> text-decoration-color </item>
+ <item> text-indent </item>
+ <item> text-shadow </item>
+ <item> text-transform </item>
+ <item> top </item>
+ <item> unicode-bidi </item>
+ <item> vertical-align </item>
+ <item> visibility </item>
+ <item> voice-family </item>
+ <item> volume </item>
+ <item> white-space </item>
+ <item> widows </item>
+ <item> width </item>
+ <item> word-spacing </item>
+ <item> z-index </item>
+
+ <!-- CSS3 -->
+ <item> border-bottom-image </item>
+ <item> border-bottom-left-image </item>
+ <item> border-bottom-left-radius </item>
+ <item> border-bottom-right-image </item>
+ <item> border-bottom-right-radius </item>
+ <item> border-corner-image </item>
+ <item> border-image </item>
+ <item> border-left-image </item>
+ <item> border-radius </item>
+ <item> border-right-image </item>
+ <item> border-top-image </item>
+ <item> border-top-left-image </item>
+ <item> border-top-left-radius </item>
+ <item> border-top-right-image </item>
+ <item> border-top-right-radius </item>
+ <item> box-shadow </item>
+ <item> box-sizing </item>
+ <item> opacity </item>
+ <item> outline-offset </item>
+ <item> overflow-x </item>
+ <item> overflow-y </item>
+ <item> text-overflow </item>
+ <item> text-shadow </item>
+
+ <!-- Gecko rendering engine CSS property extensions -->
+ <item> -moz-border-bottom-colors </item>
+ <item> -moz-border-left-colors </item>
+ <item> -moz-border-radius </item>
+ <item> -moz-border-right-colors </item>
+ <item> -moz-border-top-colors </item>
+ <item> -moz-box-flex </item>
+
+ <!-- Opera rendering engine CSS property extensions -->
+ <item> -o-background-size </item>
+ <item> -o-text-overflow </item>
+
+ <!-- konq specific -->
+ <item> -khtml-background-size </item>
+ <item> konq_bgpos_x </item>
+ <item> konq_bgpos_y </item>
+
+ <!-- Webkit rendering engine CSS property extensions -->
+ <item> -webkit-background-size </item>
+
+ <!-- font properties in @font-face -->
+ <item> font-family </item>
+ <item> font-size </item>
+ <item> font-stretch </item>
+ <item> font-style </item>
+ <item> font-variant </item>
+ <item> font-weight </item>
+ <item> unicode-range </item>
+ <item> units-per-em </item>
+ <item> src </item>
+ <item> panose-1 </item>
+ <item> stemv </item>
+ <item> stemh </item>
+ <item> slope </item>
+ <item> cap-height </item>
+ <item> x-height </item>
+ <item> ascent </item>
+ <item> descent </item>
+ <item> widths </item>
+ <item> bbox </item>
+ <item> definition-src </item>
+ <item> baseline </item>
+ <item> centerline </item>
+ <item> mathline </item>
+ <item> topline </item>
+ </list>
+
+ <list name="types">
+ <item> inherit </item>
+ <item> none </item>
+ <item> hidden </item>
+ <item> dotted </item>
+ <item> dashed </item>
+ <item> solid </item>
+ <item> double </item>
+ <item> groove </item>
+ <item> ridge </item>
+ <item> inset </item>
+ <item> outset </item>
+ <item> xx-small </item>
+ <item> x-small </item>
+ <item> small </item>
+ <item> medium </item>
+ <item> large </item>
+ <item> x-large </item>
+ <item> xx-large </item>
+ <item> smaller </item>
+ <item> larger </item>
+ <item> italic </item>
+ <item> oblique </item>
+ <item> small-caps </item>
+ <item> normal </item>
+ <item> bold </item>
+ <item> bolder </item>
+ <item> lighter </item>
+ <item> light </item>
+ <item> 100 </item>
+ <item> 200 </item>
+ <item> 300 </item>
+ <item> 400 </item>
+ <item> 500 </item>
+ <item> 600 </item>
+ <item> 700 </item>
+ <item> 800 </item>
+ <item> 900 </item>
+ <item> transparent </item>
+ <item> repeat </item>
+ <item> repeat-x </item>
+ <item> repeat-y </item>
+ <item> no-repeat </item>
+ <item> baseline </item>
+ <item> sub </item>
+ <item> super </item>
+ <item> top </item>
+ <item> text-top </item>
+ <item> middle </item>
+ <item> bottom </item>
+ <item> text-bottom </item>
+ <item> left </item>
+ <item> right </item>
+ <item> center </item>
+ <item> justify </item>
+ <item> konq-center </item>
+ <item> disc </item>
+ <item> circle </item>
+ <item> square </item>
+ <item> box </item>
+ <item> decimal </item>
+ <item> decimal-leading-zero </item>
+ <item> lower-roman </item>
+ <item> upper-roman </item>
+ <item> lower-greek </item>
+ <item> lower-alpha </item>
+ <item> lower-latin </item>
+ <item> upper-alpha </item>
+ <item> upper-latin </item>
+ <item> hebrew </item>
+ <item> armenian </item>
+ <item> georgian </item>
+ <item> cjk-ideographic </item>
+ <item> hiragana </item>
+ <item> katakana </item>
+ <item> hiragana-iroha </item>
+ <item> katakana-iroha </item>
+ <item> inline </item>
+ <item> inline-block </item>
+ <item> block </item>
+ <item> list-item </item>
+ <item> run-in </item>
+ <item> compact </item>
+ <item> marker </item>
+ <item> table </item>
+ <item> inline-table </item>
+ <item> table-row-group </item>
+ <item> table-header-group </item>
+ <item> table-footer-group </item>
+ <item> table-row </item>
+ <item> table-column-group </item>
+ <item> table-column </item>
+ <item> table-cell </item>
+ <item> table-caption </item>
+ <item> auto </item>
+ <item> crosshair </item>
+ <item> default </item>
+ <item> pointer </item>
+ <item> move </item>
+ <item> e-resize </item>
+ <item> ne-resize </item>
+ <item> nw-resize </item>
+ <item> n-resize </item>
+ <item> se-resize </item>
+ <item> sw-resize </item>
+ <item> s-resize </item>
+ <item> w-resize </item>
+ <item> text </item>
+ <item> wait </item>
+ <item> help </item>
+ <item> above </item>
+ <item> absolute </item>
+ <item> always </item>
+ <item> avoid </item>
+ <item> below </item>
+ <item> bidi-override </item>
+ <item> blink </item>
+ <item> both </item>
+ <item> capitalize </item>
+ <item> caption </item>
+ <item> clip </item>
+ <item> close-quote </item>
+ <item> collapse </item>
+ <item> condensed </item>
+ <item> crop </item>
+ <item> cross </item>
+ <item> ellipsis </item>
+ <item> ellipsis-word </item>
+ <item> embed </item>
+ <item> expanded </item>
+ <item> extra-condensed </item>
+ <item> extra-expanded </item>
+ <item> fixed </item>
+ <item> hand </item>
+ <item> hide </item>
+ <item> higher </item>
+ <item> icon </item>
+ <item> inside </item>
+ <item> invert </item>
+ <item> landscape </item>
+ <item> level </item>
+ <item> line-through </item>
+ <item> loud </item>
+ <item> lower </item>
+ <item> lowercase </item>
+ <item> ltr </item>
+ <item> menu </item>
+ <item> message-box </item>
+ <item> mix </item>
+ <item> narrower </item>
+ <item> no-close-quote </item>
+ <item> no-open-quote </item>
+ <item> nowrap </item>
+ <item> open-quote </item>
+ <item> outside </item>
+ <item> overline </item>
+ <item> portrait </item>
+ <item> pre </item>
+ <item> pre-line </item>
+ <item> pre-wrap </item>
+ <item> relative </item>
+ <item> rtl </item>
+ <item> scroll </item>
+ <item> semi-condensed </item>
+ <item> semi-expanded </item>
+ <item> separate </item>
+ <item> show </item>
+ <item> small-caption </item>
+ <item> static </item>
+ <item> static-position </item>
+ <item> status-bar </item>
+ <item> thick </item>
+ <item> thin </item>
+ <item> ultra-condensed </item>
+ <item> ultra-expanded </item>
+ <item> underline </item>
+ <item> uppercase </item>
+ <item> visible </item>
+ <item> wider </item>
+ <item> break </item>
+ <item> serif </item>
+ <item> sans-serif </item>
+ <item> cursive </item>
+ <item> fantasy </item>
+ <item> monospace </item>
+ <item> border-box </item>
+ <item> content-box </item>
+
+ <!-- Gecko rendering engine CSS value extensions -->
+ <item> -moz-box </item>
+
+ </list>
+
+
+ <list name="colors">
+ <item> aqua </item>
+ <item> black </item>
+ <item> blue </item>
+ <item> cyan </item>
+ <item> fuchsia </item>
+ <item> gray </item>
+ <item> green </item>
+ <item> lime </item>
+ <item> maroon </item>
+ <item> navy </item>
+ <item> olive </item>
+ <item> purple </item>
+ <item> red </item>
+ <item> silver </item>
+ <item> teal </item>
+ <item> white </item>
+ <item> yellow </item>
+ <item> ActiveBorder </item>
+ <item> ActiveCaption </item>
+ <item> AppWorkspace </item>
+ <item> Background </item>
+ <item> ButtonFace </item>
+ <item> ButtonHighlight </item>
+ <item> ButtonShadow </item>
+ <item> ButtonText </item>
+ <item> CaptionText </item>
+ <item> GrayText </item>
+ <item> Highlight </item>
+ <item> HighlightText </item>
+ <item> InactiveBorder </item>
+ <item> InactiveCaption </item>
+ <item> InactiveCaptionText </item>
+ <item> InfoBackground </item>
+ <item> InfoText </item>
+ <item> Menu </item>
+ <item> MenuText </item>
+ <item> Scrollbar </item>
+ <item> ThreeDDarkShadow </item>
+ <item> ThreeDFace </item>
+ <item> ThreeDHighlight </item>
+ <item> ThreeDLightShadow </item>
+ <item> ThreeDShadow </item>
+ <item> Window </item>
+ <item> WindowFrame </item>
+ <item> WindowText </item>
+ </list>
+
+ <list name="paren">
+ <item> url </item>
+ <item> attr </item>
+ <item> rect </item>
+ <item> rgb </item>
+ <item> rgba </item>
+ <item> hsl </item>
+ <item> hsla </item>
+ <item> counter </item>
+ <item> counters </item>
+
+ <!-- in @font-face -->
+ <item> local </item>
+ <item> format </item>
+
+ <!-- Trident (a.k.a., MSHTML) rendering engine functional notation extensions -->
+ <item> expression </item>
+
+ </list>
+
+ <list name="mediatypes">
+ <item> all </item>
+ <item> aural </item>
+ <item> braille </item>
+ <item> embossed </item>
+ <item> handheld </item>
+ <item> print </item>
+ <item> projection </item>
+ <item> screen </item>
+ <item> tty </item>
+ <item> tv </item>
+ </list>
+
+ <list name="pseudoclasses">
+ <item> hover </item>
+ <item> link </item>
+ <item> visited </item>
+ <item> active </item>
+ <item> focus </item>
+ <item> first-child </item>
+ <item> last-child </item>
+ <item> only-child </item>
+ <item> first-of-type </item>
+ <item> last-of-type </item>
+ <item> only-of-type </item>
+ <item> first-letter </item>
+ <item> first-line </item>
+ <item> before </item>
+ <item> after </item>
+ <item> selection </item>
+ <item> root </item>
+ <item> empty </item>
+ <item> target </item>
+ <item> enabled </item>
+ <item> disabled </item>
+ <item> checked </item>
+ <item> indeterminate </item>
+ <item> nth-child </item>
+ <item> nth-last-child </item>
+ <item> nth-of-type </item>
+ <item> nth-last-of-type </item>
+ <item> not </item>
+ </list>
+
+ <contexts>
+ <context attribute="Normal Text" lineEndContext="#stay" name="Base">
+ <LineContinue/>
+ <DetectSpaces/>
+ <IncludeRules context="FindRuleSets" />
+ </context>
+
+ <!-- to be included -->
+ <!-- finds rules and detects nesting -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="FindRuleSets">
+ <RegExpr attribute="Media" context="Media" String="@media\b" />
+ <RegExpr attribute="At Rule" context="Import" String="@import\b" />
+ <RegExpr attribute="At Rule" context="Include" String="@include\b" />
+ <RegExpr attribute="At Rule" context="#stay" String="@(font-face|charset)\b" />
+ <RegExpr attribute="Variable" context="#stay" String="\$[^:]*" />
+ <DetectChar attribute="Property" context="RuleSet" char="{" beginRegion="ruleset" />
+ <!--parse selectors-->
+ <DetectChar attribute="Selector Attr" context="SelAttr" char="[" />
+ <RegExpr attribute="Selector Id" context="#stay" String="#([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
+ <RegExpr attribute="Selector Class" context="#stay" String="\.([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
+ <RegExpr attribute="Selector Pseudo" context="#stay" String=":lang\([\w_-]+\)" />
+ <DetectChar attribute="Selector Pseudo" context="SelPseudo" char=":" />
+ <IncludeRules context="FindStrings" />
+ <IncludeRules context="FindComments" />
+ </context>
+
+ <!-- finds arguments to properties -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="FindValues">
+ <RegExpr attribute="Value" context="#stay" String="[-+]?[0-9.]+(em|ex|px|in|cm|mm|pt|pc|deg|rad|grad|ms|s|Hz|kHz)\b" />
+ <RegExpr attribute="Value" context="#stay" String="[-+]?[0-9.]+[%]?" />
+ <RegExpr attribute="Normal Text" context="#stay" String="[\w\-]+" />
+ </context>
+
+ <!-- finds strings -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="FindStrings">
+ <DetectChar attribute="String" context="StringDQ" char="&quot;" />
+ <DetectChar attribute="String" context="StringSQ" char="'" />
+ </context>
+
+ <!-- finds comments -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="FindComments">
+ <RegExpr attribute="Region Marker" context="#stay" String="/\*BEGIN.*\*/" beginRegion="UserDefined" />
+ <RegExpr attribute="Region Marker" context="#stay" String="/\*END.*\*/" endRegion="UserDefined" />
+ <Detect2Chars attribute="Comment" context="Comment" char="/" char1="*" beginRegion="comment" />
+ <Detect2Chars attribute="Comment" context="sassComment" char="/" char1="/" beginRegion="sassComment" />
+ </context>
+
+ <!-- other contexts -->
+ <context attribute="Normal Text" lineEndContext="#stay" name="Media">
+ <DetectChar attribute="Media" context="Media2" char="{" beginRegion="media" />
+ <keyword attribute="Media" context="#stay" String="mediatypes" />
+ <DetectChar attribute="Media" context="#stay" char="," />
+ <IncludeRules context="FindComments" />
+ <RegExpr attribute="Error" context="#stay" String="\S+" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Media2">
+ <DetectChar attribute="Media" context="#pop#pop" char="}" endRegion="media" />
+ <IncludeRules context="FindRuleSets" />
+ </context>
+
+ <context attribute="Selector Attr" lineEndContext="#stay" name="SelAttr">
+ <DetectChar attribute="Selector Attr" context="#pop" char="]" />
+ <IncludeRules context="FindStrings" />
+ </context>
+
+ <context attribute="Selector Pseudo" lineEndContext="#pop" name="SelPseudo" fallthrough="true" fallthroughContext="#pop">
+ <keyword attribute="Selector Pseudo" context="#pop" String="pseudoclasses" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Import">
+ <DetectChar attribute="At Rule" context="#pop" char=";" />
+ <keyword attribute="Media" context="#stay" String="mediatypes" />
+ <IncludeRules context="FindValues" />
+ <IncludeRules context="FindStrings" />
+ <IncludeRules context="FindComments" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Include">
+ <DetectChar attribute="At Rule" context="#pop" char=";" />
+ <IncludeRules context="FindValues" />
+ <IncludeRules context="FindStrings" />
+ <IncludeRules context="FindComments" />
+ <keyword attribute="Value" context="PropParen" String="paren" />
+ </context>
+
+ <context attribute="Comment" lineEndContext="#pop" name="sassComment">
+ </context>
+
+ <context attribute="Comment" lineEndContext="#stay" name="Comment">
+ <DetectSpaces/>
+ <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="comment" />
+ <IncludeRules context="##Alerts" />
+ <DetectIdentifier/>
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="RuleSet">
+ <DetectChar attribute="Property" context="RuleSet" char="{" beginRegion="ruleset" />
+ <IncludeRules context="FindRuleSets" />
+ <DetectChar attribute="Property" context="#pop" char="}" endRegion="ruleset" />
+ <keyword attribute="Property" context="Rule" String="properties" />
+ <RegExpr attribute="Unknown Property" context="Rule" String="-?[A-Za-z_-]+(?=\s*:)" />
+ <IncludeRules context="FindComments" />
+ <!-- <RegExpr attribute="Error" context="#stay" String="\S" /> -->
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Rule">
+ <DetectChar attribute="Property" context="Rule2" char=":" />
+ <RegExpr attribute="Error" context="#stay" String="\S" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="Rule2">
+ <DetectChar attribute="Property" context="#pop#pop" char=";" />
+ <DetectChar attribute="Property" context="#pop#pop#pop" char="}" endRegion="ruleset" />
+ <!-- parse property values -->
+ <keyword attribute="Value" context="#stay" String="types" />
+ <keyword attribute="Value" context="#stay" String="colors" />
+ <RegExpr attribute="Value" context="#stay" String="#([0-9A-Fa-f]{3}){1,4}\b" />
+ <keyword attribute="Value" context="PropParen" String="paren" />
+ <RegExpr attribute="Variable" context="#stay" String="\$[^;]*" />
+ <RegExpr attribute="Important" context="#stay" String="!important\b" />
+ <IncludeRules context="FindValues" />
+ <IncludeRules context="FindStrings" />
+ <IncludeRules context="FindComments" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="PropParen">
+ <DetectChar attribute="Value" context="PropParen2" char="(" />
+ <IncludeRules context="FindComments" />
+ <RegExpr attribute="Error" context="#stay" String="\S" />
+ </context>
+
+ <context attribute="Normal Text" lineEndContext="#stay" name="PropParen2">
+ <DetectChar attribute="Value" context="#pop#pop" char=")" />
+ <IncludeRules context="FindValues" />
+ <IncludeRules context="FindStrings" />
+ <IncludeRules context="FindComments" />
+ </context>
+
+ <!-- string contexts -->
+ <context attribute="String" lineEndContext="#stay" name="StringDQ">
+ <DetectChar attribute="String" context="#pop" char="&quot;" />
+ <IncludeRules context="InsideString" />
+ </context>
+
+ <context attribute="String" lineEndContext="#stay" name="StringSQ">
+ <DetectChar attribute="String" context="#pop" char="'" />
+ <IncludeRules context="InsideString" />
+ </context>
+
+ <context attribute="String" lineEndContext="#stay" name="InsideString">
+ <RegExpr attribute="String" context="#stay" String="\\[&quot;']" />
+ <DetectIdentifier/>
+ </context>
+
+ </contexts>
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
+ <itemData name="Property" defStyleNum="dsKeyword" spellChecking="false"/>
+ <itemData name="Unknown Property" defStyleNum="dsKeyword" italic="1" spellChecking="false"/>
+ <itemData name="Media" defStyleNum="dsDecVal" bold="1" spellChecking="false"/>
+ <itemData name="At Rule" defStyleNum="dsDecVal" spellChecking="false"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="Value" defStyleNum="dsDataType" spellChecking="false"/>
+ <itemData name="Important" defStyleNum="dsKeyword" spellChecking="false"/>
+ <itemData name="Selector Attr" defStyleNum="dsChar" spellChecking="false"/>
+ <itemData name="Selector Id" defStyleNum="dsFloat" bold="1" spellChecking="false"/>
+ <itemData name="Selector Class" defStyleNum="dsFloat" spellChecking="false"/>
+ <itemData name="Selector Pseudo" defStyleNum="dsDecVal" spellChecking="false"/>
+ <itemData name="Comment" defStyleNum="dsComment" />
+ <itemData name="Region Marker" defStyleNum="dsRegionMarker" spellChecking="false"/>
+ <itemData name="Alert" defStyleNum="dsAlert" spellChecking="false"/>
+ <itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
+ <itemData name="Variable" defStyleNum="dsNormal" spellChecking="false"/>
+ </itemDatas>
+ </highlighting>
+ <general>
+ <keywords casesensitive="0" weakDeliminator="-%"/>
+ <comments>
+ <comment name="multiLine" start="/*" end="*/" />
+ </comments>
+ </general>
+</language>