[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

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

   1  <?php
   2  /*************************************************************************************
   3   * typoscript.php
   4   * --------
   5   * Author: Jan-Philipp Halle (typo3@jphalle.de)
   6   * Copyright: (c) 2005 Jan-Philipp Halle (http://www.jphalle.de/)
   7   * Release Version: 1.0.9.1
   8   * Date Started: 2005/07/29
   9   *
  10   * TypoScript language file for GeSHi.
  11   *
  12   * CHANGES
  13   * -------
  14   * 2008/07/11 (1.0.8)
  15   * - Michiel Roos <geshi@typofree.org> Complete rewrite
  16   * 2005/07/29 (1.0.0)
  17   *  -  First Release
  18   *
  19   * TODO (updated 2004/07/14)
  20   * -------------------------
  21   * <things-to-do>
  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' => 'TypoScript',
  45      'COMMENT_SINGLE' => array(1  => '//'),
  46      'COMMENT_MULTI' => array('/*' => '*/'),
  47      'COMMENT_REGEXP' => array(2 => '/(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|#{2}[^\n#]+|#{7,999}[^\n]+)/'),
  48      'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  49      'QUOTEMARKS' => array(),
  50      'ESCAPE_CHAR' => '',
  51      'KEYWORDS' => array(
  52          // Conditions: http://documentation.typo3.org/documentation/tsref/conditions/
  53          1 => array(
  54              'browser', 'compatVersion', 'dayofmonth', 'dayofweek', 'device',
  55              'globalString', 'globalVars', 'hostname', 'hour',
  56              'ip', 'language', 'loginUser', 'loginuser', 'minute',
  57              'month', 'PIDinRootline', 'PIDupinRootline',
  58              'system', 'treelevel', 'useragent', 'userFunc',
  59              'usergroup', 'version'
  60              ),
  61  
  62          // Functions: http://documentation.typo3.org/documentation/tsref/functions/
  63          2 => array(
  64              'addParams', 'encapsLines', 'filelink', 'HTMLparser',
  65              'HTMLparser_tags', 'if', 'imageLinkWrap',
  66              'imgResource', 'makelinks', 'numRows', 'parseFunc',
  67              'select', 'split', 'stdWrap', 'tableStyle', 'tags',
  68              'textStyle', 'typolink'
  69              ),
  70  
  71          // Toplevel objects: http://documentation.typo3.org/documentation/tsref/tlo-objects/
  72          3 => array(
  73              'CARRAY', 'CONFIG', 'CONSTANTS', 'FE_DATA', 'FE_TABLE', 'FRAME',
  74              'FRAMESET', 'META', 'PAGE', 'plugin'
  75              ),
  76  
  77          // Content Objects (cObject) : http://documentation.typo3.org/documentation/tsref/cobjects/
  78          4 => array(
  79              'CASE', 'CLEARGIF', 'COA', 'COA_INT', 'COBJ_ARRAY', 'COLUMNS',
  80              'CONTENT', 'CTABLE', 'EDITPANEL', 'FILE', 'FORM',
  81              'HMENU', 'HRULER', 'HTML', 'IMAGE', 'IMGTEXT',
  82              'IMG_RESOURCE', 'LOAD_REGISTER', 'MULTIMEDIA',
  83              'OTABLE', 'PHP_SCRIPT', 'PHP_SCRIPT_EXT',
  84              'PHP_SCRIPT_INT', 'RECORDS', 'RESTORE_REGISTER',
  85              'SEARCHRESULT', 'TEMPLATE', 'TEXT', 'USER',
  86              'USER_INT'
  87              ),
  88  
  89          // GIFBUILDER toplevel link: http://documentation.typo3.org/documentation/tsref/gifbuilder/
  90          5 => array(
  91              'GIFBUILDER',
  92              ),
  93  
  94          // GIFBUILDER: http://documentation.typo3.org/documentation/tsref/gifbuilder/
  95          // skipped fields: IMAGE, TEXT
  96          // NOTE! the IMAGE and TEXT field already are linked in group 4, they
  97          // cannot be linked twice . . . . unfortunately
  98          6 => array(
  99              'ADJUST', 'BOX', 'CROP', 'EFFECT', 'EMBOSS',
 100              'IMGMAP', 'OUTLINE', 'SCALE', 'SHADOW',
 101              'WORKAREA'
 102              ),
 103  
 104          // MENU Objects: http://documentation.typo3.org/documentation/tsref/menu/
 105          7 => array(
 106              'GMENU', 'GMENU_FOLDOUT', 'GMENU_LAYERS', 'IMGMENU',
 107              'IMGMENUITEM', 'JSMENU', 'JSMENUITEM', 'TMENU',
 108              'TMENUITEM', 'TMENU_LAYERS'
 109              ),
 110  
 111          // MENU common properties: http://documentation.typo3.org/documentation/tsref/menu/common-properties/
 112          8 => array(
 113              'alternativeSortingField', 'begin', 'debugItemConf',
 114              'imgNameNotRandom', 'imgNamePrefix',
 115              'itemArrayProcFunc', 'JSWindow', 'maxItems',
 116              'minItems', 'overrideId', 'sectionIndex',
 117              'showAccessRestrictedPages', 'submenuObjSuffixes'
 118              ),
 119  
 120          // MENU item states: http://documentation.typo3.org/documentation/tsref/menu/item-states/
 121          9 => array(
 122              'ACT', 'ACTIFSUB', 'ACTIFSUBRO', 'ACTRO', 'CUR', 'CURIFSUB',
 123              'CURIFSUBRO', 'CURRO', 'IFSUB', 'IFSUBRO', 'NO',
 124              'SPC', 'USERDEF1', 'USERDEF1RO', 'USERDEF2',
 125              'USERDEF2RO', 'USR', 'USRRO'
 126              ),
 127          ),
 128  
 129      // Does not include '-' because of stuff like htmlTag_langKey = en-GB and
 130      // lib.nav-sub
 131      'SYMBOLS' => array(
 132          0 => array(
 133              '|',
 134              '+', '*', '/', '%',
 135              '!', '&&', '^',
 136              '<', '>', '=',
 137              '?', ':',
 138              '.'
 139              ),
 140          1 => array(
 141              '(', ')', '{', '}', '[', ']'
 142              )
 143          ),
 144      'CASE_SENSITIVE' => array(
 145          GESHI_COMMENTS => false,
 146          1 => true,
 147          2 => true,
 148          3 => true,
 149          4 => true,
 150          5 => true,
 151          6 => true,
 152          7 => true,
 153          8 => true,
 154          9 => true
 155          ),
 156      'STYLES' => array(
 157          'KEYWORDS' => array(
 158              1 => 'color: #ed7d14;',
 159              2 => 'font-weight: bold;',
 160              3 => 'color: #990000; font-weight: bold;',
 161              4 => 'color: #990000; font-weight: bold;',
 162              5 => 'color: #990000; font-weight: bold;',
 163              6 => 'color: #990000; font-weight: bold;',
 164              7 => 'color: #990000; font-weight: bold;',
 165              8 => 'font-weight: bold;',
 166              9 => 'color: #990000; font-weight: bold;',
 167              ),
 168          'COMMENTS' => array(
 169              1 => 'color: #aaa; font-style: italic;',
 170              2 => 'color: #aaa; font-style: italic;',
 171              'MULTI' => 'color: #aaa; font-style: italic;'
 172              ),
 173          'STRINGS' => array(
 174              0 => 'color: #ac14aa;'
 175              ),
 176          'NUMBERS' => array(
 177              0 => 'color: #cc0000;'
 178              ),
 179          'METHODS' => array(
 180              1 => 'color: #0000e0; font-weight: bold;',
 181              2 => 'color: #0000e0; font-weight: bold;'
 182              ),
 183          'BRACKETS' => array(
 184              0 => 'color: #009900;'
 185              ),
 186          'SYMBOLS' => array(
 187              0 => 'color: #339933; font-weight: bold;',
 188                  // Set this to the same value as brackets above
 189              1 => 'color: #009900; font-weight: bold;'
 190              ),
 191          'REGEXPS' => array(
 192              0 => 'color: #009900;',
 193              1 => 'color: #009900; font-weight: bold;',
 194              2 => 'color: #3366CC;',
 195              3 => 'color: #000066; font-weight: bold;',
 196              4 => 'color: #ed7d14;',
 197              5 => 'color: #000066; font-weight: bold;',
 198              6 => 'color: #009900;',
 199              7 => 'color: #3366CC;'
 200              ),
 201          'ESCAPE_CHAR' => array(
 202              ),
 203          'SCRIPT' => array(
 204              )
 205          ),
 206      'URLS' => array(
 207          1 => 'http://documentation.typo3.org/documentation/tsref/conditions/{FNAME}/',
 208          2 => 'http://documentation.typo3.org/documentation/tsref/functions/{FNAME}/',
 209          3 => 'http://documentation.typo3.org/documentation/tsref/tlo-objects/{FNAME}/',
 210          4 => 'http://documentation.typo3.org/documentation/tsref/cobjects/{FNAME}/',
 211          5 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/',
 212          6 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/{FNAME}/',
 213          7 => 'http://documentation.typo3.org/documentation/tsref/menu/{FNAME}/',
 214          8 => 'http://documentation.typo3.org/documentation/tsref/menu/common-properties/',
 215          9 => 'http://documentation.typo3.org/documentation/tsref/menu/item-states/'
 216          ),
 217      'OOLANG' => false,
 218      'OBJECT_SPLITTERS' => array(
 219          ),
 220      'REGEXPS' => array(
 221              // xhtml tag
 222          2 => array(
 223              GESHI_SEARCH => '(&lt;)([a-zA-Z\\/][^\\/\\\x7C]*?)(&gt;)',
 224              GESHI_REPLACE => '\\2',
 225              GESHI_MODIFIERS => 's',
 226              GESHI_BEFORE => '\\1',
 227              GESHI_AFTER => '\\3'
 228              ),
 229  
 230              // Constant
 231          0 => array(
 232              GESHI_SEARCH => '(\{)(\$[a-zA-Z_\.]+[a-zA-Z0-9_\.]*)(\})',
 233              GESHI_REPLACE => '\\2',
 234              GESHI_MODIFIERS => '',
 235              GESHI_BEFORE => '\\1',
 236              GESHI_AFTER => '\\3'
 237              ),
 238  
 239              // Constant dollar sign
 240          1 => array(
 241              GESHI_SEARCH => '(\$)([a-zA-Z_\.]+[a-zA-Z0-9_\.]*)',
 242              GESHI_REPLACE => '\\1',
 243              GESHI_MODIFIERS => '',
 244              GESHI_BEFORE => '',
 245              GESHI_AFTER => '\\2'
 246              ),
 247  
 248              // extension keys / tables: (static|user|ttx|tx|tt|fe)_something[_something]
 249          3 => array(
 250              GESHI_SEARCH => '(plugin\.|[^\.]\b)((?:static|user|ttx|tx|tt|fe)(?:_[0-9A-Za-z_]+?)\b)',
 251              GESHI_REPLACE => '\\2',
 252              GESHI_MODIFIERS => '',
 253              GESHI_BEFORE => '\\1',
 254              GESHI_AFTER => ''
 255              ),
 256  
 257              // conditions and controls
 258          4 => array(
 259              GESHI_SEARCH => '(\[)(globalVar|global|end)\b',
 260              GESHI_REPLACE => '\\2',
 261              GESHI_MODIFIERS => 'i',
 262              GESHI_BEFORE => '\\1',
 263              GESHI_AFTER => ''
 264              ),
 265  
 266              // lowlevel setup and constant objects
 267          5 => array(
 268              GESHI_SEARCH => '([^\.\$-\{]\b)(cObj|field|config|content|file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|sitetitle|styles|temp|tt_content|tt_news|types|xmlnews)\b',
 269              GESHI_REPLACE => '\\2',
 270              GESHI_MODIFIERS => '',
 271              GESHI_BEFORE => '\\1',
 272              GESHI_AFTER => ''
 273              ),
 274  
 275              // markers
 276          6 => array(
 277              GESHI_SEARCH => '(###[^#]+###)',
 278              GESHI_REPLACE => '\\1',
 279              GESHI_MODIFIERS => '',
 280              GESHI_BEFORE => '',
 281              GESHI_AFTER => ''
 282              ),
 283  
 284              // hex color codes
 285          7 => array(
 286              GESHI_SEARCH => '(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)',
 287              GESHI_REPLACE => '\\1',
 288              GESHI_MODIFIERS => '',
 289              GESHI_BEFORE => '',
 290              GESHI_AFTER => ''
 291              )
 292          ),
 293      'STRICT_MODE_APPLIES' => GESHI_NEVER,
 294      'SCRIPT_DELIMITERS' => array(
 295          ),
 296      'HIGHLIGHT_STRICT_BLOCK' => array(
 297          )
 298  );