Супровід перекладів

Тепер, коли ми зробили додаток придатним до перекладу, як насправді його перекласти? Загалом, про це слід дбати окремо, лише якщо ви розробляєте зовнішній додаток. Для додатків у основному сховищі коду RKWard відповідні дії буде виконано автоматично. Нижче наведено основні прийоми обробки для зовнішніх додатків. Зауважте, що вам доведеться встановити пакунок «gettext»:

  • Позначте відповідним форматуванням усі рядки, надаючи потрібний контекст і коментарі.

  • Віддайте команду python3 scripts/update_plugin_messages.py --extract-only /шлях/до/вашого.pluginmap. Скрипт scripts/update_plugin_messages.py не є частиною пакунка з початковими кодами випуску, але його можна знайти у копії сховища з початковим кодом RKWard.

  • Надайте доступ до створеного файла rkward__Ідентифікатор_PO.pot вашим перекладачам. Для зовнішніх додатків, рекомендуємо зберігати цей файл у підкаталозі «po» у inst/rkward.

  • Перекладач відкриє файл у програмі для перекладу, наприклад у lokalize. Насправді, навіть якщо ви не маєте наміру щось перекладати, вам варто спробувати виконати цей крок власноруч. Перегляньте рядки, які було видобуто, і спробуйте знайти серед них проблемні або неоднозначні.

  • Перекладач зберігає переклад у файлі rkward__Ідентифікатор_PO.xx.po (де xx — код мови) і надсилає його розробникам.

  • Скопіюйте файл rkward__Ідентифікатор_PO.xx.po до коду вашого додатка, розмістивши його поряд із файлом rkward__Ідентифікатор_PO.pot. Віддайте команду python3 scripts/update_plugin_messages.py /шлях/до/вашого.pluginmap (Зауваження: цього разу без --extract-only). Ця команда узгодить переклад з усіма проміжними змінами у рядках, збере його і встановить як файл КАТАЛОГ_PLUGINMAP/po/xx/LC_MESSAGES/rkward__Ідентифікатор_PO.mo (де, знову ж таки, xx — код мови).

  • Вам також слід включити нескомпільовані переклади (тобто файли rkward__Ідентифікатор_PO.xx.po) до вашого дистрибутива, у підкаталозі «po».

  • Якщо ви внесли зміни до вашого додатка, віддайте команду python3 scripts/update_plugin_messages.py /шлях/до/вашого.pluginmap, щоб оновити файл .pot і наявні файли .po, а також компільовані каталоги повідомлень.