Weblate クライアント¶
バージョン 2.7 で追加: Weblate 2.7 以降、wlc ユーティリティにすべて対応しています。古いバージョンを使用している場合は、API との互換性に問題が発生することがあります。
導入¶
Weblate クライアントは個別に提供され、Python モジュールを含んでいます。以下のコマンドを使用するには、wlc
をインストールすることが必要です。
pip3 install wlc
ヒント
Please use Power Shell or another modern equivalent when you install wlc under Windows. Since wlc uses some very long file paths/names during installation, cmd may fail due to the windows path length limit.
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 ライブラリであり、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/master
さらに、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/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