Weblate クライアント¶
バージョン 2.7 で追加: Weblate 2.7 以降、wlc ユーティリティにすべて対応しています。古いバージョンを使用している場合は、API との互換性に問題が発生することがあります。
導入¶
Weblate クライアントは個別に提供され、Python モジュールを含んでいます。以下のコマンドを使用するには、wlc
をインストールすることが必要です。
pip3 install wlc
Docker の使用¶
Weblate クライアントは Docker イメージでも動作します。
イメージは Docker Hub: https://hub.docker.com/r/weblate/wlc で公開しています
インストール:
docker pull weblate/wlc
Docker コンテナは Weblate のデフォルト設定を使用して、localhost にデプロイされた API に接続します。API URL と API_KEY は、Weblate が受け入れる引数で設定できます。
コンテナがコマンドで起動する構文:
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
に保存されます(他の場所については 設定ファイル for other locations を参照:)。環境に合わせて作成してください:
[weblate]
url = https://hosted.weblate.org/api/
[keys]
https://hosted.weblate.org/api/ = APIKEY
そのあと、デフォルト サーバーでコマンドを呼び出せます。
wlc ls
wlc commit sandbox/hello-world
参考
解説¶
Weblate クライアントは Python ライブラリであり、Weblate の REST API を使用して Weblate をリモートで管理するためのコマンドライン ユーティリティです。コマンドライン ユーティリティは、wlc として呼び出すことができ、wlc
に標準搭載されています。
引数¶
プログラムは、出力形式を定義する以下の引数、または使用する Weblate インスタンスを受け入れます。これらは、コマンドの前に入力が必要です。
- --format {csv,json,text,html}¶
出力形式を指定する。
コマンド¶
使用できるコマンド:
- 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¶
内容を読み込むファイル。指定しない場合は、stdin から読み込む。
ヒント
--help
を付加すると、個々のコマンドの呼び出しに関するより詳細な情報を取得できる。例: wlc ls --help
。
設定ファイル¶
.weblate
、.weblate.ini
、weblate.ini
バージョン 1.6 で変更: 拡張子が .ini のファイルにも対応する。
プロジェクト別の構成ファイル
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
Weblate に接続するための API キー。
- url
API サーバーの URL、デフォルトは
http://127.0.0.1:8000/api/
。
- translation
デフォルトの翻訳へのパス - コンポーネントまたはプロジェクト。
設定ファイルは、次のような INI ファイル:
[weblate]
url = https://hosted.weblate.org/api/
key = APIKEY
translation = weblate/application
さらに、API キーは次の [keys]
セクションに保存が可能:
[keys]
https://hosted.weblate.org/api/ = APIKEY
これにより、VCS リポジトリー内の .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/application
$ wlc show
branch: main
file_format: po
source_language: en
filemask: weblate/locale/*/LC_MESSAGES/django.po
git_export: https://hosted.weblate.org/git/weblate/application/
license: GPL-3.0+
license_url: https://spdx.org/licenses/GPL-3.0+
name: Application
new_base: weblate/locale/django.pot
project: weblate
repo: git://github.com/WeblateOrg/weblate.git
slug: application
template:
url: https://hosted.weblate.org/api/components/weblate/application/
vcs: git
web_url: https://hosted.weblate.org/projects/weblate/application/
この設定により、現在のプロジェクトで保留中の変更を簡単にコミットが可能:
$ wlc commit