KXStudio Website https://kx.studio/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

218 lines
8.6KB

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