"QSP:Типограф" — модуль для форматирования текста
Платформа QSP позволяет задействовать возможности HTML для форматирования текстов описаний и всего такого, и это хорошо. Плохо то, что писать html-ready текст — сущая мука: теги загромождают текст и мешают его восприятию в редакторе.
Чтобы хоть немного облегчить подобную работу, я написал небольшой модуль для форматирования текста. Он позволяет использовать сокращённые формы записи тегов, что изрядно облегчает как написание, так и визуальное восприятие “исходного” текста.
Например, для вставки заголовка в обычный html-текст, в него нужно добавить запись: “<h1>Заголовок</h1>”. Для вставки параграфа, растянутого по ширине, — “<p align=justify>Текст</p>”. С помощью представляемого модуля данные записи можно сократить до “з1. Заголовок” и “п. Текст” соответственно.
Кроме этого есть сокращённые формы для выделения текста: жирный, курсив, подчёркнутый, подстрочный, надстрочный и т.п.
И можно отметить автоматическую расстановку длинных тире и правильных кавычек.
Текущая версия: 1.6 (скачать)
Документация on-line: http://ifiction.ru/h/otg_lib_typograph_help.html
Пример форматирования:
з1. Демонстрация работы модуля "QSP: Типограф"
----
п. Попробуем-ка строчные теги: **жирный**, //курсив//, __подчёркивание__, Примечания^^2^^, Индексы: C~~2~~H~~5~~OH, ++Крупный текст++ , --мелкий текст--.
цт. Волшебник владел дюжиной заклятий, способных в мгновение ока превратить юного Принца в пар. Он владел заклятиями, способными заставить нахала корчиться в непрерывных муках в течение года, прежде чем позволить ему сдохнуть. Он владел заклятиями, способными обречь на участь куда худшую, нежели самая страшная гибель. И у всех этих заклятий имелся один общий предосаднейший недостаток – они требовали подготовки. Некоторые – совсем небольшой, но ни одно нельзя было применить прямо сейчас.
>. Джон Мур "Принц быстрого реагирования"
п. А ещё дроби: 1/2, 1/4, 3/4
п. Плюс-минус: 40+-3, правильный минус: 9-6=4
~
~
><. Так, разместим что-нибудь по центру... <- тут должно быть многоточие
п. А так можно вставить текст моноширинным шрифтом прямо в параграф:$$00FFFF:##
ADDQST "otg_lib_typograph.qsp"
*NL func("Типограф", "пробный //круглый// шар")
##$$
вот так!
Вопросы и комментарии можно оставлять как здесь, так и в основной теме модуля.
Я скачал, но не понел что за херь. Он ошибку выдаёт
Евген:
Я скачал, но не понел что за херь. Он ошибку выдаёт
А ты хоть что запускал-то?
Ага. Еслиб не запускал не писал бы.
Евген:
Ага. Еслиб не запускал не писал бы.
Ну так я и спрашиваю — что ты запускал (какой именнно файл)?
все 4
Евген:
все 4
Ну так нет смысла запускать все четыре. Распакуй их в одну папку и запусти хотя бы “example_typograph.qsp”.
Олегус, зачем тебе велосипед выдумывать? Оптимизировал бы под bb-code
Dark(Ol(U23)leneri):
Олегус, зачем тебе велосипед выдумывать? Оптимизировал бы под bb-code
BB-code не решают тех проблем, которые мне хотелось бы закрыть данным модулем. Кроме того это всё же не “велосипед” — подобная реализация форматирования текста скорее адаптирована мной, чем “выдумана”.
Версия 1.1:
- У функции “Типограф” появился второй параметр. Если параметр не указан (или указан 0), то все символы “<”, “>”, “&” в тексте экранируются, т.е. выводятся именно как символы, а не части записи html-тегов.
- Для тегов “h(1-6).”, “p.” и “bq.” добавлены русскоязычные синонимы: “з(1-6).”, “п.”, “цт.” соответственно.
- Сочетание “––” (на отдельной строке) заменяется на тег “<hr/>”.
- Блоки “<pre>…</pre>” исключаются из обработки.
- Блоки “/*…*/” полностью вырезаются из исходного текста (комментарии!).
- Добавлен тег “о:NNN.” (англоязычный вариант: “i:NNN.”), где NNN - отступ в пикселах (”о:25.” - 25 пикселов) или процентах (”о:25%.” - 25%). Блок преобразуется в таблицу, состоящую из двух колонок - ширина левой колонки соответствует указанному отступу. Таблица обрамляется в “<div>” - иначе html-движок QSP косячит с предыдущим абзацем.
- Добавлена автозамена некоторых символов: дробей, знака умножения, многоточия и т.п.
Модуль обновлён до версии 1.2:
- Исправлен недочёт в реализации тега $$ - теперь цветом можно выделять многострочный блок.
- Убрана замена символа ’ на код “39”, потому как это портит ссылки в QSP.
- Немного почищен код.
Надо ознакомиться :)
Версия 1.4. Убран баг с распознаванием последовательностей “п.”, “>.” и т.п. внутри строки как блочных тегов.
Выложена версия 1.5:
- Прекращена поддержка англоязычных команд и тегов.
- Добавлена функция “ПустаяСтрока”.
- Добавлен тег “кс.” (параграф с красной строкой).
- Добавлена команда “Типограф.Отступ”.
- Добавлена команда “Типограф.Инициализация”.
- Улучшена обработка блочных тегов.
Версия 1.6:
- Изменён порядок вызова обработчиков текста, в результате чего исчезли некоторые глюки.