.weblate
Per project configuration file
Weblate client documentation new in version 2.7: the wlc utility is fully supported since weblate 2.7. if you are using older version some incompatibilities with api might occur.
Weblate Client is Python library and command line utility to manage Weblate remotely using api. The command line utility can be invoked as wlc and is build on wlc.
The program accepts following global options, which must be entered before subcommand.
--format {csv,json,text,html}
Specify output format.
--url URL
Specify API URL. Overrides value from configuration file, see Files. The URL should end with /api/, for example https://hosted.weblate.org/api/.
--key KEY
Specify API user key to use. Overrides value from configuration file, see Files. You can figure out your key in your profile in Weblate.
--config PATH
Override path to configuration file, see Files.
--config-section SECTION
Override section to use in configuration file, see Files.
Currently following subcommands are available:
versionPrints current version.
list-languagesList used languages in Weblate.
list-projectsList projects in Weblate.
list-componentsList components in Weblate.
list-translationsList translations in Weblate.
showShows Weblate object (translation, component or project).
lsLists Weblate object (translation, component or project).
commitCommits changes in Weblate object (translation, component or project).
pullPulls remote repository changes into Weblate object (translation, component or project).
pushPusches changes in Weblate object into remote repository (translation, component or project).
repoDisplays repository status for given Weblate object (translation, component or project).
statisticsDisplays detailed statistics for given Weblate object (translation or component).
lock-statusNew in version 0.5: Supported since wlc 0.5.
Displays lock status.
lockNew in version 0.5: Supported since wlc 0.5.
Locks component from translating in Weblate.
unlockNew in version 0.5: Supported since wlc 0.5.
Unlocks component from translating in Weblate.
.weblate
Per project configuration file
~/.config/weblate
User configuration file
/etc/xdg/weblate
Global configuration file
The program follows 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
API KEY to access Weblate.
url
API server URL, defaults to http://127.0.0.1:8000/api/.
translation
Path of default translation, component or project.
The configuration file is INI file, for example:
[weblate] url = https://hosted.weblate.org/api/ key = APIKEY translation = weblate/master
Additionally API keys can be stored in the [keys] section:
[keys] https://hosted.weblate.org/api/ = APIKEY
This allows you to store keys in your personal settings, while having .weblate configuration in the VCS repository so that wlc knows to which server it should talk.
Print current program version:
$ wlc version version: 0.1
List all projects:
$ wlc list-projects name: Hello slug: hello source_language: en url: http://example.com/api/projects/hello/ web: http://weblate.org/ web_url: http://example.com/projects/hello/
You can also let wlc know current project and it will then operate on it:
$ 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: git://git.weblate.org/weblate.git 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/nijel/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/
With such setup it is easy to commit pending changes in current project:
$ wlc commit