You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdelibs/kate/data/makefile.xml

144 lines
6.3 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!-- Makefile syntaxfile v0.9 by Per Wigren <wigren@home.se> -->
<!-- Modified by Joseph Wenninger <jowenn@kde.org> -->
<!-- Modified by Rui Santana <santana.rui@gmail.com> -->
<!-- small priority to allow for example Makefile.cpp to be detected as cpp file -->
<language name="Makefile" version="1.12" kateversion="2.4" section="Other" extensions="GNUmakefile;Makefile;makefile;GNUmakefile.*;Makefile.*;makefile.*" mimetype="text/x-makefile" author="Per Wigren (wigren@home.se)" license="">
<highlighting>
<list name = "keywords">
<item> include </item>
<item> define </item>
<item> else </item>
<item> endef </item>
<item> endif </item>
<item> ifdef </item>
<item> ifeq </item>
<item> ifndef </item>
<item> ifneq </item>
</list>
<list name = "functions">
<item> call </item>
<item> subst </item>
<item> patsubst </item>
<item> strip </item>
<item> findstring </item>
<item> filter </item>
<item> filter-out </item>
<item> sort </item>
<item> word </item>
<item> wordlist </item>
<item> words </item>
<item> firstword </item>
<item> lastword </item>
<item> dir </item>
<item> notdir </item>
<item> suffix </item>
<item> basename </item>
<item> addsuffix </item>
<item> addprefix </item>
<item> join </item>
<item> wildcard </item>
<item> realpath </item>
<item> abspath </item>
<item> if </item>
<item> or </item>
<item> and </item>
<item> foreach </item>
<item> value </item>
<item> eval </item>
<item> origin </item>
<item> flavor </item>
<item> shell </item>
<item> error </item>
<item> warning </item>
<item> info </item>
</list>
<contexts>
<context name="Normal" attribute="Normal Text" lineEndContext="#stay">
<keyword attribute="Keyword" context="#stay" String="keywords"/>
<RegExpr attribute="Variable" context="Value" String="[_\w\d]*\s*(?=:=|=|\+=|\?=)"/>
<RegExpr attribute="Target" context="#stay" String="[_\w\d-]*\s*:" firstNonSpace="true"/>
<RegExpr attribute="Section" context="#stay" String="^[.].*:"/>
<DetectChar attribute="String" context="String" char="&quot;"/>
<Detect2Chars attribute="Operator" context="VarFromNormal{" char="$" char1="{"/>
<Detect2Chars attribute="Operator" context="VarFromNormal(" char="$" char1="("/>
<Detect2Chars attribute="Special" context="#stay" char="\" char1="#"/>
<Detect2Chars attribute="Special" context="#stay" char="\" char1="\"/>
<AnyChar attribute="Operator" context="#stay" String="+*=%$():\&#059;"/>
<AnyChar attribute="Operator" context="Commands" String="@-" firstNonSpace="true"/>
<RegExpr attribute="Comment" context="#stay" String="#.*$"/>
</context>
<context attribute="String" lineEndContext="#pop" name="String">
<LineContinue attribute="String" context="#stay"/>
<DetectChar attribute="String" context="#pop" char="&quot;"/>
</context>
<context name="Value" attribute="String" lineEndContext="#pop">
<LineContinue attribute="Operator"/>
<Detect2Chars attribute="Operator" context="VarFromValue{" char="$" char1="{"/>
<Detect2Chars attribute="Operator" context="VarFromValue(" char="$" char1="("/>
<RegExpr attribute="Special" context="#pop" String="@[-_\d\w]*@" />
<DetectChar attribute="Operator" char="&#059;" context="#pop"/>
</context>
<context name="VarFromValue(" attribute="Variable" lineEndContext="#stay">
<DetectChar attribute="Operator" char=")" context="#pop"/>
</context>
<context name="VarFromValue{" attribute="Variable" lineEndContext="#stay">
<DetectChar attribute="Operator" char="}" context="#pop"/>
</context>
<context name="VarFromNormal(" attribute="Variable" lineEndContext="#stay">
<keyword attribute="Keyword" context="FunctionCall(" String="functions"/>
<DetectChar attribute="Operator" char=")" context="#pop"/>
</context>
<context name="VarFromNormal{" attribute="Variable" lineEndContext="#stay">
<keyword attribute="Keyword" context="FunctionCall{" String="functions"/>
<DetectChar attribute="Comment" char="}" context="#pop"/>
</context>
<context name="FunctionCall(" attribute="String" lineEndContext="#stay">
<Detect2Chars attribute="Operator" context="VarFromNormal{" char="$" char1="{"/>
<Detect2Chars attribute="Operator" context="VarFromNormal(" char="$" char1="("/>
<DetectChar attribute="Operator" char=")" context="#pop#pop"/>
</context>
<context name="FunctionCall{" attribute="String" lineEndContext="#stay">
<Detect2Chars attribute="Operator" context="VarFromNormal{" char="$" char1="{"/>
<Detect2Chars attribute="Operator" context="VarFromNormal(" char="$" char1="("/>
<DetectChar attribute="Operator" char="}" context="#pop#pop"/>
</context>
<context name="Commands" attribute="Normal Text" lineEndContext="#pop">
<Detect2Chars attribute="Operator" context="VarFromNormal{" char="$" char1="{"/>
<Detect2Chars attribute="Operator" context="VarFromNormal(" char="$" char1="("/>
<RegExpr attribute="Commands" context="#pop" String="[_\w-]*\b"/>
</context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal"/>
<itemData name="Keyword" defStyleNum="dsKeyword"/>
<itemData name="Comment" defStyleNum="dsComment"/>
<itemData name="String" defStyleNum="dsString"/>
<itemData name="Variable" defStyleNum="dsDataType"/>
<itemData name="Target" defStyleNum="dsDecVal"/>
<itemData name="Section" defStyleNum="dsOthers"/>
<itemData name="Operator" defStyleNum="dsChar"/>
<itemData name="Commands" defStyleNum="dsBaseN"/>
<itemData name="Special" defStyleNum="dsFloat"/>
</itemDatas>
</highlighting>
<general>
<comments>
<comment name = "singleLine" start = "#"/>
</comments>
<keywords casesensitive = "1" />
</general>
</language>