summaryrefslogtreecommitdiff
path: root/platform/www/vendor/geshi/geshi/src/geshi/twig.php
diff options
context:
space:
mode:
Diffstat (limited to 'platform/www/vendor/geshi/geshi/src/geshi/twig.php')
-rw-r--r--platform/www/vendor/geshi/geshi/src/geshi/twig.php286
1 files changed, 286 insertions, 0 deletions
diff --git a/platform/www/vendor/geshi/geshi/src/geshi/twig.php b/platform/www/vendor/geshi/geshi/src/geshi/twig.php
new file mode 100644
index 0000000..62b193d
--- /dev/null
+++ b/platform/www/vendor/geshi/geshi/src/geshi/twig.php
@@ -0,0 +1,286 @@
+<?php
+/*************************************************************************************
+ * twig.php
+ * ----------
+ * Author: Keyvan Akbary (keyvan@kiwwito.com)
+ * Copyright: (c) 2011 Keyvan Akbary (http://www.kiwwito.com/)
+ * Release Version: 1.0.9.1
+ * Date Started: 2011/12/05
+ *
+ * Twig template language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2012/09/28 (1.9.0 by José Andrés Puertas y Javier Eguiluz)
+ * - Added new tags, filters and functions
+ * - Added regexps for variables, objects and properties
+ * - Lots of other minor tweaks (delimites, comments, ...)
+ *
+ * 2011/12/05 (1.0.0 by Keyvan Akbary)
+ * - Initial Release
+ *
+ * TODO
+ * ----
+ *
+ *************************************************************************************
+ *
+ * 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' => 'Twig',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array('{#' => '#}'),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ //TWIG
+ //Tags
+ 1 => array(
+ 'autoescape',
+ 'endautoescape',
+ 'block',
+ 'endblock',
+ 'do',
+ 'embed',
+ 'endembed',
+ 'extends',
+ 'filter',
+ 'endfilter',
+ 'for',
+ 'endfor',
+ 'from',
+ 'if',
+ 'else',
+ 'elseif',
+ 'endif',
+ 'import',
+ 'include',
+ 'macro',
+ 'endmacro',
+ 'raw',
+ 'endraw',
+ 'sandbox',
+ 'set',
+ 'endset',
+ 'spaceless',
+ 'endspaceless',
+ 'use',
+ 'verbatim',
+ 'endverbatim',
+ 'trans',
+ 'endtrans',
+ 'transchoice',
+ 'endtranschoice'
+ ),
+ //Filters
+ 2 => array(
+ 'abs',
+ 'batch',
+ 'capitalize',
+ 'convert_encoding',
+ 'date',
+ 'date_modify',
+ 'default',
+ 'escape',
+ 'first',
+ 'format',
+ 'join',
+ 'json_encode',
+ 'keys',
+ 'last',
+ 'length',
+ 'lower',
+ 'merge',
+ 'nl2br',
+ 'number_format',
+ 'replace',
+ 'reverse',
+ 'slice',
+ 'sort',
+ 'split',
+ 'striptags',
+ 'title',
+ 'trim',
+ 'upper',
+ 'url_encode'
+ ),
+ //Functions
+ 3 => array(
+ 'attribute',
+ 'cycle',
+ 'dump',
+ 'parent',
+ 'random',
+ 'range',
+ 'source',
+ 'template_from_string'
+ ),
+ //Tests
+ 4 => array(
+ 'constant',
+ 'defined',
+ 'divisibleby',
+ 'empty',
+ 'even',
+ 'iterable',
+ 'null',
+ 'odd',
+ 'sameas'
+ ),
+ //Operators
+ 5 => array(
+ 'in',
+ 'is',
+ 'and',
+ 'b-and',
+ 'or',
+ 'b-or',
+ 'b-xor',
+ 'not',
+ 'into',
+ 'starts with',
+ 'ends with',
+ 'matches'
+ )
+ ),
+ 'SYMBOLS' => array(
+ '{{',
+ '}}',
+ '{%',
+ '%}',
+ '+',
+ '-',
+ '/',
+ '/',
+ '*',
+ '**', //Math operators
+ '==',
+ '!=',
+ '<',
+ '>',
+ '>=',
+ '<=',
+ '===', //Logic operators
+ '..',
+ '|',
+ '~',
+ '[',
+ ']',
+ '.',
+ '?',
+ ':',
+ '(',
+ ')', //Other
+ '=' //HTML (attributes)
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ //Twig
+ 1 => true,
+ 2 => true,
+ 3 => true,
+ 4 => true,
+ 5 => true
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #0600FF;', //Tags
+ 2 => 'color: #008000;', //Filters
+ 3 => 'color: #0600FF;', //Functions
+ 4 => 'color: #804040;', //Tests
+ 5 => 'color: #008000;'
+ ),
+ 'COMMENTS' => array(
+ 'MULTI' => 'color: #008080; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'color: #000099; font-weight: bold;'
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: #D36900;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #ff0000;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: #cc66cc;'
+ ),
+ 'METHODS' => array(
+ 1 => 'color: #006600;'
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #D36900;'
+ ),
+ 'SCRIPT' => array(
+ 0 => '',
+ 1 => 'color: #808080; font-style: italic;',
+ 2 => 'color: #009000;'
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: #00aaff;',
+ 1 => 'color: #00aaff;'
+ )
+ ),
+ 'URLS' => array(
+ 1 => 'http://twig.sensiolabs.org/doc/tags/{FNAMEL}.html',
+ 2 => 'http://twig.sensiolabs.org/doc/filters/{FNAMEL}.html',
+ 3 => 'http://twig.sensiolabs.org/doc/functions/{FNAMEL}.html',
+ 4 => 'http://twig.sensiolabs.org/doc/tests/{FNAMEL}.html',
+ 5 => '',
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(
+ 1 => '.',
+ ),
+ 'REGEXPS' => array(
+ 0 => array(
+ GESHI_SEARCH => "([[:space:]])([a-zA-Z_][a-zA-Z0-9_]*)",
+ GESHI_REPLACE => '\\2',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => ''
+ ),
+ 1 => array(
+ GESHI_SEARCH => "\.([a-zA-Z_][a-zA-Z0-9_]*)",
+ GESHI_REPLACE => '.\\1',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '',
+ GESHI_AFTER => ''
+ ),
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
+ 'SCRIPT_DELIMITERS' => array(
+ 0 => array(
+ '{{' => '}}',
+ '{%' => '%}'
+ ),
+ 1 => array(
+ '{#' => '#}',
+ )
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ 0 => true,
+ 1 => true,
+ 2 => true
+ ),
+ 'PARSER_CONTROL' => array(
+ 'KEYWORDS' => array()
+ )
+);