code highlight - some spacing for readability
This commit is contained in:
parent
2f266382c5
commit
b977efc95c
|
@ -2097,33 +2097,44 @@ function format_network_name($network, $url = 0) {
|
||||||
function text_highlight($s,$lang) {
|
function text_highlight($s,$lang) {
|
||||||
if($lang === 'js')
|
if($lang === 'js')
|
||||||
$lang = 'javascript';
|
$lang = 'javascript';
|
||||||
|
|
||||||
if(! strpos('Text_Highlighter',get_include_path())) {
|
if(! strpos('Text_Highlighter',get_include_path())) {
|
||||||
set_include_path(get_include_path() . PATH_SEPARATOR . 'library/Text_Highlighter');
|
set_include_path(get_include_path() . PATH_SEPARATOR . 'library/Text_Highlighter');
|
||||||
}
|
}
|
||||||
|
|
||||||
require_once('library/Text_Highlighter/Text/Highlighter.php');
|
require_once('library/Text_Highlighter/Text/Highlighter.php');
|
||||||
require_once('library/Text_Highlighter/Text/Highlighter/Renderer/Html.php');
|
require_once('library/Text_Highlighter/Text/Highlighter/Renderer/Html.php');
|
||||||
$options = array(
|
$options = array(
|
||||||
'numbers' => HL_NUMBERS_LI,
|
'numbers' => HL_NUMBERS_LI,
|
||||||
'tabsize' => 4,
|
'tabsize' => 4,
|
||||||
);
|
);
|
||||||
|
|
||||||
$tag_added = false;
|
$tag_added = false;
|
||||||
$s = trim(html_entity_decode($s,ENT_COMPAT));
|
$s = trim(html_entity_decode($s,ENT_COMPAT));
|
||||||
$s = str_replace(" ","\t",$s);
|
$s = str_replace(" ","\t",$s);
|
||||||
|
|
||||||
|
// The highlighter library insists on an opening php tag for php code blocks. If
|
||||||
|
// it isn't present, nothing is highlighted. So we're going to see if it's present.
|
||||||
|
// If not, we'll add it, and then quietly remove it after we get the processed output back.
|
||||||
|
|
||||||
if($lang === 'php') {
|
if($lang === 'php') {
|
||||||
if(strpos('<?php',$s) !== 0) {
|
if(strpos('<?php',$s) !== 0) {
|
||||||
$s = '<?php' . "\n" . $s;
|
$s = '<?php' . "\n" . $s;
|
||||||
$tag_added = true;
|
$tag_added = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$renderer = new Text_Highlighter_Renderer_HTML($options);
|
$renderer = new Text_Highlighter_Renderer_HTML($options);
|
||||||
$hl = Text_Highlighter::factory($lang);
|
$hl = Text_Highlighter::factory($lang);
|
||||||
$hl->setRenderer($renderer);
|
$hl->setRenderer($renderer);
|
||||||
$o = $hl->highlight($s);
|
$o = $hl->highlight($s);
|
||||||
$o = str_replace([" ","\n"],[" ",''],$o);
|
$o = str_replace([" ","\n"],[" ",''],$o);
|
||||||
if($tag_added) {
|
|
||||||
$b = substr($o,0,strpos($o,'<li>'));
|
if($tag_added) {
|
||||||
$e = substr($o,strpos($o,'</li>'));
|
$b = substr($o,0,strpos($o,'<li>'));
|
||||||
$o = $b . $e;
|
$e = substr($o,strpos($o,'</li>'));
|
||||||
}
|
$o = $b . $e;
|
||||||
|
}
|
||||||
|
|
||||||
return('<code>' . $o . '</code>');
|
return('<code>' . $o . '</code>');
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue