Cliente de Weblate¶
Instalación¶
EL Weblate Client se distribuye por separado e incluye el módulo Python. Para utilizar los comandos que se indican a continuación, es necesario instalar wlc mediante pip:
pip install wlc
Puedes además ejecutarlo directamente utilizando uvx:
uvx wlc --help
Consejo
También puede utilizar este wlc como un módulo de Python, consulte wlc.
Uso de Docker¶
El cliente de Weblate está disponible también como imagen para Docker.
La imagen está publicada en Gocker Hub: https://hub.docker.com/r/weblate/wlc
Instalación:
docker pull weblate/wlc
El contenedor Docker utiliza los ajustes predeterminados de Weblate y se conecta al API implementada en localhost. La URL del API y el API_KEY pueden ser configurados a través de los argumentos aceptados por Weblate.
El comando para lanzar el contenedor utiliza la siguiente sintaxis:
docker run --rm weblate/wlc [WLC_ARGS]
Ejemplo:
docker run --rm weblate/wlc --url https://hosted.weblate.org/api/ list-projects
Es posible que desee pasar su Archivos de configuración al contenedor Docker, la forma más sencilla de hacerlo es añadir su directorio actual como volumen /home/weblate:
docker run --volume $PWD:/home/weblate --rm weblate/wlc show
Primeros pasos¶
La configuración de wlc se almacena en ~/.config/weblate (consulte Archivos de configuración para otros lugares), créelo para que coincida con su entorno:
[weblate]
url = https://hosted.weblate.org/api/
[keys]
https://hosted.weblate.org/api/ = APIKEY
Entonces pude invocar instrucciones en el servidor por defecto:
wlc ls
wlc commit sandbox/hello-world
Ver también
Configuración heredada¶
Distinto en la versión 1.17: La configuración heredada que utiliza key sin ámbito ya no es compatible.
Migrar configuración heredada:
[weblate]
url = https://hosted.weblate.org/api
key = YOUR_KEY_HERE
A una configuración con clave delimitada a una URL de API:
[weblate]
url = https://hosted.weblate.org/api
[keys]
https://hosted.weblate.org/api = YOUR_KEY_HERE
Sinopsis¶
wlc [arguments] <command> [options]
Las órdenes indican cuál operación ha de realizarse.
Descripción¶
Weblate Client es una biblioteca de Python y una utilidad de línea de comandos para gestionar Weblate de forma remota utilizando API REST de Weblate. La utilidad de línea de comandos se puede invocar como wlc y está integrada en wlc.
Argumentos¶
El programa acepta los argumentos siguientes, que definen el formato de la salida, o bien, cuál instalación de Weblate utilizar. Deben introducirse antes de cualquier orden.
- --format {csv,json,text,html}¶
Especifique el formato de la salida.
- --url URL¶
Especifique la URL del API. Anula cualquier valor que se encuentre en el archivo de configuración, consulte Archivos de configuración. La URL debe terminar con
/api/, por ejemplo,https://hosted.weblate.org/api/.
- --key KEY¶
Especifique la clave del usuario del API a utilizar. Sustituya cualquier valor encontrado en el archivo de configuración, consulte Archivos de configuración. Puede encontrar su clave en su perfil de Weblate.
- --config PATH¶
Sustituye la ruta del archivo de configuración, consulte Archivos de configuración.
- --config-section SECTION¶
Sustituye la sección del archivo de configuración en uso, consulte Archivos de configuración.
Instrucciones¶
Las siguientes órdenes están disponibles:
- version¶
Declara la versión actual.
- list-languages¶
Enumera los idiomas utilizados en Weblate.
- list-projects¶
Enumera los proyectos en Weblate.
- list-components¶
Enumera los componentes en Weblate.
- list-translations¶
Enumera las traducciones en Weblate.
- show¶
Muestra un objeto de Weblate (traducción, componente o proyecto).
- ls¶
Enumera objetos de Weblate (traducción, componente o proyecto).
- commit¶
Consigna los cambios efectuados en un objeto de Weblate (traducción, componente o proyecto).
- pull¶
Incorpora los cambios en el repositorio remoto en un objeto de Weblate (traducción, componente o proyecto).
- push¶
Envía los cambios en el objeto de Weblate (traducción, componente o proyecto) al repositorio remoto.
- reset¶
Restablece los cambios en un objeto de Weblate (traducción, componente o proyecto) para que coincida con el repositorio remoto.
- cleanup¶
Retira cualquier cambio no seguido en un objeto Weblate para coincidir con el repositorio remoto (traducción, componente o proyecto).
- repo¶
Exhibe estado del repositorio para un objeto Weblate dado (traducción, componente o proyecto).
- stats¶
Exhibe estadísticas detalladas para un objeto Weblate dada (traducción, componente o proyecto).
- lock-status¶
Exhibe estado de bloqueo.
- lock¶
Bloquea el componente para evitar más traducciones en Weblate.
- unlock¶
Desbloquea la traducción del componente de Weblate.
- changes¶
Muestra los cambios correspondientes al objeto indicado.
- download¶
Descarga un archivo de traducción.
- --convert¶
Convierte el formato de archivo. Si no se especifica ningún formato, no se produce ninguna conversión en el servidor y el archivo se descarga tal cual es en el repositorio.
- --output¶
Permite especificar el archivo en el que se guardará la salida; si no se define, se mostrará en la salida estándar.
- upload¶
Carga un archivo de traducción.
- --overwrite¶
Sobrescribir traducciones existentes al cargar.
- --input¶
Archivo del cual se lee contenido; si no se define, se lee de la entrada estándar.
- --method¶
Método de subida a utilizar, consulte Métodos de importación.
- --fuzzy¶
Cadenas difusas (marcadas para editar) procesando (empty,
process,approve)
- --author-name¶
Nombre del autor, para sustituir actualmente al usuario autenticado
- --author-email¶
Correo-e del autor, para sobrescribir el usuario actualmente autenticado
Consejo
Puede obtener más información al invocar cada instrucción individual si añade --help; por ejemplo: wlc ls --help.
Archivos de configuración¶
.weblate,.weblate.ini,weblate.iniArchivo de configuración colocada en el directorio del proyecto.
C:\Usuarios\NOMBRE\AppData\Roaming\weblate.iniArchivo de configuración de usuario en Windows dentro del perfil deambulado.
C:\Users\NOMBRE\AppData\Local\weblate.iniArchivo de configuración de usuario en Windows dentro del perfil local.
~/.config/weblateArchivo de configuración de usuario.
/etc/xdg/weblateArchivo de configuración para todo el sistema.
El programa sigue la especificación XDG, por tanto puede ajustar la colocación de los archivos de configuración mediante las variables de entorno XDG_CONFIG_HOME o XDG_CONFIG_DIRS.
En Windows los directorios APPDATA y LOCALAPPDATA son los lugares preferidos para el archivo de configuración.
Siguiendo los ajustes puede ser configurado en la sección [weblate] (puede personalizar esto por --config-section):
- key
Removed in version 1.17: Utiliza la sección
[claves]para especificar las claves delimitadas para las URL individuales del API, consulte Configuración heredada.
- url
URL del servidor del API; el valor predeterminado es
http://127.0.0.1:8000/api/.
- translation
Ruta para la traducción por defecto - componente o proyecto.
El archivo de configuración es un INI; por ejemplo:
[weblate]
url = https://hosted.weblate.org/api/
translation = weblate/application
Las claves del API son almacenadas dentro de la sección [keys]:
[keys]
https://hosted.weblate.org/api/ = APIKEY
Esto le permite almacenar claves en sus ajustes personales, mientras utiliza la configuración .weblate en el repositorio VCS para que wlc sepa con qué servidor debe comunicarse.
Variables de entorno¶
Added in version 1.18.0.
La URL y la clave del API también se pueden configurar mediante variables de entorno. Esto resulta especialmente útil para los flujos de trabajo de integración continua (IC):
- WLC_URL¶
URL DE API
- WLC_KEY¶
Clave API
La precedencia de configuración (de más alta a más baja) es:
Archivo de configuración (consulte Archivos de configuración).
Ejemplos¶
Mostrar la versión actual del programa:
$ wlc version
version: 0.1
Enumerar todos los proyectos:
$ 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/
Subir un archivo de traducción:
$ wlc upload project/component/language --input /tmp/hello.po
También puede designar que proyecto wlc funcionaría:
$ 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/
Con esta configuración es sencillo consignar los cambios pendientes del proyecto actual:
$ wlc commit