Complementos¶
Los complementos permiten personalizar y automatizar el flujo de trabajo de traducción. Los administradores pueden añadir y gestionar complementos desde el menú Operaciones ↓ Accesorios de cada proyecto de traducción o componente. Los complementos también pueden instalarse en todo el sitio en Interfaz administrativa.
Consejo
También puede configurar los complementos usando API, DEFAULT_ADDONS o install_addon.
Los complementos que permiten la activación manual pueden ejecutarse desde la gestión de complementos o mediante el API. Los resultados se registran en el registro de actividad del complemento.
Eventos del complemento disparador¶
Instalación de complemento¶
Disparado cuando se está instalando el complemento.
Actualización de componente¶
Disparador cuando sucede un cambio dentro del componente como por ejemplo:
Cadenas son modificadas dentro del repositorio.
Una cadena es agregada.
Se agrega una traducción nueva.
Diario¶
Disparado diariamente, pero complementos usualmente desglosan la carga diaria entre componentes dependiendo en BACKGROUND_TASKS.
Cambio de evento¶
Disparador tras ser creado un evento de Cambio.
Disparador manual¶
Se activa cuando se ejecuta un complemento manualmente desde la gestión de complementos o la API.
Repositorio tras añadir¶
Disparador justo tras la traducción nueva sea agregada y consolidada.
Repositorio post-consolidada¶
Disparador justo tras los cambios sean consolidadas.
Repositorio post-efectuar¶
Disparador justo tras el repositorio sea puesto en el nivel superior.
Repositorio tras retirar¶
Disparado tan solo tras una traducción es retirada.
Repositorio posterior al ser actualizado¶
Disparador en cuanto los cambios nuevos son subidos desde el repositorio actual.
Repositorio pre-consolidado¶
Disparado tan solo antes de los cambios sean consolidados.
Repositorio pre-aplicado¶
Disparado en el momento de que el repositorio es subido a la última versión.
Repositorio pre-actualizado¶
Disparado justo antes que intentara actualizar el repositorio.
Unidad post-guardada¶
Disparado justa tras la cada es guardada.
Unidad post-síncrona¶
Disparado justo tras la cadena está sincronizada con el VCS.
Unidad pre-creación¶
Disparado justo tras la cadena nuevamente creada es guardada.
Complementos integrados¶
Traducción automática¶
- ID del complemento:
weblate.autotranslate.autotranslate- Configuración:
modeModo de traducción automatizada
Elecciones disponibles:¶ suggestAgregar como sugerencia
translateAgregar como traducción
fuzzyAgregar como «Necesita ser editado»
qConsulta
Observe que traducir todas las cadenas descartará todas las traducciones existentes.
auto_sourceOrigen de traducciones automáticas
Elecciones disponibles:¶ othersOtros componentes de la traducción
mtTraducción automática
componentComponente
Introduzca indicador de un componente para usarlo como origen, manténgalo en blanco para usar todos los componentes del proyecto actual.
enginesMotores de máquinas de traducción
thresholdUmbral de puntuación
- Disparadores:
Instalación de complemento, Actualización de componente, Diario, Cambio de evento
Traduce automáticamente las cadenas mediante traducción automática u otros componentes.
CDN de regionalización de JavaScript¶
Added in version 4.2.
- ID del complemento:
weblate.cdn.cdnjs- Configuración:
thresholdUmbral de traducción
El porcentaje de cadenas traducidas que deben ser presentadas para traducción a ser incluidas.
css_selectorSelector de CSS
Selector de CSS para detectar elementos regionalizables.
cookie_nameNombre de la «cookie» de idioma
Nombre de la «cookie» que almacena la preferencia de idioma.
filesExtraer cadenas desde archivos HTML
Lista de nombres de archivo en el repositorio actual o URL remotos que interpretar en busca de cadenas traducibles.
- Disparadores:
Instalación de complemento, Diario, Repositorio post-consolidada, Repositorio tras retirar, Repositorio posterior al ser actualizado
Publica las traducciones en una red de entrega de contenidos para su uso al regionalizar JavaScript o HTML.
Puede usarse para traducir páginas estáticas HTML o cargar cadenas de localización en el código JavaScript.
Genera una URL única para su componente que pueda incluir para localizarlas en las páginas HTML . Consulte Traducir HTML y JavaScript mediante la CDN de Weblate para más detalles.
Nota
Este complemento requiere una configuración adicional en el servidor Weblate. LOCALIZE_CDN_PATH configura dónde se escribirán los archivos generados (en un “filesystem”), y LOCALIZE_CDN_URL define dónde se servirán (URL). Weblate no se encarga de servir los archivos, sino que debe configurarse externamente (normalmente mediante un servicio CDN).
Este complemento se configura en Alojado en Weblate y sirve los archivos a través de https://weblate-cdn.com/.
Translation files CDN¶
Added in version 2026.5.
- ID del complemento:
weblate.cdn.files- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Actualización de componente, Repositorio post-consolidada, Repositorio tras retirar, Repositorio posterior al ser actualizado
Publishes translation files into a content delivery network.
Publishes translation files without converting them to another format. Files
are written below the add-on specific CDN directory and served from
LOCALIZE_CDN_URL/<add-on UUID>/. Single-file translations use the language
code and original file extension, for example cs.json or de.po.
Multi-file translations are served below the language code using paths relative
to the translation directory. Monolingual components include the source
language file, while bilingual components publish only target-language files.
See CDN de regionalización for secure serving guidance.
Quitar cadenas vacías¶
Added in version 4.4.
- ID del complemento:
weblate.cleanup.blank- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Repositorio post-consolidada, Repositorio posterior al ser actualizado
Quita las cadenas que carecen de traducción de los archivos de traducción.
Use esto para no tener cadenas vacías en los archivos de traducción (por ejemplo si su biblioteca de localización los marca como faltantes en vez de usar la cadena original).
Limpieza de archivos de traducción¶
- ID del complemento:
weblate.cleanup.generic- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Repositorio posterior al ser actualizado, Repositorio pre-consolidado
Actualiza todos los archivos de traducción para que coincidan con el archivo de base monolingüe. Para la mayoría de los formatos de archivo, esto implica quitar las claves de traducción obsoletas que ya no están en el archivo de base.
En el caso de formatos con contenido adicional además de las cadenas de traducción (como Archivos HTML, Archivos RC de Windows o Formato OpenDocument), esto también sincroniza el archivo de traducción con el archivo base.
Adición de idiomas faltantes¶
- ID del complemento:
weblate.consistency.languages- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Garantiza que en todos los componentes de un proyecto se utilice el mismo conjunto de idiomas.
Nota
Los componentes compartidos desde otros proyectos no se consideran en esto.
Los idiomas que faltan se verifican una vez cada 24 horas y también cuando se agregan nuevos idiomas en Weblate.
A diferencia de la mayoría de los demás complementos, este afecta a todo el proyecto.
Consejo
Traducción automática de cadenas recién agregadas con Traducción automática.
Detección de componentes¶
- ID del complemento:
weblate.discovery.discovery- Configuración:
matchExpresión regular utilizada para relacionar con los archivos de traducción
La expresión regular debe definir grupos nombrados para componente e idioma.
file_formatFormato de archivo
name_templatePersonalizar el nombre del componente
Utilice sintaxis de plantilla Django. Esta plantilla debe incluir {{ component }}.
base_file_templateDefinir el nombre del archivo de base monolingüe
Dejar vacío para archivos de traducción bilingües. Cuando se establece, esta plantilla debe incluir {{ component }}.
new_base_templateDefinir el archivo de base para traducciones nuevas
Nombre del archivo utilizado para crear traducciones nuevas. Para gettext elija el archivo .pot. Esta plantilla debe incluir {{ component }}.
intermediate_templateArchivo de idioma intermediario
Nombre del archivo de traducción intermediario. En muchos casos esto es un archivo de traducción provisto por desarrolladores y es utilizado cuando crea las cadenas de origen finales. Esta plantilla debe incluir {{ component }}.
language_regexFiltro de idioma
Expresión regular para filtrar los archivos de traducción cuando se busca una máscara de archivo.
copy_addonsClonar complementos desde el componente principal a los nuevamente creados
removeQuitar componentes de archivos inexistentes
- Disparadores:
Instalación de complemento, Repositorio posterior al ser actualizado
Añade o quita automáticamente componentes del proyecto en función de los cambios de los archivos en el sistema de control de versiones.
La comparación se realiza mediante expresiones regulares, lo que permite una configuración compleja, pero se requieren algunos conocimientos para ello. La expresión regular para buscar archivos de traducción debe contener dos grupos de nombres para buscar el componente y el idioma. Todos los grupos con nombre de la expresión regular pueden utilizarse como variables en los campos de plantilla.
Requisitos de descubrimiento¶
Para descubrir un componente correctamente, la configuración debe hacer todo lo siguiente:
La expresión regular debe definir grupos con nombre
componenteylenguaje.Los campos de plantilla utilizados para nombrar o localizar archivos por componente deben incluir
{{ component }}, de modo que el valor representado cambia realmente para cada componente descubierto.Para formatos monolingües, el componente debe contener un archivo que coincida con
base_file_templatey al menos un archivo de traducción que coincida conmatch.
Ejemplo práctico: news_<lang>.md¶
Este es una distribución de variante de lenguaje común basado en nombres de archivo:
docs/news_en.mddocs/news_cs.mddocs/guide_en.md
Utilice el preajuste Variantes de idioma basadas en el nombre de archivo como punto de partida, luego elija el formato de archivo correspondiente y revise los valores que aparecen.
- Expresión regular:
(?:(?P<path>.*/))?(?P<component>.+?)_(?P<language>[A-Za-z]{2,3}(?:[_-][A-Za-z0-9]+)*)\.(?P<extension>[^/.]+)- Nombre del componente:
{{ component }}- Máscaras de archivo descubiertas:
docs/news_*.mddocs/guide_*.md
En este ejemplo, {{ component }} se resuelve al nombre base antes del sufijo de idioma, por lo que docs/news_en.md, docs/news_es_ES.md y docs/news_es-ES.md se convierten todos en el componente news.
Puedes utilizar la plantilla de lenguaje de marcado Django en todos los campos de nombre de archivo, por ejemplo:
{{ component }}Nombre del componente analizado a partir del grupo de coincidencias
component{{ component|title }}Nombre de archivo del componente con la primera letra mayúscula
{{ path }}: {{ component }}Grupo de concordancia personalizado a partir de la expresión regular
Cuando presiona Guardar, aparecerá una vista previa de los componentes que estarán presentes, desde donde puede comprobar si la configuración coincida actualmente con sus necesidades:
Ejemplos de búsqueda de componentes¶
El ejemplo anterior cubre la variante más común basada en nombre de archivo. Los siguientes ejemplos muestran otras estructuras de repositorio que puede coincidir.
Una carpeta por idioma¶
Una carpeta por idioma que contiene los archivos de traducción de los componentes.
- Expresión regular:
(?P<language>[^/.]*)/(?P<component>[^/]*)\.po- Archivos coincidentes:
cs/application.pocs/website.pode/application.pode/website.po
Disposición de las configuraciones regionales de Gettext¶
Estructura habitual para almacenar archivos PO de gettext.
- Expresión regular:
locale/(?P<language>[^/.]*)/LC_MESSAGES/(?P<component>[^/]*)\.po- Archivos coincidentes:
locale/es/LC_MESSAGES/application.polocale/es/LC_MESSAGES/website.polocale/es/LC_MESSAGES/application.polocale/es/LC_MESSAGES/website.po
Nombres de archivo complejos¶
Usando tanto el nombre del componente como el del idioma dentro del nombre del archivo.
- Expresión regular:
src/locale/(?P<component>[^/]*)\.(?P<language>[^/.]*)\.po- Archivos coincidentes:
src/locale/application.cs.posrc/locale/website.cs.posrc/locale/application.de.posrc/locale/website.de.po
Código lingüístico repetido¶
Usar el lenguaje tanto en la ruta como en el nombre del archivo.
- Expresión regular:
locale/(?P<language>[^/.]*)/(?P<component>[^/]*)/(?P=language)\.po- Archivos coincidentes:
locale/cs/application/cs.polocale/cs/website/cs.polocale/de/application/de.polocale/de/website/de.po
Cadenas escindidas de Android¶
Cadenas de recursos de Android, divididas en varios archivos.
- Expresión regular:
res/values-(?P<language>[^/.]*)/strings-(?P<component>[^/]*)\.xml- Archivos coincidentes:
res/values-cs/strings-about.xmlres/values-cs/strings-help.xmlres/values-de/strings-about.xmlres/values-de/strings-help.xml
Coincidiendo múltiples rutas¶
Proyecto Maven de varios módulos con traducciones de propiedades de Java.
- Expresión regular:
(?P<originalHierarchy>.+/)(?P<component>[^/]*)/src/main/resources/ApplicationResources_(?P<language>[^/.]*)\.properties- Nombre del componente:
{{ originalHierarchy }}: {{ component }}- Archivos coincidentes:
parent/module1/submodule/src/main/resources/ApplicationResources_fr.propertiesparent/module1/submodule/src/main/resources/ApplicationResource_es.propertiesparent/module2/src/main/resources/ApplicationResource_de.propertiesparent/module2/src/main/resources/ApplicationResource_ro.properties
Consejo
El complemento de detección del componente utiliza URL internos de Weblate. Es una forma conveniente de compartir la configuración de VCS entre múltiples integrantes. Los componentes vinculados utilizan el repositorio local del componente principal establecido al completar weblate://project/main-component en el campo Repositorio de código fuente (en Operaciones ↓ Ajustes ↓ Sistema de control de versión) de cada componente respectivo. Esto también ahorra tiempo con la configuración y los recursos del sistema.
Consejo
Asegúrese que el componente nuevo contenga el conjunto completo de idiomas traducibles con Adición de idiomas faltantes.
Ver también
Mensajería de Fedora¶
Added in version 5.15.
- ID del complemento:
weblate.fedora_messaging.publish- Configuración:
eventsCambio de eventos
amqp_hostHuésped interruptor de AMQP
El broker AMQP al que conectar.
amqp_sslUtilizar SSL para conexión AMQP
ca_certCertificados CA
Manojo de PEM codificado con certificados CA utilizados para validar el certificado presentado por el servidor.
client_keyClave SSL cliente
PEM codificado en clave SSL privada de cliente.
client_certCertificados SSL de cliente
PEM codificado por certificado SSL de cliente.
- Disparadores:
Envía notificaciones a una Mensajería de Fedora compatible con intercambio AMQP.
Fedora Messaging es un publicador basado en AMQP para todos los cambios que ocurren en Weblate. Puede integrar servicios adicionales para actuar ante cambios que ocurran en Weblate mediante esta herramienta.
Tema de mensaje¶
Todos los mensajes tienen tema weblate.<action>.<project>.<component>.<translation>. La representación de acción textual en minúscula de la acción con guion bajo en vez de espacio, por ejemplo resource_update, todas las otras partes son opcionales y representan indicación del objeto o un código de idioma.
Cuerpo de mensaje¶
El cuerpo consiste en los campos siguientes (proporcionados que están disponibles para el suceso):
change_idID numérico de cambio
actionNombre verboso del cambio.
timestampMarca de tiempo con formato ISO
targetValor nuevo del cambio (p.e. traducción nueva de la cadena)
oldValor anterior del cambio (p.e. traducción previa de la cadena)
sourceCadena de origen.
urlLa URL absoluta para ver el objeto relacionado.
authorApodo del autor (esto puede ser diferente desde usuario por ejemplo cuando acepta sugerencias)
userUsuario de actuación
projectIndicación del proyecto
componentIndicación del componente
translationCódigo de idioma de la traducción
Cabeceras del mensaje¶
Hay cabeceras adicionales las cuales utilizarían también enrutado:
actionNombre verboso del cambio.
projectIndicación del proyecto
componentIndicación del componente
Mensajes de ejemplo¶
Suceso de repositorio fusionado:
{
"id": 1,
"action": "Merged repository",
"timestamp": "2017-06-15T11:30:47.325000+00:00",
"url": "http://example.com/projects/test/test/",
"component": "test"
}
Suceso de cadena origen nueva:
{
"id": 2,
"action": "New source string",
"timestamp": "2017-06-15T11:30:47.372000+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Suceso de recurso actualizado:
{
"id": 6,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.410000+00:00",
"url": "http://example.com/projects/test/test/cs/",
"project": "test",
"component": "test",
"translation": "cs"
}
{
"id": 7,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.510000+00:00",
"url": "http://example.com/projects/test/test/de/",
"project": "test",
"component": "test",
"translation": "de"
}
{
"id": 8,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.595000+00:00",
"url": "http://example.com/projects/test/test/it/",
"project": "test",
"component": "test",
"translation": "it"
}
Suceso de proyecto suprimido:
{
"id": 9,
"action": "Removed project",
"timestamp": "2019-10-17T15:57:08.559420+00:00",
"target": "test",
"user": "testuser"
}
Suceso de contribuidor nuevo:
{
"id": 11,
"action": "New contributor",
"timestamp": "2019-10-17T15:57:08.759960+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"author": "testuser",
"user": "testuser",
"project": "test",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Suceso de traducción nueva:
{
"id": 12,
"action": "New translation",
"timestamp": "2019-10-17T15:57:08.772591+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"target": ["Ahoj svete!\n"],
"author": "testuser",
"user": "testuser",
"project": "test",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Ver también
Edición en masa¶
- ID del complemento:
weblate.flags.bulk- Configuración:
qConsulta
stateEstado que definir
Elecciones disponibles:¶ -1No cambiar
10Necesita edición
11Necesita edición (Necesita reescritura)
12Necesita edición (Necesita revisión)
20Traducido
30Aprobadas
add_flagsIndicadores de traducción que añadir
remove_flagsIndicadores de traducción que quitar
add_labelsEtiquetas que añadir
remove_labelsEtiquetas que quitar
- Disparadores:
Edite los indicadores, las etiquetas o los estados de las cadenas de manera masiva.
Ejemplos:
Consulta de búsqueda |
|
|---|---|
Etiquetas que añadir |
reciente |
Consulta de búsqueda |
|
|---|---|
Indicadores de traducción que añadir |
|
Consulta de búsqueda |
|
|---|---|
Indicadores de traducción que añadir |
|
Marcar las traducciones sin cambios como «Necesita reescritura»¶
- ID del complemento:
weblate.flags.same_edit- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Siempre que se importa una nueva cadena traducible desde el VCS y coincide con una cadena de origen, se marca como que necesita reescritura en Weblate. Especialmente útil para formatos de archivo que incluyen cadenas de origen para cadenas no traducidas.
Consejo
También es posible que desee ajustar la verificación Traducción no modificada agregando el indicador strict-same a Indicadores de traducción.
Ver también
Marcar nuevas cadenas de origen como «Necesita edición»¶
- ID del complemento:
weblate.flags.source_edit- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Cada vez que se importa una nueva cadena fuente desde el VCS, se marca como pendiente de revisión en Weblate. De esta forma, puedes filtrar y editar fácilmente las cadenas fuente escritas por los desarrolladores.
Ver también
Indicar traducciones nuevas como «Necesitan reescritura»¶
- ID del complemento:
weblate.flags.target_edit- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Cuando se importa una cadena traducible nueva desde el VCS, está indicado como necesidad de reescritura en Weblate. De esta manera usted puede filtrar y editar las traducciones creadas por los desarrolladores con facilidad.
Ver también
Indicar traducciones actualizadas desde el repositorio como «Necesitan reescritura»¶
- ID del complemento:
weblate.flags.target_repo_update- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Cuando se cambia una cadena traducible desde el VCS, está indicado como reescritura necesaria en Weblate. Especialmente útil si los archivos de traducción a menudo se actualizan manualmente o por un servicio externo.
Ver también
Completar las líneas de solo lectura con el origen¶
Added in version 4.18.
- ID del complemento:
weblate.generate.fill_read_only- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Actualización de componente, Diario
Completa las cadenas de traducción de solo lectura con las de origen.
Generador de estadísticas¶
- ID del complemento:
weblate.generate.generate- Configuración:
filenameNombre del archivo generado
templateContenido del archivo generado
- Disparadores:
Genera un archivo con información detallada sobre el estado de la traducción.
Es posible utilizar una plantilla de Django tanto en el nombre de archivo como en el contenido; consulte Marcación de plantilla para obtener una descripción a detalle de la marcación.
Por ejemplo, para generar un archivo resumen para cada una de las traducciones:
- Nombre del archivo generado
locale/{{ language_code }}.json- Contenido
{ "language": "{{ language_code }}", "strings": "{{ stats.all }}", "translated": "{{ stats.translated }}", "last_changed": "{{ stats.last_changed }}", "last_author": "{{ stats.last_author }}", }
Ver también
Prerellenar traducción con original¶
Added in version 4.11.
- ID del complemento:
weblate.generate.prefill- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Actualización de componente, Diario
Completa las cadenas de traducción con las de origen.
Todas las cadenas no traducidas del componente se rellenarán con la cadena de origen y se marcarán como necesiten editar. Use esto cuando no pueda tener cadenas vacías en los archivos de traducción. ..INICIO AUTO‐GENERADO: weblate.generate.pseudolocale .. Estas sección es generada automáticamente por ./manage.py list_addons. No la edite manualmente.
Generación de pseudorregiones¶
Added in version 4.5.
- ID del complemento:
weblate.generate.pseudolocale- Configuración:
sourceCadenas de origen
targetTraducción de destino
Se sobrescribirán todas las cadenas de esta traducción
prefixTexto estático antepuesto
var_prefixTexto variable antepuesto
suffixTexto estático adjunto
var_suffixTexto variable adjunto
var_multiplierMultiplicador de texto variable
En cuántas ocasiones repetirse el texto variable dependiente en la longitud de la cadena original.
include_readonlyIncluir cadenas de solo lectura
- Disparadores:
Instalación de complemento, Actualización de componente, Diario
Genera una traducción mediante la adición automática de un prefijo y un sufijo a las cadenas de origen.
Las pseudolocales son útiles para encontrar cadenas que no están preparadas para la localización. Esto se hace alterando todas las cadenas fuente traducibles para facilitar la detección de cadenas no alteradas al ejecutar la aplicación en el idioma pseudolocal.
También es posible encontrar cadenas cuyas contrapartes localizadas no se ajusten al diseño.
El uso de las partes variables hace posible buscar cadenas que podrían no encajar en la interfaz de usuario después de la localización; amplía el texto en función de la longitud de la cadena de origen. Los textos variables son repetidos por la longitud del texto multiplicada por el multiplicador. Por ejemplo, Hola mundo con el texto variable _ y el multiplicador variable de 1 se convierte en Hola mundo___________: el sufijo se repite una vez para cada carácter de la cadena de origen.
Las cadenas se generarán acorde a la pauta siguiente:
Texto estático antepuesto Texto variable antepuesto Cadena fuente Texto de variable pospuesto Texto estático pospuesto
Consejo
Puede utilizar idiomas reales para las pruebas, pero hay pseudo-locales dedicados disponibles en Weblate : en_XA y ar_XB.
Consejo
Puede utilizar este complemento para iniciar la traducción a una nueva configuración regional de un idioma existente o un idioma similar. Una vez que agregue la traducción al componente, siga hasta el complemento . Ejemplo: Si tiene fr y desea iniciar la traducción de fr_CA , simplemente establezca fr como fuente, fr_CA como destino, y deje el prefijo y el sufijo en blanco.
Desinstale el complemento una vez que haya completado la nueva traducción para evitar que Weblate cambie las traducciones realizadas tras la copia.
Colaboradores en comentarios¶
- ID del complemento:
weblate.gettext.authors- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Actualiza la parte de comentarios del encabezado del archivo PO para incluir los nombres de los colaboradores y los años de las colaboraciones.
La cabecera del archivo PO lucirá semejante a la siguiente:
# Michal Čihař <michal@weblate.org>, 2012, 2018, 2019, 2020.
# Pavel Borecki <pavel@example.com>, 2018, 2019.
# Filip Hron <filip@example.com>, 2018, 2019.
# anonymous <noreply@weblate.org>, 2019.
Actualización de la variable ALL_LINGUAS en el archivo «configurar»¶
- ID del complemento:
weblate.gettext.configure- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Diario, Repositorio tras añadir, Repositorio tras retirar
Actualiza la variable ALL_LINGUAS dentro de los archivos «configure», «configure.in» o «configure.ac», cuando se agregue o retire una traducción.
Actualiza la variable ALL_LINGUAS del archivo configure, configure.in o cualquier archivo configure.ac, cuando se agregue o retire una traducción.
Personalizar la salida de gettext¶
Removed in version 5.13: Sustituido por Parámetros del formato de archivo.
Update gettext template (Django)¶
Added in version 5.17.
- ID del complemento:
weblate.gettext.django- Configuración:
intervalActualizar frecuencia
Cuanto a menudo el complemento actualizaría el archivo POT cuando el componente sea recargado.
Elecciones disponibles:¶ dailyDiario
weeklySemanalmente
monthlyMensualmente
normalize_headerNormalizar cabecera de POT
Actualiza cabeceras de gettext y sustituye comentarios POT del marcador de posición.
- Disparadores:
Instalación de complemento, Disparador manual, Repositorio posterior al ser actualizado
Actualiza la plantilla de gettext utilizando la instrucción de makemessages incorporada en Django.
Actualizar archivo LINGUAS¶
- ID del complemento:
weblate.gettext.linguas- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Diario, Repositorio tras añadir, Repositorio tras retirar
Actualiza el archivo LINGUAS cuando una traducción es agregada o retirada.
Actualiza el archivo POT (Meson)¶
Added in version 5.17.
- ID del complemento:
weblate.gettext.meson- Configuración:
intervalActualizar frecuencia
Cuanto a menudo el complemento actualizaría el archivo POT cuando el componente sea recargado.
Elecciones disponibles:¶ dailyDiario
weeklySemanalmente
monthlyMensualmente
normalize_headerNormalizar cabecera de POT
Actualiza cabeceras de gettext y sustituye comentarios POT del marcador de posición.
comment_modeComentarios de código
Elije si xgettext no extraería ningún comentario, todos los comentarios, o solo comentarios marcados con una etiquete específica.
Elecciones disponibles:¶ offNo extrae comentarios
allExtrae todos los comentarios
taggedExtrae comentarios con etiqueta
comment_tagEtiqueta de comentario
Etiqueta pasada a xgettext para extracción de comentario cuando utilice modo de comentario etiquetado.
checksComprobaciones de xgettext
Comprobante de validación de xgettext a habilitar para mensajes extraídos.
Elecciones disponibles:¶ ellipsis-unicodeelipse‐unicode
space-ellipsisespacio-elipse
quote-unicodecuota‐unicode
bullet-unicodeboletín‐unicode
keywordPalabra clave adicional
Palabra clave adicional extra opcional pasada a xgettext utilizando –keyword.
presetPreselección de meson
Preajuste de argumentos xgettext integrado que coincide con la integración de gettext de Meson. El preajuste de GLib agrega las opciones de palabra clave e indicadores de formato utilizadas por la función auxiliar gettext de Meson.
Elecciones disponibles:¶ glibGLib
- Disparadores:
Instalación de complemento, Disparador manual, Repositorio posterior al ser actualizado
Actualiza la plantilla gettext utilizando convenciones de gettext en Meson.
Generar archivos MO¶
- ID del complemento:
weblate.gettext.mo- Configuración:
pathRuta del archivo MO generado
Si no se especifica, se utilizará el lugar del archivo PO.
fuzzyIncluir cadenas que necesitan edición
Las cadenas que necesitan edición (borrosas) no suelen estar listas para su uso como traducciones.
- Disparadores:
Genera automáticamente un archivo MO por cada archivo PO modificado.
El lugar del archivo MO generado puede personalizarse y el campo correspondiente utiliza Marcación de plantilla.
Nota
Si se elimina una traducción, su archivo PO se eliminará del repositorio, pero no el archivo MO generado por este complemento. El archivo MO debe eliminarse manualmente del repositorio.
Actualizar archivos PO para que coincidan con POT (msgmerge)¶
Distinto en la versión 5.13: Ajustes de la configuración ha sido movido a Parámetros del formato de archivo.
- ID del complemento:
weblate.gettext.msgmerge- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Repositorio posterior al ser actualizado
Actualiza todos los archivos PO (tal como se configuraron mediante “Máscara de archivo”) para coincidir con el archivo POT (según esté configurado por “Plantilla para traducciones nuevas”) utilizando msgmerge.
Este complemento es esencial al trabajar con archivos PO de gettext cuando el archivo POT (plantilla) se actualiza con nuevas cadenas o cambios en las existentes. Cuando se actualiza el archivo POT en el repositorio, este complemento fusiona automáticamente esos cambios en todos los archivos PO de idioma, asegurando que:
Las cadenas traducibles nuevas aparecen en todos los idiomas
Las cadenas eliminadas están marcadas como obsoletas
Las cadenas modificadas están marcadas como necesidad de revisión (fuzzy)
La mayoría de las opciones de consola msgmerge pueden ser configuradas a través de los parámetros de formato del archivo en la configuración.
Actualizar archivo POT (Sphinx)¶
Added in version 5.17.
- ID del complemento:
weblate.gettext.sphinx- Configuración:
intervalActualizar frecuencia
Cuanto a menudo el complemento actualizaría el archivo POT cuando el componente sea recargado.
Elecciones disponibles:¶ dailyDiario
weeklySemanalmente
monthlyMensualmente
normalize_headerNormalizar cabecera de POT
Actualiza cabeceras de gettext y sustituye comentarios POT del marcador de posición.
filter_modeFiltrado
Opcionalmente retira cadenas que no son útiles para traducir tras extracción de Sphinx.
Elecciones disponibles:¶ noneNinguno
weblate_docsDocumentación de Weblate
- Disparadores:
Instalación de complemento, Disparador manual, Repositorio posterior al ser actualizado
Actualiza la plantilla gettext utilizando el constructor gettext de Sphinx sin cargar la configuración del proyecto.
Actualizar archivo POT (xgettext)¶
Added in version 5.17.
- ID del complemento:
weblate.gettext.xgettext- Configuración:
intervalActualizar frecuencia
Cuanto a menudo el complemento actualizaría el archivo POT cuando el componente sea recargado.
Elecciones disponibles:¶ dailyDiario
weeklySemanalmente
monthlyMensualmente
normalize_headerNormalizar cabecera de POT
Actualiza cabeceras de gettext y sustituye comentarios POT del marcador de posición.
comment_modeComentarios de código
Elije si xgettext no extraería ningún comentario, todos los comentarios, o solo comentarios marcados con una etiquete específica.
Elecciones disponibles:¶ offNo extrae comentarios
allExtrae todos los comentarios
taggedExtrae comentarios con etiqueta
comment_tagEtiqueta de comentario
Etiqueta pasada a xgettext para extracción de comentario cuando utilice modo de comentario etiquetado.
checksComprobaciones de xgettext
Comprobante de validación de xgettext a habilitar para mensajes extraídos.
Elecciones disponibles:¶ ellipsis-unicodeelipse‐unicode
space-ellipsisespacio-elipse
quote-unicodecuota‐unicode
bullet-unicodeboletín‐unicode
keywordPalabra clave adicional
Palabra clave adicional extra opcional pasada a xgettext utilizando –keyword.
input_modeOrigen de entrada
Elija si xgettext leería archivos origen desde patrones glob o desde un manifiesto POTFILES/POTFILES.in.
Elecciones disponibles:¶ patternsPatrones de archivo origen
potfilesPOTFILES declarado
languageidioma de xgettext
Programar lenguaje aprobado para xgettext, por ejemplo Python o C.
source_patternsPatrones de archivo origen
Patrones nueva línea separada en repositorio-relativo para archivos en extracción con xgettext.
potfiles_pathRuta de POTFILES
Ruta relativa del repositorio para POTFILES o POTFILES.in. Los apuntes son resueltos relativos a la raíz de ese repositorio. Si está presente siguiente al manifiesto, POTFILES.skip excluye archivos del istado desde extracción.
- Disparadores:
Instalación de complemento, Disparador manual, Repositorio posterior al ser actualizado
Actualiza la plantilla gettext utilizando xgettext en archivos origen seleccionados.
Concentrar consolidaciones de Git¶
- ID del complemento:
weblate.git.squash- Configuración:
squashConcentrar consolidación
Elecciones disponibles:¶ allTodas las consolidaciones en una sola
languagePor idioma
filePor archivo
authorPor autor
append_trailersAdjuntar renglones finales al mensaje de consolidación concentrada
Las líneas de acompañamiento son líneas similares a las cabeceras de correo electrónico RFC 822, al final de la parte libre de un mensaje de consolidación, como «Coautor: …».
commit_messageMensaje de consolidación
Este mensaje de consolidación se utilizará en sustitución de los mensajes combinados de consolidación desde las consolidaciones concentradas.
- Disparadores:
Concentrar las consolidaciones de Git antes de enviar los cambios.
Consejo
Para evitar conflictos innecesarios, se recomienda configurar la recepción automática de cambios ascendentes mediante webhooks o API, ver Actualizar repositorios.
Las consolidaciones Git se pueden concentrar antes de enviar los cambios en uno de los modos siguientes:
Todas las consolidaciones en una sola
Por idioma
Por archivo
Por autor
Se conservarán los mensajes de consolidación originales pero la autoría se perderá, a menos que seleccione Por autor o personalice el mensaje de consolidación para incluirla.
Los mensajes de consolidación originales pueden ser anulados opcionalmente con un mensaje personalizado de consolidación.
Las colas (lineas consolidadas como Co-authored-by: …) opcionalmente pueden ser retirados desde los mensajes de consolidación original y adjuntados al final del mensaje de consolidación adjuntada. Además esto genera reconocimiento Co-authored-by: apropiado para cada uno de los traductores.
Personalizar la salida de JSON¶
Distinto en la versión 5.12: Avoid spaces after separators opcional agregada.
Removed in version 5.13: Sustituido por Parámetros del formato de archivo.
Restablece repositorio al desarrollo¶
Added in version 5.17.
- ID del complemento:
weblate.hosted.reset- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Descarta todos los cambios en el repositorio Weblate cada noche.
Formatear el archivo de propiedades de Java¶
- ID del complemento:
weblate.properties.sort- Configuración:
case_sensitiveActivar la clasificación por capitalinas
- Disparadores:
Formatea y ordena el archivo de propiedades de Java.
Consolida nuevas líneas a las de Unix.
Formateo en mayúsculas de secuencias de escape Unicode (en caso de que estén presentes).
Recorta las líneas en blanco y los comentarios.
Ordena las cadenas por las claves.
Deja las cadenas duplicadas.
Retiro de comentarios obsoletos¶
- ID del complemento:
weblate.removal.comments- Configuración:
ageDías para guardar
- Disparadores:
Fijar un plazo para el borrado de los comentarios.
Esto puede resultar útil para quitar los comentarios antiguos que pueden ya no ser aplicables. Utilícela con cuidado, pues el hecho de que un comentario sea antiguo no necesariamente denota que ha perdido importancia.
Retiro de sugerencias obsoletas¶
- ID del complemento:
weblate.removal.suggestions- Configuración:
ageDías para guardar
votesUmbral de votos
Threshold for removal. Leave empty to remove suggestions regardless of votes. This field has no effect with voting turned off.
- Disparadores:
Fijar un plazo para el borrado de sugerencias.
Puede ser muy útil en relación con la votación de sugerencias (ver Revisión por pares) para eliminar sugerencias que no reciben suficientes votos positivos en un período de tiempo determinado.
Actualizar archivos RESX¶
- ID del complemento:
weblate.resx.update- Configuración:
Este complemento no tiene configuración.
- Disparadores:
Instalación de complemento, Repositorio posterior al ser actualizado
Actualiza todos los archivos de traducción para que coincidan con el archivo de base monolingüe original. Las cadenas no utilizadas se retiran y las nuevas es agregada como copias de las cadenas de origen.
Consejo
Utilice Limpieza de archivos de traducción si solo desea eliminar las claves de traducción obsoletas.
Webhooks Vagos¶
Added in version 5.12.
- ID del complemento:
weblate.webhook.slack- Configuración:
webhook_urlURL de Webhook
eventsCambio de eventos
- Disparadores:
Envía notificaciones a un canal de Vagos en función de los sucesos seleccionados.
Advertencia
El contenido de la notificación puede mostrar etiquetas HTML. Este es una incidencia conocida que pronto se abordará; consulte https://github.com/WeblateOrg/weblate/issues/15056.
Consejo
Para obtener una URL de webhook, siga los pasos descritos en la documentación Slack Incoming Webhooks
Webhook¶
Added in version 5.11.
Distinto en la versión 5.15: Cumplimiento de la longitud secreta con la especificación ahora es validada.
- ID del complemento:
weblate.webhook.webhook- Configuración:
webhook_urlURL de Webhook
secretSecreto Webhook
El secreto estándar de webhooks es una cadena codificada en base64.
eventsCambio de eventos
- Disparadores:
Envía notificaciones a servicios externos basadas en sucesos seleccionados, siguiendo la especificación estándar de Webhooks.
La carga útil de la solicitud cumple con el esquema Weblate Messaging La descripción de OpenAPI también se puede encontrar en /api/docs/. Cuerpo de solicitud de muestra:
{
"change_id": 99,
"action": "Translation changed",
"timestamp": "2019-08-24T14:15:22Z",
"target": "Nazdar svete!",
"old": "Nazdar!",
"source": "Hello, world",
"url": "/translate/project-slug/component-slug/cs/?checksum=46add148a53cab6f",
"author": "author-username",
"user": "user-username",
"project": "project-slug",
"component": "component-slug",
"translation": "cs"
}
Cuerpo de solicitud de muestra con categorías:
{
"change_id": 8910,
"action": "Component renamed",
"timestamp": "2025-06-11T07:15:09Z",
"target": ["new-name"],
"old": ["component-slug"],
"url": "/projects/project-slug/parent-category/child-category/sub-category/component-slug/",
"user": "testuser",
"project": "project-slug",
"component": "component-slug",
"category": [
"sub-category",
"child-category",
"parent-category"
]
}
Encabezados de solicitud de muestra:
{
"webhook-id": "7f1c5477f6275a69af7b83236c20cb1a",
"webhook-timestamp": "1748505623.044281",
"webhook-signature": "v1,Ceo5qEr07ixe2NLpvHk3FH9bwy/WavXrAFQ/9tdO6mc="
}
La webhook-signature es una lista separada por espacios de firmas HMAC generadas utilizando la cadena secret, la carga útil de la solicitud, la webhook-timestamp y el webhook-id. Esto garantiza la autenticidad e integridad de la solicitud de webhook.
El secreto proporcionado es una cadena codificada en base64 entre 24-byte (192-bit) y 64-byte (512-bit). Puede ser prefijado con whsec_ para identificación fácil.
Para verificar una solicitud, puede utilizar el método Webhook.verify de la biblioteca standardwebhooks o una implementación de la «Especificación Estándar de Webhooks».
Complemento obsoletos¶
Personalizar la salida XML¶
Added in version 4.15.
Removed in version 5.13: Sustituido por Parámetros del formato de archivo.
Personalizar salida de YAML¶
Removed in version 5.13: Sustituido por Parámetros del formato de archivo.
Parámetros de adjuntos comunes¶
Motores de máquinas de traducción¶
|
Alibabá |
|
Traductor de Amazon |
|
Antrópico |
|
APy de Apertium |
|
Traductor con inteligencia artificial de Azure |
|
Azure OpenAI |
|
Baidu |
|
CyrTranslit |
|
DeepL |
|
Glosbe |
|
Google Cloud Translation Advanced |
|
Google Cloud Translation Basic |
|
LTEngine |
|
LibreTranslate |
|
ModernMT |
|
MyMemory |
|
Vista de Netease |
|
Ollama |
|
OpenAI |
|
Hub de Traducción de SAP |
|
sistema |
|
Weblate |
|
Memoria de Traducción Weblate |
|
Yandex |
|
Yandex v2 |
|
Youdao Zhiyun |
|
tmserver |
Formato de archivo¶
|
XLIFF 1.2 con extensiones Apple |
|
Archivos de metadatos de almacén de aplicaciones |
|
Archivo ARB |
|
Recurso de cadenas de Android |
|
Archivo AsciiDoc |
|
Archivo de subtítulos Advanced SubStation Alpha |
|
Teclas capturadas de Haiku |
|
Redactar Recurso de Multiplataforma |
|
Archivo CSV |
|
Multivalor de archivo CSV |
|
Archivo CSV sencillo |
|
Archivo de texto DokuWiki |
|
Archivo DTD |
|
Archivo XML plano |
|
Archivo Fluent |
|
Formato.JS Archivo JSON |
|
Archivo JSON v1 de go-i18n |
|
Archivo JSON v2 de go-i18n |
|
Archivo TOML de go-i18n |
|
archivo gotext JSON |
|
Propiedades GWT |
|
Archivo HTML |
|
Archivo JSON de i18next v3 |
|
Archivo JSON de i18next v4 |
|
Archivo IDML |
|
Archivo INI |
|
Archivos INI de instalación de Inno |
|
Archivo de idioma de Joomla |
|
Archivo JSON |
|
Archivo JSON de estructura anidada |
|
Cadenas PHP de Laravel |
|
Archivo Markdown |
|
MDX file |
|
Archivo de texto MediaWiki |
|
Archivo de idioma @draggable/i18n |
|
Recursos Kotlin para móviles |
|
Archivo Nextcloud JSON |
|
Archivo OpenDocument |
|
Cadenas de PHP |
|
Archivo de traducción XLIFF 1.2 |
|
Archivo PO de gettext |
|
Archivo PO de gettext (monolingüe) |
|
XLIFF 1.2 con extensiones gettext |
|
Propiedades de Java |
|
Archivo RC |
|
Archivo RESJSON |
|
Archivo ResourceDictionary |
|
Archivo de recursos de .NET |
|
Archivo YAML de Ruby |
|
Archivo de subtítulos SubRip |
|
Archivo de subtítulos SubStation Alpha |
|
Cadenas de iOS |
|
Archivo Stringsdict |
|
Archivo de subtítulos MicroDVD |
|
Archivo TermBase eXchange |
|
Archivo TOML |
|
Archivo de traducción de Qt Linguist |
|
Archivo de texto sin formato |
|
Archivo JSON de WebExtension |
|
Archivo WixLocalization |
|
XLIFF 1.2 con soporte para colocables |
|
Archivo de traducción XLIFF 2.0 |
|
Archivo de traducción en XLIFF 2.0 con mantenimiento colocable |
|
Open XML de Excel |
|
Página Completa de XWiki |
|
Propiedades de XWiki de Java |
|
Propiedades de Página XWiki |
|
Archivo YAML |
Cambio de eventos¶
|
Recurso actualizado |
|
Traducción completada |
|
Traducción modificada |
|
Comentario agregado |
|
Sugerencia agregada |
|
Traducción agregada |
|
Traducida automáticamente |
|
Sugerencia aceptada |
|
Traducción revertida |
|
Traducción cargada |
|
Cadena origen agregada |
|
Componente bloqueado |
|
Componente desbloqueado |
|
Cambios consolidados |
|
Cambios impulsados |
|
Repositorio restablecido |
|
Repositorio fusionado |
|
Repositorio reorganizado |
|
Fallo en la fusión del repositorio |
|
Fallo en la actualización del repositorio |
|
Ha fallado el análisis |
|
Traducción eliminada |
|
Sugerencia borrada |
|
Traducción sustituida |
|
Fallo en la inserción del repositorio |
|
Sugerencia borrada durante la limpieza |
|
Cadena de origen cambiada |
|
Cadena agregada |
|
Estado cambiado en lotes |
|
Cambios en la visualización |
|
Usuario agregado |
|
Usuario eliminado |
|
Traducción aprobada |
|
Marcada para edición |
|
Componente eliminado |
|
Proyecto suprimido |
|
Proyecto renombrado |
|
Componente renombrado |
|
Componente trasladado |
|
Colaborador unido |
|
Anuncio publicado |
|
Alerta activada |
|
Idioma agregado |
|
Idioma requerido |
|
Proyecto creado |
|
Componente creado |
|
Usuario invitado |
|
Notificación del repositorio recibida |
|
Traducción reemplazada por la cargada |
|
Licencia cambiada |
|
Ha cambiado el acuerdo de licencia del contribuidor |
|
Captura agregada |
|
Captura de pantalla cargada |
|
Cadena actualizada en el repositorio |
|
Complemento instalado |
|
Configuración de complemento cambiada |
|
Complemento desinstalado |
|
Cadena eliminada |
|
Comentario eliminado |
|
Comentario resuelto |
|
Explicación actualizada |
|
Categoría eliminada |
|
Categoría renombrada |
|
Categoría movida |
|
Error al guardar la cadena |
|
Cadena agregada al repositorio |
|
Cadena actualizada al cargar |
|
Cadena agregada al ser subida |
|
Traducción actualizada mediante la carga de las fuentes |
|
Traducción de componentes finalizada |
|
Comprobación forzada aplicada |
|
Cambio propagado |
|
Archivo subido |
|
Indicadores adicionales actualizados |
|
Tipografía subida |
|
Tipografía cambiada |
|
Tipografía retirada |
|
Sincronización forzada de traducciones |
|
Re-analizado forzado de traducciones |
|
Captura de pantalla eliminada |
|
Etiqueta agregada |
|
Etiqueta quitada |
|
Purga de repositorio |
|
Cadena origen agregada a la subida |
|
Cadena origen agregada al repositorio |
|
Respaldo del proyecto |
|
Proyecto restaurado |
|
Componente restaurado |
|
Edición de usuario revertida |
|
Project setting changed |
|
Component setting changed |
Listado de adaptación de complementos¶
El listado de complementos se configura mediante WEBLATE_ADDONS. Para agregar otro complemento, simplemente incluya el nombre absoluto de la clase en esta configuración.
Complemento de escritura¶
También puede escribir sus propios complementos, crear una subclase de weblate.addons.base.BaseAddon para definir los metadatos del complemento y luego implementar una devolución de llamada para realizar el procesamiento.
Ver también
Ejecutar scripts desde el complemento¶
Los add-ons pueden utilizarse para ejecutar scripts externos. Esto solía estar integrado en Weblate, pero ahora tienes que escribir algo de código para cubrir tu guion con un add-on.
# Copyright © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later
"""Example pre commit script."""
from __future__ import annotations
from typing import ClassVar
from django.utils.translation import gettext_lazy
from weblate.addons.events import AddonEvent
from weblate.addons.scripts import BaseScriptAddon
class ExamplePreAddon(BaseScriptAddon):
# Event used to trigger the script
events: ClassVar[set[AddonEvent]] = {
AddonEvent.EVENT_PRE_COMMIT,
}
# Name of the addon, has to be unique
name = "weblate.example.pre"
# Verbose name and long description
verbose = gettext_lazy("Execute script before commit")
description = gettext_lazy("This add-on executes a script.")
# Script to execute
script = "/bin/true"
# File to add in commit (for pre commit event)
# does not have to be set
add_file = "po/{{ language_code }}.po"
Para obtener instrucciones de instalación, consulte Controles de calidad personalizados, sugerencias automáticas y auto-correcciones.
El script se ejecuta con el directorio actual establecido en la raíz del repositorio VCS para cualquier componente dado.
Además, las variables de entorno siguientes están a su disposición:
- WL_VCS¶
Sistema de control de versiones utilizado.
- WL_REPO¶
URL del repositorio del proyecto originario.
- WL_PATH¶
Ruta absoluta al repositorio del sistema de control de versiones.
- WL_BRANCH¶
Rama del repositorio configurada en el componente actual.
- WL_FILEMASK¶
Máscara de archivos para el componente actual.
- WL_TEMPLATE¶
Nombre de archivo de plantilla para traducciones monolingües (puede quedar vacío).
- WL_NEW_BASE¶
Nombre del archivo utilizado para crear traducciones nuevas (puede quedar vacío).
- WL_FILE_FORMAT¶
Formato de archivo utilizado en el componente actual.
- WL_LANGUAGE¶
Idioma de la traducción procesada actualmente (no disponible para actuadores a nivel componente).
- WL_PREVIOUS_HEAD¶
HEAD anterior después de la actualización (sólo disponible después de ejecutar el hook posterior a la actualización).
- WL_COMPONENT_SLUG¶
Indicación de componente utilizado para construir la URL.
- WL_PROJECT_SLUG¶
Indicación del proyecto utilizado para construir la URL.
- WL_COMPONENT_NAME¶
Nombre del componente.
- WL_PROJECT_NAME¶
Nombre del proyecto.
- WL_COMPONENT_URL¶
URL del componente.
- WL_ENGAGE_URL¶
URL de participación del proyecto.
Ver también
Procesando el repositorio después de la actualización¶
Se puede utilizar para actualizar los archivos de traducción cuando el código fuente del VCS cambia. Para conseguirlo, recuerda que Weblate sólo ve los archivos consolidados en el VCS, por lo que debes consignar los cambios como parte del script.
Por ejemplo, con Gulp puede hacerlo a través del código a continuación:
#! /bin/sh
gulp --gulpfile gulp-i18n-extract.js
git commit -m 'Update source strings' src/languages/en.lang.json
Procesamiento de traducciones pre-consolidada¶
Utilice el script consolidar para cambiar automáticamente una traducción antes de esté consolidado al repositorio.
Se pasa como un único parámetro que consiste en el nombre de archivo de una traducción actual.
Bitácora de actividad del complemento¶
La bitácora de actividad del complemento realiza un seguimiento de la ejecución del complemento y puede utilizarse para realizar un seguimiento de la actividad del complemento.
Los registros pueden ser podados tras un cierto intervalo de tiempo configurando el parámetro ADDON_ACTIVITY_LOG_EXPIRY.