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.

140 lines
5.0KB

  1. <?php
  2. /*************************************************************************************
  3. * euphoria.php
  4. * ---------------------------------
  5. * Author: Nicholas Koceja (nerketur@hotmail.com)
  6. * Copyright: (c) 2010 Nicholas Koceja
  7. * Release Version: 1.0.8.11
  8. * Date Started: 11/24/2010
  9. *
  10. * Euphoria language file for GeSHi.
  11. *
  12. * Author's note: The colors are based off of the Euphoria Editor (ed.ex) colors.
  13. * Also, I added comments in places so I could remember a few things about Euphoria.
  14. *
  15. *
  16. * CHANGES
  17. * -------
  18. * <date-of-release> (1.0.8.9)
  19. * - First Release
  20. *
  21. * TODO (updated <date-of-release>)
  22. * -------------------------
  23. * seperate the funtions from the procedures, and have a slight color change for each.
  24. *
  25. *************************************************************************************
  26. *
  27. * This file is part of GeSHi.
  28. *
  29. * GeSHi is free software; you can redistribute it and/or modify
  30. * it under the terms of the GNU General Public License as published by
  31. * the Free Software Foundation; either version 2 of the License, or
  32. * (at your option) any later version.
  33. *
  34. * GeSHi is distributed in the hope that it will be useful,
  35. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  36. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  37. * GNU General Public License for more details.
  38. *
  39. * You should have received a copy of the GNU General Public License
  40. * along with GeSHi; if not, write to the Free Software
  41. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  42. *
  43. ************************************************************************************/
  44. $language_data = array (
  45. 'LANG_NAME' => 'Euphoria',
  46. 'COMMENT_SINGLE' => array(1 => '--'),
  47. 'COMMENT_MULTI' => array(), //Euphoria doesn't support multi-line comments
  48. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  49. 'QUOTEMARKS' => array("'", '"'),
  50. 'ESCAPE_CHAR' => '\\',
  51. 'KEYWORDS' => array(
  52. 1 => array( // keywords
  53. 'and', 'by', 'constant', 'do', 'else', 'elsif', 'end', 'exit',
  54. 'for', 'function', 'global', 'if', 'include', 'not', 'or',
  55. 'procedure', 'return', 'then', 'to', 'type', 'while', 'with',
  56. 'without', 'xor'
  57. ),
  58. 2 => array( // built-ins
  59. 'abort', 'and_bits', 'append', 'arctan', 'atom', 'c_func', 'call',
  60. 'c_proc', 'call_func', 'call_proc', 'clear_screen', 'close', 'compare',
  61. 'command_line', 'cos', 'date', 'equal', 'find', 'find_from', 'floor',
  62. 'getc', 'getenv', 'gets', 'get_key', 'get_pixel', 'integer', 'length',
  63. 'log', 'machine_func', 'machine_proc', 'match', 'match_from',
  64. 'mem_copy', 'mem_set', 'not_bits', 'object', 'open', 'or_bits', 'peek',
  65. 'peek4s', 'peek4u', 'pixel', 'platform', 'poke', 'poke4', 'position',
  66. 'power', 'prepend', 'print', 'printf', 'profile', 'puts', 'rand',
  67. 'remainder', 'repeat', 'routine_id', 'sequence', 'sin', 'sprintf',
  68. 'sqrt', 'system', 'system_exec', 'tan', 'task_clock_stop',
  69. 'task_clock_start', 'task_create', 'task_list', 'task_schedule',
  70. 'task_self', 'task_status', 'task_suspend', 'task_yield', 'time',
  71. 'trace', 'xor_bits'
  72. ),
  73. ),
  74. 'SYMBOLS' => array(
  75. 0 => array(
  76. '(', ')', '{', '}', '[', ']'
  77. ),
  78. 1 => array(
  79. '+', '-', '*', '/', '=', '&', '^'
  80. ),
  81. 2 => array(
  82. '&', '?', ','
  83. )
  84. ),
  85. 'CASE_SENSITIVE' => array(
  86. GESHI_COMMENTS => false,
  87. 1 => true,
  88. 2 => true,
  89. ),
  90. 'STYLES' => array(
  91. 'KEYWORDS' => array(
  92. 1 => 'color: #0000ff; font-weight: bold;', // keywords
  93. 2 => 'color: #cc33ff; font-weight: bold;', // builtins
  94. ),
  95. 'COMMENTS' => array(
  96. 1 => 'color: #ff0000; font-style: italic;',
  97. 'MULTI' => '' // doesn't exist
  98. ),
  99. 'ESCAPE_CHAR' => array(
  100. 0 => 'color: #009900; font-weight: bold;'
  101. ),
  102. 'BRACKETS' => array(
  103. 0 => 'color: #999900; font-weight: bold;'
  104. ),
  105. 'STRINGS' => array(
  106. 0 => 'color: #00cc00;'
  107. ),
  108. 'NUMBERS' => array(
  109. 0 => 'color: #cc33cc; font-style: italic'
  110. ),
  111. 'METHODS' => array( // Doesn't exist in Euphoria. Everything is a function =)
  112. 0 => ''
  113. ),
  114. 'SYMBOLS' => array(
  115. 0 => 'color: #999900;', // brackets
  116. 1 => 'color: #333333;', // operators
  117. 2 => 'color: #333333; font-style: bold' // print+concat
  118. ),
  119. 'REGEXPS' => array(
  120. ),
  121. 'SCRIPT' => array( // Never included in scripts.
  122. )
  123. ),
  124. 'REGEXPS' => array(
  125. ),
  126. 'URLS' => array(
  127. 1 => '',
  128. 2 => ''
  129. ),
  130. 'OOLANG' => false,
  131. 'OBJECT_SPLITTERS' => array(),
  132. 'STRICT_MODE_APPLIES' => GESHI_NEVER,
  133. 'SCRIPT_DELIMITERS' => array(
  134. ),
  135. 'HIGHLIGHT_STRICT_BLOCK' => array(
  136. )
  137. );
  138. ?>