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.

130 lines
4.1KB

  1. <?php
  2. /*************************************************************************************
  3. * visualprolog.php
  4. * ----------
  5. * Author: Thomas Linder Puls (puls@pdc.dk)
  6. * Copyright: (c) 2008 Thomas Linder Puls (puls@pdc.dk)
  7. * Release Version: 1.0.8.11
  8. * Date Started: 2008/11/20
  9. *
  10. * Visual Prolog language file for GeSHi.
  11. *
  12. * CHANGES
  13. * -------------------------
  14. *
  15. *************************************************************************************
  16. *
  17. * This file is part of GeSHi.
  18. *
  19. * GeSHi is free software; you can redistribute it and/or modify
  20. * it under the terms of the GNU General Public License as published by
  21. * the Free Software Foundation; either version 2 of the License, or
  22. * (at your option) any later version.
  23. *
  24. * GeSHi is distributed in the hope that it will be useful,
  25. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  26. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  27. * GNU General Public License for more details.
  28. *
  29. * You should have received a copy of the GNU General Public License
  30. * along with GeSHi; if not, write to the Free Software
  31. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  32. *
  33. ************************************************************************************/
  34. $language_data = array (
  35. 'LANG_NAME' => 'Visual Prolog',
  36. 'COMMENT_SINGLE' => array(1 => '%'),
  37. 'COMMENT_MULTI' => array('/*' => '*/'),
  38. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  39. 'QUOTEMARKS' => array("'", '"'),
  40. 'HARDQUOTE' => array('@"', '"'),
  41. 'HARDESCAPE' => array('""'),
  42. 'ESCAPE_CHAR' => '\\',
  43. 'KEYWORDS' => array(
  44. 1 => array(
  45. 'clauses','constants','constructors','delegate','domains','facts',
  46. 'goal','guards','inherits','monitor','namespace','open',
  47. 'predicates','properties','resolve','supports'
  48. ),
  49. 2 => array(
  50. 'align','and','anyflow','as','bitsize','catch','determ','digits',
  51. 'div','do','else','elseif','erroneous','externally','failure',
  52. 'finally','from','language','mod','multi','nondeterm','or',
  53. 'procedure','quot','rem','single','then','to'
  54. ),
  55. 3 => array(
  56. '#bininclude','#else','#elseif','#endif','#error','#export',
  57. '#externally','#if','#import','#include','#message','#options',
  58. '#orrequires','#requires','#then','#warning'
  59. ),
  60. ),
  61. 'SYMBOLS' => array(
  62. '+', '-', '*', '?', '=', '/', '>', '<', '^', '!', ':', '(', ')', '{', '}', '[', ']'
  63. ),
  64. 'CASE_SENSITIVE' => array(
  65. GESHI_COMMENTS => true,
  66. 1 => true,
  67. 2 => true,
  68. 3 => true
  69. ),
  70. 'STYLES' => array(
  71. 'KEYWORDS' => array(
  72. 1 => 'color: #808000;',
  73. 2 => 'color: #333399;',
  74. 3 => 'color: #800080;',
  75. ),
  76. 'COMMENTS' => array(
  77. 1 => 'color: #AA77BD',
  78. 'MULTI' => 'color: #AA77BD'
  79. ),
  80. 'ESCAPE_CHAR' => array(
  81. 0 => 'color: #008080;'
  82. ),
  83. 'BRACKETS' => array(
  84. 0 => 'color: #000000;'
  85. ),
  86. 'STRINGS' => array(
  87. 0 => 'color: #00B7B7;'
  88. ),
  89. 'NUMBERS' => array(
  90. 0 => 'color: #0000FF;'
  91. ),
  92. 'METHODS' => array(
  93. ),
  94. 'SYMBOLS' => array(
  95. 0 => 'color: #000000;'
  96. ),
  97. 'SCRIPT' => array(
  98. ),
  99. 'REGEXPS' => array(
  100. 0 => 'color: #008000;',
  101. 1 => 'color: #808000;',
  102. 2 => 'color: #333399;',
  103. )
  104. ),
  105. 'URLS' => array(
  106. 1 => '',
  107. 2 => '',
  108. 3 => ''
  109. ),
  110. 'OOLANG' => true,
  111. 'OBJECT_SPLITTERS' => array(
  112. 1 => ':',
  113. 2 => '::'
  114. ),
  115. 'REGEXPS' => array(
  116. 0 => "(?<![a-zA-Z0-9_])(?!(?:PIPE|SEMI)>)[A-Z_]\w*(?!\w)",
  117. 1 => "\\b(end\\s+)?(implement|class|interface)\\b",
  118. 2 => "\\b(end\\s+)?(foreach|if|try)\\b",
  119. ),
  120. 'STRICT_MODE_APPLIES' => GESHI_NEVER,
  121. 'SCRIPT_DELIMITERS' => array(
  122. ),
  123. 'HIGHLIGHT_STRICT_BLOCK' => array(
  124. ),
  125. 'TAB_WIDTH' => 4
  126. );
  127. ?>