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.

154 lines
5.7KB

  1. <?php
  2. /*************************************************************************************
  3. * oxygene.php
  4. * ----------
  5. * Author: Carlo Kok (ck@remobjects.com), J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
  6. * Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
  7. * Release Version: 1.0.8.11
  8. * Date Started: 2010/01/11
  9. *
  10. * Delphi Prism (Oxygene) language file for GeSHi.
  11. * Based on the original Delphi language file.
  12. *
  13. * CHANGES
  14. * -------
  15. * 2012/06/28 (1.0.8.11)
  16. * - Added "write" keyword for properties
  17. * 2010/01/11 (1.0.0)
  18. * - First Release
  19. *
  20. *************************************************************************************
  21. *
  22. * This file is part of GeSHi.
  23. *
  24. * GeSHi is free software; you can redistribute it and/or modify
  25. * it under the terms of the GNU General Public License as published by
  26. * the Free Software Foundation; either version 2 of the License, or
  27. * (at your option) any later version.
  28. *
  29. * GeSHi is distributed in the hope that it will be useful,
  30. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  31. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  32. * GNU General Public License for more details.
  33. *
  34. * You should have received a copy of the GNU General Public License
  35. * along with GeSHi; if not, write to the Free Software
  36. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  37. *
  38. ************************************************************************************/
  39. $language_data = array (
  40. 'LANG_NAME' => 'Oxygene (Delphi Prism)',
  41. 'COMMENT_SINGLE' => array(1 => '//'),
  42. 'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'),
  43. //Compiler directives
  44. 'COMMENT_REGEXP' => array(2 => '/{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'),
  45. 'CASE_KEYWORDS' => 0,
  46. 'QUOTEMARKS' => array("'"),
  47. 'ESCAPE_CHAR' => '',
  48. 'KEYWORDS' => array(
  49. 1 => array(
  50. 'and', 'begin', 'case', 'const', 'div', 'do', 'downto', 'else',
  51. 'end', 'for', 'function', 'if', 'in', 'mod', 'not', 'of', 'or',
  52. 'procedure', 'repeat', 'record', 'set', 'shl', 'shr', 'then', 'to',
  53. 'type', 'until', 'uses', 'var','while', 'with', 'xor', 'exit', 'break',
  54. 'class', 'constructor', 'inherited', 'private', 'public', 'protected',
  55. 'property', 'As', 'Is', 'Unit', 'Continue', 'Try', 'Except', 'Forward',
  56. 'Interface','Implementation', 'nil', 'out', 'loop', 'namespace', 'true',
  57. 'false', 'new', 'ensure', 'require', 'on', 'event', 'delegate', 'method',
  58. 'raise', 'assembly', 'module', 'using','locking', 'old', 'invariants', 'operator',
  59. 'self', 'async', 'finalizer', 'where', 'yield', 'nullable', 'Future',
  60. 'From', 'Finally', 'dynamic'
  61. ),
  62. 2 => array(
  63. 'override', 'virtual', 'External', 'read', 'add', 'remove','final', 'abstract',
  64. 'empty', 'global', 'locked', 'sealed', 'reintroduce', 'implements', 'each',
  65. 'default', 'partial', 'finalize', 'enum', 'flags', 'result', 'readonly', 'unsafe',
  66. 'pinned', 'matching', 'static', 'has', 'step', 'iterator', 'inline', 'nested',
  67. 'Implies', 'Select', 'Order', 'By', 'Desc', 'Asc', 'Group', 'Join', 'Take',
  68. 'Skip', 'Concat', 'Union', 'Reverse', 'Distinct', 'Into', 'Equals', 'params',
  69. 'sequence', 'index', 'notify', 'Parallel', 'create', 'array', 'Queryable', 'Aspect',
  70. 'volatile', 'write'
  71. ),
  72. 3 => array(
  73. 'chr', 'ord', 'inc', 'dec', 'assert', 'iff', 'assigned','futureAssigned', 'length', 'low', 'high', 'typeOf', 'sizeOf', 'disposeAndNil', 'Coalesce', 'unquote'
  74. ),
  75. ),
  76. 'CASE_SENSITIVE' => array(
  77. GESHI_COMMENTS => false,
  78. 1 => false,
  79. 2 => false,
  80. 3 => false,
  81. // 4 => false,
  82. ),
  83. 'SYMBOLS' => array(
  84. 0 => array('(', ')', '[', ']'),
  85. 1 => array('.', ',', ':', ';'),
  86. 2 => array('@', '^'),
  87. 3 => array('=', '+', '-', '*', '/')
  88. ),
  89. 'STYLES' => array(
  90. 'KEYWORDS' => array(
  91. 1 => 'color: #000000; font-weight: bold;',
  92. 2 => 'color: #000000; font-weight: bold;',
  93. 3 => 'color: #000066;',
  94. // 4 => 'color: #000066; font-weight: bold;'
  95. ),
  96. 'COMMENTS' => array(
  97. 1 => 'color: #808080; font-style: italic;',
  98. 2 => 'color: #008000; font-style: italic;',
  99. 'MULTI' => 'color: #808080; font-style: italic;'
  100. ),
  101. 'ESCAPE_CHAR' => array(
  102. 0 => 'color: #ff0000; font-weight: bold;'
  103. ),
  104. 'BRACKETS' => array(
  105. 0 => 'color: #000066;'
  106. ),
  107. 'STRINGS' => array(
  108. 0 => 'color: #ff0000;'
  109. ),
  110. 'NUMBERS' => array(
  111. 0 => 'color: #0000ff;'
  112. ),
  113. 'METHODS' => array(
  114. 1 => 'color: #000000;'
  115. ),
  116. 'REGEXPS' => array(
  117. 0 => 'color: #9ac;',
  118. 1 => 'color: #ff0000;'
  119. ),
  120. 'SYMBOLS' => array(
  121. 0 => 'color: #000066;',
  122. 1 => 'color: #000066;',
  123. 2 => 'color: #000066;',
  124. 3 => 'color: #000066;'
  125. ),
  126. 'SCRIPT' => array(
  127. )
  128. ),
  129. 'URLS' => array(
  130. 1 => '',
  131. 2 => '',
  132. 3 => '',
  133. // 4 => ''
  134. ),
  135. 'OOLANG' => true,
  136. 'OBJECT_SPLITTERS' => array(
  137. 1 => '.'
  138. ),
  139. 'REGEXPS' => array(
  140. //Hex numbers
  141. 0 => '\$[0-9a-fA-F]+',
  142. //Characters
  143. 1 => '\#\$?[0-9]{1,3}'
  144. ),
  145. 'STRICT_MODE_APPLIES' => GESHI_NEVER,
  146. 'SCRIPT_DELIMITERS' => array(
  147. ),
  148. 'HIGHLIGHT_STRICT_BLOCK' => array(
  149. ),
  150. 'TAB_WIDTH' => 2
  151. );
  152. ?>