Weblate Client

Installatie

De Weblate Client wordt afzonderlijk geleverd en bevat de module voor Python. U moet met pip wlc installeren om de opdrachten hieronder te kunnen gebruiken:

pip install wlc

U kunt het ook direct uitvoeren met uvx:

uvx wlc --help

Hint

U kunt ook dit wlc als een module voor Python gebruiken, bekijk wlc.

Docker gebruiken

De Weblate Client is ook beschikbaar als een Docker image.

De image wordt gepubliceerd op Docker Hub: https://hub.docker.com/r/weblate/wlc

Installeren:

docker pull weblate/wlc

De Docker container gebruikt Weblate’s standaardinstellingen en verbindt met de API die is uitgerold op localhost. De URL voor de API en API_KEY kunnen worden geconfigureerd met de argumenten die worden geaccepteerd door Weblate.

De opdracht om de container te starten gebruikt de volgende syntaxis:

docker run --rm weblate/wlc [WLC_ARGS]

Voorbeeld:

docker run --rm weblate/wlc --url https://hosted.weblate.org/api/ list-projects

U wilt misschien uw Configuratiebestanden doorgeven aan de Docker container, de gemakkelijkste benadering is om uw huidige map toe te voegen als het volume /home/weblate:

docker run --volume $PWD:/home/weblate --rm weblate/wlc show

Beginnen

De configuratie van wlc wordt opgeslagen in ~/.config/weblate (bekijk Configuratiebestanden voor andere locaties), maak het passend voor uw omgeving:

[weblate]
url = https://hosted.weblate.org/api/

[keys]
https://hosted.weblate.org/api/ = APIKEY

U kunt dan opdrachten aanroepen op de standaard server:

wlc ls
wlc commit sandbox/hello-world

Verouderde configuratie

Veranderd in versie 1.17: De verouderde configuratie die key zonder bereik gebruikte, wordt niet langer ondersteund.

Verouderde configuratie migreren:

[weblate]
url = https://hosted.weblate.org/api
key = YOUR_KEY_HERE

Naar een configuratie met sleutel die een API URL als bereik heeft:

[weblate]
url = https://hosted.weblate.org/api

[keys]
https://hosted.weblate.org/api = YOUR_KEY_HERE

Synopsis

wlc [arguments] <command> [options]

Opdrachten geven feitelijk aan welke bewerking zou moeten worden uitgevoerd.

Omschrijving

Weblate Client is een bibliotheek van Python en een hulpprogramma om Weblate op afstand te beheren met de Weblate REST API. Het hulpprogramma voor de opdrachtregel kan worden aangeroepen als wlc en is ingebouwd in wlc.

Argumenten

Het programma accepteert de volgende argumenten die de indeling voor de uitvoer definiëren of welke instantie van Weblate te gebruiken. Deze moeten worden ingevoerd voor een opdracht.

--format {csv,json,text,html}

Specificeren van de indeling van de uitvoer.

--url URL

Specificeer de URL van de API. Overschrijft elke waarde die wordt gevonden in het configuratiebestand, bekijk Configuratiebestanden. De URL zou moeten eindigen met /api/, bijvoorbeeld https://hosted.weblate.org/api/.

--key KEY

Specificeer de te gebruiken gebruikerssleutel voor de API. Overschrijft elke gevonden waarde in het configuratiebestand, bekijk Configuratiebestanden. U kunt uw sleutel vinden in uw profiel in Weblate.

--config PATH

Overschrijft het pad voor het configuratiebestand, bekijk Configuratiebestanden.

--config-section SECTION

Overschrijft het in gebruik zijnde gedeelte van het configuratiebestand, bekijk Configuratiebestanden.

Opdrachten

De volgende opdrachten zijn beschikbaar:

version

Drukt de huidige versie af.

list-languages

Somt de gebruikte talen in Weblate op.

list-projects

Somt projecten in Weblate op.

list-components

Somt onderdelen in Weblate op.

list-translations

Somt vertalingen in Weblate op.

show

Geeft object van Weblate weer (vertaling, onderdeel of project).

ls

Somt object van Weblate op (vertaling, component of project).

commit

Dient wijzigingen in die zijn gemaakt in een object van Weblate (vertaling, onderdeel of project).

pull

Haalt wijzigingen vanuit de opslagruimte op afstand op naar een object van Weblate (vertaling, onderdeel of project).

push

