Подсветка синтаксиса для DLE 9.x
Данный материал предоставлен сайтом All4Cms.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Подсветка синтаксиса для DLE 9.x.
Скачать бесплатно Подсветка синтаксиса для DLE 9.x.
И так.
Нам понадобится файл highlight.code.js. Берем его из дистрибутива DLE 9.5 или качаем
highlight.code.zip
MD5: 7d3c2d31ca3112dee057bce8c7a98a14
Скачано: 418, размер: [7,87 Kb], дата: 24 март 2012
1. Распаковываем и заливаем на сайт сохраняя структуру папок.
2. Открываем index.php
Ищем
if ($config['fast_search'] AND $user_group[$member_id['user_group']]['allow_search']) {
$ajax .= <<<HTML
var dle_search_delay = false;
var dle_search_value = '';
$(function(){
FastSearch();
});
HTML;
}
Выше вставляем:
if (strpos ( $tpl->result['content'], "<pre><code>" ) !== false) {
$js_array[] = "engine/classes/highlight/highlight.code.js";
$ajax .= <<<HTML
$(function(){
$('pre code').each(function(i, e) {hljs.highlightBlock(e, null)});
});
HTML;
}
3. Открываем engine/classes/parse.class.php
Ищем:
$source = preg_replace( "#\[code\](.+?)\[/code\]#is", "<!--code1--><div class=\"scriptcode\"><!--ecode1-->\\1<!--code2--></div><!--ecode2-->", $source );
$source = preg_replace( "#\[(left|right|center)\](.+?)\[/\\1\]#is", "<div align=\"\\1\">\\2</div>", $source );
Заменяем на
$source = preg_replace( "#\[code\](.+?)\[/code\]#is", "<pre><code>\\1</code></pre>", $source );
if ( !$parse->allow_code ) {
$source = preg_replace( "#<pre><code>(.+?)</code></pre>#ies", "\$this->clear_p_tag('\\1')", $source );
}
$source = preg_replace( "#\[(left|right|center)\](.+?)\[/\\1\]#is", "<div align=\"\\1\">\\2</div>", $source );
Ищем
$txt = str_replace( "</li><!--dle_li--><li>", '', $txt );
Ниже вставляем:
$txt = str_replace( "<pre><code>", '[code]', $txt );
$txt = str_replace( "</code></pre>", '', $txt );
Снова ищем:
function build_thumb($gurl = "", $url = "", $align = "") {
Вставляем выше:
function clear_p_tag($txt) {
$txt = stripslashes( $txt );
$txt = preg_replace('/<p[^>]*>/', '', $txt);
$txt = str_replace("</p>", "", $txt);
return "<pre><code>".$txt."</code></pre>";
}
Открываем templates/ваш шаблон/style/engine.css и в самый низ добавляем:
/*---подсветка текста в теге [ code ]---*/
pre code {
display: block; padding: 0.5em;
background: #f9fafa;
border: 1px solid #dce7e7;
overflow:auto;
white-space: pre;
}
pre .comment,
pre .template_comment,
pre .diff .header,
pre .doctype,
pre .lisp .string,
pre .javadoc {
color: #93a1a1;
font-style: italic;
}
pre .keyword,
pre .css .rule .keyword,
pre .winutils,
pre .jаvascript .title,
pre .method,
pre .addition,
pre .css .tag,
pre .lisp .title {
color: #859900;
}
pre .number,
pre .command,
pre .string,
pre .tag .value,
pre .phpdoc,
pre .tex .formula,
pre .regexp,
pre .hexcolor {
color: #2aa198;
}
pre .title,
pre .localvars,
pre .function .title,
pre .chunk,
pre .decorator,
pre .builtin,
pre .built_in,
pre .lisp .title,
pre .identifier,
pre .title .keymethods,
pre .id {
color: #268bd2;
}
pre .tag .title,
pre .rules .property,
pre .django .tag .keyword {
font-weight: bold;
}
pre .attribute,
pre .variable,
pre .instancevar,
pre .lisp .body,
pre .smalltalk .number,
pre .constant,
pre .class .title,
pre .parent,
pre .haskell .label {
color: #b58900;
}
pre .preprocessor,
pre .pi,
pre .shebang,
pre .symbol,
pre .diff .change,
pre .special,
pre .keymethods,
pre .attr_selector,
pre .important,
pre .subst,
pre .cdata {
color: #cb4b16;
}
pre .deletion {
color: #dc322f;
}
pre .tex .formula {
background: #eee8d5;
}
Открываем templates/ваш шаблон/preview.css и в самый низ добавьте:
/*---подсветка текста в теге [code]---*/
pre code {
display: block; padding: 0.5em;
background: #f9fafa;
border: 1px solid #dce7e7;
overflow:auto;
white-space: pre;
}
pre .comment,
pre .template_comment,
pre .diff .header,
pre .doctype,
pre .lisp .string,
pre .javadoc {
color: #93a1a1;
font-style: italic;
}
pre .keyword,
pre .css .rule .keyword,
pre .winutils,
pre .jаvascript .title,
pre .method,
pre .addition,
pre .css .tag,
pre .lisp .title {
color: #859900;
}
pre .number,
pre .command,
pre .string,
pre .tag .value,
pre .phpdoc,
pre .tex .formula,
pre .regexp,
pre .hexcolor {
color: #2aa198;
}
pre .title,
pre .localvars,
pre .function .title,
pre .chunk,
pre .decorator,
pre .builtin,
pre .built_in,
pre .lisp .title,
pre .identifier,
pre .title .keymethods,
pre .id {
color: #268bd2;
}
pre .tag .title,
pre .rules .property,
pre .django .tag .keyword {
font-weight: bold;
}
pre .attribute,
pre .variable,
pre .instancevar,
pre .lisp .body,
pre .smalltalk .number,
pre .constant,
pre .class .title,
pre .parent,
pre .haskell .label {
color: #b58900;
}
pre .preprocessor,
pre .pi,
pre .shebang,
pre .symbol,
pre .diff .change,
pre .special,
pre .keymethods,
pre .attr_selector,
pre .important,
pre .subst,
pre .cdata {
color: #cb4b16;
}
pre .deletion {
color: #dc322f;
}
pre .tex .formula {
background: #eee8d5;
}
На этом все.
- DataLife Engine / Хаки и модули
- 24-03-2012, 20:17
- 3 770