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.

144 lines
5.0KB

  1. <?php
  2. /*************************************************************************************
  3. * lisp.php
  4. * --------
  5. * Author: Roberto Rossi (rsoftware@altervista.org)
  6. * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter
  7. * Release Version: 1.0.8.11
  8. * Date Started: 2004/08/30
  9. *
  10. * Generic Lisp language file for GeSHi.
  11. *
  12. * CHANGES
  13. * -------
  14. * 2005/12/9 (1.0.2)
  15. * - Added support for :keywords and ::access (Denis Mashkevich)
  16. * 2004/11/27 (1.0.1)
  17. * - Added support for multiple object splitters
  18. * 2004/08/30 (1.0.0)
  19. * - First Release
  20. *
  21. * TODO (updated 2004/11/27)
  22. * -------------------------
  23. *
  24. *************************************************************************************
  25. *
  26. * This file is part of GeSHi.
  27. *
  28. * GeSHi is free software; you can redistribute it and/or modify
  29. * it under the terms of the GNU General Public License as published by
  30. * the Free Software Foundation; either version 2 of the License, or
  31. * (at your option) any later version.
  32. *
  33. * GeSHi is distributed in the hope that it will be useful,
  34. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  35. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  36. * GNU General Public License for more details.
  37. *
  38. * You should have received a copy of the GNU General Public License
  39. * along with GeSHi; if not, write to the Free Software
  40. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  41. *
  42. ************************************************************************************/
  43. $language_data = array (
  44. 'LANG_NAME' => 'Lisp',
  45. 'COMMENT_SINGLE' => array(1 => ';'),
  46. 'COMMENT_MULTI' => array(';|' => '|;'),
  47. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  48. 'QUOTEMARKS' => array('"'),
  49. 'ESCAPE_CHAR' => '\\',
  50. 'KEYWORDS' => array(
  51. 1 => array(
  52. 'not','defun','princ','when',
  53. 'eval','apply','funcall','quote','identity','function',
  54. 'complement','backquote','lambda','set','setq','setf',
  55. 'defmacro','gensym','make','symbol','intern',
  56. 'name','value','plist','get',
  57. 'getf','putprop','remprop','hash','array','aref',
  58. 'car','cdr','caar','cadr','cdar','cddr','caaar','caadr','cadar',
  59. 'caddr','cdaar','cdadr','cddar','cdddr','caaaar','caaadr',
  60. 'caadar','caaddr','cadaar','cadadr','caddar','cadddr',
  61. 'cdaaar','cdaadr','cdadar','cdaddr','cddaar','cddadr',
  62. 'cdddar','cddddr','cons','list','append','reverse','last','nth',
  63. 'nthcdr','member','assoc','subst','sublis','nsubst',
  64. 'nsublis','remove','length',
  65. 'mapc','mapcar','mapl','maplist','mapcan','mapcon','rplaca',
  66. 'rplacd','nconc','delete','atom','symbolp','numberp',
  67. 'boundp','null','listp','consp','minusp','zerop','plusp',
  68. 'evenp','oddp','eq','eql','equal','cond','case','and','or',
  69. 'let','l','if','prog','prog1','prog2','progn','go','return',
  70. 'do','dolist','dotimes','catch','throw','error','cerror','break',
  71. 'continue','errset','baktrace','evalhook','truncate','float',
  72. 'rem','min','max','abs','sin','cos','tan','expt','exp','sqrt',
  73. 'random','logand','logior','logxor','lognot','bignums','logeqv',
  74. 'lognand','lognor','logorc2','logtest','logbitp','logcount',
  75. 'integer','nil','parse-integer','make-list','print','write'
  76. )
  77. ),
  78. 'SYMBOLS' => array(
  79. '(', ')', '{', '}', '[', ']',
  80. '!', '%', '^', '&',
  81. ' + ',' - ',' * ',' / ',
  82. '=','<','>',
  83. '.',':',',',';',
  84. '|'
  85. ),
  86. 'CASE_SENSITIVE' => array(
  87. GESHI_COMMENTS => false,
  88. 1 => false
  89. ),
  90. 'STYLES' => array(
  91. 'KEYWORDS' => array(
  92. 1 => 'color: #b1b100;'
  93. ),
  94. 'COMMENTS' => array(
  95. 1 => 'color: #808080; font-style: italic;',
  96. 'MULTI' => 'color: #808080; font-style: italic;'
  97. ),
  98. 'ESCAPE_CHAR' => array(
  99. 0 => 'color: #000099; font-weight: bold;'
  100. ),
  101. 'BRACKETS' => array(
  102. 0 => 'color: #66cc66;'
  103. ),
  104. 'STRINGS' => array(
  105. 0 => 'color: #ff0000;'
  106. ),
  107. 'NUMBERS' => array(
  108. 0 => 'color: #cc66cc;'
  109. ),
  110. 'METHODS' => array(
  111. 0 => 'color: #555;',
  112. 1 => 'color: #555;'
  113. ),
  114. 'SYMBOLS' => array(
  115. 0 => 'color: #66cc66;'
  116. ),
  117. 'REGEXPS' => array(
  118. ),
  119. 'SCRIPT' => array(
  120. )
  121. ),
  122. 'URLS' => array(
  123. 1 => ''
  124. ),
  125. 'OOLANG' => true,
  126. 'OBJECT_SPLITTERS' => array(
  127. '::', ':'
  128. ),
  129. 'REGEXPS' => array(
  130. ),
  131. 'STRICT_MODE_APPLIES' => GESHI_NEVER,
  132. 'SCRIPT_DELIMITERS' => array(
  133. ),
  134. 'HIGHLIGHT_STRICT_BLOCK' => array(
  135. ),
  136. 'PARSER_CONTROL' => array(
  137. 'OOLANG' => array(
  138. 'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*'
  139. )
  140. )
  141. );
  142. ?>