Loading

Geshi - squirrel

  1. <?php
  2. /*************************************************************************************
  3.  * squirrel.php
  4.  * ---------------------------------
  5.  * Author: Sylf (kxh5q@yahoo.com)
  6.  * Copyright: none
  7.  * Release Version: 1.0.8.11
  8.  * Date Started: 2014-12-27
  9.  *
  10.  * Squirrel script language file for GeSHi.
  11.  *
  12.  *
  13.  * CHANGES
  14.  * -------
  15.  * 2015-01-03 (1.0.8.11)
  16.  *  -  First Release
  17.  *
  18.  *************************************************************************************
  19.  *
  20.  *     This file is part of GeSHi.
  21.  *
  22.  *   GeSHi is free software; you can redistribute it and/or modify
  23.  *   it under the terms of the GNU General Public License as published by
  24.  *   the Free Software Foundation; either version 2 of the License, or
  25.  *   (at your option) any later version.
  26.  *
  27.  *   GeSHi is distributed in the hope that it will be useful,
  28.  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  29.  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  30.  *   GNU General Public License for more details.
  31.  *
  32.  *   You should have received a copy of the GNU General Public License
  33.  *   along with GeSHi; if not, write to the Free Software
  34.  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  35.  *
  36.  ************************************************************************************/
  37.  
  38. $language_data = array (
  39.     'LANG_NAME' => 'Squirrel Script',
  40.     'COMMENT_SINGLE' => array(1 => '//', 2=> '#'),
  41.     'COMMENT_MULTI' => array('/*' => '*/'),
  42.     'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  43.     'QUOTEMARKS' => '"',
  44.     'ESCAPE_CHAR' => '\\',
  45.     'KEYWORDS' => array (
  46.         // keywords
  47.         1 => array (
  48.             'base', 'break', 'case', 'catch', 'class', 'clone', 'const', 'constructor', 'continue', 'default',
  49.             'delegate', 'delete', 'do', 'else', 'enum', 'extends', 'false', 'for', 'foreach', 'function',
  50.             'if', 'in', 'instanceof', 'local', 'null', 'resume', 'return', 'static', 'switch', 'this',
  51.             'throw', 'true', 'try', 'typeof', 'while', 'yield'
  52.         ),
  53.         // metamethodes
  54.         2 => array (
  55.             '_set', '_get', '_newslot', '_delslot', '_add', '_sub', '_mul', '_div',
  56.             '_modulo', '_unm', '_typeof', '_cmp', '_call', '_cloned', '_nexti',
  57.             '_tostring', '_inherited', '_newmember'
  58.         ),
  59.         // global symbols
  60.         3 => array (
  61.             'array', 'seterrorhandler', 'callee', 'setdebughook', 'enabledebuginfo', 'getroottable', 'setroottable',
  62.             'getconsttable', 'setconsttable', 'assert', 'print', 'error', 'compilestring', 'collectgarbage',
  63.             'resurrectunreachable', 'type', 'getstackinfos', 'newthread'
  64.         ),
  65.         // global symbols
  66.         4 => array (
  67.             '_versionnumber_', '_version_', '_charsize_', '_intsize_', '_floatsize_'
  68.         ),
  69.         // default delegates
  70.         5 => array (
  71.             'tofloat', 'tostring', 'tointeger', 'tochar', 'weakref', 'len', 'slice', 'find', 'tolower', 'toupper',
  72.             'rawget', 'rawset', 'rawdelete', 'rawin', 'clear', 'setdelegate', 'getdelegate', 'append', 'push',
  73.             'extend', 'pop', 'top', 'insert', 'remove', 'resize', 'sort', 'reverse', 'map', 'apply', 'reduce',
  74.             'filter', 'pcall', 'call', 'acall', 'pacall', 'bindenv', 'getinfos', 'instance', 'getattributes',
  75.             'setattributes', 'newmember', 'rawnewmember', 'getclass', 'getstatus', 'wakeup', 'ref'
  76.         )
  77.     ),
  78.     'SYMBOLS' => array (
  79.         // separators
  80.         0 => array('(', ')', '[', ']', '{', '}', ',', '.', '@', '&lt;/', '/>'),
  81.         // operators
  82.         1 => array('=', '&lt;', '>', '!', '~', '?', ':', '==', '&lt;=', '>=', '!=', '||', '&&', '++', '--', '+', '-', '*', '/',
  83.             '&amp;', '|', '^', '%', '&lt;&lt;', '>>', '&lt;-', '+=', '-=', '*=', '/=', '&=', '|=', '^=', '%=', '&lt;&lt;=',
  84.             '>>=', '>>>=', '...')
  85.     ),
  86.     'STYLES' => array (
  87.         'KEYWORDS' => array (
  88.             1 => 'color: #b14100;',
  89.             2 => 'color: #000000; font-weight: bold;',
  90.             3 => 'color: #990000;',
  91.             4 => 'color: #000000; font-weight: bold;',
  92.             5 => 'color: #009900;'
  93.         ),
  94.         'COMMENTS' => array (
  95.             0 => 'color: #666666; font-style: italic;',
  96.             1 => 'color: #666666; font-style: italic;'
  97.         ),
  98.         'NUMBERS' => array(
  99.             0 => 'color: #cc66cc;',
  100.             GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
  101.             GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
  102.             GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
  103.         ),
  104.         'SYMBOLS' => array(
  105.             0 => 'color: #339933;',
  106.             1 => 'color: #000000; font-weight: bold;'
  107.         )
  108.     ),
  109.     'OOLANG' => true,
  110.     'OBJECT_SPLITTERS' => array(
  111.         1 => '::'
  112.     ),
  113.     'REGEXPS' => array(
  114.         //Variables
  115.         //0 => "[\\$]+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"
  116.     ),
  117.     'STRICT_MODE_APPLIES' => GESHI_MAYBE
  118. );

Comments