Files
dedinit.ru/openspec/changes/localize-i18n-ru/specs/i18n/spec.md
T

3.1 KiB

Purpose

Обеспечивает русскоязычный интерфейс сайта dedinit.ru: все UI-строки темы (навигация, время чтения, код, пагинация) отображаются на русском языке для аудитории ru-ru.

ADDED Requirements

Requirement: Русские UI-строки в i18n/ru.toml

Система SHALL предоставлять файл i18n/ru.toml, содержащий русские переводы всех ключей интерфейса, используемых темой rDedInit (PaperMod): home, next_page, prev_page, read_time, words, toc, code_copy, code_copied, edit_post, translations, search, page_not_found и стандартные ключи PaperMod.

Scenario: Главная страница

  • WHEN пользователь открывает главную страницу сайта
  • THEN строка навигации «Home» отображается как «Главная»

Scenario: Время чтения статьи

  • WHEN пользователь открывает статью с временем чтения
  • THEN строка «X min read» отображается как «X мин чтения» (или эквивалент на русском)

Scenario: Оглавление

  • WHEN статья содержит оглавление
  • THEN заголовок оглавления отображается как «Содержание», а не «Table of Contents»

Scenario: Кнопки копирования кода

  • WHEN пользователь наводит на блок кода
  • THEN подсказка отображается как «Копировать код»; после копирования — «Скопировано»

Scenario: Пагинация

  • WHEN пользователь видит пагинацию списка постов
  • THEN ссылки отображаются как «Следующая» / «Предыдущая», а не «Next» / «Prev»

Scenario: Отсутствующий ключ

  • WHEN в теме используется ключ, отсутствующий в i18n/ru.toml
  • THEN сайт продолжает работать, отображая ключ по умолчанию из темы (Hugo fallback) — поведение не ломается

Requirement: Фолбэк на английский при отсутствии перевода

Система SHALL сохранять работоспособность сайта при отсутствии какого-либо ключа: Hugo отображает строку по умолчанию темы (английскую), сайт не падает и не ломает разметку.

Scenario: Нет ключа в ru.toml

  • WHEN в ru.toml отсутствует конкретный ключ
  • THEN Hugo использует значение по умолчанию из темы (английское) и сборка проходит без ошибок