plugins/geshi/geshi/typoscript.php
changeset 2 9e3258dfae15
child 3 f3e2bbbd2155
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/plugins/geshi/geshi/typoscript.php	Fri May 29 19:30:59 2009 -0400
@@ -0,0 +1,300 @@
+<?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.2
+ * 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 => '(&lt;[a-zA-Z\!\/].*?&gt;)',
+            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(
+        ),
+);
+
+?>