Как стать автором
Обновить

Свершилось — Jevix 1.0

Время на прочтение2 мин
Количество просмотров2.6K

Jevix — система автоматического применения правил набора текстов (типографика) разработанная в ТМ™ для собственных проектов (Хабр, Кадабра, Дрибблер), с открытым исходным кодом, наделённая способностью унифицировать разметку HTML/XML документов, контролировать перечень допустимых тегов и атрибутов и предотвращать возможные XSS-атаки в коде документов.

В связи с катастрофической нехваткой времени, не смотря на мои обещания, код версии 1.0 выложен только сегодня. Но зато он всё же вышел! Причём вместе с исправлением вчерашнего хабрабага с перечёркиванием текста.

Теперь Jevix доступен на google code. Я не поссорился с Juks — автором perl-версии (если кто что подумал) — просто с google code мне работать проще.

За написание тестового примера огромное спасибо vaart. Без него бы ничего не было.

Какие произошли изменения (копи-паст из исходника):
1.00
 + Исправлен баг с закрывающимися тегами приводящий к созданию непарного тега рушащего вёрстку
1.00 RC2
 + Небольшая чистка кода
1.00 RC1
 + Добавлен символьный класс Jevix::RUS для определния русских символов 
 + Авторасстановка пробелов после пунктуации только для кирилицы 
 + Добавлена настройка cfgSetTagNoTypography() отключающая типографирование в указанном теге
 + Немного переделан алгоритм обработки кавычек. Он стал более строгим
 + Знак дюйма 33" больше не превращается в открывающуюся кавычку. Однако варриант "мой 24" монитор" - парсер не переварит.
0.99
 + Расширена функциональность для проверки атрибутов тега: 
   можно указать тип атрибута ( 'colspan'=>'#int', 'value' => '#text' )
   в Jevix, по-умолчанию, определён массив типов для нескольких стандартных атрибутов (src, href, width, height)
0.98
 + Расширена функциональность для проверки атрибутов тега: 
   можно задавать список дозможных значений атрибута (  'align'=>array('left', 'right', 'center') )
0.97
 + Обычные "кавычки" сохраняются как &quote; если они были так написаны
0.96
 + Добавлены разрешённые протоколы https и ftp для ссылок (a href="https://...)
0.95
 + Исправлено типографирование ?.. и !.. (две точки в конце больше не превращаются в троеточие)
 + Отключено автоматическое добавление пробела после точки для латиницы из-за чего невозможно было написать 
   index.php или .htaccess
0.94
 + Добавлена настройка автодобавления параметров тегов. Непример rel = "nofolow" для ссылок. 
   Спасибо Myroslav Holyak (vbhjckfd at gmail.com)


P.S. Я ни черта не понимаю в лицензиях. Посоветуйте пожалуйста. Мне бы хотелось, чтобы код мог использоваться как в open-source так и в коммерческих проектах с возможностью модификации кода, но, с указанием авторства
P.P.S. Если есть желание присоединиться к проекту и усовершенствовать его или поработать над документацией — обращайтесь в инбокс
Теги:
Хабы:
Всего голосов 107: ↑105 и ↓2+103
Комментарии104

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Innopolis 2025
Иннополис