diff options
Diffstat (limited to 'kate/data/wml.xml')
-rw-r--r-- | kate/data/wml.xml | 203 |
1 files changed, 203 insertions, 0 deletions
diff --git a/kate/data/wml.xml b/kate/data/wml.xml new file mode 100644 index 000000000..277893e26 --- /dev/null +++ b/kate/data/wml.xml @@ -0,0 +1,203 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<!-- + Thread for discussions: http://www.wesnoth.org/forum/viewtopic.php?f=21&t=13781 + Alternatively try the "normal" way: #kate@freenode, kwrite-devel@kde.org + Changelog (0.35 and later): + *************************** +* 0.41 + - 2011-04-15 <shadowm2006@gmail.com>: + * Added preprocessor directives: #if(n)have, #if(n)ver + * Revalidated against language.dtd + +* 0.40 + - 2010-06-13 <devel@the-user.org>: + * Added lua-highlighting between << and >>. + * Added pango-highlighting between " and " + * Folding for macro-strings between paretheses + * Changed colors. + * This file is licensed under GPLv2+ + +* 0.37 + - 2008-03-29 <shadowm2006@gmail.com>: + * WML preprocessor directive (define, if) blocks can be collapsed/expanded + * attribute_name = "string" WML constructs (note the space surrounding '=') are recognized too + (designed considering the mainline about.cfg structure case + * Changed various context names and styles + +- 2008-03-21 <shadowm2006@gmail.com>: + * WML nodes and multiline preprocessing macro/include blocks can be collapsed/expanded + * WML nodes that are opened and closed in a single line are properly highlighted now + * 0.36 + - 2008-03-05 <shadowm2006@gmail.com>: + * Added wmlscope to list of utility control commands + + * 0.35 + - 2008-02-23 <shadowm2006@gmail.com>: + * Made it possible to comment/uncomment line(s) using the default + CTRL-D / CTRL-SHIFT-D shortcuts + - 2008-01-27 <shadowm2006@gmail.com>: + * Added the *.pbl file name pattern + * Made the standard alerts (i.e. TODO, HACK, FIXME,...) be highlighted too + * Made the key comments for Wesnoth's mainline maintenance scripts be highlighted (at the moment + they are only used for wmllint and wmlindent) + - 2008-01-?? <shadowm2006@gmail.com>: + * Made #textdomain another preprocessor directive, as is handled by the game at /src/serialization/preprocessor.cpp + line 634 and around + - 2007-11-?? <shadowm2006@gmail.com>: + * Minor improvements? + - 2007-11-?? <shadowm2006@gmail.com>: + * Made the new #ifndef directive be recognized (implemented on Wesnoth 1.3.11 and later) +--> + +<language name="Wesnoth Markup Language" section="Markup" extensions="*.cfg;*.pbl;*.CFG;*.PBL" version="0.41" + kateversion="2.5" casesensitive="true" author="Zachary Palmer (zep01@bahj.com), modif. by Ignacio Riquelme Morelle (shadowm2006@gmail.com) and Jonathan Schmidt-Dominé (devel@the-user.org)" license="GPL"> + <highlighting> + <list name="alerts_wml_utils"> + <item> wmllint</item> + <item> wmlindent</item> + <item> wmlscope</item> + </list> + <list name="preprocessor_directive_statements"> + <item>#textdomain</item> + <item>#else</item> + <item>#undef</item> + </list> + <list name="preprocessor_block_begin_statements"> + <item>#define</item> + <item>#ifdef</item> + <item>#ifndef</item> + <item>#ifhave</item> + <item>#ifnhave</item> + <item>#ifver</item> + <item>#ifnver</item> + </list> + <list name="preprocessor_block_end_statements"> + <item>#enddef</item> + <item>#endif</item> + </list> + <contexts> + <!-- Main contexts --> + <context attribute="Normal WML Text" name="text" lineEndContext="#stay"> + <RegExpr String="(_ *)?"" attribute="String" context="string" /> + + <RegExpr String=" *<<" attribute="String" context="luastring" beginRegion="wml_lua" /> + + <keyword String="preprocessor_directive_statements" attribute="Preprocessor" context="preprocessor" /> + <keyword String="preprocessor_block_begin_statements" attribute="Preprocessor" context="preprocessor" beginRegion="wmlpp_block" /> + <keyword String="preprocessor_block_end_statements" attribute="Preprocessor" context="preprocessor" endRegion="wmlpp_block" /> + + <DetectChar char="#" attribute="Comment" context="comment" /> + + <DetectChar char="{" attribute="Macro/Include" context="macro" beginRegion="macro_block" /> + + <!--<DetectChar char="[" attribute="WML Node" context="section" firstNonSpace="true" />--> + <RegExpr String="\[(?!/)" attribute="WML Node" context="section" beginRegion="wml_node" /> + <RegExpr String="\[/" attribute="WML Node" context="section" endRegion="wml_node" /> + + <RegExpr String="(\w|,| )+=" attribute="WML Attribute" context="value" + lookAhead="true" /> + + <IncludeRules context="variableSubstitutionRule" /> + </context> + + <context attribute="String" lineEndContext="#stay" name="string"> + <DetectChar char=""" attribute="String" context="#pop" /> + <DetectChar char="{" attribute="Macro/Include" context="macro" /> + <IncludeRules context="variableSubstitutionRule" /> + <IncludeRules context="##Pango" includeAttrib="false"/> + </context> + + <context attribute="String" name="luastring" lineEndContext="#stay"> + <RegExpr String=">>" attribute="String" context="#pop" endRegion="wml_lua" /> + <IncludeRules context="##Lua" includeAttrib="true"/> + </context> + + <context attribute="Macro String" name="luamacrostring" lineEndContext="#stay"> + <RegExpr String=">>" attribute="Macro String" context="#pop" endRegion="wml_lua" /> + <IncludeRules context="##Lua" includeAttrib="true"/> + </context> + + <context attribute="Comment" lineEndContext="#pop" name="comment"> + <keyword attribute="Maintenance script statement" context="#stay" String="alerts_wml_utils" /> + <IncludeRules context="##Alerts" /> + </context> + + <context attribute="Macro/Include" lineEndContext="#stay" name="macro"> + <DetectChar char="{" attribute="Macro/Include" context="macro" beginRegion="macro_block"/> + <RegExpr String="(_ *)?"" attribute="Macro String" context="macroString" /> + <RegExpr String=" *<<" attribute="Macro String" context="luamacrostring" beginRegion="wml_lua" /> + <DetectChar char="(" attribute="Macro String" context="macroString2" beginRegion="macro_paren_string" /> + <DetectChar char="}" attribute="Macro/Include" context="#pop" endRegion="macro_block" /> + <IncludeRules context="variableSubstitutionRule" /> + </context> + + <context attribute="Macro String" lineEndContext="#stay" name="macroString"> + <DetectChar char=""" attribute="Macro String" context="#pop" /> + <DetectChar char="{" attribute="Macro/Include" context="macro" beginRegion="macro_block" /> + <IncludeRules context="variableSubstitutionRule" /> + <IncludeRules context="##Pango" includeAttrib="false"/> + </context> + + <context attribute="Macro String" lineEndContext="#stay" name="macroString2"> + <DetectChar char=")" attribute="Macro String" context="#pop" endRegion="macro_paren_string" /> + <DetectChar char="{" attribute="Macro/Include" context="macro" beginRegion="macro_block" /> + <IncludeRules context="text" /> + </context> + + <context attribute="WML Node" lineEndContext="error" name="section"> + <DetectChar char="]" attribute="WML Node" context="#pop" /> + </context> + + <context attribute="WML Attribute" lineEndContext="#pop" name="value"> + <DetectChar char="=" attribute="Normal WML Text" context="#pop" /> + </context> + + <context attribute="Preprocessor" lineEndContext="#pop" name="preprocessor"> + </context> + + <context attribute="Error" lineEndContext="#pop" name="error"> + </context> + + <context attribute="Variable Substitution" lineEndContext="#pop" + name="variableSubstitution"> + <DetectChar char="|" attribute="Variable Substitution" context="#pop" /> + <DetectChar char="$" attribute="Variable Substitution" context="variableSubstitution" /> + <DetectChar char="[" attribute="Variable Subscript" context="variableSubscript" /> + <RegExpr String="[^A-Za-z0-9_\.]" attribute="Variable Substitution" context="#pop" + lookAhead="true" /> + </context> + + <context attribute="Variable Subscript" lineEndContext="error" name="variableSubscript"> + <DetectChar char="]" attribute="Variable Subscript" context="#pop" /> + </context> + + <!-- Include contexts --> + <context attribute="Variable Substitution" lineEndContext="#pop" name="variableSubstitutionRule"> + <DetectChar char="$" attribute="Variable Substitution" context="variableSubstitution" /> + </context> + + </contexts> + <itemDatas> + <itemData name="Normal WML Text" defStyleNum="dsNormal" /> + <itemData name="Normal Text" defStyleNum="dsString" /> <!--For Pango--> + <itemData name="Maintenance script statement" defStyleNum="dsAlert"/> + <itemData name="String" defStyleNum="dsString" /> + <itemData name="Comment" defStyleNum="dsComment" /> + <itemData name="Macro/Include" defStyleNum="dsFunction" /> + <itemData name="WML Node" defStyleNum="dsKeyword" /> + <itemData name="WML Attribute" defStyleNum="dsDataType" /> + <itemData name="Preprocessor" defStyleNum="dsOthers" /> + <itemData name="Error" defStyleNum="dsError" /> + <itemData name="Macro String" defStyleNum="dsChar" /> + <itemData name="Variable Substitution" defStyleNum="dsDecVal" /> + <itemData name="Variable Subscript" defStyleNum="dsBaseN" /> + </itemDatas> + </highlighting> + <general> + <comments> + <comment name="singleLine" start="#"/> + </comments> + <keywords casesensitive="1"/> + </general> +</language> |