Данная спецификация описывает структуру и подход для локализации Markdown файлов.
Все элементы помещаются внутрь HTML комментариев.
l10n:select
- переключатель между всеми доступными локализациям файла.l10n:p
- разбивает файл на параграфы на основе заголовков. Все локализованные файлы включают в себя копию исходного документа, разбитого на параграфы, заключенные в комментарии и отмеченныеl10n:p
аннотацией.l10n:ignore
- исключает локализацию элементов содержимого исходных и локализовынных документов. Используйте аннотациюl10n:ignore start
в начале иl10n:ignore end
в конце.
Пример со использованием всех элементов: README-ru.md
- Создайте новый файл.
- Используйте имя файла такое же, как у исходного файла.
- В конце имени добавьте суффикс локали.
- Пример: Исходный файл -
README.md
, локализованный -README-it.md
.
- Скопируйте содержимое исходного файла.
- Скопируйте содержимое исходного файла в локализованный файл.
- Все параграфы исходного файла комментируются отдельно и помечаются аннотацией
l10n:p
.
- Обновите заголовки.
- В исходном файле и других локализованных файлах добавьте ссылку на созданный локализованный файл.
- Сделайте перевод.
- Добавьте перевод как отдельные параграфы в соответствии со структурой исходного файла.
- Проверить состояние синхронизиции.
- Проверьте параграфы, которые были добавлены или изменены в исходном файле.
- Обновить перевод.
- Обновите исходные параграфы в комментариях локализованых файлов.
- Обновите перевод в локализованных файлах согласно структуре исходных параграфов.
Рабочий процесс может быть частично автоматизирован с помощью mdlm-sh.
$ 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
Теперь файлы созданы и готовы к переводу.
После того, как исходные файлы будут обновлены, проверьте состояние синхронизации между исходным и локализованных файлами:
$ 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.
>
Пример исходного файла с несколькими локализациями:
Источники названия языков и их переводов на родной язык:
- 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
- Создание новый автоматизаци (Python, JavaScript, etc.)