]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/tex.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / tex.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <MODE>
6         <PROPS>
7                 <PROPERTY NAME="lineComment" VALUE="%" />
8                 <PROPERTY NAME="wordBreakChars" VALUE="{}" />
9         </PROPS>
10         <RULES IGNORE_CASE="FALSE">
11                 <!-- $$...$$ -->
12                 <SPAN TYPE="MARKUP" DELEGATE="MATH">
13                         <BEGIN>$$</BEGIN>
14                         <END>$$</END>
15                 </SPAN>
16
17                 <!-- $...$ -->
18                 <SPAN TYPE="MARKUP" DELEGATE="MATH">
19                         <BEGIN>$</BEGIN>
20                         <END>$</END>
21                 </SPAN>
22
23                 <!-- \[...\] (LaTeX math mode) -->
24                 <SPAN TYPE="MARKUP" DELEGATE="MATH">
25                         <BEGIN>\[</BEGIN>
26                         <END>\]</END>
27                 </SPAN>
28
29                 <!-- some commands must be handled specially -->
30                 <SEQ TYPE="KEYWORD1">\$</SEQ>
31                 <SEQ TYPE="KEYWORD1">\\</SEQ>
32                 <SEQ TYPE="KEYWORD1">\%</SEQ>
33
34                 <!-- \iffalse ... \fi - a block comment -->
35                 <SPAN TYPE="COMMENT1">
36                         <BEGIN>\iffalse</BEGIN>
37                         <END>\fi</END>
38                 </SPAN>
39
40                 <!-- \begin{verbatim} ... \end{verbatim} -->
41                 <SPAN TYPE="KEYWORD1" DELEGATE="VERBATIM">
42                         <BEGIN>\begin{verbatim}</BEGIN>
43                         <END>\end{verbatim}</END>
44                 </SPAN>
45
46                 <!-- \verb|sometext| -->
47                 <SPAN TYPE="KEYWORD1" DELEGATE="VERBATIM"
48                         NO_LINE_BREAK="TRUE">
49                         <BEGIN>\verb|</BEGIN>
50                         <END>|</END>
51                 </SPAN>
52                 <!-- \... commands -->
53                 <MARK_FOLLOWING TYPE="KEYWORD1">\</MARK_FOLLOWING>
54
55                 <!-- comments -->
56                 <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>
57
58                 <!-- word separators -->
59                 <SEQ TYPE="OPERATOR">{</SEQ>
60                 <SEQ TYPE="OPERATOR">}</SEQ>
61                 <SEQ TYPE="OPERATOR">[</SEQ>
62                 <SEQ TYPE="OPERATOR">]</SEQ>
63         </RULES>
64
65         <RULES SET="MATH" DEFAULT="MARKUP">
66                 <!-- some commands must be handled specially -->
67                 <SEQ TYPE="KEYWORD3">\$</SEQ>
68                 <SEQ TYPE="KEYWORD3">\\</SEQ>
69                 <SEQ TYPE="KEYWORD3">\%</SEQ>
70
71                 <!-- \... commands -->
72                 <MARK_FOLLOWING TYPE="KEYWORD3">\</MARK_FOLLOWING>
73
74                 <!-- word separators -->
75                 <SEQ TYPE="KEYWORD2">)</SEQ>
76                 <SEQ TYPE="KEYWORD2">(</SEQ>
77                 <SEQ TYPE="KEYWORD2">{</SEQ>
78                 <SEQ TYPE="KEYWORD2">}</SEQ>
79                 <SEQ TYPE="KEYWORD2">[</SEQ>
80                 <SEQ TYPE="KEYWORD2">]</SEQ>
81                 <SEQ TYPE="KEYWORD2">=</SEQ>
82                 <SEQ TYPE="KEYWORD2">!</SEQ>
83                 <SEQ TYPE="KEYWORD2">+</SEQ>
84                 <SEQ TYPE="KEYWORD2">-</SEQ>
85                 <SEQ TYPE="KEYWORD2">/</SEQ>
86                 <SEQ TYPE="KEYWORD2">*</SEQ>
87                 <SEQ TYPE="KEYWORD2">&gt;</SEQ>
88                 <SEQ TYPE="KEYWORD2">&lt;</SEQ>
89                 <SEQ TYPE="KEYWORD2">&amp;</SEQ>
90                 <SEQ TYPE="KEYWORD2">|</SEQ>
91                 <SEQ TYPE="KEYWORD2">^</SEQ>
92                 <SEQ TYPE="KEYWORD2">~</SEQ>
93                 <SEQ TYPE="KEYWORD2">.</SEQ>
94                 <SEQ TYPE="KEYWORD2">,</SEQ>
95                 <SEQ TYPE="KEYWORD2">;</SEQ>
96                 <SEQ TYPE="KEYWORD2">?</SEQ>
97                 <SEQ TYPE="KEYWORD2">:</SEQ>
98                 <SEQ TYPE="KEYWORD2">'</SEQ>
99                 <SEQ TYPE="KEYWORD2">"</SEQ>
100                 <SEQ TYPE="KEYWORD2">`</SEQ>
101
102                 <!-- comments -->
103                 <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>
104         </RULES>
105
106         <RULES SET="VERBATIM" DEFAULT="NULL" />
107 </MODE>