ExBB Community » Файловый ExBB » Решение проблем » Подсветка синтаксиса

Страниц (1): [1]
 

1. valualit - 9 апреля 2012 — 14:07 - перейти к сообщению
Дайте пожалуйста рабочую ссылку на:
Установку мода с подсветкой синтаксиса кода и нумерацию строк (нашел только битую ссылку)
2. valualit - 10 апреля 2012 — 08:28 - перейти к сообщению
В общем не дождался ответа, сделал так, если кому-то нужно:
1) Скачал последнюю версию gishi от сюда: http://sourceforge.net/projects/...shi/files/geshi/
2) Загрузил в корень форума папку gishi и файл gishi.php
3) Открыл файл topic.php в корне форума, за строкой:
CODE:
include('./include/common.php');

добавил
CODE:
include_once ("geshi.php");

4) Открыл файл include/fm.class.php
Нашел код
CODE:
$string = preg_replace_callback("#\[code\](.+?)\[/code\]#is",
create_function(
'$matches',
'global $array,$num;
$key = "%__".$num."__%";
$num++;
$array[$key] = "<div class=\"block\"><b>CODE:</b><div class=\"htmlcode\">".$matches[1]."</div></div>";
return $key;'
),$string);


За ним добавил код:
CODE:
$string = preg_replace_callback("#\[code=([^\]]*)\](.+?)\[/code\]#is",
create_function(
'$matches',
'global $array,$num;
$key = "%__".$num."__%";
$num++;
$geshi = new GeSHi(html_entity_decode($matches[2],ENT_QUOTES),$matches[1]);
$array[$key] = "<div class=\"block\"><b>".$matches[1].":</b><div class=\"htmlcode\">".$geshi->parse_code()."</div></div>";
return $key;'
),$string);



Вот и все!

Теперь для подсветки кода, необходимо писать: {code=lang}код{/code}
Фигурные кавычки меняем на квадратные, после равно ставим язык программирования.

!ВНИМАНИЕ
Для безопасности,
CODE:
\[code=([^\]]*)\](.+?)\[/code\]
фрагмент ([^\]]*) заменить на список разрешаемых к переводу языков например:
CODE:
\[code=(php|html|css|javascript|cpp|python)\](.+?)\[/code\]
3. 1Bot - 10 апреля 2012 — 17:01 - перейти к сообщению
Похоже сайт с модом Мод: Подсветка синтаксиса языков программирования Systemnik.Net.Ru форумы переехали на новый адрес.
Но какой?
4. NordWest - 10 апреля 2012 — 21:08 - перейти к сообщению
valualit пишет:
сделал так, если кому-то нужно:
Очень нужно..., спасибо.

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.021]     [ ]