Скачать и т.д. можно тут: http://xbb.uz/geshi_php_html_css_javascript.html Документация по GeSHi: http://xbb.uz/public/geshi.html В итоге, как можно прикрутить GeSHi к сайту? А именно, производится выборка из БД, имеется текст с кодом, а GeSHi может подсвечивать только определённую переменную, а мне нужно только код во всех текстах О_о После запроса к БД, подставил переменную, которая выводит текст и подсветилось абсолютно всё, даже HTML в исходном коде вылез наружу. Можно ли подсветку реализовать с GeSHi или чем-то другим лучше? Не очень хочется использовать JS, т.к. он будет нагружать браузер юзера
можно организовать. Я ей пользуюсь. Все сразу подсвечивать не умеет. Только указанный синтаксис. А GeSHi тоже не легковес. Например 200 кб скрипт на обычном серваке(ну все относительно конечно) вылетает по таймауту...
Jensi Проект Sergey89. Я просто там храню все свои исходные коды, т.к это удобнее. Потом пишу у себя на сайте статью и просто выкладываю ссылку на codepaste.ru. Удобно для меня лично. Не заморачиваюсь по поводу подсветки. З.ы Может быть сделаю div/iframe с file_get_contents
жаль, что нельзя подсвечивать после вывода из БД куски кода, может я чёт смогу накодить, чтоб это исправить Elkaz, проект хороший, но не понятен будет для новичка в программировании Мне у тя на страничке больше понравилось чёт... Stop flood!
О_о, а как тогда сделать, чтоб при выводе из БД подсвечивался только код, а не все теги и в тексте и в коде? У меня наверное мозгов не хватило или просто лень думать
Jensi Посмотри у меня на сайте - статья. Вся храниться в базе. Подсвечиваются только определенные места - места с кодом. Так ты хочешь?
Нет, меня смущает юзабилити. Хотел выделить слово, которое обрубилось на половине скриптом для подготовки анонсов, а получил переход.
Тююю.... А зачем тебе выделять это слово??? (кстати, я выделяю без перехода). Я доделать хотел времени нету - чтобы анонсы определялись на этапе написания. Тобишь с помощью bb-кодов. Скоро сделаю и будет все ок.
Jensi Ну я делал с помощью bb-кодов. Пишеться текст и в месте где Geshi должна подстветить код вставляется bb-код Код ( (Unknown Language)): тут идет листинг программы закрываем bb-код. Потом все это в таком виде сохраняется в базу. А вот при выводе обрабатывается - парситься, выбирается текст который заключен в bb-коды code, определяется название языка, инстанцируется класс Geshi и передается ей название и сам текст. И потом это прибавляется к исходному тексту, естественно уже без bb-кодов. Все это парсит конечный автомат с фабрикой bb-классов. BB-классы делятся на те, которые имеют содержание и которые не имеют. Класс bb-кода Код (Text): имеет содержание, поэтому он может обрабатываться Geshi.
kostyl, уже не покатит, у меня на сайте более 1200 статей и в них нужно подсветить код, а при добавлении я смогу сделать, только смысла практически нету
GeSHi ïîäñâåòêà êîäà Íó âñòàâëÿþ ÿ ÷åðåç include ÷àñòü êîäà èç ïåðåìåííîé. Âîò â ýòîì êîäå åñòü html-êîä ññûëêè. Åãî íàäî óáðàòü, à îñòàâèòü òîëüêî òåêñò, ïîíÿòíî? Ïðè÷åì íå ãîâîðèòå, ÷îòáû ÿ çàìåíèë êîä â ïåðåìåííîé, îíà ÷èòàåò êîä ñ îäíîãî íîâîñòíîãî ïîðòàëà
Если использовать GESHI, то лучше подсвечивать при сохранении, но вставлять в ячейку рядом с оригиналом. Иначе получится бяка
я парсю один раз при показе, сохраняя в кешь. Не знаю лушче ли сохранять в кешь и соответсвенно парсить при сохранении? Но то что в базе должны храниться исходники - так оно и есть.