1<?php
2/*************************************************************************************
3 * teraterm.php
4 * --------
5 * Author: Boris Maisuradze (boris at logmett.com)
6 * Copyright: (c) 2008 Boris Maisuradze (http://logmett.com)
7 * Release Version: 1.0.9.1
8 * Date Started: 2008/09/26
9 *
10 * Tera Term Macro language file for GeSHi.
11 *
12 *
13 * This version of teraterm.php was created for Tera Term 4.62 and LogMeTT 2.9.4.
14 * Newer versions of these application can contain additional Macro commands
15 * and/or keywords that are not listed here. The latest release of teraterm.php
16 * can be downloaded from Download section of LogMeTT.com
17 *
18 * CHANGES
19 * -------
20 * 2008/09/26 (1.0.0)
21 *   -  First Release for Tera Term 4.60 and below.
22 * 2009/03/22 (1.1.0)
23 *   -  First Release for Tera Term 4.62 and below.
24 * 2009/04/25 (1.1.1)
25 *   -  Second Release for Tera Term 4.62 and below.
26 * 2010/09/12 (1.1.2)
27 *   -  Second Release for Tera Term 4.67, LogMeTT 2.97, TTLEditor 1.2.1 and below.
28 *
29 * TODO (updated 2010/09/12)
30 * -------------------------
31 * *
32 *
33 *************************************************************************************
34 *
35 *     This file is part of GeSHi.
36 *
37 *   GeSHi is free software; you can redistribute it and/or modify
38 *   it under the terms of the GNU General Public License as published by
39 *   the Free Software Foundation; either version 2 of the License, or
40 *   (at your option) any later version.
41 *
42 *   GeSHi is distributed in the hope that it will be useful,
43 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
44 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
45 *   GNU General Public License for more details.
46 *
47 *   You should have received a copy of the GNU General Public License
48 *   along with GeSHi; if not, write to the Free Software
49 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
50 *
51 ************************************************************************************/
52
53$language_data = array (
54    'LANG_NAME' => 'Tera Term Macro',
55    'COMMENT_SINGLE' => array(1 => ';'),
56    'COMMENT_MULTI' => array(),
57    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
58    'QUOTEMARKS' => array("'", '"'),
59    'ESCAPE_CHAR' => '',
60    'KEYWORDS' => array(
61        /* Commands */
62        1 => array(
63            'Beep',
64            'BplusRecv',
65            'BplusSend',
66            'Break',
67            'Call',
68            'CallMenu',
69            'ChangeDir',
70            'ClearScreen',
71            'Clipb2Var',
72            'ClosesBox',
73            'CloseTT',
74            'Code2Str',
75            'Connect',
76            'CRC32',
77            'CRC32File',
78            'CygConnect',
79            'DelPassword',
80            'Disconnect',
81            'DispStr',
82            'Do',
83            'Else',
84            'ElseIf',
85            'EnableKeyb',
86            'End',
87            'EndIf',
88            'EndUntil',
89            'EndWhile',
90            'Exec',
91            'ExecCmnd',
92            'Exit',
93            'FileClose',
94            'FileConcat',
95            'FileCopy',
96            'FileCreate',
97            'FileDelete',
98            'FileMarkPtr',
99            'FileNameBox',
100            'FileOpen',
101            'FileRead',
102            'FileReadln',
103            'FileRename',
104            'FileSearch',
105            'FileSeek',
106            'FileSeekBack',
107            'FileStat',
108            'FileStrSeek',
109            'FileStrSeek2',
110            'FileTruncate',
111            'FileWrite',
112            'FileWriteLn',
113            'FindClose',
114            'FindFirst',
115            'FindNext',
116            'FlushRecv',
117            'For',
118            'GetDate',
119            'GetDir',
120            'GetEnv',
121            'GetHostname',
122            'GetPassword',
123            'GetTime',
124            'GetTitle',
125            'GetTTDir',
126            'Getver',
127            'GoTo',
128            'If',
129            'IfDefined',
130            'Include',
131            'InputBox',
132            'Int2Str',
133            'KmtFinish',
134            'KmtGet',
135            'KmtRecv',
136            'KmtSend',
137            'LoadKeymap',
138            'LogClose',
139            'LogOpen',
140            'LogPause',
141            'LogStart',
142            'LogWrite',
143            'Loop',
144            'MakePath',
145            'MessageBox',
146            'MPause',
147            'Next',
148            'PasswordBox',
149            'Pause',
150            'QuickVANRecv',
151            'QuickVANSend',
152            'Random',
153            'RecvLn',
154            'RestoreSetup',
155            'Return',
156            'RotateLeft',
157            'RotateRight',
158            'ScpRecv',
159            'ScpSend',
160            'Send',
161            'SendBreak',
162            'SendBroadcast',
163            'SendFile',
164            'SendKCode',
165            'SendLn',
166            'SendLnBroadcast',
167            'SendMulticast',
168            'SetBaud',
169            'SetDate',
170            'SetDebug',
171            'SetDir',
172            'SetDlgPos',
173            'SetDTR',
174            'SetEcho',
175            'SetEnv',
176            'SetExitCode',
177            'SetMulticastName',
178            'SetRTS',
179            'SetSync',
180            'SetTime',
181            'SetTitle',
182            'Show',
183            'ShowTT',
184            'SPrintF',
185            'SPrintF2',
186            'StatusBox',
187            'Str2Code',
188            'Str2Int',
189            'StrCompare',
190            'StrConcat',
191            'StrCopy',
192            'StrInsert',
193            'StrJoin',
194            'StrLen',
195            'StrMatch',
196            'StrRemove',
197            'StrReplace',
198            'StrScan',
199            'StrSpecial',
200            'StrSplit',
201            'StrTrim',
202            'TestLink',
203            'Then',
204            'ToLower',
205            'ToUpper',
206            'UnLink',
207            'Until',
208            'Var2Clipb',
209            'Wait',
210            'Wait4All',
211            'WaitEvent',
212            'WaitLn',
213            'WaitN',
214            'WaitRecv',
215            'WaitRegEx',
216            'While',
217            'XmodemRecv',
218            'XmodemSend',
219            'YesNoBox',
220            'YmodemRecv',
221            'YmodemSend',
222            'ZmodemRecv',
223            'ZmodemSend'
224            ),
225        /* System Variables */
226        2 => array(
227            'groupmatchstr1',
228            'groupmatchstr2',
229            'groupmatchstr3',
230            'groupmatchstr4',
231            'groupmatchstr5',
232            'groupmatchstr6',
233            'groupmatchstr7',
234            'groupmatchstr8',
235            'groupmatchstr9',
236            'inputstr',
237            'matchstr',
238            'mtimeout',
239            'param2',
240            'param3',
241            'param4',
242            'param5',
243            'param6',
244            'param7',
245            'param8',
246            'param9',
247            'result',
248            'timeout'
249            ),
250        /* LogMeTT Key Words */
251        3 => array(
252            '$[1]',
253            '$[2]',
254            '$[3]',
255            '$[4]',
256            '$[5]',
257            '$[6]',
258            '$[7]',
259            '$[8]',
260            '$[9]',
261            '$branch$',
262            '$computername$',
263            '$connection$',
264            '$email$',
265            '$logdir$',
266            '$logfilename$',
267            '$lttfilename$',
268            '$mobile$',
269            '$name$',
270            '$pager$',
271            '$parent$',
272            '$phone$',
273            '$snippet$',
274            '$ttdir$',
275            '$user$',
276            '$windir$',
277        ),
278        /* Keyword Symbols */
279        4 => array(
280            'and',
281            'not',
282            'or',
283            'xor'
284            )
285        ),
286    'SYMBOLS' => array(
287        '(', ')', '[', ']', '{', '}',
288        '+', '-', '*', '/', '%',
289        '!', '&', '|', '^',
290        '<', '>', '=',
291        '?', ':', ';',
292        ),
293    'CASE_SENSITIVE' => array(
294        GESHI_COMMENTS => false,
295        1 => false,
296        2 => false,
297        3 => false,
298        4 => false
299        ),
300    'STYLES' => array(
301        'KEYWORDS' => array(
302            1 => 'color: #000080; font-weight: bold!important;',
303            2 => 'color: #808000; font-weight: bold;',  // System Variables
304            3 => 'color: #ff0000; font-weight: bold;',  // LogMeTT Key Words
305            4 => 'color: #ff00ff; font-weight: bold;'   // Keyword Symbols
306            ),
307        'COMMENTS' => array(
308            1 => 'color: #008000; font-style: italic;',
309            ),
310        'ESCAPE_CHAR' => array(),
311        'BRACKETS' => array(
312            0 => 'color: #ff00ff; font-weight: bold;'
313        ),
314        'STRINGS' => array(
315            0 => 'color: #800080;'
316            ),
317        'NUMBERS' => array(
318            0 => 'color: #008080;'
319            ),
320        'SCRIPT' => array(
321            ),
322        'METHODS' => array(
323            ),
324        'SYMBOLS' => array(
325            0 => 'color: #ff00ff; font-weight: bold;'
326            ),
327        'REGEXPS' => array(
328            0 => 'color: #0000ff; font-weight: bold;'
329            )
330        ),
331    'URLS' => array(
332        1 => '',
333        2 => '',
334        3 => '',
335        4 => ''
336        ),
337    'OOLANG' => false,
338    'OBJECT_SPLITTERS' => array(),
339    'REGEXPS' => array(
340        0 => array (
341            GESHI_SEARCH => '(\:[_a-zA-Z][_a-zA-Z0-9]+)',
342            GESHI_REPLACE => '\\1',
343            GESHI_MODIFIERS => '',
344            GESHI_BEFORE => '',
345            GESHI_AFTER => ''
346            )
347        ),
348    'STRICT_MODE_APPLIES' => GESHI_NEVER,
349    'SCRIPT_DELIMITERS' => array(),
350    'HIGHLIGHT_STRICT_BLOCK' => array(),
351    'TAB_WIDTH' => 4
352);
353