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.
144 lines
6.3 KiB
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="""/>
|
|
<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="+*=%$():\;"/>
|
|
<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="""/>
|
|
</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=";" 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>
|