Клиент Weblate¶
Добавлено в версии 2.7: Полная поддержка вспомогательной команды wlc существует с версии Weblate 2.7. Если вы используете более старую версию, могут возникнуть некоторые несовместимости с API.
Установка¶
Клиент Weblate поставляется отдельно и включает в себя модуль Python. Для использования нижеприведённых команд необходимо установить модуль wlc:
pip3 install wlc
Docker usage¶
The Weblate Client is also available as a Docker image.
The image is published on Docker Hub: https://hub.docker.com/r/weblate/wlc
Installing:
docker pull weblate/wlc
The Docker container uses Weblate’s default settings and connects to the API deployed in localhost. The API URL and API_KEY can be configured through the arguments accepted by Weblate.
The command to launch the container uses the following syntax:
docker run --rm weblate/wlc [WLC_ARGS]
Пример:
docker run --rm weblate/wlc --url https://hosted.weblate.org/api/ list-projects
Начало работы¶
Конфигурация wlc хранится в ~/.config/weblate (другие возможные места смотрите в разделе Файлы конфигурации), пожалуйста, создайте её в соответствии со своим окружением:
[weblate]
url = https://hosted.weblate.org/api/
[keys]
https://hosted.weblate.org/api/ = APIKEY
После этого вы сможете вызывать команды на умолчательном сервере:
wlc ls
wlc commit sandbox/hello-world
См.также
Обзор¶
wlc [arguments] <command> [options]
Какая операция должна быть выполнена на самом деле указывает параметр command.
Описание¶
Weblate Client — это библиотека Python и инструмент командной строки для удалённого управления Weblate с помощью его API. Инструмент командной строки может быть вызван как команда wlc, которая построена на основе модуля wlc.
Аргументы¶
Программа принимает следующие аргументы, определяющие формат вывода или то, какой надо использовать экземпляр Weblate’а. Они должны быть введены до какой-либо команды.
-
--format{csv,json,text,html}¶ Определяет формат вывода.
-
--urlURL¶ Укажите URL-адрес API. Переопределяет любое значение, найденное в конфигурационном файле, смотрите раздел Файлы конфигурации. URL-адрес должен заканчиваться на
/api/, например,https://hosted.weblate.org/api/.
-
--keyKEY¶ Определяет пользовательский ключ API. Переопределяет любое значение, найденное в конфигурационном файле, смотрите раздел Файлы конфигурации. Свой ключ вы можете найти в своём профиле на Weblate.
-
--configPATH¶ Переопределяет путь к конфигурационному файлу, смотрите раздел Файлы конфигурации.
-
--config-sectionSECTION¶ Переопределяет используемый раздел конфигурационного файла, смотрите раздел Файлы конфигурации.
Команды¶
Доступны следующие команды:
-
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.
Удаляет любые неотслеживаемые изменения в объекте Weblate (переводе, компоненте или проекте) для приведения их в соответствие с удалённым репозиторием.
-
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¶ Указывает файл, в который нужно сохранить вывод, если не задать, вывод будет распечатан в стандартный поток вывода.
-
-
upload¶ Добавлено в версии 0.9: Поддерживается с версии wlc 0.9.
Загружает файл перевода.
-
--overwrite¶ Перезаписать существующие переводы во время загрузки.
-
--input¶ Файл, из которого читается содержимое, если не задать, чтение будет производиться со стандартного потока ввода.
-
Подсказка
You can get more detailed information on invoking individual commands by
passing --help, for example: wlc ls --help.
Файлы конфигурации¶
.weblate,.weblate.ini,weblate.iniИзменено в версии 1.6: The files with .ini extension are accepted as well.
Проектный файл конфигурации
C:\Users\NAME\AppData\weblate.iniДобавлено в версии 1.6.
Пользовательский файл конфигурации на Windows.
~/.config/weblateПользовательский файл конфигурации
/etc/xdg/weblateСистемный файл конфигурации
Программа следует спецификации XDG, поэтому вы можете скорректировать пути размещения конфигурационных файлов переменными окружения XDG_CONFIG_HOME или XDG_CONFIG_DIRS. В Windows предпочтительным местом для файла конфигурации является каталог APPDATA.
Можно настроить следующие параметры, находящиеся в разделе [weblate] (изменить этот раздел вы можете ключом командной строки --config-section):
-
key Ключ API для доступа к Weblate.
-
url Адрес API сервера, по умолчанию установлен в
http://127.0.0.1:8000/api/.
-
translation Путь к переводу по умолчанию — компоненту или проекту.
Файл конфигурации является INI-файлом, например:
[weblate]
url = https://hosted.weblate.org/api/
key = APIKEY
translation = weblate/master
Дополнительно ключи API могут быть сохранены в разделе [keys]:
[keys]
https://hosted.weblate.org/api/ = APIKEY
Это позволяет вам сохранять ключи в ваших личных настройках, а конфигурацию .weblate в хранить в репозитории системы контроля версий, чтобы wlc знала, с каким сервером ей следует общаться.
Примеры¶
Печать текущей версии программы:
$ wlc version
version: 0.1
Список всех проектов:
$ wlc list-projects
name: Hello
slug: hello
url: http://example.com/api/projects/hello/
web: https://weblate.org/
web_url: http://example.com/projects/hello/
Также вы можете указать, с каким проектом должен работать wlc:
$ cat .weblate
[weblate]
url = https://hosted.weblate.org/api/
translation = weblate/master
$ wlc show
branch: master
file_format: po
source_language: en
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