Клієнт Weblate

Нове в версії 2.7: There has been full wlc utility support ever since Weblate 2.7. If you are using an older version some incompatibilities with the API might occur.

Встановлення

The Weblate Client is shipped separately and includes the Python module. To use the commands below, you need to install wlc:

pip3 install wlc

Перші кроки

The wlc configuration is stored in ~/.config/weblate, please create it to match your environment:

[weblate]
url = https://hosted.weblate.org/api/

[keys]
https://hosted.weblate.org/api/ = APIKEY

Далі, ви можете викликати команди на типовому сервері:

wlc ls
wlc commit sandbox/hello-world

Дивись також

Файли налаштувань

Короткий опис

wlc [parameter] <command> [options]

Команди вказують на те, яку дію має бути виконано.

Опис

Weblate Client is a Python library and command-line utility to manage Weblate remotely using API. The command-line utility can be invoked as wlc and is built-in on wlc.

Параметри усього сайта

Програма приймає вказані нижче параметри для усього екземпляра Weblate. Ці параметри можна ввести перед будь-якою допоміжною командою.

--format {csv,json,text,html}

Вказати формат виведення даних.

--url URL

Specify the API URL. Overrides any value found in the configuration file, see Файли налаштувань. The URL should end with /api/, for example https://hosted.weblate.org/api/.

--key KEY

Specify the API user key to use. Overrides any value found in the configuration file, see Файли налаштувань. You can find your key in your profile on Weblate.

--config PATH

Перевизначає шлях до файла налаштувань, див. Файли налаштувань.

--config-section SECTION

Перевизначає розділ файла налаштувань для використання, див. Файли налаштувань.

Допоміжні команди

Можна скористатися такими допоміжними командами:

version

Виводить поточну версію.

list-languages

Виводить список використаних у Weblate мов.

list-projects

Виводить список проєктів у Weblate.

list-components

Виводить список складників у Weblate.

list-translations

Виводить список перекладів у Weblate.

show

Показує об’єкт Weblate (переклад, складник або проєкт).

ls

Виводить список об’єкта Weblate (переклад, складник або проєкт).

commit

Вносить зміни, які виконано в об’єкті Weblate (перекладі, складнику або проєкті).

pull

Отримує зміни у віддаленому сховищі до об’єкта Weblate (перекладу, складника або проєкту).

push

Записує зміни у об’єкті Weblate до віддаленого сховища (переклад, складник або проєкт).

reset

Нове в версії 0.7: Підтримку передбачено з версії wlc 0.7.

Скидає зміни в об’єкті Weblate так, щоб дані збігалися із даними у віддаленому сховищі (переклад, складник або проєкт).

cleanup

Нове в версії 0.9: Підтримку передбачено з версії wlc 0.9.

Removes any untracked changes in a Weblate object to match the remote repository (translation, component or project).

repo

Показує стан у сховищі для вказаного об’єкта Weblate (перекладу, складника або проєкту).

statistics

Показує докладну статистику щодо вказаного об’єкта Weblate (перекладу, складника або проєкту).

lock-status

Нове в версії 0.5: Підтримку передбачено з версії wlc 0.5.

Показує стан блокування.

lock

Нове в версії 0.5: Підтримку передбачено з версії wlc 0.5.

Блокує складник від подальшого перекладу на Weblate.

unlock

Нове в версії 0.5: Підтримку передбачено з версії wlc 0.5.

Розблоковує переклад складника Weblate.

changes

Нове в версії 0.7: Підтримку передбачено з версії wlc 0.7 і версії Weblate 2.10.

Показує зміни у вказаному об’єкті.

download

Нове в версії 0.7: Підтримку передбачено з версії wlc 0.7.

Отримує файл перекладу.

--convert

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

--output

Вказує файл для зберігання виведених даних. Якщо файл не вказано, дані буде виведено до стандартного виведення (stdout).

upload

Нове в версії 0.9: Підтримку передбачено з версії wlc 0.9.

Вивантажує файл перекладу.

--overwrite

Перезаписати наявні переклади під час вивантаження.

--input

Файл, з якого читатимуться дані. Якщо не вказано, дані буде прочитано зі stdin.

Файли налаштувань

.weblate

Файл налаштувань окремого проєкту

~/.config/weblate

Файл налаштувань користувача

/etc/xdg/weblate

Загальносистемний файл налаштувань

The program follows the XDG specification, so you can adjust placement of config files by environment variables XDG_CONFIG_HOME or XDG_CONFIG_DIRS.

Following settings can be configured in the [weblate] section (you can customize this by --config-section):

key

Ключ доступу до програмного інтерфейсу Weblate.

url

Адреса сервера програмного інтерфейсу, типово, http://127.0.0.1:8000/api/.

translation

Шлях до типового перекладу — складника або проєкту.

Файл налаштувань є файлом формату INI. Приклад:

[weblate]
url = https://hosted.weblate.org/api/
key = APIKEY
translation = weblate/master

У розділі [keys] можна зберігати додаткові ключі до програмного інтерфейсу:

[keys]
https://hosted.weblate.org/api/ = APIKEY

This allows you to store keys in your personal settings, while using the .weblate configuration in the VCS repository so that wlc knows which server it should talk to.

Приклади

Вивести версію поточної програми:

$ wlc version
version: 0.1

Список усіх проєктів:

$ wlc list-projects
name: Hello
slug: hello
source_language: en
url: http://example.com/api/projects/hello/
web: https://weblate.org/
web_url: http://example.com/projects/hello/

You can also designate what project wlc should work on:

$ cat .weblate
[weblate]
url = https://hosted.weblate.org/api/
translation = weblate/master

$ wlc show
branch: master
file_format: po
filemask: weblate/locale/*/LC_MESSAGES/django.po
git_export: https://hosted.weblate.org/git/weblate/master/
license: GPL-3.0+
license_url: https://spdx.org/licenses/GPL-3.0+
name: master
new_base: weblate/locale/django.pot
project: weblate
repo: git://github.com/WeblateOrg/weblate.git
slug: master
template:
url: https://hosted.weblate.org/api/components/weblate/master/
vcs: git
web_url: https://hosted.weblate.org/projects/weblate/master/

З цими налаштуваннями доволі просто надсилати зміни з черги у поточному проєкті:

$ wlc commit