[English](README.md) | **[Русский](README-ru.md)** ![l10n-sync-ru](https://github.com/markdown-localization/markdown-localization-spec/workflows/l10n-sync-ru/badge.svg) # Локализация Markdown (Микро) Спецификация Данная спецификация описывает структуру и подход для локализации Markdown файлов. # Структура Все элементы помещаются внутрь HTML комментариев. * `l10n:select` - переключатель между всеми доступными локализациям файла. * `l10n:p` - разбивает файл на параграфы на основе заголовков. Все локализованные файлы включают в себя копию исходного документа, разбитого на параграфы, заключенные в комментарии и отмеченные `l10n:p` аннотацией. * `l10n:ignore` - исключает локализацию элементов содержимого исходных и локализовынных документов. Используйте аннотацию `l10n:ignore start` в начале и `l10n:ignore end` в конце. Пример со использованием всех элементов: [README-ru.md](https://raw.githubusercontent.com/markdown-localization/markdown-localization-spec/master/README-ru.md) # Рабочий процесс ## Создание новых локализационных файлов 1. **Создайте новый файл.** * Используйте имя файла такое же, как у исходного файла. * В конце имени добавьте суффикс локали. * Пример: Исходный файл - `README.md`, локализованный - `README-it.md`. 2. **Скопируйте содержимое исходного файла.** * Скопируйте содержимое исходного файла в локализованный файл. * Все параграфы исходного файла комментируются отдельно и помечаются аннотацией `l10n:p`. 3. **Обновите заголовки.** * В исходном файле и других локализованных файлах добавьте ссылку на созданный локализованный файл. 4. **Сделайте перевод.** * Добавьте перевод как отдельные параграфы в соответствии со структурой исходного файла. ## Обновление локализованных файлов 1. **Проверить состояние синхронизиции.** * Проверьте параграфы, которые были добавлены или изменены в исходном файле. 2. **Обновить перевод.** * Обновите исходные параграфы в комментариях локализованых файлов. * Обновите перевод в локализованных файлах согласно структуре исходных параграфов. ## Автоматизация рабочего процесса с помощью MDLM Рабочий процесс может быть частично автоматизирован с помощью [mdlm-sh](https://github.com/markdown-localization/mdlm-sh). ```console $ mdlm search eo eo (Esperanto) - Esperanto ka (ქართული) - Georgian ty (Reo Mā`ohi) - Tahitian $ mdlm add eo Creating new localization files for locale - "eo (Esperanto) - Esperanto": Creating example/README-eo.md. Confirm? [Y/n] - Created. Creating README-eo.md. Confirm? [Y/n] - Created. Finished. Total files created: 2 ``` Теперь файлы созданы и готовы к переводу. После того, как исходные файлы будут обновлены, проверьте состояние синхронизации между исходным и локализованных файлами: ```console $ mdlm diff es Localization status for - es (Español) - Spanish: - example/README-es.md (Español) - outdated. 4c4,5 < Here is an outdated text of example. --- > Here is a text of example. > ``` ## Пример Пример исходного файла с несколькими локализациями: * [example/README.md](example/README.md) # Благодарность Источники названия [языков](languages.txt) и их переводов на родной язык: * https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry * https://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code # Содействие Приветствуется любое содействие: * Спецификация - предложения по обновлению и добавлению новых элементов * Тэги и названия языков - добавить язык, обновить название языка на этом языке * Локализация этого документа. Инструкции и статус локализации в [LOCALIZATION.md](LOCALIZATION.md) * Создание новый автоматизаци (Python, JavaScript, etc.)