Add Text_Highlighter to Composer

- Fixes critical mistake in boot.php regarding set_include_path
- Fixes minor mistake in text.php regarding strpos order of arguments

Note: This change significantly increases Composer running time because
Text_Highlither is a PEAR package. I'm already planning to replace it
with scrivo/highlight.php.
This commit is contained in:
Hypolite Petovan 2017-04-05 00:31:49 -04:00
parent 6494d05dde
commit 1ab28bbe03
176 changed files with 52674 additions and 489 deletions

View file

@ -0,0 +1,398 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Highlighter base class
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
require_once 'PEAR.php';
// {{{ BC constants
// BC trick : define constants related to default
// renderer if needed
if (!defined('HL_NUMBERS_LI')) {
/**#@+
* Constant for use with $options['numbers']
* @see Text_Highlighter_Renderer_Html::_init()
*/
/**
* use numbered list
*/
define ('HL_NUMBERS_LI' , 1);
/**
* Use 2-column table with line numbers in left column and code in right column.
* Forces $options['tag'] = HL_TAG_PRE
*/
define ('HL_NUMBERS_TABLE' , 2);
/**#@-*/
}
// }}}
// {{{ constants
/**
* for our purpose, it is infinity
*/
define ('HL_INFINITY', 1000000000);
// }}}
/**
* Text highlighter base class
*
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
// {{{ Text_Highlighter
/**
* Text highlighter base class
*
* This class implements all functions necessary for highlighting,
* but it does not contain highlighting rules. Actual highlighting is
* done using a descendent of this class.
*
* One is not supposed to manually create descendent classes.
* Instead, describe highlighting rules in XML format and
* use {@link Text_Highlighter_Generator} to create descendent class.
* Alternatively, an instance of a descendent class can be created
* directly.
*
* Use {@link Text_Highlighter::factory()} to create an
* object for particular language highlighter
*
* Usage example
* <code>
*require_once 'Text/Highlighter.php';
*$hlSQL = Text_Highlighter::factory('SQL',array('numbers'=>true));
*echo $hlSQL->highlight('SELECT * FROM table a WHERE id = 12');
* </code>
*
* @author Andrey Demenev <demenev@gmail.com>
* @package Text_Highlighter
* @access public
*/
class Text_Highlighter
{
// {{{ members
/**
* Syntax highlighting rules.
* Auto-generated classes set this var
*
* @access protected
* @see _init
* @var array
*/
var $_syntax;
/**
* Renderer object.
*
* @access private
* @var array
*/
var $_renderer;
/**
* Options. Keeped for BC
*
* @access protected
* @var array
*/
var $_options = array();
/**
* Conditionds
*
* @access protected
* @var array
*/
var $_conditions = array();
/**
* Disabled keywords
*
* @access protected
* @var array
*/
var $_disabled = array();
/**
* Language
*
* @access protected
* @var string
*/
var $_language = '';
// }}}
// {{{ _checkDefines
/**
* Called by subclssses' constructors to enable/disable
* optional highlighter rules
*
* @param array $defines Conditional defines
*
* @access protected
*/
function _checkDefines()
{
if (isset($this->_options['defines'])) {
$defines = $this->_options['defines'];
} else {
$defines = array();
}
foreach ($this->_conditions as $name => $actions) {
foreach($actions as $action) {
$present = in_array($name, $defines);
if (!$action[1]) {
$present = !$present;
}
if ($present) {
unset($this->_disabled[$action[0]]);
} else {
$this->_disabled[$action[0]] = true;
}
}
}
}
// }}}
// {{{ factory
/**
* Create a new Highlighter object for specified language
*
* @param string $lang language, for example "SQL"
* @param array $options Rendering options. This
* parameter is only keeped for BC reasons, use
* {@link Text_Highlighter::setRenderer()} instead
*
* @return mixed a newly created Highlighter object, or
* a PEAR error object on error
*
* @static
* @access public
*/
function &factory($lang, $options = array())
{
$lang = strtoupper($lang);
@include_once 'Text/Highlighter/' . $lang . '.php';
$classname = 'Text_Highlighter_' . $lang;
if (!class_exists($classname)) {
return PEAR::raiseError('Highlighter for ' . $lang . ' not found');
}
$obj = new $classname($options);
return $obj;
}
// }}}
// {{{ setRenderer
/**
* Set renderer object
*
* @param object $renderer Text_Highlighter_Renderer
*
* @access public
*/
function setRenderer(&$renderer)
{
$this->_renderer = $renderer;
}
// }}}
/**
* Helper function to find matching brackets
*
* @access private
*/
function _matchingBrackets($str)
{
return strtr($str, '()<>[]{}', ')(><][}{');
}
function _getToken()
{
if (!empty($this->_tokenStack)) {
return array_pop($this->_tokenStack);
}
if ($this->_pos >= $this->_len) {
return NULL;
}
if ($this->_state != -1 && preg_match($this->_endpattern, $this->_str, $m, PREG_OFFSET_CAPTURE, $this->_pos)) {
$endpos = $m[0][1];
$endmatch = $m[0][0];
} else {
$endpos = -1;
}
preg_match ($this->_regs[$this->_state], $this->_str, $m, PREG_OFFSET_CAPTURE, $this->_pos);
$n = 1;
foreach ($this->_counts[$this->_state] as $i=>$count) {
if (!isset($m[$n])) {
break;
}
if ($m[$n][1]>-1 && ($endpos == -1 || $m[$n][1] < $endpos)) {
if ($this->_states[$this->_state][$i] != -1) {
$this->_tokenStack[] = array($this->_delim[$this->_state][$i], $m[$n][0]);
} else {
$inner = $this->_inner[$this->_state][$i];
if (isset($this->_parts[$this->_state][$i])) {
$parts = array();
$partpos = $m[$n][1];
for ($j=1; $j<=$count; $j++) {
if ($m[$j+$n][1] < 0) {
continue;
}
if (isset($this->_parts[$this->_state][$i][$j])) {
if ($m[$j+$n][1] > $partpos) {
array_unshift($parts, array($inner, substr($this->_str, $partpos, $m[$j+$n][1]-$partpos)));
}
array_unshift($parts, array($this->_parts[$this->_state][$i][$j], $m[$j+$n][0]));
}
$partpos = $m[$j+$n][1] + strlen($m[$j+$n][0]);
}
if ($partpos < $m[$n][1] + strlen($m[$n][0])) {
array_unshift($parts, array($inner, substr($this->_str, $partpos, $m[$n][1] - $partpos + strlen($m[$n][0]))));
}
$this->_tokenStack = array_merge($this->_tokenStack, $parts);
} else {
foreach ($this->_keywords[$this->_state][$i] as $g => $re) {
if (isset($this->_disabled[$g])) {
continue;
}
if (preg_match($re, $m[$n][0])) {
$inner = $this->_kwmap[$g];
break;
}
}
$this->_tokenStack[] = array($inner, $m[$n][0]);
}
}
if ($m[$n][1] > $this->_pos) {
$this->_tokenStack[] = array($this->_lastinner, substr($this->_str, $this->_pos, $m[$n][1]-$this->_pos));
}
$this->_pos = $m[$n][1] + strlen($m[$n][0]);
if ($this->_states[$this->_state][$i] != -1) {
$this->_stack[] = array($this->_state, $this->_lastdelim, $this->_lastinner, $this->_endpattern);
$this->_lastinner = $this->_inner[$this->_state][$i];
$this->_lastdelim = $this->_delim[$this->_state][$i];
$l = $this->_state;
$this->_state = $this->_states[$this->_state][$i];
$this->_endpattern = $this->_end[$this->_state];
if ($this->_subst[$l][$i]) {
for ($k=0; $k<=$this->_counts[$l][$i]; $k++) {
if (!isset($m[$i+$k])) {
break;
}
$quoted = preg_quote($m[$n+$k][0], '/');
$this->_endpattern = str_replace('%'.$k.'%', $quoted, $this->_endpattern);
$this->_endpattern = str_replace('%b'.$k.'%', $this->_matchingBrackets($quoted), $this->_endpattern);
}
}
}
return array_pop($this->_tokenStack);
}
$n += $count + 1;
}
if ($endpos > -1) {
$this->_tokenStack[] = array($this->_lastdelim, $endmatch);
if ($endpos > $this->_pos) {
$this->_tokenStack[] = array($this->_lastinner, substr($this->_str, $this->_pos, $endpos-$this->_pos));
}
list($this->_state, $this->_lastdelim, $this->_lastinner, $this->_endpattern) = array_pop($this->_stack);
$this->_pos = $endpos + strlen($endmatch);
return array_pop($this->_tokenStack);
}
$p = $this->_pos;
$this->_pos = HL_INFINITY;
return array($this->_lastinner, substr($this->_str, $p));
}
// {{{ highlight
/**
* Highlights code
*
* @param string $str Code to highlight
* @access public
* @return string Highlighted text
*
*/
function highlight($str)
{
if (!($this->_renderer)) {
include_once('Text/Highlighter/Renderer/Html.php');
$this->_renderer = new Text_Highlighter_Renderer_Html($this->_options);
}
$this->_state = -1;
$this->_pos = 0;
$this->_stack = array();
$this->_tokenStack = array();
$this->_lastinner = $this->_defClass;
$this->_lastdelim = $this->_defClass;
$this->_endpattern = '';
$this->_renderer->reset();
$this->_renderer->setCurrentLanguage($this->_language);
$this->_str = $this->_renderer->preprocess($str);
$this->_len = strlen($this->_str);
while ($token = $this->_getToken()) {
$this->_renderer->acceptToken($token[0], $token[1]);
}
$this->_renderer->finalize();
return $this->_renderer->getOutput();
}
// }}}
}
// }}}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,519 @@
<?php
/**
* Auto-generated class. ABAP syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : abap.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Stoyan Stefanov <ssttoo@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. ABAP syntax highlighting
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_ABAP extends Text_Highlighter
{
var $_language = 'abap';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_ABAP($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)^\\*|")|((?i)\')|((?i)[a-z_\\-]\\w*)/',
0 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)^\\*|")|((?i)\')|((?i)0[xX][\\da-f]+)|((?i)\\d\\d*|\\b0\\b)|((?i)0[0-7]+)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)[a-z_\\-]\\w*)/',
1 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)^\\*|")|((?i)\')|((?i)0[xX][\\da-f]+)|((?i)\\d\\d*|\\b0\\b)|((?i)0[0-7]+)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)[a-z_\\-]\\w*)/',
2 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)^\\*|")|((?i)\')|((?i)0[xX][\\da-f]+)|((?i)\\d\\d*|\\b0\\b)|((?i)0[0-7]+)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)[a-z_\\-]\\w*)/',
3 => '//',
4 => '//',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
),
0 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
),
3 =>
array (
),
4 =>
array (
),
);
$this->_delim = array (
-1 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => '',
),
0 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => '',
6 => '',
7 => '',
8 => '',
9 => '',
),
1 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => '',
6 => '',
7 => '',
8 => '',
9 => '',
),
2 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => '',
6 => '',
7 => '',
8 => '',
9 => '',
),
3 =>
array (
),
4 =>
array (
),
);
$this->_inner = array (
-1 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'identifier',
),
0 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'identifier',
),
1 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'identifier',
),
2 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'identifier',
),
3 =>
array (
),
4 =>
array (
),
);
$this->_end = array (
0 => '/(?i)\\}/',
1 => '/(?i)\\)/',
2 => '/(?i)\\]/',
3 => '/(?mi)$/',
4 => '/(?i)\'/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
),
0 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
),
1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
),
2 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
),
3 =>
array (
),
4 =>
array (
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
'sy' => '/^((?i)screen-name|screen-group1|screen-group2|screen-group3|screen-group4|screen-required|screen-input|screen-output|screen-intensified|screen-invisible|screen-length|screen-active|sy-index|sy-pagno|sy-tabix|sy-tfill|sy-tlopc|sy-tmaxl|sy-toccu|sy-ttabc|sy-tstis|sy-ttabi|sy-dbcnt|sy-fdpos|sy-colno|sy-linct|sy-linno|sy-linsz|sy-pagct|sy-macol|sy-marow|sy-tleng|sy-sfoff|sy-willi|sy-lilli|sy-subrc|sy-fleng|sy-cucol|sy-curow|sy-lsind|sy-listi|sy-stepl|sy-tpagi|sy-winx1|sy-winy1|sy-winx2|sy-winy2|sy-winco|sy-winro|sy-windi|sy-srows|sy-scols|sy-loopc|sy-folen|sy-fodec|sy-tzone|sy-dayst|sy-ftype|sy-appli|sy-fdayw|sy-ccurs|sy-ccurt|sy-debug|sy-ctype|sy-input|sy-langu|sy-modno|sy-batch|sy-binpt|sy-calld|sy-dynnr|sy-dyngr|sy-newpa|sy-pri40|sy-rstrt|sy-wtitl|sy-cpage|sy-dbnam|sy-mandt|sy-prefx|sy-fmkey|sy-pexpi|sy-prini|sy-primm|sy-prrel|sy-playo|sy-prbig|sy-playp|sy-prnew|sy-prlog|sy-pdest|sy-plist|sy-pauth|sy-prdsn|sy-pnwpa|sy-callr|sy-repi2|sy-rtitl|sy-prrec|sy-prtxt|sy-prabt|sy-lpass|sy-nrpag|sy-paart|sy-prcop|sy-batzs|sy-bspld|sy-brep4|sy-batzo|sy-batzd|sy-batzw|sy-batzm|sy-ctabl|sy-dbsys|sy-dcsys|sy-macdb|sy-sysid|sy-opsys|sy-pfkey|sy-saprl|sy-tcode|sy-ucomm|sy-cfwae|sy-chwae|sy-spono|sy-sponr|sy-waers|sy-cdate|sy-datum|sy-slset|sy-subty|sy-subcs|sy-group|sy-ffile|sy-uzeit|sy-dsnam|sy-repid|sy-tabid|sy-tfdsn|sy-uname|sy-lstat|sy-abcde|sy-marky|sy-sfnam|sy-tname|sy-msgli|sy-title|sy-entry|sy-lisel|sy-uline|sy-xcode|sy-cprog|sy-xprog|sy-xform|sy-ldbpg|sy-tvar0|sy-tvar1|sy-tvar2|sy-tvar3|sy-tvar4|sy-tvar5|sy-tvar6|sy-tvar7|sy-tvar8|sy-tvar9|sy-msgid|sy-msgty|sy-msgno|sy-msgv1|sy-msgv2|sy-msgv3|sy-msgv4|sy-oncom|sy-vline|sy-winsl|sy-staco|sy-staro|sy-datar|sy-host|sy-locdb|sy-locop|sy-datlo|sy-timlo|sy-zonlo|syst-index|syst-pagno|syst-tabix|syst-tfill|syst-tlopc|syst-tmaxl|syst-toccu|syst-ttabc|syst-tstis|syst-ttabi|syst-dbcnt|syst-fdpos|syst-colno|syst-linct|syst-linno|syst-linsz|syst-pagct|syst-macol|syst-marow|syst-tleng|syst-sfoff|syst-willi|syst-lilli|syst-subrc|syst-fleng|syst-cucol|syst-curow|syst-lsind|syst-listi|syst-stepl|syst-tpagi|syst-winx1|syst-winy1|syst-winx2|syst-winy2|syst-winco|syst-winro|syst-windi|syst-srows|syst-scols|syst-loopc|syst-folen|syst-fodec|syst-tzone|syst-dayst|syst-ftype|syst-appli|syst-fdayw|syst-ccurs|syst-ccurt|syst-debug|syst-ctype|syst-input|syst-langu|syst-modno|syst-batch|syst-binpt|syst-calld|syst-dynnr|syst-dyngr|syst-newpa|syst-pri40|syst-rstrt|syst-wtitl|syst-cpage|syst-dbnam|syst-mandt|syst-prefx|syst-fmkey|syst-pexpi|syst-prini|syst-primm|syst-prrel|syst-playo|syst-prbig|syst-playp|syst-prnew|syst-prlog|syst-pdest|syst-plist|syst-pauth|syst-prdsn|syst-pnwpa|syst-callr|syst-repi2|syst-rtitl|syst-prrec|syst-prtxt|syst-prabt|syst-lpass|syst-nrpag|syst-paart|syst-prcop|syst-batzs|syst-bspld|syst-brep4|syst-batzo|syst-batzd|syst-batzw|syst-batzm|syst-ctabl|syst-dbsys|syst-dcsys|syst-macdb|syst-sysid|syst-opsys|syst-pfkey|syst-saprl|syst-tcode|syst-ucomm|syst-cfwae|syst-chwae|syst-spono|syst-sponr|syst-waers|syst-cdate|syst-datum|syst-slset|syst-subty|syst-subcs|syst-group|syst-ffile|syst-uzeit|syst-dsnam|syst-repid|syst-tabid|syst-tfdsn|syst-uname|syst-lstat|syst-abcde|syst-marky|syst-sfnam|syst-tname|syst-msgli|syst-title|syst-entry|syst-lisel|syst-uline|syst-xcode|syst-cprog|syst-xprog|syst-xform|syst-ldbpg|syst-tvar0|syst-tvar1|syst-tvar2|syst-tvar3|syst-tvar4|syst-tvar5|syst-tvar6|syst-tvar7|syst-tvar8|syst-tvar9|syst-msgid|syst-msgty|syst-msgno|syst-msgv1|syst-msgv2|syst-msgv3|syst-msgv4|syst-oncom|syst-vline|syst-winsl|syst-staco|syst-staro|syst-datar|syst-host|syst-locdb|syst-locop|syst-datlo|syst-timlo|syst-zonlo)$/',
'reserved' => '/^((?i)abs|acos|add|add-corresponding|adjacent|after|aliases|all|analyzer|and|any|append|as|ascending|asin|assign|assigned|assigning|at|atan|authority-check|avg|back|before|begin|binary|bit|bit-and|bit-not|bit-or|bit-xor|blank|block|break-point|buffer|by|c|call|case|catch|ceil|centered|chain|change|changing|check|checkbox|class|class-data|class-events|class-methods|class-pool|clear|client|close|cnt|code|collect|color|comment|commit|communication|compute|concatenate|condense|constants|context|contexts|continue|control|controls|convert|copy|corresponding|cos|cosh|count|country|create|currency|cursor|customer-function|data|database|dataset|delete|decimals|default|define|demand|descending|describe|dialog|distinct|div|divide|divide-corresponding|do|duplicates|dynpro|edit|editor-call|else|elseif|end|end-of-definition|end-of-page|end-of-selection|endat|endcase|endcatch|endchain|endclass|enddo|endexec|endform|endfunction|endif|endinterface|endloop|endmethod|endmodule|endon|endprovide|endselect|endwhile|entries|events|exec|exit|exit-command|exp|exponent|export|exporting|exceptions|extended|extract|fetch|field|field-groups|field-symbols|fields|floor|for|form|format|frac|frame|free|from|function|function-pool|generate|get|group|hashed|header|help-id|help-request|hide|hotspot|icon|id|if|import|importing|include|index|infotypes|initialization|inner|input|insert|intensified|interface|interface-pool|interfaces|into|inverse|join|key|language|last|leave|left|left-justified|like|line|line-count|line-selection|line-size|lines|list-processing|load|load-of-program|local|locale|log|log10|loop|m|margin|mask|matchcode|max|memory|message|message-id|messages|method|methods|min|mod|mode|modif|modify|module|move|move-corresponding|multiply|multiply-corresponding|new|new-line|new-page|next|no|no-gap|no-gaps|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unique|o|object|obligatory|occurs|of|off|on|open|or|order|others|outer|output|overlay|pack|page|parameter|parameters|perform|pf-status|position|print|print-control|private|process|program|property|protected|provide|public|put|radiobutton|raise|raising|range|ranges|read|receive|refresh|reject|replace|report|requested|reserve|reset|right-justified|rollback|round|rows|rtti|run|scan|screen|search|separated|scroll|scroll-boundary|select|select-options|selection-screen|selection-table|set|shared|shift|sign|sin|single|sinh|size|skip|sort|sorted|split|sql|sqrt|stamp|standard|start-of-selection|statics|stop|string|strlen|structure|submit|subtract|subtract-corresponding|sum|supply|suppress|symbol|syntax-check|syntax-trace|system-call|system-exceptions|table|table_line|tables|tan|tanh|text|textpool|time|times|title|titlebar|to|top-of-page|transaction|transfer|translate|transporting|trunc|type|type-pool|type-pools|types|uline|under|unique|unit|unpack|up|update|user-command|using|value|value-request|values|vary|when|where|while|window|with|with-title|work|write|x|xstring|z|zone)$/',
'constants' => '/^((?i)initial|null|space|col_background|col_heading|col_normal|col_total|col_key|col_positive|col_negative|col_group)$/',
),
),
0 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 =>
array (
'sy' => '/^((?i)screen-name|screen-group1|screen-group2|screen-group3|screen-group4|screen-required|screen-input|screen-output|screen-intensified|screen-invisible|screen-length|screen-active|sy-index|sy-pagno|sy-tabix|sy-tfill|sy-tlopc|sy-tmaxl|sy-toccu|sy-ttabc|sy-tstis|sy-ttabi|sy-dbcnt|sy-fdpos|sy-colno|sy-linct|sy-linno|sy-linsz|sy-pagct|sy-macol|sy-marow|sy-tleng|sy-sfoff|sy-willi|sy-lilli|sy-subrc|sy-fleng|sy-cucol|sy-curow|sy-lsind|sy-listi|sy-stepl|sy-tpagi|sy-winx1|sy-winy1|sy-winx2|sy-winy2|sy-winco|sy-winro|sy-windi|sy-srows|sy-scols|sy-loopc|sy-folen|sy-fodec|sy-tzone|sy-dayst|sy-ftype|sy-appli|sy-fdayw|sy-ccurs|sy-ccurt|sy-debug|sy-ctype|sy-input|sy-langu|sy-modno|sy-batch|sy-binpt|sy-calld|sy-dynnr|sy-dyngr|sy-newpa|sy-pri40|sy-rstrt|sy-wtitl|sy-cpage|sy-dbnam|sy-mandt|sy-prefx|sy-fmkey|sy-pexpi|sy-prini|sy-primm|sy-prrel|sy-playo|sy-prbig|sy-playp|sy-prnew|sy-prlog|sy-pdest|sy-plist|sy-pauth|sy-prdsn|sy-pnwpa|sy-callr|sy-repi2|sy-rtitl|sy-prrec|sy-prtxt|sy-prabt|sy-lpass|sy-nrpag|sy-paart|sy-prcop|sy-batzs|sy-bspld|sy-brep4|sy-batzo|sy-batzd|sy-batzw|sy-batzm|sy-ctabl|sy-dbsys|sy-dcsys|sy-macdb|sy-sysid|sy-opsys|sy-pfkey|sy-saprl|sy-tcode|sy-ucomm|sy-cfwae|sy-chwae|sy-spono|sy-sponr|sy-waers|sy-cdate|sy-datum|sy-slset|sy-subty|sy-subcs|sy-group|sy-ffile|sy-uzeit|sy-dsnam|sy-repid|sy-tabid|sy-tfdsn|sy-uname|sy-lstat|sy-abcde|sy-marky|sy-sfnam|sy-tname|sy-msgli|sy-title|sy-entry|sy-lisel|sy-uline|sy-xcode|sy-cprog|sy-xprog|sy-xform|sy-ldbpg|sy-tvar0|sy-tvar1|sy-tvar2|sy-tvar3|sy-tvar4|sy-tvar5|sy-tvar6|sy-tvar7|sy-tvar8|sy-tvar9|sy-msgid|sy-msgty|sy-msgno|sy-msgv1|sy-msgv2|sy-msgv3|sy-msgv4|sy-oncom|sy-vline|sy-winsl|sy-staco|sy-staro|sy-datar|sy-host|sy-locdb|sy-locop|sy-datlo|sy-timlo|sy-zonlo|syst-index|syst-pagno|syst-tabix|syst-tfill|syst-tlopc|syst-tmaxl|syst-toccu|syst-ttabc|syst-tstis|syst-ttabi|syst-dbcnt|syst-fdpos|syst-colno|syst-linct|syst-linno|syst-linsz|syst-pagct|syst-macol|syst-marow|syst-tleng|syst-sfoff|syst-willi|syst-lilli|syst-subrc|syst-fleng|syst-cucol|syst-curow|syst-lsind|syst-listi|syst-stepl|syst-tpagi|syst-winx1|syst-winy1|syst-winx2|syst-winy2|syst-winco|syst-winro|syst-windi|syst-srows|syst-scols|syst-loopc|syst-folen|syst-fodec|syst-tzone|syst-dayst|syst-ftype|syst-appli|syst-fdayw|syst-ccurs|syst-ccurt|syst-debug|syst-ctype|syst-input|syst-langu|syst-modno|syst-batch|syst-binpt|syst-calld|syst-dynnr|syst-dyngr|syst-newpa|syst-pri40|syst-rstrt|syst-wtitl|syst-cpage|syst-dbnam|syst-mandt|syst-prefx|syst-fmkey|syst-pexpi|syst-prini|syst-primm|syst-prrel|syst-playo|syst-prbig|syst-playp|syst-prnew|syst-prlog|syst-pdest|syst-plist|syst-pauth|syst-prdsn|syst-pnwpa|syst-callr|syst-repi2|syst-rtitl|syst-prrec|syst-prtxt|syst-prabt|syst-lpass|syst-nrpag|syst-paart|syst-prcop|syst-batzs|syst-bspld|syst-brep4|syst-batzo|syst-batzd|syst-batzw|syst-batzm|syst-ctabl|syst-dbsys|syst-dcsys|syst-macdb|syst-sysid|syst-opsys|syst-pfkey|syst-saprl|syst-tcode|syst-ucomm|syst-cfwae|syst-chwae|syst-spono|syst-sponr|syst-waers|syst-cdate|syst-datum|syst-slset|syst-subty|syst-subcs|syst-group|syst-ffile|syst-uzeit|syst-dsnam|syst-repid|syst-tabid|syst-tfdsn|syst-uname|syst-lstat|syst-abcde|syst-marky|syst-sfnam|syst-tname|syst-msgli|syst-title|syst-entry|syst-lisel|syst-uline|syst-xcode|syst-cprog|syst-xprog|syst-xform|syst-ldbpg|syst-tvar0|syst-tvar1|syst-tvar2|syst-tvar3|syst-tvar4|syst-tvar5|syst-tvar6|syst-tvar7|syst-tvar8|syst-tvar9|syst-msgid|syst-msgty|syst-msgno|syst-msgv1|syst-msgv2|syst-msgv3|syst-msgv4|syst-oncom|syst-vline|syst-winsl|syst-staco|syst-staro|syst-datar|syst-host|syst-locdb|syst-locop|syst-datlo|syst-timlo|syst-zonlo)$/',
'reserved' => '/^((?i)abs|acos|add|add-corresponding|adjacent|after|aliases|all|analyzer|and|any|append|as|ascending|asin|assign|assigned|assigning|at|atan|authority-check|avg|back|before|begin|binary|bit|bit-and|bit-not|bit-or|bit-xor|blank|block|break-point|buffer|by|c|call|case|catch|ceil|centered|chain|change|changing|check|checkbox|class|class-data|class-events|class-methods|class-pool|clear|client|close|cnt|code|collect|color|comment|commit|communication|compute|concatenate|condense|constants|context|contexts|continue|control|controls|convert|copy|corresponding|cos|cosh|count|country|create|currency|cursor|customer-function|data|database|dataset|delete|decimals|default|define|demand|descending|describe|dialog|distinct|div|divide|divide-corresponding|do|duplicates|dynpro|edit|editor-call|else|elseif|end|end-of-definition|end-of-page|end-of-selection|endat|endcase|endcatch|endchain|endclass|enddo|endexec|endform|endfunction|endif|endinterface|endloop|endmethod|endmodule|endon|endprovide|endselect|endwhile|entries|events|exec|exit|exit-command|exp|exponent|export|exporting|exceptions|extended|extract|fetch|field|field-groups|field-symbols|fields|floor|for|form|format|frac|frame|free|from|function|function-pool|generate|get|group|hashed|header|help-id|help-request|hide|hotspot|icon|id|if|import|importing|include|index|infotypes|initialization|inner|input|insert|intensified|interface|interface-pool|interfaces|into|inverse|join|key|language|last|leave|left|left-justified|like|line|line-count|line-selection|line-size|lines|list-processing|load|load-of-program|local|locale|log|log10|loop|m|margin|mask|matchcode|max|memory|message|message-id|messages|method|methods|min|mod|mode|modif|modify|module|move|move-corresponding|multiply|multiply-corresponding|new|new-line|new-page|next|no|no-gap|no-gaps|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unique|o|object|obligatory|occurs|of|off|on|open|or|order|others|outer|output|overlay|pack|page|parameter|parameters|perform|pf-status|position|print|print-control|private|process|program|property|protected|provide|public|put|radiobutton|raise|raising|range|ranges|read|receive|refresh|reject|replace|report|requested|reserve|reset|right-justified|rollback|round|rows|rtti|run|scan|screen|search|separated|scroll|scroll-boundary|select|select-options|selection-screen|selection-table|set|shared|shift|sign|sin|single|sinh|size|skip|sort|sorted|split|sql|sqrt|stamp|standard|start-of-selection|statics|stop|string|strlen|structure|submit|subtract|subtract-corresponding|sum|supply|suppress|symbol|syntax-check|syntax-trace|system-call|system-exceptions|table|table_line|tables|tan|tanh|text|textpool|time|times|title|titlebar|to|top-of-page|transaction|transfer|translate|transporting|trunc|type|type-pool|type-pools|types|uline|under|unique|unit|unpack|up|update|user-command|using|value|value-request|values|vary|when|where|while|window|with|with-title|work|write|x|xstring|z|zone)$/',
'constants' => '/^((?i)initial|null|space|col_background|col_heading|col_normal|col_total|col_key|col_positive|col_negative|col_group)$/',
),
),
1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 =>
array (
'sy' => '/^((?i)screen-name|screen-group1|screen-group2|screen-group3|screen-group4|screen-required|screen-input|screen-output|screen-intensified|screen-invisible|screen-length|screen-active|sy-index|sy-pagno|sy-tabix|sy-tfill|sy-tlopc|sy-tmaxl|sy-toccu|sy-ttabc|sy-tstis|sy-ttabi|sy-dbcnt|sy-fdpos|sy-colno|sy-linct|sy-linno|sy-linsz|sy-pagct|sy-macol|sy-marow|sy-tleng|sy-sfoff|sy-willi|sy-lilli|sy-subrc|sy-fleng|sy-cucol|sy-curow|sy-lsind|sy-listi|sy-stepl|sy-tpagi|sy-winx1|sy-winy1|sy-winx2|sy-winy2|sy-winco|sy-winro|sy-windi|sy-srows|sy-scols|sy-loopc|sy-folen|sy-fodec|sy-tzone|sy-dayst|sy-ftype|sy-appli|sy-fdayw|sy-ccurs|sy-ccurt|sy-debug|sy-ctype|sy-input|sy-langu|sy-modno|sy-batch|sy-binpt|sy-calld|sy-dynnr|sy-dyngr|sy-newpa|sy-pri40|sy-rstrt|sy-wtitl|sy-cpage|sy-dbnam|sy-mandt|sy-prefx|sy-fmkey|sy-pexpi|sy-prini|sy-primm|sy-prrel|sy-playo|sy-prbig|sy-playp|sy-prnew|sy-prlog|sy-pdest|sy-plist|sy-pauth|sy-prdsn|sy-pnwpa|sy-callr|sy-repi2|sy-rtitl|sy-prrec|sy-prtxt|sy-prabt|sy-lpass|sy-nrpag|sy-paart|sy-prcop|sy-batzs|sy-bspld|sy-brep4|sy-batzo|sy-batzd|sy-batzw|sy-batzm|sy-ctabl|sy-dbsys|sy-dcsys|sy-macdb|sy-sysid|sy-opsys|sy-pfkey|sy-saprl|sy-tcode|sy-ucomm|sy-cfwae|sy-chwae|sy-spono|sy-sponr|sy-waers|sy-cdate|sy-datum|sy-slset|sy-subty|sy-subcs|sy-group|sy-ffile|sy-uzeit|sy-dsnam|sy-repid|sy-tabid|sy-tfdsn|sy-uname|sy-lstat|sy-abcde|sy-marky|sy-sfnam|sy-tname|sy-msgli|sy-title|sy-entry|sy-lisel|sy-uline|sy-xcode|sy-cprog|sy-xprog|sy-xform|sy-ldbpg|sy-tvar0|sy-tvar1|sy-tvar2|sy-tvar3|sy-tvar4|sy-tvar5|sy-tvar6|sy-tvar7|sy-tvar8|sy-tvar9|sy-msgid|sy-msgty|sy-msgno|sy-msgv1|sy-msgv2|sy-msgv3|sy-msgv4|sy-oncom|sy-vline|sy-winsl|sy-staco|sy-staro|sy-datar|sy-host|sy-locdb|sy-locop|sy-datlo|sy-timlo|sy-zonlo|syst-index|syst-pagno|syst-tabix|syst-tfill|syst-tlopc|syst-tmaxl|syst-toccu|syst-ttabc|syst-tstis|syst-ttabi|syst-dbcnt|syst-fdpos|syst-colno|syst-linct|syst-linno|syst-linsz|syst-pagct|syst-macol|syst-marow|syst-tleng|syst-sfoff|syst-willi|syst-lilli|syst-subrc|syst-fleng|syst-cucol|syst-curow|syst-lsind|syst-listi|syst-stepl|syst-tpagi|syst-winx1|syst-winy1|syst-winx2|syst-winy2|syst-winco|syst-winro|syst-windi|syst-srows|syst-scols|syst-loopc|syst-folen|syst-fodec|syst-tzone|syst-dayst|syst-ftype|syst-appli|syst-fdayw|syst-ccurs|syst-ccurt|syst-debug|syst-ctype|syst-input|syst-langu|syst-modno|syst-batch|syst-binpt|syst-calld|syst-dynnr|syst-dyngr|syst-newpa|syst-pri40|syst-rstrt|syst-wtitl|syst-cpage|syst-dbnam|syst-mandt|syst-prefx|syst-fmkey|syst-pexpi|syst-prini|syst-primm|syst-prrel|syst-playo|syst-prbig|syst-playp|syst-prnew|syst-prlog|syst-pdest|syst-plist|syst-pauth|syst-prdsn|syst-pnwpa|syst-callr|syst-repi2|syst-rtitl|syst-prrec|syst-prtxt|syst-prabt|syst-lpass|syst-nrpag|syst-paart|syst-prcop|syst-batzs|syst-bspld|syst-brep4|syst-batzo|syst-batzd|syst-batzw|syst-batzm|syst-ctabl|syst-dbsys|syst-dcsys|syst-macdb|syst-sysid|syst-opsys|syst-pfkey|syst-saprl|syst-tcode|syst-ucomm|syst-cfwae|syst-chwae|syst-spono|syst-sponr|syst-waers|syst-cdate|syst-datum|syst-slset|syst-subty|syst-subcs|syst-group|syst-ffile|syst-uzeit|syst-dsnam|syst-repid|syst-tabid|syst-tfdsn|syst-uname|syst-lstat|syst-abcde|syst-marky|syst-sfnam|syst-tname|syst-msgli|syst-title|syst-entry|syst-lisel|syst-uline|syst-xcode|syst-cprog|syst-xprog|syst-xform|syst-ldbpg|syst-tvar0|syst-tvar1|syst-tvar2|syst-tvar3|syst-tvar4|syst-tvar5|syst-tvar6|syst-tvar7|syst-tvar8|syst-tvar9|syst-msgid|syst-msgty|syst-msgno|syst-msgv1|syst-msgv2|syst-msgv3|syst-msgv4|syst-oncom|syst-vline|syst-winsl|syst-staco|syst-staro|syst-datar|syst-host|syst-locdb|syst-locop|syst-datlo|syst-timlo|syst-zonlo)$/',
'reserved' => '/^((?i)abs|acos|add|add-corresponding|adjacent|after|aliases|all|analyzer|and|any|append|as|ascending|asin|assign|assigned|assigning|at|atan|authority-check|avg|back|before|begin|binary|bit|bit-and|bit-not|bit-or|bit-xor|blank|block|break-point|buffer|by|c|call|case|catch|ceil|centered|chain|change|changing|check|checkbox|class|class-data|class-events|class-methods|class-pool|clear|client|close|cnt|code|collect|color|comment|commit|communication|compute|concatenate|condense|constants|context|contexts|continue|control|controls|convert|copy|corresponding|cos|cosh|count|country|create|currency|cursor|customer-function|data|database|dataset|delete|decimals|default|define|demand|descending|describe|dialog|distinct|div|divide|divide-corresponding|do|duplicates|dynpro|edit|editor-call|else|elseif|end|end-of-definition|end-of-page|end-of-selection|endat|endcase|endcatch|endchain|endclass|enddo|endexec|endform|endfunction|endif|endinterface|endloop|endmethod|endmodule|endon|endprovide|endselect|endwhile|entries|events|exec|exit|exit-command|exp|exponent|export|exporting|exceptions|extended|extract|fetch|field|field-groups|field-symbols|fields|floor|for|form|format|frac|frame|free|from|function|function-pool|generate|get|group|hashed|header|help-id|help-request|hide|hotspot|icon|id|if|import|importing|include|index|infotypes|initialization|inner|input|insert|intensified|interface|interface-pool|interfaces|into|inverse|join|key|language|last|leave|left|left-justified|like|line|line-count|line-selection|line-size|lines|list-processing|load|load-of-program|local|locale|log|log10|loop|m|margin|mask|matchcode|max|memory|message|message-id|messages|method|methods|min|mod|mode|modif|modify|module|move|move-corresponding|multiply|multiply-corresponding|new|new-line|new-page|next|no|no-gap|no-gaps|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unique|o|object|obligatory|occurs|of|off|on|open|or|order|others|outer|output|overlay|pack|page|parameter|parameters|perform|pf-status|position|print|print-control|private|process|program|property|protected|provide|public|put|radiobutton|raise|raising|range|ranges|read|receive|refresh|reject|replace|report|requested|reserve|reset|right-justified|rollback|round|rows|rtti|run|scan|screen|search|separated|scroll|scroll-boundary|select|select-options|selection-screen|selection-table|set|shared|shift|sign|sin|single|sinh|size|skip|sort|sorted|split|sql|sqrt|stamp|standard|start-of-selection|statics|stop|string|strlen|structure|submit|subtract|subtract-corresponding|sum|supply|suppress|symbol|syntax-check|syntax-trace|system-call|system-exceptions|table|table_line|tables|tan|tanh|text|textpool|time|times|title|titlebar|to|top-of-page|transaction|transfer|translate|transporting|trunc|type|type-pool|type-pools|types|uline|under|unique|unit|unpack|up|update|user-command|using|value|value-request|values|vary|when|where|while|window|with|with-title|work|write|x|xstring|z|zone)$/',
'constants' => '/^((?i)initial|null|space|col_background|col_heading|col_normal|col_total|col_key|col_positive|col_negative|col_group)$/',
),
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 =>
array (
'sy' => '/^((?i)screen-name|screen-group1|screen-group2|screen-group3|screen-group4|screen-required|screen-input|screen-output|screen-intensified|screen-invisible|screen-length|screen-active|sy-index|sy-pagno|sy-tabix|sy-tfill|sy-tlopc|sy-tmaxl|sy-toccu|sy-ttabc|sy-tstis|sy-ttabi|sy-dbcnt|sy-fdpos|sy-colno|sy-linct|sy-linno|sy-linsz|sy-pagct|sy-macol|sy-marow|sy-tleng|sy-sfoff|sy-willi|sy-lilli|sy-subrc|sy-fleng|sy-cucol|sy-curow|sy-lsind|sy-listi|sy-stepl|sy-tpagi|sy-winx1|sy-winy1|sy-winx2|sy-winy2|sy-winco|sy-winro|sy-windi|sy-srows|sy-scols|sy-loopc|sy-folen|sy-fodec|sy-tzone|sy-dayst|sy-ftype|sy-appli|sy-fdayw|sy-ccurs|sy-ccurt|sy-debug|sy-ctype|sy-input|sy-langu|sy-modno|sy-batch|sy-binpt|sy-calld|sy-dynnr|sy-dyngr|sy-newpa|sy-pri40|sy-rstrt|sy-wtitl|sy-cpage|sy-dbnam|sy-mandt|sy-prefx|sy-fmkey|sy-pexpi|sy-prini|sy-primm|sy-prrel|sy-playo|sy-prbig|sy-playp|sy-prnew|sy-prlog|sy-pdest|sy-plist|sy-pauth|sy-prdsn|sy-pnwpa|sy-callr|sy-repi2|sy-rtitl|sy-prrec|sy-prtxt|sy-prabt|sy-lpass|sy-nrpag|sy-paart|sy-prcop|sy-batzs|sy-bspld|sy-brep4|sy-batzo|sy-batzd|sy-batzw|sy-batzm|sy-ctabl|sy-dbsys|sy-dcsys|sy-macdb|sy-sysid|sy-opsys|sy-pfkey|sy-saprl|sy-tcode|sy-ucomm|sy-cfwae|sy-chwae|sy-spono|sy-sponr|sy-waers|sy-cdate|sy-datum|sy-slset|sy-subty|sy-subcs|sy-group|sy-ffile|sy-uzeit|sy-dsnam|sy-repid|sy-tabid|sy-tfdsn|sy-uname|sy-lstat|sy-abcde|sy-marky|sy-sfnam|sy-tname|sy-msgli|sy-title|sy-entry|sy-lisel|sy-uline|sy-xcode|sy-cprog|sy-xprog|sy-xform|sy-ldbpg|sy-tvar0|sy-tvar1|sy-tvar2|sy-tvar3|sy-tvar4|sy-tvar5|sy-tvar6|sy-tvar7|sy-tvar8|sy-tvar9|sy-msgid|sy-msgty|sy-msgno|sy-msgv1|sy-msgv2|sy-msgv3|sy-msgv4|sy-oncom|sy-vline|sy-winsl|sy-staco|sy-staro|sy-datar|sy-host|sy-locdb|sy-locop|sy-datlo|sy-timlo|sy-zonlo|syst-index|syst-pagno|syst-tabix|syst-tfill|syst-tlopc|syst-tmaxl|syst-toccu|syst-ttabc|syst-tstis|syst-ttabi|syst-dbcnt|syst-fdpos|syst-colno|syst-linct|syst-linno|syst-linsz|syst-pagct|syst-macol|syst-marow|syst-tleng|syst-sfoff|syst-willi|syst-lilli|syst-subrc|syst-fleng|syst-cucol|syst-curow|syst-lsind|syst-listi|syst-stepl|syst-tpagi|syst-winx1|syst-winy1|syst-winx2|syst-winy2|syst-winco|syst-winro|syst-windi|syst-srows|syst-scols|syst-loopc|syst-folen|syst-fodec|syst-tzone|syst-dayst|syst-ftype|syst-appli|syst-fdayw|syst-ccurs|syst-ccurt|syst-debug|syst-ctype|syst-input|syst-langu|syst-modno|syst-batch|syst-binpt|syst-calld|syst-dynnr|syst-dyngr|syst-newpa|syst-pri40|syst-rstrt|syst-wtitl|syst-cpage|syst-dbnam|syst-mandt|syst-prefx|syst-fmkey|syst-pexpi|syst-prini|syst-primm|syst-prrel|syst-playo|syst-prbig|syst-playp|syst-prnew|syst-prlog|syst-pdest|syst-plist|syst-pauth|syst-prdsn|syst-pnwpa|syst-callr|syst-repi2|syst-rtitl|syst-prrec|syst-prtxt|syst-prabt|syst-lpass|syst-nrpag|syst-paart|syst-prcop|syst-batzs|syst-bspld|syst-brep4|syst-batzo|syst-batzd|syst-batzw|syst-batzm|syst-ctabl|syst-dbsys|syst-dcsys|syst-macdb|syst-sysid|syst-opsys|syst-pfkey|syst-saprl|syst-tcode|syst-ucomm|syst-cfwae|syst-chwae|syst-spono|syst-sponr|syst-waers|syst-cdate|syst-datum|syst-slset|syst-subty|syst-subcs|syst-group|syst-ffile|syst-uzeit|syst-dsnam|syst-repid|syst-tabid|syst-tfdsn|syst-uname|syst-lstat|syst-abcde|syst-marky|syst-sfnam|syst-tname|syst-msgli|syst-title|syst-entry|syst-lisel|syst-uline|syst-xcode|syst-cprog|syst-xprog|syst-xform|syst-ldbpg|syst-tvar0|syst-tvar1|syst-tvar2|syst-tvar3|syst-tvar4|syst-tvar5|syst-tvar6|syst-tvar7|syst-tvar8|syst-tvar9|syst-msgid|syst-msgty|syst-msgno|syst-msgv1|syst-msgv2|syst-msgv3|syst-msgv4|syst-oncom|syst-vline|syst-winsl|syst-staco|syst-staro|syst-datar|syst-host|syst-locdb|syst-locop|syst-datlo|syst-timlo|syst-zonlo)$/',
'reserved' => '/^((?i)abs|acos|add|add-corresponding|adjacent|after|aliases|all|analyzer|and|any|append|as|ascending|asin|assign|assigned|assigning|at|atan|authority-check|avg|back|before|begin|binary|bit|bit-and|bit-not|bit-or|bit-xor|blank|block|break-point|buffer|by|c|call|case|catch|ceil|centered|chain|change|changing|check|checkbox|class|class-data|class-events|class-methods|class-pool|clear|client|close|cnt|code|collect|color|comment|commit|communication|compute|concatenate|condense|constants|context|contexts|continue|control|controls|convert|copy|corresponding|cos|cosh|count|country|create|currency|cursor|customer-function|data|database|dataset|delete|decimals|default|define|demand|descending|describe|dialog|distinct|div|divide|divide-corresponding|do|duplicates|dynpro|edit|editor-call|else|elseif|end|end-of-definition|end-of-page|end-of-selection|endat|endcase|endcatch|endchain|endclass|enddo|endexec|endform|endfunction|endif|endinterface|endloop|endmethod|endmodule|endon|endprovide|endselect|endwhile|entries|events|exec|exit|exit-command|exp|exponent|export|exporting|exceptions|extended|extract|fetch|field|field-groups|field-symbols|fields|floor|for|form|format|frac|frame|free|from|function|function-pool|generate|get|group|hashed|header|help-id|help-request|hide|hotspot|icon|id|if|import|importing|include|index|infotypes|initialization|inner|input|insert|intensified|interface|interface-pool|interfaces|into|inverse|join|key|language|last|leave|left|left-justified|like|line|line-count|line-selection|line-size|lines|list-processing|load|load-of-program|local|locale|log|log10|loop|m|margin|mask|matchcode|max|memory|message|message-id|messages|method|methods|min|mod|mode|modif|modify|module|move|move-corresponding|multiply|multiply-corresponding|new|new-line|new-page|next|no|no-gap|no-gaps|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unique|o|object|obligatory|occurs|of|off|on|open|or|order|others|outer|output|overlay|pack|page|parameter|parameters|perform|pf-status|position|print|print-control|private|process|program|property|protected|provide|public|put|radiobutton|raise|raising|range|ranges|read|receive|refresh|reject|replace|report|requested|reserve|reset|right-justified|rollback|round|rows|rtti|run|scan|screen|search|separated|scroll|scroll-boundary|select|select-options|selection-screen|selection-table|set|shared|shift|sign|sin|single|sinh|size|skip|sort|sorted|split|sql|sqrt|stamp|standard|start-of-selection|statics|stop|string|strlen|structure|submit|subtract|subtract-corresponding|sum|supply|suppress|symbol|syntax-check|syntax-trace|system-call|system-exceptions|table|table_line|tables|tan|tanh|text|textpool|time|times|title|titlebar|to|top-of-page|transaction|transfer|translate|transporting|trunc|type|type-pool|type-pools|types|uline|under|unique|unit|unpack|up|update|user-command|using|value|value-request|values|vary|when|where|while|window|with|with-title|work|write|x|xstring|z|zone)$/',
'constants' => '/^((?i)initial|null|space|col_background|col_heading|col_normal|col_total|col_key|col_positive|col_negative|col_group)$/',
),
),
3 =>
array (
),
4 =>
array (
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
),
3 =>
array (
),
4 =>
array (
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
),
0 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
),
3 =>
array (
),
4 =>
array (
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'sy' => 'reserved',
'reserved' => 'reserved',
'constants' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,894 @@
<?php
/**
* Auto-generated class. AVRC syntax highlighting
*
*
* C/C++ highlighter specific to Atmel AVR microcontrollers
*
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: avrc.xml
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. AVRC syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.7.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_AVRC extends Text_Highlighter
{
var $_language = 'avrc';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_AVRC($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
0 => '/((?i)\\\\)/',
1 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
2 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
3 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
4 => '//',
5 => '/((?i)")|((?i)<)/',
6 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\/\\*)|((?i)\\/\\/.+)/',
7 => '/((?i)\\$\\w+\\s*:.+\\$)/',
8 => '/((?i)\\$\\w+\\s*:.+\\$)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
0 =>
array (
0 => 0,
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
3 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
4 =>
array (
),
5 =>
array (
0 => 0,
1 => 0,
),
6 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 2,
8 => 0,
9 => 0,
),
7 =>
array (
0 => 0,
),
8 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
0 =>
array (
0 => '',
),
1 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
2 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
3 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
4 =>
array (
),
5 =>
array (
0 => 'quotes',
1 => 'quotes',
),
6 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => '',
4 => '',
5 => '',
6 => '',
7 => '',
8 => 'mlcomment',
9 => 'comment',
),
7 =>
array (
0 => '',
),
8 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
0 =>
array (
0 => 'special',
),
1 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
2 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
3 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
4 =>
array (
),
5 =>
array (
0 => 'string',
1 => 'string',
),
6 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'identifier',
4 => 'number',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'mlcomment',
9 => 'comment',
),
7 =>
array (
0 => 'inlinedoc',
),
8 =>
array (
0 => 'inlinedoc',
),
);
$this->_end = array (
0 => '/(?i)"/',
1 => '/(?i)\\}/',
2 => '/(?i)\\)/',
3 => '/(?i)\\]/',
4 => '/(?i)>/',
5 => '/(?mi)(?<!\\\\)$/',
6 => '/(?mi)(?<!\\\\)$/',
7 => '/(?i)\\*\\//',
8 => '/(?mi)$/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
0 =>
array (
0 => -1,
),
1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
2 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
3 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
4 =>
array (
),
5 =>
array (
0 => 0,
1 => 4,
),
6 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => 7,
9 => 8,
),
7 =>
array (
0 => -1,
),
8 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'registers' => '/^(ACSR|ADCH|ADCL|ADCSRA|ADMUX|ASSR|DDRA|DDRB|DDRC|DDRD|DDRE|DDRF|DDRG|EEARH|EEARL|EECR|EEDR|EICRA|EICRB|EIFR|EIMSK|ETIFR|ETIMSK|GICR|GIFR|ICR1H|ICR1L|ICR3H|ICR3L|MCUCR|MCUCSR|OCDR|OCR0|OCR1AH|OCR1AL|OCR1BH|OCR1BL|OCR1CH|OCR1CL|OCR2|OCR3AH|OCR3AL|OCR3BH|OCR3BL|OCR3CH|OCR3CL|OSCCAL|PINA|PINB|PINC|PIND|PINE|PINF|PING|PORTA|PORTB|PORTC|PORTD|PORTE|PORTF|PORTG|RAMPZ|SFIOR|SPCR|SPDR|SPH|SPL|SPMCR|SPMCSR|SPSR|SREG|TCCR0|TCCR1A|TCCR1B|TCCR1C|TCCR2|TCCR3A|TCCR3B|TCCR3C|TCNT0|TCNT1H|TCNT1L|TCNT2|TCNT3H|TCNT3L|TIFR|TIMSK|TWAR|TWBR|TWCR|TWDR|TWSR|UBRR0H|UBRR0L|UBRR1H|UBRR1L|UBRRH|UBRRL|UCSR0A|UCSR0B|UCSR0C|UCSR1A|UCSR1B|UCSR1C|UCSRA|UCSRB|UCSRC|UDR|UDR0|UDR1|WDTCR|XDIV|XMCRA|XMCRB)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
0 =>
array (
0 =>
array (
),
),
1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'registers' => '/^(ACSR|ADCH|ADCL|ADCSRA|ADMUX|ASSR|DDRA|DDRB|DDRC|DDRD|DDRE|DDRF|DDRG|EEARH|EEARL|EECR|EEDR|EICRA|EICRB|EIFR|EIMSK|ETIFR|ETIMSK|GICR|GIFR|ICR1H|ICR1L|ICR3H|ICR3L|MCUCR|MCUCSR|OCDR|OCR0|OCR1AH|OCR1AL|OCR1BH|OCR1BL|OCR1CH|OCR1CL|OCR2|OCR3AH|OCR3AL|OCR3BH|OCR3BL|OCR3CH|OCR3CL|OSCCAL|PINA|PINB|PINC|PIND|PINE|PINF|PING|PORTA|PORTB|PORTC|PORTD|PORTE|PORTF|PORTG|RAMPZ|SFIOR|SPCR|SPDR|SPH|SPL|SPMCR|SPMCSR|SPSR|SREG|TCCR0|TCCR1A|TCCR1B|TCCR1C|TCCR2|TCCR3A|TCCR3B|TCCR3C|TCNT0|TCNT1H|TCNT1L|TCNT2|TCNT3H|TCNT3L|TIFR|TIMSK|TWAR|TWBR|TWCR|TWDR|TWSR|UBRR0H|UBRR0L|UBRR1H|UBRR1L|UBRRH|UBRRL|UCSR0A|UCSR0B|UCSR0C|UCSR1A|UCSR1B|UCSR1C|UCSRA|UCSRB|UCSRC|UDR|UDR0|UDR1|WDTCR|XDIV|XMCRA|XMCRB)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'registers' => '/^(ACSR|ADCH|ADCL|ADCSRA|ADMUX|ASSR|DDRA|DDRB|DDRC|DDRD|DDRE|DDRF|DDRG|EEARH|EEARL|EECR|EEDR|EICRA|EICRB|EIFR|EIMSK|ETIFR|ETIMSK|GICR|GIFR|ICR1H|ICR1L|ICR3H|ICR3L|MCUCR|MCUCSR|OCDR|OCR0|OCR1AH|OCR1AL|OCR1BH|OCR1BL|OCR1CH|OCR1CL|OCR2|OCR3AH|OCR3AL|OCR3BH|OCR3BL|OCR3CH|OCR3CL|OSCCAL|PINA|PINB|PINC|PIND|PINE|PINF|PING|PORTA|PORTB|PORTC|PORTD|PORTE|PORTF|PORTG|RAMPZ|SFIOR|SPCR|SPDR|SPH|SPL|SPMCR|SPMCSR|SPSR|SREG|TCCR0|TCCR1A|TCCR1B|TCCR1C|TCCR2|TCCR3A|TCCR3B|TCCR3C|TCNT0|TCNT1H|TCNT1L|TCNT2|TCNT3H|TCNT3L|TIFR|TIMSK|TWAR|TWBR|TWCR|TWDR|TWSR|UBRR0H|UBRR0L|UBRR1H|UBRR1L|UBRRH|UBRRL|UCSR0A|UCSR0B|UCSR0C|UCSR1A|UCSR1B|UCSR1C|UCSRA|UCSRB|UCSRC|UDR|UDR0|UDR1|WDTCR|XDIV|XMCRA|XMCRB)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
3 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'registers' => '/^(ACSR|ADCH|ADCL|ADCSRA|ADMUX|ASSR|DDRA|DDRB|DDRC|DDRD|DDRE|DDRF|DDRG|EEARH|EEARL|EECR|EEDR|EICRA|EICRB|EIFR|EIMSK|ETIFR|ETIMSK|GICR|GIFR|ICR1H|ICR1L|ICR3H|ICR3L|MCUCR|MCUCSR|OCDR|OCR0|OCR1AH|OCR1AL|OCR1BH|OCR1BL|OCR1CH|OCR1CL|OCR2|OCR3AH|OCR3AL|OCR3BH|OCR3BL|OCR3CH|OCR3CL|OSCCAL|PINA|PINB|PINC|PIND|PINE|PINF|PING|PORTA|PORTB|PORTC|PORTD|PORTE|PORTF|PORTG|RAMPZ|SFIOR|SPCR|SPDR|SPH|SPL|SPMCR|SPMCSR|SPSR|SREG|TCCR0|TCCR1A|TCCR1B|TCCR1C|TCCR2|TCCR3A|TCCR3B|TCCR3C|TCNT0|TCNT1H|TCNT1L|TCNT2|TCNT3H|TCNT3L|TIFR|TIMSK|TWAR|TWBR|TWCR|TWDR|TWSR|UBRR0H|UBRR0L|UBRR1H|UBRR1L|UBRRH|UBRRL|UCSR0A|UCSR0B|UCSR0C|UCSR1A|UCSR1B|UCSR1C|UCSRA|UCSRB|UCSRC|UDR|UDR0|UDR1|WDTCR|XDIV|XMCRA|XMCRB)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
4 =>
array (
),
5 =>
array (
0 => -1,
1 => -1,
),
6 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'registers' => '/^(ACSR|ADCH|ADCL|ADCSRA|ADMUX|ASSR|DDRA|DDRB|DDRC|DDRD|DDRE|DDRF|DDRG|EEARH|EEARL|EECR|EEDR|EICRA|EICRB|EIFR|EIMSK|ETIFR|ETIMSK|GICR|GIFR|ICR1H|ICR1L|ICR3H|ICR3L|MCUCR|MCUCSR|OCDR|OCR0|OCR1AH|OCR1AL|OCR1BH|OCR1BL|OCR1CH|OCR1CL|OCR2|OCR3AH|OCR3AL|OCR3BH|OCR3BL|OCR3CH|OCR3CL|OSCCAL|PINA|PINB|PINC|PIND|PINE|PINF|PING|PORTA|PORTB|PORTC|PORTD|PORTE|PORTF|PORTG|RAMPZ|SFIOR|SPCR|SPDR|SPH|SPL|SPMCR|SPMCSR|SPSR|SREG|TCCR0|TCCR1A|TCCR1B|TCCR1C|TCCR2|TCCR3A|TCCR3B|TCCR3C|TCNT0|TCNT1H|TCNT1L|TCNT2|TCNT3H|TCNT3L|TIFR|TIMSK|TWAR|TWBR|TWCR|TWDR|TWSR|UBRR0H|UBRR0L|UBRR1H|UBRR1L|UBRRH|UBRRL|UCSR0A|UCSR0B|UCSR0C|UCSR1A|UCSR1B|UCSR1C|UCSRA|UCSRB|UCSRC|UDR|UDR0|UDR1|WDTCR|XDIV|XMCRA|XMCRB)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
4 =>
array (
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 => -1,
9 => -1,
),
7 =>
array (
0 =>
array (
),
),
8 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
4 =>
array (
),
5 =>
array (
0 => NULL,
1 => NULL,
),
6 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
),
7 =>
array (
0 => NULL,
),
8 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
0 =>
array (
0 => false,
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
4 =>
array (
),
5 =>
array (
0 => false,
1 => false,
),
6 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
),
7 =>
array (
0 => false,
),
8 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'reserved' => 'reserved',
'registers' => 'reserved',
'types' => 'types',
'Common Macros' => 'prepro',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,891 @@
<?php
/**
* Auto-generated class. CPP syntax highlighting
*
*
* Thanks to Aaron Kalin for initial
* implementation of this highlighter
*
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: cpp.xml
* @author Aaron Kalin
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. CPP syntax highlighting
*
* @author Aaron Kalin
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.7.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_CPP extends Text_Highlighter
{
var $_language = 'cpp';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_CPP($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
0 => '/((?i)\\\\)/',
1 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
2 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
3 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?mi)^[ \\t]*#include)|((?mii)^[ \\t]*#[ \\t]*[a-z]+)|((?i)\\d*\\.?\\d+)|((?i)\\/\\*)|((?i)\\/\\/.+)/',
4 => '//',
5 => '/((?i)")|((?i)<)/',
6 => '/((?i)")|((?i)\\{)|((?i)\\()|((?i)[a-z_]\\w*)|((?i)\\b0[xX][\\da-f]+)|((?i)\\b\\d\\d*|\\b0\\b)|((?i)\\b0[0-7]+)|((?i)\\b(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\/\\*)|((?i)\\/\\/.+)/',
7 => '/((?i)\\$\\w+\\s*:.+\\$)/',
8 => '/((?i)\\$\\w+\\s*:.+\\$)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
0 =>
array (
0 => 0,
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
3 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 2,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
),
4 =>
array (
),
5 =>
array (
0 => 0,
1 => 0,
),
6 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 2,
8 => 0,
9 => 0,
),
7 =>
array (
0 => 0,
),
8 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
0 =>
array (
0 => '',
),
1 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
2 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
3 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => 'brackets',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => 'prepro',
10 => 'prepro',
11 => '',
12 => 'mlcomment',
13 => 'comment',
),
4 =>
array (
),
5 =>
array (
0 => 'quotes',
1 => 'quotes',
),
6 =>
array (
0 => 'quotes',
1 => 'brackets',
2 => 'brackets',
3 => '',
4 => '',
5 => '',
6 => '',
7 => '',
8 => 'mlcomment',
9 => 'comment',
),
7 =>
array (
0 => '',
),
8 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
0 =>
array (
0 => 'special',
),
1 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
2 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
3 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'code',
4 => 'identifier',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'number',
9 => 'prepro',
10 => 'code',
11 => 'number',
12 => 'mlcomment',
13 => 'comment',
),
4 =>
array (
),
5 =>
array (
0 => 'string',
1 => 'string',
),
6 =>
array (
0 => 'string',
1 => 'code',
2 => 'code',
3 => 'identifier',
4 => 'number',
5 => 'number',
6 => 'number',
7 => 'number',
8 => 'mlcomment',
9 => 'comment',
),
7 =>
array (
0 => 'inlinedoc',
),
8 =>
array (
0 => 'inlinedoc',
),
);
$this->_end = array (
0 => '/(?i)"/',
1 => '/(?i)\\}/',
2 => '/(?i)\\)/',
3 => '/(?i)\\]/',
4 => '/(?i)>/',
5 => '/(?mi)(?<!\\\\)$/',
6 => '/(?mi)(?<!\\\\)$/',
7 => '/(?i)\\*\\//',
8 => '/(?mi)$/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
0 =>
array (
0 => -1,
),
1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
2 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
3 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => 5,
10 => 6,
11 => -1,
12 => 7,
13 => 8,
),
4 =>
array (
),
5 =>
array (
0 => 0,
1 => 4,
),
6 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => 7,
9 => 8,
),
7 =>
array (
0 => -1,
),
8 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
0 =>
array (
0 =>
array (
),
),
1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
3 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 => -1,
10 => -1,
11 =>
array (
),
12 => -1,
13 => -1,
),
4 =>
array (
),
5 =>
array (
0 => -1,
1 => -1,
),
6 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 =>
array (
'reserved' => '/^(and|and_eq|asm|bitand|bitor|break|case|catch|compl|const_cast|continue|default|delete|do|dynamic_cast|else|for|fortran|friend|goto|if|new|not|not_eq|operator|or|or_eq|private|protected|public|reinterpret_cast|return|sizeof|static_cast|switch|this|throw|try|typeid|using|while|xor|xor_eq|false|true)$/',
'types' => '/^(auto|bool|char|class|const|double|enum|explicit|export|extern|float|inline|int|long|mutable|namespace|register|short|signed|static|struct|template|typedef|typename|union|unsigned|virtual|void|volatile|wchar_t)$/',
'Common Macros' => '/^(NULL|TRUE|FALSE|MAX|MIN|__LINE__|__DATA__|__FILE__|__TIME__|__STDC__)$/',
),
4 =>
array (
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 => -1,
9 => -1,
),
7 =>
array (
0 =>
array (
),
),
8 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
),
4 =>
array (
),
5 =>
array (
0 => NULL,
1 => NULL,
),
6 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
),
7 =>
array (
0 => NULL,
),
8 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
0 =>
array (
0 => false,
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
),
4 =>
array (
),
5 =>
array (
0 => false,
1 => false,
),
6 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
),
7 =>
array (
0 => false,
),
8 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'reserved' => 'reserved',
'types' => 'types',
'Common Macros' => 'prepro',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,437 @@
<?php
/**
* Auto-generated class. CSS syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: css.xml
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. CSS syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.7.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_CSS extends Text_Highlighter
{
var $_language = 'css';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_CSS($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\/\\*)|((?i)(@[a-z\\d]+))|((?i)(((\\.|#)?[a-z]+[a-z\\d\\-]*(?![a-z\\d\\-]))|(\\*))(?!\\s*:\\s*[\\s\\{]))|((?i):[a-z][a-z\\d\\-]*)|((?i)\\[)|((?i)\\{)/',
0 => '//',
1 => '/((?i)\\d*\\.?\\d+(\\%|em|ex|pc|pt|px|in|mm|cm))|((?i)\\d*\\.?\\d+)|((?i)[a-z][a-z\\d\\-]*)|((?i)#([\\da-f]{6}|[\\da-f]{3})\\b)/',
2 => '/((?i)\')|((?i)")|((?i)[\\w\\-\\:]+)/',
3 => '/((?i)\\/\\*)|((?i)[a-z][a-z\\d\\-]*\\s*:)|((?i)(((\\.|#)?[a-z]+[a-z\\d\\-]*(?![a-z\\d\\-]))|(\\*))(?!\\s*:\\s*[\\s\\{]))|((?i)\\{)/',
4 => '/((?i)\\\\[\\\\(\\\\)\\\\])/',
5 => '/((?i)\\\\\\\\|\\\\"|\\\\\'|\\\\`)/',
6 => '/((?i)\\\\\\\\|\\\\"|\\\\\'|\\\\`|\\\\t|\\\\n|\\\\r)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 4,
3 => 0,
4 => 0,
5 => 0,
),
0 =>
array (
),
1 =>
array (
0 => 1,
1 => 0,
2 => 0,
3 => 1,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
),
3 =>
array (
0 => 0,
1 => 0,
2 => 4,
3 => 0,
),
4 =>
array (
0 => 0,
),
5 =>
array (
0 => 0,
),
6 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'comment',
1 => '',
2 => '',
3 => '',
4 => 'brackets',
5 => 'brackets',
),
0 =>
array (
),
1 =>
array (
0 => '',
1 => '',
2 => '',
3 => '',
),
2 =>
array (
0 => 'quotes',
1 => 'quotes',
2 => '',
),
3 =>
array (
0 => 'comment',
1 => 'reserved',
2 => '',
3 => 'brackets',
),
4 =>
array (
0 => '',
),
5 =>
array (
0 => '',
),
6 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'comment',
1 => 'var',
2 => 'identifier',
3 => 'special',
4 => 'code',
5 => 'code',
),
0 =>
array (
),
1 =>
array (
0 => 'number',
1 => 'number',
2 => 'code',
3 => 'var',
),
2 =>
array (
0 => 'string',
1 => 'string',
2 => 'var',
),
3 =>
array (
0 => 'comment',
1 => 'code',
2 => 'identifier',
3 => 'code',
),
4 =>
array (
0 => 'string',
),
5 =>
array (
0 => 'special',
),
6 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)\\*\\//',
1 => '/(?i)(?=;|\\})/',
2 => '/(?i)\\]/',
3 => '/(?i)\\}/',
4 => '/(?i)\\)/',
5 => '/(?i)\'/',
6 => '/(?i)"/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => -1,
2 => -1,
3 => -1,
4 => 2,
5 => 3,
),
0 =>
array (
),
1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
),
2 =>
array (
0 => 5,
1 => 6,
2 => -1,
),
3 =>
array (
0 => 0,
1 => 1,
2 => -1,
3 => 3,
),
4 =>
array (
0 => -1,
),
5 =>
array (
0 => -1,
),
6 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 => -1,
5 => -1,
),
0 =>
array (
),
1 =>
array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
'propertyValue' => '/^((?i)far-left|left|center-left|center-right|center|far-right|right-side|right|behind|leftwards|rightwards|inherit|scroll|fixed|transparent|none|repeat-x|repeat-y|repeat|no-repeat|collapse|separate|auto|top|bottom|both|open-quote|close-quote|no-open-quote|no-close-quote|crosshair|default|pointer|move|e-resize|ne-resize|nw-resize|n-resize|se-resize|sw-resize|s-resize|text|wait|help|ltr|rtl|inline|block|list-item|run-in|compact|marker|table|inline-table|table-row-group|table-header-group|table-footer-group|table-row|table-column-group|table-column|table-cell|table-caption|below|level|above|higher|lower|show|hide|caption|icon|menu|message-box|small-caption|status-bar|normal|wider|narrower|ultra-condensed|extra-condensed|condensed|semi-condensed|semi-expanded|expanded|extra-expanded|ultra-expanded|italic|oblique|small-caps|bold|bolder|lighter|inside|outside|disc|circle|square|decimal|decimal-leading-zero|lower-roman|upper-roman|lower-greek|lower-alpha|lower-latin|upper-alpha|upper-latin|hebrew|armenian|georgian|cjk-ideographic|hiragana|katakana|hiragana-iroha|katakana-iroha|crop|cross|invert|visible|hidden|always|avoid|x-low|low|medium|high|x-high|mix?|repeat?|static|relative|absolute|portrait|landscape|spell-out|once|digits|continuous|code|x-slow|slow|fast|x-fast|faster|slower|justify|underline|overline|line-through|blink|capitalize|uppercase|lowercase|embed|bidi-override|baseline|sub|super|text-top|middle|text-bottom|silent|x-soft|soft|loud|x-loud|pre|nowrap|serif|sans-serif|cursive|fantasy|monospace|empty|string|strict|loose|char|true|false|dotted|dashed|solid|double|groove|ridge|inset|outset|larger|smaller|xx-small|x-small|small|large|x-large|xx-large|all|newspaper|distribute|distribute-all-lines|distribute-center-last|inter-word|inter-ideograph|inter-cluster|kashida|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|keep-all|break-all|break-word|lr-tb|tb-rl|thin|thick|inline-block|w-resize|hand|distribute-letter|distribute-space|whitespace|male|female|child)$/',
'namedcolor' => '/^((?i)aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|purple|red|silver|teal|white|yellow|activeborder|activecaption|appworkspace|background|buttonface|buttonhighlight|buttonshadow|buttontext|captiontext|graytext|highlight|highlighttext|inactiveborder|inactivecaption|inactivecaptiontext|infobackground|infotext|menu|menutext|scrollbar|threeddarkshadow|threedface|threedhighlight|threedlightshadow|threedshadow|window|windowframe|windowtext)$/',
),
3 =>
array (
),
),
2 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
),
3 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 => -1,
),
4 =>
array (
0 =>
array (
),
),
5 =>
array (
0 =>
array (
),
),
6 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
0 =>
array (
1 => 'string',
),
1 => NULL,
2 => NULL,
3 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
),
4 =>
array (
0 => NULL,
),
5 =>
array (
0 => NULL,
),
6 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
),
0 =>
array (
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
4 =>
array (
0 => false,
),
5 =>
array (
0 => false,
),
6 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'propertyValue' => 'string',
'namedcolor' => 'var',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,384 @@
<?php
/**
* Auto-generated class. DIFF syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : diff.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. DIFF syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_DIFF extends Text_Highlighter
{
var $_language = 'diff';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_DIFF($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?m)^\\\\\\sNo\\snewline.+$)|((?m)^\\-\\-\\-$)|((?m)^(diff\\s+\\-|Only\\s+|Index).*$)|((?m)^(\\-\\-\\-|\\+\\+\\+)\\s.+$)|((?m)^\\*.*$)|((?m)^\\+.*$)|((?m)^!.*$)|((?m)^\\<\\s.*$)|((?m)^\\>\\s.*$)|((?m)^\\d+(\\,\\d+)?[acd]\\d+(,\\d+)?$)|((?m)^\\-.*$)|((?m)^\\+.*$)|((?m)^@@.+@@$)|((?m)^d\\d+\\s\\d+$)|((?m)^a\\d+\\s\\d+$)|((?m)^(\\d+)(,\\d+)?(a)$)|((?m)^(\\d+)(,\\d+)?(c)$)|((?m)^(\\d+)(,\\d+)?(d)$)|((?m)^a(\\d+)(\\s\\d+)?$)|((?m)^c(\\d+)(\\s\\d+)?$)|((?m)^d(\\d+)(\\s\\d+)?$)/',
0 => '//',
1 => '//',
2 => '//',
3 => '//',
4 => '//',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 1,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
9 => 2,
10 => 0,
11 => 0,
12 => 0,
13 => 0,
14 => 0,
15 => 3,
16 => 3,
17 => 3,
18 => 2,
19 => 2,
20 => 2,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_delim = array (
-1 =>
array (
0 => '',
1 => '',
2 => '',
3 => '',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => 'code',
15 => 'code',
16 => 'code',
17 => '',
18 => 'code',
19 => 'code',
20 => '',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_inner = array (
-1 =>
array (
0 => 'special',
1 => 'code',
2 => 'var',
3 => 'reserved',
4 => 'quotes',
5 => 'string',
6 => 'inlinedoc',
7 => 'quotes',
8 => 'string',
9 => 'code',
10 => 'quotes',
11 => 'string',
12 => 'code',
13 => 'code',
14 => 'var',
15 => 'string',
16 => 'inlinedoc',
17 => 'code',
18 => 'string',
19 => 'inlinedoc',
20 => 'code',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_end = array (
0 => '/(?m)(?=^[ad]\\d+\\s\\d+)/',
1 => '/(?m)^(\\.)$/',
2 => '/(?m)^(\\.)$/',
3 => '/(?m)^(\\.)$/',
4 => '/(?m)^(\\.)$/',
);
$this->_states = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => 0,
15 => 1,
16 => 2,
17 => -1,
18 => 3,
19 => 4,
20 => -1,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_keywords = array (
-1 =>
array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 => -1,
15 => -1,
16 => -1,
17 =>
array (
),
18 => -1,
19 => -1,
20 =>
array (
),
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
15 => false,
16 => false,
17 => false,
18 => false,
19 => false,
20 => false,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
);
$this->_defClass = 'default';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,426 @@
<?php
/**
* Auto-generated class. DTD syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : dtd.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. DTD syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_DTD extends Text_Highlighter
{
var $_language = 'dtd';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_DTD($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/(\\<!--)|(\\<\\!\\[)|((\\&|\\%)[\\w\\-\\.]+;)/',
0 => '//',
1 => '/(\\<!--)|(\\<)|(#PCDATA\\b)|((\\&|\\%)[\\w\\-\\.]+;)|((?i)[a-z][a-z\\d\\-\\,:]+)/',
2 => '/(\\<!--)|(\\()|(\')|(")|((?<=\\<)!(ENTITY|ATTLIST|ELEMENT|NOTATION)\\b)|(\\s(#(IMPLIED|REQUIRED|FIXED))|CDATA|ENTITY|NOTATION|NMTOKENS?|PUBLIC|SYSTEM\\b)|(#PCDATA\\b)|((\\&|\\%)[\\w\\-\\.]+;)|((?i)[a-z][a-z\\d\\-\\,:]+)/',
3 => '/(\\()|((\\&|\\%)[\\w\\-\\.]+;)|((?i)[a-z][a-z\\d\\-\\,:]+)/',
4 => '/((\\&|\\%)[\\w\\-\\.]+;)/',
5 => '/((\\&|\\%)[\\w\\-\\.]+;)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
),
0 =>
array (
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 1,
4 => 0,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 1,
5 => 2,
6 => 0,
7 => 1,
8 => 0,
),
3 =>
array (
0 => 0,
1 => 1,
2 => 0,
),
4 =>
array (
0 => 1,
),
5 =>
array (
0 => 1,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'comment',
1 => 'brackets',
2 => '',
),
0 =>
array (
),
1 =>
array (
0 => 'comment',
1 => 'brackets',
2 => '',
3 => '',
4 => '',
),
2 =>
array (
0 => 'comment',
1 => 'brackets',
2 => 'quotes',
3 => 'quotes',
4 => '',
5 => '',
6 => '',
7 => '',
8 => '',
),
3 =>
array (
0 => 'brackets',
1 => '',
2 => '',
),
4 =>
array (
0 => '',
),
5 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'comment',
1 => 'code',
2 => 'special',
),
0 =>
array (
),
1 =>
array (
0 => 'comment',
1 => 'code',
2 => 'reserved',
3 => 'special',
4 => 'identifier',
),
2 =>
array (
0 => 'comment',
1 => 'code',
2 => 'string',
3 => 'string',
4 => 'var',
5 => 'reserved',
6 => 'reserved',
7 => 'special',
8 => 'identifier',
),
3 =>
array (
0 => 'code',
1 => 'special',
2 => 'identifier',
),
4 =>
array (
0 => 'special',
),
5 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/--\\>/',
1 => '/\\]\\]\\>/',
2 => '/\\>/',
3 => '/\\)/',
4 => '/\'/',
5 => '/"/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => -1,
),
0 =>
array (
),
1 =>
array (
0 => 0,
1 => 2,
2 => -1,
3 => -1,
4 => -1,
),
2 =>
array (
0 => 0,
1 => 3,
2 => 4,
3 => 5,
4 => -1,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
),
3 =>
array (
0 => 3,
1 => -1,
2 => -1,
),
4 =>
array (
0 => -1,
),
5 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
),
0 =>
array (
),
1 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 =>
array (
),
4 =>
array (
),
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 =>
array (
),
5 =>
array (
),
6 =>
array (
),
7 =>
array (
),
8 =>
array (
),
),
3 =>
array (
0 => -1,
1 =>
array (
),
2 =>
array (
),
),
4 =>
array (
0 =>
array (
),
),
5 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
),
4 =>
array (
0 => NULL,
),
5 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
),
0 =>
array (
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
),
4 =>
array (
0 => false,
),
5 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,234 @@
<?php
/**
* Auto-generated class. HTML syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : html.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. HTML syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_HTML extends Text_Highlighter
{
var $_language = 'html';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_HTML($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\<!--)|((?i)\\<[\\?\\/]?)|((?i)(&)[\\w\\-\\.]+;)/',
0 => '//',
1 => '/((?i)(?<=[\\<\\/?])[\\w\\-\\:]+)|((?i)[\\w\\-\\:]+)|((?i)")/',
2 => '/((?i)(&)[\\w\\-\\.]+;)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
),
0 =>
array (
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
),
2 =>
array (
0 => 1,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'comment',
1 => 'brackets',
2 => '',
),
0 =>
array (
),
1 =>
array (
0 => '',
1 => '',
2 => 'quotes',
),
2 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'comment',
1 => 'code',
2 => 'special',
),
0 =>
array (
),
1 =>
array (
0 => 'reserved',
1 => 'var',
2 => 'string',
),
2 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)--\\>/',
1 => '/(?i)[\\/\\?]?\\>/',
2 => '/(?i)"/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => -1,
),
0 =>
array (
),
1 =>
array (
0 => -1,
1 => -1,
2 => 2,
),
2 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
),
0 =>
array (
),
1 =>
array (
0 =>
array (
),
1 =>
array (
),
2 => -1,
),
2 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
),
2 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
),
0 =>
array (
),
1 =>
array (
0 => false,
1 => false,
2 => false,
),
2 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,631 @@
<?php
/**
* Auto-generated class. JAVASCRIPT syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: javascript.xml
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. JAVASCRIPT syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.7.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_JAVASCRIPT extends Text_Highlighter
{
var $_language = 'javascript';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_JAVASCRIPT($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)\\/\\*)|((?i)")|((?i)\')|((?i)\\/\\/)|((?i)[a-z_]\\w*)|((?i)0x\\d*|\\d*\\.?\\d+)/',
0 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)\\/\\*)|((?i)")|((?i)\')|((?i)\\/\\/)|((?i)[a-z_]\\w*)|((?i)0x\\d*|\\d*\\.?\\d+)/',
1 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)\\/\\*)|((?i)")|((?i)\')|((?i)\\/\\/)|((?i)[a-z_]\\w*)|((?i)0x\\d*|\\d*\\.?\\d+)/',
2 => '/((?i)\\{)|((?i)\\()|((?i)\\[)|((?i)\\/\\*)|((?i)")|((?i)\')|((?i)\\/\\/)|((?i)[a-z_]\\w*)|((?i)0x\\d*|\\d*\\.?\\d+)/',
3 => '/((?i)((https?|ftp):\\/\\/[\\w\\?\\.\\-\\&=\\/%+]+)|(^|[\\s,!?])www\\.\\w+\\.\\w+[\\w\\?\\.\\&=\\/%+]*)|((?i)\\w+[\\.\\w\\-]+@(\\w+[\\.\\w\\-])+)|((?i)\\b(note|fixme):)|((?i)\\$\\w+:.+\\$)/',
4 => '/((?i)\\\\\\\\|\\\\"|\\\\\'|\\\\`|\\\\t|\\\\n|\\\\r)/',
5 => '/((?i)\\\\\\\\|\\\\"|\\\\\'|\\\\`)/',
6 => '/((?i)((https?|ftp):\\/\\/[\\w\\?\\.\\-\\&=\\/%+]+)|(^|[\\s,!?])www\\.\\w+\\.\\w+[\\w\\?\\.\\&=\\/%+]*)|((?i)\\w+[\\.\\w\\-]+@(\\w+[\\.\\w\\-])+)|((?i)\\b(note|fixme):)|((?i)\\$\\w+:.+\\$)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
),
0 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
),
1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
),
3 =>
array (
0 => 3,
1 => 1,
2 => 1,
3 => 0,
),
4 =>
array (
0 => 0,
),
5 =>
array (
0 => 0,
),
6 =>
array (
0 => 3,
1 => 1,
2 => 1,
3 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => 'quotes',
6 => 'comment',
7 => '',
8 => '',
),
0 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => 'quotes',
6 => 'comment',
7 => '',
8 => '',
),
1 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => 'quotes',
6 => 'comment',
7 => '',
8 => '',
),
2 =>
array (
0 => 'brackets',
1 => 'brackets',
2 => 'brackets',
3 => 'comment',
4 => 'quotes',
5 => 'quotes',
6 => 'comment',
7 => '',
8 => '',
),
3 =>
array (
0 => '',
1 => '',
2 => '',
3 => '',
),
4 =>
array (
0 => '',
),
5 =>
array (
0 => '',
),
6 =>
array (
0 => '',
1 => '',
2 => '',
3 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'string',
6 => 'comment',
7 => 'identifier',
8 => 'number',
),
0 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'string',
6 => 'comment',
7 => 'identifier',
8 => 'number',
),
1 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'string',
6 => 'comment',
7 => 'identifier',
8 => 'number',
),
2 =>
array (
0 => 'code',
1 => 'code',
2 => 'code',
3 => 'comment',
4 => 'string',
5 => 'string',
6 => 'comment',
7 => 'identifier',
8 => 'number',
),
3 =>
array (
0 => 'url',
1 => 'url',
2 => 'inlinedoc',
3 => 'inlinedoc',
),
4 =>
array (
0 => 'special',
),
5 =>
array (
0 => 'special',
),
6 =>
array (
0 => 'url',
1 => 'url',
2 => 'inlinedoc',
3 => 'inlinedoc',
),
);
$this->_end = array (
0 => '/(?i)\\}/',
1 => '/(?i)\\)/',
2 => '/(?i)\\]/',
3 => '/(?i)\\*\\//',
4 => '/(?i)"/',
5 => '/(?i)\'/',
6 => '/(?mi)$/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => 6,
7 => -1,
8 => -1,
),
0 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => 6,
7 => -1,
8 => -1,
),
1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => 6,
7 => -1,
8 => -1,
),
2 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => 6,
7 => -1,
8 => -1,
),
3 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
),
4 =>
array (
0 => -1,
),
5 =>
array (
0 => -1,
),
6 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
'builtin' => '/^(String|Array|RegExp|Function|Math|Number|Date|Image|window|document|navigator|onAbort|onBlur|onChange|onClick|onDblClick|onDragDrop|onError|onFocus|onKeyDown|onKeyPress|onKeyUp|onLoad|onMouseDown|onMouseOver|onMouseOut|onMouseMove|onMouseUp|onMove|onReset|onResize|onSelect|onSubmit|onUnload)$/',
'reserved' => '/^(break|continue|do|while|export|for|in|if|else|import|return|label|switch|case|var|with|delete|new|this|typeof|void|abstract|boolean|byte|catch|char|class|const|debugger|default|double|enum|extends|false|final|finally|float|function|implements|goto|instanceof|int|interface|long|native|null|package|private|protected|public|short|static|super|synchronized|throw|throws|transient|true|try|volatile)$/',
),
8 =>
array (
),
),
0 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
'builtin' => '/^(String|Array|RegExp|Function|Math|Number|Date|Image|window|document|navigator|onAbort|onBlur|onChange|onClick|onDblClick|onDragDrop|onError|onFocus|onKeyDown|onKeyPress|onKeyUp|onLoad|onMouseDown|onMouseOver|onMouseOut|onMouseMove|onMouseUp|onMove|onReset|onResize|onSelect|onSubmit|onUnload)$/',
'reserved' => '/^(break|continue|do|while|export|for|in|if|else|import|return|label|switch|case|var|with|delete|new|this|typeof|void|abstract|boolean|byte|catch|char|class|const|debugger|default|double|enum|extends|false|final|finally|float|function|implements|goto|instanceof|int|interface|long|native|null|package|private|protected|public|short|static|super|synchronized|throw|throws|transient|true|try|volatile)$/',
),
8 =>
array (
),
),
1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
'builtin' => '/^(String|Array|RegExp|Function|Math|Number|Date|Image|window|document|navigator|onAbort|onBlur|onChange|onClick|onDblClick|onDragDrop|onError|onFocus|onKeyDown|onKeyPress|onKeyUp|onLoad|onMouseDown|onMouseOver|onMouseOut|onMouseMove|onMouseUp|onMove|onReset|onResize|onSelect|onSubmit|onUnload)$/',
'reserved' => '/^(break|continue|do|while|export|for|in|if|else|import|return|label|switch|case|var|with|delete|new|this|typeof|void|abstract|boolean|byte|catch|char|class|const|debugger|default|double|enum|extends|false|final|finally|float|function|implements|goto|instanceof|int|interface|long|native|null|package|private|protected|public|short|static|super|synchronized|throw|throws|transient|true|try|volatile)$/',
),
8 =>
array (
),
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
'builtin' => '/^(String|Array|RegExp|Function|Math|Number|Date|Image|window|document|navigator|onAbort|onBlur|onChange|onClick|onDblClick|onDragDrop|onError|onFocus|onKeyDown|onKeyPress|onKeyUp|onLoad|onMouseDown|onMouseOver|onMouseOut|onMouseMove|onMouseUp|onMove|onReset|onResize|onSelect|onSubmit|onUnload)$/',
'reserved' => '/^(break|continue|do|while|export|for|in|if|else|import|return|label|switch|case|var|with|delete|new|this|typeof|void|abstract|boolean|byte|catch|char|class|const|debugger|default|double|enum|extends|false|final|finally|float|function|implements|goto|instanceof|int|interface|long|native|null|package|private|protected|public|short|static|super|synchronized|throw|throws|transient|true|try|volatile)$/',
),
8 =>
array (
),
),
3 =>
array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
),
4 =>
array (
0 =>
array (
),
),
5 =>
array (
0 =>
array (
),
),
6 =>
array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
),
1 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
),
4 =>
array (
0 => NULL,
),
5 =>
array (
0 => NULL,
),
6 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
),
0 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
),
1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
4 =>
array (
0 => false,
),
5 =>
array (
0 => false,
),
6 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'builtin' => 'builtin',
'reserved' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,434 @@
<?php
/**
* Auto-generated class. MYSQL syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : mysql.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. MYSQL syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_MYSQL extends Text_Highlighter
{
var $_language = 'mysql';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_MYSQL($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)`)|((?i)\\/\\*)|((?i)(#|--\\s).*)|((?i)[a-z_]\\w*(?=\\s*\\())|((?i)[a-z_]\\w*)|((?i)")|((?i)\\()|((?i)\')|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)/',
0 => '//',
1 => '//',
2 => '/((?i)\\\\.)/',
3 => '/((?i)`)|((?i)\\/\\*)|((?i)(#|--\\s).*)|((?i)[a-z_]\\w*(?=\\s*\\())|((?i)[a-z_]\\w*)|((?i)")|((?i)\\()|((?i)\')|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)/',
4 => '/((?i)\\\\.)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 5,
9 => 2,
10 => 0,
11 => 0,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 0,
),
3 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 5,
9 => 2,
10 => 0,
11 => 0,
),
4 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'quotes',
1 => 'comment',
2 => '',
3 => '',
4 => '',
5 => 'quotes',
6 => 'brackets',
7 => 'quotes',
8 => '',
9 => '',
10 => '',
11 => '',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => '',
),
3 =>
array (
0 => 'quotes',
1 => 'comment',
2 => '',
3 => '',
4 => '',
5 => 'quotes',
6 => 'brackets',
7 => 'quotes',
8 => '',
9 => '',
10 => '',
11 => '',
),
4 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'identifier',
1 => 'comment',
2 => 'comment',
3 => 'identifier',
4 => 'identifier',
5 => 'string',
6 => 'code',
7 => 'string',
8 => 'number',
9 => 'number',
10 => 'number',
11 => 'number',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 'special',
),
3 =>
array (
0 => 'identifier',
1 => 'comment',
2 => 'comment',
3 => 'identifier',
4 => 'identifier',
5 => 'string',
6 => 'code',
7 => 'string',
8 => 'number',
9 => 'number',
10 => 'number',
11 => 'number',
),
4 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)`/',
1 => '/(?i)\\*\\//',
2 => '/(?i)"/',
3 => '/(?i)\\)/',
4 => '/(?i)\'/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => -1,
3 => -1,
4 => -1,
5 => 2,
6 => 3,
7 => 4,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => -1,
),
3 =>
array (
0 => 0,
1 => 1,
2 => -1,
3 => -1,
4 => -1,
5 => 2,
6 => 3,
7 => 4,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
),
4 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 =>
array (
'function' => '/^((?i)abs|acos|adddate|ascii|asin|atan|atan2|avg|benchmark|bin|ceiling|char|coalesce|concat|conv|cos|cot|count|curdate|curtime|database|dayname|dayofmonth|dayofweek|dayofyear|decode|degrees|elt|encode|encrypt|exp|extract|field|floor|format|greatest|hex|hour|if|ifnull|insert|instr|interval|isnull|lcase|least|left|length|locate|log|log10|lower|lpad|ltrim|max|md5|mid|min|minute|mod|month|monthname|now|nullif|oct|ord|password|pi|position|pow|power|prepare|quarter|radians|rand|repeat|replace|reverse|right|round|rpad|rtrim|second|sign|sin|soundex|space|sqrt|std|stddev|strcmp|subdate|substring|sum|sysdate|tan|trim|truncate|ucase|upper|user|version|week|weekday|year)$/',
),
4 =>
array (
'reserved' => '/^((?i)action|add|aggregate|all|alter|after|and|as|asc|avg|avg_row_length|auto_increment|between|bigint|bit|binary|blob|bool|both|by|cascade|case|char|character|change|check|checksum|column|columns|comment|constraint|create|cross|current_date|current_time|current_timestamp|data|database|databases|date|datetime|day|day_hour|day_minute|day_second|dayofmonth|dayofweek|dayofyear|dec|decimal|default|delayed|delay_key_write|delete|desc|describe|distinct|distinctrow|double|drop|end|else|escape|escaped|enclosed|enum|explain|exists|fields|file|first|float|float4|float8|flush|foreign|from|for|full|function|global|grant|grants|group|having|heap|high_priority|hour|hour_minute|hour_second|hosts|identified|ignore|in|index|infile|inner|insert|insert_id|int|integer|interval|int1|int2|int3|int4|int8|into|if|is|isam|join|key|keys|kill|last_insert_id|leading|left|length|like|lines|limit|load|local|lock|logs|long|longblob|longtext|low_priority|max|max_rows|match|mediumblob|mediumtext|mediumint|middleint|min_rows|minute|minute_second|modify|month|monthname|myisam|natural|numeric|no|not|null|on|optimize|option|optionally|or|order|outer|outfile|pack_keys|partial|password|precision|primary|procedure|process|processlist|privileges|read|real|references|reload|regexp|rename|replace|restrict|returns|revoke|rlike|row|rows|second|select|set|show|shutdown|smallint|soname|sql_big_tables|sql_big_selects|sql_low_priority_updates|sql_log_off|sql_log_update|sql_select_limit|sql_small_result|sql_big_result|sql_warnings|straight_join|starting|status|string|table|tables|temporary|terminated|text|then|time|timestamp|tinyblob|tinytext|tinyint|trailing|to|type|use|using|unique|unlock|unsigned|update|usage|values|varchar|variables|varying|varbinary|with|write|when|where|year|year_month|zerofill)$/',
),
5 => -1,
6 => -1,
7 => -1,
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 =>
array (
),
),
3 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 =>
array (
'function' => '/^((?i)abs|acos|adddate|ascii|asin|atan|atan2|avg|benchmark|bin|ceiling|char|coalesce|concat|conv|cos|cot|count|curdate|curtime|database|dayname|dayofmonth|dayofweek|dayofyear|decode|degrees|elt|encode|encrypt|exp|extract|field|floor|format|greatest|hex|hour|if|ifnull|insert|instr|interval|isnull|lcase|least|left|length|locate|log|log10|lower|lpad|ltrim|max|md5|mid|min|minute|mod|month|monthname|now|nullif|oct|ord|password|pi|position|pow|power|prepare|quarter|radians|rand|repeat|replace|reverse|right|round|rpad|rtrim|second|sign|sin|soundex|space|sqrt|std|stddev|strcmp|subdate|substring|sum|sysdate|tan|trim|truncate|ucase|upper|user|version|week|weekday|year)$/',
),
4 =>
array (
'reserved' => '/^((?i)action|add|aggregate|all|alter|after|and|as|asc|avg|avg_row_length|auto_increment|between|bigint|bit|binary|blob|bool|both|by|cascade|case|char|character|change|check|checksum|column|columns|comment|constraint|create|cross|current_date|current_time|current_timestamp|data|database|databases|date|datetime|day|day_hour|day_minute|day_second|dayofmonth|dayofweek|dayofyear|dec|decimal|default|delayed|delay_key_write|delete|desc|describe|distinct|distinctrow|double|drop|end|else|escape|escaped|enclosed|enum|explain|exists|fields|file|first|float|float4|float8|flush|foreign|from|for|full|function|global|grant|grants|group|having|heap|high_priority|hour|hour_minute|hour_second|hosts|identified|ignore|in|index|infile|inner|insert|insert_id|int|integer|interval|int1|int2|int3|int4|int8|into|if|is|isam|join|key|keys|kill|last_insert_id|leading|left|length|like|lines|limit|load|local|lock|logs|long|longblob|longtext|low_priority|max|max_rows|match|mediumblob|mediumtext|mediumint|middleint|min_rows|minute|minute_second|modify|month|monthname|myisam|natural|numeric|no|not|null|on|optimize|option|optionally|or|order|outer|outfile|pack_keys|partial|password|precision|primary|procedure|process|processlist|privileges|read|real|references|reload|regexp|rename|replace|restrict|returns|revoke|rlike|row|rows|second|select|set|show|shutdown|smallint|soname|sql_big_tables|sql_big_selects|sql_low_priority_updates|sql_log_off|sql_log_update|sql_select_limit|sql_small_result|sql_big_result|sql_warnings|straight_join|starting|status|string|table|tables|temporary|terminated|text|then|time|timestamp|tinyblob|tinytext|tinyint|trailing|to|type|use|using|unique|unlock|unsigned|update|usage|values|varchar|variables|varying|varbinary|with|write|when|where|year|year_month|zerofill)$/',
),
5 => -1,
6 => -1,
7 => -1,
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
),
4 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
),
4 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
),
4 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'function' => 'reserved',
'reserved' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,647 @@
<?php
/**
* Auto-generated class. PYTHON syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : python.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. PYTHON syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_PYTHON extends Text_Highlighter
{
var $_language = 'python';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_PYTHON($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\'\'\')|((?i)""")|((?i)")|((?i)\')|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*(?=\\s*\\())|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)((\\d*\\.\\d+)|(\\d+\\.\\d*)|(\\d+))j)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)|((?i)0[0-7]+l?)|((?i)#.+)/',
0 => '/((?i)\\\\.)/',
1 => '/((?i)\\\\.)/',
2 => '/((?i)\\\\.)/',
3 => '/((?i)\\\\.)/',
4 => '/((?i)\'\'\')|((?i)""")|((?i)")|((?i)\')|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*(?=\\s*\\())|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)((\\d*\\.\\d+)|(\\d+\\.\\d*)|(\\d+))j)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)|((?i)0[0-7]+l?)|((?i)#.+)/',
5 => '/((?i)\'\'\')|((?i)""")|((?i)")|((?i)\')|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*(?=\\s*\\())|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)((\\d*\\.\\d+)|(\\d+\\.\\d*)|(\\d+))j)|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)|((?i)0[0-7]+l?)|((?i)#.+)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 5,
9 => 4,
10 => 2,
11 => 0,
12 => 0,
13 => 0,
14 => 0,
),
0 =>
array (
0 => 0,
),
1 =>
array (
0 => 0,
),
2 =>
array (
0 => 0,
),
3 =>
array (
0 => 0,
),
4 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 5,
9 => 4,
10 => 2,
11 => 0,
12 => 0,
13 => 0,
14 => 0,
),
5 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
8 => 5,
9 => 4,
10 => 2,
11 => 0,
12 => 0,
13 => 0,
14 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'quotes',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'brackets',
5 => 'brackets',
6 => '',
7 => '',
8 => '',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
),
0 =>
array (
0 => '',
),
1 =>
array (
0 => '',
),
2 =>
array (
0 => '',
),
3 =>
array (
0 => '',
),
4 =>
array (
0 => 'quotes',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'brackets',
5 => 'brackets',
6 => '',
7 => '',
8 => '',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
),
5 =>
array (
0 => 'quotes',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'brackets',
5 => 'brackets',
6 => '',
7 => '',
8 => '',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'string',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'code',
5 => 'code',
6 => 'identifier',
7 => 'identifier',
8 => 'number',
9 => 'number',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'comment',
),
0 =>
array (
0 => 'special',
),
1 =>
array (
0 => 'special',
),
2 =>
array (
0 => 'special',
),
3 =>
array (
0 => 'special',
),
4 =>
array (
0 => 'string',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'code',
5 => 'code',
6 => 'identifier',
7 => 'identifier',
8 => 'number',
9 => 'number',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'comment',
),
5 =>
array (
0 => 'string',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'code',
5 => 'code',
6 => 'identifier',
7 => 'identifier',
8 => 'number',
9 => 'number',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'comment',
),
);
$this->_end = array (
0 => '/(?i)\'\'\'/',
1 => '/(?i)"""/',
2 => '/(?i)"/',
3 => '/(?i)\'/',
4 => '/(?i)\\)/',
5 => '/(?i)\\]/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
),
0 =>
array (
0 => -1,
),
1 =>
array (
0 => -1,
),
2 =>
array (
0 => -1,
),
3 =>
array (
0 => -1,
),
4 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
),
5 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => 5,
6 => -1,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 =>
array (
'builtin' => '/^(__import__|abs|apply|basestring|bool|buffer|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|min|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|round|setattr|slice|staticmethod|sum|super|str|tuple|type|unichr|unicode|vars|xrange|zip)$/',
),
7 =>
array (
'reserved' => '/^(and|del|for|is|raise|assert|elif|from|lambda|return|break|else|global|not|try|class|except|if|or|while|continue|exec|import|pass|yield|def|finally|in|print|False|True|None|NotImplemented|Ellipsis|Exception|SystemExit|StopIteration|StandardError|KeyboardInterrupt|ImportError|EnvironmentError|IOError|OSError|WindowsError|EOFError|RuntimeError|NotImplementedError|NameError|UnboundLocalError|AttributeError|SyntaxError|IndentationError|TabError|TypeError|AssertionError|LookupError|IndexError|KeyError|ArithmeticError|OverflowError|ZeroDivisionError|FloatingPointError|ValueError|UnicodeError|UnicodeEncodeError|UnicodeDecodeError|UnicodeTranslateError|ReferenceError|SystemError|MemoryError|Warning|UserWarning|DeprecationWarning|PendingDeprecationWarning|SyntaxWarning|OverflowWarning|RuntimeWarning|FutureWarning)$/',
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
),
0 =>
array (
0 =>
array (
),
),
1 =>
array (
0 =>
array (
),
),
2 =>
array (
0 =>
array (
),
),
3 =>
array (
0 =>
array (
),
),
4 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 =>
array (
'builtin' => '/^(__import__|abs|apply|basestring|bool|buffer|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|min|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|round|setattr|slice|staticmethod|sum|super|str|tuple|type|unichr|unicode|vars|xrange|zip)$/',
),
7 =>
array (
'reserved' => '/^(and|del|for|is|raise|assert|elif|from|lambda|return|break|else|global|not|try|class|except|if|or|while|continue|exec|import|pass|yield|def|finally|in|print|False|True|None|NotImplemented|Ellipsis|Exception|SystemExit|StopIteration|StandardError|KeyboardInterrupt|ImportError|EnvironmentError|IOError|OSError|WindowsError|EOFError|RuntimeError|NotImplementedError|NameError|UnboundLocalError|AttributeError|SyntaxError|IndentationError|TabError|TypeError|AssertionError|LookupError|IndexError|KeyError|ArithmeticError|OverflowError|ZeroDivisionError|FloatingPointError|ValueError|UnicodeError|UnicodeEncodeError|UnicodeDecodeError|UnicodeTranslateError|ReferenceError|SystemError|MemoryError|Warning|UserWarning|DeprecationWarning|PendingDeprecationWarning|SyntaxWarning|OverflowWarning|RuntimeWarning|FutureWarning)$/',
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
),
5 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 => -1,
6 =>
array (
'builtin' => '/^(__import__|abs|apply|basestring|bool|buffer|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|min|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|round|setattr|slice|staticmethod|sum|super|str|tuple|type|unichr|unicode|vars|xrange|zip)$/',
),
7 =>
array (
'reserved' => '/^(and|del|for|is|raise|assert|elif|from|lambda|return|break|else|global|not|try|class|except|if|or|while|continue|exec|import|pass|yield|def|finally|in|print|False|True|None|NotImplemented|Ellipsis|Exception|SystemExit|StopIteration|StandardError|KeyboardInterrupt|ImportError|EnvironmentError|IOError|OSError|WindowsError|EOFError|RuntimeError|NotImplementedError|NameError|UnboundLocalError|AttributeError|SyntaxError|IndentationError|TabError|TypeError|AssertionError|LookupError|IndexError|KeyError|ArithmeticError|OverflowError|ZeroDivisionError|FloatingPointError|ValueError|UnicodeError|UnicodeEncodeError|UnicodeDecodeError|UnicodeTranslateError|ReferenceError|SystemError|MemoryError|Warning|UserWarning|DeprecationWarning|PendingDeprecationWarning|SyntaxWarning|OverflowWarning|RuntimeWarning|FutureWarning)$/',
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
),
1 =>
array (
0 => NULL,
),
2 =>
array (
0 => NULL,
),
3 =>
array (
0 => NULL,
),
4 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
14 => NULL,
),
5 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
14 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
),
0 =>
array (
0 => false,
),
1 =>
array (
0 => false,
),
2 =>
array (
0 => false,
),
3 =>
array (
0 => false,
),
4 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
),
5 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'builtin' => 'builtin',
'reserved' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,825 @@
<?php
/**
* Auto-generated class. RUBY syntax highlighting
*
*
* FIXME: While this construction : s.split /z/i
* is valid, regular expression is not recognized as such
* (/ folowing an identifier or number is not recognized as
* start of RE), making highlighting improper
*
* %q(a (nested) string) does not get highlighted correctly
*
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : ruby.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. RUBY syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_RUBY extends Text_Highlighter
{
var $_language = 'ruby';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_RUBY($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?mi)^__END__$)|((?i)")|((?i)%[Qx]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\')|((?i)%[wq]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\\$(\\W|\\w+))|((?ii)@@?[_a-z][\\d_a-z]*)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)0[xX][\\da-f]+l?)|((?i)\\d+l?|\\b0l?\\b)|((?i)0[0-7]+l?)|((?mi)^=begin$)|((?i)#)|((?i)\\s*\\/)/',
0 => '//',
1 => '/((?i)\\\\.)/',
2 => '/((?i)\\\\.)/',
3 => '/((?i)\\\\.)/',
4 => '/((?i)\\\\.)/',
5 => '/((?mi)^__END__$)|((?i)")|((?i)%[Qx]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\')|((?i)%[wq]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\\$(\\W|\\w+))|((?ii)@@?[_a-z][\\d_a-z]*)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)0[xX][\\da-f]+l?)|((?i)\\d+l?|\\b0l?\\b)|((?i)0[0-7]+l?)|((?mi)^=begin$)|((?i)#)|((?i)\\s*\\/)/',
6 => '/((?mi)^__END__$)|((?i)")|((?i)%[Qx]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\')|((?i)%[wq]([!"#\\$%&\'+\\-*.\\/:;=?@^`|~{<\\[(]))|((?i)\\$(\\W|\\w+))|((?ii)@@?[_a-z][\\d_a-z]*)|((?i)\\()|((?i)\\[)|((?i)[a-z_]\\w*)|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)0[xX][\\da-f]+l?)|((?i)\\d+l?|\\b0l?\\b)|((?i)0[0-7]+l?)|((?mi)^=begin$)|((?i)#)|((?i)\\s*\\/)/',
7 => '/((?i)\\$\\w+\\s*:.+\\$)/',
8 => '/((?i)\\$\\w+\\s*:.+\\$)/',
9 => '/((?i)\\\\.)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 1,
5 => 1,
6 => 0,
7 => 0,
8 => 0,
9 => 0,
10 => 5,
11 => 2,
12 => 0,
13 => 0,
14 => 0,
15 => 0,
16 => 0,
17 => 0,
),
0 =>
array (
),
1 =>
array (
0 => 0,
),
2 =>
array (
0 => 0,
),
3 =>
array (
0 => 0,
),
4 =>
array (
0 => 0,
),
5 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 1,
5 => 1,
6 => 0,
7 => 0,
8 => 0,
9 => 0,
10 => 5,
11 => 2,
12 => 0,
13 => 0,
14 => 0,
15 => 0,
16 => 0,
17 => 0,
),
6 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 1,
5 => 1,
6 => 0,
7 => 0,
8 => 0,
9 => 0,
10 => 5,
11 => 2,
12 => 0,
13 => 0,
14 => 0,
15 => 0,
16 => 0,
17 => 0,
),
7 =>
array (
0 => 0,
),
8 =>
array (
0 => 0,
),
9 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'reserved',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'quotes',
5 => '',
6 => '',
7 => 'brackets',
8 => 'brackets',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
15 => 'comment',
16 => 'comment',
17 => 'quotes',
),
0 =>
array (
),
1 =>
array (
0 => '',
),
2 =>
array (
0 => '',
),
3 =>
array (
0 => '',
),
4 =>
array (
0 => '',
),
5 =>
array (
0 => 'reserved',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'quotes',
5 => '',
6 => '',
7 => 'brackets',
8 => 'brackets',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
15 => 'comment',
16 => 'comment',
17 => 'quotes',
),
6 =>
array (
0 => 'reserved',
1 => 'quotes',
2 => 'quotes',
3 => 'quotes',
4 => 'quotes',
5 => '',
6 => '',
7 => 'brackets',
8 => 'brackets',
9 => '',
10 => '',
11 => '',
12 => '',
13 => '',
14 => '',
15 => 'comment',
16 => 'comment',
17 => 'quotes',
),
7 =>
array (
0 => '',
),
8 =>
array (
0 => '',
),
9 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'comment',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'string',
5 => 'var',
6 => 'var',
7 => 'code',
8 => 'code',
9 => 'identifier',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'number',
15 => 'comment',
16 => 'comment',
17 => 'string',
),
0 =>
array (
),
1 =>
array (
0 => 'special',
),
2 =>
array (
0 => 'special',
),
3 =>
array (
0 => 'special',
),
4 =>
array (
0 => 'special',
),
5 =>
array (
0 => 'comment',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'string',
5 => 'var',
6 => 'var',
7 => 'code',
8 => 'code',
9 => 'identifier',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'number',
15 => 'comment',
16 => 'comment',
17 => 'string',
),
6 =>
array (
0 => 'comment',
1 => 'string',
2 => 'string',
3 => 'string',
4 => 'string',
5 => 'var',
6 => 'var',
7 => 'code',
8 => 'code',
9 => 'identifier',
10 => 'number',
11 => 'number',
12 => 'number',
13 => 'number',
14 => 'number',
15 => 'comment',
16 => 'comment',
17 => 'string',
),
7 =>
array (
0 => 'inlinedoc',
),
8 =>
array (
0 => 'inlinedoc',
),
9 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)$/',
1 => '/(?i)"/',
2 => '/(?i)%b1%/',
3 => '/(?i)\'/',
4 => '/(?i)%b1%/',
5 => '/(?i)\\)/',
6 => '/(?i)\\]/',
7 => '/(?mi)^=end$/',
8 => '/(?mi)$/',
9 => '/(?i)\\/[iomx]*/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => 5,
8 => 6,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
15 => 7,
16 => 8,
17 => 9,
),
0 =>
array (
),
1 =>
array (
0 => -1,
),
2 =>
array (
0 => -1,
),
3 =>
array (
0 => -1,
),
4 =>
array (
0 => -1,
),
5 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => 5,
8 => 6,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
15 => 7,
16 => 8,
17 => 9,
),
6 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => 3,
4 => 4,
5 => -1,
6 => -1,
7 => 5,
8 => 6,
9 => -1,
10 => -1,
11 => -1,
12 => -1,
13 => -1,
14 => -1,
15 => 7,
16 => 8,
17 => 9,
),
7 =>
array (
0 => -1,
),
8 =>
array (
0 => -1,
),
9 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 => -1,
8 => -1,
9 =>
array (
'reserved' => '/^(__FILE__|require|and|def|end|in|or|self|unless|__LINE__|begin|defined?|ensure|module|redo|super|until|BEGIN|break|do|false|next|rescue|then|when|END|case|else|for|nil|retry|true|while|alias|module_function|private|public|protected|attr_reader|attr_writer|attr_accessor|class|elsif|if|not|return|undef|yield)$/',
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
15 => -1,
16 => -1,
17 => -1,
),
0 =>
array (
),
1 =>
array (
0 =>
array (
),
),
2 =>
array (
0 =>
array (
),
),
3 =>
array (
0 =>
array (
),
),
4 =>
array (
0 =>
array (
),
),
5 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 => -1,
8 => -1,
9 =>
array (
'reserved' => '/^(__FILE__|require|and|def|end|in|or|self|unless|__LINE__|begin|defined?|ensure|module|redo|super|until|BEGIN|break|do|false|next|rescue|then|when|END|case|else|for|nil|retry|true|while|alias|module_function|private|public|protected|attr_reader|attr_writer|attr_accessor|class|elsif|if|not|return|undef|yield)$/',
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
15 => -1,
16 => -1,
17 => -1,
),
6 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
4 => -1,
5 =>
array (
),
6 =>
array (
),
7 => -1,
8 => -1,
9 =>
array (
'reserved' => '/^(__FILE__|require|and|def|end|in|or|self|unless|__LINE__|begin|defined?|ensure|module|redo|super|until|BEGIN|break|do|false|next|rescue|then|when|END|case|else|for|nil|retry|true|while|alias|module_function|private|public|protected|attr_reader|attr_writer|attr_accessor|class|elsif|if|not|return|undef|yield)$/',
),
10 =>
array (
),
11 =>
array (
),
12 =>
array (
),
13 =>
array (
),
14 =>
array (
),
15 => -1,
16 => -1,
17 => -1,
),
7 =>
array (
0 =>
array (
),
),
8 =>
array (
0 =>
array (
),
),
9 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
0 => NULL,
),
2 =>
array (
0 => NULL,
),
3 =>
array (
0 => NULL,
),
4 =>
array (
0 => NULL,
),
5 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
14 => NULL,
15 => NULL,
16 => NULL,
17 => NULL,
),
6 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
11 => NULL,
12 => NULL,
13 => NULL,
14 => NULL,
15 => NULL,
16 => NULL,
17 => NULL,
),
7 =>
array (
0 => NULL,
),
8 =>
array (
0 => NULL,
),
9 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => true,
3 => false,
4 => true,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
15 => false,
16 => false,
17 => false,
),
0 =>
array (
),
1 =>
array (
0 => false,
),
2 =>
array (
0 => false,
),
3 =>
array (
0 => false,
),
4 =>
array (
0 => false,
),
5 =>
array (
0 => false,
1 => false,
2 => true,
3 => false,
4 => true,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
15 => false,
16 => false,
17 => false,
),
6 =>
array (
0 => false,
1 => false,
2 => true,
3 => false,
4 => true,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
11 => false,
12 => false,
13 => false,
14 => false,
15 => false,
16 => false,
17 => false,
),
7 =>
array (
0 => false,
),
8 =>
array (
0 => false,
),
9 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'reserved' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,164 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Abstract base class for Highlighter renderers
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* Abstract base class for Highlighter renderers
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
* @abstract
*/
class Text_Highlighter_Renderer
{
/**
* Renderer options
*
* @var array
* @access protected
*/
var $_options = array();
/**
* Current language
*
* @var string
* @access protected
*/
var $_language = '';
/**
* Constructor
*
* @access public
*
* @param array $options Rendering options. Renderer-specific.
*/
function __construct($options = array())
{
$this->_options = $options;
}
/**
* PHP4 compatable constructor
*
* @access public
*
* @param array $options Rendering options. Renderer-specific.
*/
function Text_Highlighter_Renderer($options = array())
{
$this->__construct($options);
}
/**
* Resets renderer state
*
* @access public
*
* @param array $options Rendering options. Renderer-specific.
*/
function reset()
{
return;
}
/**
* Preprocesses code
*
* @access public
*
* @param string $str Code to preprocess
* @return string Preprocessed code
*/
function preprocess($str)
{
return $str;
}
/**
* Accepts next token
*
* @abstract
* @access public
*
* @param string $class Token class
* @param string $content Token content
*/
function acceptToken($class, $content)
{
return;
}
/**
* Signals that no more tokens are available
*
* @access public
*
*/
function finalize()
{
return;
}
/**
* Get generated output
*
* @abstract
* @return mixed Renderer-specific
* @access public
*
*/
function getOutput()
{
return;
}
/**
* Set current language
*
* @abstract
* @return void
* @access public
*
*/
function setCurrentLanguage($lang)
{
$this->_language = $lang;
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,200 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Array renderer.
*
* Produces an array that contains class names and content pairs.
* The array can be enumerated or associative. Associative means
* <code>class =&gt; content</code> pairs.
* Based on the HTML renderer by Andrey Demenev.
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
/**
* Array renderer, based on Andrey Demenev's HTML renderer.
*
* In addition to the options supported by the HTML renderer,
* the following options were also introduced:
* <ul><li>htmlspecialchars - whether or not htmlspecialchars() will
* be called on the content, default TRUE</li>
* <li>enumerated - type of array produced, default FALSE,
* meaning associative array</li>
* </ul>
*
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.5.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_Array extends Text_Highlighter_Renderer
{
/**#@+
* @access private
*/
/**
* Tab size
*
* @var integer
*/
var $_tabsize = 4;
/**
* Should htmlentities() will be called
*
* @var boolean
*/
var $_htmlspecialchars = true;
/**
* Enumerated or associative array
*
* @var integer
*/
var $_enumerated = false;
/**
* Array containing highlighting rules
*
* @var array
*/
var $_output = array();
/**#@-*/
/**
* Preprocesses code
*
* @access public
*
* @param string $str Code to preprocess
* @return string Preprocessed code
*/
function preprocess($str)
{
// normalize whitespace and tabs
$str = str_replace("\r\n","\n", $str);
$str = str_replace("\r","\n", $str);
// some browsers refuse to display empty lines
$str = preg_replace('~^$~m'," ", $str);
$str = str_replace("\t",str_repeat(' ', $this->_tabsize), $str);
return rtrim($str);
}
/**
* Resets renderer state
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*
* @access protected
*/
function reset()
{
$this->_output = array();
$this->_lastClass = 'default';
if (isset($this->_options['tabsize'])) {
$this->_tabsize = $this->_options['tabsize'];
}
if (isset($this->_options['htmlspecialchars'])) {
$this->_htmlspecialchars = $this->_options['htmlspecialchars'];
}
if (isset($this->_options['enumerated'])) {
$this->_enumerated = $this->_options['enumerated'];
}
}
/**
* Accepts next token
*
* @abstract
* @access public
* @param string $class Token class
* @param string $content Token content
*/
function acceptToken($class, $content)
{
$theClass = $this->_getFullClassName($class);
if ($this->_htmlspecialchars) {
$content = htmlspecialchars($content);
}
if ($this->_enumerated) {
$this->_output[] = array($class, $content);
} else {
$this->_output[][$class] = $content;
}
$this->_lastClass = $class;
}
/**
* Given a CSS class name, returns the class name
* with language name prepended, if necessary
*
* @access private
*
* @param string $class Token class
*/
function _getFullClassName($class)
{
if (!empty($this->_options['use_language'])) {
$theClass = $this->_language . '-' . $class;
} else {
$theClass = $class;
}
return $theClass;
}
/**
* Get generated output
*
* @abstract
* @return array Highlighted code as an array
* @access public
*/
function getOutput()
{
return $this->_output;
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,238 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* BB code renderer.
*
* This BB renderer produces BB code, ready to be pasted in bulletin boards and
* other applications that accept BB code. Based on the HTML renderer by Andrey Demenev.
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @copyright 2005 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
/**
* BB code renderer, based on Andrey Demenev's HTML renderer.
*
* Elements of $options argument of constructor (each being optional):
*
* - 'numbers' - Line numbering TRUE or FALSE
* - 'tabsize' - Tab size, default is 4
* - 'bb_tags' - An array containing three BB tags, see below
* - 'tag_brackets' - An array that conains opening and closing tags, [ and ]
* - 'colors' - An array with all the colors to be used for highlighting
*
* The default BB tags are:
* - 'color' => 'color'
* - 'list' => 'list'
* - 'list_item' => '*'
*
* The default colors for the highlighter are:
* - 'default' => 'Black',
* - 'code' => 'Gray',
* - 'brackets' => 'Olive',
* - 'comment' => 'Orange',
* - 'mlcomment' => 'Orange',
* - 'quotes' => 'Darkred',
* - 'string' => 'Red',
* - 'identifier' => 'Blue',
* - 'builtin' => 'Teal',
* - 'reserved' => 'Green',
* - 'inlinedoc' => 'Blue',
* - 'var' => 'Darkblue',
* - 'url' => 'Blue',
* - 'special' => 'Navy',
* - 'number' => 'Maroon',
* - 'inlinetags' => 'Blue',
*
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 20045 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.5.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_BB extends Text_Highlighter_Renderer_Array
{
/**#@+
* @access private
*/
/**
* Line numbering - will use the specified BB tag for listings
*
* @var boolean
*/
var $_numbers = false;
/**
* BB tags to be used
*
* @var array
*/
var $_bb_tags = array (
'color' => 'color',
'list' => 'list',
'list_item' => '*',
'code' => 'code',
);
/**
* BB brackets - [ and ]
*
* @var array
*/
var $_tag_brackets = array ('start' => '[', 'end' => ']');
/**
* Colors map
*
* @var boolean
*/
var $_colors = array(
'default' => 'Black',
'code' => 'Gray',
'brackets' => 'Olive',
'comment' => 'Orange',
'mlcomment' => 'Orange',
'quotes' => 'Darkred',
'string' => 'Red',
'identifier' => 'Blue',
'builtin' => 'Teal',
'reserved' => 'Green',
'inlinedoc' => 'Blue',
'var' => 'Darkblue',
'url' => 'Blue',
'special' => 'Navy',
'number' => 'Maroon',
'inlinetags' => 'Blue',
);
/**#@-*/
/**
* Resets renderer state
*
* @access protected
*
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*/
function reset()
{
parent::reset();
if (isset($this->_options['numbers'])) {
$this->_numbers = $this->_options['numbers'];
}
if (isset($this->_options['bb_tags'])) {
$this->_bb_tags = array_merge($this->_bb_tags, $this->_options['bb_tags']);
}
if (isset($this->_options['tag_brackets'])) {
$this->_tag_brackets = array_merge($this->_tag_brackets, $this->_options['tag_brackets']);
}
if (isset($this->_options['colors'])) {
$this->_colors = array_merge($this->_colors, $this->_options['colors']);
}
}
/**
* Signals that no more tokens are available
*
* @abstract
* @access public
*
*/
function finalize()
{
// get parent's output
parent::finalize();
$output = parent::getOutput();
$bb_output = '';
$color_start = $this->_tag_brackets['start'] . $this->_bb_tags['color'] . '=%s' . $this->_tag_brackets['end'];
$color_end = $this->_tag_brackets['start'] . '/' . $this->_bb_tags['color'] . $this->_tag_brackets['end'];
// loop through each class=>content pair
foreach ($output AS $token) {
if ($this->_enumerated) {
$class = $token[0];
$content = $token[1];
} else {
$key = key($token);
$class = $key;
$content = $token[$key];
}
$iswhitespace = ctype_space($content);
if (!$iswhitespace && !empty($this->_colors[$class])) {
$bb_output .= sprintf($color_start, $this->_colors[$class]);
$bb_output .= $content;
$bb_output .= $color_end;
} else {
$bb_output .= $content;
}
}
if ($this->_numbers) {
$item_tag = $this->_tag_brackets['start'] .
$this->_bb_tags['list_item'] .
$this->_tag_brackets['end'];
$this->_output = $item_tag . str_replace("\n", "\n". $item_tag .' ', $bb_output);
$this->_output = $this->_tag_brackets['start'] .
$this->_bb_tags['list'] .
$this->_tag_brackets['end'] .
$this->_output .
$this->_tag_brackets['start'] .
'/'.
$this->_bb_tags['list'] .
$this->_tag_brackets['end']
;
} else {
$this->_output = $this->_tag_brackets['start'] .
$this->_bb_tags['code'] .
$this->_tag_brackets['end'] .
$bb_output .
$this->_tag_brackets['start'] .
'/' .
$this->_bb_tags['code'] .
$this->_tag_brackets['end'];
}
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,210 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Console renderer
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
define ('HL_CONSOLE_DEFCOLOR', "\033[0m");
/**
* Console renderer
*
* Suitable for displaying text on color-capable terminals, directly
* or trough less -r
*
* Elements of $options argument of constructor (each being optional):
*
* - 'numbers' - whether to add line numbers
* - 'tabsize' - Tab size
* - 'colors' - additional colors
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_Console extends Text_Highlighter_Renderer
{
/**#@+
* @access private
*/
/**
* class of last outputted text chunk
*
* @var string
*/
var $_lastClass;
/**
* Line numbering
*
* @var boolean
*/
var $_numbers = false;
/**
* Tab size
*
* @var integer
*/
var $_tabsize = 4;
/**
* Highlighted code
*
* @var string
*/
var $_output = '';
/**#@-*/
var $_colors = array();
var $_defColors = array(
'default' => "\033[0m",
'inlinetags' => "\033[31m",
'brackets' => "\033[36m",
'quotes' => "\033[34m",
'inlinedoc' => "\033[34m",
'var' => "\033[1m",
'types' => "\033[32m",
'number' => "\033[32m",
'string' => "\033[31m",
'reserved' => "\033[35m",
'comment' => "\033[33m",
'mlcomment' => "\033[33m",
);
function preprocess($str)
{
// normalize whitespace and tabs
$str = str_replace("\r\n","\n", $str);
$str = str_replace("\t",str_repeat(' ', $this->_tabsize), $str);
return rtrim($str);
}
/**
* Resets renderer state
*
* @access protected
*
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*/
function reset()
{
$this->_lastClass = '';
if (isset($this->_options['numbers'])) {
$this->_numbers = (bool)$this->_options['numbers'];
} else {
$this->_numbers = false;
}
if (isset($this->_options['tabsize'])) {
$this->_tabsize = $this->_options['tabsize'];
} else {
$this->_tabsize = 4;
}
if (isset($this->_options['colors'])) {
$this->_colors = array_merge($this->_defColors, $this->_options['colors']);
} else {
$this->_colors = $this->_defColors;
}
$this->_output = '';
}
/**
* Accepts next token
*
* @access public
*
* @param string $class Token class
* @param string $content Token content
*/
function acceptToken($class, $content)
{
if (isset($this->_colors[$class])) {
$color = $this->_colors[$class];
} else {
$color = $this->_colors['default'];
}
if ($this->_lastClass != $class) {
$this->_output .= $color;
}
$content = str_replace("\n", $this->_colors['default'] . "\n" . $color, $content);
$content .= $this->_colors['default'];
$this->_output .= $content;
}
/**
* Signals that no more tokens are available
*
* @access public
*
*/
function finalize()
{
if ($this->_numbers) {
$nlines = substr_count($this->_output, "\n") + 1;
$len = strlen($nlines);
$i = 1;
$this->_output = preg_replace_callback('~^~m', function () use (&$i, $len) {
return ' ' . str_pad($i++, $len, ' ', STR_PAD_LEFT) . ': ';
}, $this->_output);
}
$this->_output .= HL_CONSOLE_DEFCOLOR . "\n";
}
/**
* Get generated output
*
* @return string Highlighted code
* @access public
*
*/
function getOutput()
{
return $this->_output;
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,465 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* HTML renderer
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
require_once 'Text/Highlighter/Renderer/Array.php';
// BC trick : only define constants if Text/Highlighter.php
// is not yet included
if (!defined('HL_NUMBERS_LI')) {
/**#@+
* Constant for use with $options['numbers']
*/
/**
* use numbered list, deprecated, use HL_NUMBERS_OL instaed
* @deprecated
*/
define ('HL_NUMBERS_LI' , 1);
/**
* Use 2-column table with line numbers in left column and code in right column.
*/
define ('HL_NUMBERS_TABLE' , 2);
/**#@-*/
}
/**#@+
* Constant for use with $options['numbers']
*/
/**
* Use numbered list
*/
define ('HL_NUMBERS_OL', 1);
/**
* Use non-numbered list
*/
define ('HL_NUMBERS_UL', 3);
/**#@-*/
/**
* HTML renderer
*
* Elements of $options argument of constructor (each being optional):
*
* - 'numbers' - Line numbering style 0 or {@link HL_NUMBERS_TABLE}
* or {@link HL_NUMBERS_UL} or {@link HL_NUMBERS_OL}
* - 'numbers_start' - starting number for numbered lines
* - 'tabsize' - Tab size
* - 'style_map' - Mapping of keywords to formatting rules using inline styles
* - 'class_map' - Mapping of keywords to formatting rules using class names
* - 'doclinks' - array that has keys "url", "target" and "elements", used for
* generating links to online documentation
* - 'use_language' - class names will be prefixed with language, like "php-reserved" or "css-code"
*
* Example of setting documentation links:
* $options['doclinks'] = array(
* 'url' => 'http://php.net/%s',
* 'target' => '_blank',
* 'elements' => array('reserved', 'identifier')
* );
*
* Example of setting class names map:
* $options['class_map'] = array(
* 'main' => 'my-main',
* 'table' => 'my-table',
* 'gutter' => 'my-gutter',
* 'brackets' => 'my-brackets',
* 'builtin' => 'my-builtin',
* 'code' => 'my-code',
* 'comment' => 'my-comment',
* 'default' => 'my-default',
* 'identifier' => 'my-identifier',
* 'inlinedoc' => 'my-inlinedoc',
* 'inlinetags' => 'my-inlinetags',
* 'mlcomment' => 'my-mlcomment',
* 'number' => 'my-number',
* 'quotes' => 'my-quotes',
* 'reserved' => 'my-reserved',
* 'special' => 'my-special',
* 'string' => 'my-string',
* 'url' => 'my-url',
* 'var' => 'my-var',
* );
*
* Example of setting styles mapping:
* $options['style_map'] = array(
* 'main' => 'color: black',
* 'table' => 'border: 1px solid black',
* 'gutter' => 'background-color: yellow',
* 'brackets' => 'color: blue',
* 'builtin' => 'color: red',
* 'code' => 'color: green',
* 'comment' => 'color: orange',
* // ....
* );
*
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_Html extends Text_Highlighter_Renderer_Array
{
/**#@+
* @access private
*/
/**
* Line numbering style
*
* @var integer
*/
var $_numbers = 0;
/**
* For numberered lines - where to start
*
* @var integer
*/
var $_numbers_start = 0;
/**
* Tab size
*
* @var integer
*/
var $_tabsize = 4;
/**
* Highlighted code
*
* @var string
*/
var $_output = '';
/**
* Mapping of keywords to formatting rules using inline styles
*
* @var array
*/
var $_style_map = array();
/**
* Mapping of keywords to formatting rules using class names
*
* @var array
*/
var $_class_map = array(
'main' => 'hl-main',
'table' => 'hl-table',
'gutter' => 'hl-gutter',
'brackets' => 'hl-brackets',
'builtin' => 'hl-builtin',
'code' => 'hl-code',
'comment' => 'hl-comment',
'default' => 'hl-default',
'identifier' => 'hl-identifier',
'inlinedoc' => 'hl-inlinedoc',
'inlinetags' => 'hl-inlinetags',
'mlcomment' => 'hl-mlcomment',
'number' => 'hl-number',
'prepro' => 'hl-prepro',
'quotes' => 'hl-quotes',
'reserved' => 'hl-reserved',
'special' => 'hl-special',
'string' => 'hl-string',
'types' => 'hl-types',
'url' => 'hl-url',
'var' => 'hl-var',
);
/**
* Setup for links to online documentation
*
* This is an array with keys:
* - url, ex. http://php.net/%s
* - target, ex. _blank, default - no target
* - elements, default is <code>array('reserved', 'identifier')</code>
*
* @var array
*/
var $_doclinks = array();
/**#@-*/
/**
* Resets renderer state
*
* @access protected
*
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*/
function reset()
{
$this->_output = '';
if (isset($this->_options['numbers'])) {
$this->_numbers = (int)$this->_options['numbers'];
if ($this->_numbers != HL_NUMBERS_LI
&& $this->_numbers != HL_NUMBERS_UL
&& $this->_numbers != HL_NUMBERS_OL
&& $this->_numbers != HL_NUMBERS_TABLE
) {
$this->_numbers = 0;
}
}
if (isset($this->_options['tabsize'])) {
$this->_tabsize = $this->_options['tabsize'];
}
if (isset($this->_options['numbers_start'])) {
$this->_numbers_start = intval($this->_options['numbers_start']);
}
if (isset($this->_options['doclinks']) &&
is_array($this->_options['doclinks']) &&
!empty($this->_options['doclinks']['url'])
) {
$this->_doclinks = $this->_options['doclinks']; // keys: url, target, elements array
if (empty($this->_options['doclinks']['elements'])) {
$this->_doclinks['elements'] = array('reserved', 'identifier');
}
}
if (isset($this->_options['style_map'])) {
$this->_style_map = $this->_options['style_map'];
}
if (isset($this->_options['class_map'])) {
$this->_class_map = array_merge($this->_class_map, $this->_options['class_map']);
}
$this->_htmlspecialchars = true;
}
/**
* Given a CSS class name, returns the class name
* with language name prepended, if necessary
*
* @access private
*
* @param string $class Token class
*/
function _getFullClassName($class)
{
if (!empty($this->_options['use_language'])) {
$the_class = $this->_language . '-' . $class;
} else {
$the_class = $class;
}
return $the_class;
}
/**
* Signals that no more tokens are available
*
* @access public
*/
function finalize()
{
// get parent's output
parent::finalize();
$output = parent::getOutput();
$html_output = '';
$numbers_li = false;
if (
$this->_numbers == HL_NUMBERS_LI ||
$this->_numbers == HL_NUMBERS_UL ||
$this->_numbers == HL_NUMBERS_OL
)
{
$numbers_li = true;
}
// loop through each class=>content pair
foreach ($output AS $token) {
if ($this->_enumerated) {
$key = false;
$the_class = $token[0];
$content = $token[1];
} else {
$key = key($token);
$the_class = $key;
$content = $token[$key];
}
$span = $this->_getStyling($the_class);
$decorated_output = $this->_decorate($content, $key);
if ($numbers_li == true) {
// end span tags before end of li, and re-open on next line
$lastSpanTag = str_replace("%s</span>", "", $span);
$span = sprintf($span, $decorated_output);
$span = str_replace("\n", "</span></li>\n<li>$lastSpanTag&nbsp;", $span);
$html_output .= $span;
} else {
$html_output .= sprintf($span, $decorated_output);
}
}
// format lists
if (!empty($this->_numbers) && $numbers_li == true) {
// additional whitespace for browsers that do not display
// empty list items correctly
$this->_output = '<li>&nbsp;' . $html_output . '</li>';
$start = '';
if ($this->_numbers == HL_NUMBERS_OL && intval($this->_numbers_start) > 0) {
$start = ' start="' . $this->_numbers_start . '"';
}
$list_tag = 'ol';
if ($this->_numbers == HL_NUMBERS_UL) {
$list_tag = 'ul';
}
$this->_output = '<' . $list_tag . $start
. ' ' . $this->_getStyling('main', false) . '>'
. $this->_output . '</'. $list_tag .'>';
// render a table
} else if ($this->_numbers == HL_NUMBERS_TABLE) {
$start_number = 0;
if (intval($this->_numbers_start)) {
$start_number = $this->_numbers_start - 1;
}
$numbers = '';
$nlines = substr_count($html_output,"\n")+1;
for ($i=1; $i <= $nlines; $i++) {
$numbers .= ($start_number + $i) . "\n";
}
$this->_output = '<table ' . $this->_getStyling('table', false) . ' width="100%"><tr>' .
'<td '. $this->_getStyling('gutter', false) .' align="right" valign="top">' .
'<pre>' . $numbers . '</pre></td><td '. $this->_getStyling('main', false) .
' valign="top"><pre>' .
$html_output . '</pre></td></tr></table>';
}
if (!$this->_numbers) {
$this->_output = '<pre>' . $html_output . '</pre>';
}
$this->_output = '<div ' . $this->_getStyling('main', false) . '>' . $this->_output . '</div>';
}
/**
* Provides additional formatting to a keyword
*
* @param string $content Keyword
* @return string Keyword with additional formatting
* @access public
*
*/
function _decorate($content, $key = false)
{
// links to online documentation
if (!empty($this->_doclinks) &&
!empty($this->_doclinks['url']) &&
in_array($key, $this->_doclinks['elements'])
) {
$link = '<a href="'. sprintf($this->_doclinks['url'], $content) . '"';
if (!empty($this->_doclinks['target'])) {
$link.= ' target="' . $this->_doclinks['target'] . '"';
}
$link .= '>';
$link.= $content;
$link.= '</a>';
$content = $link;
}
return $content;
}
/**
* Returns <code>class</code> and/or <code>style</code> attribute,
* optionally enclosed in a <code>span</code> tag
*
* @param string $class Class name
* @paran boolean $span_tag Whether or not to return styling attributes in a <code>&gt;span&lt;</code> tag
* @return string <code>span</code> tag or just a <code>class</code> and/or <code>style</code> attributes
* @access private
*/
function _getStyling($class, $span_tag = true)
{
$attrib = '';
if (!empty($this->_style_map) &&
!empty($this->_style_map[$class])
) {
$attrib = 'style="'. $this->_style_map[$class] .'"';
}
if (!empty($this->_class_map) &&
!empty($this->_class_map[$class])
) {
if ($attrib) {
$attrib .= ' ';
}
$attrib .= 'class="'. $this->_getFullClassName($this->_class_map[$class]) .'"';
}
if ($span_tag) {
$span = '<span ' . $attrib . '>%s</span>';
return $span;
} else {
return $attrib;
}
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,187 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* HTML renderer that uses only basic html tags
*
* PHP versions 4 and 5. Based on the "normal" HTML renderer by Andrey Demenev.
* It's designed to work with user agents that support only a limited number of
* HTML tags. Like the iPod which supports only b, i, u and a.
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @copyright 2005 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
require_once 'Text/Highlighter/Renderer/Array.php';
/**
* HTML basic tags renderer, based on Andrey Demenev's HTML renderer.
*
* Elements of $options argument of constructor (each being optional):
*
* - 'numbers' - Line numbering TRUE or FALSE. Default is FALSE.
* - 'tabsize' - Tab size, default is 4.
* - 'tags' - Array, containing the tags to be used for highlighting
*
* Here's the listing of the default tags:
* - 'default' => '',
* - 'code' => '',
* - 'brackets' => 'b',
* - 'comment' => 'i',
* - 'mlcomment' => 'i',
* - 'quotes' => '',
* - 'string' => 'i',
* - 'identifier' => 'b',
* - 'builtin' => 'b',
* - 'reserved' => 'u',
* - 'inlinedoc' => 'i',
* - 'var' => 'b',
* - 'url' => 'i',
* - 'special' => '',
* - 'number' => '',
* - 'inlinetags' => ''
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2005 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.5.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_HtmlTags extends Text_Highlighter_Renderer_Array
{
/**#@+
* @access private
*/
/**
* Line numbering - will use 'ol' tag
*
* @var boolean
*/
var $_numbers = false;
/**
* HTML tags map
*
* @var array
*/
var $_hilite_tags = array(
'default' => '',
'code' => '',
'brackets' => 'b',
'comment' => 'i',
'mlcomment' => 'i',
'quotes' => '',
'string' => 'i',
'identifier' => 'b',
'builtin' => 'b',
'reserved' => 'u',
'inlinedoc' => 'i',
'var' => 'b',
'url' => 'i',
'special' => '',
'number' => '',
'inlinetags' => '',
);
/**#@-*/
/**
* Resets renderer state
*
* @access protected
*
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*/
function reset()
{
parent::reset();
if (isset($this->_options['numbers'])) {
$this->_numbers = $this->_options['numbers'];
}
if (isset($this->_options['tags'])) {
$this->_hilite_tags = array_merge($this->_tags, $this->_options['tags']);
}
}
/**
* Signals that no more tokens are available
*
* @abstract
* @access public
*
*/
function finalize()
{
// get parent's output
parent::finalize();
$output = parent::getOutput();
$html_output = '';
// loop through each class=>content pair
foreach ($output AS $token) {
if ($this->_enumerated) {
$class = $token[0];
$content = $token[1];
} else {
$key = key($token);
$class = $key;
$content = $token[$key];
}
$iswhitespace = ctype_space($content);
if (!$iswhitespace && !empty($this->_hilite_tags[$class])) {
$html_output .= '<'. $this->_hilite_tags[$class] . '>' . $content . '</'. $this->_hilite_tags[$class] . '>';
} else {
$html_output .= $content;
}
}
if ($this->_numbers) {
/* additional whitespace for browsers that do not display
empty list items correctly */
$html_output = '<li>&nbsp;' . str_replace("\n", "</li>\n<li>&nbsp;", $html_output) . '</li>';
$this->_output = '<ol>' . str_replace(' ', '&nbsp;', $html_output) . '</ol>';
} else {
$this->_output = '<pre>' . $html_output . '</pre>';
}
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,86 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* JSON renderer.
*
* Based on the HTML renderer by Andrey Demenev.
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
require_once 'Text/Highlighter/Renderer/Array.php';
/**
* JSON renderer, based on Andrey Demenev's HTML renderer.
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.5.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_JSON extends Text_Highlighter_Renderer_Array
{
/**
* Signals that no more tokens are available
*
* @abstract
* @access public
*/
function finalize()
{
parent::finalize();
$output = parent::getOutput();
$json_array = array();
foreach ($output AS $token) {
if ($this->_enumerated) {
$json_array[] = '["' . $token[0] . '","' . $token[1] . '"]';
} else {
$key = key($token);
$json_array[] = '{"class": "' . $key . '","content":"' . $token[$key] . '"}';
}
}
$this->_output = '['. implode(',', $json_array) .']';
$this->_output = str_replace("\n", '\n', $this->_output);
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

View file

@ -0,0 +1,104 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* XML renderer.
*
* Based on the HTML renderer by Andrey Demenev.
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
/**
* @ignore
*/
require_once 'Text/Highlighter/Renderer.php';
require_once 'Text/Highlighter/Renderer/Array.php';
require_once 'XML/Serializer.php';
/**
* XML renderer, based on Andrey Demenev's HTML renderer.
*
* @author Stoyan Stefanov <ssttoo@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2006 Stoyan Stefanov
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.5.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_Renderer_XML extends Text_Highlighter_Renderer_Array
{
/**
* Options for XML_Serializer
*
* @access private
* @var array
*/
var $_serializer_options = array();
/**
* Resets renderer state
*
* Descendents of Text_Highlighter call this method from the constructor,
* passing $options they get as parameter.
*
* @access protected
*/
function reset()
{
parent::reset();
if (isset($this->_options['xml_serializer'])) {
$this->_serializer_options = $this->_options['xml_serializer'];
}
}
/**
* Signals that no more tokens are available
*
* @abstract
* @access public
*/
function finalize()
{
// call parent's finalize(), then serialize array into XML
parent::finalize();
$output = parent::getOutput();
$serializer = new XML_Serializer($this->_serializer_options);
$result = $serializer->serialize($output);
if ($result === true) {
$this->_output = $serializer->getSerializedData();
}
}
}
/*
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,419 @@
<?php
/**
* Auto-generated class. SQL syntax highlighting
*
* Based on SQL-99
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : sql.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. SQL syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_SQL extends Text_Highlighter
{
var $_language = 'sql';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_SQL($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)`)|((?i)\\/\\*)|((?i)(#|--\\s).*)|((?i)[a-z_]\\w*)|((?i)")|((?i)\\()|((?i)\')|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)/',
0 => '//',
1 => '//',
2 => '/((?i)\\\\.)/',
3 => '/((?i)`)|((?i)\\/\\*)|((?i)(#|--\\s).*)|((?i)[a-z_]\\w*)|((?i)")|((?i)\\()|((?i)\')|((?i)((\\d+|((\\d*\\.\\d+)|(\\d+\\.\\d*)))[eE][+-]?\\d+))|((?i)(\\d*\\.\\d+)|(\\d+\\.\\d*))|((?i)\\d+l?|\\b0l?\\b)|((?i)0[xX][\\da-f]+l?)/',
4 => '/((?i)\\\\.)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 5,
8 => 2,
9 => 0,
10 => 0,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 0,
),
3 =>
array (
0 => 0,
1 => 0,
2 => 1,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 5,
8 => 2,
9 => 0,
10 => 0,
),
4 =>
array (
0 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'quotes',
1 => 'comment',
2 => '',
3 => '',
4 => 'quotes',
5 => 'brackets',
6 => 'quotes',
7 => '',
8 => '',
9 => '',
10 => '',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => '',
),
3 =>
array (
0 => 'quotes',
1 => 'comment',
2 => '',
3 => '',
4 => 'quotes',
5 => 'brackets',
6 => 'quotes',
7 => '',
8 => '',
9 => '',
10 => '',
),
4 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'identifier',
1 => 'comment',
2 => 'comment',
3 => 'identifier',
4 => 'string',
5 => 'code',
6 => 'string',
7 => 'number',
8 => 'number',
9 => 'number',
10 => 'number',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 'special',
),
3 =>
array (
0 => 'identifier',
1 => 'comment',
2 => 'comment',
3 => 'identifier',
4 => 'string',
5 => 'code',
6 => 'string',
7 => 'number',
8 => 'number',
9 => 'number',
10 => 'number',
),
4 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)`/',
1 => '/(?i)\\*\\//',
2 => '/(?i)"/',
3 => '/(?i)\\)/',
4 => '/(?i)\'/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => -1,
3 => -1,
4 => 2,
5 => 3,
6 => 4,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => -1,
),
3 =>
array (
0 => 0,
1 => 1,
2 => -1,
3 => -1,
4 => 2,
5 => 3,
6 => 4,
7 => -1,
8 => -1,
9 => -1,
10 => -1,
),
4 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 =>
array (
'reserved' => '/^((?i)absolute|action|add|admin|after|aggregate|alias|all|allocate|alter|and|any|are|array|as|asc|assertion|at|authorization|before|begin|binary|bit|blob|boolean|both|breadth|by|call|cascade|cascaded|case|cast|catalog|char|character|check|class|clob|close|collate|collation|column|commit|completion|connect|connection|constraint|constraints|constructor|continue|corresponding|create|cross|cube|current|current_date|current_path|current_role|current_time|current_timestamp|current_user|cursor|cycle|data|date|day|deallocate|dec|decimal|declare|default|deferrable|deferred|delete|depth|deref|desc|describe|descriptor|destroy|destructor|deterministic|diagnostics|dictionary|disconnect|distinct|domain|double|drop|dynamic|each|else|end|end-exec|equals|escape|every|except|exception|exec|execute|external|false|fetch|first|float|for|foreign|found|free|from|full|function|general|get|global|go|goto|grant|group|grouping|having|host|hour|identity|ignore|immediate|in|indicator|initialize|initially|inner|inout|input|insert|int|integer|intersect|interval|into|is|isolation|iterate|join|key|language|large|last|lateral|leading|left|less|level|like|limit|local|localtime|localtimestamp|locator|map|match|minute|modifies|modify|module|month|names|national|natural|nchar|nclob|new|next|no|none|not|null|numeric|object|of|off|old|on|only|open|operation|option|or|order|ordinality|out|outer|output|pad|parameter|parameters|partial|path|postfix|precision|prefix|preorder|prepare|preserve|primary|prior|privileges|procedure|public|read|reads|real|recursive|ref|references|referencing|relative|restrict|result|return|returns|revoke|right|role|rollback|rollup|routine|row|rows|savepoint|schema|scope|scroll|search|second|section|select|sequence|session|session_user|set|sets|size|smallint|some|space|specific|specifictype|sql|sqlexception|sqlstate|sqlwarning|start|state|statement|static|structure|system_user|table|temporary|terminate|than|then|time|timestamp|timezone_hour|timezone_minute|to|trailing|transaction|translation|treat|trigger|true|under|union|unique|unknown|unnest|update|usage|user|using|value|values|varchar|variable|varying|view|when|whenever|where|with|without|work|write|year|zone)$/',
'keyword' => '/^((?i)abs|ada|asensitive|assignment|asymmetric|atomic|avg|between|bitvar|bit_length|c|called|cardinality|catalog_name|chain|character_length|character_set_catalog|character_set_name|character_set_schema|char_length|checked|class_origin|coalesce|cobol|collation_catalog|collation_name|collation_schema|column_name|command_function|command_function_code|committed|condition_number|connection_name|constraint_catalog|constraint_name|constraint_schema|contains|convert|count|cursor_name|datetime_interval_code|datetime_interval_precision|defined|definer|dispatch|dynamic_function|dynamic_function_code|existing|exists|extract|final|fortran|g|generated|granted|hierarchy|hold|implementation|infix|insensitive|instance|instantiable|invoker|k|key_member|key_type|length|lower|m|max|message_length|message_octet_length|message_text|method|min|mod|more|mumps|name|nullable|nullif|number|octet_length|options|overlaps|overlay|overriding|parameter_mode|parameter_name|parameter_ordinal_position|parameter_specific_catalog|parameter_specific_name|parameter_specific_schema|pascal|pli|position|repeatable|returned_length|returned_octet_length|returned_sqlstate|routine_catalog|routine_name|routine_schema|row_count|scale|schema_name|security|self|sensitive|serializable|server_name|similar|simple|source|specific_name|style|subclass_origin|sublist|substring|sum|symmetric|system|table_name|transactions_committed|transactions_rolled_back|transaction_active|transform|transforms|translate|trigger_catalog|trigger_name|trigger_schema|trim|type|uncommitted|unnamed|upper|user_defined_type_catalog|user_defined_type_name|user_defined_type_schema)$/',
),
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 =>
array (
),
),
3 =>
array (
0 => -1,
1 => -1,
2 =>
array (
),
3 =>
array (
'reserved' => '/^((?i)absolute|action|add|admin|after|aggregate|alias|all|allocate|alter|and|any|are|array|as|asc|assertion|at|authorization|before|begin|binary|bit|blob|boolean|both|breadth|by|call|cascade|cascaded|case|cast|catalog|char|character|check|class|clob|close|collate|collation|column|commit|completion|connect|connection|constraint|constraints|constructor|continue|corresponding|create|cross|cube|current|current_date|current_path|current_role|current_time|current_timestamp|current_user|cursor|cycle|data|date|day|deallocate|dec|decimal|declare|default|deferrable|deferred|delete|depth|deref|desc|describe|descriptor|destroy|destructor|deterministic|diagnostics|dictionary|disconnect|distinct|domain|double|drop|dynamic|each|else|end|end-exec|equals|escape|every|except|exception|exec|execute|external|false|fetch|first|float|for|foreign|found|free|from|full|function|general|get|global|go|goto|grant|group|grouping|having|host|hour|identity|ignore|immediate|in|indicator|initialize|initially|inner|inout|input|insert|int|integer|intersect|interval|into|is|isolation|iterate|join|key|language|large|last|lateral|leading|left|less|level|like|limit|local|localtime|localtimestamp|locator|map|match|minute|modifies|modify|module|month|names|national|natural|nchar|nclob|new|next|no|none|not|null|numeric|object|of|off|old|on|only|open|operation|option|or|order|ordinality|out|outer|output|pad|parameter|parameters|partial|path|postfix|precision|prefix|preorder|prepare|preserve|primary|prior|privileges|procedure|public|read|reads|real|recursive|ref|references|referencing|relative|restrict|result|return|returns|revoke|right|role|rollback|rollup|routine|row|rows|savepoint|schema|scope|scroll|search|second|section|select|sequence|session|session_user|set|sets|size|smallint|some|space|specific|specifictype|sql|sqlexception|sqlstate|sqlwarning|start|state|statement|static|structure|system_user|table|temporary|terminate|than|then|time|timestamp|timezone_hour|timezone_minute|to|trailing|transaction|translation|treat|trigger|true|under|union|unique|unknown|unnest|update|usage|user|using|value|values|varchar|variable|varying|view|when|whenever|where|with|without|work|write|year|zone)$/',
'keyword' => '/^((?i)abs|ada|asensitive|assignment|asymmetric|atomic|avg|between|bitvar|bit_length|c|called|cardinality|catalog_name|chain|character_length|character_set_catalog|character_set_name|character_set_schema|char_length|checked|class_origin|coalesce|cobol|collation_catalog|collation_name|collation_schema|column_name|command_function|command_function_code|committed|condition_number|connection_name|constraint_catalog|constraint_name|constraint_schema|contains|convert|count|cursor_name|datetime_interval_code|datetime_interval_precision|defined|definer|dispatch|dynamic_function|dynamic_function_code|existing|exists|extract|final|fortran|g|generated|granted|hierarchy|hold|implementation|infix|insensitive|instance|instantiable|invoker|k|key_member|key_type|length|lower|m|max|message_length|message_octet_length|message_text|method|min|mod|more|mumps|name|nullable|nullif|number|octet_length|options|overlaps|overlay|overriding|parameter_mode|parameter_name|parameter_ordinal_position|parameter_specific_catalog|parameter_specific_name|parameter_specific_schema|pascal|pli|position|repeatable|returned_length|returned_octet_length|returned_sqlstate|routine_catalog|routine_name|routine_schema|row_count|scale|schema_name|security|self|sensitive|serializable|server_name|similar|simple|source|specific_name|style|subclass_origin|sublist|substring|sum|symmetric|system|table_name|transactions_committed|transactions_rolled_back|transaction_active|transform|transforms|translate|trigger_catalog|trigger_name|trigger_schema|trim|type|uncommitted|unnamed|upper|user_defined_type_catalog|user_defined_type_name|user_defined_type_schema)$/',
),
4 => -1,
5 => -1,
6 => -1,
7 =>
array (
),
8 =>
array (
),
9 =>
array (
),
10 =>
array (
),
),
4 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => NULL,
),
3 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
6 => NULL,
7 => NULL,
8 => NULL,
9 => NULL,
10 => NULL,
),
4 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => false,
),
3 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false,
7 => false,
8 => false,
9 => false,
10 => false,
),
4 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'reserved' => 'reserved',
'keyword' => 'var',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,318 @@
<?php
/**
* Auto-generated class. VBSCRIPT syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: vbscript.xml
* @author Daniel Fruzynski <daniel-AT-poradnik-webmastera.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. VBSCRIPT syntax highlighting
*
* @author Daniel Fruzynski <daniel-AT-poradnik-webmastera.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: 0.7.0
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_VBSCRIPT extends Text_Highlighter
{
var $_language = 'vbscript';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_VBSCRIPT($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\()|((?i)")|((?i)\'|[Rr][Ee][Mm]\\b)|((?i)\\d*\\.?\\d+)|((?i)&H[0-9a-fA-F]+)|((?i)[a-z_]\\w*)/',
0 => '/((?i)\\()|((?i)")|((?i)\'|[Rr][Ee][Mm]\\b)|((?i)\\d*\\.?\\d+)|((?i)&H[0-9a-fA-F]+)|((?i)[a-z_]\\w*)/',
1 => '//',
2 => '/((?i)((https?|ftp):\\/\\/[\\w\\?\\.\\-\\&=\\/%+]+)|(^|[\\s,!?])www\\.\\w+\\.\\w+[\\w\\?\\.\\&=\\/%+]*)|((?i)\\w+[\\.\\w\\-]+@(\\w+[\\.\\w\\-])+)|((?i)\\b(note|fixme):)|((?i)\\$\\w+:.+\\$)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
),
0 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 0,
4 => 0,
5 => 0,
),
1 =>
array (
),
2 =>
array (
0 => 3,
1 => 1,
2 => 1,
3 => 0,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'brackets',
1 => 'quotes',
2 => 'comment',
3 => '',
4 => '',
5 => '',
),
0 =>
array (
0 => 'brackets',
1 => 'quotes',
2 => 'comment',
3 => '',
4 => '',
5 => '',
),
1 =>
array (
),
2 =>
array (
0 => '',
1 => '',
2 => '',
3 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'code',
1 => 'string',
2 => 'comment',
3 => 'number',
4 => 'number',
5 => 'identifier',
),
0 =>
array (
0 => 'code',
1 => 'string',
2 => 'comment',
3 => 'number',
4 => 'number',
5 => 'identifier',
),
1 =>
array (
),
2 =>
array (
0 => 'url',
1 => 'url',
2 => 'inlinedoc',
3 => 'inlinedoc',
),
);
$this->_end = array (
0 => '/(?i)\\)/',
1 => '/(?i)"/',
2 => '/(?mi)$/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => -1,
4 => -1,
5 => -1,
),
0 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => -1,
4 => -1,
5 => -1,
),
1 =>
array (
),
2 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 =>
array (
),
4 =>
array (
),
5 =>
array (
'constants' => '/^((?i)vbblack|vbred|vbgreen|vbyellow|vbblue|vbmagenta|vbcyan|vbwhite|vbbinarycompare|vbtextcompare|vbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbokonly|vbokcancel|vbabortretryignore|vbyesnocancel|vbyesno|vbretrycancel|vbcritical|vbquestion|vbexclamation|vbinformation|vbdefaultbutton1|vbdefaultbutton2|vbdefaultbutton3|vbdefaultbutton4|vbapplicationmodal|vbsystemmodal|vbok|vbcancel|vbabort|vbretry|vbignore|vbyes|vbno|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|vbtab|vbverticaltab|vbusedefault|vbtrue|vbfalse|vbempty|vbnull|vbinteger|vblong|vbsingle|vbdouble|vbcurrency|vbdate|vbstring|vbobject|vberror|vbboolean|vbvariant|vbdataobject|vbdecimal|vbbyte|vbarray)$/',
'functions' => '/^((?i)abs|array|asc|atn|cbool|cbyte|ccur|cdate|cdbl|chr|cint|clng|cos|createobject|csng|cstr|date|dateadd|datediff|datepart|dateserial|datevalue|day|escape|eval|exp|filter|formatcurrency|formatdatetime|formatnumber|formatpercent|getlocale|getobject|getref|hex|hour|inputbox|instr|instrrev|int|fix|isarray|isdate|isempty|isnull|isnumeric|isobject|join|lbound|lcase|left|len|loadpicture|log|ltrim|rtrim|trim|mid|minute|month|monthname|msgbox|now|oct|replace|rgb|right|rnd|round|scriptengine|scriptenginebuildversion|scriptenginemajorversion|scriptengineminorversion|second|setlocale|sgn|sin|space|split|sqr|strcomp|string|strreverse|tan|time|timer|timeserial|timevalue|typename|ubound|ucase|unescape|vartype|weekday|weekdayname|year)$/',
'builtin' => '/^((?i)debug|err|match|regexp)$/',
'reserved' => '/^((?i)empty|false|nothing|null|true|and|eqv|imp|is|mod|not|or|xor|call|class|end|const|public|private|dim|do|while|until|exit|loop|erase|execute|executeglobal|for|each|in|to|step|next|function|default|if|then|else|elseif|on|error|resume|goto|option|explicit|property|get|let|set|randomize|redim|preserve|select|case|stop|sub|wend|with)$/',
),
),
0 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 =>
array (
),
4 =>
array (
),
5 =>
array (
'constants' => '/^((?i)vbblack|vbred|vbgreen|vbyellow|vbblue|vbmagenta|vbcyan|vbwhite|vbbinarycompare|vbtextcompare|vbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbokonly|vbokcancel|vbabortretryignore|vbyesnocancel|vbyesno|vbretrycancel|vbcritical|vbquestion|vbexclamation|vbinformation|vbdefaultbutton1|vbdefaultbutton2|vbdefaultbutton3|vbdefaultbutton4|vbapplicationmodal|vbsystemmodal|vbok|vbcancel|vbabort|vbretry|vbignore|vbyes|vbno|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|vbtab|vbverticaltab|vbusedefault|vbtrue|vbfalse|vbempty|vbnull|vbinteger|vblong|vbsingle|vbdouble|vbcurrency|vbdate|vbstring|vbobject|vberror|vbboolean|vbvariant|vbdataobject|vbdecimal|vbbyte|vbarray)$/',
'functions' => '/^((?i)abs|array|asc|atn|cbool|cbyte|ccur|cdate|cdbl|chr|cint|clng|cos|createobject|csng|cstr|date|dateadd|datediff|datepart|dateserial|datevalue|day|escape|eval|exp|filter|formatcurrency|formatdatetime|formatnumber|formatpercent|getlocale|getobject|getref|hex|hour|inputbox|instr|instrrev|int|fix|isarray|isdate|isempty|isnull|isnumeric|isobject|join|lbound|lcase|left|len|loadpicture|log|ltrim|rtrim|trim|mid|minute|month|monthname|msgbox|now|oct|replace|rgb|right|rnd|round|scriptengine|scriptenginebuildversion|scriptenginemajorversion|scriptengineminorversion|second|setlocale|sgn|sin|space|split|sqr|strcomp|string|strreverse|tan|time|timer|timeserial|timevalue|typename|ubound|ucase|unescape|vartype|weekday|weekdayname|year)$/',
'builtin' => '/^((?i)debug|err|match|regexp)$/',
'reserved' => '/^((?i)empty|false|nothing|null|true|and|eqv|imp|is|mod|not|or|xor|call|class|end|const|public|private|dim|do|while|until|exit|loop|erase|execute|executeglobal|for|each|in|to|step|next|function|default|if|then|else|elseif|on|error|resume|goto|option|explicit|property|get|let|set|randomize|redim|preserve|select|case|stop|sub|wend|with)$/',
),
),
1 =>
array (
),
2 =>
array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
),
3 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
4 => NULL,
5 => NULL,
),
1 =>
array (
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
),
0 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
),
1 =>
array (
),
2 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
'constants' => 'builtin',
'functions' => 'builtin',
'builtin' => 'builtin',
'reserved' => 'reserved',
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

View file

@ -0,0 +1,263 @@
<?php
/**
* Auto-generated class. XML syntax highlighting
*
* PHP version 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @link http://pear.php.net/package/Text_Highlighter
* @category Text
* @package Text_Highlighter
* @version generated from: : xml.xml,v 1.1 2007/06/03 02:35:28 ssttoo Exp
* @author Andrey Demenev <demenev@gmail.com>
*
*/
/**
* @ignore
*/
require_once 'Text/Highlighter.php';
/**
* Auto-generated class. XML syntax highlighting
*
* @author Andrey Demenev <demenev@gmail.com>
* @category Text
* @package Text_Highlighter
* @copyright 2004-2006 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version Release: @package_version@
* @link http://pear.php.net/package/Text_Highlighter
*/
class Text_Highlighter_XML extends Text_Highlighter
{
var $_language = 'xml';
/**
* PHP4 Compatible Constructor
*
* @param array $options
* @access public
*/
function Text_Highlighter_XML($options=array())
{
$this->__construct($options);
}
/**
* Constructor
*
* @param array $options
* @access public
*/
function __construct($options=array())
{
$this->_options = $options;
$this->_regs = array (
-1 => '/((?i)\\<\\!\\[CDATA\\[)|((?i)\\<!--)|((?i)\\<[\\?\\/]?)|((?i)(&|%)[\\w\\-\\.]+;)/',
0 => '//',
1 => '//',
2 => '/((?i)(?<=[\\<\\/?])[\\w\\-\\:]+)|((?i)[\\w\\-\\:]+)|((?i)")/',
3 => '/((?i)(&|%)[\\w\\-\\.]+;)/',
);
$this->_counts = array (
-1 =>
array (
0 => 0,
1 => 0,
2 => 0,
3 => 1,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 0,
1 => 0,
2 => 0,
),
3 =>
array (
0 => 1,
),
);
$this->_delim = array (
-1 =>
array (
0 => 'comment',
1 => 'comment',
2 => 'brackets',
3 => '',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => '',
1 => '',
2 => 'quotes',
),
3 =>
array (
0 => '',
),
);
$this->_inner = array (
-1 =>
array (
0 => 'comment',
1 => 'comment',
2 => 'code',
3 => 'special',
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => 'reserved',
1 => 'var',
2 => 'string',
),
3 =>
array (
0 => 'special',
),
);
$this->_end = array (
0 => '/(?i)\\]\\]\\>/',
1 => '/(?i)--\\>/',
2 => '/(?i)[\\/\\?]?\\>/',
3 => '/(?i)"/',
);
$this->_states = array (
-1 =>
array (
0 => 0,
1 => 1,
2 => 2,
3 => -1,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => -1,
1 => -1,
2 => 3,
),
3 =>
array (
0 => -1,
),
);
$this->_keywords = array (
-1 =>
array (
0 => -1,
1 => -1,
2 => -1,
3 =>
array (
),
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 =>
array (
),
1 =>
array (
),
2 => -1,
),
3 =>
array (
0 =>
array (
),
),
);
$this->_parts = array (
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => NULL,
1 => NULL,
2 => NULL,
),
3 =>
array (
0 => NULL,
),
);
$this->_subst = array (
-1 =>
array (
0 => false,
1 => false,
2 => false,
3 => false,
),
0 =>
array (
),
1 =>
array (
),
2 =>
array (
0 => false,
1 => false,
2 => false,
),
3 =>
array (
0 => false,
),
);
$this->_conditions = array (
);
$this->_kwmap = array (
);
$this->_defClass = 'code';
$this->_checkDefines();
}
}

171
vendor/pear-pear.php.net/Text_Highlighter/bin/generate generated vendored Normal file
View file

@ -0,0 +1,171 @@
#!/composer-php
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Console highlighter class generator
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Text
* @package Text_Highlighter
* @author Andrey Demenev <demenev@gmail.com>
* @copyright 2004 Andrey Demenev
* @license http://www.php.net/license/3_0.txt PHP License
* @version CVS: $Id$
* @link http://pear.php.net/package/Text_Highlighter
*/
require_once 'Text/Highlighter/Generator.php';
require_once 'Console/Getopt.php';
$options = Console_Getopt::getopt($argv, 'x:p:d:h', array('xml=', 'php=','dir=', 'help'));
if (PEAR::isError($options)) {
$message = str_replace('Console_Getopt: ','',$options->message);
usage($message);
}
$source = array();
$dest = array();
$dir = '';
$expectp = false;
$expectx = false;
$unexpectedx = false;
$unexpectedp = false;
$si = $di = 0;
foreach ($options[0] as $option) {
switch ($option[0]) {
case 'x':
case '--xml':
$source[$si] = $option[1];
if ($si) {
$di++;
}
$si++;
if ($expectp) {
$unexpectedx = true;
}
$expectp = true;
$expectx = false;
break;
case 'p':
case '--php':
if ($expectx) {
$unexpectedp = true;
}
$dest[$di] = $option[1];
$expectp = false;
$expectx = true;
break;
case 'd':
case '--dir':
$dir = $option[1];
break;
case 'h':
case '--help':
usage();
break;
}
}
if ($unexpectedx && !$dir) {
usage('Unexpected -x or --xml', STDERR);
}
if ($unexpectedp) {
usage('Unexpected -p or --php', STDERR);
}
$nsource = count($source);
$ndest = count($dest);
if (!$nsource && !$ndest) {
$source[]='php://stdin';
if (!$dir) {
$dest[]='php://stdout';
} else {
$dest[] = null;
}
} elseif ($expectp && !$dir && $nsource > 1) {
usage('-x or --xml without following -p or --php', STDERR);
} elseif ($nsource == 1 && !$ndest && !$dir) {
$dest[]='php://stdout';
}
if ($dir && substr($dir,-1)!='/' && substr($dir,-1)!=='\\' ) {
$dir .= DIRECTORY_SEPARATOR;
}
foreach ($source as $i => $xmlfile)
{
$gen = new Text_Highlighter_Generator;
$gen->setInputFile($xmlfile);
if ($gen->hasErrors()) {
break;
}
$gen->generate();
if ($gen->hasErrors()) {
break;
}
if (isset($dest[$i])) {
$phpfile = $dest[$i];
} else {
$phpfile = $dir . $gen->language . '.php';
}
$gen->saveCode($phpfile);
if ($gen->hasErrors()) {
break;
}
}
if ($gen->hasErrors()) {
$errors = $gen->getErrors();
foreach ($errors as $error) {
fwrite (STDERR, $error . "\n");
}
exit(1);
}
function usage($message='', $file=STDOUT)
{
$code = 0;
if ($message) {
$message .= "\n\n";
$code = 1;
}
$message .= <<<MSG
Generates a highlighter class from XML source
Usage:
generate options
Options:
-x filename, --xml=filename
source XML file. Multiple input files can be specified, in which
case each -x option must be followed by -p unless -d is specified
Defaults to stdin
-p filename, --php=filename
destination PHP file. Defaults to stdout. If specied multiple times,
each -p must follow -x
-d dirname, --dir=dirname
Default destination directory. File names will be taken from XML input
("lang" attribute of <highlight> tag)
-h, --help
This help
MSG;
fwrite ($file, $message);
exit($code);
}
?>

View file

@ -0,0 +1,188 @@
@echo off
rem vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4:
rem Console highlighter class generator
rem PHP versions 4 and 5
rem LICENSE: This source file is subject to version 3.0 of the PHP license
rem that is available through the world-wide-web at the following URI:
rem http://www.php.net/license/3_0.txt. If you did not receive a copy of
rem the PHP License and are unable to obtain it through the web, please
rem send a note to license@php.net so we can mail you a copy immediately.
rem @category Text
rem @package Text_Highlighter
rem @author Andrey Demenev <demenev@gmail.com>
rem @copyright 2004 Andrey Demenev
rem @license http://www.php.net/license/3_0.txt PHP License
rem @version CVS: $Id: generate.bat,v 1.1 2007-06-03 02:35:28 ssttoo Exp $
rem @link http://pear.php.net/package/Text_Highlighter
set "MHL_PARAMS="
:doshift
set "MHL_PARAMS=%MHL_PARAMS% %1"
shift
if -%1- == -- GOTO noshift
GOTO doshift
:noshift
/composer-php.bat -q -d output_buffering=1 -d include_path="D:\Mes Projets\Friendica\friendica\vendor/pear-pear.php.net/Text_Highlighter" D:\Mes Projets\Friendica\friendica\vendor/pear-pear.php.net/Text_Highlighter/bin/Text/Highlighter/generate.bat %MHL_PARAMS%
GOTO finish
<?php
ob_end_clean();
if (!defined('STDOUT')) {
define('STDOUT', fopen('php://stdout', 'wb'));
define('STDERR', fopen('php://stderr', 'wb'));
}
require_once 'Text/Highlighter/Generator.php';
require_once 'Console/Getopt.php';
$options = Console_Getopt::getopt($argv, 'x:p:d:h', array('xml=', 'php=','dir=', 'help'));
if (PEAR::isError($options)) {
$message = str_replace('Console_Getopt: ','',$options->message);
usage($message);
}
$source = array();
$dest = array();
$dir = '';
$expectp = false;
$expectx = false;
$unexpectedx = false;
$unexpectedp = false;
$si = $di = 0;
foreach ($options[0] as $option) {
switch ($option[0]) {
case 'x':
case '--xml':
$source[$si] = $option[1];
if ($si) {
$di++;
}
$si++;
if ($expectp) {
$unexpectedx = true;
}
$expectp = true;
$expectx = false;
break;
case 'p':
case '--php':
if ($expectx) {
$unexpectedp = true;
}
$dest[$di] = $option[1];
$expectp = false;
$expectx = true;
break;
case 'd':
case '--dir':
$dir = $option[1];
break;
case 'h':
case '--help':
usage();
break;
}
}
if ($unexpectedx && !$dir) {
usage('Unexpected -x or --xml', STDERR);
}
if ($unexpectedp) {
usage('Unexpected -p or --php', STDERR);
}
$nsource = count($source);
$ndest = count($dest);
if (!$nsource && !$ndest) {
$source[]='php://stdin';
if (!$dir) {
$dest[]='php://stdout';
} else {
$dest[] = null;
}
} elseif ($expectp && !$dir && $nsource > 1) {
usage('-x or --xml without following -p or --php', STDERR);
} elseif ($nsource == 1 && !$ndest && !$dir) {
$dest[]='php://stdout';
}
if ($dir && substr($dir,-1)!='/' && substr($dir,-1)!=='\\' ) {
$dir .= DIRECTORY_SEPARATOR;
}
foreach ($source as $i => $xmlfile)
{
$gen = new Text_Highlighter_Generator;
$gen->setInputFile($xmlfile);
if ($gen->hasErrors()) {
break;
}
$gen->generate();
if ($gen->hasErrors()) {
break;
}
if (isset($dest[$i])) {
$phpfile = $dest[$i];
} else {
$phpfile = $dir . $gen->language . '.php';
}
$gen->saveCode($phpfile);
if ($gen->hasErrors()) {
break;
}
}
if ($gen->hasErrors()) {
$errors = $gen->getErrors();
foreach ($errors as $error) {
fwrite (STDERR, $error . "\n");
}
exit(1);
}
exit(0);
function usage($message='', $file=STDOUT)
{
$code = 0;
if ($message) {
$message .= "\n\n";
$code = 1;
}
$message .= <<<MSG
Generates a highlighter class from XML source
Usage:
generate options
Options:
-x filename, --xml=filename
source XML file. Multiple input files can be specified, in which
case each -x option must be followed by -p unless -d is specified
Defaults to stdin
-p filename, --php=filename
destination PHP file. Defaults to stdout. If specied multiple times,
each -p must follow -x
-d dirname, --dir=dirname
Default destination directory. File names will be taken from XML input
("lang" attribute of <highlight> tag)
-h, --help
This help
MSG;
fwrite ($file, $message);
exit($code);
}
?>
:finish

View file

@ -0,0 +1,12 @@
# $Id$
Major issues to solve (but I currently have no idea how) :
- speedup highlighting process
- switching between highlighters depending on context, for example :
PHP code -> HTML -> (JavaScript|CSS)
# vim: set autoindent tabstop=4 shiftwidth=4 softtabstop=4 tw=78: */

View file

@ -0,0 +1,802 @@
<?xml version="1.0"?>
<!-- $Id: abap.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="abap" case = "no">
<authors>
<author name="Stoyan Stefanov" email ="ssttoo@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<region name="comment" start="^\*|&quot;" end="/$/m" innerClass="comment">
<contains all="no"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'" />
<block name="identifier" match="[a-zA-Z_]\w*" innerClass="identifier" contained="yes"/>
<block name="hexinteger" match="0[xX][\da-f]+" innerClass="number" contained="yes"/>
<block name="integer" match="\d\d*|\b0\b" innerClass="number" contained="yes"/>
<block name="octinteger" match="0[0-7]+" innerClass="number" contained="yes"/>
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number" contained="yes"/>
<block name="identifier" match="[a-z_\-]\w*" innerClass="identifier" case="no"/>
<keywords name="sy" inherits="identifier" innerClass="reserved">
<keyword match="SCREEN-NAME"/>
<keyword match="SCREEN-GROUP1"/>
<keyword match="SCREEN-GROUP2"/>
<keyword match="SCREEN-GROUP3"/>
<keyword match="SCREEN-GROUP4"/>
<keyword match="SCREEN-REQUIRED"/>
<keyword match="SCREEN-INPUT"/>
<keyword match="SCREEN-OUTPUT"/>
<keyword match="SCREEN-INTENSIFIED"/>
<keyword match="SCREEN-INVISIBLE"/>
<keyword match="SCREEN-LENGTH"/>
<keyword match="SCREEN-ACTIVE"/>
<keyword match="SY-INDEX"/>
<keyword match="SY-PAGNO"/>
<keyword match="SY-TABIX"/>
<keyword match="SY-TFILL"/>
<keyword match="SY-TLOPC"/>
<keyword match="SY-TMAXL"/>
<keyword match="SY-TOCCU"/>
<keyword match="SY-TTABC"/>
<keyword match="SY-TSTIS"/>
<keyword match="SY-TTABI"/>
<keyword match="SY-DBCNT"/>
<keyword match="SY-FDPOS"/>
<keyword match="SY-COLNO"/>
<keyword match="SY-LINCT"/>
<keyword match="SY-LINNO"/>
<keyword match="SY-LINSZ"/>
<keyword match="SY-PAGCT"/>
<keyword match="SY-MACOL"/>
<keyword match="SY-MAROW"/>
<keyword match="SY-TLENG"/>
<keyword match="SY-SFOFF"/>
<keyword match="SY-WILLI"/>
<keyword match="SY-LILLI"/>
<keyword match="SY-SUBRC"/>
<keyword match="SY-FLENG"/>
<keyword match="SY-CUCOL"/>
<keyword match="SY-CUROW"/>
<keyword match="SY-LSIND"/>
<keyword match="SY-LISTI"/>
<keyword match="SY-STEPL"/>
<keyword match="SY-TPAGI"/>
<keyword match="SY-WINX1"/>
<keyword match="SY-WINY1"/>
<keyword match="SY-WINX2"/>
<keyword match="SY-WINY2"/>
<keyword match="SY-WINCO"/>
<keyword match="SY-WINRO"/>
<keyword match="SY-WINDI"/>
<keyword match="SY-SROWS"/>
<keyword match="SY-SCOLS"/>
<keyword match="SY-LOOPC"/>
<keyword match="SY-FOLEN"/>
<keyword match="SY-FODEC"/>
<keyword match="SY-TZONE"/>
<keyword match="SY-DAYST"/>
<keyword match="SY-FTYPE"/>
<keyword match="SY-APPLI"/>
<keyword match="SY-FDAYW"/>
<keyword match="SY-CCURS"/>
<keyword match="SY-CCURT"/>
<keyword match="SY-DEBUG"/>
<keyword match="SY-CTYPE"/>
<keyword match="SY-INPUT"/>
<keyword match="SY-LANGU"/>
<keyword match="SY-MODNO"/>
<keyword match="SY-BATCH"/>
<keyword match="SY-BINPT"/>
<keyword match="SY-CALLD"/>
<keyword match="SY-DYNNR"/>
<keyword match="SY-DYNGR"/>
<keyword match="SY-NEWPA"/>
<keyword match="SY-PRI40"/>
<keyword match="SY-RSTRT"/>
<keyword match="SY-WTITL"/>
<keyword match="SY-CPAGE"/>
<keyword match="SY-DBNAM"/>
<keyword match="SY-MANDT"/>
<keyword match="SY-PREFX"/>
<keyword match="SY-FMKEY"/>
<keyword match="SY-PEXPI"/>
<keyword match="SY-PRINI"/>
<keyword match="SY-PRIMM"/>
<keyword match="SY-PRREL"/>
<keyword match="SY-PLAYO"/>
<keyword match="SY-PRBIG"/>
<keyword match="SY-PLAYP"/>
<keyword match="SY-PRNEW"/>
<keyword match="SY-PRLOG"/>
<keyword match="SY-PDEST"/>
<keyword match="SY-PLIST"/>
<keyword match="SY-PAUTH"/>
<keyword match="SY-PRDSN"/>
<keyword match="SY-PNWPA"/>
<keyword match="SY-CALLR"/>
<keyword match="SY-REPI2"/>
<keyword match="SY-RTITL"/>
<keyword match="SY-PRREC"/>
<keyword match="SY-PRTXT"/>
<keyword match="SY-PRABT"/>
<keyword match="SY-LPASS"/>
<keyword match="SY-NRPAG"/>
<keyword match="SY-PAART"/>
<keyword match="SY-PRCOP"/>
<keyword match="SY-BATZS"/>
<keyword match="SY-BSPLD"/>
<keyword match="SY-BREP4"/>
<keyword match="SY-BATZO"/>
<keyword match="SY-BATZD"/>
<keyword match="SY-BATZW"/>
<keyword match="SY-BATZM"/>
<keyword match="SY-CTABL"/>
<keyword match="SY-DBSYS"/>
<keyword match="SY-DCSYS"/>
<keyword match="SY-MACDB"/>
<keyword match="SY-SYSID"/>
<keyword match="SY-OPSYS"/>
<keyword match="SY-PFKEY"/>
<keyword match="SY-SAPRL"/>
<keyword match="SY-TCODE"/>
<keyword match="SY-UCOMM"/>
<keyword match="SY-CFWAE"/>
<keyword match="SY-CHWAE"/>
<keyword match="SY-SPONO"/>
<keyword match="SY-SPONR"/>
<keyword match="SY-WAERS"/>
<keyword match="SY-CDATE"/>
<keyword match="SY-DATUM"/>
<keyword match="SY-SLSET"/>
<keyword match="SY-SUBTY"/>
<keyword match="SY-SUBCS"/>
<keyword match="SY-GROUP"/>
<keyword match="SY-FFILE"/>
<keyword match="SY-UZEIT"/>
<keyword match="SY-DSNAM"/>
<keyword match="SY-REPID"/>
<keyword match="SY-TABID"/>
<keyword match="SY-TFDSN"/>
<keyword match="SY-UNAME"/>
<keyword match="SY-LSTAT"/>
<keyword match="SY-ABCDE"/>
<keyword match="SY-MARKY"/>
<keyword match="SY-SFNAM"/>
<keyword match="SY-TNAME"/>
<keyword match="SY-MSGLI"/>
<keyword match="SY-TITLE"/>
<keyword match="SY-ENTRY"/>
<keyword match="SY-LISEL"/>
<keyword match="SY-ULINE"/>
<keyword match="SY-XCODE"/>
<keyword match="SY-CPROG"/>
<keyword match="SY-XPROG"/>
<keyword match="SY-XFORM"/>
<keyword match="SY-LDBPG"/>
<keyword match="SY-TVAR0"/>
<keyword match="SY-TVAR1"/>
<keyword match="SY-TVAR2"/>
<keyword match="SY-TVAR3"/>
<keyword match="SY-TVAR4"/>
<keyword match="SY-TVAR5"/>
<keyword match="SY-TVAR6"/>
<keyword match="SY-TVAR7"/>
<keyword match="SY-TVAR8"/>
<keyword match="SY-TVAR9"/>
<keyword match="SY-MSGID"/>
<keyword match="SY-MSGTY"/>
<keyword match="SY-MSGNO"/>
<keyword match="SY-MSGV1"/>
<keyword match="SY-MSGV2"/>
<keyword match="SY-MSGV3"/>
<keyword match="SY-MSGV4"/>
<keyword match="SY-ONCOM"/>
<keyword match="SY-VLINE"/>
<keyword match="SY-WINSL"/>
<keyword match="SY-STACO"/>
<keyword match="SY-STARO"/>
<keyword match="SY-DATAR"/>
<keyword match="SY-HOST"/>
<keyword match="SY-LOCDB"/>
<keyword match="SY-LOCOP"/>
<keyword match="SY-DATLO"/>
<keyword match="SY-TIMLO"/>
<keyword match="SY-ZONLO"/>
<keyword match="SYST-INDEX"/>
<keyword match="SYST-PAGNO"/>
<keyword match="SYST-TABIX"/>
<keyword match="SYST-TFILL"/>
<keyword match="SYST-TLOPC"/>
<keyword match="SYST-TMAXL"/>
<keyword match="SYST-TOCCU"/>
<keyword match="SYST-TTABC"/>
<keyword match="SYST-TSTIS"/>
<keyword match="SYST-TTABI"/>
<keyword match="SYST-DBCNT"/>
<keyword match="SYST-FDPOS"/>
<keyword match="SYST-COLNO"/>
<keyword match="SYST-LINCT"/>
<keyword match="SYST-LINNO"/>
<keyword match="SYST-LINSZ"/>
<keyword match="SYST-PAGCT"/>
<keyword match="SYST-MACOL"/>
<keyword match="SYST-MAROW"/>
<keyword match="SYST-TLENG"/>
<keyword match="SYST-SFOFF"/>
<keyword match="SYST-WILLI"/>
<keyword match="SYST-LILLI"/>
<keyword match="SYST-SUBRC"/>
<keyword match="SYST-FLENG"/>
<keyword match="SYST-CUCOL"/>
<keyword match="SYST-CUROW"/>
<keyword match="SYST-LSIND"/>
<keyword match="SYST-LISTI"/>
<keyword match="SYST-STEPL"/>
<keyword match="SYST-TPAGI"/>
<keyword match="SYST-WINX1"/>
<keyword match="SYST-WINY1"/>
<keyword match="SYST-WINX2"/>
<keyword match="SYST-WINY2"/>
<keyword match="SYST-WINCO"/>
<keyword match="SYST-WINRO"/>
<keyword match="SYST-WINDI"/>
<keyword match="SYST-SROWS"/>
<keyword match="SYST-SCOLS"/>
<keyword match="SYST-LOOPC"/>
<keyword match="SYST-FOLEN"/>
<keyword match="SYST-FODEC"/>
<keyword match="SYST-TZONE"/>
<keyword match="SYST-DAYST"/>
<keyword match="SYST-FTYPE"/>
<keyword match="SYST-APPLI"/>
<keyword match="SYST-FDAYW"/>
<keyword match="SYST-CCURS"/>
<keyword match="SYST-CCURT"/>
<keyword match="SYST-DEBUG"/>
<keyword match="SYST-CTYPE"/>
<keyword match="SYST-INPUT"/>
<keyword match="SYST-LANGU"/>
<keyword match="SYST-MODNO"/>
<keyword match="SYST-BATCH"/>
<keyword match="SYST-BINPT"/>
<keyword match="SYST-CALLD"/>
<keyword match="SYST-DYNNR"/>
<keyword match="SYST-DYNGR"/>
<keyword match="SYST-NEWPA"/>
<keyword match="SYST-PRI40"/>
<keyword match="SYST-RSTRT"/>
<keyword match="SYST-WTITL"/>
<keyword match="SYST-CPAGE"/>
<keyword match="SYST-DBNAM"/>
<keyword match="SYST-MANDT"/>
<keyword match="SYST-PREFX"/>
<keyword match="SYST-FMKEY"/>
<keyword match="SYST-PEXPI"/>
<keyword match="SYST-PRINI"/>
<keyword match="SYST-PRIMM"/>
<keyword match="SYST-PRREL"/>
<keyword match="SYST-PLAYO"/>
<keyword match="SYST-PRBIG"/>
<keyword match="SYST-PLAYP"/>
<keyword match="SYST-PRNEW"/>
<keyword match="SYST-PRLOG"/>
<keyword match="SYST-PDEST"/>
<keyword match="SYST-PLIST"/>
<keyword match="SYST-PAUTH"/>
<keyword match="SYST-PRDSN"/>
<keyword match="SYST-PNWPA"/>
<keyword match="SYST-CALLR"/>
<keyword match="SYST-REPI2"/>
<keyword match="SYST-RTITL"/>
<keyword match="SYST-PRREC"/>
<keyword match="SYST-PRTXT"/>
<keyword match="SYST-PRABT"/>
<keyword match="SYST-LPASS"/>
<keyword match="SYST-NRPAG"/>
<keyword match="SYST-PAART"/>
<keyword match="SYST-PRCOP"/>
<keyword match="SYST-BATZS"/>
<keyword match="SYST-BSPLD"/>
<keyword match="SYST-BREP4"/>
<keyword match="SYST-BATZO"/>
<keyword match="SYST-BATZD"/>
<keyword match="SYST-BATZW"/>
<keyword match="SYST-BATZM"/>
<keyword match="SYST-CTABL"/>
<keyword match="SYST-DBSYS"/>
<keyword match="SYST-DCSYS"/>
<keyword match="SYST-MACDB"/>
<keyword match="SYST-SYSID"/>
<keyword match="SYST-OPSYS"/>
<keyword match="SYST-PFKEY"/>
<keyword match="SYST-SAPRL"/>
<keyword match="SYST-TCODE"/>
<keyword match="SYST-UCOMM"/>
<keyword match="SYST-CFWAE"/>
<keyword match="SYST-CHWAE"/>
<keyword match="SYST-SPONO"/>
<keyword match="SYST-SPONR"/>
<keyword match="SYST-WAERS"/>
<keyword match="SYST-CDATE"/>
<keyword match="SYST-DATUM"/>
<keyword match="SYST-SLSET"/>
<keyword match="SYST-SUBTY"/>
<keyword match="SYST-SUBCS"/>
<keyword match="SYST-GROUP"/>
<keyword match="SYST-FFILE"/>
<keyword match="SYST-UZEIT"/>
<keyword match="SYST-DSNAM"/>
<keyword match="SYST-REPID"/>
<keyword match="SYST-TABID"/>
<keyword match="SYST-TFDSN"/>
<keyword match="SYST-UNAME"/>
<keyword match="SYST-LSTAT"/>
<keyword match="SYST-ABCDE"/>
<keyword match="SYST-MARKY"/>
<keyword match="SYST-SFNAM"/>
<keyword match="SYST-TNAME"/>
<keyword match="SYST-MSGLI"/>
<keyword match="SYST-TITLE"/>
<keyword match="SYST-ENTRY"/>
<keyword match="SYST-LISEL"/>
<keyword match="SYST-ULINE"/>
<keyword match="SYST-XCODE"/>
<keyword match="SYST-CPROG"/>
<keyword match="SYST-XPROG"/>
<keyword match="SYST-XFORM"/>
<keyword match="SYST-LDBPG"/>
<keyword match="SYST-TVAR0"/>
<keyword match="SYST-TVAR1"/>
<keyword match="SYST-TVAR2"/>
<keyword match="SYST-TVAR3"/>
<keyword match="SYST-TVAR4"/>
<keyword match="SYST-TVAR5"/>
<keyword match="SYST-TVAR6"/>
<keyword match="SYST-TVAR7"/>
<keyword match="SYST-TVAR8"/>
<keyword match="SYST-TVAR9"/>
<keyword match="SYST-MSGID"/>
<keyword match="SYST-MSGTY"/>
<keyword match="SYST-MSGNO"/>
<keyword match="SYST-MSGV1"/>
<keyword match="SYST-MSGV2"/>
<keyword match="SYST-MSGV3"/>
<keyword match="SYST-MSGV4"/>
<keyword match="SYST-ONCOM"/>
<keyword match="SYST-VLINE"/>
<keyword match="SYST-WINSL"/>
<keyword match="SYST-STACO"/>
<keyword match="SYST-STARO"/>
<keyword match="SYST-DATAR"/>
<keyword match="SYST-HOST"/>
<keyword match="SYST-LOCDB"/>
<keyword match="SYST-LOCOP"/>
<keyword match="SYST-DATLO"/>
<keyword match="SYST-TIMLO"/>
<keyword match="SYST-ZONLO"/>
</keywords>
<keywords name="reserved" inherits="identifier" innerClass="reserved">
<keyword match="ABS"/>
<keyword match="ACOS"/>
<keyword match="ADD"/>
<keyword match="ADD-CORRESPONDING"/>
<keyword match="ADJACENT"/>
<keyword match="AFTER"/>
<keyword match="ALIASES"/>
<keyword match="ALL"/>
<keyword match="ANALYZER"/>
<keyword match="AND"/>
<keyword match="ANY"/>
<keyword match="APPEND"/>
<keyword match="AS"/>
<keyword match="ASCENDING"/>
<keyword match="ASIN"/>
<keyword match="ASSIGN"/>
<keyword match="ASSIGNED"/>
<keyword match="ASSIGNING"/>
<keyword match="AT"/>
<keyword match="ATAN"/>
<keyword match="AUTHORITY-CHECK"/>
<keyword match="AVG"/>
<keyword match="BACK"/>
<keyword match="BEFORE"/>
<keyword match="BEGIN"/>
<keyword match="BINARY"/>
<keyword match="BIT"/>
<keyword match="BIT-AND"/>
<keyword match="BIT-NOT"/>
<keyword match="BIT-OR"/>
<keyword match="BIT-XOR"/>
<keyword match="BLANK"/>
<keyword match="BLOCK"/>
<keyword match="BREAK-POINT"/>
<keyword match="BUFFER"/>
<keyword match="BY"/>
<keyword match="C"/>
<keyword match="CALL"/>
<keyword match="CASE"/>
<keyword match="CATCH"/>
<keyword match="CEIL"/>
<keyword match="CENTERED"/>
<keyword match="CHAIN"/>
<keyword match="CHANGE"/>
<keyword match="CHANGING"/>
<keyword match="CHECK"/>
<keyword match="CHECKBOX"/>
<keyword match="CLASS"/>
<keyword match="CLASS-DATA"/>
<keyword match="CLASS-EVENTS"/>
<keyword match="CLASS-METHODS"/>
<keyword match="CLASS-POOL"/>
<keyword match="CLEAR"/>
<keyword match="CLIENT"/>
<keyword match="CLOSE"/>
<keyword match="CNT"/>
<keyword match="CODE"/>
<keyword match="COLLECT"/>
<keyword match="COLOR"/>
<keyword match="COMMENT"/>
<keyword match="COMMIT"/>
<keyword match="COMMUNICATION"/>
<keyword match="COMPUTE"/>
<keyword match="CONCATENATE"/>
<keyword match="CONDENSE"/>
<keyword match="CONSTANTS"/>
<keyword match="CONTEXT"/>
<keyword match="CONTEXTS"/>
<keyword match="CONTINUE"/>
<keyword match="CONTROL"/>
<keyword match="CONTROLS"/>
<keyword match="CONVERT"/>
<keyword match="COPY"/>
<keyword match="CORRESPONDING"/>
<keyword match="COS"/>
<keyword match="COSH"/>
<keyword match="COUNT"/>
<keyword match="COUNTRY"/>
<keyword match="CREATE"/>
<keyword match="CURRENCY"/>
<keyword match="CURSOR"/>
<keyword match="CUSTOMER-FUNCTION"/>
<keyword match="DATA"/>
<keyword match="DATABASE"/>
<keyword match="DATASET"/>
<keyword match="DELETE"/>
<keyword match="DECIMALS"/>
<keyword match="DEFAULT"/>
<keyword match="DEFINE"/>
<keyword match="DELETE"/>
<keyword match="DEMAND"/>
<keyword match="DESCENDING"/>
<keyword match="DESCRIBE"/>
<keyword match="DIALOG"/>
<keyword match="DISTINCT"/>
<keyword match="DIV"/>
<keyword match="DIVIDE"/>
<keyword match="DIVIDE-CORRESPONDING"/>
<keyword match="DO"/>
<keyword match="DUPLICATES"/>
<keyword match="DYNPRO"/>
<keyword match="EDIT"/>
<keyword match="EDITOR-CALL"/>
<keyword match="ELSE"/>
<keyword match="ELSEIF"/>
<keyword match="END"/>
<keyword match="END-OF-DEFINITION"/>
<keyword match="END-OF-PAGE"/>
<keyword match="END-OF-SELECTION"/>
<keyword match="ENDAT"/>
<keyword match="ENDCASE"/>
<keyword match="ENDCATCH"/>
<keyword match="ENDCHAIN"/>
<keyword match="ENDCLASS"/>
<keyword match="ENDDO"/>
<keyword match="ENDEXEC"/>
<keyword match="ENDFORM"/>
<keyword match="ENDFUNCTION"/>
<keyword match="ENDIF"/>
<keyword match="ENDINTERFACE"/>
<keyword match="ENDLOOP"/>
<keyword match="ENDMETHOD"/>
<keyword match="ENDMODULE"/>
<keyword match="ENDON"/>
<keyword match="ENDPROVIDE"/>
<keyword match="ENDSELECT"/>
<keyword match="ENDWHILE"/>
<keyword match="ENTRIES"/>
<keyword match="EVENTS"/>
<keyword match="EXEC"/>
<keyword match="EXIT"/>
<keyword match="EXIT-COMMAND"/>
<keyword match="EXP"/>
<keyword match="EXPONENT"/>
<keyword match="EXPORT"/>
<keyword match="EXPORTING"/>
<keyword match="EXCEPTIONS"/>
<keyword match="EXTENDED"/>
<keyword match="EXTRACT"/>
<keyword match="FETCH"/>
<keyword match="FIELD"/>
<keyword match="FIELD-GROUPS"/>
<keyword match="FIELD-SYMBOLS"/>
<keyword match="FIELDS"/>
<keyword match="FLOOR"/>
<keyword match="FOR"/>
<keyword match="FORM"/>
<keyword match="FORMAT"/>
<keyword match="FRAC"/>
<keyword match="FRAME"/>
<keyword match="FREE"/>
<keyword match="FROM"/>
<keyword match="FUNCTION"/>
<keyword match="FUNCTION-POOL"/>
<keyword match="GENERATE"/>
<keyword match="GET"/>
<keyword match="GROUP"/>
<keyword match="HASHED"/>
<keyword match="HEADER"/>
<keyword match="HELP-ID"/>
<keyword match="HELP-REQUEST"/>
<keyword match="HIDE"/>
<keyword match="HOTSPOT"/>
<keyword match="ICON"/>
<keyword match="ID"/>
<keyword match="IF"/>
<keyword match="IMPORT"/>
<keyword match="IMPORTING"/>
<keyword match="INCLUDE"/>
<keyword match="INDEX"/>
<keyword match="INFOTYPES"/>
<keyword match="INITIALIZATION"/>
<keyword match="INNER"/>
<keyword match="INPUT"/>
<keyword match="INSERT"/>
<keyword match="INTENSIFIED"/>
<keyword match="INTERFACE"/>
<keyword match="INTERFACE-POOL"/>
<keyword match="INTERFACES"/>
<keyword match="INTO"/>
<keyword match="INVERSE"/>
<keyword match="JOIN"/>
<keyword match="KEY"/>
<keyword match="LANGUAGE"/>
<keyword match="LAST"/>
<keyword match="LEAVE"/>
<keyword match="LEFT"/>
<keyword match="LEFT-JUSTIFIED"/>
<keyword match="LIKE"/>
<keyword match="LINE"/>
<keyword match="LINE-COUNT"/>
<keyword match="LINE-SELECTION"/>
<keyword match="LINE-SIZE"/>
<keyword match="LINES"/>
<keyword match="LIST-PROCESSING"/>
<keyword match="LOAD"/>
<keyword match="LOAD-OF-PROGRAM"/>
<keyword match="LOCAL"/>
<keyword match="LOCALE"/>
<keyword match="LOG"/>
<keyword match="LOG10"/>
<keyword match="LOOP"/>
<keyword match="M"/>
<keyword match="MARGIN"/>
<keyword match="MASK"/>
<keyword match="MATCHCODE"/>
<keyword match="MAX"/>
<keyword match="MEMORY"/>
<keyword match="MESSAGE"/>
<keyword match="MESSAGE-ID"/>
<keyword match="MESSAGES"/>
<keyword match="METHOD"/>
<keyword match="METHODS"/>
<keyword match="MIN"/>
<keyword match="MOD"/>
<keyword match="MODE"/>
<keyword match="MODIF"/>
<keyword match="MODIFY"/>
<keyword match="MODULE"/>
<keyword match="MOVE"/>
<keyword match="MOVE-CORRESPONDING"/>
<keyword match="MULTIPLY"/>
<keyword match="MULTIPLY-CORRESPONDING"/>
<keyword match="NEW"/>
<keyword match="NEW-LINE"/>
<keyword match="NEW-PAGE"/>
<keyword match="NEXT"/>
<keyword match="NO"/>
<keyword match="NO-GAP"/>
<keyword match="NO-GAPS"/>
<keyword match="NO-HEADING"/>
<keyword match="NO-SCROLLING"/>
<keyword match="NO-SIGN"/>
<keyword match="NO-TITLE"/>
<keyword match="NO-ZERO"/>
<keyword match="NODES"/>
<keyword match="NON-UNIQUE"/>
<keyword match="O"/>
<keyword match="OBJECT"/>
<keyword match="OBLIGATORY"/>
<keyword match="OCCURS"/>
<keyword match="OF"/>
<keyword match="OFF"/>
<keyword match="ON"/>
<keyword match="OPEN"/>
<keyword match="OR"/>
<keyword match="ORDER"/>
<keyword match="OTHERS"/>
<keyword match="OUTER"/>
<keyword match="OUTPUT"/>
<keyword match="OVERLAY"/>
<keyword match="PACK"/>
<keyword match="PAGE"/>
<keyword match="PARAMETER"/>
<keyword match="PARAMETERS"/>
<keyword match="PERFORM"/>
<keyword match="PF-STATUS"/>
<keyword match="POSITION"/>
<keyword match="PRINT"/>
<keyword match="PRINT-CONTROL"/>
<keyword match="PRIVATE"/>
<keyword match="PROCESS"/>
<keyword match="PROGRAM"/>
<keyword match="PROPERTY"/>
<keyword match="PROTECTED"/>
<keyword match="PROVIDE"/>
<keyword match="PUBLIC"/>
<keyword match="PUT"/>
<keyword match="RADIOBUTTON"/>
<keyword match="RAISE"/>
<keyword match="RAISING"/>
<keyword match="RANGE"/>
<keyword match="RANGES"/>
<keyword match="READ"/>
<keyword match="RECEIVE"/>
<keyword match="REFRESH"/>
<keyword match="REJECT"/>
<keyword match="REPLACE"/>
<keyword match="REPORT"/>
<keyword match="REQUESTED"/>
<keyword match="RESERVE"/>
<keyword match="RESET"/>
<keyword match="RIGHT-JUSTIFIED"/>
<keyword match="ROLLBACK"/>
<keyword match="ROUND"/>
<keyword match="ROWS"/>
<keyword match="RTTI"/>
<keyword match="RUN"/>
<keyword match="SCAN"/>
<keyword match="SCREEN"/>
<keyword match="SEARCH"/>
<keyword match="SEPARATED"/>
<keyword match="SCROLL"/>
<keyword match="SCROLL-BOUNDARY"/>
<keyword match="SEARCH"/>
<keyword match="SELECT"/>
<keyword match="SELECT-OPTIONS"/>
<keyword match="SELECTION-SCREEN"/>
<keyword match="SELECTION-TABLE"/>
<keyword match="SET"/>
<keyword match="SHARED"/>
<keyword match="SHIFT"/>
<keyword match="SIGN"/>
<keyword match="SIN"/>
<keyword match="SINGLE"/>
<keyword match="SINH"/>
<keyword match="SIZE"/>
<keyword match="SKIP"/>
<keyword match="SORT"/>
<keyword match="SORTED"/>
<keyword match="SPLIT"/>
<keyword match="SQL"/>
<keyword match="SQRT"/>
<keyword match="STAMP"/>
<keyword match="STANDARD"/>
<keyword match="START-OF-SELECTION"/>
<keyword match="STATICS"/>
<keyword match="STOP"/>
<keyword match="STRING"/>
<keyword match="STRLEN"/>
<keyword match="STRUCTURE"/>
<keyword match="SUBMIT"/>
<keyword match="SUBTRACT"/>
<keyword match="SUBTRACT-CORRESPONDING"/>
<keyword match="SUM"/>
<keyword match="SUPPLY"/>
<keyword match="SUPPRESS"/>
<keyword match="SYMBOL"/>
<keyword match="SYNTAX-CHECK"/>
<keyword match="SYNTAX-TRACE"/>
<keyword match="SYSTEM-CALL"/>
<keyword match="SYSTEM-EXCEPTIONS"/>
<keyword match="TABLE"/>
<keyword match="TABLE_LINE"/>
<keyword match="TABLES"/>
<keyword match="TAN"/>
<keyword match="TANH"/>
<keyword match="TEXT"/>
<keyword match="TEXTPOOL"/>
<keyword match="TIME"/>
<keyword match="TIMES"/>
<keyword match="TITLE"/>
<keyword match="TITLEBAR"/>
<keyword match="TO"/>
<keyword match="TOP-OF-PAGE"/>
<keyword match="TRANSACTION"/>
<keyword match="TRANSFER"/>
<keyword match="TRANSLATE"/>
<keyword match="TRANSPORTING"/>
<keyword match="TRUNC"/>
<keyword match="TYPE"/>
<keyword match="TYPE-POOL"/>
<keyword match="TYPE-POOLS"/>
<keyword match="TYPES"/>
<keyword match="ULINE"/>
<keyword match="UNDER"/>
<keyword match="UNIQUE"/>
<keyword match="UNIT"/>
<keyword match="UNPACK"/>
<keyword match="UP"/>
<keyword match="UPDATE"/>
<keyword match="USER-COMMAND"/>
<keyword match="USING"/>
<keyword match="VALUE"/>
<keyword match="VALUE-REQUEST"/>
<keyword match="VALUES"/>
<keyword match="VARY"/>
<keyword match="WHEN"/>
<keyword match="WHERE"/>
<keyword match="WHILE"/>
<keyword match="WINDOW"/>
<keyword match="WITH"/>
<keyword match="WITH-TITLE"/>
<keyword match="WORK"/>
<keyword match="WRITE"/>
<keyword match="X"/>
<keyword match="XSTRING"/>
<keyword match="Z"/>
<keyword match="ZONE"/>
</keywords>
<keywords name="constants" inherits="identifier" innerClass="reserved">
<keyword match="INITIAL"/>
<keyword match="NULL"/>
<keyword match="SPACE"/>
<keyword match="COL_BACKGROUND"/>
<keyword match="COL_HEADING"/>
<keyword match="COL_NORMAL"/>
<keyword match="COL_TOTAL"/>
<keyword match="COL_KEY"/>
<keyword match="COL_POSITIVE"/>
<keyword match="COL_NEGATIVE"/>
<keyword match="COL_GROUP"/>
</keywords>
</highlight>

View file

@ -0,0 +1,201 @@
<?xml version="1.0"?>
<!-- $Id: cpp.xml,v 1.2 2008-07-31 23:06:30 ssttoo Exp $ -->
<highlight lang="CPP" case="no">
<authors>
<author name="Aaron Kalin"/>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<comment>
Thanks to Aaron Kalin for initial
implementation of this highlighter
</comment>
<default innerClass="code" />
<block name="escaped" match="\\" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
</block>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;"/>
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<block name="hexinteger" match="\b0[xX][\da-f]+" innerClass="number"/>
<block name="integer" match="\b\d\d*|\b0\b" innerClass="number"/>
<block name="octinteger" match="\b0[0-7]+" innerClass="number"/>
<block name="float" match="\b(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<region name="strincl" delimClass="quotes" innerClass="string" start="&lt;" end="&gt;">
<onlyin region="include" />
</region>
<!-- <block name="preprocessor" match="^#[azAZ_]\w*" innerClass="prepro"/> -->
<region name="include" innerClass="prepro" start="/^[ \t]*#include/m" end="/(?&lt;!\\)$/m">
<contains region="strdouble"/>
<contains region="strincl"/>
</region>
<region name="preprocessor" delimClass="prepro" innerClass="code" start="/^[ \t]*#[ \t]*[a-z]+/mi" end="/(?&lt;!\\)$/m">
<contains region="comment"/>
<contains region="mlcomment"/>
<contains region="strdouble"/>
<contains region="brackets"/>
<contains region="block"/>
<contains block="identifier"/>
<contains block="integer"/>
<contains block="hexinteger"/>
<contains block="octinteger"/>
<contains block="float"/>
</region>
<block name="number" match="\d*\.?\d+" innerClass="number"/>
<region name="mlcomment" innerClass="mlcomment" start="\/\*" end="\*\/" >
<contains block="cvstag"/>
</region>
<block name="cvstag" match="\$\w+\s*:.+\$" innerClass="inlinedoc">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<region name="comment" start="\/\/.+" end="/$/m" innerClass="comment" delimClass="comment">
<contains block="cvstag"/>
</region>
<keywords name="reserved" inherits="identifier" innerClass="reserved" case="yes">
<keyword match="and" />
<keyword match="and_eq" />
<keyword match="asm" />
<keyword match="bitand" />
<keyword match="bitor" />
<keyword match="break" />
<keyword match="case" />
<keyword match="catch" />
<keyword match="compl" />
<keyword match="const_cast" />
<keyword match="continue" />
<keyword match="default" />
<keyword match="delete" />
<keyword match="do" />
<keyword match="dynamic_cast" />
<keyword match="else" />
<keyword match="for" />
<keyword match="fortran" />
<keyword match="friend" />
<keyword match="goto" />
<keyword match="if" />
<keyword match="new" />
<keyword match="not" />
<keyword match="not_eq" />
<keyword match="operator" />
<keyword match="or" />
<keyword match="or_eq" />
<keyword match="private" />
<keyword match="protected" />
<keyword match="public" />
<keyword match="reinterpret_cast" />
<keyword match="return" />
<keyword match="sizeof" />
<keyword match="static_cast" />
<keyword match="switch" />
<keyword match="this" />
<keyword match="throw" />
<keyword match="try" />
<keyword match="typeid" />
<keyword match="using" />
<keyword match="while" />
<keyword match="xor" />
<keyword match="xor_eq" />
<keyword match="false" />
<keyword match="true" />
</keywords>
<keywords name="types" inherits="identifier" innerClass="types" case="yes">
<keyword match="auto" />
<keyword match="bool" />
<keyword match="char" />
<keyword match="class" />
<keyword match="const" />
<keyword match="double" />
<keyword match="enum" />
<keyword match="explicit" />
<keyword match="export" />
<keyword match="extern" />
<keyword match="float" />
<keyword match="inline" />
<keyword match="int" />
<keyword match="long" />
<keyword match="mutable" />
<keyword match="namespace" />
<keyword match="register" />
<keyword match="short" />
<keyword match="signed" />
<keyword match="static" />
<keyword match="struct" />
<keyword match="template" />
<keyword match="typedef" />
<keyword match="typename" />
<keyword match="union" />
<keyword match="unsigned" />
<keyword match="virtual" />
<keyword match="void" />
<keyword match="volatile" />
<keyword match="wchar_t" />
</keywords>
<keywords name="Common Macros" inherits="identifier" innerClass="prepro" case="yes">
<keyword match="NULL" />
<keyword match="TRUE" />
<keyword match="FALSE" />
<keyword match="MAX" />
<keyword match="MIN" />
<keyword match="__LINE__" />
<keyword match="__DATA__" />
<keyword match="__FILE__" />
<keyword match="__TIME__" />
<keyword match="__STDC__" />
</keywords>
<!--
<keywords name="reserved" inherits="identifier" innerClass="reserved" case="yes">
-->
</highlight>

View file

@ -0,0 +1,368 @@
<?xml version="1.0"?>
<!-- $Id: css.xml,v 1.2 2008-01-01 23:45:07 ssttoo Exp $ -->
<highlight lang="css" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="mlcomment" innerClass="comment" start="\/\*" end="\*\/" >
</region>
<block name="atrule" match="(@[a-z\d]+)"
innerClass="var" never-contained="yes"/>
<region name="property" start="[a-z][a-z\d\-]*\s*:" end="(?=;|\})"
innerClass="code" delimClass="reserved" contained="yes"/>
<block name="selector" match="(((\.|#)?[a-z]+[a-z\d\-]*(?![a-z\d\-]))|(\*))(?!\s*:\s*[\s\{])"
innerClass="identifier" >
</block>
<block name="pseudo" match=":[a-z][a-z\d\-]*"
innerClass="special" />
<block name="bescaped" match="\\[\\(\\)\\]"
innerClass="string" contained="yes"/>
<region name="paramselector" start="\[" end="\]" innerClass="code"
delimClass="brackets" >
<contains block="paramname" />
<not-contains block="identifier" />
<contains region="strdouble" />
<contains region="strsingle" />
</region>
<region name="block" start="\{" end="\}" innerClass="code"
delimClass="brackets" >
<contains region="block" />
<contains region="property" />
<contains block="selector" />
<contains region="mlcomment" />
</region>
<region name="brackets" start="\(" end="\)" innerClass="string"
delimClass="brackets" contained="yes">
<contains block="bescaped"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'" contained="yes"/>
<block name="escaped" match="\\\\|\\&quot;|\\'|\\`" innerClass="special" contained="yes">
<onlyin region="strsingle"/>
</block>
<block name="descaped" match="\\\\|\\&quot;|\\'|\\`|\\t|\\n|\\r" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
</block>
<region name="strdouble" delimClass="quotes" innerClass="string"
start="&quot;" end="&quot;" contained="yes" />
<block name="measure" match="\d*\.?\d+(\%|em|ex|pc|pt|px|in|mm|cm)"
innerClass="number" contained="yes">
<onlyin region="property"/>
<partClass index="1" innerClass="string" />
</block>
<block name="number" match="\d*\.?\d+" innerClass="number" contained="yes" >
<onlyin region="property"/>
</block>
<block name="identifier" match="[a-z][a-z\d\-]*"
innerClass="code" contained="yes">
<onlyin region="property"/>
</block>
<block name="hexcolor" match="#([\da-f]{6}|[\da-f]{3})\b" innerClass="var" contained="yes">
<onlyin region="property"/>
</block>
<block name="paramname" match="[\w\-\:]+" innerClass="var" contained="yes">
<onlyin region="paramselector"/>
</block>
<keywords name="propertyValue" inherits="identifier" innerClass="string" case = "no">
<word name="left-side"/>
<keyword match="far-left"/>
<keyword match="left"/>
<keyword match="center-left"/>
<keyword match="center-right"/>
<keyword match="center"/>
<keyword match="far-right"/>
<keyword match="right-side"/>
<keyword match="right"/>
<keyword match="behind"/>
<keyword match="leftwards"/>
<keyword match="rightwards"/>
<keyword match="inherit"/>
<keyword match="scroll"/>
<keyword match="fixed"/>
<keyword match="transparent"/>
<keyword match="none"/>
<keyword match="repeat-x"/>
<keyword match="repeat-y"/>
<keyword match="repeat"/>
<keyword match="no-repeat"/>
<keyword match="collapse"/>
<keyword match="separate"/>
<keyword match="auto"/>
<keyword match="top"/>
<keyword match="bottom"/>
<keyword match="both"/>
<keyword match="open-quote"/>
<keyword match="close-quote"/>
<keyword match="no-open-quote"/>
<keyword match="no-close-quote"/>
<keyword match="crosshair"/>
<keyword match="default"/>
<keyword match="pointer"/>
<keyword match="move"/>
<keyword match="e-resize"/>
<keyword match="ne-resize"/>
<keyword match="nw-resize"/>
<keyword match="n-resize"/>
<keyword match="se-resize"/>
<keyword match="sw-resize"/>
<keyword match="s-resize"/>
<keyword match="text"/>
<keyword match="wait"/>
<keyword match="help"/>
<keyword match="ltr"/>
<keyword match="rtl"/>
<keyword match="inline"/>
<keyword match="block"/>
<keyword match="list-item"/>
<keyword match="run-in"/>
<keyword match="compact"/>
<keyword match="marker"/>
<keyword match="table"/>
<keyword match="inline-table"/>
<keyword match="table-row-group"/>
<keyword match="table-header-group"/>
<keyword match="table-footer-group"/>
<keyword match="table-row"/>
<keyword match="table-column-group"/>
<keyword match="table-column"/>
<keyword match="table-cell"/>
<keyword match="table-caption"/>
<keyword match="below"/>
<keyword match="level"/>
<keyword match="above"/>
<keyword match="higher"/>
<keyword match="lower"/>
<keyword match="show"/>
<keyword match="hide"/>
<keyword match="caption"/>
<keyword match="icon"/>
<keyword match="menu"/>
<keyword match="message-box"/>
<keyword match="small-caption"/>
<keyword match="status-bar"/>
<keyword match="normal"/>
<keyword match="wider"/>
<keyword match="narrower"/>
<keyword match="ultra-condensed"/>
<keyword match="extra-condensed"/>
<keyword match="condensed"/>
<keyword match="semi-condensed"/>
<keyword match="semi-expanded"/>
<keyword match="expanded"/>
<keyword match="extra-expanded"/>
<keyword match="ultra-expanded"/>
<keyword match="italic"/>
<keyword match="oblique"/>
<keyword match="small-caps"/>
<keyword match="bold"/>
<keyword match="bolder"/>
<keyword match="lighter"/>
<keyword match="inside"/>
<keyword match="outside"/>
<keyword match="disc"/>
<keyword match="circle"/>
<keyword match="square"/>
<keyword match="decimal"/>
<keyword match="decimal-leading-zero"/>
<keyword match="lower-roman"/>
<keyword match="upper-roman"/>
<keyword match="lower-greek"/>
<keyword match="lower-alpha"/>
<keyword match="lower-latin"/>
<keyword match="upper-alpha"/>
<keyword match="upper-latin"/>
<keyword match="hebrew"/>
<keyword match="armenian"/>
<keyword match="georgian"/>
<keyword match="cjk-ideographic"/>
<keyword match="hiragana"/>
<keyword match="katakana"/>
<keyword match="hiragana-iroha"/>
<keyword match="katakana-iroha"/>
<keyword match="crop"/>
<keyword match="cross"/>
<keyword match="invert"/>
<keyword match="visible"/>
<keyword match="hidden"/>
<keyword match="always"/>
<keyword match="avoid"/>
<keyword match="x-low"/>
<keyword match="low"/>
<keyword match="medium"/>
<keyword match="high"/>
<keyword match="x-high"/>
<keyword match="mix?"/>
<keyword match="repeat?"/>
<keyword match="static"/>
<keyword match="relative"/>
<keyword match="absolute"/>
<keyword match="portrait"/>
<keyword match="landscape"/>
<keyword match="spell-out"/>
<keyword match="once"/>
<keyword match="digits"/>
<keyword match="continuous"/>
<keyword match="code"/>
<keyword match="x-slow"/>
<keyword match="slow"/>
<keyword match="fast"/>
<keyword match="x-fast"/>
<keyword match="faster"/>
<keyword match="slower"/>
<keyword match="justify"/>
<keyword match="underline"/>
<keyword match="overline"/>
<keyword match="line-through"/>
<keyword match="blink"/>
<keyword match="capitalize"/>
<keyword match="uppercase"/>
<keyword match="lowercase"/>
<keyword match="embed"/>
<keyword match="bidi-override"/>
<keyword match="baseline"/>
<keyword match="sub"/>
<keyword match="super"/>
<keyword match="text-top"/>
<keyword match="middle"/>
<keyword match="text-bottom"/>
<keyword match="silent"/>
<keyword match="x-soft"/>
<keyword match="soft"/>
<keyword match="loud"/>
<keyword match="x-loud"/>
<keyword match="pre"/>
<keyword match="nowrap"/>
<keyword match="serif"/>
<keyword match="sans-serif"/>
<keyword match="cursive"/>
<keyword match="fantasy"/>
<keyword match="monospace"/>
<keyword match="empty"/>
<keyword match="string"/>
<keyword match="strict"/>
<keyword match="loose"/>
<keyword match="char"/>
<keyword match="true"/>
<keyword match="false"/>
<keyword match="dotted"/>
<keyword match="dashed"/>
<keyword match="solid"/>
<keyword match="double"/>
<keyword match="groove"/>
<keyword match="ridge"/>
<keyword match="inset"/>
<keyword match="outset"/>
<keyword match="larger"/>
<keyword match="smaller"/>
<keyword match="xx-small"/>
<keyword match="x-small"/>
<keyword match="small"/>
<keyword match="large"/>
<keyword match="x-large"/>
<keyword match="xx-large"/>
<keyword match="all"/>
<keyword match="newspaper"/>
<keyword match="distribute"/>
<keyword match="distribute-all-lines"/>
<keyword match="distribute-center-last"/>
<keyword match="inter-word"/>
<keyword match="inter-ideograph"/>
<keyword match="inter-cluster"/>
<keyword match="kashida"/>
<keyword match="ideograph-alpha"/>
<keyword match="ideograph-numeric"/>
<keyword match="ideograph-parenthesis"/>
<keyword match="ideograph-space"/>
<keyword match="keep-all"/>
<keyword match="break-all"/>
<keyword match="break-word"/>
<keyword match="lr-tb"/>
<keyword match="tb-rl"/>
<keyword match="thin"/>
<keyword match="thick"/>
<keyword match="inline-block"/>
<keyword match="w-resize"/>
<keyword match="hand"/>
<keyword match="distribute-letter"/>
<keyword match="distribute-space"/>
<keyword match="whitespace"/>
<keyword match="male"/>
<keyword match="female"/>
<keyword match="child"/>
</keywords>
<keywords name="namedcolor" inherits="identifier" innerClass="var" case = "no">
<keyword match="aqua"/>
<keyword match="black"/>
<keyword match="blue"/>
<keyword match="fuchsia"/>
<keyword match="gray"/>
<keyword match="green"/>
<keyword match="lime"/>
<keyword match="maroon"/>
<keyword match="navy"/>
<keyword match="olive"/>
<keyword match="purple"/>
<keyword match="red"/>
<keyword match="silver"/>
<keyword match="teal"/>
<keyword match="white"/>
<keyword match="yellow"/>
<keyword match="ActiveBorder"/>
<keyword match="ActiveCaption"/>
<keyword match="AppWorkspace"/>
<keyword match="Background"/>
<keyword match="ButtonFace"/>
<keyword match="ButtonHighlight"/>
<keyword match="ButtonShadow"/>
<keyword match="ButtonText"/>
<keyword match="CaptionText"/>
<keyword match="GrayText"/>
<keyword match="Highlight"/>
<keyword match="HighlightText"/>
<keyword match="InactiveBorder"/>
<keyword match="InactiveCaption"/>
<keyword match="InactiveCaptionText"/>
<keyword match="InfoBackground"/>
<keyword match="InfoText"/>
<keyword match="Menu"/>
<keyword match="MenuText"/>
<keyword match="Scrollbar"/>
<keyword match="ThreeDDarkShadow"/>
<keyword match="ThreeDFace"/>
<keyword match="ThreeDHighlight"/>
<keyword match="ThreeDLightShadow"/>
<keyword match="ThreeDShadow"/>
<keyword match="Window"/>
<keyword match="WindowFrame"/>
<keyword match="WindowText"/>
</keywords>
</highlight>

View file

@ -0,0 +1,45 @@
<?xml version="1.0"?>
<!-- $Id: diff.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="diff" case="yes">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="default" />
<block name="noNewLine" match="/^\\\sNo\snewline.+$/m" innerClass="special"/>
<block name="diffSeparator" match="/^\-\-\-$/m" innerClass="code"/>
<block name="diffCmdLine" match="/^(diff\s+\-|Only\s+|Index).*$/m" innerClass="var"/>
<block name="diffFiles" match="/^(\-\-\-|\+\+\+)\s.+$/m" innerClass="reserved"/>
<block name="contextOrg" match="/^\*.*$/m" innerClass="quotes"/>
<block name="contextNew" match="/^\+.*$/m" innerClass="string"/>
<block name="contextChg" match="/^!.*$/m" innerClass="inlinedoc"/>
<block name="defOrg" match="/^\&lt;\s.*$/m" innerClass="quotes"/>
<block name="defNew" match="/^\&gt;\s.*$/m" innerClass="string"/>
<block name="defChg" match="/^\d+(\,\d+)?[acd]\d+(,\d+)?$/m" innerClass="code"/>
<block name="uniOrg" match="/^\-.*$/m" innerClass="quotes"/>
<block name="uniNew" match="/^\+.*$/m" innerClass="string"/>
<block name="uniChg" match="/^@@.+@@$/m" innerClass="code"/>
<block name="normOrg" match="/^d\d+\s\d+$/m" innerClass="code"/>
<region name="normNew" start="/^a\d+\s\d+$/m" end="/(?=^[ad]\d+\s\d+)/m" innerClass="var" delimClass="code"/>
<region name="edNew" start="/^(\d+)(,\d+)?(a)$/m" end="/^(\.)$/m" innerClass="string" delimClass="code"/>
<region name="edChg" start="/^(\d+)(,\d+)?(c)$/m" end="/^(\.)$/m" innerClass="inlinedoc" delimClass="code"/>
<block name="edDel" match="/^(\d+)(,\d+)?(d)$/m" innerClass="code"/>
<region name="fedNew" start="/^a(\d+)(\s\d+)?$/m" end="/^(\.)$/m" innerClass="string" delimClass="code"/>
<region name="fedChg" start="/^c(\d+)(\s\d+)?$/m" end="/^(\.)$/m" innerClass="inlinedoc" delimClass="code"/>
<block name="fedDel" match="/^d(\d+)(\s\d+)?$/m"
innerClass="code"/>
</highlight>

View file

@ -0,0 +1,66 @@
<?xml version="1.0"?>
<!-- $Id: dtd.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="dtd" case="yes">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="comment" delimClass="comment" innerClass="comment"
start="\&lt;!--" end="--\&gt;">
</region>
<region name="redecl" start="\&lt;\!\[" end="\]\]\&gt;" delimClass="brackets"
innerClass="code" never-contained="yes">
<contains all="yes" />
</region>
<region name="tag" start="\&lt;" end="\&gt;" delimClass="brackets"
innerClass="code" >
<contains all="yes" />
<onlyin region="redecl"/>
</region>
<region name="brackets" start="\(" end="\)" delimClass="brackets"
innerClass="code" contained="yes">
<onlyin region="tag"/>
<onlyin region="brackets"/>
<contains block="entity" />
<contains block="identifier" />
</region>
<region name="strsingle" start="'" end="'" delimClass="quotes"
innerClass="string" contained="yes">
<onlyin region="tag"/>
<contains block="entity" />
</region>
<region name="strdouble" start="&quot;" end="&quot;" delimClass="quotes"
innerClass="string" contained="yes">
<onlyin region="tag"/>
<contains block="entity" />
</region>
<block name="tagname" match="(?&lt;=\&lt;)!(ENTITY|ATTLIST|ELEMENT|NOTATION)\b"
innerClass="var" contained="yes">
<onlyin region="tag"/>
</block>
<block name="reserved" match="\s(#(IMPLIED|REQUIRED|FIXED))|CDATA|ENTITY|NOTATION|NMTOKENS?|PUBLIC|SYSTEM\b"
innerClass="reserved" contained="yes">
<onlyin region="tag"/>
</block>
<block name="pcdata" match="#PCDATA\b"
innerClass="reserved" contained="yes" />
<block name="entity" match="(\&amp;|\%)[\w\-\.]+;" innerClass="special" />
<block name="identifier" match="[a-z][a-z\d\-\,:]+"
innerClass="identifier" contained="yes" case="no"/>
</highlight>

View file

@ -0,0 +1,33 @@
<?xml version="1.0"?>
<!-- $Id: html.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="html" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="comment" delimClass="comment" innerClass="comment"
start="\&lt;!--" end="--\&gt;">
</region>
<region name="tag" delimClass="brackets" innerClass="code" start="\&lt;[\?\/]?" end="[\/\?]?\&gt;">
<contains block="tagname"/>
<contains region="param"/>
<contains block="paramname"/>
</region>
<block name="tagname" match="(?&lt;=[\&lt;\/?])[\w\-\:]+" innerClass="reserved" contained="yes"/>
<block name="paramname" match="[\w\-\:]+" innerClass="var" contained="yes"/>
<block name="entity" match="(&amp;)[\w\-\.]+;" innerClass="special" />
<region name="param" start="&quot;" end="&quot;" delimClass="quotes" innerClass="string" contained="yes">
<contains block="entity"/>
</region>
</highlight>

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,174 @@
<?xml version="1.0"?>
<!-- $Id: javascript.xml,v 1.3 2008-01-01 23:43:36 ssttoo Exp $ -->
<highlight lang="javascript" case = "no">
<authors>
<author name="Andrey Demenev" email ="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<region name="mlcomment" innerClass="comment" start="\/\*" end="\*\/" >
<contains block="cvstag"/>
</region>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;"/>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'" />
<block name="escaped" match="\\\\|\\&quot;|\\'|\\`" innerClass="special" contained="yes">
<onlyin region="strsingle"/>
</block>
<block name="descaped" match="\\\\|\\&quot;|\\'|\\`|\\t|\\n|\\r" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
</block>
<region name="comment" start="\/\/" end="/$/m" innerClass="comment">
<contains block="cvstag"/>
</region>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<block name="number" match="0x\d*|\d*\.?\d+" innerClass="number"/>
<block name="url" match="((https?|ftp):\/\/[\w\?\.\-\&amp;=\/%+]+)|(^|[\s,!?])www\.\w+\.\w+[\w\?\.\&amp;=\/%+]*" innerClass="url" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="email" match="\w+[\.\w\-]+@(\w+[\.\w\-])+" innerClass="url" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="note" match="\b(note|fixme):" innerClass="inlinedoc" contained="yes" case="no">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="cvstag" match="\$\w+:.+\$" innerClass="inlinedoc" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<keywords name="builtin" inherits="identifier" innerClass="builtin" case = "yes">
<keyword match="String"/>
<keyword match="Array"/>
<keyword match="RegExp"/>
<keyword match="Function"/>
<keyword match="Math"/>
<keyword match="Number"/>
<keyword match="Date"/>
<keyword match="Image"/>
<keyword match="window"/>
<keyword match="document"/>
<keyword match="navigator"/>
<keyword match="onAbort"/>
<keyword match="onBlur"/>
<keyword match="onChange"/>
<keyword match="onClick"/>
<keyword match="onDblClick"/>
<keyword match="onDragDrop"/>
<keyword match="onError"/>
<keyword match="onFocus"/>
<keyword match="onKeyDown"/>
<keyword match="onKeyPress"/>
<keyword match="onKeyUp"/>
<keyword match="onLoad"/>
<keyword match="onMouseDown"/>
<keyword match="onMouseOver"/>
<keyword match="onMouseOut"/>
<keyword match="onMouseMove"/>
<keyword match="onMouseUp"/>
<keyword match="onMove"/>
<keyword match="onReset"/>
<keyword match="onResize"/>
<keyword match="onSelect"/>
<keyword match="onSubmit"/>
<keyword match="onUnload"/>
</keywords>
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="break"/>
<keyword match="continue"/>
<keyword match="do"/>
<keyword match="while"/>
<keyword match="do"/>
<keyword match="export"/>
<keyword match="for"/>
<keyword match="in"/>
<keyword match="if"/>
<keyword match="else"/>
<keyword match="import"/>
<keyword match="return"/>
<keyword match="label"/>
<keyword match="switch"/>
<keyword match="case"/>
<keyword match="var"/>
<keyword match="with"/>
<keyword match="delete"/>
<keyword match="new"/>
<keyword match="this"/>
<keyword match="typeof"/>
<keyword match="void"/>
<keyword match="abstract"/>
<keyword match="boolean"/>
<keyword match="byte"/>
<keyword match="catch"/>
<keyword match="char"/>
<keyword match="class"/>
<keyword match="const"/>
<keyword match="continue"/>
<keyword match="debugger"/>
<keyword match="default"/>
<keyword match="double"/>
<keyword match="enum"/>
<keyword match="extends"/>
<keyword match="false"/>
<keyword match="final"/>
<keyword match="finally"/>
<keyword match="float"/>
<keyword match="function"/>
<keyword match="implements"/>
<keyword match="goto"/>
<keyword match="in"/>
<keyword match="instanceof"/>
<keyword match="int"/>
<keyword match="interface"/>
<keyword match="long"/>
<keyword match="native"/>
<keyword match="null"/>
<keyword match="package"/>
<keyword match="private"/>
<keyword match="protected"/>
<keyword match="public"/>
<keyword match="short"/>
<keyword match="static"/>
<keyword match="super"/>
<keyword match="synchronized"/>
<keyword match="throw"/>
<keyword match="throws"/>
<keyword match="transient"/>
<keyword match="true"/>
<keyword match="try"/>
<keyword match="volatile"/>
</keywords>
</highlight>

View file

@ -0,0 +1,424 @@
<?xml version="1.0"?>
<!-- $Id: mysql.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="mysql" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="qidentifier" delimClass="quotes" innerClass="identifier"
start="`" end="`" />
<region name="mlcomment" delimClass="comment" innerClass="comment"
start="\/\*" end="\*\/" />
<block name="comment" match="(#|--\s).*" innerClass="comment" />
<block name="possiblefunction" match="[a-z_]\w*(?=\s*\()" innerClass="identifier" />
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" />
<region name="strdouble" delimClass="quotes" innerClass="string"
start="&quot;" end="&quot;" >
</region>
<region name="brackets" delimClass="brackets" innerClass="code"
start="\(" end="\)" >
<contains all="yes"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string"
start="'" end="'" />
<block name="escaped" match="\\." innerClass="special" contained="yes">
<onlyin region="strsingle"/>
<onlyin region="strdouble"/>
</block>
<block name="exponent"
match="((\d+|((\d*\.\d+)|(\d+\.\d*)))[eE][+-]?\d+)"
innerClass="number" />
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<block name="integer" match="\d+l?|\b0l?\b" innerClass="number" />
<block name="hexinteger" match="0[xX][\da-f]+l?" innerClass="number" />
<keywords name="reserved" inherits="identifier" innerClass="reserved"
case="no">
<keyword match="action" />
<keyword match="add" />
<keyword match="aggregate" />
<keyword match="all" />
<keyword match="alter" />
<keyword match="after" />
<keyword match="and" />
<keyword match="as" />
<keyword match="asc" />
<keyword match="avg" />
<keyword match="avg_row_length" />
<keyword match="auto_increment" />
<keyword match="between" />
<keyword match="bigint" />
<keyword match="bit" />
<keyword match="binary" />
<keyword match="blob" />
<keyword match="bool" />
<keyword match="both" />
<keyword match="by" />
<keyword match="cascade" />
<keyword match="case" />
<keyword match="char" />
<keyword match="character" />
<keyword match="change" />
<keyword match="check" />
<keyword match="checksum" />
<keyword match="column" />
<keyword match="columns" />
<keyword match="comment" />
<keyword match="constraint" />
<keyword match="create" />
<keyword match="cross" />
<keyword match="current_date" />
<keyword match="current_time" />
<keyword match="current_timestamp" />
<keyword match="data" />
<keyword match="database" />
<keyword match="databases" />
<keyword match="date" />
<keyword match="datetime" />
<keyword match="day" />
<keyword match="day_hour" />
<keyword match="day_minute" />
<keyword match="day_second" />
<keyword match="dayofmonth" />
<keyword match="dayofweek" />
<keyword match="dayofyear" />
<keyword match="dec" />
<keyword match="decimal" />
<keyword match="default" />
<keyword match="delayed" />
<keyword match="delay_key_write" />
<keyword match="delete" />
<keyword match="desc" />
<keyword match="describe" />
<keyword match="distinct" />
<keyword match="distinctrow" />
<keyword match="double" />
<keyword match="drop" />
<keyword match="end" />
<keyword match="else" />
<keyword match="escape" />
<keyword match="escaped" />
<keyword match="enclosed" />
<keyword match="enum" />
<keyword match="explain" />
<keyword match="exists" />
<keyword match="fields" />
<keyword match="file" />
<keyword match="first" />
<keyword match="float" />
<keyword match="float4" />
<keyword match="float8" />
<keyword match="flush" />
<keyword match="foreign" />
<keyword match="from" />
<keyword match="for" />
<keyword match="full" />
<keyword match="function" />
<keyword match="global" />
<keyword match="grant" />
<keyword match="grants" />
<keyword match="group" />
<keyword match="having" />
<keyword match="heap" />
<keyword match="high_priority" />
<keyword match="hour" />
<keyword match="hour_minute" />
<keyword match="hour_second" />
<keyword match="hosts" />
<keyword match="identified" />
<keyword match="ignore" />
<keyword match="in" />
<keyword match="index" />
<keyword match="infile" />
<keyword match="inner" />
<keyword match="insert" />
<keyword match="insert_id" />
<keyword match="int" />
<keyword match="integer" />
<keyword match="interval" />
<keyword match="int1" />
<keyword match="int2" />
<keyword match="int3" />
<keyword match="int4" />
<keyword match="int8" />
<keyword match="into" />
<keyword match="if" />
<keyword match="is" />
<keyword match="isam" />
<keyword match="join" />
<keyword match="key" />
<keyword match="keys" />
<keyword match="kill" />
<keyword match="last_insert_id" />
<keyword match="leading" />
<keyword match="left" />
<keyword match="length" />
<keyword match="like" />
<keyword match="lines" />
<keyword match="limit" />
<keyword match="load" />
<keyword match="local" />
<keyword match="lock" />
<keyword match="logs" />
<keyword match="long" />
<keyword match="longblob" />
<keyword match="longtext" />
<keyword match="low_priority" />
<keyword match="max" />
<keyword match="max_rows" />
<keyword match="match" />
<keyword match="mediumblob" />
<keyword match="mediumtext" />
<keyword match="mediumint" />
<keyword match="middleint" />
<keyword match="min_rows" />
<keyword match="minute" />
<keyword match="minute_second" />
<keyword match="modify" />
<keyword match="month" />
<keyword match="monthname" />
<keyword match="myisam" />
<keyword match="natural" />
<keyword match="numeric" />
<keyword match="no" />
<keyword match="not" />
<keyword match="null" />
<keyword match="on" />
<keyword match="optimize" />
<keyword match="option" />
<keyword match="optionally" />
<keyword match="or" />
<keyword match="order" />
<keyword match="outer" />
<keyword match="outfile" />
<keyword match="pack_keys" />
<keyword match="partial" />
<keyword match="password" />
<keyword match="precision" />
<keyword match="primary" />
<keyword match="procedure" />
<keyword match="process" />
<keyword match="processlist" />
<keyword match="privileges" />
<keyword match="read" />
<keyword match="real" />
<keyword match="references" />
<keyword match="reload" />
<keyword match="regexp" />
<keyword match="rename" />
<keyword match="replace" />
<keyword match="restrict" />
<keyword match="returns" />
<keyword match="revoke" />
<keyword match="rlike" />
<keyword match="row" />
<keyword match="rows" />
<keyword match="second" />
<keyword match="select" />
<keyword match="set" />
<keyword match="show" />
<keyword match="shutdown" />
<keyword match="smallint" />
<keyword match="soname" />
<keyword match="sql_big_tables" />
<keyword match="sql_big_selects" />
<keyword match="sql_low_priority_updates" />
<keyword match="sql_log_off" />
<keyword match="sql_log_update" />
<keyword match="sql_select_limit" />
<keyword match="sql_small_result" />
<keyword match="sql_big_result" />
<keyword match="sql_warnings" />
<keyword match="straight_join" />
<keyword match="starting" />
<keyword match="status" />
<keyword match="string" />
<keyword match="table" />
<keyword match="tables" />
<keyword match="temporary" />
<keyword match="terminated" />
<keyword match="text" />
<keyword match="then" />
<keyword match="time" />
<keyword match="timestamp" />
<keyword match="tinyblob" />
<keyword match="tinytext" />
<keyword match="tinyint" />
<keyword match="trailing" />
<keyword match="to" />
<keyword match="type" />
<keyword match="use" />
<keyword match="using" />
<keyword match="unique" />
<keyword match="unlock" />
<keyword match="unsigned" />
<keyword match="update" />
<keyword match="usage" />
<keyword match="values" />
<keyword match="varchar" />
<keyword match="variables" />
<keyword match="varying" />
<keyword match="varbinary" />
<keyword match="with" />
<keyword match="write" />
<keyword match="when" />
<keyword match="where" />
<keyword match="year" />
<keyword match="year_month" />
<keyword match="zerofill" />
</keywords>
<keywords name="function" inherits="possiblefunction" innerClass="reserved"
case="no" otherwise="identifier">
<keyword match="ABS" />
<keyword match="ACOS" />
<keyword match="ADDDATE" />
<keyword match="ASCII" />
<keyword match="ASIN" />
<keyword match="ATAN" />
<keyword match="ATAN2" />
<keyword match="AVG" />
<keyword match="BENCHMARK" />
<keyword match="BIN" />
<keyword match="CEILING" />
<keyword match="CHAR" />
<keyword match="COALESCE" />
<keyword match="CONCAT" />
<keyword match="CONV" />
<keyword match="COS" />
<keyword match="COT" />
<keyword match="COUNT" />
<keyword match="CURDATE" />
<keyword match="CURTIME" />
<keyword match="DATABASE" />
<keyword match="DAYNAME" />
<keyword match="DAYOFMONTH" />
<keyword match="DAYOFWEEK" />
<keyword match="DAYOFYEAR" />
<keyword match="DECODE" />
<keyword match="DEGREES" />
<keyword match="ELT" />
<keyword match="ENCODE" />
<keyword match="ENCRYPT" />
<keyword match="EXP" />
<keyword match="EXTRACT" />
<keyword match="EXTRACT" />
<keyword match="FIELD" />
<keyword match="FLOOR" />
<keyword match="FORMAT" />
<keyword match="GREATEST" />
<keyword match="HEX" />
<keyword match="HOUR" />
<keyword match="IF" />
<keyword match="IFNULL" />
<keyword match="INSERT" />
<keyword match="INSTR" />
<keyword match="INTERVAL" />
<keyword match="ISNULL" />
<keyword match="LCASE" />
<keyword match="LEAST" />
<keyword match="LEFT" />
<keyword match="LENGTH" />
<keyword match="LOCATE" />
<keyword match="LOCATE" />
<keyword match="LOG" />
<keyword match="LOG10" />
<keyword match="LOWER" />
<keyword match="LPAD" />
<keyword match="LTRIM" />
<keyword match="MAX" />
<keyword match="MD5" />
<keyword match="MID" />
<keyword match="MIN" />
<keyword match="MINUTE" />
<keyword match="MOD" />
<keyword match="MONTH" />
<keyword match="MONTHNAME" />
<keyword match="NOW" />
<keyword match="NULLIF" />
<keyword match="OCT" />
<keyword match="ORD" />
<keyword match="PASSWORD" />
<keyword match="PI" />
<keyword match="POSITION" />
<keyword match="POW" />
<keyword match="POWER" />
<keyword match="prepare" />
<keyword match="QUARTER" />
<keyword match="RADIANS" />
<keyword match="RAND" />
<keyword match="REPEAT" />
<keyword match="REPLACE" />
<keyword match="REVERSE" />
<keyword match="RIGHT" />
<keyword match="ROUND" />
<keyword match="ROUND" />
<keyword match="RPAD" />
<keyword match="RTRIM" />
<keyword match="SECOND" />
<keyword match="SIGN" />
<keyword match="SIN" />
<keyword match="SOUNDEX" />
<keyword match="SPACE" />
<keyword match="SQRT" />
<keyword match="STD" />
<keyword match="STDDEV" />
<keyword match="STRCMP" />
<keyword match="SUBDATE" />
<keyword match="SUBSTRING" />
<keyword match="SUBSTRING" />
<keyword match="SUM" />
<keyword match="SYSDATE" />
<keyword match="TAN" />
<keyword match="TRIM" />
<keyword match="TRUNCATE" />
<keyword match="UCASE" />
<keyword match="UPPER" />
<keyword match="USER" />
<keyword match="VERSION" />
<keyword match="WEEK" />
<keyword match="WEEKDAY" />
<keyword match="YEAR" />
</keywords>
</highlight>

View file

@ -0,0 +1,439 @@
<?xml version="1.0"?>
<!-- $Id: perl.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="perl" case = "yes">
<authors>
<author name="Mariusz 'kg' Jakubowski" email="kg@alternatywa.info" jid="kg@chrome.pl"/>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<comment>This highlighter is EXPERIMENTAL, so that it may work incorrectly.
Most rules were created by Mariusz Jakubowski, and extended by me.
My knowledge of Perl is poor, and Perl syntax seems too
complicated to me.</comment>
<default innerClass="code"/>
<block name="interpreter" match="/^(#!)(.*)/m" innerClass="special">
<partClass index="1" innerClass="special" />
<partClass index="2" innerClass="string" />
</block>
<region name="pod" innerClass="comment" start="/^=\w+/m" end="/^=cut[^\n]*/m" startBOL="yes" endBOL="yes"/>
<!--
brackets
-->
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<!--
use smth
-->
<block name="usestatement" match="(use)\s+([\w:]*)" innerClass="special">
<partClass index="1" innerClass="reserved" />
<partClass index="2" innerClass="special" />
</block>
<block name="packagereference" match="[&amp; ](\w{2,}::)+\w{2,}" innerClass="special"/>
<region name="q-w-q-statement"
start="/\b(q[wq]\s*((\{)|(\()|(\[)|(\&lt;)|([\W\S])))(?=(.*)((?(3)\})(?(4)\))(?(5)\])(?(6)\&gt;)(?(7)\7)))/Us"
end="%b2%"
innerClass="string" delimClass="quotes" remember="yes">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<region name="qstatement"
start="/\b(q\s*((\{)|(\()|(\[)|(\&lt;)|([\W\S])))(?=(.*)((?(3)\})(?(4)\))(?(5)\])(?(6)\&gt;)(?(7)\7)))/Us"
end="%b2%"
innerClass="string" delimClass="quotes" remember="yes">
</region>
<!--
comments
-->
<block name="comment" match="#.*" innerClass="comment" />
<!--
regexpr
FIXME: this should be rewrited
-->
<block name="dblregexprver1" match="/(s|tr) ([|#~`!@$%^&amp;*-+=\\;:'&quot;,.\/?]) ((\\.|[^\\])*?) (\2)((\\.|[^\\])*?)(\2[ecgimosx]*)/x" innerClass="string">
<partClass index="1" innerClass="quotes" />
<partClass index="2" innerClass="quotes" />
<partClass index="3" innerClass="string" />
<partClass index="5" innerClass="quotes" />
<partClass index="6" innerClass="string" />
<partClass index="8" innerClass="quotes" />
</block>
<block name="dblregexprver2" match="/(m) ([|#~`!@$%^&amp;*-+=\\;:'&quot;,.\/?]) ((\\.|[^\\])*?) (\2[ecgimosx]*)/x" innerClass="string">
<partClass index="1" innerClass="quotes" />
<partClass index="2" innerClass="quotes" />
<partClass index="3" innerClass="string" />
<partClass index="5" innerClass="quotes" />
</block>
<region name="regexp" start=" \/" end="\/[cgimosx]*" innerClass="string" delimClass="quotes" case="yes">
<contains block="reescaped"/>
</region>
<block name="reescaped" match="\\\/" innerClass="string" contained="yes">
<onlyin region="regexp"/>
</block>
<!--
variables
FIXME: @{...}
-->
<block name="bracketsvars" match="([a-z1-9_]+)(\s*=>)" innerClass="string" contained="yes" case="no">
<partClass index="1" innerClass="string" />
<partClass index="2" innerClass="code" />
<onlyin region="brackets"/>
</block>
<block name="specialvar" match="\$#?[1-9'`@!]" innerClass="var"/>
<block name="var" match="(\$#?|[@%*])([a-z1-9_]+::)*([a-z1-9_]+|\^(?-i)[A-Z]?(?i))" innerClass="var" case="no"/>
<block name="containedvar" match="\$([a-z1-9_]+|\^(?-i)[A-Z]?(?i))" innerClass="var" case="no"/>
<!-- not shure what is this, but the Perlers do it :) -->
<block name="var2" match="(&amp;|\w+)'[\w_']+\b" innerClass="var" case="no"/>
<block name="classvar" match="(\{)([a-z1-9]+)(\})" innerClass="var" case="no">
<partClass index="1" innerClass="brackets" />
<partClass index="2" innerClass="var" />
<partClass index="3" innerClass="brackets" />
</block>
<block name="curlyvar" match="[\$@%]#?\{[a-z1-9]+\}" innerClass="var" case="no"/>
<!--
quotes
-->
<region name="exec" delimClass="quotes" innerClass="string" start="`" end="`">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'"/>
<block name="escaped" match="\\\\|\\&quot;|\\'|\\`" innerClass="special" contained="yes">
<onlyin region="qstatement"/>
<onlyin region="strsingle"/>
<onlyin region="exec"/>
</block>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<block name="descaped" match="\\[\\&quot;'`tnr\$\{@]" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
<onlyin region="q-w-q-statement"/>
</block>
<!-- logical op.
<block name="logic" match="\|\||&amp;&amp;" innerClass="reserved" contained="yes"/>-->
<!--
identifiers
-->
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<!--
numbers
-->
<block name="number" match="\d*\.?\d+" innerClass="number"/>
<!--
http://www.perldoc.com/perl5.6/pod/perlfunc.html
Alphabetical Listing of Perl Functions
-->
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="abs"/>
<keyword match="accept"/>
<keyword match="alarm"/>
<keyword match="atan2"/>
<keyword match="bind"/>
<keyword match="binmode"/>
<keyword match="bless"/>
<keyword match="caller"/>
<keyword match="chdir"/>
<keyword match="chmod"/>
<keyword match="chomp"/>
<keyword match="chop"/>
<keyword match="chown"/>
<keyword match="chr"/>
<keyword match="chroot"/>
<keyword match="close"/>
<keyword match="closedir"/>
<keyword match="connect"/>
<keyword match="continue"/>
<keyword match="cos"/>
<keyword match="crypt"/>
<keyword match="dbmclose"/>
<keyword match="dbmopen"/>
<keyword match="defined"/>
<keyword match="delete"/>
<keyword match="die"/>
<keyword match="do"/>
<keyword match="dump"/>
<keyword match="each"/>
<keyword match="endgrent"/>
<keyword match="endhostent"/>
<keyword match="endnetent"/>
<keyword match="endprotoent"/>
<keyword match="endpwent"/>
<keyword match="endservent"/>
<keyword match="eof"/>
<keyword match="eval"/>
<keyword match="exec"/>
<keyword match="exists"/>
<keyword match="exit"/>
<keyword match="exp"/>
<keyword match="fcntl"/>
<keyword match="fileno"/>
<keyword match="flock"/>
<keyword match="fork"/>
<keyword match="format"/>
<keyword match="formline"/>
<keyword match="getc"/>
<keyword match="getgrent"/>
<keyword match="getgrgid"/>
<keyword match="getgrnam"/>
<keyword match="gethostbyaddr"/>
<keyword match="gethostbyname"/>
<keyword match="gethostent"/>
<keyword match="getlogin"/>
<keyword match="getnetbyaddr"/>
<keyword match="getnetbyname"/>
<keyword match="getnetent"/>
<keyword match="getpeername"/>
<keyword match="getpgrp"/>
<keyword match="getppid"/>
<keyword match="getpriority"/>
<keyword match="getprotobyname"/>
<keyword match="getprotobynumber"/>
<keyword match="getprotoent"/>
<keyword match="getpwent"/>
<keyword match="getpwnam"/>
<keyword match="getpwuid"/>
<keyword match="getservbyname"/>
<keyword match="getservbyport"/>
<keyword match="getservent"/>
<keyword match="getsockname"/>
<keyword match="getsockopt"/>
<keyword match="glob"/>
<keyword match="gmtime"/>
<keyword match="goto"/>
<keyword match="grep"/>
<keyword match="hex"/>
<keyword match="import"/>
<keyword match="index"/>
<keyword match="int"/>
<keyword match="ioctl"/>
<keyword match="join"/>
<keyword match="keys"/>
<keyword match="kill"/>
<keyword match="last"/>
<keyword match="lc"/>
<keyword match="lcfirst"/>
<keyword match="length"/>
<keyword match="link"/>
<keyword match="listen"/>
<keyword match="local"/>
<keyword match="localtime"/>
<keyword match="lock"/>
<keyword match="log"/>
<keyword match="lstat"/>
<!--<keyword match="m"/>-->
<keyword match="map"/>
<keyword match="mkdir"/>
<keyword match="msgctl"/>
<keyword match="msgget"/>
<keyword match="msgrcv"/>
<keyword match="msgsnd"/>
<keyword match="my"/>
<keyword match="next"/>
<keyword match="no"/>
<keyword match="oct"/>
<keyword match="open"/>
<keyword match="opendir"/>
<keyword match="ord"/>
<keyword match="our"/>
<keyword match="pack"/>
<keyword match="package"/>
<keyword match="pipe"/>
<keyword match="pop"/>
<keyword match="pos"/>
<keyword match="print"/>
<keyword match="printf"/>
<keyword match="prototype"/>
<keyword match="push"/>
<!--<keyword match="q"/>
<keyword match="qq"/>
<keyword match="qr"/>-->
<keyword match="quotemeta"/>
<!--<keyword match="qw"/>
<keyword match="qx"/>-->
<keyword match="rand"/>
<keyword match="read"/>
<keyword match="readdir"/>
<keyword match="readline"/>
<keyword match="readlink"/>
<keyword match="readpipe"/>
<keyword match="recv"/>
<keyword match="redo"/>
<keyword match="ref"/>
<keyword match="rename"/>
<keyword match="require"/>
<keyword match="reset"/>
<keyword match="return"/>
<keyword match="reverse"/>
<keyword match="rewinddir"/>
<keyword match="rindex"/>
<keyword match="rmdir"/>
<!--<keyword match="s"/>-->
<keyword match="scalar"/>
<keyword match="seek"/>
<keyword match="seekdir"/>
<keyword match="select"/>
<keyword match="semctl"/>
<keyword match="semget"/>
<keyword match="semop"/>
<keyword match="send"/>
<keyword match="setgrent"/>
<keyword match="sethostent"/>
<keyword match="setnetent"/>
<keyword match="setpgrp"/>
<keyword match="setpriority"/>
<keyword match="setprotoent"/>
<keyword match="setpwent"/>
<keyword match="setservent"/>
<keyword match="setsockopt"/>
<keyword match="shift"/>
<keyword match="shmctl"/>
<keyword match="shmget"/>
<keyword match="shmread"/>
<keyword match="shmwrite"/>
<keyword match="shutdown"/>
<keyword match="sin"/>
<keyword match="sleep"/>
<keyword match="socket"/>
<keyword match="socketpair"/>
<keyword match="sort"/>
<keyword match="splice"/>
<keyword match="split"/>
<keyword match="sprintf"/>
<keyword match="sqrt"/>
<keyword match="srand"/>
<keyword match="stat"/>
<keyword match="study"/>
<keyword match="sub"/>
<keyword match="substr"/>
<keyword match="symlink"/>
<keyword match="syscall"/>
<keyword match="sysopen"/>
<keyword match="sysread"/>
<keyword match="sysseek"/>
<keyword match="system"/>
<keyword match="syswrite"/>
<keyword match="tell"/>
<keyword match="telldir"/>
<keyword match="tie"/>
<keyword match="tied"/>
<keyword match="time"/>
<keyword match="times"/>
<!--<keyword match="tr"/>-->
<keyword match="truncate"/>
<keyword match="uc"/>
<keyword match="ucfirst"/>
<keyword match="umask"/>
<keyword match="undef"/>
<keyword match="unlink"/>
<keyword match="unpack"/>
<keyword match="unshift"/>
<keyword match="untie"/>
<keyword match="use"/>
<keyword match="utime"/>
<keyword match="values"/>
<keyword match="vec"/>
<keyword match="wait"/>
<keyword match="waitpid"/>
<keyword match="wantarray"/>
<keyword match="warn"/>
<keyword match="write"/>
<keyword match="y"/>
</keywords>
<keywords name="missingreserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="new"/>
</keywords>
<keywords name="flowcontrol" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="if"/>
<keyword match="else"/>
<keyword match="elsif"/>
<keyword match="while"/>
<keyword match="unless"/>
<keyword match="for"/>
<keyword match="foreach"/>
<keyword match="until"/>
<keyword match="do"/>
<keyword match="continue"/>
<keyword match="not"/>
<keyword match="or"/>
<keyword match="and"/>
<keyword match="eq"/>
<keyword match="ne"/>
<keyword match="gt"/>
<keyword match="lt"/>
</keywords>
</highlight>

View file

@ -0,0 +1,194 @@
<?xml version="1.0"?>
<!-- $Id: php.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="php">
<authors>
<author name="Andrey Demenev" email ="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="phpCode" delimClass="inlinetags" innerClass="code"
start="\&lt;\?(php|=)?" end="\?\>" never-contained="yes">
<contains all="yes"/>
</region>
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}" contained="yes">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)" contained="yes" >
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]" contained="yes">
<contains all="yes"/>
</region>
<region name="mlcomment" innerClass="comment" start="\/\*" end="\*\/" contained="yes">
<contains block="phpdoc"/>
<contains block="cvstag"/>
</region>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;" contained="yes">
<contains block="var"/>
</region>
<region name="exec" delimClass="quotes" innerClass="string" start="`" end="`" contained="yes">
<contains block="var"/>
</region>
<region name="heredoc" delimClass="quotes" innerClass="string" start="/\&lt;\&lt;\&lt;[\x20\x09]*(\w+)$/m" end="/^%1%;?$/m" contained="yes" remember="yes">
<contains block="var"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'" contained="yes"/>
<block name="escaped" match="\\\\|\\&quot;|\\'|\\`" innerClass="special" contained="yes">
<onlyin region="strsingle"/>
<onlyin region="exec"/>
</block>
<block name="descaped" match="\\[\\&quot;'`tnr\$\{]" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
<onlyin region="heredoc"/>
</block>
<region name="comment" start="(#|\/\/)" end="/$|(?=\?\>)/m" innerClass="comment" contained="yes">
<contains block="cvstag"/>
</region>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" contained="yes"/>
<block name="typecast" match="\((array|int|integer|string|bool|boolean|object|float|double)\)" innerClass="reserved" contained="yes"/>
<block name="curlyvar" match="\{\$[a-z_].*\}" innerClass="var" contained="yes">
<onlyin region="strdouble"/>
<onlyin region="heredoc"/>
<onlyin region="exec"/>
</block>
<region name="codeescape" delimClass="inlinetags" innerClass="default" end="\&lt;\?(php|=)?" start="\?\>" contained="yes">
<onlyin region="block"/>
</region>
<block name="hexinteger" match="0[xX][\da-f]+" innerClass="number" contained="yes"/>
<block name="var" match="\$[a-z_]\w*" innerClass="var" contained="yes"/>
<block name="integer" match="\d\d*|\b0\b" innerClass="number" contained="yes"/>
<block name="octinteger" match="0[0-7]+" innerClass="number" contained="yes"/>
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number" contained="yes"/>
<block name="exponent"
match="((\d+|((\d*\.\d+)|(\d+\.\d*)))[eE][+-]?\d+)"
innerClass="number" contained="yes"/>
<block name="phpdoc" match="\s@\w+\s" innerClass="inlinedoc" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="url" match="((https?|ftp):\/\/[\w\?\.\-\&amp;=\/%+]+)|(^|[\s,!?])www\.\w+\.\w+[\w\?\.\&amp;=\/%+]*" innerClass="url" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="email" match="\w+[\.\w\-]+@(\w+[\.\w\-])+" innerClass="url" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="note" match="\bnote:" innerClass="inlinedoc" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<block name="cvstag" match="\$\w+\s*:.*\$" innerClass="inlinedoc" contained="yes">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<keywords name="constants" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="DIRECTORY_SEPARATOR"/>
<keyword match="PATH_SEPARATOR"/>
</keywords>
<keywords name="reserved" inherits="identifier" innerClass="reserved">
<keyword match="echo"/>
<keyword match="foreach"/>
<keyword match="else"/>
<keyword match="if"/>
<keyword match="elseif"/>
<keyword match="for"/>
<keyword match="as"/>
<keyword match="while"/>
<keyword match="foreach"/>
<keyword match="break"/>
<keyword match="continue"/>
<keyword match="class"/>
<keyword match="const"/>
<keyword match="declare"/>
<keyword match="switch"/>
<keyword match="case"/>
<keyword match="endfor"/>
<keyword match="endswitch"/>
<keyword match="endforeach"/>
<keyword match="endswitch"/>
<keyword match="endif"/>
<keyword match="array"/>
<keyword match="default"/>
<keyword match="do"/>
<keyword match="enddeclare"/>
<keyword match="eval"/>
<keyword match="exit"/>
<keyword match="die"/>
<keyword match="extends"/>
<keyword match="function"/>
<keyword match="global"/>
<keyword match="include"/>
<keyword match="include_once"/>
<keyword match="require"/>
<keyword match="require_once"/>
<keyword match="isset"/>
<keyword match="empty"/>
<keyword match="list"/>
<keyword match="new"/>
<keyword match="static"/>
<keyword match="unset"/>
<keyword match="var"/>
<keyword match="return"/>
<keyword match="try"/>
<keyword match="catch"/>
<keyword match="final"/>
<keyword match="throw"/>
<keyword match="public"/>
<keyword match="private"/>
<keyword match="protected"/>
<keyword match="abstract"/>
<keyword match="interface"/>
<keyword match="implements"/>
<keyword match="const"/>
<keyword match="define"/>
<keyword match="__FILE__"/>
<keyword match="__LINE__"/>
<keyword match="__CLASS__"/>
<keyword match="__METHOD__"/>
<keyword match="__FUNCTION__"/>
<keyword match="NULL"/>
<keyword match="true"/>
<keyword match="false"/>
<keyword match="and"/>
<keyword match="or"/>
<keyword match="xor"/>
</keywords>
</highlight>

View file

@ -0,0 +1,229 @@
<?xml version="1.0"?>
<!-- $Id: python.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="python" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="strsingle3" delimClass="quotes" innerClass="string"
start="'''" end="'''" />
<region name="strdouble3" delimClass="quotes" innerClass="string"
start="&quot;&quot;&quot;" end="&quot;&quot;&quot;">
</region>
<region name="strdouble" delimClass="quotes" innerClass="string"
start="&quot;" end="&quot;" >
</region>
<region name="strsingle" delimClass="quotes" innerClass="string"
start="'" end="'" />
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)" >
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]" >
<contains all="yes"/>
</region>
<block name="escaped" match="\\." innerClass="special" contained="yes">
<onlyin region="strsingle"/>
<onlyin region="strsingle3"/>
<onlyin region="strdouble"/>
<onlyin region="strdouble3"/>
</block>
<block name="possiblefunction" match="[a-z_]\w*(?=\s*\()" innerClass="identifier" />
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" />
<block name="exponent"
match="((\d+|((\d*\.\d+)|(\d+\.\d*)))[eE][+-]?\d+)"
innerClass="number" />
<block name="imaginary" match="((\d*\.\d+)|(\d+\.\d*)|(\d+))j" innerClass="number"/>
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<block name="integer" match="\d+l?|\b0l?\b" innerClass="number" />
<block name="hexinteger" match="0[xX][\da-f]+l?" innerClass="number" />
<block name="octinteger" match="0[0-7]+l?" innerClass="number" />
<block name="comment" innerClass="comment"
match="#.+" />
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="and"/>
<keyword match="del"/>
<keyword match="for"/>
<keyword match="is"/>
<keyword match="raise"/>
<keyword match="assert"/>
<keyword match="elif"/>
<keyword match="from"/>
<keyword match="lambda"/>
<keyword match="return"/>
<keyword match="break"/>
<keyword match="else"/>
<keyword match="global"/>
<keyword match="not"/>
<keyword match="try"/>
<keyword match="class"/>
<keyword match="except"/>
<keyword match="if"/>
<keyword match="or"/>
<keyword match="while"/>
<keyword match="continue"/>
<keyword match="exec"/>
<keyword match="import"/>
<keyword match="pass"/>
<keyword match="yield"/>
<keyword match="def"/>
<keyword match="finally"/>
<keyword match="in"/>
<keyword match="print"/>
<keyword match="False"/>
<keyword match="True"/>
<keyword match="None"/>
<keyword match="NotImplemented"/>
<keyword match="Ellipsis"/>
<keyword match="Exception" />
<keyword match="SystemExit" />
<keyword match="StopIteration" />
<keyword match="StandardError" />
<keyword match="KeyboardInterrupt" />
<keyword match="ImportError" />
<keyword match="EnvironmentError" />
<keyword match="IOError" />
<keyword match="OSError" />
<keyword match="WindowsError" />
<keyword match="EOFError" />
<keyword match="RuntimeError" />
<keyword match="NotImplementedError" />
<keyword match="NameError" />
<keyword match="UnboundLocalError" />
<keyword match="AttributeError" />
<keyword match="SyntaxError" />
<keyword match="IndentationError" />
<keyword match="TabError" />
<keyword match="TypeError" />
<keyword match="AssertionError" />
<keyword match="LookupError" />
<keyword match="IndexError" />
<keyword match="KeyError" />
<keyword match="ArithmeticError" />
<keyword match="OverflowError" />
<keyword match="ZeroDivisionError" />
<keyword match="FloatingPointError" />
<keyword match="ValueError" />
<keyword match="UnicodeError" />
<keyword match="UnicodeEncodeError" />
<keyword match="UnicodeDecodeError" />
<keyword match="UnicodeTranslateError" />
<keyword match="ReferenceError" />
<keyword match="SystemError" />
<keyword match="MemoryError" />
<keyword match="Warning" />
<keyword match="UserWarning" />
<keyword match="DeprecationWarning" />
<keyword match="PendingDeprecationWarning" />
<keyword match="SyntaxWarning" />
<keyword match="OverflowWarning" />
<keyword match="RuntimeWarning" />
<keyword match="FutureWarning" />
</keywords>
<keywords name="builtin" inherits="possiblefunction"
innerClass="builtin" otherwise="identifier" case = "yes">
<keyword match="__import__"/>
<keyword match="abs"/>
<keyword match="apply"/>
<keyword match="basestring"/>
<keyword match="bool"/>
<keyword match="buffer"/>
<keyword match="callable"/>
<keyword match="chr"/>
<keyword match="classmethod"/>
<keyword match="cmp"/>
<keyword match="coerce"/>
<keyword match="compile"/>
<keyword match="complex"/>
<keyword match="delattr"/>
<keyword match="dict"/>
<keyword match="dir"/>
<keyword match="divmod"/>
<keyword match="enumerate"/>
<keyword match="eval"/>
<keyword match="execfile"/>
<keyword match="file"/>
<keyword match="filter"/>
<keyword match="float"/>
<keyword match="getattr"/>
<keyword match="globals"/>
<keyword match="hasattr"/>
<keyword match="hash"/>
<keyword match="help"/>
<keyword match="hex"/>
<keyword match="id"/>
<keyword match="input"/>
<keyword match="int"/>
<keyword match="intern"/>
<keyword match="isinstance"/>
<keyword match="issubclass"/>
<keyword match="iter"/>
<keyword match="len"/>
<keyword match="list"/>
<keyword match="locals"/>
<keyword match="long"/>
<keyword match="map"/>
<keyword match="max"/>
<keyword match="min"/>
<keyword match="object"/>
<keyword match="oct"/>
<keyword match="open"/>
<keyword match="ord"/>
<keyword match="pow"/>
<keyword match="property"/>
<keyword match="range"/>
<keyword match="raw_input"/>
<keyword match="reduce"/>
<keyword match="reload"/>
<keyword match="repr"/>
<keyword match="round"/>
<keyword match="setattr"/>
<keyword match="slice"/>
<keyword match="staticmethod"/>
<keyword match="sum"/>
<keyword match="super"/>
<keyword match="str"/>
<keyword match="tuple"/>
<keyword match="type"/>
<keyword match="unichr"/>
<keyword match="unicode"/>
<keyword match="vars"/>
<keyword match="xrange"/>
<keyword match="zip"/>
</keywords>
</highlight>

View file

@ -0,0 +1,141 @@
<?xml version="1.0"?>
<!-- $Id: ruby.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="ruby" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<comment>
FIXME: While this construction : s.split /z/i
is valid, regular expression is not recognized as such
(/ folowing an identifier or number is not recognized as
start of RE), making highlighting improper
%q(a (nested) string) does not get highlighted correctly
</comment>
<default innerClass="code" />
<region name="data" start="/^__END__$/m" end="$" delimClass="reserved" innerClass="comment" never-conteined="yes" />
<region name="strdouble" delimClass="quotes" innerClass="string"
start="&quot;" end="&quot;" >
</region>
<region name="qstrdouble" delimClass="quotes" innerClass="string"
start="%[Qx]([!&quot;#\$%&amp;'+\-*.\/:;=?@^`|~{&lt;\[(])" end="%b1%" remember="yes" />
<region name="strsingle" delimClass="quotes" innerClass="string"
start="'" end="'" />
<region name="qstrsingle" delimClass="quotes" innerClass="string"
start="%[wq]([!&quot;#\$%&amp;'+\-*.\/:;=?@^`|~{&lt;\[(])" end="%b1%" remember="yes" />
<block name="global" match="\$(\W|\w+)" innerClass="var" />
<block name="classvar" match="/@@?[_a-z][\d_a-z]*/i" innerClass="var" />
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)" >
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]" >
<contains all="yes"/>
</region>
<block name="escaped" match="\\." innerClass="special" contained="yes">
<onlyin region="qstrsingle"/>
<onlyin region="strsingle"/>
<onlyin region="qstrdouble"/>
<onlyin region="strdouble"/>
<onlyin region="regexp"/>
</block>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" />
<block name="exponent"
match="((\d+|((\d*\.\d+)|(\d+\.\d*)))[eE][+-]?\d+)"
innerClass="number" />
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<block name="hexinteger" match="0[xX][\da-f]+l?" innerClass="number" />
<block name="integer" match="\d+l?|\b0l?\b" innerClass="number" />
<block name="octinteger" match="0[0-7]+l?" innerClass="number" />
<region name="rubydoc" start="/^=begin$/m" end="/^=end$/m" delimClass="comment" innerClass="comment">
<contains block="cvstag" />
</region>
<block name="cvstag" match="\$\w+\s*:.+\$" innerClass="inlinedoc" contained="yes">
<onlyin region="comment"/>
<onlyin region="rubydoc"/>
</block>
<region name="comment" innerClass="comment" start="#" end="/$/m" delimClass="comment" >
<contains block="cvstag" />
</region>
<region name="regexp" delimClass="quotes" innerClass="string" start="\s*\/" end="\/[iomx]*"
neverAfter="(?&lt;!\band|\bor|\bwhile|\buntil|\bunless|\bif|\belsif|\bwhen|[~=!|&amp;(,\[])$">
</region>
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="__FILE__" />
<keyword match="require" />
<keyword match="and" />
<keyword match="def" />
<keyword match="end" />
<keyword match="in" />
<keyword match="or" />
<keyword match="self" />
<keyword match="unless" />
<keyword match="__LINE__" />
<keyword match="begin" />
<keyword match="defined?" />
<keyword match="ensure" />
<keyword match="module" />
<keyword match="redo" />
<keyword match="super" />
<keyword match="until" />
<keyword match="BEGIN" />
<keyword match="break" />
<keyword match="do" />
<keyword match="false" />
<keyword match="next" />
<keyword match="rescue" />
<keyword match="then" />
<keyword match="when" />
<keyword match="END" />
<keyword match="case" />
<keyword match="else" />
<keyword match="for" />
<keyword match="nil" />
<keyword match="retry" />
<keyword match="true" />
<keyword match="while" />
<keyword match="alias" />
<keyword match="module_function" />
<keyword match="private" />
<keyword match="public" />
<keyword match="protected" />
<keyword match="attr_reader" />
<keyword match="attr_writer" />
<keyword match="attr_accessor" />
<keyword match="class" />
<keyword match="elsif" />
<keyword match="if" />
<keyword match="not" />
<keyword match="return" />
<keyword match="undef" />
<keyword match="yield" />
</keywords>
</highlight>

