[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

/vendor/geshi/geshi/src/geshi/ -> q.php (source)

   1  <?php
   2  /*************************************************************************************
   3   * q.php
   4   * -----
   5   * Author: Ian Roddis (ian.roddis@proteanmind.net)
   6   * Copyright: (c) 2008 Ian Roddis (http://proteanmind.net)
   7   * Release Version: 1.0.9.1
   8   * Date Started: 2009/01/21
   9   *
  10   * q/kdb+ language file for GeSHi.
  11   *
  12   * Based on information available from code.kx.com
  13   *
  14   * CHANGES
  15   * -------
  16   * 2010/01/21 (1.0.0)
  17   *   -  First Release
  18   *
  19   * TODO (updated <1.0.0>)
  20   * -------------------------
  21   *  - Fix the handling of single line comments
  22   *
  23   *************************************************************************************
  24   *
  25   *     This file is part of GeSHi.
  26   *
  27   *   GeSHi is free software; you can redistribute it and/or modify
  28   *   it under the terms of the GNU General Public License as published by
  29   *   the Free Software Foundation; either version 2 of the License, or
  30   *   (at your option) any later version.
  31   *
  32   *   GeSHi is distributed in the hope that it will be useful,
  33   *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  34   *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  35   *   GNU General Public License for more details.
  36   *
  37   *   You should have received a copy of the GNU General Public License
  38   *   along with GeSHi; if not, write to the Free Software
  39   *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  40   *
  41   ************************************************************************************/
  42  
  43  $language_data = array (
  44      'LANG_NAME'                 => 'q/kdb+',
  45      'COMMENT_SINGLE'            => array(1 => '//'),
  46      'COMMENT_MULTI'             => array(),
  47      'COMMENT_REGEXP'            => array(
  48          2 => '/ \s\/.*/',         # This needs to get fixed up, since it won't catch some instances
  49          # Multi line comments (Moved from REGEXPS)
  50          3 => '/^\/\s*?\n.*?\n\\\s*?\n/smi'
  51          ),
  52      'CASE_KEYWORDS'             => GESHI_CAPS_NO_CHANGE,
  53      'QUOTEMARKS'                => array('"'),
  54      'ESCAPE_CHAR'               => '\\',
  55      'OOLANG'                    => false,
  56      'OBJECT_SPLITTERS'          => array(),
  57      'STRICT_MODE_APPLIES'       => GESHI_NEVER,
  58      'SCRIPT_DELIMITERS'         => array(),
  59      'HIGHLIGHT_STRICT_BLOCK'    => array(),
  60      'TAB_WIDTH'                 => 4,
  61      'KEYWORDS' => array(
  62          1 => array(
  63              'abs', 'acos', 'all', 'and', 'any', 'asc', 'asin', 'asof', 'atan', 'attr', 'avg', 'avgs', 'bin', 'ceiling',
  64              'cols', 'cor', 'cos', 'count', 'cov', 'cross', 'cut', 'deltas', 'desc', 'dev', 'differ', 'distinct',
  65              'div', 'each', 'enlist', 'eval', 'except', 'exec', 'exit', 'exp', 'fills', 'first', 'flip', 'floor',
  66              'fkeys', 'get', 'getenv', 'group', 'gtime', 'hclose', 'hcount', 'hdel', 'hopen', 'hsym', 'iasc', 'idesc',
  67              'in', 'insert', 'inter', 'inv', 'joins', 'key', 'keys', 'last', 'like', 'load', 'log', 'lower',
  68              'lsq', 'ltime', 'ltrim', 'mavg', 'max', 'maxs', 'mcount', 'md5', 'mdev', 'med', 'meta', 'min', 'mins',
  69              'mmax', 'mmin', 'mmu', 'mod', 'msum', 'neg', 'next', 'not', 'null', 'or', 'over', 'parse', 'peach',
  70              'plist', 'prd', 'prds', 'prev', 'rand', 'rank', 'ratios', 'raze', 'read0', 'read1', 'reciprocal',
  71              'reverse', 'rload', 'rotate', 'rsave', 'rtrim', 'save', 'scan', 'set', 'setenv', 'show', 'signum',
  72              'sin', 'sqrt', 'ss', 'ssr', 'string', 'sublist', 'sum', 'sums', 'sv', 'system', 'tables', 'tan', 'til', 'trim',
  73              'txf', 'type', 'ungroup', 'union', 'upper', 'upsert', 'value', 'var', 'view', 'views', 'vs',
  74              'wavg', 'within', 'wsum', 'xasc', 'xbar', 'xcol', 'xcols', 'xdesc', 'xexp', 'xgroup', 'xkey',
  75              'xlog', 'xprev', 'xrank'
  76              ),
  77          # kdb database template keywords
  78          2 => array(
  79              'aj', 'by', 'delete', 'fby', 'from', 'ij', 'lj', 'pj', 'select', 'uj', 'update', 'where', 'wj',
  80              ),
  81          ),
  82      'SYMBOLS' => array(
  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: #000099; font-weight: bold;',
  93              2 => 'color: #009900; font-weight: bold;',
  94              ),
  95          'COMMENTS' => array(
  96              1 => 'color: #666666; font-style: italic;',
  97              2 => 'color: #666666; font-style: italic;',
  98              3 => 'color: #808080; font-style: italic;',
  99              'MULTI' => 'color: #808080; font-style: italic;'
 100              ),
 101          'ESCAPE_CHAR' => array(
 102              0 => 'color: #000099; font-weight: bold;',
 103              1 => 'color: #000099; font-weight: bold;',
 104              2 => 'color: #660099; font-weight: bold;',
 105              3 => 'color: #660099; font-weight: bold;',
 106              4 => 'color: #660099; font-weight: bold;',
 107              5 => 'color: #006699; font-weight: bold;',
 108              'HARD' => '',
 109              ),
 110          'BRACKETS' => array(
 111              0 => 'color: #009900;'
 112              ),
 113          'STRINGS' => array(
 114              0 => 'color: #990000;'
 115              ),
 116          'NUMBERS' => array(
 117              0 => 'color: #0000dd;',
 118              GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
 119              GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
 120              GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
 121              GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
 122              GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
 123              GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
 124              GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
 125              ),
 126          'METHODS' => array(
 127              1 => 'color: #202020;',
 128              2 => 'color: #202020;'
 129              ),
 130          'SYMBOLS' => array(
 131              0 => 'color: #339933;'
 132              ),
 133          'REGEXPS' => array(
 134              2   => 'color: #999900;',
 135              ),
 136          'SCRIPT' => array(
 137              )
 138          ),
 139      'REGEXPS' => array(
 140          # Symbols
 141          2 => '`[^\s"]*',
 142          ),
 143      'URLS'  => array(
 144          1   => '',
 145          2   => '',
 146          ),
 147  );