{% extends 'typograph/base.html' %} {% load static %} {% block title %}Песочница верстки — ETPGRF{% endblock %} {% block content %}
Исходный код сайта онланй-типографа etpgrf доступен в нескольких репозиториях (GitHub, GitVerse и Сube2. Наиболее заметные изменения сайта онлайн-типографа приводятся ниже в хронологическом порядке. Для полного списка изменений, включая мелкие фиксы и коммиты, пожалуйста, обратитесь к истории репозитория.
frontend-assembly/copy-vendor.js
и обновление сборки через frontend-assembly/assembly_via_npm.sh.
typograph/tests.py.
.gitignore с подробными комментариями.canonical для страниц учитывает https/http.updated_at (Дата обновления) в модели, админке, блогах, страницах, sitemaps.xml
и микроразметке Schema.org для улучшения SEO, GEO
и LLMO.
и др.).
slug из title при сохранении поста или страницы с использованием
библиотеки pytils для транслитерации с очистикой от HTML-мнемоник и создания
URL-дружественных
строк.
Schema.org (JSON-LD) для постов и страниц для улучшения
SEO и понимания контента поисковиками и ИИ.
llms.txt для предоставления информации о сайте и API для больших
языковых моделей (LLM) в соответвиии со стандартом GEO
и LLMO.
unescape для очистки мета-тегов от HTML-сущностей и переводов
строк.
docker-compose.yaml додавлен перезапуск watchtower при его
остановке.
alt под картинками
и т. п.
blog/templates/blog/tmp.html для тестирования верстки (доступен только в режиме
debug).
url админки типографа. Его расположение теперь задается через переменные окружения
в .env.
favicon.ico оптимизирована для Яндекс (120х120px).Исходный код etpgrf-типографа доступен в нескольких репозиториях (GitHub, GitVerse, Сube2, и PyPI), распространяется под лицензией MIT, может быть установлен локально, на ваш сайт или интегрирован в ваши проекты как Python-библиотека.
<span> вместе с ближайшим словом и пробелом, что
обеспечивает отсутствие визуальных смещений внутри строки. Режим both (для одновременного
вывешивания в обе стороны) отключен из-за потенциальных конфликтов компенсирующих пробелов и проблем
с выравниванием при использовании CSS text-justify.x, X, х, Х, стоящих между
числами, на знак умножения ×, чтобы выражения вида 100x100 или 100 х 100
корректно обрабатывались и выглядели типографски правильными (100×100 или 100 × 100).
& в исходном тексте некорректно преобразовывался
в &. Теперь &; и его маскирование (&amp;,
&lt; и т. д.) сохраняются в итоговом HTML.
на границах закрывающих
тегов (например, <b>Текст</b> — слово теперь корректно обрабатывается, в <b>Текст</b> —
слово).
\uFFFF) при сборке текста. Это позволяет корректно
восстанавливать структуру HTML даже если длина текста изменилась в процессе обработки (например, при удалении лишних
пробелов).
\uFFFC) для защищенных тегов (<code>,
<script> и др.). Теперь содержимое этих тегов физически изолируется перед обработкой,
что предотвращает «протекание» контекста (например, склеивание слов, разделенных кодом).
"<b>Текст</b>").
<html>
и <body> при обработке фрагментов HTML (когда используется парсер
lxml). Теперь типограф автоматически определяет, был ли на входе полноценный
документ или фрагмент, и возвращает соответствующий результат.
regex в pyproject.toml.
Без неё библиотека падала при импорте.
pyproject.toml и README.md.
etpgrf.Typographer: основной класс-оркестратор.Hyphenator: расстановка мягких переносов (алгоритм Ляна-Кнута).QuotesProcessor: замена кавычек («ёлочки», „лапки“).Unbreakables: неразрывные пробелы для предлогов, союзов и частиц.LayoutProcessor: типографика тире, инициалов, акронимов, единиц измерения, устойчивых
сокращений (постпозиционных и препозиционных).SymbolsProcessor: псевдографика (тире, стрелочки, копирайт и т. п.)HangingPunctuationProcessor: висячая пунктуация.SanitizerProcessor: очистка HTML перед обработкой.