View file

@ -0,0 +1,57 @@
.hl-default {
color: Black;
}
.hl-code {
color: Gray;
}
.hl-brackets {
color: Olive;
}
.hl-comment {
color: Orange;
}
.hl-quotes {
color: Darkred;
}
.hl-string {
color: Red;
}
.hl-identifier {
color: Blue;
}
.hl-builtin {
color: Teal;
}
.hl-reserved {
color: Green;
}
.hl-inlinedoc {
color: Blue;
}
.hl-var {
color: Darkblue;
}
.hl-url {
color: Blue;
}
.hl-special {
color: Navy;
}
.hl-number {
color: Maroon;
}
.hl-inlinetags {
color: Blue;
}
.hl-main {
background-color: White;
}
.hl-gutter {
background-color: #999999;
color: White
}
.hl-table {
font-family: courier;
font-size: 12px;
border: solid 1px Lightgrey;
}

View file

@ -0,0 +1,242 @@
<?xml version="1.0"?>
<!-- $Id: sh.xml,v 1.2 2007-06-14 00:15:50 ssttoo Exp $ -->
<highlight lang="sh" case = "yes">
<authors>
<author name="Noah Spurrier" email="noah@noah.org" />
</authors>
<comment>This highlighter is EXPERIMENTAL. It may work incorrectly.
It is a crude hack of the perl syntax, which itself wasn't so good.
But this seems to work OK.
</comment>
<default innerClass="code"/>
<block name="interpreter" match="/^(#!)(.*)/m" innerClass="special">
<partClass index="1" innerClass="special" />
<partClass index="2" innerClass="string" />
</block>
<!--
brackets
-->
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<!--
use smth
-->
<block name="usestatement" match="(use)\s+([\w:]*)" innerClass="special">
<partClass index="1" innerClass="reserved" />
<partClass index="2" innerClass="special" />
</block>
<region name="q-w-q-statement"
start="/\b(q[wq]\s*((\{)|(\()|(\[)|(\&lt;)|([\W\S])))(?=(.*)((?(3)\})(?(4)\))(?(5)\])(?(6)\&gt;)(?(7)\7)))/Us"
end="%b2%"
innerClass="string" delimClass="quotes" remember="yes">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<region name="qstatement"
start="/\b(q\s*((\{)|(\()|(\[)|(\&lt;)|([\W\S])))(?=(.*)((?(3)\})(?(4)\))(?(5)\])(?(6)\&gt;)(?(7)\7)))/Us"
end="%b2%"
innerClass="string" delimClass="quotes" remember="yes">
</region>
<!--
comments
-->
<block name="comment" match="#.*" innerClass="comment" />
<!--
regexpr
FIXME: this should be rewritten
-->
<block name="dblregexprver1" match="/(s|tr) ([|#~`!@$%^&amp;*-+=\\;:'&quot;,.\/?]) ((\\.|[^\\])*?) (\2)((\\.|[^\\])*?)(\2[ecgimosx]*)/x" innerClass="string">
<partClass index="1" innerClass="quotes" />
<partClass index="2" innerClass="quotes" />
<partClass index="3" innerClass="string" />
<partClass index="5" innerClass="quotes" />
<partClass index="6" innerClass="string" />
<partClass index="8" innerClass="quotes" />
</block>
<block name="dblregexprver2" match="/(m) ([|#~`!@$%^&amp;*-+=\\;:'&quot;,.\/?]) ((\\.|[^\\])*?) (\2[ecgimosx]*)/x" innerClass="string">
<partClass index="1" innerClass="quotes" />
<partClass index="2" innerClass="quotes" />
<partClass index="3" innerClass="string" />
<partClass index="5" innerClass="quotes" />
</block>
<region name="regexp" start=" \/" end="\/[cgimosx]*" innerClass="string" delimClass="quotes" case="yes">
<contains block="reescaped"/>
</region>
<block name="reescaped" match="\\\/" innerClass="string" contained="yes">
<onlyin region="regexp"/>
</block>
<!--
variables
FIXME: @{...}
-->
<block name="bracketsvars" match="([a-z1-9_]+)(\s*=>)" innerClass="string" contained="yes" case="no">
<partClass index="1" innerClass="string" />
<partClass index="2" innerClass="code" />
<onlyin region="brackets"/>
</block>
<block name="specialvar" match="\$#?[1-9'`@!]" innerClass="var"/>
<block name="var" match="(\$#?|[@%*])([a-z1-9_]+::)*([a-z1-9_]+|\^(?-i)[A-Z]?(?i))" innerClass="var" case="no"/>
<block name="containedvar" match="\$([a-z1-9_]+|\^(?-i)[A-Z]?(?i))" innerClass="var" case="no"/>
<block name="classvar" match="(\{)([a-z1-9]+)(\})" innerClass="var" case="no">
<partClass index="1" innerClass="brackets" />
<partClass index="2" innerClass="var" />
<partClass index="3" innerClass="brackets" />
</block>
<block name="curlyvar" match="[\$@%]#?\{[a-z1-9]+\}" innerClass="var" case="no"/>
<!--
quotes
-->
<region name="exec" delimClass="quotes" innerClass="string" start="`" end="`">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string" start="'" end="'"/>
<block name="escaped" match="\\\\|\\&quot;|\\'|\\`" innerClass="special" contained="yes">
<onlyin region="qstatement"/>
<onlyin region="strsingle"/>
<onlyin region="exec"/>
</block>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;">
<contains block="containedvar"/>
<contains block="specialvar"/>
<contains block="curlyvar"/>
</region>
<block name="descaped" match="\\[\\&quot;'`tnr\$\{@]" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
<onlyin region="q-w-q-statement"/>
</block>
<!-- logical op.
<block name="logic" match="\|\||&amp;&amp;" innerClass="reserved" contained="yes"/>-->
<!--
identifiers
-->
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<!--
numbers
-->
<block name="number" match="\d*\.?\d+" innerClass="number"/>
<!--
GNU and posix standard shell utilities here.
-->
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="cd"/>
<keyword match="cp"/>
<keyword match="rm"/>
<keyword match="echo"/>
<keyword match="printf"/>
<keyword match="exit"/>
<keyword match="cut"/>
<keyword match="join"/>
<keyword match="comm"/>
<keyword match="fmt"/>
<keyword match="grep"/>
<keyword match="egrep"/>
<keyword match="fgrep"/>
<keyword match="sed"/>
<keyword match="awk"/>
<keyword match="yes"/>
<keyword match="false"/>
<keyword match="true"/>
<keyword match="test"/>
<keyword match="expr"/>
<keyword match="tee"/>
<keyword match="basename"/>
<keyword match="dirname"/>
<keyword match="pathchk"/>
<keyword match="pwd"/>
<keyword match="stty"/>
<keyword match="tty"/>
<keyword match="env"/>
<keyword match="printenv"/>
<keyword match="id"/>
<keyword match="logname"/>
<keyword match="whoami"/>
<keyword match="groups"/>
<keyword match="users"/>
<keyword match="who"/>
<keyword match="date"/>
<keyword match="uname"/>
<keyword match="hostname"/>
<keyword match="chroot"/>
<keyword match="nice"/>
<keyword match="nohup"/>
<keyword match="sleep"/>
<keyword match="factor"/>
<keyword match="seq"/>
<keyword match="getopt"/>
<keyword match="getopts"/>
<keyword match="options"/>
<keyword match="shift"/>
</keywords>
<keywords name="flowcontrol" inherits="identifier" innerClass="reserved" case = "yes">
<keyword match="if"/>
<keyword match="fi"/>
<keyword match="then"/>
<keyword match="else"/>
<keyword match="elif"/>
<keyword match="case"/>
<keyword match="esac"/>
<keyword match="while"/>
<keyword match="done"/>
<keyword match="for"/>
<keyword match="in"/>
<keyword match="function"/>
<keyword match="until"/>
<keyword match="do"/>
<keyword match="select"/>
<keyword match="time"/>
<!--
<keyword match="[["/>
<keyword match="]]"/>
-->
<keyword match="read"/>
<keyword match="set"/>
</keywords>
</highlight>

