1 <?xml version="1.0"?>
\r
3 <!-- @RisingSun//XML//1.0//EN________________________________________________
\r
5 JEdit syntax mode for Io
\r
7 ..........................................................................
\r
10 Description : JEdit syntax file for the Io programming language
\r
11 Related links : <http://www.iolanguage.com>, <http://www.jedit.org>
\r
13 ..........................................................................
\r
14 Author : Sébastien Pierre <spierre@type-z.org>
\r
15 ..........................................................................
\r
17 Creation date : 05-May-2003
\r
18 Last revision : 19-May-2003
\r
21 19-May-2003 Added primitives highlighting.
\r
22 05-May-2003 First release
\r
24 ..................................................................... -->
\r
26 <!-- ________________________________________________________D O C T Y P E -->
\r
27 <!DOCTYPE MODE SYSTEM "xmode.dtd">
\r
29 <!-- ____________________________________________D O C U M E N T _ R O O T -->
\r
32 <!-- Properties_______________________________________________________ -->
\r
35 <PROPERTY NAME="commentStart" VALUE="/*" />
\r
36 <PROPERTY NAME="commentStart" VALUE="*/" />
\r
37 <PROPERTY NAME="lineComment" VALUE="#" />
\r
38 <!-- FIXME: There may be a problem with this redefinition of
\r
40 <PROPERTY NAME="lineComment" VALUE="//" />
\r
41 <PROPERTY NAME="indentOpenBrackets" VALUE="(" />
\r
42 <PROPERTY NAME="indentCloseBrackets" VALUE=")" />
\r
45 <!-- Rules____________________________________________________________ -->
\r
47 <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
\r
49 <!-- Comments_____________________________________________________ -->
\r
51 <!-- Shell-like comments -->
\r
52 <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>
\r
55 <!-- C-like comments -->
\r
56 <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>
\r
57 <SPAN TYPE="COMMENT1">
\r
62 <!-- Strings______________________________________________________ -->
\r
64 <!-- Single quotes -->
\r
65 <SPAN TYPE="LITERAL2">
\r
70 <!-- Triple quotes -->
\r
71 <SPAN TYPE="LITERAL2">
\r
76 <!-- Operatiors___________________________________________________ -->
\r
78 <SEQ TYPE="OPERATOR">`</SEQ>
\r
79 <SEQ TYPE="OPERATOR">~</SEQ>
\r
80 <SEQ TYPE="OPERATOR">@</SEQ>
\r
81 <SEQ TYPE="OPERATOR">@@</SEQ>
\r
82 <SEQ TYPE="OPERATOR">$</SEQ>
\r
83 <SEQ TYPE="OPERATOR">%</SEQ>
\r
84 <SEQ TYPE="OPERATOR">^</SEQ>
\r
85 <SEQ TYPE="OPERATOR">&</SEQ>
\r
86 <SEQ TYPE="OPERATOR">*</SEQ>
\r
87 <SEQ TYPE="OPERATOR">-</SEQ>
\r
88 <SEQ TYPE="OPERATOR">+</SEQ>
\r
89 <SEQ TYPE="OPERATOR">/</SEQ>
\r
90 <SEQ TYPE="OPERATOR">=</SEQ>
\r
91 <SEQ TYPE="OPERATOR">{</SEQ>
\r
92 <SEQ TYPE="OPERATOR">}</SEQ>
\r
93 <SEQ TYPE="OPERATOR">[</SEQ>
\r
94 <SEQ TYPE="OPERATOR">]</SEQ>
\r
95 <SEQ TYPE="OPERATOR">|</SEQ>
\r
96 <SEQ TYPE="OPERATOR">\</SEQ>
\r
97 <SEQ TYPE="OPERATOR">>=</SEQ>
\r
98 <SEQ TYPE="OPERATOR"><=</SEQ>
\r
99 <SEQ TYPE="OPERATOR">?</SEQ>
\r
101 <!-- Keywords_____________________________________________________ -->
\r
105 <!-- Io primitives -->
\r
106 <KEYWORD1>Block</KEYWORD1>
\r
107 <KEYWORD1>Buffer</KEYWORD1>
\r
108 <KEYWORD1>CFunction</KEYWORD1>
\r
109 <KEYWORD1>Date</KEYWORD1>
\r
110 <KEYWORD1>Duration</KEYWORD1>
\r
111 <KEYWORD1>File</KEYWORD1>
\r
112 <KEYWORD1>Future</KEYWORD1>
\r
113 <KEYWORD1>List</KEYWORD1>
\r
114 <KEYWORD1>LinkedList</KEYWORD1>
\r
115 <KEYWORD1>Map</KEYWORD1>
\r
116 <KEYWORD1>Nop</KEYWORD1>
\r
117 <KEYWORD1>Message</KEYWORD1>
\r
118 <KEYWORD1>Nil</KEYWORD1>
\r
119 <KEYWORD1>Number</KEYWORD1>
\r
120 <KEYWORD1>Object</KEYWORD1>
\r
121 <KEYWORD1>String</KEYWORD1>
\r
122 <KEYWORD1>WeakLink</KEYWORD1>
\r
124 <!-- Io lambda-like primitives -->
\r
125 <KEYWORD1>block</KEYWORD1>
\r
126 <KEYWORD1>method</KEYWORD1>
\r
128 <!-- Io control primitives -->
\r
129 <KEYWORD2>while</KEYWORD2>
\r
130 <KEYWORD2>foreach</KEYWORD2>
\r
131 <KEYWORD2>if</KEYWORD2>
\r
132 <KEYWORD2>else</KEYWORD2>
\r
133 <KEYWORD2>do</KEYWORD2>
\r
135 <!-- Io basic messages -->
\r
136 <KEYWORD3>super</KEYWORD3>
\r
137 <KEYWORD3>self</KEYWORD3>
\r
138 <KEYWORD3>clone</KEYWORD3>
\r
139 <KEYWORD3>proto</KEYWORD3>
\r
140 <KEYWORD3>setSlot</KEYWORD3>
\r
141 <KEYWORD3>hasSlot</KEYWORD3>
\r
142 <KEYWORD3>type</KEYWORD3>
\r
143 <KEYWORD3>write</KEYWORD3>
\r
144 <KEYWORD3>print</KEYWORD3>
\r
145 <KEYWORD3>forward</KEYWORD3>
\r
153 <!-- EOF-UNIX/iso-8895-1__________________________@RisingSun//XML//1.0//EN -->
\r