diff options
Diffstat (limited to 'kate/data/mergetagtext.xml')
-rw-r--r-- | kate/data/mergetagtext.xml | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/kate/data/mergetagtext.xml b/kate/data/mergetagtext.xml new file mode 100644 index 000000000..83b14a31b --- /dev/null +++ b/kate/data/mergetagtext.xml @@ -0,0 +1,145 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<!-- + Copyright 2008 Diggory Hardy + + Author: Diggory Hardy <[email protected]> + + This contains highlighting for mergetag text files, a sub-part of the mde project. + dsource.org/projects/mde + + ********************************************************************** + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * + * * + * You should have received a copy of the GNU Lesser General Public * + * License along with this library; if not, write to the * + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * + * Boston, MA 02110-1301, USA. * + ********************************************************************** + --> +<language name="mergetag text" version="0.1" kateversion="2.5" section="Configuration" author="Diggory Hardy ([email protected])" license="LGPL" extensions="*.mtt;"> + <highlighting> + <contexts> + <context name="Normal" attribute="Error" lineEndContext="#stay"> + <DetectSpaces /> + <Detect2Chars attribute="Comment Brackets" context="SecComment" char="!" char1="{" beginRegion="SecComment" /> + <Detect2Chars attribute="Comment Brackets" context="TagCommentType" char="!" char1="<" /> + <DetectChar attribute="Brackets" context="SectionIdentifier" char="{" beginRegion="SecID" /> + <DetectChar attribute="Tag Character" context="TagType" char="<" /> + </context> + + <context name="SectionIdentifier" attribute="ID" lineEndContext="#stay"> + <DetectChar attribute="Brackets" context="#pop" char="}" endRegion="SecID" /> + </context> + + <context name="SecComment" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment Brackets" context="#pop" char="}" endRegion="SecComment" /> + <DetectChar attribute="Comment Brackets" context="SecComment" char="{" beginRegion="SecID" /> + </context> + + <context name="TagType" attribute="Type" lineEndContext="#stay"> + <DetectChar attribute="Tag Character" context="TagID" char="|" /> + <IncludeRules context="TagErrors" /> + </context> + <context name="TagID" attribute="ID" lineEndContext="#stay"> + <DetectChar attribute="Tag Character" context="TagData" char="=" /> + <IncludeRules context="TagErrors" /> + </context> + <context name="TagData" attribute="Normal Text" lineEndContext="#stay"> + <DetectChar attribute="Tag Character" context="#pop#pop#pop" char=">" /> + + <DetectChar attribute="Char" context="CharLiteral" char="'"/> + <DetectChar attribute="String" context="String" char="""/> + <!-- Number literals --> + <Float attribute="Float" context="#stay" /> + <RegExpr attribute="Binary" context="#pop" String="0[bB][01]+"/> + <RegExpr attribute="Octal" context="#pop" String="0[oO][0-7]+"/> + <HlCHex attribute="Hex" context="#stay"/> + <Int attribute="Integer" context="#stay" /> + + <IncludeRules context="TagErrors" /> + </context> + <context name="TagErrors" attribute="Normal Text" lineEndContext="#stay"> + <DetectChar attribute="Error" context="#stay" char="<" /> + <DetectChar attribute="Error" context="#stay" char="|" /> + <DetectChar attribute="Error" context="#stay" char="=" /> + <DetectChar attribute="Error" context="#stay" char=">" /> + </context> + + <context name="TagCommentType" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment Brackets" context="TagCommentID" char="|" /> + <IncludeRules context="TagErrors" /> + </context> + <context name="TagCommentID" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment Brackets" context="TagCommentData" char="=" /> + <IncludeRules context="TagErrors" /> + </context> + <context name="TagCommentData" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment Brackets" context="#pop#pop#pop" char=">" /> + <DetectChar attribute="Comment" context="CommentChar" char="'"/> + <DetectChar attribute="Comment" context="CommentString" char="""/> + <IncludeRules context="TagErrors" /> + </context> + <context name="CommentString" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment" context="#pop" char=""" /> + <RegExpr String="\\." attribute="Comment" context="#stay"/> + </context> + <context name="CommentChar" attribute="Comment" lineEndContext="#stay"> + <DetectChar attribute="Comment" context="#pop" char="'" /> + <RegExpr String="\\." attribute="Comment" context="#stay"/> + </context> + + <!-- 'char' --> + <context name="CharLiteral" attribute="Char" lineEndContext="CharLiteralClosing" fallthrough="true" fallthroughContext="#pop"> + <!-- Empty '' --> + <DetectChar attribute="Char" context="#pop" char="'"/> + <HlCStringChar attribute="EscapeSequence" context="CharLiteralClosing"/> + <RegExpr attribute="Char" context="CharLiteralClosing" String="."/> + </context> + <!-- Anything other than a closing ' is now be an error --> + <context name="CharLiteralClosing" attribute="Error" lineEndContext="#pop#pop" fallthrough="true" fallthroughContext="#pop#pop"> + <DetectChar attribute="Char" context="#pop#pop" char="'"/> + </context> + <!-- "string" --> + <context name="String" attribute="String" lineEndContext="#stay"> + <HlCStringChar attribute="EscapeSequence"/> + <DetectChar attribute="String" context="#pop" char="""/> + </context> + </contexts> + + <itemDatas> + <itemData name="Brackets" defStyleNum="dsKeyword"/> + <itemData name="Tag Character" defStyleNum="dsKeyword" color="#008040"/> + <itemData name="Type" defStyleNum="dsDataType"/> + <itemData name="Error" defStyleNum="dsError"/> + <itemData name="Comment Brackets" defStyleNum="dsComment" italic="0" color="#404040" /> + <itemData name="Comment" defStyleNum="dsComment"/> + <itemData name="Normal Text" defStyleNum="dsNormal"/> + <itemData name="ID" defStyleNum="dsOthers"/> + + <itemData name="Integer" defStyleNum="dsDecVal"/> + <itemData name="Binary" defStyleNum="dsBaseN"/> + <itemData name="Octal" defStyleNum="dsBaseN"/> + <itemData name="Hex" defStyleNum="dsBaseN"/> + <itemData name="Float" defStyleNum="dsFloat"/> + + <itemData name="EscapeSequence" defStyleNum="dsString" color="#00aa88" selColor="#ff0000"/> + <itemData name="String" defStyleNum="dsString"/> + <itemData name="Char" defStyleNum="dsChar"/> + </itemDatas> + </highlighting> + <general> + <comments> + <comment name="multiLine" start="!{" end="}" region="SecComment"/> + </comments> + <keywords casesensitive="true" /> + </general> +</language> |