View file

@ -0,0 +1,496 @@
<?xml version="1.0"?>
<!-- $Id: sql.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="sql" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<comment>Based on SQL-99</comment>
<default innerClass="code" />
<region name="qidentifier" delimClass="quotes" innerClass="identifier"
start="`" end="`" />
<region name="mlcomment" delimClass="comment" innerClass="comment"
start="\/\*" end="\*\/" />
<block name="comment" match="(#|--\s).*" innerClass="comment" />
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" />
<region name="strdouble" delimClass="quotes" innerClass="string"
start="&quot;" end="&quot;" >
</region>
<region name="brackets" delimClass="brackets" innerClass="code"
start="\(" end="\)" >
<contains all="yes"/>
</region>
<region name="strsingle" delimClass="quotes" innerClass="string"
start="'" end="'" />
<block name="escaped" match="\\." innerClass="special" contained="yes">
<onlyin region="strsingle"/>
<onlyin region="strdouble"/>
</block>
<block name="exponent"
match="((\d+|((\d*\.\d+)|(\d+\.\d*)))[eE][+-]?\d+)"
innerClass="number" />
<block name="float" match="(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<block name="integer" match="\d+l?|\b0l?\b" innerClass="number" />
<block name="hexinteger" match="0[xX][\da-f]+l?" innerClass="number" />
<keywords name="reserved" inherits="identifier" innerClass="reserved" case = "no">
<keyword match="ABSOLUTE" />
<keyword match="ACTION" />
<keyword match="ADD" />
<keyword match="ADMIN" />
<keyword match="AFTER" />
<keyword match="AGGREGATE" />
<keyword match="ALIAS" />
<keyword match="ALL" />
<keyword match="ALLOCATE" />
<keyword match="ALTER" />
<keyword match="AND" />
<keyword match="ANY" />
<keyword match="ARE" />
<keyword match="ARRAY" />
<keyword match="AS" />
<keyword match="ASC" />
<keyword match="ASSERTION" />
<keyword match="AT" />
<keyword match="AUTHORIZATION" />
<keyword match="BEFORE" />
<keyword match="BEGIN" />
<keyword match="BINARY" />
<keyword match="BIT" />
<keyword match="BLOB" />
<keyword match="BOOLEAN" />
<keyword match="BOTH" />
<keyword match="BREADTH" />
<keyword match="BY" />
<keyword match="CALL" />
<keyword match="CASCADE" />
<keyword match="CASCADED" />
<keyword match="CASE" />
<keyword match="CAST" />
<keyword match="CATALOG" />
<keyword match="CHAR" />
<keyword match="CHARACTER" />
<keyword match="CHECK" />
<keyword match="CLASS" />
<keyword match="CLOB" />
<keyword match="CLOSE" />
<keyword match="COLLATE" />
<keyword match="COLLATION" />
<keyword match="COLUMN" />
<keyword match="COMMIT" />
<keyword match="COMPLETION" />
<keyword match="CONNECT" />
<keyword match="CONNECTION" />
<keyword match="CONSTRAINT" />
<keyword match="CONSTRAINTS" />
<keyword match="CONSTRUCTOR" />
<keyword match="CONTINUE" />
<keyword match="CORRESPONDING" />
<keyword match="CREATE" />
<keyword match="CROSS" />
<keyword match="CUBE" />
<keyword match="CURRENT" />
<keyword match="CURRENT_DATE" />
<keyword match="CURRENT_PATH" />
<keyword match="CURRENT_ROLE" />
<keyword match="CURRENT_TIME" />
<keyword match="CURRENT_TIMESTAMP" />
<keyword match="CURRENT_USER" />
<keyword match="CURSOR" />
<keyword match="CYCLE" />
<keyword match="DATA" />
<keyword match="DATE" />
<keyword match="DAY" />
<keyword match="DEALLOCATE" />
<keyword match="DEC" />
<keyword match="DECIMAL" />
<keyword match="DECLARE" />
<keyword match="DEFAULT" />
<keyword match="DEFERRABLE" />
<keyword match="DEFERRED" />
<keyword match="DELETE" />
<keyword match="DEPTH" />
<keyword match="DEREF" />
<keyword match="DESC" />
<keyword match="DESCRIBE" />
<keyword match="DESCRIPTOR" />
<keyword match="DESTROY" />
<keyword match="DESTRUCTOR" />
<keyword match="DETERMINISTIC" />
<keyword match="DIAGNOSTICS" />
<keyword match="DICTIONARY" />
<keyword match="DISCONNECT" />
<keyword match="DISTINCT" />
<keyword match="DOMAIN" />
<keyword match="DOUBLE" />
<keyword match="DROP" />
<keyword match="DYNAMIC" />
<keyword match="EACH" />
<keyword match="ELSE" />
<keyword match="END" />
<keyword match="END-EXEC" />
<keyword match="EQUALS" />
<keyword match="ESCAPE" />
<keyword match="EVERY" />
<keyword match="EXCEPT" />
<keyword match="EXCEPTION" />
<keyword match="EXEC" />
<keyword match="EXECUTE" />
<keyword match="EXTERNAL" />
<keyword match="FALSE" />
<keyword match="FETCH" />
<keyword match="FIRST" />
<keyword match="FLOAT" />
<keyword match="FOR" />
<keyword match="FOREIGN" />
<keyword match="FOUND" />
<keyword match="FREE" />
<keyword match="FROM" />
<keyword match="FULL" />
<keyword match="FUNCTION" />
<keyword match="GENERAL" />
<keyword match="GET" />
<keyword match="GLOBAL" />
<keyword match="GO" />
<keyword match="GOTO" />
<keyword match="GRANT" />
<keyword match="GROUP" />
<keyword match="GROUPING" />
<keyword match="HAVING" />
<keyword match="HOST" />
<keyword match="HOUR" />
<keyword match="IDENTITY" />
<keyword match="IGNORE" />
<keyword match="IMMEDIATE" />
<keyword match="IN" />
<keyword match="INDICATOR" />
<keyword match="INITIALIZE" />
<keyword match="INITIALLY" />
<keyword match="INNER" />
<keyword match="INOUT" />
<keyword match="INPUT" />
<keyword match="INSERT" />
<keyword match="INT" />
<keyword match="INTEGER" />
<keyword match="INTERSECT" />
<keyword match="INTERVAL" />
<keyword match="INTO" />
<keyword match="IS" />
<keyword match="ISOLATION" />
<keyword match="ITERATE" />
<keyword match="JOIN" />
<keyword match="KEY" />
<keyword match="LANGUAGE" />
<keyword match="LARGE" />
<keyword match="LAST" />
<keyword match="LATERAL" />
<keyword match="LEADING" />
<keyword match="LEFT" />
<keyword match="LESS" />
<keyword match="LEVEL" />
<keyword match="LIKE" />
<keyword match="LIMIT" />
<keyword match="LOCAL" />
<keyword match="LOCALTIME" />
<keyword match="LOCALTIMESTAMP" />
<keyword match="LOCATOR" />
<keyword match="MAP" />
<keyword match="MATCH" />
<keyword match="MINUTE" />
<keyword match="MODIFIES" />
<keyword match="MODIFY" />
<keyword match="MODULE" />
<keyword match="MONTH" />
<keyword match="NAMES" />
<keyword match="NATIONAL" />
<keyword match="NATURAL" />
<keyword match="NCHAR" />
<keyword match="NCLOB" />
<keyword match="NEW" />
<keyword match="NEXT" />
<keyword match="NO" />
<keyword match="NONE" />
<keyword match="NOT" />
<keyword match="NULL" />
<keyword match="NUMERIC" />
<keyword match="OBJECT" />
<keyword match="OF" />
<keyword match="OFF" />
<keyword match="OLD" />
<keyword match="ON" />
<keyword match="ONLY" />
<keyword match="OPEN" />
<keyword match="OPERATION" />
<keyword match="OPTION" />
<keyword match="OR" />
<keyword match="ORDER" />
<keyword match="ORDINALITY" />
<keyword match="OUT" />
<keyword match="OUTER" />
<keyword match="OUTPUT" />
<keyword match="PAD" />
<keyword match="PARAMETER" />
<keyword match="PARAMETERS" />
<keyword match="PARTIAL" />
<keyword match="PATH" />
<keyword match="POSTFIX" />
<keyword match="PRECISION" />
<keyword match="PREFIX" />
<keyword match="PREORDER" />
<keyword match="PREPARE" />
<keyword match="PRESERVE" />
<keyword match="PRIMARY" />
<keyword match="PRIOR" />
<keyword match="PRIVILEGES" />
<keyword match="PROCEDURE" />
<keyword match="PUBLIC" />
<keyword match="READ" />
<keyword match="READS" />
<keyword match="REAL" />
<keyword match="RECURSIVE" />
<keyword match="REF" />
<keyword match="REFERENCES" />
<keyword match="REFERENCING" />
<keyword match="RELATIVE" />
<keyword match="RESTRICT" />
<keyword match="RESULT" />
<keyword match="RETURN" />
<keyword match="RETURNS" />
<keyword match="REVOKE" />
<keyword match="RIGHT" />
<keyword match="ROLE" />
<keyword match="ROLLBACK" />
<keyword match="ROLLUP" />
<keyword match="ROUTINE" />
<keyword match="ROW" />
<keyword match="ROWS" />
<keyword match="SAVEPOINT" />
<keyword match="SCHEMA" />
<keyword match="SCOPE" />
<keyword match="SCROLL" />
<keyword match="SEARCH" />
<keyword match="SECOND" />
<keyword match="SECTION" />
<keyword match="SELECT" />
<keyword match="SEQUENCE" />
<keyword match="SESSION" />
<keyword match="SESSION_USER" />
<keyword match="SET" />
<keyword match="SETS" />
<keyword match="SIZE" />
<keyword match="SMALLINT" />
<keyword match="SOME" />
<keyword match="SPACE" />
<keyword match="SPECIFIC" />
<keyword match="SPECIFICTYPE" />
<keyword match="SQL" />
<keyword match="SQLEXCEPTION" />
<keyword match="SQLSTATE" />
<keyword match="SQLWARNING" />
<keyword match="START" />
<keyword match="STATE" />
<keyword match="STATEMENT" />
<keyword match="STATIC" />
<keyword match="STRUCTURE" />
<keyword match="SYSTEM_USER" />
<keyword match="TABLE" />
<keyword match="TEMPORARY" />
<keyword match="TERMINATE" />
<keyword match="THAN" />
<keyword match="THEN" />
<keyword match="TIME" />
<keyword match="TIMESTAMP" />
<keyword match="TIMEZONE_HOUR" />
<keyword match="TIMEZONE_MINUTE" />
<keyword match="TO" />
<keyword match="TRAILING" />
<keyword match="TRANSACTION" />
<keyword match="TRANSLATION" />
<keyword match="TREAT" />
<keyword match="TRIGGER" />
<keyword match="TRUE" />
<keyword match="UNDER" />
<keyword match="UNION" />
<keyword match="UNIQUE" />
<keyword match="UNKNOWN" />
<keyword match="UNNEST" />
<keyword match="UPDATE" />
<keyword match="USAGE" />
<keyword match="USER" />
<keyword match="USING" />
<keyword match="VALUE" />
<keyword match="VALUES" />
<keyword match="VARCHAR" />
<keyword match="VARIABLE" />
<keyword match="VARYING" />
<keyword match="VIEW" />
<keyword match="WHEN" />
<keyword match="WHENEVER" />
<keyword match="WHERE" />
<keyword match="WITH" />
<keyword match="WITHOUT" />
<keyword match="WORK" />
<keyword match="WRITE" />
<keyword match="YEAR" />
<keyword match="ZONE" />
</keywords>
<keywords name="keyword" inherits="identifier" innerClass="var" case = "no">
<keyword match="ABS" />
<keyword match="ADA" />
<keyword match="ASENSITIVE" />
<keyword match="ASSIGNMENT" />
<keyword match="ASYMMETRIC" />
<keyword match="ATOMIC" />
<keyword match="AVG" />
<keyword match="BETWEEN" />
<keyword match="BITVAR" />
<keyword match="BIT_LENGTH" />
<keyword match="C" />
<keyword match="CALLED" />
<keyword match="CARDINALITY" />
<keyword match="CATALOG_NAME" />
<keyword match="CHAIN" />
<keyword match="CHARACTER_LENGTH" />
<keyword match="CHARACTER_SET_CATALOG" />
<keyword match="CHARACTER_SET_NAME" />
<keyword match="CHARACTER_SET_SCHEMA" />
<keyword match="CHAR_LENGTH" />
<keyword match="CHECKED" />
<keyword match="CLASS_ORIGIN" />
<keyword match="COALESCE" />
<keyword match="COBOL" />
<keyword match="COLLATION_CATALOG" />
<keyword match="COLLATION_NAME" />
<keyword match="COLLATION_SCHEMA" />
<keyword match="COLUMN_NAME" />
<keyword match="COMMAND_FUNCTION" />
<keyword match="COMMAND_FUNCTION_CODE" />
<keyword match="COMMITTED" />
<keyword match="CONDITION_NUMBER" />
<keyword match="CONNECTION_NAME" />
<keyword match="CONSTRAINT_CATALOG" />
<keyword match="CONSTRAINT_NAME" />
<keyword match="CONSTRAINT_SCHEMA" />
<keyword match="CONTAINS" />
<keyword match="CONVERT" />
<keyword match="COUNT" />
<keyword match="CURSOR_NAME" />
<keyword match="DATETIME_INTERVAL_CODE" />
<keyword match="DATETIME_INTERVAL_PRECISION" />
<keyword match="DEFINED" />
<keyword match="DEFINER" />
<keyword match="DISPATCH" />
<keyword match="DYNAMIC_FUNCTION" />
<keyword match="DYNAMIC_FUNCTION_CODE" />
<keyword match="EXISTING" />
<keyword match="EXISTS" />
<keyword match="EXTRACT" />
<keyword match="FINAL" />
<keyword match="FORTRAN" />
<keyword match="G" />
<keyword match="GENERATED" />
<keyword match="GRANTED" />
<keyword match="HIERARCHY" />
<keyword match="HOLD" />
<keyword match="IMPLEMENTATION" />
<keyword match="INFIX" />
<keyword match="INSENSITIVE" />
<keyword match="INSTANCE" />
<keyword match="INSTANTIABLE" />
<keyword match="INVOKER" />
<keyword match="K" />
<keyword match="KEY_MEMBER" />
<keyword match="KEY_TYPE" />
<keyword match="LENGTH" />
<keyword match="LOWER" />
<keyword match="M" />
<keyword match="MAX" />
<keyword match="MESSAGE_LENGTH" />
<keyword match="MESSAGE_OCTET_LENGTH" />
<keyword match="MESSAGE_TEXT" />
<keyword match="METHOD" />
<keyword match="MIN" />
<keyword match="MOD" />
<keyword match="MORE" />
<keyword match="MUMPS" />
<keyword match="NAME" />
<keyword match="NULLABLE" />
<keyword match="NULLIF" />
<keyword match="NUMBER" />
<keyword match="OCTET_LENGTH" />
<keyword match="OPTIONS" />
<keyword match="OVERLAPS" />
<keyword match="OVERLAY" />
<keyword match="OVERRIDING" />
<keyword match="PARAMETER_MODE" />
<keyword match="PARAMETER_NAME" />
<keyword match="PARAMETER_ORDINAL_POSITION" />
<keyword match="PARAMETER_SPECIFIC_CATALOG" />
<keyword match="PARAMETER_SPECIFIC_NAME" />
<keyword match="PARAMETER_SPECIFIC_SCHEMA" />
<keyword match="PASCAL" />
<keyword match="PLI" />
<keyword match="POSITION" />
<keyword match="REPEATABLE" />
<keyword match="RETURNED_LENGTH" />
<keyword match="RETURNED_OCTET_LENGTH" />
<keyword match="RETURNED_SQLSTATE" />
<keyword match="ROUTINE_CATALOG" />
<keyword match="ROUTINE_NAME" />
<keyword match="ROUTINE_SCHEMA" />
<keyword match="ROW_COUNT" />
<keyword match="SCALE" />
<keyword match="SCHEMA_NAME" />
<keyword match="SECURITY" />
<keyword match="SELF" />
<keyword match="SENSITIVE" />
<keyword match="SERIALIZABLE" />
<keyword match="SERVER_NAME" />
<keyword match="SIMILAR" />
<keyword match="SIMPLE" />
<keyword match="SOURCE" />
<keyword match="SPECIFIC_NAME" />
<keyword match="STYLE" />
<keyword match="SUBCLASS_ORIGIN" />
<keyword match="SUBLIST" />
<keyword match="SUBSTRING" />
<keyword match="SUM" />
<keyword match="SYMMETRIC" />
<keyword match="SYSTEM" />
<keyword match="TABLE_NAME" />
<keyword match="TRANSACTIONS_COMMITTED" />
<keyword match="TRANSACTIONS_ROLLED_BACK" />
<keyword match="TRANSACTION_ACTIVE" />
<keyword match="TRANSFORM" />
<keyword match="TRANSFORMS" />
<keyword match="TRANSLATE" />
<keyword match="TRIGGER_CATALOG" />
<keyword match="TRIGGER_NAME" />
<keyword match="TRIGGER_SCHEMA" />
<keyword match="TRIM" />
<keyword match="TYPE" />
<keyword match="UNCOMMITTED" />
<keyword match="UNNAMED" />
<keyword match="UPPER" />
<keyword match="USER_DEFINED_TYPE_CATALOG" />
<keyword match="USER_DEFINED_TYPE_NAME" />
<keyword match="USER_DEFINED_TYPE_SCHEMA" />
</keywords>
</highlight>

