[РЕШЕНО] Посоветуйте как лучше: подсветка кода на стороне ... кого?

Главные вкладки

Аватар пользователя NightL NightL 1 августа 2013 в 23:52

Всем добрый.
Прошу совета в вопросе подсветки кода, собсна тут только 2 варианта либо подсвечивать код на стороне сервера либо клиента.

Если на стороне сервера то мы имеем:
1. требуется установка 1 или в случае с GeSHi 2 модулей, что радости не приносит.
2. сильно раздутый код из-за оборачивания практически каждый символ с с цветом

Если на стороне клиента то мы не имеем вышеописанных минусов, но скорее всего имеем какие-то другие минусы. Этот вариант я не пробовал и не знаю хороших js библиотек для этого, чувствую что и в этом варианте есть минусы, собственно и хотел бы спросить совета - как лучше?
интересует только html css js

У кого есть опыт - подскажите, пожалуйста

Комментарии

Аватар пользователя Andruxa Andruxa 2 августа 2013 в 10:23

по тем же соображениям не стал подсвечивать синтаксис на сервере,
на клиенте - Syntax Highlighter

Не могу назвать его идеальным, но за неимением туалетной, приходится пользоваться наждачной

Аватар пользователя marazmus marazmus 2 августа 2013 в 11:19

Имхо, подсветка на клиенте лучше, так как:
1) сервер не нагружается парсингом кода для подсветки
2) код остается чистым, без тегов и стилей подсветки
3) компы и даже смартфоны уже давно достаточно мощные, чтобы им не доставляло проблем распарсить жабаскриптом десяток строк кода

библиотек дофига, конкретную не могу посоветовать

Аватар пользователя Alexei91 Alexei91 3 августа 2013 в 18:37

ТС, пробуйте Google Code Pretiffy (JS). Легковесный, приятный на вид.

P.S. Сейчас стараюсь везде его использовать. Syntax Higlighter -
тормознутый, когда на страницах несколько вставок кода. + Раздутый.

GesHi тоже не идеален - зачем парить сервер по мелочи, когда можно клиенту
это перепоручить, JS с этим отлично справляется. + Раздут ещё больше.

Аватар пользователя NightL NightL 3 августа 2013 в 22:33

Спасибо всем кто отписался. Пересмотрел я много всяких решений включая решение от гугла.
Реализовал я следующим образом:
1. модуль Code Filter
2. подсветка на стороне клиента с помощью маленькой библиотеки http://softwaremaniacs.org/soft/highlight/ удобно что можно выбрать интересующие языки. 3 языка и весь js код весит всего 9 kb. так же удобно, что библиотека лежит на cdn яндекса включающая в себя наиболее популярные языки