Клиент 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
Установка:
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
You might want to pass your Файлы конфигурации to the Docker container, the
easiest approach is to add your current directory as /home/weblate
volume:
docker run --volume $PWD:/home/weblate --rm weblate/wlc show
Начало работы¶
Конфигурация 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}
¶ Определяет формат вывода.
-
--url
URL
¶ Укажите URL-адрес API. Переопределяет любое значение, найденное в конфигурационном файле, смотрите раздел Файлы конфигурации. URL-адрес должен заканчиваться на
/api/
, например,https://hosted.weblate.org/api/
.
-
--key
KEY
¶ Определяет пользовательский ключ API. Переопределяет любое значение, найденное в конфигурационном файле, смотрите раздел Файлы конфигурации. Свой ключ вы можете найти в своём профиле на 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.
Удаляет любые неотслеживаемые изменения в объекте 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