View file

@ -0,0 +1,305 @@
<?xml version="1.0"?>
<!-- $Id: vbscript.xml,v 1.2 2008-01-02 00:05:52 ssttoo Exp $ -->
<highlight lang="vbscript" case="no">
<authors>
<author name="Daniel Fruzynski" email="daniel-AT-poradnik-webmastera.com" />
</authors>
<default innerClass="code" />
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;"/>
<region name="comment" start="'|[Rr][Ee][Mm]\b" end="/$/m" innerClass="comment">
<contains block="cvstag"/>
</region>
<block name="number" match="\d*\.?\d+" innerClass="number"/>
<block name="hexnumber" match="&amp;H[0-9a-fA-F]+" innerClass="number"/>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<block name="url" match="((https?|ftp):\/\/[\w\?\.\-\&amp;=\/%+]+)|(^|[\s,!?])www\.\w+\.\w+[\w\?\.\&amp;=\/%+]*" innerClass="url" contained="yes">
<onlyin region="comment"/>
</block>
<block name="email" match="\w+[\.\w\-]+@(\w+[\.\w\-])+" innerClass="url" contained="yes">
<onlyin region="comment"/>
</block>
<block name="note" match="\b(note|fixme):" innerClass="inlinedoc" contained="yes" case="no">
<onlyin region="comment"/>
</block>
<block name="cvstag" match="\$\w+:.+\$" innerClass="inlinedoc" contained="yes">
<onlyin region="comment"/>
</block>
<keywords name="constants" inherits="identifier" innerClass="builtin" case="no">
<!-- Color Constants -->
<keyword match="vbBlack" />
<keyword match="vbRed" />
<keyword match="vbGreen" />
<keyword match="vbYellow" />
<keyword match="vbBlue" />
<keyword match="vbMagenta" />
<keyword match="vbCyan" />
<keyword match="vbWhite" />
<!-- Comparison Constants -->
<keyword match="vbBinaryCompare" />
<keyword match="vbTextCompare" />
<!-- Date and Time Constants -->
<keyword match="vbSunday" />
<keyword match="vbMonday" />
<keyword match="vbTuesday" />
<keyword match="vbWednesday" />
<keyword match="vbThursday" />
<keyword match="vbFriday" />
<keyword match="vbSaturday" />
<keyword match="vbUseSystemDayOfWeek" />
<keyword match="vbFirstJan1" />
<keyword match="vbFirstFourDays" />
<keyword match="vbFirstFullWeek" />
<!-- Date Format Constants -->
<keyword match="vbGeneralDate" />
<keyword match="vbLongDate" />
<keyword match="vbShortDate" />
<keyword match="vbLongTime" />
<keyword match="vbShortTime" />
<!-- Miscellaneous Constants -->
<keyword match="vbObjectError" />
<!-- MsgBox Constants -->
<keyword match="vbOKOnly" />
<keyword match="vbOKCancel" />
<keyword match="vbAbortRetryIgnore" />
<keyword match="vbYesNoCancel" />
<keyword match="vbYesNo" />
<keyword match="vbRetryCancel" />
<keyword match="vbCritical" />
<keyword match="vbQuestion" />
<keyword match="vbExclamation" />
<keyword match="vbInformation" />
<keyword match="vbDefaultButton1" />
<keyword match="vbDefaultButton2" />
<keyword match="vbDefaultButton3" />
<keyword match="vbDefaultButton4" />
<keyword match="vbApplicationModal" />
<keyword match="vbSystemModal" />
<keyword match="vbOK" />
<keyword match="vbCancel" />
<keyword match="vbAbort" />
<keyword match="vbRetry" />
<keyword match="vbIgnore" />
<keyword match="vbYes" />
<keyword match="vbNo" />
<!-- String Constants -->
<keyword match="vbCr" />
<keyword match="VbCrLf" />
<keyword match="vbFormFeed" />
<keyword match="vbLf" />
<keyword match="vbNewLine" />
<keyword match="vbNullChar" />
<keyword match="vbNullString" />
<keyword match="vbTab" />
<keyword match="vbVerticalTab" />
<!-- Tristate Constants -->
<keyword match="vbUseDefault" />
<keyword match="vbTrue" />
<keyword match="vbFalse" />
<!-- VarType Constants -->
<keyword match="vbEmpty" />
<keyword match="vbNull" />
<keyword match="vbInteger" />
<keyword match="vbLong" />
<keyword match="vbSingle" />
<keyword match="vbDouble" />
<keyword match="vbCurrency" />
<keyword match="vbDate" />
<keyword match="vbString" />
<keyword match="vbObject" />
<keyword match="vbError" />
<keyword match="vbBoolean" />
<keyword match="vbVariant" />
<keyword match="vbDataObject" />
<keyword match="vbDecimal" />
<keyword match="vbByte" />
<keyword match="vbArray" />
</keywords>
<keywords name="functions" inherits="identifier" innerClass="builtin" case="no">
<keyword match="Abs" />
<keyword match="Array" />
<keyword match="Asc" />
<keyword match="Atn" />
<keyword match="CBool" />
<keyword match="CByte" />
<keyword match="CCur" />
<keyword match="CDate" />
<keyword match="CDbl" />
<keyword match="Chr" />
<keyword match="CInt" />
<keyword match="CLng" />
<keyword match="Cos" />
<keyword match="CreateObject" />
<keyword match="CSng" />
<keyword match="CStr" />
<keyword match="Date" />
<keyword match="DateAdd" />
<keyword match="DateDiff" />
<keyword match="DatePart" />
<keyword match="DateSerial" />
<keyword match="DateValue" />
<keyword match="Day" />
<keyword match="Escape" />
<keyword match="Eval" />
<keyword match="Exp" />
<keyword match="Filter" />
<keyword match="FormatCurrency" />
<keyword match="FormatDateTime" />
<keyword match="FormatNumber" />
<keyword match="FormatPercent" />
<keyword match="GetLocale" />
<keyword match="GetObject" />
<keyword match="GetRef" />
<keyword match="Hex" />
<keyword match="Hour" />
<keyword match="InputBox" />
<keyword match="InStr" />
<keyword match="InStrRev" />
<keyword match="Int" />
<keyword match="Fix" />
<keyword match="IsArray" />
<keyword match="IsDate" />
<keyword match="IsEmpty" />
<keyword match="IsNull" />
<keyword match="IsNumeric" />
<keyword match="IsObject" />
<keyword match="Join" />
<keyword match="LBound" />
<keyword match="LCase" />
<keyword match="Left" />
<keyword match="Len" />
<keyword match="LoadPicture" />
<keyword match="Log" />
<keyword match="LTrim" />
<keyword match="RTrim" />
<keyword match="Trim" />
<keyword match="Mid" />
<keyword match="Minute" />
<keyword match="Month" />
<keyword match="MonthName" />
<keyword match="MsgBox" />
<keyword match="Now" />
<keyword match="Oct" />
<keyword match="Replace" />
<keyword match="RGB" />
<keyword match="Right" />
<keyword match="Rnd" />
<keyword match="Round" />
<keyword match="ScriptEngine" />
<keyword match="ScriptEngineBuildVersion" />
<keyword match="ScriptEngineMajorVersion" />
<keyword match="ScriptEngineMinorVersion" />
<keyword match="Second" />
<keyword match="SetLocale" />
<keyword match="Sgn" />
<keyword match="Sin" />
<keyword match="Space" />
<keyword match="Split" />
<keyword match="Sqr" />
<keyword match="StrComp" />
<keyword match="String" />
<keyword match="StrReverse" />
<keyword match="Tan" />
<keyword match="Time" />
<keyword match="Timer" />
<keyword match="TimeSerial" />
<keyword match="TimeValue" />
<keyword match="TypeName" />
<keyword match="UBound" />
<keyword match="UCase" />
<keyword match="Unescape" />
<keyword match="VarType" />
<keyword match="Weekday" />
<keyword match="WeekdayName" />
<keyword match="Year" />
</keywords>
<keywords name="builtin" inherits="identifier" innerClass="builtin" case="no">
<!--<keyword match="Class" />-->
<keyword match="Debug" />
<keyword match="Err" />
<keyword match="Match" />
<keyword match="RegExp" />
</keywords>
<keywords name="reserved" inherits="identifier" innerClass="reserved" case="no">
<keyword match="Empty" />
<keyword match="False" />
<keyword match="Nothing" />
<keyword match="Null" />
<keyword match="True" />
<keyword match="And" />
<keyword match="Eqv" />
<keyword match="Imp" />
<keyword match="Is" />
<keyword match="Mod" />
<keyword match="Not" />
<keyword match="Or" />
<keyword match="Xor" />
<keyword match="Call" />
<keyword match="Class" />
<keyword match="End" />
<keyword match="Const" />
<keyword match="Public" />
<keyword match="Private" />
<keyword match="Dim" />
<keyword match="Do" />
<keyword match="While" />
<keyword match="Until" />
<keyword match="Exit" />
<keyword match="Loop" />
<keyword match="Erase" />
<keyword match="Execute" />
<keyword match="ExecuteGlobal" />
<keyword match="For" />
<keyword match="Each" />
<keyword match="In" />
<keyword match="To" />
<keyword match="Step" />
<keyword match="Next" />
<keyword match="Function" />
<keyword match="Default" />
<keyword match="If" />
<keyword match="Then" />
<keyword match="Else" />
<keyword match="ElseIf" />
<keyword match="On" />
<keyword match="Error" />
<keyword match="Resume" />
<keyword match="Goto" />
<keyword match="Option" />
<keyword match="Explicit" />
<keyword match="Property" />
<keyword match="Get" />
<keyword match="Let" />
<keyword match="Set" />
<keyword match="Randomize" />
<keyword match="ReDim" />
<keyword match="Preserve" />
<keyword match="Select" />
<keyword match="Case" />
<keyword match="Stop" />
<keyword match="Sub" />
<keyword match="Wend" />
<keyword match="With" />
</keywords>
</highlight>