Pusht wijzigingen in een object van Weblate naar de opslagruimte op afstand (vertaling, onderdeel of project).

reset

Herstelt wijzigingen in object van Weblate om overeen te komen met de opslagruimte op afstand (vertaling, onderdeel of project).

cleanup

Verwijdert niet bijgehouden wijzigingen in een object van Weblate om overeen te komen met de opslagruimte op afstand (vertaling, onderdeel of project).

repo

Geeft de status van de opslagruimte weer voor een bepaald object van Weblate (vertaling, onderdeel of project).

stats

Geeft gedetailleerde statistieken weer voor een bepaald object van Weblate (vertaling, onderdeel of project).

lock-status

Geeft de status van de vergrendeling weer.

lock

Vergrendelt onderdeel tegen verdere vertaling in Weblate.

unlock

Heft de vergrendeling tegen de vertaling van het onderdeel van Weblate op.

changes

Geeft wijzigingen weer voor een bepaald object.

download

Downloadt een vertaalbestand.

--convert

Converteert bestandsindeling, indien niet gespecificeerd wordt er geen conversie uitgevoerd op de server en het bestand wordt, zoals het is, gedownload naar de opslagruimte.

--output

Specificeert het bestand waarin de uitvoer moet worden opgeslagen, indien niet gespecificeerd wordt het afgedrukt naar stdout.

upload

Uploadt een vertaalbestand.

--overwrite

Overschrijf bestaande vertalingen bij uploaden.

--input

Bestand waaruit inhoud wordt gelezen, indien niet gespecificeerd wordt het gelezen vanuit stdin.

--method

Te gebruiken methode voor uploaden, bekijk Methoden voor importeren.

--fuzzy

Verwerken fuzzy tekenreeksen (gemarkeerd om te bewerken) (empty, process, approve)

--author-name

Naam van de auteur, om de momenteel geauthenticeerde gebruiker te overschrijven

--author-email

E-mail van de auteur, om de momenteel geauthenticeerde gebruiker te overschrijven

Hint

U kunt meer gedetailleerde informatie over het aanroepen van individuele opdrachten krijgen door in te voeren --help, bijvoorbeeld: wlc ls --help.

Configuratiebestanden

.weblate, .weblate.ini, weblate.ini

Configuratiebestand geplaatst in de projectmap.

C:\Users\NAME\AppData\Roaming\weblate.ini

Gebruiker op Windows het configuratiebestand in het geroamde profiel.

C:\Users\NAME\AppData\Local\weblate.ini

Gebruiker configuratiebestand op Windows in het lokale profiel.

~/.config/weblate

Gebruiker configuratiebestand.

/etc/xdg/weblate

Systeembreed configuratiebestand.

Het programma volgt de specificatie XDG, dus kunt u de plaatsing van configuratiebestanden aanpassen met de omgevingsvariabelen XDG_CONFIG_HOME of XDG_CONFIG_DIRS.

Op Windows zijn de mappen APPDATA en LOCALAPPDATA de voorkeurslocaties voor het configuratiebestand.

De volgende instellingen kunnen worden geconfigureerd in het gedeelte [weblate] (u kunt dit aanpassen met --config-section):

key

Removed in version 1.17: Gebruik het gedeelte [keys] om sleutels te specificeren die als bereik individuele API URL’s hebben, bekijk Verouderde configuratie.

url

API server URL, standaard is http://127.0.0.1:8000/api/.

translation

Pad naar de standaard vertaling - onderdeel of project.

Het configuratiebestand is een INI-bestand, bijvoorbeeld:

[weblate]
url = https://hosted.weblate.org/api/
translation = weblate/application

De sleutels voor de API worden opgeslagen in het gedeelte [keys]:

[keys]
https://hosted.weblate.org/api/ = APIKEY

Dit stelt u in staat sleutels op te slaan in uw persoonlijke instellingen, bij het gebruiken van de configuratie .weblate in de opslagruimte van het VCS zodat wlc weet met welke server het zou moeten praten.

Voorbeelden

Huidige programmaversie afdrukken:

$ wlc version
version: 0.1

Alle projecten opsommen:

$ 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/

Vertaalbestand uploaden:

$ wlc upload project/component/language --input /tmp/hello.po

U kunt ook bepalen met welk project wlc zou moeten werken:

$ 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/

Met deze opstelling is het gemakkelijk om openstaande wijzigingen in te dienen in het huidige project:

$ wlc commit