1 | <?php |
---|
2 | /************************************************************************************* |
---|
3 | * falcon.php |
---|
4 | * --------------------------------- |
---|
5 | * Author: billykater (billykater+geshi@gmail.com) |
---|
6 | * Copyright: (c) 2010 billykater (http://falconpl.org/) |
---|
7 | * Release Version: 1.0.9.0 |
---|
8 | * Date Started: 2010/06/07 |
---|
9 | * |
---|
10 | * Falcon language file for GeSHi. |
---|
11 | * |
---|
12 | * CHANGES |
---|
13 | * ------- |
---|
14 | * <2010/8/1> (1.0.8.10) |
---|
15 | * - First Release |
---|
16 | * |
---|
17 | ************************************************************************************* |
---|
18 | * |
---|
19 | * This file is part of GeSHi. |
---|
20 | * |
---|
21 | * GeSHi is free software; you can redistribute it and/or modify |
---|
22 | * it under the terms of the GNU General Public License as published by |
---|
23 | * the Free Software Foundation; either version 2 of the License, or |
---|
24 | * (at your option) any later version. |
---|
25 | * |
---|
26 | * GeSHi is distributed in the hope that it will be useful, |
---|
27 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
28 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
29 | * GNU General Public License for more details. |
---|
30 | * |
---|
31 | * You should have received a copy of the GNU General Public License |
---|
32 | * along with GeSHi; if not, write to the Free Software |
---|
33 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
---|
34 | * ************************************************************************************/ |
---|
35 | |
---|
36 | $language_data = array ( |
---|
37 | 'LANG_NAME' => 'Falcon', |
---|
38 | 'COMMENT_SINGLE' => array( 1 => '//' ), |
---|
39 | 'COMMENT_MULTI' => array( '/*' => '*/' ), |
---|
40 | 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, |
---|
41 | 'QUOTEMARKS' => array( "'", '"' ), |
---|
42 | 'ESCAPE_CHAR' => '\\', |
---|
43 | 'KEYWORDS' => array( |
---|
44 | 1 => array( |
---|
45 | 'break','case','catch','class','const','continue','def','default', |
---|
46 | 'dropping','elif','else','end','enum','for','forfirst','forlast', |
---|
47 | 'formiddle','from','function','global','if','init','innerfunc', |
---|
48 | 'launch','loop','object','raise','return','select','state','static', |
---|
49 | 'switch','try','while' |
---|
50 | ), |
---|
51 | 2 => array( |
---|
52 | 'false','nil','true', |
---|
53 | ), |
---|
54 | 3 => array( |
---|
55 | 'and','as','eq','fself','in','not','notin','or','provides','self','to' |
---|
56 | ), |
---|
57 | 4 => array( |
---|
58 | 'directive','export','import','load','macro' |
---|
59 | ), |
---|
60 | 5 => array( |
---|
61 | 'ArrayType','BooleanType','ClassMethodType','ClassType','DictionaryType', |
---|
62 | 'FunctionType','MemBufType','MethodType','NilType','NumericType','ObjectType', |
---|
63 | 'RangeType','StringType','LBindType' |
---|
64 | ), |
---|
65 | 6 => array( |
---|
66 | "CurrentTime","IOStream","InputStream","MemBufFromPtr","OutputStream", |
---|
67 | "PageDict","ParseRFC2822","abs","acos","all", |
---|
68 | "allp","any","anyp","argd","argv", |
---|
69 | "arrayAdd","arrayBuffer","arrayCompact","arrayDel","arrayDelAll", |
---|
70 | "arrayFill","arrayFind","arrayHead","arrayIns","arrayMerge", |
---|
71 | "arrayNM","arrayRemove","arrayResize","arrayScan","arraySort", |
---|
72 | "arrayTail","asin","assert","atan","atan2", |
---|
73 | "attributes","baseClass","beginCritical","bless","brigade", |
---|
74 | "broadcast","cascade","ceil","choice","chr", |
---|
75 | "className","clone","combinations","compare","consume", |
---|
76 | "cos","deg2rad","deoob","derivedFrom","describe", |
---|
77 | "deserialize","dictBack","dictBest","dictClear","dictFill", |
---|
78 | "dictFind","dictFront","dictGet","dictKeys","dictMerge", |
---|
79 | "dictRemove","dictSet","dictValues","dirChange","dirCurrent", |
---|
80 | "dirMake","dirMakeLink","dirReadLink","dirRemove","dolist", |
---|
81 | "endCritical","epoch","eval","exit","exp", |
---|
82 | "factorial","fileChgroup","fileChmod","fileChown","fileCopy", |
---|
83 | "fileExt","fileMove","fileName","fileNameMerge","filePath", |
---|
84 | "fileRemove","fileType","fileUnit","filter","fint", |
---|
85 | "firstOf","floop","floor","fract","getAssert", |
---|
86 | "getEnviron","getProperty","getSlot","getSystemEncoding","getenv", |
---|
87 | "iff","include","input","inspect","int", |
---|
88 | "isBound","isCallable","isoob","lbind","len", |
---|
89 | "let","lit","log","map","max", |
---|
90 | "metaclass","min","numeric","oob","ord", |
---|
91 | "paramCount","paramIsRef","paramSet","parameter","passvp", |
---|
92 | "permutations","pow","print","printl","properties", |
---|
93 | "rad2deg","random","randomChoice","randomDice","randomGrab", |
---|
94 | "randomPick","randomSeed","randomWalk","readURI","reduce", |
---|
95 | "retract","round","seconds","serialize","set", |
---|
96 | "setProperty","setenv","sin","sleep","stdErr", |
---|
97 | "stdErrRaw","stdIn","stdInRaw","stdOut","stdOutRaw", |
---|
98 | "strBack","strBackFind","strBackTrim","strBuffer","strCmpIgnoreCase", |
---|
99 | "strEndsWith","strEscape","strEsq","strFill","strFind", |
---|
100 | "strFromMemBuf","strFront","strFrontTrim","strLower","strMerge", |
---|
101 | "strReplace","strReplicate","strSplit","strSplitTrimmed","strStartsWith", |
---|
102 | "strToMemBuf","strTrim","strUnescape","strUnesq","strUpper", |
---|
103 | "strWildcardMatch","subscribe","systemErrorDescription","tan","times", |
---|
104 | "toString","transcodeFrom","transcodeTo","typeOf","unsetenv", |
---|
105 | "unsubscribe","valof","vmFalconPath","vmIsMain","vmModuleName", |
---|
106 | "vmModuleVersionInfo","vmSearchPath","vmSystemType","vmVersionInfo","vmVersionName", |
---|
107 | "writeURI","xmap","yield","yieldOut" |
---|
108 | ), |
---|
109 | 7 => array( |
---|
110 | "AccessError","Array","BOM","Base64","Class", |
---|
111 | "ClassMethod","CloneError","CmdlineParser","CodeError","Continuation", |
---|
112 | "Dictionary","Directory","Error","FileStat","Format", |
---|
113 | "Function","GarbagePointer","GenericError","Integer","InterruptedError", |
---|
114 | "IoError","Iterator","LateBinding","List","MathError", |
---|
115 | "MemoryBuffer","MessageError","Method","Numeric","Object", |
---|
116 | "ParamError","ParseError","Path","Range","Semaphore", |
---|
117 | "Sequence","Set","Stream","String","StringStream", |
---|
118 | "SyntaxError","Table","TableError","TimeStamp","TimeZone", |
---|
119 | "Tokenizer","TypeError","URI","VMSlot" |
---|
120 | ), |
---|
121 | 8 => array( |
---|
122 | "args","scriptName","scriptPath" |
---|
123 | ), |
---|
124 | 9 => array( |
---|
125 | "GC" |
---|
126 | ), |
---|
127 | ), |
---|
128 | 'URLS' => array( |
---|
129 | 1 => '', |
---|
130 | 2 => '', |
---|
131 | 3 => '', |
---|
132 | 4 => '', |
---|
133 | 5 => 'http://falconpl.org/project_docs/core/functions.html#typeOf', |
---|
134 | 6 => 'http://falconpl.org/project_docs/core/functions.html#{FNAME}', |
---|
135 | 7 => 'http://falconpl.org/project_docs/core/class_{FNAME}.html', |
---|
136 | 8 => 'http://falconpl.org/project_docs/core/globals.html#{FNAME}', |
---|
137 | 9 => 'http://falconpl.org/project_docs/core/object_{FNAME}.html)' |
---|
138 | ), |
---|
139 | 'CASE_SENSITIVE' => array( |
---|
140 | GESHI_COMMENTS => false, |
---|
141 | 1 => true, |
---|
142 | 2 => true, |
---|
143 | 3 => true, |
---|
144 | 4 => true, |
---|
145 | 5 => true, |
---|
146 | 6 => true, |
---|
147 | 7 => true, |
---|
148 | 8 => true, |
---|
149 | 9 => true |
---|
150 | ), |
---|
151 | 'SYMBOLS' => array( |
---|
152 | '(',')','$','%','&','/','{','[',']','=','}','?','+','-','#','*','@', |
---|
153 | '<','>','|',',',':',';','\\','^' |
---|
154 | ), |
---|
155 | 'REGEXPS' => array( |
---|
156 | 0 => array( |
---|
157 | GESHI_SEARCH => '(\[)([a-zA-Z_]|\c{C})(?:[a-zA-Z0-9_]|\p{C})*(\])', |
---|
158 | GESHI_REPLACE => '\\2', |
---|
159 | GESHI_MODIFIERS => '', |
---|
160 | GESHI_BEFORE => '\\1', |
---|
161 | GESHI_AFTER => '\\3', |
---|
162 | |
---|
163 | ), |
---|
164 | ), |
---|
165 | 'STRICT_MODE_APPLIES' => GESHI_MAYBE, |
---|
166 | 'SCRIPT_DELIMITERS' => array( |
---|
167 | 0 => array( '<?' => '?>' ) |
---|
168 | ), |
---|
169 | 'HIGHLIGHT_STRICT_BLOCK' => array( |
---|
170 | 0 => true |
---|
171 | ), |
---|
172 | 'STYLES' => array( |
---|
173 | 'KEYWORDS' => array( |
---|
174 | 1 => 'color: #000080;font-weight:bold;', |
---|
175 | 2 => 'color: #800000;font-weight:bold;', |
---|
176 | 3 => 'color: #800000;font-weight:bold;', |
---|
177 | 4 => 'color: #000080;font-weight:bold;', |
---|
178 | 5 => 'color: #000000;font-weight:bold;', |
---|
179 | 6 => 'font-weight:bold;', |
---|
180 | 7 => 'font-weight:bold;', |
---|
181 | 8 => 'font-weight:bold;' |
---|
182 | ), |
---|
183 | 'COMMENTS' => array( |
---|
184 | 1 => 'color: #29B900;', |
---|
185 | 'MULTI' => 'color: #008080' |
---|
186 | ), |
---|
187 | 'STRINGS' => array( |
---|
188 | 0 => 'color: #800000' |
---|
189 | ), |
---|
190 | 'BRACKETS' => array( |
---|
191 | 0 => 'color: #000000' |
---|
192 | ), |
---|
193 | 'ESCAPE_CHAR' => array( |
---|
194 | 0 => 'color: #800000' |
---|
195 | ), |
---|
196 | 'NUMBERS' => array( |
---|
197 | 0 => 'color: #000000' |
---|
198 | ), |
---|
199 | 'METHODS' => array( |
---|
200 | 0 => 'color: #000000' |
---|
201 | ), |
---|
202 | 'SYMBOLS' => array( |
---|
203 | 0 => 'color: #8B0513' |
---|
204 | ), |
---|
205 | 'SCRIPT' => array( |
---|
206 | 0 => '' |
---|
207 | ), |
---|
208 | 'REGEXPS' => array( |
---|
209 | 0 => 'color: #FF00FF' |
---|
210 | ) |
---|
211 | ), |
---|
212 | |
---|
213 | 'OOLANG' => true, |
---|
214 | 'OBJECT_SPLITTERS' => array( |
---|
215 | '.' |
---|
216 | ) |
---|
217 | ); |
---|