<?php
/*************************************************************************************
* typoscript.php
* --------
* Author: Jan-Philipp Halle (typo3@jphalle.de)
* Copyright: (c) 2005 Jan-Philipp Halle (http://www.jphalle.de/)
* Release Version: 1.0.8.4
* Date Started: 2005/07/29
*
* TypoScript language file for GeSHi.
*
* CHANGES
* -------
* 2008/07/11 (1.0.8)
* - Michiel Roos <geshi@typofree.org> Complete rewrite
* 2005/07/29 (1.0.0)
* - First Release
*
* TODO (updated 2004/07/14)
* -------------------------
* <things-to-do>
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'TypoScript',
'COMMENT_SINGLE' => array(1 => '//'),
'COMMENT_MULTI' => array('/*' => '*/'),
'COMMENT_REGEXP' => array(2 => '/(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|#{2}[^\n#]+|#{7,999}[^\n]+)/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array(),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
// Conditions: http://documentation.typo3.org/documentation/tsref/conditions/
1 => array(
'browser', 'compatVersion', 'dayofmonth', 'dayofweek', 'device',
'globalString', 'globalVars', 'hostname', 'hour',
'ip', 'language', 'loginUser', 'loginuser', 'minute',
'month', 'PIDinRootline', 'PIDupinRootline',
'system', 'treelevel', 'useragent', 'userFunc',
'usergroup', 'version'
),
// Functions: http://documentation.typo3.org/documentation/tsref/functions/
2 => array(
'addParams', 'encapsLines', 'filelink', 'HTMLparser',
'HTMLparser_tags', 'if', 'imageLinkWrap',
'imgResource', 'makelinks', 'numRows', 'parseFunc',
'select', 'split', 'stdWrap', 'tableStyle', 'tags',
'textStyle', 'typolink'
),
// Toplevel objects: http://documentation.typo3.org/documentation/tsref/tlo-objects/
3 => array(
'CARRAY', 'CONFIG', 'CONSTANTS', 'FE_DATA', 'FE_TABLE', 'FRAME',
'FRAMESET', 'META', 'PAGE', 'plugin'
),
// Content Objects (cObject) : http://documentation.typo3.org/documentation/tsref/cobjects/
4 => array(
'CASE', 'CLEARGIF', 'COA', 'COA_INT', 'COBJ_ARRAY', 'COLUMNS',
'CONTENT', 'CTABLE', 'EDITPANEL', 'FILE', 'FORM',
'HMENU', 'HRULER', 'HTML', 'IMAGE', 'IMGTEXT',
'IMG_RESOURCE', 'LOAD_REGISTER', 'MULTIMEDIA',
'OTABLE', 'PHP_SCRIPT', 'PHP_SCRIPT_EXT',
'PHP_SCRIPT_INT', 'RECORDS', 'RESTORE_REGISTER',
'SEARCHRESULT', 'TEMPLATE', 'TEXT', 'USER',
'USER_INT'
),
// GIFBUILDER toplevel link: http://documentation.typo3.org/documentation/tsref/gifbuilder/
5 => array(
'GIFBUILDER',
),
// GIFBUILDER: http://documentation.typo3.org/documentation/tsref/gifbuilder/
// skipped fields: IMAGE, TEXT
// NOTE! the IMAGE and TEXT field already are linked in group 4, they
// cannot be linked twice . . . . unfortunately
6 => array(
'ADJUST', 'BOX', 'CROP', 'EFFECT', 'EMBOSS',
'IMGMAP', 'OUTLINE', 'SCALE', 'SHADOW',
'WORKAREA'
),
// MENU Objects: http://documentation.typo3.org/documentation/tsref/menu/
7 => array(
'GMENU', 'GMENU_FOLDOUT', 'GMENU_LAYERS', 'IMGMENU',
'IMGMENUITEM', 'JSMENU', 'JSMENUITEM', 'TMENU',
'TMENUITEM', 'TMENU_LAYERS'
),
// MENU common properties: http://documentation.typo3.org/documentation/tsref/menu/common-properties/
8 => array(
'alternativeSortingField', 'begin', 'debugItemConf',
'imgNameNotRandom', 'imgNamePrefix',
'itemArrayProcFunc', 'JSWindow', 'maxItems',
'minItems', 'overrideId', 'sectionIndex',
'showAccessRestrictedPages', 'submenuObjSuffixes'
),
// MENU item states: http://documentation.typo3.org/documentation/tsref/menu/item-states/
9 => array(
'ACT', 'ACTIFSUB', 'ACTIFSUBRO', 'ACTRO', 'CUR', 'CURIFSUB',
'CURIFSUBRO', 'CURRO', 'IFSUB', 'IFSUBRO', 'NO',
'SPC', 'USERDEF1', 'USERDEF1RO', 'USERDEF2',
'USERDEF2RO', 'USR', 'USRRO'
),
),
// Does not include '-' because of stuff like htmlTag_langKey = en-GB and
// lib.nav-sub
'SYMBOLS' => array(
0 => array(
'|',
'+', '*', '/', '%',
'!', '&&', '^',
'<', '>', '=',
'?', ':',
'.'
),
1 => array(
'(', ')', '{', '}', '[', ']'
)
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
2 => true,
3 => true,
4 => true,
5 => true,
6 => true,
7 => true,
8 => true,
9 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #ed7d14;',
2 => 'font-weight: bold;',
3 => 'color: #990000; font-weight: bold;',
4 => 'color: #990000; font-weight: bold;',
5 => 'color: #990000; font-weight: bold;',
6 => 'color: #990000; font-weight: bold;',
7 => 'color: #990000; font-weight: bold;',
8 => 'font-weight: bold;',
9 => 'color: #990000; font-weight: bold;',
),
'COMMENTS' => array(
1 => 'color: #aaa; font-style: italic;',
2 => 'color: #aaa; font-style: italic;',
'MULTI' => 'color: #aaa; font-style: italic;'
),
'STRINGS' => array(
0 => 'color: #ac14aa;'
),
'NUMBERS' => array(
0 => 'color: #cc0000;'
),
'METHODS' => array(
1 => 'color: #0000e0; font-weight: bold;',
2 => 'color: #0000e0; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #009900;'
),
'SYMBOLS' => array(
0 => 'color: #339933; font-weight: bold;',
// Set this to the same value as brackets above
1 => 'color: #009900; font-weight: bold;'
),
'REGEXPS' => array(
0 => 'color: #009900;',
1 => 'color: #009900; font-weight: bold;',
2 => 'color: #3366CC;',
3 => 'color: #000066; font-weight: bold;',
4 => 'color: #ed7d14;',
5 => 'color: #000066; font-weight: bold;',
6 => 'color: #009900;',
7 => 'color: #3366CC;'
),
'ESCAPE_CHAR' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => 'http://documentation.typo3.org/documentation/tsref/conditions/{FNAME}/',
2 => 'http://documentation.typo3.org/documentation/tsref/functions/{FNAME}/',
3 => 'http://documentation.typo3.org/documentation/tsref/tlo-objects/{FNAME}/',
4 => 'http://documentation.typo3.org/documentation/tsref/cobjects/{FNAME}/',
5 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/',
6 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/{FNAME}/',
7 => 'http://documentation.typo3.org/documentation/tsref/menu/{FNAME}/',
8 => 'http://documentation.typo3.org/documentation/tsref/menu/common-properties/',
9 => 'http://documentation.typo3.org/documentation/tsref/menu/item-states/'
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
// Constant
0 => array(
GESHI_SEARCH => '(\{)(\$[a-zA-Z_\.]+[a-zA-Z0-9_\.]*)(\})',
GESHI_REPLACE => '\\2',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '\\1',
GESHI_AFTER => '\\3'
),
// Constant dollar sign
1 => array(
GESHI_SEARCH => '(\$)([a-zA-Z_\.]+[a-zA-Z0-9_\.]*)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => '\\2'
),
// xhtml tag
2 => array(
GESHI_SEARCH => '(<[a-zA-Z\!\/].*?>)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => 's',
GESHI_BEFORE => '',
GESHI_AFTER => ''
),
// extension keys / tables: (static|user|ttx|tx|tt|fe)_something[_something]
3 => array(
GESHI_SEARCH => '(plugin\.|[^\.]\b)((?:static|user|ttx|tx|tt|fe)(?:_[0-9A-Za-z_]+?)\b)',
GESHI_REPLACE => '\\2',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '\\1',
GESHI_AFTER => ''
),
// conditions and controls
4 => array(
GESHI_SEARCH => '(\[)(globalVar|global|end)\b',
GESHI_REPLACE => '\\2',
GESHI_MODIFIERS => 'i',
GESHI_BEFORE => '\\1',
GESHI_AFTER => ''
),
// lowlevel setup and constant objects
5 => array(
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',
GESHI_REPLACE => '\\2',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '\\1',
GESHI_AFTER => ''
),
// markers
6 => array(
GESHI_SEARCH => '(###[^#]+###)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => ''
),
// hex color codes
7 => array(
GESHI_SEARCH => '(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => ''
)
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
);
?>