View file

@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!-- $Id: xml.xml,v 1.1 2007-06-03 02:35:28 ssttoo Exp $ -->
<highlight lang="xml" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<default innerClass="code" />
<region name="cdata" delimClass="comment" innerClass="comment"
start="\&lt;\!\[CDATA\[" end="\]\]\&gt;">
</region>
<region name="comment" delimClass="comment" innerClass="comment"
start="\&lt;!--" end="--\&gt;">
</region>
<region name="tag" delimClass="brackets" innerClass="code" start="\&lt;[\?\/]?" end="[\/\?]?\&gt;">
<contains block="tagname"/>
<contains region="param"/>
<contains block="paramname"/>
</region>
<block name="tagname" match="(?&lt;=[\&lt;\/?])[\w\-\:]+" innerClass="reserved" contained="yes"/>
<block name="paramname" match="[\w\-\:]+" innerClass="var" contained="yes"/>
<block name="entity" match="(&amp;|%)[\w\-\.]+;" innerClass="special" />
<region name="param" start="&quot;" end="&quot;" delimClass="quotes" innerClass="string" contained="yes">
<contains block="entity"/>
</region>
</highlight>

View file

@ -0,0 +1,316 @@
<?xml version="1.0"?>
<!-- $Id: avrc.xml,v 1.1 2008-07-31 23:05:38 ssttoo Exp $ -->
<highlight lang="AVRC" case="no">
<authors>
<author name="Andrey Demenev" email="demenev@gmail.com"/>
</authors>
<comment>
C/C++ highlighter specific to Atmel AVR microcontrollers
</comment>
<default innerClass="code" />
<block name="escaped" match="\\" innerClass="special" contained="yes">
<onlyin region="strdouble"/>
</block>
<region name="strdouble" delimClass="quotes" innerClass="string" start="&quot;" end="&quot;"/>
<region name="block" delimClass="brackets" innerClass="code" start="\{" end="\}">
<contains all="yes"/>
</region>
<region name="brackets" delimClass="brackets" innerClass="code" start="\(" end="\)">
<contains all="yes"/>
</region>
<region name="sqbrackets" delimClass="brackets" innerClass="code" start="\[" end="\]">
<contains all="yes"/>
</region>
<block name="identifier" match="[a-z_]\w*" innerClass="identifier" case="no"/>
<block name="hexinteger" match="\b0[xX][\da-f]+" innerClass="number"/>
<block name="integer" match="\b\d\d*|\b0\b" innerClass="number"/>
<block name="octinteger" match="\b0[0-7]+" innerClass="number"/>
<block name="float" match="\b(\d*\.\d+)|(\d+\.\d*)" innerClass="number"/>
<region name="strincl" delimClass="quotes" innerClass="string" start="&lt;" end="&gt;">
<onlyin region="include" />
</region>
<!-- <block name="preprocessor" match="^#[azAZ_]\w*" innerClass="prepro"/> -->
<region name="include" innerClass="prepro" start="/^[ \t]*#include/m" end="/(?&lt;!\\)$/m">
<contains region="strdouble"/>
<contains region="strincl"/>
</region>
<region name="preprocessor" delimClass="prepro" innerClass="code" start="/^[ \t]*#[ \t]*[a-z]+/mi" end="/(?&lt;!\\)$/m">
<contains region="comment"/>
<contains region="mlcomment"/>
<contains region="strdouble"/>
<contains region="brackets"/>
<contains region="block"/>
<contains block="identifier"/>
<contains block="integer"/>
<contains block="hexinteger"/>
<contains block="octinteger"/>
<contains block="float"/>
</region>
<block name="number" match="\d*\.?\d+" innerClass="number"/>
<region name="mlcomment" innerClass="mlcomment" start="\/\*" end="\*\/" >
<contains block="cvstag"/>
</region>
<block name="cvstag" match="\$\w+\s*:.+\$" innerClass="inlinedoc">
<onlyin region="mlcomment"/>
<onlyin region="comment"/>
</block>
<region name="comment" start="\/\/.+" end="/$/m" innerClass="comment" delimClass="comment">
<contains block="cvstag"/>
</region>
<keywords name="reserved" inherits="identifier" innerClass="reserved" case="yes">
<keyword match="and" />
<keyword match="and_eq" />
<keyword match="asm" />
<keyword match="bitand" />
<keyword match="bitor" />
<keyword match="break" />
<keyword match="case" />
<keyword match="catch" />
<keyword match="compl" />
<keyword match="const_cast" />
<keyword match="continue" />
<keyword match="default" />
<keyword match="delete" />
<keyword match="do" />
<keyword match="dynamic_cast" />
<keyword match="else" />
<keyword match="for" />
<keyword match="fortran" />
<keyword match="friend" />
<keyword match="goto" />
<keyword match="if" />
<keyword match="new" />
<keyword match="not" />
<keyword match="not_eq" />
<keyword match="operator" />
<keyword match="or" />
<keyword match="or_eq" />
<keyword match="private" />
<keyword match="protected" />
<keyword match="public" />
<keyword match="reinterpret_cast" />
<keyword match="return" />
<keyword match="sizeof" />
<keyword match="static_cast" />
<keyword match="switch" />
<keyword match="this" />
<keyword match="throw" />
<keyword match="try" />
<keyword match="typeid" />
<keyword match="using" />
<keyword match="while" />
<keyword match="xor" />
<keyword match="xor_eq" />
<keyword match="false" />
<keyword match="true" />
</keywords>
<keywords name="registers" inherits="identifier" innerClass="reserved" case="yes">
<keyword match="ACSR" />
<keyword match="ADCH" />
<keyword match="ADCL" />
<keyword match="ADCSRA" />
<keyword match="ADMUX" />
<keyword match="ASSR" />
<keyword match="DDRA" />
<keyword match="DDRB" />
<keyword match="DDRC" />
<keyword match="DDRD" />
<keyword match="DDRE" />
<keyword match="DDRF" />
<keyword match="DDRG" />
<keyword match="EEARH" />
<keyword match="EEARL" />
<keyword match="EECR" />
<keyword match="EEDR" />
<keyword match="EICRA" />
<keyword match="EICRB" />
<keyword match="EIFR" />
<keyword match="EIMSK" />
<keyword match="ETIFR" />
<keyword match="ETIMSK" />
<keyword match="GICR" />
<keyword match="GIFR" />
<keyword match="ICR1H" />
<keyword match="ICR1L" />
<keyword match="ICR3H" />
<keyword match="ICR3L" />
<keyword match="MCUCR" />
<keyword match="MCUCSR" />
<keyword match="OCDR" />
<keyword match="OCR0" />
<keyword match="OCR1AH" />
<keyword match="OCR1AL" />
<keyword match="OCR1BH" />
<keyword match="OCR1BL" />
<keyword match="OCR1CH" />
<keyword match="OCR1CL" />
<keyword match="OCR2" />
<keyword match="OCR3AH" />
<keyword match="OCR3AL" />
<keyword match="OCR3BH" />
<keyword match="OCR3BL" />
<keyword match="OCR3CH" />
<keyword match="OCR3CL" />
<keyword match="OSCCAL" />
<keyword match="PINA" />
<keyword match="PINB" />
<keyword match="PINC" />
<keyword match="PIND" />
<keyword match="PINE" />
<keyword match="PINF" />
<keyword match="PING" />
<keyword match="PORTA" />
<keyword match="PORTB" />
<keyword match="PORTC" />
<keyword match="PORTD" />
<keyword match="PORTE" />
<keyword match="PORTF" />
<keyword match="PORTG" />
<keyword match="RAMPZ" />
<keyword match="SFIOR" />
<keyword match="SPCR" />
<keyword match="SPDR" />
<keyword match="SPH" />
<keyword match="SPL" />
<keyword match="SPMCR" />
<keyword match="SPMCSR" />
<keyword match="SPSR" />
<keyword match="SREG" />
<keyword match="TCCR0" />
<keyword match="TCCR1A" />
<keyword match="TCCR1B" />
<keyword match="TCCR1C" />
<keyword match="TCCR2" />
<keyword match="TCCR3A" />
<keyword match="TCCR3B" />
<keyword match="TCCR3C" />
<keyword match="TCNT0" />
<keyword match="TCNT1H" />
<keyword match="TCNT1L" />
<keyword match="TCNT2" />
<keyword match="TCNT3H" />
<keyword match="TCNT3L" />
<keyword match="TIFR" />
<keyword match="TIMSK" />
<keyword match="TWAR" />
<keyword match="TWBR" />
<keyword match="TWCR" />
<keyword match="TWDR" />
<keyword match="TWSR" />
<keyword match="UBRR0H" />
<keyword match="UBRR0L" />
<keyword match="UBRR1H" />
<keyword match="UBRR1L" />
<keyword match="UBRRH" />
<keyword match="UBRRL" />
<keyword match="UCSR0A" />
<keyword match="UCSR0B" />
<keyword match="UCSR0C" />
<keyword match="UCSR1A" />
<keyword match="UCSR1B" />
<keyword match="UCSR1C" />
<keyword match="UCSRA" />
<keyword match="UCSRB" />
<keyword match="UCSRC" />
<keyword match="UDR" />
<keyword match="UDR0" />
<keyword match="UDR1" />
<keyword match="WDTCR" />
<keyword match="XDIV" />
<keyword match="XMCRA" />
<keyword match="XMCRB" />
</keywords>
<keywords name="types" inherits="identifier" innerClass="types" case="yes">
<keyword match="auto" />
<keyword match="bool" />
<keyword match="char" />
<keyword match="class" />
<keyword match="const" />
<keyword match="double" />
<keyword match="enum" />
<keyword match="explicit" />
<keyword match="export" />
<keyword match="extern" />
<keyword match="float" />
<keyword match="inline" />
<keyword match="int" />
<keyword match="long" />
<keyword match="mutable" />
<keyword match="namespace" />
<keyword match="register" />
<keyword match="short" />
<keyword match="signed" />
<keyword match="static" />
<keyword match="struct" />
<keyword match="template" />
<keyword match="typedef" />
<keyword match="typename" />
<keyword match="union" />
<keyword match="unsigned" />
<keyword match="virtual" />
<keyword match="void" />
<keyword match="volatile" />
<keyword match="wchar_t" />
</keywords>
<keywords name="Common Macros" inherits="identifier" innerClass="prepro" case="yes">
<keyword match="NULL" />
<keyword match="TRUE" />
<keyword match="FALSE" />
<keyword match="MAX" />
<keyword match="MIN" />
<keyword match="__LINE__" />
<keyword match="__DATA__" />
<keyword match="__FILE__" />
<keyword match="__TIME__" />
<keyword match="__STDC__" />
</keywords>
<!--
<keywords name="reserved" inherits="identifier" innerClass="reserved" case="yes">
-->
</highlight>

View file

@ -0,0 +1,4 @@
#!/bin/sh
/usr/local/bin/php package.php make
/usr/local/bin/pear package