- PVSM.RU - https://www.pvsm.ru -
Я уже презентовал [1] свой типограф на хабре. С того момента он несколько обновился: я добавил доки, дифф типографированного результата на сайте и скромненький web api [2].
Грубо говоря, это субъективщина. Но если вдруг у вас мак, то, скорее всего, вы заметили, что при наборе текста у вас двойной дефис и «простые» кавычки подменяются другими символами. То же самое творится в ворде и других текстовых процессорах.
Все дело в том, что до повального веба тексты оформлялись вручную. Наверное, авторам шрифтов было очень скучно и они решили разбавить свои наборы кучей бесполезных черточек, буковок и всякой другой фигни, которая уже теперь никак не помещается в йцукен, зато очень красиво смотрится.
Вот, собственно, весь аргумент: «такой текст приятно читать». Как правило, большинство зарубежных информационных ресурсов, вроде medium.com [1], уделяют огромное внимание тому, чтобы текст был оформлен по всем канонам.
Typus — это локальный типограф на Python. Очень долгое время я пользовался веб-сервисом Лебедева, однако задержка в ответе, которая неизменно появляется в работе с удаленным api, просто убивала. Поэтому я решил написать свой.
(c)
на спец-символыКонечно же, все это конфигурируется (локально). Более-менее полный список с примерами доступен в доках [3].
Чтобы лучше понять «что происходит», можно поиграться с демкой [4]. «Отреставрированные» части будут подсвечены (не всегда идеально).
"I don't feel very much like Pooh today..." said Pooh.
"There there," said Piglet. "I'll bring you tea and honey until you do."
- A.A. Milne, Winnie-the-Pooh
“I don’t feel very much like Pooh today…” said Pooh.
“There there,” said Piglet. “I’ll bring you tea and honey until you do.”
— A. A. Milne, Winnie-the-Pooh
Стоит отметить, что результат частично зависит от выбранной вами гарнитуры. К примеру, в некоторых нет короткого неразрывного пробела, а в моноширинных многое вообще теряет смысл.
Ну как api. На самом деле, не знал как назвать. Но может пригодиться:
$ curl --data "text='foo'&lang=ru" https://byashimov.com/typus/api/v1/
{
"text": "u00abfoou00bb"
}
Исходный код всего сайта (и апи в том числе) доступен на гитхабе [5].
Довольно подробно расписал [6] что и как работает, до кучи многое покрыто доктестами. Пока только на ломанном английском.
Автор: magic4x
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/236379
Ссылки в тексте:
[1] презентовал: https://habrahabr.ru/post/303608/
[2] api: https://byashimov.com/typus/api/
[3] доках: https://py-typus.readthedocs.io/en/latest/mixins.html
[4] демкой: https://byashimov.com/typus/
[5] гитхабе: https://github.com/byashimov/website
[6] подробно расписал: https://py-typus.readthedocs.io/en/latest/index.html
[7] Источник: https://habrahabr.ru/post/320174/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.