WP Manifestindependent plugin directory
manifest / i18n / russian-typography

Russian Typography

WordPress-плагин для склейки русских предлогов и коротких служебных слов неразрывными пробелами.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/gogolevmatvey/russian-typography/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Русская типографика

Обычный WordPress-плагин для точечной русской типографики.

Плагин не меняет текст в базе данных. Он обрабатывает HTML только при выводе на фронтенде.

Что делает

  • Склеивает короткие русские служебные слова со связанным словом неразрывным пробелом в выбранном режиме.
  • Склеивает исторические сокращения: н. э., до н. э.
  • Склеивает числа с частыми единицами: 5 км, 480 году, 24 часа.
  • Предлагает режим standart, который локально имитирует только пробелы Типографа Артемия Лебедева.
  • Позволяет выбрать область применения: весь фронтенд или только одиночные записи и страницы.
  • Позволяет отключить работу типографа отдельно для уровней h1-h6 и отдельно для заголовков, проходящих через the_title().

Что не делает

  • Не склеивает массово существительные с прилагательными.
  • Не включает widow protection для последних слов абзаца.
  • Не поставляет локальные .po/.mo файлы: исходные строки интерфейса на английском и обёрнуты gettext-функциями WordPress; русский перевод должен приходить через языковые пакеты WordPress.org после публикации.
  • Не меняет содержимое code, kbd, pre, samp, script, style, textarea.
  • Не обрабатывает REST API, feeds, AJAX и админку.
  • В режиме «Только одиночные записи и страницы» не обрабатывает карточки, архивы и главную ленту.

Настройки

Настройки доступны в админке WordPress: Settings → Russian Typography. После появления русского языкового пакета эти строки будут переводиться для сайтов с русской локалью.

  • Только одиночные записи и страницы: обрабатываются основной текст, заголовок и комментарии на страницах записей и страниц. Карточки, архивы и главная лента не меняются.
  • Весь фронтенд: типографика применяется к записям, страницам, карточкам, архивам, заголовкам, анонсам и комментариям на всём фронтенде.
  • Disable typography in headings: позволяет выбрать уровни h1-h6, внутри которых текст не обрабатывается типографом вообще. Исходная строка интерфейса английская; русский текст должен приходить через локализацию WordPress.
  • Disable typography in post and card titles: полностью пропускает заголовки, которые выводятся через the_title(), включая H1 записи, карточки, архивы и связанные материалы.
  • Склейка коротких слов: мягкий режим: склеивает только односимвольные служебные слова в, к, с, у, о, и, а и только если следующее слово не длиннее заданного порога. Значение по умолчанию: 10 символов.
  • Склейка коротких слов: полный режим: склеивает короткие предлоги, союзы, частицы и местоимения со связанным словом, чтобы не разрывать смысловые связки. Если следующее слово длиннее заданного порога, пробел остаётся обычным. Значение по умолчанию: 14 символов.
  • Склейка коротких слов: Standart: имитирует поведение Типографа Артемия Лебедева только по пробелам. Этот режим не обращается к внешнему сервису, не меняет кавычки, тире, пунктуацию и сохранённый текст.
  • Склейка коротких слов: выключено: не склеивает короткие слова, но оставляет активными исторические сокращения и числа с единицами.

Режимы пробелов

  • soft: консервативно склеивает односимвольные служебные слова со следующим словом, если следующее слово не длиннее заданного лимита.
  • full: склеивает короткие предлоги, союзы, частицы и местоимения со связанным словом; для узких экранов применяется отдельный лимит длины следующего слова.
  • standart: локально имитирует только пробелы Типографа Артемия Лебедева. Режим не обращается к внешнему сервису и не меняет кавычки, тире, пунктуацию или сохраненный текст.
  • off: не склеивает короткие слова, но оставляет включенными правила для исторических сокращений и чисел с единицами.

Дополнительные правила пробелов

  • Исторические сокращения: н. э., до н. э., г., гг..
  • Века и даты: V век, 20 века, 421 г. до н. э..
  • Числа с единицами, процентами и разрядами: 5 км, 3 %, 65 536.
  • Инициалы и тире в режиме standart: когда К. пришёл, слово — продолжение.

Требования

  • WordPress 7.0 или новее.
  • PHP 8.0 или новее.

Лицензия

GPLv2 or later.

Полный текст лицензии находится в файле LICENSE.

Проверки перед публикацией

В standalone-репозитории проверки запускаются напрямую, без composer tooling:

php tests/russian-typography/readme.php
php tests/russian-typography/typography.php
php tests/russian-typography/uninstall.php
find . -name '*.php' -not -path './vendor/*' -print0 | xargs -0 -n1 php -l
git diff --check

Перед сборкой production-пакета проверьте, что в архив попадают только runtime-файлы плагина: russian-typography.php, includes/, README.md, readme.txt, LICENSE, IMPROVEMENTS.md и uninstall.php.