]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/makefile.xml
3f4fae75e332b041518ac8168391e9f6f34f7d4f
[factor.git] / basis / xmode / modes / makefile.xml
1 <?xml version="1.0"?>\r
2 \r
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">\r
4 \r
5 <MODE>\r
6         <PROPS>\r
7                 <PROPERTY NAME="lineComment" VALUE="#" />\r
8         </PROPS>\r
9         <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
10                 <!-- Comment -->\r
11                 <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
12 \r
13                 <!-- Function calls -->\r
14                 <SPAN_REGEXP TYPE="FUNCTION" HASH_CHAR="$" DELEGATE="MAIN">\r
15                         <BEGIN>\$\([a-zA-Z][\w-]* </BEGIN>\r
16                         <END>)</END>\r
17                 </SPAN_REGEXP>\r
18 \r
19                 <!-- $(...) variables -->\r
20                 <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
21                         <BEGIN>$(</BEGIN>\r
22                         <END>)</END>\r
23                 </SPAN>\r
24                 <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
25                         <BEGIN>${</BEGIN>\r
26                         <END>}</END>\r
27                 </SPAN>\r
28 \r
29                 <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
30 \r
31                 <!-- Literals -->\r
32                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
33                         <BEGIN>"</BEGIN>\r
34                         <END>"</END>\r
35                 </SPAN>\r
36                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
37                         <BEGIN>'</BEGIN>\r
38                         <END>'</END>\r
39                 </SPAN>\r
40                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
41                         <BEGIN>`</BEGIN>\r
42                         <END>`</END>\r
43                 </SPAN>\r
44 \r
45                 <SEQ TYPE="OPERATOR">=</SEQ>\r
46                 <SEQ TYPE="OPERATOR">:=</SEQ>\r
47                 <SEQ TYPE="OPERATOR">+=</SEQ>\r
48                 <SEQ TYPE="OPERATOR">?=</SEQ>\r
49 \r
50                 <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
51 \r
52                 <KEYWORDS>\r
53                         <KEYWORD1>subst</KEYWORD1>\r
54                         <KEYWORD1>addprefix</KEYWORD1>\r
55                         <KEYWORD1>addsuffix</KEYWORD1>\r
56                         <KEYWORD1>basename</KEYWORD1>\r
57                         <KEYWORD1>dir</KEYWORD1>\r
58                         <KEYWORD1>filter</KEYWORD1>\r
59                         <KEYWORD1>filter-out</KEYWORD1>\r
60                         <KEYWORD1>findstring</KEYWORD1>\r
61                         <KEYWORD1>firstword</KEYWORD1>\r
62                         <KEYWORD1>foreach</KEYWORD1>\r
63                         <KEYWORD1>join</KEYWORD1>\r
64                         <KEYWORD1>notdir</KEYWORD1>\r
65                         <KEYWORD1>origin</KEYWORD1>\r
66                         <KEYWORD1>patsubst</KEYWORD1>\r
67                         <KEYWORD1>shell</KEYWORD1>\r
68                         <KEYWORD1>sort</KEYWORD1>\r
69                         <KEYWORD1>strip</KEYWORD1>\r
70                         <KEYWORD1>suffix</KEYWORD1>\r
71                         <KEYWORD1>wildcard</KEYWORD1>\r
72                         <KEYWORD1>word</KEYWORD1>\r
73                         <KEYWORD1>words</KEYWORD1>\r
74                         <KEYWORD1>ifeq</KEYWORD1>\r
75             <KEYWORD1>ifneq</KEYWORD1>\r
76             <KEYWORD1>else</KEYWORD1>\r
77             <KEYWORD1>endif</KEYWORD1>\r
78             <KEYWORD1>define</KEYWORD1>\r
79             <KEYWORD1>endef</KEYWORD1>\r
80             <KEYWORD1>ifdef</KEYWORD1>\r
81             <KEYWORD1>ifndef</KEYWORD1>\r
82                 </KEYWORDS>\r
83 \r
84         </RULES>\r
85 \r
86         <RULES SET="VARIABLE" ESCAPE="\" IGNORE_CASE="FALSE"\r
87                 DEFAULT="KEYWORD2">\r
88                 <!-- Comment -->\r
89                 <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
90 \r
91                 <!-- $(...) variables -->\r
92                 <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
93                         <BEGIN>$(</BEGIN>\r
94                         <END>)</END>\r
95                 </SPAN>\r
96                 <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
97                         <BEGIN>${</BEGIN>\r
98                         <END>}</END>\r
99                 </SPAN>\r
100         </RULES>\r
101 </MODE>\r