From: <mi...@us...> - 2008-07-20 13:53:03
|
Revision: 1493 http://geshi.svn.sourceforge.net/geshi/?rev=1493&view=rev Author: milianw Date: 2008-07-20 13:53:03 +0000 (Sun, 20 Jul 2008) Log Message: ----------- chg: remove format_header/footer_content methods Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-19 22:04:30 UTC (rev 1492) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-20 13:53:03 UTC (rev 1493) @@ -75,6 +75,8 @@ - Make sure strict_mode is set properly when doing repeated set_language calls (milian) - Fixed some incorrectly highlighted things with the CSS language file (milian, BenBE) - Fixed broken use with Suhosin Patch when /e modifier was disabled (SF#2021800, BenBE) + - Removed format_header/footer_content methods. They were private and both used only in the header/footer + methods, thus don't need to be methods at all! (milian) - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-19 22:04:30 UTC (rev 1492) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-20 13:53:03 UTC (rev 1493) @@ -3399,8 +3399,21 @@ } // Get the header HTML - $header = $this->format_header_content(); + $header = $this->header_content; + if ($header) { + if ($this->header_type == GESHI_HEADER_PRE || $this->header_type == GESHI_HEADER_PRE_VALID) { + $header = str_replace("\n", '', $header); + } + $header = $this->replace_keywords($header); + if ($this->use_classes) { + $attr = ' class="head"'; + } else { + $attr = " style=\"{$this->header_content_style}\""; + } + $header = "<div$attr>$header</div>"; + } + if (GESHI_HEADER_NONE == $this->header_type) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "$header<ol$ol_attributes>"; @@ -3428,85 +3441,49 @@ } /** - * Returns the header content, formatted for output + * Returns the footer for the code block. * - * @return string The header content, formatted for output - * @since 1.0.2 + * @return string The footer for the code block + * @since 1.0.0 * @access private */ - function format_header_content() { - $header = $this->header_content; - if ($header) { - if ($this->header_type == GESHI_HEADER_PRE || $this->header_type == GESHI_HEADER_PRE_VALID) { - $header = str_replace("\n", '', $header); + function footer() { + $footer = $this->footer_content; + if ($footer) { + if ($this->header_type == GESHI_HEADER_PRE) { + $footer = str_replace("\n", '', $footer);; } - $header = $this->replace_keywords($header); + $footer = $this->replace_keywords($footer); if ($this->use_classes) { - $attr = ' class="head"'; + $attr = ' class="foot"'; } else { - $attr = " style=\"{$this->header_content_style}\""; + $attr = " style=\"{$this->footer_content_style}\""; } - return "<div$attr>$header</div>"; + $footer = "<div$attr>$footer</div>"; } - } - /** - * Returns the footer for the code block. - * - * @return string The footer for the code block - * @since 1.0.0 - * @access private - */ - function footer() { - $footer_content = $this->format_footer_content(); - if (GESHI_HEADER_NONE == $this->header_type) { - return ($this->line_numbers != GESHI_NO_LINE_NUMBERS) ? '</ol>' . $footer_content - : $footer_content; + return ($this->line_numbers != GESHI_NO_LINE_NUMBERS) ? '</ol>' . $footer : $footer; } if ($this->header_type == GESHI_HEADER_DIV || $this->header_type == GESHI_HEADER_PRE_VALID) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</ol>$footer_content</div>"; + return "</ol>$footer</div>"; } return ($this->force_code_block ? '</div>' : '') . - "$footer_content</div>"; + "$footer</div>"; } else { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</ol>$footer_content</pre>"; + return "</ol>$footer</pre>"; } return ($this->force_code_block ? '</div>' : '') . - "$footer_content</pre>"; + "$footer</pre>"; } } /** - * Returns the footer content, formatted for output - * - * @return string The footer content, formatted for output - * @since 1.0.2 - * @access private - */ - function format_footer_content() { - $footer = $this->footer_content; - if ($footer) { - if ($this->header_type == GESHI_HEADER_PRE) { - $footer = str_replace("\n", '', $footer);; - } - $footer = $this->replace_keywords($footer); - - if ($this->use_classes) { - $attr = ' class="foot"'; - } else { - $attr = " style=\"{$this->footer_content_style}\""; - } - return "<div$attr>$footer</div>"; - } - } - - /** * Replaces certain keywords in the header and footer with * certain configuration values * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-20 14:00:00
|
Revision: 1494 http://geshi.svn.sourceforge.net/geshi/?rev=1494&view=rev Author: milianw Date: 2008-07-20 13:59:21 +0000 (Sun, 20 Jul 2008) Log Message: ----------- chg: also remove get_attributes Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-20 13:53:03 UTC (rev 1493) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-20 13:59:21 UTC (rev 1494) @@ -75,8 +75,10 @@ - Make sure strict_mode is set properly when doing repeated set_language calls (milian) - Fixed some incorrectly highlighted things with the CSS language file (milian, BenBE) - Fixed broken use with Suhosin Patch when /e modifier was disabled (SF#2021800, BenBE) - - Removed format_header/footer_content methods. They were private and both used only in the header/footer - methods, thus don't need to be methods at all! (milian) + - Removed some private methods which were only called at exactly one place (milian) + * format_header_content + * format_footer_content + * get_attributes - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-20 13:53:03 UTC (rev 1493) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-20 13:59:21 UTC (rev 1494) @@ -3390,8 +3390,22 @@ */ function header() { // Get attributes needed - $attributes = $this->get_attributes(); + /** + * @todo Document behaviour change - class is outputted regardless of whether + * we're using classes or not. Same with style + */ + $attributes = ''; + if ($this->overall_class != '') { + $attributes .= " class=\"{$this->overall_class}\""; + } + if ($this->overall_id != '') { + $attributes .= " id=\"{$this->overall_id}\""; + } + if ($this->overall_style != '') { + $attributes .= ' style="' . $this->overall_style . '"'; + } + $ol_attributes = ''; if ($this->line_numbers_start != 1) { @@ -3525,30 +3539,6 @@ } /** - * Gets the CSS attributes for this code - * - * @return The CSS attributes for this code - * @since 1.0.0 - * @access private - * @todo Document behaviour change - class is outputted regardless of whether we're using classes or not. - * Same with style - */ - function get_attributes() { - $attributes = ''; - - if ($this->overall_class != '') { - $attributes .= " class=\"{$this->overall_class}\""; - } - if ($this->overall_id != '') { - $attributes .= " id=\"{$this->overall_id}\""; - } - if ($this->overall_style != '') { - $attributes .= ' style="' . $this->overall_style . '"'; - } - return $attributes; - } - - /** * Secure replacement for PHP built-in function htmlspecialchars(). * * See ticket #427 (http://wush.net/trac/wikka/ticket/427) for the rationale This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-20 18:43:06
|
Revision: 1502 http://geshi.svn.sourceforge.net/geshi/?rev=1502&view=rev Author: milianw Date: 2008-07-20 18:43:15 +0000 (Sun, 20 Jul 2008) Log Message: ----------- opt: yet another rewrite of the strict mode tokenizer. this one is much faster Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-20 17:18:14 UTC (rev 1501) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-20 18:43:15 UTC (rev 1502) @@ -42,6 +42,8 @@ * Use more native functions like substr_replace and strcasecmp to speed things up (milian) * Use considerably less strlen() calls on various points by caching the results (milian) * Properly set comments to be case insensitive where appropriate to increase performance (milian) + * Improve the performance of the strict mode tokenizer, making highlighting of languages like + HTML, ColdFusion or XML faster (milian) - Added an optimizer for lists in regular expressions. Using these cached lists results in a speedup of approx. 50%. The slightly increased memory consumption (~150KB for PHP language file) is more than worth it! (milian) - Added support for external style information files to override language defaults without modifying language files (BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-20 17:18:14 UTC (rev 1501) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-20 18:43:15 UTC (rev 1502) @@ -1952,40 +1952,68 @@ if ($this->strict_mode) { // Break the source into bits. Each bit will be a portion of the code // within script delimiters - for example, HTML between < and > - $parts = array(0 => array(0 => '', 1 => '')); $k = 0; - for ($i = 0; $i < $length; ++$i) { - foreach ($this->language_data['SCRIPT_DELIMITERS'] as $delimiters) { + $parts = array(); + $matches = array(); + $next_match_pointer = null; + // we use a copy to unset delimiters on demand (when they are not found) + $delim_copy = $this->language_data['SCRIPT_DELIMITERS']; + $i = 0; + while ($i < $length) { + $next_match_pos = $length + 1; // never true + foreach ($delim_copy as $dk => $delimiters) { foreach ($delimiters as $open => $close) { + // make sure the cache is setup properly + if (!isset($matches[$dk][$open])) { + $matches[$dk][$open] = array( + 'next_match' => -1, + 'close_strlen' => strlen($close), + 'open_strlen' => strlen($open), + 'open' => $open, + 'close' => $close + ); + } // Get the next little bit for this opening string - $open_strlen = strlen($open); - $check = substr($code, $i, $open_strlen); - // If it matches... - if ($check == $open) { - // We start a new block with the highlightable - // code in it - ++$k; - $parts[$k][0] = $open; - $close_i = strpos($code, $close, $i + $open_strlen); - if ($close_i === false) { - $close_i = $length; - } else { - $close_i += strlen($close); + if ($matches[$dk][$open]['next_match'] < $i) { + // only find the next pos if it was not already cached + $open_pos = strpos($code, $open, $i); + if ($open_pos === false) { + // no match for this delimiter ever + unset($delim_copy[$dk][$open]); + continue; } - $parts[$k][1] = substr($code, $i, $close_i - $i); - $i = $close_i - 1; - ++$k; - $parts[$k][0] = ''; - $parts[$k][1] = ''; - - // No point going around again... - continue 3; + $matches[$dk][$open]['next_match'] = $open_pos; } + if ($matches[$dk][$open]['next_match'] < $next_match_pos) { + $next_match_pointer =& $matches[$dk][$open]; + $next_match_pos = $matches[$dk][$open]['next_match']; + } } } - // only non-highlightable text reaches this point - $parts[$k][1] .= $code[$i]; + // non-highlightable text + $parts[$k] = array( + 0 => '', + 1 => substr($code, $i, $next_match_pos - $i) + ); + if ($next_match_pos > $length) { + // out of bounds means no next match was found + break; + } + // highlightable code + ++$k; + $close_pos = strpos($code, $next_match_pointer['close'], $next_match_pos + $next_match_pointer['open_strlen']); + $parts[$k][0] = $next_match_pointer['open']; + if ($close_pos === false) { + // no closing delimiter found! + $parts[$k][1] = substr($code, $next_match_pos); + break; + } else { + $i = $close_pos + $next_match_pointer['close_strlen']; + $parts[$k][1] = substr($code, $next_match_pos, $i - $next_match_pos); + } + ++$k; } + unset($delim_copy, $next_match_pointer, $next_match_pos, $matches); } else { // Not strict mode - simply dump the source into // the array at index 1 (the first highlightable block) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-20 19:00:38
|
Revision: 1504 http://geshi.svn.sourceforge.net/geshi/?rev=1504&view=rev Author: milianw Date: 2008-07-20 19:00:47 +0000 (Sun, 20 Jul 2008) Log Message: ----------- opt: make $script_key lookup faster Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/php.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/php.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php.php 2008-07-20 18:48:21 UTC (rev 1503) +++ trunk/geshi-1.0.X/src/geshi/php.php 2008-07-20 19:00:47 UTC (rev 1504) @@ -54,6 +54,7 @@ 'LANG_NAME' => 'PHP', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), + 'HARDQUOTE' => array("'", "'"), 'COMMENT_REGEXP' => array( //Heredoc and Nowdoc syntax 3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-20 18:48:21 UTC (rev 1503) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-20 19:00:47 UTC (rev 1504) @@ -1969,7 +1969,7 @@ 'next_match' => -1, 'close_strlen' => strlen($close), 'open_strlen' => strlen($open), - 'open' => $open, + 'dk' => $dk, 'close' => $close ); } @@ -1992,7 +1992,6 @@ } // non-highlightable text $parts[$k] = array( - 0 => '', 1 => substr($code, $i, $next_match_pos - $i) ); if ($next_match_pos > $length) { @@ -2002,7 +2001,7 @@ // highlightable code ++$k; $close_pos = strpos($code, $next_match_pointer['close'], $next_match_pos + $next_match_pointer['open_strlen']); - $parts[$k][0] = $next_match_pointer['open']; + $parts[$k][0] = $next_match_pointer['dk']; if ($close_pos === false) { // no closing delimiter found! $parts[$k][1] = substr($code, $next_match_pos); @@ -2086,12 +2085,8 @@ // If this block should be highlighted... if ($key & 1) { if ($this->strict_mode) { - // Find the class key for this block of code - foreach ($this->language_data['SCRIPT_DELIMITERS'] as $script_key => $script_data) { - if (isset($script_data[$parts[$key][0]])) { - break; - } - } + // get the class key for this block of code + $script_key = $parts[$key][0]; if ($this->language_data['STYLES']['SCRIPT'][$script_key] != '' && $this->lexic_permissions['SCRIPT']) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-21 21:15:30
|
Revision: 1513 http://geshi.svn.sourceforge.net/geshi/?rev=1513&view=rev Author: milianw Date: 2008-07-21 21:15:39 +0000 (Mon, 21 Jul 2008) Log Message: ----------- opt: merge adjacent strict blocks of the same type. at least html4stirct and cfm needed a change to their language files => more? Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/cfm.php trunk/geshi-1.0.X/src/geshi/html4strict.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/cfm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-21 21:05:40 UTC (rev 1512) +++ trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-21 21:15:39 UTC (rev 1513) @@ -330,6 +330,14 @@ ), 'PARSER_CONTROL' => array( 'KEYWORDS' => array( + 1 => array( + 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords + 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + ), + 2 => array( + 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords + 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + ), 7 => array( 'DISALLOWED_BEFORE' => '', 'DISALLOWED_AFTER' => '' Modified: trunk/geshi-1.0.X/src/geshi/html4strict.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-21 21:05:40 UTC (rev 1512) +++ trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-21 21:15:39 UTC (rev 1513) @@ -248,7 +248,15 @@ 1 => false, 2 => true ), - 'TAB_WIDTH' => 4 + 'TAB_WIDTH' => 4, + 'PARSER_CONTROL' => array( + 'KEYWORDS' => array( + 2 => array( + 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords + 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + ) + ) + ) ); ?> Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-21 21:05:40 UTC (rev 1512) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-21 21:15:39 UTC (rev 1513) @@ -1970,7 +1970,8 @@ 'close_strlen' => strlen($close), 'open_strlen' => strlen($open), 'dk' => $dk, - 'close' => $close + 'close' => $close, + 'open' => $open // needed for grouping of adjacent code blocks (see below) ); } // Get the next little bit for this opening string @@ -1995,20 +1996,36 @@ 1 => substr($code, $i, $next_match_pos - $i) ); ++$k; + if ($next_match_pos > $length) { // out of bounds means no next match was found break; } + // highlightable code $close_pos = strpos($code, $next_match_pointer['close'], $next_match_pos + $next_match_pointer['open_strlen']); $parts[$k][0] = $next_match_pointer['dk']; + + // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three! + $i = $next_match_pos + $next_match_pointer['open_strlen']; + do { + $close_pos = strpos($code, $next_match_pointer['close'], $i); + if ($close_pos == false) { + break; + } + $i = $close_pos + $next_match_pointer['close_strlen']; + if ($i == $length) { + break; + } + } while ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || + substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])); + if ($close_pos === false) { // no closing delimiter found! $parts[$k][1] = substr($code, $next_match_pos); ++$k; break; } else { - $i = $close_pos + $next_match_pointer['close_strlen']; $parts[$k][1] = substr($code, $next_match_pos, $i - $next_match_pos); ++$k; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-21 21:31:40
|
Revision: 1519 http://geshi.svn.sourceforge.net/geshi/?rev=1519&view=rev Author: milianw Date: 2008-07-21 21:31:49 +0000 (Mon, 21 Jul 2008) Log Message: ----------- add: basic html comment support for smarty Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi/smarty.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-21 21:24:19 UTC (rev 1518) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-21 21:31:49 UTC (rev 1519) @@ -81,6 +81,7 @@ * format_header_content * format_footer_content * get_attributes + - Improved smarty language file (milian) - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi/smarty.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/smarty.php 2008-07-21 21:24:19 UTC (rev 1518) +++ trunk/geshi-1.0.X/src/geshi/smarty.php 2008-07-21 21:31:49 UTC (rev 1519) @@ -133,7 +133,8 @@ ), 'SCRIPT' => array( 0 => '', - 1 => 'color: #009000;' + 1 => 'color: #808080; font-style: italic;', + 2 => 'color: #009000;' ), 'REGEXPS' => array( ) @@ -159,12 +160,16 @@ '{' => '}' ), 1 => array( + '<!--' => '-->', + ), + 2 => array( '<' => '>' ) ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, - 1 => false + 1 => false, + 2 => false ), 'PARSER_CONTROL' => array( 'KEYWORDS' => array( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-22 20:37:36
|
Revision: 1532 http://geshi.svn.sourceforge.net/geshi/?rev=1532&view=rev Author: milianw Date: 2008-07-22 20:37:42 +0000 (Tue, 22 Jul 2008) Log Message: ----------- add: GESHI_HEADER_PRE_TABLE added, works pretty good so far Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-22 19:27:27 UTC (rev 1531) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-22 20:37:42 UTC (rev 1532) @@ -66,10 +66,12 @@ - Fixed economy mode for GeSHi::get_stylesheet() - now it just makes so much more sense! (milian) - Fixed Economy Mode when COMMENT_REGEXP are used (BenBE) - Some typos and mistakes in the documentation (BenBE) - - Added new GESHI_HEADER_PRE_VALID type which uses the following markup: + - Added new GESHI_HEADER_PRE_VALID type which uses the following markup: (milian) * With line numbers: <div>header<ol><li><pre>...</pre></li>...</ol></div> * Without line numbers: <pre>header...CODE...</pre> => valid HTML and no need for indentation + - Added new GESHI_HEADER_PRE_TABLE type which can be used to prevent linenumber-selection in Firefox + on copy'n'paste. (milian) - Extended support for number formats now covering the most common formats (SF#1923058, BenBE) - Updated Objective-C language file (SF#2013961, Quinn Taylor, BenBE) - Added some keywords for VHDL (beshig, BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-22 19:27:27 UTC (rev 1531) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-22 20:37:42 UTC (rev 1532) @@ -70,6 +70,20 @@ define('GESHI_HEADER_PRE', 2); /** Use a pre to wrap lines when line numbers are enabled or to wrap the whole code. */ define('GESHI_HEADER_PRE_VALID', 3); +/** + * Use a "table" to surround the source: + * + * <table> + * <thead><tr><td colspan="2">$header</td></tr></thead> + * <tbody><tr><td><pre>$linenumbers</pre></td><td><pre>$code></pre></td></tr></tbody> + * <tfooter><tr><td colspan="2">$footer</td></tr></tfoot> + * </table> + * + * this is essentially only a workaround for Firefox, see sf#1651996 or take a look at + * https://bugzilla.mozilla.org/show_bug.cgi?id=365805 + * @note when linenumbers are disabled this is essentially the same as GESHI_HEADER_PRE + */ +define('GESHI_HEADER_PRE_TABLE', 4); // Capatalisation constants /** Lowercase keywords found */ @@ -448,6 +462,12 @@ var $line_style2 = 'font-weight: bold;'; /** + * Style for line numbers when GESHI_HEADER_PRE_TABLE is chosen + * @var string + */ + var $table_linenumber_style = 'font-weight: normal;text-align:right;margin:0;padding:0 5px;'; + + /** * Flag for how line numbers are displayed * @var boolean */ @@ -678,7 +698,7 @@ function set_header_type($type) { //Check if we got a valid header type if (!in_array($type, array(GESHI_HEADER_NONE, GESHI_HEADER_DIV, - GESHI_HEADER_PRE, GESHI_HEADER_PRE_VALID))) { + GESHI_HEADER_PRE, GESHI_HEADER_PRE_VALID, GESHI_HEADER_PRE_TABLE))) { $this->error = GESHI_ERROR_INVALID_HEADER_TYPE; return; } @@ -3364,7 +3384,7 @@ // If we're using line numbers, we insert <li>s and appropriate // markup to style them (otherwise we don't need to do anything) - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { // If we're using the <pre> header, we shouldn't add newlines because // the <pre> will line-break them (and the <li>s already do this for us) $ls = ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) ? "\n" : ''; @@ -3451,17 +3471,59 @@ unset($code[$i - 1]); } } else { + $n = count($code); + if ($this->use_classes) { + $attributes = ' class="de1"'; + } else { + $attributes = ' style="'. $this->code_style .'"'; + } if ($this->header_type == GESHI_HEADER_PRE_VALID) { - $parsed_code .= '<pre>'; + $parsed_code .= '<pre'. $attributes .'>'; + } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + if ($this->use_classes) { + $attrs = ' class="ln"'; + } else { + $attrs = ' style="'. $this->table_linenumber_style .'"'; + } + $parsed_code .= '<td><pre'. $attrs .'>'; + // get linenumbers + // we don't merge it with the for below, since it should be better for + // memory consumption this way + for ($i = 1; $i <= $n; ++$i) { + $parsed_code .= $i; + if ($i != $n) { + $parsed_code .= "\n"; + } + } + $parsed_code .= '</pre></td><td>'; + } + $parsed_code .= '<pre'. $attributes .'>'; } // No line numbers, but still need to handle highlighting lines extra. // Have to use divs so the full width of the code is highlighted - for ($i = 0, $n = count($code); $i < $n; ++$i) { + $close = 0; + for ($i = 0; $i < $n; ++$i) { // Make lines have at least one space in them if they're empty // BenBE: Checking emptiness using trim instead of relying on blanks if ('' == trim($code[$i])) { $code[$i] = ' '; } + // fancy lines + if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && + $i % $this->line_nth_row == ($this->line_nth_row - 1)) { + // Set the attributes to style the line + if ($this->use_classes) { + $parsed_code .= '<span class="xtra li2"><span class="de2">'; + } else { + // This style "covers up" the special styles set for special lines + // so that styles applied to special lines don't apply to the actual + // code on that line + $parsed_code .= '<span style="display:block;' . $this->line_style2 . '">' + .'<span style="' . $this->code_style .'">'; + } + $close += 2; + } //Is this some line with extra styles??? if (in_array($i + 1, $this->highlight_extra_lines)) { if ($this->use_classes) { @@ -3473,20 +3535,27 @@ } else { $parsed_code .= "<span style=\"display:block;" . $this->get_line_style($i) . "\">"; } - // Remove \n because it stuffs up <pre> header - $parsed_code .= $code[$i] . '</span>'; - } else { - $parsed_code .= $code[$i]; - if ($i + 1 < $n) { - $parsed_code .= "\n"; - } + ++$close; } + + $parsed_code .= $code[$i]; + + if ($close) { + $parsed_code .= str_repeat('</span>', $close); + $close = 0; + } + elseif ($i + 1 < $n) { + $parsed_code .= "\n"; + } unset($code[$i]); } - if ($this->header_type == GESHI_HEADER_PRE_VALID) { + if ($this->header_type == GESHI_HEADER_PRE_VALID || $this->header_type == GESHI_HEADER_PRE_TABLE) { $parsed_code .= '</pre>'; } + if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { + $parsed_code .= '</td>'; + } } $parsed_code .= $this->footer(); @@ -3536,7 +3605,11 @@ } else { $attr = " style=\"{$this->header_content_style}\""; } - $header = "<div$attr>$header</div>"; + if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { + $header = "<thead><tr><td colspan=\"2\" $attr>$header</td></tr></thead>"; + } else { + $header = "<div$attr>$header</div>"; + } } if (GESHI_HEADER_NONE == $this->header_type) { @@ -3553,6 +3626,8 @@ } else if ($this->header_type == GESHI_HEADER_DIV || $this->header_type == GESHI_HEADER_PRE_VALID) { return "<div$attributes>$header<ol$ol_attributes>"; + } else if ($this->header_type == GESHI_HEADER_PRE_TABLE) { + return "<table$attributes>$header<tbody><tr class=\"li1\">"; } } else { if ($this->header_type == GESHI_HEADER_PRE) { @@ -3585,7 +3660,11 @@ } else { $attr = " style=\"{$this->footer_content_style}\""; } - $footer = "<div$attr>$footer</div>"; + if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->linenumbers != GESHI_NO_LINE_NUMBERS) { + $footer = "<tfoot><tr><td colspan=\"2\">$footer</td></tr></tfoot>"; + } else { + $footer = "<div$attr>$footer</div>"; + } } if (GESHI_HEADER_NONE == $this->header_type) { @@ -3599,6 +3678,13 @@ return ($this->force_code_block ? '</div>' : '') . "$footer</div>"; } + elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + return "</tr></tbody>$footer</table>"; + } + return ($this->force_code_block ? '</div>' : '') . + "$footer</div>"; + } else { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "</ol>$footer</pre>"; @@ -3828,11 +3914,14 @@ // Simple line number styles if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->line_style1 != '') { - $stylesheet .= "{$selector}li, {$selector}li.li1 {{$this->line_style1}}\n"; + $stylesheet .= "{$selector}li, {$selector}.li1 {{$this->line_style1}}\n"; } + if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->table_linenumber_style != '') { + $stylesheet .= "{$selector}.ln {{$this->table_linenumber_style}}\n"; + } // If there is a style set for fancy line numbers, echo it out if ((!$economy_mode || $this->line_numbers == GESHI_FANCY_LINE_NUMBERS) && $this->line_style2 != '') { - $stylesheet .= "{$selector}li.li2 {{$this->line_style2}}\n"; + $stylesheet .= "{$selector}.li2 {{$this->line_style2}}\n"; } // note: empty styles are meaningless @@ -3905,8 +3994,8 @@ // Styles for lines being highlighted extra if (!$economy_mode || (count($this->highlight_extra_lines)!=count($this->highlight_extra_lines_styles))) { $stylesheet .= "{$selector}.ln-xtra, {$selector}li.ln-xtra, {$selector}div.ln-xtra {{$this->highlight_extra_lines_style}}\n"; - $stylesheet .= "{$selector}span.xtra { display:block; }\n"; } + $stylesheet .= "{$selector}span.xtra { display:block; }\n"; foreach ($this->highlight_extra_lines_styles as $lineid => $linestyle) { $stylesheet .= "{$selector}.lx$lineid, {$selector}li.lx$lineid, {$selector}div.lx$lineid {{$linestyle}}\n"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-07-24 13:24:31
|
Revision: 1552 http://geshi.svn.sourceforge.net/geshi/?rev=1552&view=rev Author: benbe Date: 2008-07-24 13:24:40 +0000 (Thu, 24 Jul 2008) Log Message: ----------- fix: Improved LaTeX highlighting (?\208?\144?\208?\189?\208?\180?\209?\128?\208?\181?\208?\185 ?\208?\159?\208?\176?\209?\128?\208?\176?\208?\188?\208?\190?\208?\189?\208?\190?\208?\178) Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi/latex.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-24 11:53:50 UTC (rev 1551) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-24 13:24:40 UTC (rev 1552) @@ -1,4 +1,4 @@ - + CHANGES - Changelog for GeSHi (geshi.php only) Changes to the code are listed under the version they occured in, with who suggested @@ -83,7 +83,8 @@ * format_header_content * format_footer_content * get_attributes - - Improved smarty language file (milian) + - Improved Smarty language file (milian) + - Improved LaTeX language file (Андрей Парамонов, BenBE) - Fixed a regular expression in mIRC language file that caused a warning message to be issued (BenBE) - Added a script to contrib/ to verify language files are correct (BenBE) - Fixed loads of compliancy warnings detected with that automated compliance testing script (BenBE) Modified: trunk/geshi-1.0.X/src/geshi/latex.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/latex.php 2008-07-24 11:53:50 UTC (rev 1551) +++ trunk/geshi-1.0.X/src/geshi/latex.php 2008-07-24 13:24:40 UTC (rev 1552) @@ -101,13 +101,13 @@ 'REGEXPS' => array( // Math inner 1 => array( - GESHI_SEARCH => "(\\\\begin\\{)(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign )(\\})(.*)(\\\\end\\{)(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign)(\\})", - GESHI_REPLACE => '\\4', - GESHI_MODIFIERS => 's', + GESHI_SEARCH => "(\\\\begin\\{)(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign)(\\})(.*)(\\\\end\\{)(\\2)(\\})", + GESHI_REPLACE => '\4', + GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '\1\2\3', GESHI_AFTER => '\5\6\7' ), - // \keywords + // \keywords 2 => array( GESHI_SEARCH => "(\\\\)([a-zA-Z]+)", GESHI_REPLACE => '\1\2', @@ -119,23 +119,23 @@ 3 => array( GESHI_SEARCH => "(\\{)(.*)(\\})", GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'U', + GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '\1', GESHI_AFTER => '\3' ), - // [Option] + // [options] 4 => array( GESHI_SEARCH => "(\[)(.+)(\])", GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'U', + GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '\1', GESHI_AFTER => '\3' ), - // Mathe mit $ ... $ + // Math mode with $ ... $ 5 => array( GESHI_SEARCH => "(\\$)(.+)(\\$)", GESHI_REPLACE => '\1\2\3', - GESHI_MODIFIERS => 'U', + GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '', GESHI_AFTER => '' ), @@ -155,7 +155,7 @@ GESHI_BEFORE => '', GESHI_AFTER => '\\2' ), - //Structure: Label + // Structure: Label 8 => array( GESHI_SEARCH => "(\\\\)(label|pageref|ref|cite)(?=[^a-zA-Z])", GESHI_REPLACE => '\\1\\2', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-07-24 22:06:03
|
Revision: 1574 http://geshi.svn.sourceforge.net/geshi/?rev=1574&view=rev Author: benbe Date: 2008-07-24 22:06:11 +0000 (Thu, 24 Jul 2008) Log Message: ----------- add: SF#1330968: Added support to define Strict Blocks by an RegExp fix: SF#1330968: Highlighting incorrectly stopped at ?> in PHP even if this was inside a string Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi/php.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-24 21:51:56 UTC (rev 1573) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-24 22:06:11 UTC (rev 1574) @@ -28,8 +28,10 @@ * Xorg configuration (milian) - set_language will not reset any language settings by default anymore. You can use the additional $force_reset param for this. (milian) - - setup caches for parsing on demand, makes stylesheet generators fast again (milian) - - reduce strict errors & notices for language files (milian) + - Added support for RegExp-based Strict Blocks (BenBE) + - Fixed highlighting incorrectly stopping at ?> in PHP (SF#1330968, BenBE) + - Setup caches for parsing on demand, makes stylesheet generators fast again (milian) + - Reduce strict errors & notices for language files (milian) - Fixed symbol highlighting with C++ sometimes missing keywords after ; and comments (BenBE) - Improved comment handling with TCL (Lars Hellström, BenBE) - Removed explicit escaping of / in Regular Expressions (BenBE) Modified: trunk/geshi-1.0.X/src/geshi/php.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php.php 2008-07-24 21:51:56 UTC (rev 1573) +++ trunk/geshi-1.0.X/src/geshi/php.php 2008-07-24 22:06:11 UTC (rev 1574) @@ -318,7 +318,9 @@ 0 => '', 1 => '', 2 => '', - 3 => '' + 3 => '', + 4 => '', + 5 => '' ) ), 'URLS' => array( @@ -348,7 +350,9 @@ ), 3 => array( '<script language="php">' => '</script>' - ) + ), + 4 => "/(<\?(?:php)?)(?:'[^']*?'|\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(\?>|\Z)/sm", + 5 => "/(<%)(?:'[^']*?'|\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(%>|\Z)/sm" ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-24 21:51:56 UTC (rev 1573) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-24 22:06:11 UTC (rev 1574) @@ -1976,33 +1976,69 @@ while ($i < $length) { $next_match_pos = $length + 1; // never true foreach ($delim_copy as $dk => $delimiters) { - foreach ($delimiters as $open => $close) { - // make sure the cache is setup properly - if (!isset($matches[$dk][$open])) { - $matches[$dk][$open] = array( - 'next_match' => -1, - 'close_strlen' => strlen($close), - 'open_strlen' => strlen($open), + if(is_array($delimiters)) { + foreach ($delimiters as $open => $close) { + // make sure the cache is setup properly + if (!isset($matches[$dk][$open])) { + $matches[$dk][$open] = array( + 'next_match' => -1, + 'dk' => $dk, + + 'open' => $open, // needed for grouping of adjacent code blocks (see below) + 'open_strlen' => strlen($open), + + 'close' => $close, + 'close_strlen' => strlen($close), + ); + } + // Get the next little bit for this opening string + if ($matches[$dk][$open]['next_match'] < $i) { + // only find the next pos if it was not already cached + $open_pos = strpos($code, $open, $i); + if ($open_pos === false) { + // no match for this delimiter ever + unset($delim_copy[$dk][$open]); + continue; + } + $matches[$dk][$open]['next_match'] = $open_pos; + } + if ($matches[$dk][$open]['next_match'] < $next_match_pos) { + //So we got a new match, update the close_pos + $matches[$dk][$open]['close_pos'] = + strpos($code, $close, $matches[$dk][$open]['next_match']+1); + + $next_match_pointer =& $matches[$dk][$open]; + $next_match_pos = $matches[$dk][$open]['next_match']; + } + } + } else { + //So we should match an RegExp as Strict Block ... + /** + * The value in $delimiters is expected to be an RegExp + * containing exactly 2 matching groups: + * - Group 1 is the opener + * - Group 2 is the closer + */ + if(!GESHI_PHP_PRE_433 && //Needs proper rewrite to work with PHP >=4.3.0; 4.3.3 is guaranteed to work. + preg_match($delimiters, $code, $matches_rx, PREG_OFFSET_CAPTURE, $i)) { + //We got a match ... + $matches[$dk] = array( + 'next_match' => $matches_rx[0][1], 'dk' => $dk, - 'close' => $close, - 'open' => $open // needed for grouping of adjacent code blocks (see below) - ); + + 'close_strlen' => strlen($matches_rx[2][0]), + 'close_pos' => $matches_rx[2][1], + ); + } else { + // no match for this delimiter ever + unset($delim_copy[$dk]); + continue; } - // Get the next little bit for this opening string - if ($matches[$dk][$open]['next_match'] < $i) { - // only find the next pos if it was not already cached - $open_pos = strpos($code, $open, $i); - if ($open_pos === false) { - // no match for this delimiter ever - unset($delim_copy[$dk][$open]); - continue; - } - $matches[$dk][$open]['next_match'] = $open_pos; + + if ($matches[$dk]['next_match'] <= $next_match_pos) { + $next_match_pointer =& $matches[$dk]; + $next_match_pos = $matches[$dk]['next_match']; } - if ($matches[$dk][$open]['next_match'] < $next_match_pos) { - $next_match_pointer =& $matches[$dk][$open]; - $next_match_pos = $matches[$dk][$open]['next_match']; - } } } // non-highlightable text @@ -2019,19 +2055,25 @@ // highlightable code $parts[$k][0] = $next_match_pointer['dk']; - // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three! - $i = $next_match_pos + $next_match_pointer['open_strlen']; - do { - $close_pos = strpos($code, $next_match_pointer['close'], $i); - if ($close_pos == false) { - break; - } - $i = $close_pos + $next_match_pointer['close_strlen']; - if ($i == $length) { - break; - } - } while ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || - substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])); + //Only combine for non-rx script blocks + if(is_array($delim_copy[$next_match_pointer['dk']])) { + // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three! + $i = $next_match_pos + $next_match_pointer['open_strlen']; + do { + $close_pos = strpos($code, $next_match_pointer['close'], $i); + if ($close_pos == false) { + break; + } + $i = $close_pos + $next_match_pointer['close_strlen']; + if ($i == $length) { + break; + } + } while ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || + substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])); + } else { + $close_pos = $next_match_pointer['close_pos'] + $next_match_pointer['close_strlen']; + $i = $close_pos; + } if ($close_pos === false) { // no closing delimiter found! This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-25 19:26:41
|
Revision: 1583 http://geshi.svn.sourceforge.net/geshi/?rev=1583&view=rev Author: milianw Date: 2008-07-25 19:26:50 +0000 (Fri, 25 Jul 2008) Log Message: ----------- chg: GESHI_MAYBE languages default to GESHI_STRICT with a proper fallback Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-25 17:53:38 UTC (rev 1582) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-25 19:26:50 UTC (rev 1583) @@ -91,6 +91,9 @@ - Added a script to contrib/ to verify language files are correct (BenBE) - Fixed loads of compliancy warnings detected with that automated compliance testing script (BenBE) - Lifted a limitation that keywords had to have at least 2 subsequent letters (BenBE) + - Languages with STRICT_MODE_APPLIES = GESHI_MAYBE default to strict mode now. When no highlightable + code is found in this mode, we fallback to the same setting as if GESHI_NEVER was set. That way it + should not be needed to call enable_strictmode() manually. (milian) - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-25 17:53:38 UTC (rev 1582) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-25 19:26:50 UTC (rev 1583) @@ -1226,7 +1226,7 @@ */ function enable_strict_mode($mode = true) { if (GESHI_MAYBE == $this->language_data['STRICT_MODE_APPLIES']) { - $this->strict_mode = ($mode) ? true : false; + $this->strict_mode = ($mode) ? GESHI_ALWAYS : GESHI_NEVER; } } @@ -2087,6 +2087,23 @@ } unset($delim_copy, $next_match_pointer, $next_match_pos, $matches); $num_parts = $k; + + if ($num_parts == 1 && $this->strict_mode == GESHI_MAYBE) { + // when we have only one part, we don't have anything to highlight at all. + // if we have a "maybe" strict language, this should be handled as highlightable code + $parts = array( + 0 => array( + 0 => '', + 1 => '' + ), + 1 => array( + 0 => '', + 1 => $parts[0][1] + ) + ); + $num_parts = 2; + } + } else { // Not strict mode - simply dump the source into // the array at index 1 (the first highlightable block) @@ -2170,7 +2187,7 @@ // get the class key for this block of code $script_key = $parts[$key][0]; - if ($this->language_data['STYLES']['SCRIPT'][$script_key] != '' && + if (!empty($script_key) && $this->language_data['STYLES']['SCRIPT'][$script_key] != '' && $this->lexic_permissions['SCRIPT']) { // Add a span element around the source to // highlight the overall source block @@ -2185,7 +2202,7 @@ } } - if (!$this->strict_mode || $this->language_data['HIGHLIGHT_STRICT_BLOCK'][$script_key]) { + if (!$this->strict_mode || empty($script_key) || $this->language_data['HIGHLIGHT_STRICT_BLOCK'][$script_key]) { // Now, highlight the code in this block. This code // is really the engine of GeSHi (along with the method // parse_non_string_part). @@ -3307,9 +3324,7 @@ $this->language_data = $language_data; // Set strict mode if should be set - if ($this->language_data['STRICT_MODE_APPLIES'] == GESHI_ALWAYS) { - $this->strict_mode = true; - } + $this->strict_mode = $this->language_data['STRICT_MODE_APPLIES']; // Set permissions for all lexics to true // so they'll be highlighted by default This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-26 14:38:34
|
Revision: 1590 http://geshi.svn.sourceforge.net/geshi/?rev=1590&view=rev Author: milianw Date: 2008-07-26 14:38:43 +0000 (Sat, 26 Jul 2008) Log Message: ----------- fix: don't merge strict blocks like <tag><\!-- comment -->we can now rely once again on strict blocks and don't need the sgml comment in comment_multi Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/cfm.php trunk/geshi-1.0.X/src/geshi/html4strict.php trunk/geshi-1.0.X/src/geshi/xml.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/cfm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 14:36:58 UTC (rev 1589) +++ trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 14:38:43 UTC (rev 1590) @@ -40,7 +40,7 @@ $language_data = array ( 'LANG_NAME' => 'ColdFusion', 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/', '<!--' => '-->'), + 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '\\', Modified: trunk/geshi-1.0.X/src/geshi/html4strict.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-26 14:36:58 UTC (rev 1589) +++ trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-26 14:38:43 UTC (rev 1590) @@ -52,7 +52,7 @@ $language_data = array ( 'LANG_NAME' => 'HTML', 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('<!--' => '-->'), + 'COMMENT_MULTI' => array(), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', @@ -191,7 +191,6 @@ 3 => 'color: #000066;' ), 'COMMENTS' => array( - 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' Modified: trunk/geshi-1.0.X/src/geshi/xml.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/xml.php 2008-07-26 14:36:58 UTC (rev 1589) +++ trunk/geshi-1.0.X/src/geshi/xml.php 2008-07-26 14:38:43 UTC (rev 1590) @@ -47,7 +47,7 @@ $language_data = array ( 'LANG_NAME' => 'XML', 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('<!--' => '-->'), + 'COMMENT_MULTI' => array(), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', @@ -62,7 +62,6 @@ 'KEYWORDS' => array( ), 'COMMENTS' => array( - 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-26 14:36:58 UTC (rev 1589) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-26 14:38:43 UTC (rev 1590) @@ -2059,7 +2059,7 @@ if(is_array($delim_copy[$next_match_pointer['dk']])) { // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three! $i = $next_match_pos + $next_match_pointer['open_strlen']; - do { + while (true) { $close_pos = strpos($code, $next_match_pointer['close'], $i); if ($close_pos == false) { break; @@ -2068,8 +2068,21 @@ if ($i == $length) { break; } - } while ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || - substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])); + if ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || + substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])) { + // merge adjacent but make sure we don't merge things like <tag><!-- comment --> + foreach ($matches as $submatches) { + foreach ($submatches as $match) { + if ($match['next_match'] == $i) { + // a different block already matches here! + break 3; + } + } + } + } else { + break; + } + } } else { $close_pos = $next_match_pointer['close_pos'] + $next_match_pointer['close_strlen']; $i = $close_pos; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-07-26 15:28:18
|
Revision: 1591 http://geshi.svn.sourceforge.net/geshi/?rev=1591&view=rev Author: benbe Date: 2008-07-26 15:28:26 +0000 (Sat, 26 Jul 2008) Log Message: ----------- chg: Allowed PARSER_CONTROL for KEYWORDS to specify entire Lookahead and Lookbehind f?\195?\188r keyword boundaries fix: Fixed all the language files using this feature so far ... Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/apt_sources.php trunk/geshi-1.0.X/src/geshi/asm.php trunk/geshi-1.0.X/src/geshi/bash.php trunk/geshi-1.0.X/src/geshi/cfm.php trunk/geshi-1.0.X/src/geshi/cpp-qt.php trunk/geshi-1.0.X/src/geshi/cpp.php trunk/geshi-1.0.X/src/geshi/csharp.php trunk/geshi-1.0.X/src/geshi/css.php trunk/geshi-1.0.X/src/geshi/gnuplot.php trunk/geshi-1.0.X/src/geshi/html4strict.php trunk/geshi-1.0.X/src/geshi/klonec.php trunk/geshi-1.0.X/src/geshi/klonecpp.php trunk/geshi-1.0.X/src/geshi/progress.php trunk/geshi-1.0.X/src/geshi/smarty.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/apt_sources.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/apt_sources.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/apt_sources.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -127,8 +127,8 @@ 'STRINGS' => GESHI_NEVER, ), 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#;>|^\/', - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-&\.' + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^\/])', + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' ) ), 'TAB_WIDTH' => 4 Modified: trunk/geshi-1.0.X/src/geshi/asm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/asm.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/asm.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -216,8 +216,8 @@ 'TAB_WIDTH' => 8, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%" + 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", + 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/bash.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/bash.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/bash.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -247,8 +247,8 @@ 'DISALLOWED_BEFORE' => '$' ), 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "\.\-a-zA-Z0-9_\$\#", - 'DISALLOWED_AFTER' => "\.\-a-zA-Z0-9_%" + 'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#])", + 'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/cfm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -337,20 +337,20 @@ 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 1 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ), 2 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ), 3 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ), 7 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>&|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>&|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ) ) ) Modified: trunk/geshi-1.0.X/src/geshi/cpp-qt.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cpp-qt.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/cpp-qt.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -268,8 +268,8 @@ 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%\\-" + 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", + 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/cpp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cpp.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/cpp.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -184,8 +184,8 @@ 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_\|%\\-" + 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#])", + 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/csharp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/csharp.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/csharp.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -237,8 +237,8 @@ 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%\\-" + 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", + 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/css.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/css.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/css.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -204,7 +204,7 @@ 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-&\.' + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/gnuplot.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/gnuplot.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/gnuplot.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -281,7 +281,7 @@ 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 4 => array( - 'DISALLOWED_AFTER' => "\.\-a-zA-Z0-9_%" + 'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%])" ) ) ), Modified: trunk/geshi-1.0.X/src/geshi/html4strict.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -252,8 +252,8 @@ 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 2 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ) ) ) Modified: trunk/geshi-1.0.X/src/geshi/klonec.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/klonec.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/klonec.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -322,8 +322,8 @@ 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 6 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ) ) ) Modified: trunk/geshi-1.0.X/src/geshi/klonecpp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/klonecpp.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/klonecpp.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -350,8 +350,8 @@ 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 6 => array( - 'DISALLOWED_BEFORE' => 'a-zA-Z0-9\$_\|\#>|^', // allow ; before keywords - 'DISALLOWED_AFTER' => 'a-zA-Z0-9_\|%\\-', // allow & after keywords + 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords + 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords ) ) ) Modified: trunk/geshi-1.0.X/src/geshi/progress.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/progress.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/progress.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -470,8 +470,8 @@ 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "\.\-a-zA-Z0-9_\$\#&", - 'DISALLOWED_AFTER' => "\-a-zA-Z0-9_%" + 'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#&])", + 'DISALLOWED_AFTER' => "(?![\-a-zA-Z0-9_%])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi/smarty.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/smarty.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi/smarty.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -173,8 +173,8 @@ ), 'PARSER_CONTROL' => array( 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#;>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%\\-&" + 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#;>|^])", + 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-&])" ) ) ); Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-26 14:38:43 UTC (rev 1590) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-26 15:28:26 UTC (rev 1591) @@ -2977,13 +2977,16 @@ } // Highlight keywords - $disallowed_before = "a-zA-Z0-9\$_\|\#;>|^"; - $disallowed_after = "a-zA-Z0-9_\|%\\-&"; + $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^"; + $disallowed_after = "(?<!a-zA-Z0-9_\|%\\-&"; if ($this->lexic_permissions['STRINGS']) { $quotemarks = preg_quote(implode($this->language_data['QUOTEMARKS']), '/'); $disallowed_before .= $quotemarks; $disallowed_after .= $quotemarks; } + $disallowed_before .= "])"; + $disallowed_after .= "])"; + $parser_control_pergroup = false; if (isset($this->language_data['PARSER_CONTROL'])) { if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) { @@ -3001,12 +3004,12 @@ } // if this is changed, don't forget to change it below - if (!empty($disallowed_before)) { - $disallowed_before = "(?<![$disallowed_before])"; - } - if (!empty($disallowed_after)) { - $disallowed_after = "(?![$disallowed_after])"; - } +// if (!empty($disallowed_before)) { +// $disallowed_before = "(?<![$disallowed_before])"; +// } +// if (!empty($disallowed_after)) { +// $disallowed_after = "(?![$disallowed_after])"; +// } foreach (array_keys($this->language_data['KEYWORDS']) as $k) { if (!isset($this->lexic_permissions['KEYWORDS'][$k]) || @@ -3021,20 +3024,12 @@ if ($parser_control_pergroup && isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k])) { if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE'])) { $disallowed_before_local = - $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE']; - - if (!empty($disallowed_before_local)) { - $disallowed_before_local = "(?<![$disallowed_before_local])"; - } + $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE']; } if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER'])) { $disallowed_after_local = - $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER']; - - if (!empty($disallowed_after_local)) { - $disallowed_after_local = "(?![$disallowed_after_local])"; - } + $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER']; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-26 16:10:31
|
Revision: 1596 http://geshi.svn.sourceforge.net/geshi/?rev=1596&view=rev Author: milianw Date: 2008-07-26 16:10:40 +0000 (Sat, 26 Jul 2008) Log Message: ----------- fix: REGEXPS with matches that spanned over multiple lines produced invalid html when linenumbers were enabled Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-26 16:05:04 UTC (rev 1595) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-26 16:10:40 UTC (rev 1596) @@ -97,6 +97,7 @@ - Changed behaviour of PARSER_CONTROL now allowing to provide the full Lookahead and Lookbehind expressions used as delimiters inside keywords instead of a simple char group (BenBE) - Removed <, > and / from HTML names, now only containing the real tag names (BenBE) + - Fix: Properly handle newlines in REGEXPS so this does not produce invalid html anylonger (milian) - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-26 16:05:04 UTC (rev 1595) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-26 16:10:40 UTC (rev 1596) @@ -550,6 +550,18 @@ var $_kw_replace_group = 0; var $_rx_key = 0; + /** + * some "callback parameters" for handle_multiline_regexps + * + * @since 1.0.8 + * @access private + * @var string + */ + var $_hmr_before = ''; + var $_hmr_replace = ''; + var $_hmr_after = ''; + var $_hmr_key = 0; + /**#@-*/ /** @@ -2936,6 +2948,37 @@ } /** + * handles newlines in REGEXPS matches. Set the _hmr_* vars before calling this + * + * @note this is a callback, don't use it directly + * + * @param array the matches array + */ + function handle_multiline_regexps($matches) { + $before = $this->_hmr_before; + $after = $this->_hmr_after; + if ($this->_hmr_replace) { + $replace = $this->_hmr_replace; + $search = array(); + + foreach (array_keys($matches) as $k) { + $search[] = '\\' . $k; + } + + $before = str_replace($search, $matches, $before); + $after = str_replace($search, $matches, $after); + $replace = str_replace($search, $matches, $replace); + } else { + $replace = $matches[0]; + } + return $before + . '<|!REG3XP' . $this->_hmr_key .'!>' + . str_replace("\n", "|>\n<|!REG3XP" . $this->_hmr_key . '!>', $replace) + . '|>' + . $after; + } + + /** * Takes a string that has no strings or comments in it, and highlights * stuff like keywords, numbers and methods. * @@ -2951,15 +2994,33 @@ foreach ($this->language_data['REGEXPS'] as $key => $regexp) { if ($this->lexic_permissions['REGEXPS'][$key]) { if (is_array($regexp)) { - $stuff_to_parse = preg_replace( - "/" . - $regexp[GESHI_SEARCH] . - "/{$regexp[GESHI_MODIFIERS]}", - "{$regexp[GESHI_BEFORE]}<|!REG3XP$key!>{$regexp[GESHI_REPLACE]}|>{$regexp[GESHI_AFTER]}", - $stuff_to_parse - ); + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + $this->_hmr_replace = $regexp[GESHI_REPLACE]; + $this->_hmr_before = $regexp[GESHI_BEFORE]; + $this->_hmr_key = $key; + $this->_hmr_after = $regexp[GESHI_AFTER]; + $stuff_to_parse = preg_replace_callback( + "/" . $regexp[GESHI_SEARCH] . "/{$regexp[GESHI_MODIFIERS]}", + array($this, 'handle_multiline_regexps'), + $stuff_to_parse); + $this->_hmr_replace = false; + $this->_hmr_before = ''; + $this->_hmr_after = ''; + } else { + $stuff_to_parse = preg_replace( + '/' . $regexp[GESHI_SEARCH] . '/' . $regexp[GESHI_MODIFIERS], + $regexp[GESHI_BEFORE] . '<|!REG3XP'. $key .'!>' . $regexp[GESHI_REPLACE] . '|>' . $regexp[GESHI_AFTER], + $stuff_to_parse); + } } else { - $stuff_to_parse = preg_replace( "/(" . $regexp . ")/", "<|!REG3XP$key!>\\1|>", $stuff_to_parse); + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + $this->_hmr_key = $key; + $stuff_to_parse = preg_replace_callback( "/(" . $regexp . ")/", + array($this, 'handle_multiline_regexps'), $stuff_to_parse); + $this->_hmr_key = ''; + } else { + $stuff_to_parse = preg_replace( "/(" . $regexp . ")/", "<|!REG3XP$key!>\\1|>", $stuff_to_parse); + } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-26 16:34:42
|
Revision: 1601 http://geshi.svn.sourceforge.net/geshi/?rev=1601&view=rev Author: milianw Date: 2008-07-26 16:34:50 +0000 (Sat, 26 Jul 2008) Log Message: ----------- fix: the default disallowed_after for keywords was totally malfunctioning Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/cfm.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/cfm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 16:31:18 UTC (rev 1600) +++ trunk/geshi-1.0.X/src/geshi/cfm.php 2008-07-26 16:34:50 UTC (rev 1601) @@ -237,8 +237,7 @@ ), 'URLS' => array( 1 => '', - //2 => 'http://december.com/html/4/element/{FNAMEL}.html', - 2 => '', + 2 => 'http://december.com/html/4/element/{FNAMEL}.html', 3 => '', 4 => '', 5 => '', Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-26 16:31:18 UTC (rev 1600) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-26 16:34:50 UTC (rev 1601) @@ -3046,7 +3046,7 @@ // Highlight keywords $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^"; - $disallowed_after = "(?<!a-zA-Z0-9_\|%\\-&"; + $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&"; if ($this->lexic_permissions['STRINGS']) { $quotemarks = preg_quote(implode($this->language_data['QUOTEMARKS']), '/'); $disallowed_before .= $quotemarks; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-26 19:00:30
|
Revision: 1610 http://geshi.svn.sourceforge.net/geshi/?rev=1610&view=rev Author: milianw Date: 2008-07-26 19:00:39 +0000 (Sat, 26 Jul 2008) Log Message: ----------- chg: overall_class is now optional and up to the user. the language-code is _always_ added though Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-26 18:47:43 UTC (rev 1609) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-26 19:00:39 UTC (rev 1610) @@ -98,6 +98,7 @@ expressions used as delimiters inside keywords instead of a simple char group (BenBE) - Removed <, > and / from HTML names, now only containing the real tag names (BenBE) - Fix: Properly handle newlines in REGEXPS so this does not produce invalid html anylonger (milian) + - The overall_class is now up to the user, and the language-code is _always_ added as a class (milian) - Second part of default style changes. Affected in this release: * C++ * C++ (QT) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-26 18:47:43 UTC (rev 1609) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-26 19:00:39 UTC (rev 1610) @@ -3697,11 +3697,12 @@ * @todo Document behaviour change - class is outputted regardless of whether * we're using classes or not. Same with style */ - $attributes = ''; - + $attributes = ' class="' . $this->language; if ($this->overall_class != '') { - $attributes .= " class=\"{$this->overall_class}\""; + $attributes .= " ".$this->overall_class; } + $attributes .= '"'; + if ($this->overall_id != '') { $attributes .= " id=\"{$this->overall_id}\""; } @@ -3961,8 +3962,15 @@ // First, work out what the selector should be. If there's an ID, // that should be used, the same for a class. Otherwise, a selector // of '' means that these styles will be applied anywhere - $selector = ($this->overall_id != '') ? "#{$this->overall_id} " : ''; - $selector = ($selector == '' && $this->overall_class != '') ? ".{$this->overall_class} " : $selector; + if ($this->overall_id) { + $selector = '#' . $this->overall_id; + } else { + $selector = '.' . $this->language; + if ($this->overall_class) { + $selector .= '.' . $this->overall_class; + } + } + $selector .= ' '; // Header of the stylesheet if (!$economy_mode) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-29 20:58:37
|
Revision: 1670 http://geshi.svn.sourceforge.net/geshi/?rev=1670&view=rev Author: milianw Date: 2008-07-29 20:58:46 +0000 (Tue, 29 Jul 2008) Log Message: ----------- fix: hardquoted strings did not declare their styles properly. I introduced a new 'HARD' style for them. yes - hardstyle :) same goes for the escape chars in hardquoted strings fix: empty hardquoted strings were incorrectly parsed chg: make PHP use hardquotes properly. chg: make Pascal use hardquotes. Since I don't speak pascal - could someone review this? I found on wikipedia that Pascal uses double-up escape sequences - but why do we set "\" as an escape char? The Pascal example in the coderepo shows that something like 'foo\' is a valid string, and \ is _not_ the escape char. Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/boo.php trunk/geshi-1.0.X/src/geshi/csharp.php trunk/geshi-1.0.X/src/geshi/pascal.php trunk/geshi-1.0.X/src/geshi/perl.php trunk/geshi-1.0.X/src/geshi/php-brief.php trunk/geshi-1.0.X/src/geshi/php.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/boo.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/boo.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/boo.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -153,13 +153,15 @@ 'MULTI' => 'color: #008000; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #0000FF; font-weight: bold;' + 0 => 'color: #0000FF; font-weight: bold;', + 'HARD' => 'color: #0000FF; font-weight: bold;', ), 'BRACKETS' => array( 0 => 'color: #006400;' ), 'STRINGS' => array( - 0 => 'color: #008000;' + 0 => 'color: #008000;', + 'HARD' => 'color: #008000;' ), 'NUMBERS' => array( 0 => 'color: #00008B;' Modified: trunk/geshi-1.0.X/src/geshi/csharp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/csharp.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/csharp.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -192,13 +192,15 @@ 'MULTI' => 'color: #008080; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' + 0 => 'color: #008080; font-weight: bold;', + 'HARD' => 'color: #008080; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( - 0 => 'color: #666666;' + 0 => 'color: #666666;', + 'HARD' => 'color: #666666;' ), 'NUMBERS' => array( 0 => 'color: #FF0000;' Modified: trunk/geshi-1.0.X/src/geshi/pascal.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/pascal.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/pascal.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -52,7 +52,9 @@ 'COMMENT_SINGLE' => array(1 => '//'), 'COMMENT_MULTI' => array('{' => '}','(*' => '*)'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), + 'QUOTEMARKS' => array('"'), + 'HARDQUOTE' => array("'", "'"), + 'HARDESCAPE' => array("''"), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( @@ -102,13 +104,15 @@ 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' + 0 => 'color: #000099; font-weight: bold;', + 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( - 0 => 'color: #ff0000;' + 0 => 'color: #ff0000;', + 'HARD' => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' Modified: trunk/geshi-1.0.X/src/geshi/perl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/perl.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/perl.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -154,13 +154,15 @@ 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' + 0 => 'color: #000099; font-weight: bold;', + 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( - 0 => 'color: #ff0000;' + 0 => 'color: #ff0000;', + 'HARD' => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' Modified: trunk/geshi-1.0.X/src/geshi/php-brief.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php-brief.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/php-brief.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -56,6 +56,8 @@ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '\\', + 'HARDQUOTE' => array("'", "'"), + 'HARDESCAPE' => array("\'"), 'KEYWORDS' => array( 1 => array( 'include', 'require', 'include_once', 'require_once', @@ -111,13 +113,15 @@ 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' + 0 => 'color: #000099; font-weight: bold;', + 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( - 0 => 'color: #0000ff;' + 0 => 'color: #0000ff;', + 'HARD' => 'color: #0000ff;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' Modified: trunk/geshi-1.0.X/src/geshi/php.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi/php.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -55,6 +55,7 @@ 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), 'HARDQUOTE' => array("'", "'"), + 'HARDESCAPE' => array("\'"), 'COMMENT_REGEXP' => array( //Heredoc and Nowdoc syntax 3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', @@ -62,7 +63,7 @@ 4 => '#/\*\*(?!\*).*\*/#sU' ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), + 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( @@ -293,13 +294,15 @@ 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' + 0 => 'color: #000099; font-weight: bold;', + 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( - 0 => 'color: #0000ff;' + 0 => 'color: #0000ff;', + 'HARD' => 'color: #0000ff;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-27 23:41:38 UTC (rev 1669) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-29 20:58:46 UTC (rev 1670) @@ -2369,7 +2369,13 @@ } else if ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char && substr($part, $i, $hq_strlen) == $hq) { // The start of a hard quoted string - + if (!$this->use_classes) { + $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS']['HARDQUOTE'] . '"'; + $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR']['HARDESCAPE'] . '"'; + } else { + $string_attributes = ' class="st_h"'; + $escape_char_attributes = ' class="es_h"'; + } // parse the stuff before this $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; @@ -2379,8 +2385,8 @@ // look for closing quote $start = $i + $hq_strlen; - while ($close_pos = strpos($part, $this->language_data['HARDQUOTE'][1], $start + 1)) { - $start = $close_pos; + while ($close_pos = strpos($part, $this->language_data['HARDQUOTE'][1], $start)) { + $start = $close_pos + 1; if ($this->lexic_permissions['ESCAPE_CHAR'] && $part[$close_pos - 1] == $this->language_data['ESCAPE_CHAR']) { // make sure this quote is not escaped foreach ($this->language_data['HARDESCAPE'] as $hardescape) { @@ -4069,6 +4075,10 @@ } foreach ($this->language_data['STYLES']['ESCAPE_CHAR'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['ESCAPE_CHAR'])) { + // NEW: since 1.0.8 we have to handle hardescapes + if ($group == 'HARD') { + $group = '_h'; + } $stylesheet .= "$selector.es$group {{$styles}}\n"; } } @@ -4084,6 +4094,10 @@ } foreach ($this->language_data['STYLES']['STRINGS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['STRINGS'])) { + // NEW: since 1.0.8 we have to handle hardquotes + if ($group == 'HARD') { + $group = '_h'; + } $stylesheet .= "$selector.st$group {{$styles}}\n"; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-29 21:15:11
|
Revision: 1672 http://geshi.svn.sourceforge.net/geshi/?rev=1672&view=rev Author: milianw Date: 2008-07-29 21:15:18 +0000 (Tue, 29 Jul 2008) Log Message: ----------- fix: ampersands need to be properly escaped in URLS Modified Paths: -------------- trunk/geshi-1.0.X/src/contrib/langcheck.php trunk/geshi-1.0.X/src/geshi/actionscript3.php trunk/geshi-1.0.X/src/geshi/eiffel.php trunk/geshi-1.0.X/src/geshi/gnuplot.php trunk/geshi-1.0.X/src/geshi/groovy.php Modified: trunk/geshi-1.0.X/src/contrib/langcheck.php =================================================================== --- trunk/geshi-1.0.X/src/contrib/langcheck.php 2008-07-29 21:08:06 UTC (rev 1671) +++ trunk/geshi-1.0.X/src/contrib/langcheck.php 2008-07-29 21:15:18 UTC (rev 1672) @@ -346,6 +346,8 @@ report_error(TYPE_WARNING, "Language file contains an key '$url_key' in \$language_data['URLS'] that is not integer!"); } else if (!is_string($url_value)) { report_error(TYPE_ERROR, "Language file contains a Documentation URL specification for \$language_data['URLS']['$url_value'] which is not a string!"); + } else if (preg_match('#&([^;]*(=|$))#U', $url_value)) { + report_error(TYPE_ERROR, "Language file contains unescaped ampersands (&) in \$language_data['URLS']!"); } } } Modified: trunk/geshi-1.0.X/src/geshi/actionscript3.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/actionscript3.php 2008-07-29 21:08:06 UTC (rev 1671) +++ trunk/geshi-1.0.X/src/geshi/actionscript3.php 2008-07-29 21:15:18 UTC (rev 1672) @@ -443,7 +443,7 @@ 2 => '', 3 => '', 4 => '', - 5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html&filter=0&num=100&btnI=lucky', + 5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html&filter=0&num=100&btnI=lucky', 6 => '', 7 => '', 8 => '' Modified: trunk/geshi-1.0.X/src/geshi/eiffel.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/eiffel.php 2008-07-29 21:08:06 UTC (rev 1671) +++ trunk/geshi-1.0.X/src/geshi/eiffel.php 2008-07-29 21:15:18 UTC (rev 1672) @@ -376,7 +376,7 @@ 1 => '', 2 => '', 3 => '', - 4 => 'http://www.google.com/search?q=site%3Ahttp%3A%2F%2Fdocs.eiffel.com%2Feiffelstudio%2Flibraries+{FNAMEL}&btnI=I%27m+Feeling+Lucky', + 4 => 'http://www.google.com/search?q=site%3Ahttp%3A%2F%2Fdocs.eiffel.com%2Feiffelstudio%2Flibraries+{FNAMEL}&btnI=I%27m+Feeling+Lucky', 5 => '' ), 'OOLANG' => true, Modified: trunk/geshi-1.0.X/src/geshi/gnuplot.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/gnuplot.php 2008-07-29 21:08:06 UTC (rev 1671) +++ trunk/geshi-1.0.X/src/geshi/gnuplot.php 2008-07-29 21:15:18 UTC (rev 1672) @@ -265,7 +265,7 @@ ), 'URLS' => array( 1 => '', - 2 => 'http://www.google.com/search?q=%22set+{FNAME}%22+site%3Ahttp%3A%2F%2Fwww.gnuplot.info%2Fdocs%2F&btnI=lucky', + 2 => 'http://www.google.com/search?q=%22set+{FNAME}%22+site%3Ahttp%3A%2F%2Fwww.gnuplot.info%2Fdocs%2F&btnI=lucky', 3 => '', 4 => '', 5 => '' Modified: trunk/geshi-1.0.X/src/geshi/groovy.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/groovy.php 2008-07-29 21:08:06 UTC (rev 1671) +++ trunk/geshi-1.0.X/src/geshi/groovy.php 2008-07-29 21:15:18 UTC (rev 1672) @@ -985,7 +985,7 @@ 'URLS' => array( 1 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', 2 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', - 3 => 'http://www.google.de/search?as_q={FNAME}&num=100&hl=en&as_occt=url&as_sitesearch=java.sun.com%2Fj2se%2F1.5.0%2Fdocs%2Fapi%2F', + 3 => 'http://www.google.de/search?as_q={FNAME}&num=100&hl=en&as_occt=url&as_sitesearch=java.sun.com%2Fj2se%2F1.5.0%2Fdocs%2Fapi%2F', 4 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', 5 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', 6 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-07-30 19:37:08
|
Revision: 1687 http://geshi.svn.sourceforge.net/geshi/?rev=1687&view=rev Author: milianw Date: 2008-07-30 19:37:14 +0000 (Wed, 30 Jul 2008) Log Message: ----------- chg: make geshi's constructor arguments optional Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-30 19:32:18 UTC (rev 1686) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-07-30 19:37:14 UTC (rev 1687) @@ -26,6 +26,7 @@ * Progress (Marco Aurelio de Pasqual) * TypoScript (Jan-Philipp Halle) * Xorg configuration (milian) + - Make GeSHi's constructor arguments optional, so something like `$foo = new GeSHi;` is possible. (milian) - Added an optimizer for lists to regular expressions. Using these cached lists results in a speedup of approx. 50%. The slightly increased memory consumption (~150KB for PHP language file) is more than worth it! (milian) - Some more memory & speed optimizations all over GeSHi (milian) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-07-30 19:32:18 UTC (rev 1686) +++ trunk/geshi-1.0.X/src/geshi.php 2008-07-30 19:37:14 UTC (rev 1687) @@ -578,10 +578,14 @@ * {@link GeSHi->set_language_path()} * @since 1.0.0 */ - function GeSHi($source, $language, $path = '') { - $this->set_source($source); + function GeSHi($source = '', $language = '', $path = '') { + if (!empty($source)) { + $this->set_source($source); + } + if (!empty($language)) { + $this->set_language($language); + } $this->set_language_path($path); - $this->set_language($language); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-08-01 21:29:45
|
Revision: 1691 http://geshi.svn.sourceforge.net/geshi/?rev=1691&view=rev Author: benbe Date: 2008-08-01 21:29:53 +0000 (Fri, 01 Aug 2008) Log Message: ----------- add: Language File for PIC16xxx microcontroller assembler (Phil Mattison) Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/docs/THANKS Added Paths: ----------- trunk/geshi-1.0.X/src/geshi/pic16.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-01 19:49:09 UTC (rev 1690) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-01 21:29:53 UTC (rev 1691) @@ -21,6 +21,7 @@ * Gnuplot (milian) * KLoneC (Mickael Auger) * KLoneC++ (Mickael Auger) + * PIC16xxx assembler (Phil Mattison) * POV-Ray (Carl Fürstenberg) * PowerShell (Frode Aarebrot) * Progress (Marco Aurelio de Pasqual) Modified: trunk/geshi-1.0.X/src/docs/THANKS =================================================================== --- trunk/geshi-1.0.X/src/docs/THANKS 2008-08-01 19:49:09 UTC (rev 1690) +++ trunk/geshi-1.0.X/src/docs/THANKS 2008-08-01 21:29:53 UTC (rev 1691) @@ -106,6 +106,7 @@ - Oracle 8 Guy Wicks - Pascal Tux - Perl Andreas Gohr, Ben Keen +- PIC16xxx assembler Phil Mattison - PL/SQL Victor Engmark - POV-Ray Carl Fürstenberg - PowerShell Frode Aarebrot Added: trunk/geshi-1.0.X/src/geshi/pic16.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/pic16.php (rev 0) +++ trunk/geshi-1.0.X/src/geshi/pic16.php 2008-08-01 21:29:53 UTC (rev 1691) @@ -0,0 +1,141 @@ +<?php +/************************************************************************************* + * pic16.php + * ------- + * Author: Phil Mattison (mat...@oh...) + * Copyright: (c) 2008 Ohmikron Corp. (http://www.ohmikron.com/) + * Release Version: 1.0 + * Date Started: 2008/07/30 + * + * PIC16 Assembler language file for GeSHi. + * + * CHANGES + * ------- + * 2008/07/30 (1.0.0) + * - First Release + * + * TODO (updated 2008/07/30) + * ------------------------- + * + ************************************************************************************* + * + * This file is part of GeSHi. + * + * GeSHi is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * GeSHi is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GeSHi; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + ************************************************************************************/ + +$language_data = array ( + 'LANG_NAME' => 'PIC16', + 'COMMENT_SINGLE' => array(1 => ';'), + 'COMMENT_MULTI' => array(), + 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, + 'QUOTEMARKS' => array("'", '"'), + 'ESCAPE_CHAR' => '\\', + 'KEYWORDS' => array( + /*Instructions*/ + 1 => array( + 'addcf','adddcf','addlw','addwf','andlw','andwf','bc','bcf','bdc', + 'bnc','bndc','bnz','bsf','btfsc','btfss','bz','call','clrc','clrdc', + 'clrf','clrw','clrwdt','clrz','comf','decf','goto','incf','incfsz', + 'iorlw','iorwf','lcall','lgoto','movf','movfw','movlw','movwf', + 'option','negf','nop','retfie','retlw','return','rlf','rrf','setc', + 'setdc','setz','skpc','skpdc','skpnc','skpndc','skpnz','skpz', + 'sleep','subcf','subdcf','sublw','subwf','swapf','tris','tstf', + 'xorlw','xorwf' + ), + /*Registers*/ + 2 => array( + 'INDF','TMR0','OPTION','PCL','STATUS','FSR','PORTA','PORTB','PORTC', + 'PORTD','PORTE','PORTF','TRISA','TRISB','TRISC','TRISD','TRISE', + 'TRISF','PCLATH','INTCON','PIR1','PIE1','PCON','CMCON','VRCON', + 'F','W' + ), + /*Directives*/ + 3 => array( + '_BADRAM','BANKISEL','BANKSEL','CBLOCK','CODE','_CONFIG','CONSTANT', + 'DA','DATA','DB','DE','#DEFINE','DT','DW','ELSE','END','ENDC', + 'ENDIF','ENDM','ENDW','EQU','ERROR','ERRORLEVEL','EXITM','EXPAND', + 'EXTERN','FILL','GLOBAL','IDATA','_IDLOCS','IF','IFDEF','IFNDEF', + 'INCLUDE','#INCLUDE','LIST','LOCAL','MACRO','_MAXRAM','MESSG', + 'NOEXPAND','NOLIST','ORG','PAGE','PAGESEL','PROCESSOR','RADIX', + 'RES','SET','SPACE','SUBTITLE','TITLE','UDATA','UDATA_ACS', + 'UDATA_OVR','UDATA_SHR','#UNDEFINE','VARIABLE','WHILE', + 'D','H','O','B','A' + ), + ), + 'SYMBOLS' => array('=','.',',',':'), + 'CASE_SENSITIVE' => array( + GESHI_COMMENTS => false, + 1 => false, + 2 => false, + 3 => false + ), + 'STYLES' => array( + 'KEYWORDS' => array( + 1 => 'color: #0000a0; font-weight: bold;', + 2 => 'color: #aa3300; font-weight: bold;', + 3 => 'color: #0000ff;', + ), + 'COMMENTS' => array( + 1 => 'color: #00a000;' + ), + 'ESCAPE_CHAR' => array( + 0 => 'color: #ff0000;' + ), + 'BRACKETS' => array( + 0 => 'color: #0000ff;' + ), + 'STRINGS' => array( + 0 => 'color: #ff7700;' + ), + 'NUMBERS' => array( + 0 => 'color: #ff7700;' + ), + 'METHODS' => array( + ), + 'SYMBOLS' => array( + 0 => 'color: #7777ff;' + ), + 'REGEXPS' => array(), + 'SCRIPT' => array() + ), + 'URLS' => array( + 1 => '', + 2 => '', + 3 => '' + ), + 'OOLANG' => false, + 'OBJECT_SPLITTERS' => array(), + 'NUMBERS' => + GESHI_NUMBER_INT_BASIC | + GESHI_NUMBER_BIN_SUFFIX | + GESHI_NUMBER_HEX_PREFIX | + GESHI_NUMBER_HEX_SUFFIX, + 'REGEXPS' => array( + ), + 'STRICT_MODE_APPLIES' => GESHI_NEVER, + 'SCRIPT_DELIMITERS' => array(), + 'HIGHLIGHT_STRICT_BLOCK' => array(), + 'TAB_WIDTH' => 4, + 'PARSER_CONTROL' => array( + 'KEYWORDS' => array( + 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", + 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%" + ) + ) +); + +?> Property changes on: trunk/geshi-1.0.X/src/geshi/pic16.php ___________________________________________________________________ Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-08-07 00:31:33
|
Revision: 1708 http://geshi.svn.sourceforge.net/geshi/?rev=1708&view=rev Author: benbe Date: 2008-08-07 00:31:43 +0000 (Thu, 07 Aug 2008) Log Message: ----------- fix: Proper Multi-byte character handling using the mb_* functions Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-07 00:07:08 UTC (rev 1707) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-07 00:31:43 UTC (rev 1708) @@ -61,6 +61,7 @@ - The overall_class is now up to the user, and the language-code is _always_ added as a class (milian) - Fixed Economy Mode for GeSHi::get_stylesheet() - now it just makes so much more sense! (milian) - Fixed Economy Mode when COMMENT_REGEXP are used (BenBE) + - Changed the default encoding to use UTF-8, due to SF#2037598, BenBE) - Improved overall string support: * Added support for multichar string delimiters (SF#1932083, BenBE) * Fixed problems of unfinished strings and comments producing invalid XHTML (SF#1996353, BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-08-07 00:07:08 UTC (rev 1707) +++ trunk/geshi-1.0.X/src/geshi.php 2008-08-07 00:31:43 UTC (rev 1708) @@ -506,10 +506,10 @@ /** * The encoding to use for entity encoding - * NOTE: no longer used + * NOTE: Used with Escape Char Sequences to fix UTF-8 handling (cf. SF#2037598) * @var string */ - var $encoding = 'ISO-8859-1'; + var $encoding = 'utf-8'; /** * Should keywords be linked? @@ -1687,7 +1687,7 @@ */ function set_encoding($encoding) { if ($encoding) { - $this->encoding = $encoding; + $this->encoding = strtolower($encoding); } } @@ -2344,14 +2344,12 @@ if ($es_char == "\n") { // don't put a newline around newlines $new_string .= "</span>\n"; - } else if (!GESHI_PHP_PRE_433 && ord($es_char) >= 128) { - //This is an extended char (UTF8 or single byte) - //THIS IS A HACK TO WORK AROUND SF#2037598 ... - //Improved UTF8 recognition according to: - //http://www.w3.org/International/questions/qa-forms-utf-8 - preg_match("/[\xC2-\xDF][\x80-\xBF]|\xE0[\xA0-\xBF][\x80-\xBF]|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}|\xED[\x80-\x9F][\x80-\xBF]|\xF0[\x90-\xBF][\x80-\xBF]{2}|[\xF1-\xF3][\x80-\xBF]{3}|\xF4[\x80-\x8F][\x80-\xBF]{2}|./s", $string, $es_char_m, null, $es_pos+1); - $new_string .= $es_char_m[0] . '</span>'; - $es_pos += strlen($es_char_m[0]) - 1; + } else if (ord($es_char) >= 128) { + //This is an non-ASCII char (UTF8 or single byte) + //This code tries to work around SF#2037598 ... + $es_char_m = mb_substr(substr($string, $es_pos+1, 16), 0, 1, $this->encoding); + $new_string .= $es_char_m . '</span>'; + $es_pos += strlen($es_char_m) - 1; } else { $new_string .= $this->hsc($string[$es_pos + 1]) . '</span>'; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-08-08 13:06:28
|
Revision: 1726 http://geshi.svn.sourceforge.net/geshi/?rev=1726&view=rev Author: benbe Date: 2008-08-08 13:06:26 +0000 (Fri, 08 Aug 2008) Log Message: ----------- bmp: Version Bump for language files and GeSHi itself Modified Paths: -------------- trunk/geshi-1.0.X/src/geshi/abap.php trunk/geshi-1.0.X/src/geshi/actionscript.php trunk/geshi-1.0.X/src/geshi/actionscript3.php trunk/geshi-1.0.X/src/geshi/ada.php trunk/geshi-1.0.X/src/geshi/apache.php trunk/geshi-1.0.X/src/geshi/applescript.php trunk/geshi-1.0.X/src/geshi/asm.php trunk/geshi-1.0.X/src/geshi/asp.php trunk/geshi-1.0.X/src/geshi/autoit.php trunk/geshi-1.0.X/src/geshi/bash.php trunk/geshi-1.0.X/src/geshi/basic4gl.php trunk/geshi-1.0.X/src/geshi/blitzbasic.php trunk/geshi-1.0.X/src/geshi/bnf.php trunk/geshi-1.0.X/src/geshi/c.php trunk/geshi-1.0.X/src/geshi/c_mac.php trunk/geshi-1.0.X/src/geshi/caddcl.php trunk/geshi-1.0.X/src/geshi/cadlisp.php trunk/geshi-1.0.X/src/geshi/cfdg.php trunk/geshi-1.0.X/src/geshi/cfm.php trunk/geshi-1.0.X/src/geshi/cpp-qt.php trunk/geshi-1.0.X/src/geshi/cpp.php trunk/geshi-1.0.X/src/geshi/csharp.php trunk/geshi-1.0.X/src/geshi/css.php trunk/geshi-1.0.X/src/geshi/d.php trunk/geshi-1.0.X/src/geshi/delphi.php trunk/geshi-1.0.X/src/geshi/diff.php trunk/geshi-1.0.X/src/geshi/div.php trunk/geshi-1.0.X/src/geshi/dos.php trunk/geshi-1.0.X/src/geshi/dot.php trunk/geshi-1.0.X/src/geshi/eiffel.php trunk/geshi-1.0.X/src/geshi/fortran.php trunk/geshi-1.0.X/src/geshi/freebasic.php trunk/geshi-1.0.X/src/geshi/genero.php trunk/geshi-1.0.X/src/geshi/gettext.php trunk/geshi-1.0.X/src/geshi/glsl.php trunk/geshi-1.0.X/src/geshi/gml.php trunk/geshi-1.0.X/src/geshi/groovy.php trunk/geshi-1.0.X/src/geshi/haskell.php trunk/geshi-1.0.X/src/geshi/html4strict.php trunk/geshi-1.0.X/src/geshi/idl.php trunk/geshi-1.0.X/src/geshi/ini.php trunk/geshi-1.0.X/src/geshi/inno.php trunk/geshi-1.0.X/src/geshi/io.php trunk/geshi-1.0.X/src/geshi/java.php trunk/geshi-1.0.X/src/geshi/java5.php trunk/geshi-1.0.X/src/geshi/javascript.php trunk/geshi-1.0.X/src/geshi/kixtart.php trunk/geshi-1.0.X/src/geshi/latex.php trunk/geshi-1.0.X/src/geshi/lisp.php trunk/geshi-1.0.X/src/geshi/lotusformulas.php trunk/geshi-1.0.X/src/geshi/lotusscript.php trunk/geshi-1.0.X/src/geshi/lua.php trunk/geshi-1.0.X/src/geshi/m68k.php trunk/geshi-1.0.X/src/geshi/matlab.php trunk/geshi-1.0.X/src/geshi/mirc.php trunk/geshi-1.0.X/src/geshi/mpasm.php trunk/geshi-1.0.X/src/geshi/mxml.php trunk/geshi-1.0.X/src/geshi/mysql.php trunk/geshi-1.0.X/src/geshi/nsis.php trunk/geshi-1.0.X/src/geshi/ocaml-brief.php trunk/geshi-1.0.X/src/geshi/ocaml.php trunk/geshi-1.0.X/src/geshi/oobas.php trunk/geshi-1.0.X/src/geshi/oracle8.php trunk/geshi-1.0.X/src/geshi/pascal.php trunk/geshi-1.0.X/src/geshi/per.php trunk/geshi-1.0.X/src/geshi/perl.php trunk/geshi-1.0.X/src/geshi/php-brief.php trunk/geshi-1.0.X/src/geshi/php.php trunk/geshi-1.0.X/src/geshi/pic16.php trunk/geshi-1.0.X/src/geshi/plsql.php trunk/geshi-1.0.X/src/geshi/povray.php trunk/geshi-1.0.X/src/geshi/python.php trunk/geshi-1.0.X/src/geshi/qbasic.php trunk/geshi-1.0.X/src/geshi/rails.php trunk/geshi-1.0.X/src/geshi/reg.php trunk/geshi-1.0.X/src/geshi/robots.php trunk/geshi-1.0.X/src/geshi/ruby.php trunk/geshi-1.0.X/src/geshi/sas.php trunk/geshi-1.0.X/src/geshi/scala.php trunk/geshi-1.0.X/src/geshi/scheme.php trunk/geshi-1.0.X/src/geshi/sdlbasic.php trunk/geshi-1.0.X/src/geshi/smalltalk.php trunk/geshi-1.0.X/src/geshi/smarty.php trunk/geshi-1.0.X/src/geshi/sql.php trunk/geshi-1.0.X/src/geshi/tcl.php trunk/geshi-1.0.X/src/geshi/text.php trunk/geshi-1.0.X/src/geshi/thinbasic.php trunk/geshi-1.0.X/src/geshi/tsql.php trunk/geshi-1.0.X/src/geshi/vb.php trunk/geshi-1.0.X/src/geshi/vbnet.php trunk/geshi-1.0.X/src/geshi/verilog.php trunk/geshi-1.0.X/src/geshi/vhdl.php trunk/geshi-1.0.X/src/geshi/visualfoxpro.php trunk/geshi-1.0.X/src/geshi/winbatch.php trunk/geshi-1.0.X/src/geshi/xml.php trunk/geshi-1.0.X/src/geshi/xpp.php trunk/geshi-1.0.X/src/geshi/z80.php trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/geshi/abap.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/abap.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/abap.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Andres Picazo (an...@an...) * Copyright: (c) 2007 Andres Picazo - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * ABAP language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/actionscript.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/actionscript.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/actionscript.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------------- * Author: Steffen Krause (Ste...@mu...) * Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/20 * * Actionscript language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/actionscript3.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/actionscript3.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/actionscript3.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------------- * Author: Jordi Boggiano (j.b...@se...) * Copyright: (c) 2007 Jordi Boggiano (http://www.seld.be/), Benny Baumann (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/11/26 * * ActionScript3 language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/ada.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/ada.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/ada.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Tux (tu...@in...) * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/29 * * Ada language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/apache.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/apache.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/apache.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Tux (tu...@in...) * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/29/07 * * Apache language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/applescript.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/applescript.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/applescript.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Stephan Klimek (http://www.initware.org) * Copyright: Stephan Klimek (http://www.initware.org) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/07/20 * * AppleScript language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/asm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/asm.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/asm.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Tux (tu...@in...) * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/27 * * x86 Assembler language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/asp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/asp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/asp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Amit Gupta (http://blog.igeek.info/) * Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/13 * * ASP language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/autoit.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/autoit.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/autoit.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: big_daddy (rob...@gm...) * Copyright: (c) 2006 and to GESHi ;) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/01/26 * * AutoIT language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/bash.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/bash.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/bash.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Andreas Gohr (an...@sp...) * Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/20 * * BASH language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/basic4gl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/basic4gl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/basic4gl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------------------------------- * Author: Matthew Webb (bma...@bl...) * Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/09/15 * * Basic4GL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/blitzbasic.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/blitzbasic.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/blitzbasic.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------------- * Author: P�draig O`Connel (in...@mo...) * Copyright: (c) 2005 P�draig O`Connel (http://moonsword.info) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 16.10.2005 * * BlitzBasic language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/bnf.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/bnf.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/bnf.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Rowan Rodrik van der Molen (ro...@bi...) * Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/09/28 * * BNF (Backus-Naur form) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/c.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/c.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/c.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -6,7 +6,7 @@ * Contributors: * - Jack Lloyd (ll...@ra...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * C language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/c_mac.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/c_mac.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/c_mac.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: M. Uli Kusterer (wit...@gm...) * Copyright: (c) 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * C for Macs language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/caddcl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/caddcl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/caddcl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * CAD DCL (Dialog Control Language) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/cadlisp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cadlisp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/cadlisp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/blog) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * AutoCAD/IntelliCAD Lisp language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/cfdg.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfdg.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/cfdg.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: John Horigan <jo...@gl...> * Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/ - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/03/11 * * CFDG language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/cfm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cfm.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/cfm.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Diego * Copyright: (c) 2006 Diego - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/02/25 * * ColdFusion language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/cpp-qt.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cpp-qt.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/cpp-qt.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Iulian M * Copyright: (c) 2006 Iulian M - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/09/27 * * C++ (with QT extensions) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/cpp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/cpp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/cpp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -7,7 +7,7 @@ * - M. Uli Kusterer (wit...@gm...) * - Jack Lloyd (ll...@ra...) * Copyright: (c) 2004 Dennis Bayer, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/09/27 * * C++ language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/csharp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/csharp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/csharp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Alan Juden (al...@ju...) * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * C# language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/css.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/css.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/css.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/18 * * CSS language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/d.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/d.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/d.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----- * Author: Thomas Kuehne (th...@ku...) * Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/04/22 * * D language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/delphi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/delphi.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/delphi.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: J�rja Norbert (jn...@vi...), Benny Baumann (Be...@om...) * Copyright: (c) 2004 J�rja Norbert, Benny Baumann (Be...@om...), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/26 * * Delphi (Object Pascal) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/diff.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/diff.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/diff.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Conny Brunnkvist (co...@fu...), W. Tasin (ta...@fh...) * Copyright: (c) 2004 Fuchsia Open Source Solutions (http://www.fuchsia.se/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/12/29 * * Diff-output language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/div.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/div.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/div.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------------------------------- * Author: Gabriel Lorenzo (erm...@gm...) * Copyright: (c) 2005 Gabriel Lorenzo (http://ermakina.gazpachito.net) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/06/19 * * DIV language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/dos.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/dos.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/dos.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Alessandro Staltari (sta...@ge...) * Copyright: (c) 2005 Alessandro Staltari (http://www.geocities.com/SiliconValley/Vista/8155/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/07/05 * * DOS language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/dot.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/dot.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/dot.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------------------------------- * Author: Adrien Friggeri (ad...@fr...) * Copyright: (c) 2007 Adrien Friggeri (http://www.friggeri.net) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/05/30 * * dot language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/eiffel.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/eiffel.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/eiffel.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Zoran Simic (zs...@ax...) * Copyright: (c) 2005 Zoran Simic - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/06/30 * * Eiffel language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/fortran.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/fortran.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/fortran.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----------- * Author: Cedric Arrabie (ced...@un...) * Copyright: (C) 2006 Cetric Arrabie - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/04/22 * * Fortran language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/freebasic.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/freebasic.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/freebasic.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------- * Author: Roberto Rossi * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/08/19 * * FreeBasic (http://www.freebasic.net/) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/genero.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/genero.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/genero.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Lars Gersmann (lar...@gm...) * Copyright: (c) 2007 Lars Gersmann, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/07/01 * * Genero (FOURJ's Genero 4GL) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/gettext.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/gettext.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/gettext.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Milian Wolff (ma...@mi...) * Copyright: (c) 2008 Milian Wolff - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/05/25 * * GNU Gettext .po/.pot language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/glsl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/glsl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/glsl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----- * Author: Benny Baumann (Be...@om...) * Copyright: (c) 2008 Benny Baumann (Be...@om...) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/03/20 * * glSlang language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/gml.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/gml.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/gml.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Jos� Jorge Enr�quez (jen...@us...) * Copyright: (c) 2005 Jos� Jorge Enr�quez Rodr�guez (http://www.zonamakers.com) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/06/21 * * GML language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/groovy.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/groovy.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/groovy.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Ivan F. Villanueva B. (ges...@ar...) * Copyright: (c) 2006 Ivan F. Villanueva B.(http://www.artificialidea.com) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/04/29 * * Groovy language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/haskell.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/haskell.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/haskell.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Jason Dagit (da...@co...) based on ocaml.php by Flaie (fir...@gm...) * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/08/27 * * Haskell language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/html4strict.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/html4strict.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/10 * * HTML 4.01 strict language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/idl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/idl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/idl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Cedric Bosdonnat (ced...@op...) * Copyright: (c) 2006 Cedric Bosdonnat - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/08/20 * * Unoidl language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/ini.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/ini.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/ini.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: deguix (cev...@ya...) * Copyright: (c) 2005 deguix - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/03/27 * * INI language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/inno.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/inno.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/inno.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Thomas Klingler (ho...@th...) based on delphi.php from J�rja Norbert (jn...@vi...) * Copyright: (c) 2004 J�rja Norbert, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/07/29 * * Inno Script language inkl. Delphi (Object Pascal) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/io.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/io.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/io.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2006 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/09/23 * * Io language file for GeSHi. Thanks to Johnathan Wright for the suggestion and help Modified: trunk/geshi-1.0.X/src/geshi/java.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/java.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/java.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/10 * * Java language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/java5.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/java5.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/java5.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/10 * * Java language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/javascript.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/javascript.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/javascript.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------------- * Author: Ben Keen (ben...@gm...) * Copyright: (c) 2004 Ben Keen (ben...@gm...), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/20 * * JavaScript language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/kixtart.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/kixtart.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/kixtart.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Riley McArdle (ri...@gl...) * Copyright: (c) 2007 Riley McArdle (http://www.glyff.net/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/08/31 * * PHP language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/latex.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/latex.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/latex.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----- * Author: efi, Matthias Pospiech (ma...@ma...) * Copyright: (c) 2006 efi, Matthias Pospiech (ma...@ma...), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/09/23 * * LaTeX language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/lisp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/lisp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/lisp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * Generic Lisp language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/lotusformulas.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/lotusformulas.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/lotusformulas.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------------------ * Author: Richard Civil (in...@ri...) * Copyright: (c) 2008 Richard Civil (in...@ri...), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/04/12 * * @Formula/@Command language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/lotusscript.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/lotusscript.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/lotusscript.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------------------ * Author: Richard Civil (in...@ri...) * Copyright: (c) 2008 Richard Civil (in...@ri...), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/04/12 * * LotusScript language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/lua.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/lua.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/lua.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/10 * * LUA language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/m68k.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/m68k.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/m68k.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Benny Baumann (Be...@om...) * Copyright: (c) 2007 Benny Baumann (http://www.omorphia.de/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/02/06 * * Motorola 68000 Assembler language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/matlab.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/matlab.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/matlab.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----------- * Author: Florian Knorn (fl...@gm...) * Copyright: (c) 2004 Florian Knorn (http://www.florian-knorn.com) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/02/09 * * Matlab M-file language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/mirc.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/mirc.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/mirc.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----- * Author: Alberto 'Birckin' de Areba (Bi...@ho...) * Copyright: (c) 2006 Alberto de Areba - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/05/29 * * mIRC Scripting language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/mpasm.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/mpasm.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/mpasm.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: Bakalex (ba...@gm...) * Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/12/6 * * Microchip Assembler language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/mxml.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/mxml.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/mxml.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: David Spurr * Copyright: (c) 2007 David Spurr (http://www.defusion.org.uk/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/10/04 * * MXML language file for GeSHi. Based on the XML file by Nigel McNie Modified: trunk/geshi-1.0.X/src/geshi/mysql.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/mysql.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/mysql.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: Carl F�rstenberg (az...@gm...) * Copyright: (c) 2005 Carl F�rstenberg, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * MySQL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/nsis.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/nsis.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/nsis.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: deguix (cev...@ya...), Tux (http://tux.a4.cz/) * Copyright: (c) 2005 deguix, 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/12/03 * * Nullsoft Scriptable Install System language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/ocaml-brief.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/ocaml-brief.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/ocaml-brief.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Flaie (fir...@gm...) * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/08/27 * * OCaml (Objective Caml) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/ocaml.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/ocaml.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/ocaml.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Flaie (fir...@gm...) * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/08/27 * * OCaml (Objective Caml) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/oobas.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/oobas.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/oobas.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * OpenOffice.org Basic language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/oracle8.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/oracle8.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/oracle8.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----------- * Author: Guy Wicks (Guy...@rb...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * Oracle 8 language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/pascal.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/pascal.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/pascal.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Tux (tu...@in...) * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/26 * * Pascal language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/per.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/per.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/per.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Lars Gersmann (lar...@gm...) * Copyright: (c) 2007 Lars Gersmann - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/06/03 * * Per (forms) (FOURJ's Genero 4GL) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/perl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/perl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/perl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Andreas Gohr (an...@sp...), Ben Keen (ben...@gm...) * Copyright: (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/20 * * Perl language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/php-brief.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php-brief.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/php-brief.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/02 * * PHP (brief version) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/php.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/php.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/php.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/20 * * PHP language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/pic16.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/pic16.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/pic16.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,14 +4,14 @@ * ------- * Author: Phil Mattison (mat...@oh...) * Copyright: (c) 2008 Ohmikron Corp. (http://www.ohmikron.com/) - * Release Version: 1.0 + * Release Version: 1.0.8 * Date Started: 2008/07/30 * * PIC16 Assembler language file for GeSHi. * * CHANGES * ------- - * 2008/07/30 (1.0.0) + * 2008/07/30 (1.0.8) * - First Release * * TODO (updated 2008/07/30) Modified: trunk/geshi-1.0.X/src/geshi/plsql.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/plsql.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/plsql.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Victor Engmark <vic...@gm...> * Copyright: (c) 2006 Victor Engmark (http://l0b0.net/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/10/26 * * Oracle 9.2 PL/SQL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/povray.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/povray.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/povray.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Carl Fürstenberg (az...@gm...) * Copyright: © 2007 Carl Fürstenberg - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/07/11 * * Povray language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/python.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/python.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/python.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * Python language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/qbasic.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/qbasic.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/qbasic.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/20 * * QBasic/QuickBASIC language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/rails.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/rails.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/rails.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: Moises Deniz * Copyright: (c) 2005 Moises Deniz - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/03/21 * * Ruby (with Ruby on Rails Framework) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/reg.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/reg.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/reg.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Sean Hanna (smo...@gm...) * Copyright: (c) 2006 Sean Hanna - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 03/15/2006 * * Microsoft Registry Editor language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/robots.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/robots.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/robots.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Christian Lescuyer (cl...@go...) * Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/02/17 * * robots.txt language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/ruby.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/ruby.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/ruby.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Moises Deniz * Copyright: (c) 2007 Moises Deniz - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/03/21 * * Ruby language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/sas.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/sas.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/sas.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Galen Johnson (sol...@gm...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/12/27 * * SAS language file for GeSHi. Based on the sas vim file. Modified: trunk/geshi-1.0.X/src/geshi/scala.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/scala.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/scala.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Franco Lombardo (fr...@fr...) * Copyright: (c) 2008 Franco Lombardo, Benny Baumann - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/02/08 * * Scala language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/scheme.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/scheme.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/scheme.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Jon Raphaelson (jon...@gm...) * Copyright: (c) 2005 Jon Raphaelson, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * Scheme language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/sdlbasic.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/sdlbasic.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/sdlbasic.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------ * Author: Roberto Rossi * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/08/19 * * sdlBasic (http://sdlbasic.sf.net) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/smalltalk.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/smalltalk.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/smalltalk.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Bananeweizen (Ban...@gm...) * Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/03/27 * * Smalltalk language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/smarty.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/smarty.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/smarty.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------- * Author: Alan Juden (al...@ju...) * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/07/10 * * Smarty template language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/sql.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/sql.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/sql.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * SQL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/tcl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/tcl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/tcl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------------------------------- * Author: Reid van Melle (rva...@gm...) * Copyright: (c) 2004 Reid van Melle (sorry@nowhere) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/05/05 * * TCL/iTCL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/text.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/text.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/text.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Sean Hanna (smo...@gm...) * Copyright: (c) 2006 Sean Hanna - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 04/23/2006 * * Standard Text File (No Syntax Highlighting). Modified: trunk/geshi-1.0.X/src/geshi/thinbasic.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/thinbasic.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/thinbasic.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------ * Author: Eros Olmi (ero...@th...) * Copyright: (c) 2006 Eros Olmi (http://www.thinbasic.com), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/05/12 * * thinBasic language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/tsql.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/tsql.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/tsql.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Duncan Lock (du...@df...) * Copyright: (c) 2006 Duncan Lock (http://dflock.co.uk/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/11/22 * * T-SQL language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/vb.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/vb.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/vb.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------ * Author: Roberto Rossi (rso...@al...) * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/08/30 * * Visual Basic language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/vbnet.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/vbnet.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/vbnet.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * --------- * Author: Alan Juden (al...@ju...) * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/04 * * VB.NET language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/verilog.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/verilog.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/verilog.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ----------- * Author: G�nter Dannoritzer <dan...@we...> * Copyright: (C) 2008 Guenter Dannoritzer - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2008/05/28 * * Verilog language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/vhdl.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/vhdl.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/vhdl.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * -------- * Author: Alexander 'E-Razor' Krause (ad...@er...) * Copyright: (c) 2005 Alexander Krause - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2005/06/15 * * VHDL (VHSICADL, very high speed integrated circuit HDL) language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/visualfoxpro.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/visualfoxpro.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/visualfoxpro.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ---------------- * Author: Roberto Armellin (r.a...@ti...) * Copyright: (c) 2004 Roberto Armellin, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/09/17 * * Visual FoxPro language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/winbatch.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/winbatch.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/winbatch.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------------ * Author: Craig Storey (sto...@gm...) * Copyright: (c) 2004 Craig Storey (craig.xcottawa.ca) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2006/05/19 * * WinBatch language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/xml.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/xml.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/xml.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Nigel McNie (ni...@ge...) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/09/01 * * XML language file for GeSHi. Based on the idea/file by Christian Weiske Modified: trunk/geshi-1.0.X/src/geshi/xpp.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/xpp.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/xpp.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Simon Butcher (si...@bu...) * Copyright: (c) 2007 Simon Butcher (http://simon.butcher.name/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/02/27 * * Axapta/Dynamics Ax X++ language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi/z80.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/z80.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi/z80.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -4,7 +4,7 @@ * ------- * Author: Benny Baumann (Be...@om...) * Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2007/02/06 * * ZiLOG Z80 Assembler language file for GeSHi. Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-08-08 11:56:36 UTC (rev 1725) +++ trunk/geshi-1.0.X/src/geshi.php 2008-08-08 13:06:26 UTC (rev 1726) @@ -41,7 +41,7 @@ // /** The version of this GeSHi file */ -define('GESHI_VERSION', '1.0.7.22'); +define('GESHI_VERSION', '1.0.8'); // Define the root directory for the GeSHi code tree if (!defined('GESHI_ROOT')) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-08-10 13:00:54
|
Revision: 1748 http://geshi.svn.sourceforge.net/geshi/?rev=1748&view=rev Author: benbe Date: 2008-08-10 13:01:03 +0000 (Sun, 10 Aug 2008) Log Message: ----------- add: Missing keywords in Apache highlighter add: New Keyword group in APT sources.list highlighter Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi/apache.php trunk/geshi-1.0.X/src/geshi/apt_sources.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-10 12:38:16 UTC (rev 1747) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-10 13:01:03 UTC (rev 1748) @@ -14,6 +14,9 @@ Version 1.0.8.1 - Fixed broken Escape chars if classes were disabled + - Improvements to language files (BenBE, milian) + * Added MinSpareThread\MaxSpareThreads to Apache highlighter (BenBE) + * Added new Keyword group for APT sources.list highlighter (BenBE) Version 1.0.8 - Added language files * APT sources.list (milian) Modified: trunk/geshi-1.0.X/src/geshi/apache.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/apache.php 2008-08-10 12:38:16 UTC (rev 1747) +++ trunk/geshi-1.0.X/src/geshi/apache.php 2008-08-10 13:01:03 UTC (rev 1748) @@ -88,8 +88,8 @@ 'limitrequestfieldsize','limitrequestline','listen','listenbacklog', 'loadfile','loadmodule','location','locationmatch', 'lockfile','logformat','loglevel','maxclients', - 'maxkeepaliverequests','maxrequestsperchild','maxspareservers','metadir', - 'metafiles','metasuffix','mimemagicfile','minspareservers', + 'maxkeepaliverequests','maxrequestsperchild','maxspareservers','maxsparethreads','metadir', + 'metafiles','metasuffix','mimemagicfile','minspareservers','minsparethreads', 'mmapfile','namevirtualhost','nocache','options','order', 'passenv','php_admin_value','php_admin_flag','php_value','pidfile','port','proxyblock','proxydomain', 'proxypass','proxypassreverse','proxyreceivebuffersize','proxyremote', Modified: trunk/geshi-1.0.X/src/geshi/apt_sources.php =================================================================== --- trunk/geshi-1.0.X/src/geshi/apt_sources.php 2008-08-10 12:38:16 UTC (rev 1747) +++ trunk/geshi-1.0.X/src/geshi/apt_sources.php 2008-08-10 13:01:03 UTC (rev 1748) @@ -51,7 +51,8 @@ 'stable', 'old-stable', 'testing', 'testing-proposed-updates', 'unstable', 'unstable-proposed-updates', 'experimental', 'non-US', 'security', 'volatile', 'volatile-sloppy', - 'main', 'restricted', 'preview', 'apt-build', + 'apt-build', + 'stable/updates', //Debian 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge', 'etch', 'lenny', 'sid', @@ -64,9 +65,12 @@ 'feisty', 'feisty-updates', 'feisty-security', 'feisty-proposed', 'feisty-backports', 'gutsy', 'gutsy-updates', 'gutsy-security', 'gutsy-proposed', 'gutsy-backports', 'hardy', 'hardy-updates', 'hardy-security', 'hardy-proposed', 'hardy-backports', - 'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports', + 'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports' + ), + 3 => array( + 'main', 'restricted', 'preview', 'contrib', 'non-free', 'commercial', 'universe', 'multiverse' - ), + ) ), 'REGEXPS' => array( 0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)", @@ -76,12 +80,14 @@ 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, - 2 => false + 2 => true, + 3 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #00007f;', - 2 => 'color: #b1b100;' + 2 => 'color: #b1b100;', + 3 => 'color: #b16000;' ), 'COMMENTS' => array( 1 => 'color: #adadad; font-style: italic;', @@ -106,7 +112,8 @@ ), 'URLS' => array( 1 => '', - 2 => '' + 2 => '', + 3 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2008-08-10 16:47:38
|
Revision: 1750 http://geshi.svn.sourceforge.net/geshi/?rev=1750&view=rev Author: benbe Date: 2008-08-10 16:47:45 +0000 (Sun, 10 Aug 2008) Log Message: ----------- fix: Problem potentially allowing for Remote Code Inclusion Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-10 14:26:35 UTC (rev 1749) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-10 16:47:45 UTC (rev 1750) @@ -14,6 +14,7 @@ Version 1.0.8.1 - Fixed broken Escape chars if classes were disabled + - Fixed a problem allowing Remote Code Inclusion under certain circumstances (BenBE) - Improvements to language files (BenBE, milian) * Added MinSpareThread\MaxSpareThreads to Apache highlighter (BenBE) * Added new Keyword group for APT sources.list highlighter (BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-08-10 14:26:35 UTC (rev 1749) +++ trunk/geshi-1.0.X/src/geshi.php 2008-08-10 16:47:45 UTC (rev 1750) @@ -52,6 +52,11 @@ @access private */ define('GESHI_LANG_ROOT', GESHI_ROOT . 'geshi' . DIRECTORY_SEPARATOR); +// Define if GeSHi should be paranoid about security +if (!defined('GESHI_SECURITY_PARANOID')) { + /** Tells GeSHi to be paranoid about security settings */ + define('GESHI_SECURITY_PARANOID', false); +} // Line numbers - use with enable_line_numbers() /** Use no line numbers when building the result */ @@ -691,9 +696,31 @@ * so this method will disappear in 1.2.0. */ function set_language_path($path) { + if(strpos($path,':')) { + //Security Fix to prevent external directories using fopen wrappers. + if(DIRECTORY_SEPARATOR == "\\") { + if(!preg_match('#^[a-zA-Z]:#', $path) || false !== strpos($path, ':', 2)) { + return; + } + } else { + return; + } + } + if(preg_match('#[^/a-zA-Z0-9_\.\-\\:]#', $path)) { + //Security Fix to prevent external directories using fopen wrappers. + return; + } + if(GESHI_SECURITY_PARANOID && false !== strpos($path, '/.')) { + //Security Fix to prevent external directories using fopen wrappers. + return; + } + if(GESHI_SECURITY_PARANOID && false !== strpos($path, '..')) { + //Security Fix to prevent external directories using fopen wrappers. + return; + } if ($path) { $this->language_path = ('/' == $path[strlen($path) - 1]) ? $path : $path . '/'; - $this->set_language($this->language); // otherwise set_language_path has no effect + $this->set_language($this->language); // otherwise set_language_path has no effect } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-08-11 18:34:43
|
Revision: 1753 http://geshi.svn.sourceforge.net/geshi/?rev=1753&view=rev Author: milianw Date: 2008-08-11 18:34:43 +0000 (Mon, 11 Aug 2008) Log Message: ----------- fix: SF#2046534: the pre_table header ignored line_numbers_start Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-10 16:52:11 UTC (rev 1752) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-11 18:34:43 UTC (rev 1753) @@ -1,4 +1,4 @@ - + CHANGES - Changelog for GeSHi (geshi.php only) Changes to the code are listed under the version they occured in, with who suggested @@ -14,6 +14,7 @@ Version 1.0.8.1 - Fixed broken Escape chars if classes were disabled + - start_line_numbers_at() was ignored when GESHI_HEADER_PRE_TABLE was set (revulo) - Fixed a problem allowing Remote Code Inclusion under certain circumstances (BenBE) - Improvements to language files (BenBE, milian) * Added MinSpareThread\MaxSpareThreads to Apache highlighter (BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-08-10 16:52:11 UTC (rev 1752) +++ trunk/geshi-1.0.X/src/geshi.php 2008-08-11 18:34:43 UTC (rev 1753) @@ -3678,8 +3678,8 @@ // get linenumbers // we don't merge it with the for below, since it should be better for // memory consumption this way - for ($i = 1; $i <= $n; ++$i) { - $parsed_code .= $i; + for ($i = 0; $i < $n; ++$i) { + $parsed_code .= $this->line_numbers_start + $i; if ($i != $n) { $parsed_code .= "\n"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mi...@us...> - 2008-08-12 18:48:51
|
Revision: 1755 http://geshi.svn.sourceforge.net/geshi/?rev=1755&view=rev Author: milianw Date: 2008-08-12 18:49:00 +0000 (Tue, 12 Aug 2008) Log Message: ----------- fix: use a fugly combination of two tables inside a wrapping table for GESHI_HEADER_PRE_TABLE. this should fix the problems on windows with bold fonts and their font-height TODO: documentation, move header and footer maybe inside the wrapping table? Modified Paths: -------------- trunk/geshi-1.0.X/src/docs/CHANGES trunk/geshi-1.0.X/src/geshi.php Modified: trunk/geshi-1.0.X/src/docs/CHANGES =================================================================== --- trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-12 08:25:32 UTC (rev 1754) +++ trunk/geshi-1.0.X/src/docs/CHANGES 2008-08-12 18:49:00 UTC (rev 1755) @@ -16,6 +16,10 @@ - Fixed broken Escape chars if classes were disabled - start_line_numbers_at() was ignored when GESHI_HEADER_PRE_TABLE was set (revulo) - Fixed a problem allowing Remote Code Inclusion under certain circumstances (BenBE) + - Changed the markup for the (in 1.0.8) new GESHI_HEADER_PRE_TABLE, because on Windows + some fonts had different heights when boldened. The new markup with a wrapping table + which includes two more tables, one for linenumbers and one for the code, should work + even there... (milian) - Improvements to language files (BenBE, milian) * Added MinSpareThread\MaxSpareThreads to Apache highlighter (BenBE) * Added new Keyword group for APT sources.list highlighter (BenBE) Modified: trunk/geshi-1.0.X/src/geshi.php =================================================================== --- trunk/geshi-1.0.X/src/geshi.php 2008-08-12 08:25:32 UTC (rev 1754) +++ trunk/geshi-1.0.X/src/geshi.php 2008-08-12 18:49:00 UTC (rev 1755) @@ -3551,7 +3551,8 @@ } // Add HTML whitespace stuff if we're using the <div> header - if ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) { + if ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID + && $this->header_type != GESHI_HEADER_PRE_TABLE) { $this->indent($parsed_code); } @@ -3572,16 +3573,53 @@ // If we're using line numbers, we insert <li>s and appropriate // markup to style them (otherwise we don't need to do anything) - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { // If we're using the <pre> header, we shouldn't add newlines because // the <pre> will line-break them (and the <li>s already do this for us) - $ls = ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) ? "\n" : ''; + if (in_array($this->header_type, + array(GESHI_HEADER_PRE, GESHI_HEADER_PRE_VALID))) { + $ls = ''; + } else { + $ls = "\n"; + } // Set vars to defaults for following loop $i = 0; // Foreach line... - for ($i = 0, $n = count($code); $i < $n;) { + $n = count($code); + if ($this->header_type == GESHI_HEADER_PRE_TABLE) { + if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { + if ($this->use_classes) { + $attrs = ' class="ln"'; + } else { + $attrs = ' style="'. $this->table_linenumber_style .'"'; + } + $parsed_code .= '<table><tr><td><table'.$attrs.'>'; + // get linenumbers + // we don't merge it with the for below, since it should be better for + // memory consumption this way + for ($i = 0; $i < $n; ++$i) { + if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && + $i % $this->line_nth_row == ($this->line_nth_row - 1)) { + if ($this->use_classes) { + $def_attr = ' class="li2"'; + } else { + $def_attr = ' style="' . $this->line_style2 . '"'; + } + } else { + if ($this->use_classes) { + $def_attr = ' class="li1"'; + } else { + $def_attr = ' style="' . $this->line_style1 . '"'; + } + } + $parsed_code .= "<tr$def_attr><td>".($this->line_numbers_start + $i).'</td></tr>'; + } + $parsed_code .= '</table></td><td><table>'; + } + } + for ($i = 0; $i < $n;) { //Reset the attributes for a new line ... $attrs = array(); @@ -3619,16 +3657,6 @@ } } - //Check which type of tag to insert for this line - if ($this->header_type == GESHI_HEADER_PRE_VALID) { - $start = "<pre$def_attr>"; - $end = '</pre>'; - } else { - // Span or div? - $start = "<div$def_attr>"; - $end = '</div>'; - } - ++$i; // Are we supposed to use ids? If so, add them @@ -3655,9 +3683,25 @@ $attr_string .= ' ' . $key . '="' . implode(' ', $attr) . '"'; } - $parsed_code .= "<li$attr_string>$start{$code[$i-1]}$end</li>$ls"; + //Check which type of tag to insert for this line + if ($this->header_type == GESHI_HEADER_PRE_TABLE) { + $start = "<tr$attr_string><td><pre$def_attr>"; + $end = '</pre></td></tr>'; + } elseif ($this->header_type == GESHI_HEADER_PRE_VALID) { + $start = "<li$attr_string><pre$def_attr>"; + $end = '</pre></li>'; + } else { + // Span or div? + $start = "<li$attr_string><div$def_attr>"; + $end = '</div></li>'; + } + + $parsed_code .= "$start{$code[$i-1]}$end$ls"; unset($code[$i - 1]); } + if ($this->header_type == GESHI_HEADER_PRE_TABLE) { + $parsed_code .= '</table></td></tr></table>'; + } } else { $n = count($code); if ($this->use_classes) { @@ -3667,26 +3711,6 @@ } if ($this->header_type == GESHI_HEADER_PRE_VALID) { $parsed_code .= '<pre'. $attributes .'>'; - } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - if ($this->use_classes) { - $attrs = ' class="ln"'; - } else { - $attrs = ' style="'. $this->table_linenumber_style .'"'; - } - $parsed_code .= '<td'.$attrs.'><pre>'; - // get linenumbers - // we don't merge it with the for below, since it should be better for - // memory consumption this way - for ($i = 0; $i < $n; ++$i) { - $parsed_code .= $this->line_numbers_start + $i; - if ($i != $n) { - $parsed_code .= "\n"; - } - } - $parsed_code .= '</pre></td><td>'; - } - $parsed_code .= '<pre'. $attributes .'>'; } // No line numbers, but still need to handle highlighting lines extra. // Have to use divs so the full width of the code is highlighted @@ -3738,12 +3762,9 @@ unset($code[$i]); } - if ($this->header_type == GESHI_HEADER_PRE_VALID || $this->header_type == GESHI_HEADER_PRE_TABLE) { + if ($this->header_type == GESHI_HEADER_PRE_VALID) { $parsed_code .= '</pre>'; } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - $parsed_code .= '</td>'; - } } $parsed_code .= $this->footer(); @@ -3794,11 +3815,7 @@ } else { $attr = " style=\"{$this->header_content_style}\""; } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - $header = "<thead><tr><td colspan=\"2\" $attr>$header</td></tr></thead>"; - } else { - $header = "<div$attr>$header</div>"; - } + $header = "<div$attr>$header</div>"; } if (GESHI_HEADER_NONE == $this->header_type) { @@ -3816,7 +3833,7 @@ $this->header_type == GESHI_HEADER_PRE_VALID) { return "<div$attributes>$header<ol$ol_attributes>"; } else if ($this->header_type == GESHI_HEADER_PRE_TABLE) { - return "<table$attributes>$header<tbody><tr class=\"li1\">"; + return "<div$attributes>$header"; } } else { if ($this->header_type == GESHI_HEADER_PRE) { @@ -3849,11 +3866,7 @@ } else { $attr = " style=\"{$this->footer_content_style}\""; } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->linenumbers != GESHI_NO_LINE_NUMBERS) { - $footer = "<tfoot><tr><td colspan=\"2\">$footer</td></tr></tfoot>"; - } else { - $footer = "<div$attr>$footer</div>"; - } + $footer = "<div$attr>$footer</div>"; } if (GESHI_HEADER_NONE == $this->header_type) { @@ -3869,7 +3882,7 @@ } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</tr></tbody>$footer</table>"; + return "$footer</div>"; } return ($this->force_code_block ? '</div>' : '') . "$footer</div>"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |