Інтеграція із Weblate

Основи Weblate

Структура проєктів і складників

У Weblate переклади упорядковано за проєктами та складниками. Кожен проєкт може містити декілька складників, які містять переклади окремими мовами. Складник відповідає одному файлу перекладу (наприклад, GNU Gettext або Рядкові ресурси Android). Проєкти призначено для полегшення упорядковування складників у логічні набори (наприклад, для групування усіх перекладів, які використовуються у одній програмі).

На внутрішньому рівні, у кожному проєкті містяться переклади типових рядків, які типово поширюються на усі інші складники перекладу. Це полегшує роботу, усуваючи потребу у нудному повторному перекладі та ручному перенесенні перекладів між версіями. Поширення перекладів можна вимкнути на рівні складника, якщо переклади мають відрізнятися.

Імпортування проєкту з локалізації до Weblate

Weblate розроблено з урахуванням можливості інтеграції із системами керування версіями. Найпростішим підходом до інтерграції є надання Weblate доступу до вашого сховища керування версіями. У процесі імпортування Weblate допоможе вам у налаштуванні складників із вашими перекладами.

Якщо ви не використовуєте систему керування версіями або не хочете надавати доступ до вашої системи керування версіями, ви можете користуватися Weblate без зовнішнього сховища системи керування версіями — Weblate створить локальне сховище з усіма перекладами.

Отримання оновлень перекладів з Weblate

Щоб отримати оновлені рядки з Weblate в можете просто отримати базове сховище (або з файлової системи, або за допомогою Засіб експортування Git). До цього, вам, можливо, варто внести усі зміни з черги (див. «Ліниві» внески). Досягти цього можна за допомогою графічного інтерфейсу користувача (розділ Супровід сховища) або інтерфейсу командного рядка за допомогою Клієнт Weblate.

Це можна автоматизувати, якщо ви надасте Weblate доступ до запису до вашого сховища і налаштуєте адресу запису у складнику перекладу.

Надсилання змін у рядках на Weblate

Щоб записати щойно оновлені рядки до Weblate, просто надайте програмі можливість отримання даних основного сховища. Досягти цього можна за допомогою графічного інтерфейсу користувача (розділ Супровід сховища) або інтерфейсу командного рядка за допомогою Клієнт Weblate.

Процедуру можна автоматизувати за допомогою скрипту стеження для вашого сховища, який викликатиме Weblate при кожному внеску, див. Оновлення сховищ, щоб дізнатися більше.

Якщо ви не використовуєте інтеграцію із системою керування версіями, ви можете скористатися інтерфейсом користувача або Програмний інтерфейс REST Weblate для оновлення перекладів у відповідності зі змінами у вашому коді.

Додавання нових рядків

Якщо ваші файли перекладу зберігаються в VCS разом з кодом, ви, швидше за все, маєте наявний робочий процес для розробників, щоб ввести нові рядки. Ви можете розширити його за допомогою Шлюз якості для початкових рядків.

Коли файли перекладу є окремими, повинен бути спосіб ввести нові рядки. Weblate може додавати нові рядки лише для одномовних перекладів (див. Двомовні і одномовні формати). У вас є три шляхи:

  • Власноруч, застосувавши :guilabel:` Додати новий рядок перекладу` з меню Знаряддя у перекладі джерельної мови.

  • Програмно, використовуючи API POST /api/translations/(string:project)/(string:component)/(string:language)/units/.

  • Завантаживши початковий файл як Замінити наявний файл перекладу (це замінює наявні рядки, тому переконайтесь, що файл містить як старі, так і нові, перегляньте Способи імпортування).