Suplimente¶
Add-ons provide ways to customize and automate the translation workflow. Admins can add and manage add-ons from the Manage ↓ Add-ons menu of each respective translation project or component. Add-ons can be also installed site-wide in Interfața de gestionare.
Sugestie
You can also configure add-ons using API,
DEFAULT_ADDONS
, or install_addon
.
Addon-uri încorporate¶
Traducere automată¶
- ID add-on:
weblate.autotranslate.autotranslate
- Configurație:
mode
Mod traducere automată
Alegerile disponibile:
suggest
– Se adaugă ca sugestietranslate
– Adaugă ca traducerefuzzy
– Adăugați ca „Necesitând editare”filter_type
Filtru de căutare
Te rugăm să reții că traducerea tuturor șirurilor va elimina toate traducerile existente.
Alegerile disponibile:
all
– Toate șirurile de caracterenottranslated
– Șiruri netradusetodo
– Șiruri neterminatefuzzy
– Șiruri de caractere marcate pentru editarecheck:inconsistent
– Eșecul verificării: Inconsistentauto_source
Sursa traducerilor automate
Alegerile disponibile:
Alte componente de traducere
Traducere automată
component
Componentă
Introdu descriptorul unei componente care urmează să fie utilizată ca sursă, păstrează spațiul gol pentru a utiliza toate componentele din proiectul curent.
engines
Motoare de traducere automată
threshold
Prag de punctaj
- Declanșări:
actualizare componentă, zilnic
Tradu automat șirurile cu ajutorul traducerii automate sau al altor componente.
Acesta este declanșat:
Atunci când apar șiruri noi într-o componentă.
O dată pe lună pentru fiecare componentă, acest lucru poate fi configurat folosind
BACKGROUND_TASKS
.
CDN de localizare JavaScript¶
Added in version 4.2.
- ID add-on:
weblate.cdn.cdnjs
- Configurație:
threshold
Prag de traducere
Prag de includere a traducerilor.
css_selector
Selector CSS
Selector CSS pentru detectarea elementelor traductibile.
cookie_name
Nume cookie de limbă
Nume cookie care stochează preferințe lingvistice.
files
Extrage șiruri din fișiere HTML
Listă de nume de fișiere din depozitarul curent sau de adrese URL la distanță care trebuie interpretate pentru șiruri traductibile.
- Declanșări:
zilnic, depozit post-commit, depozit post-update
Publică traducerile în rețeaua de livrare de conținut pentru a fi utilizate în localizarea JavaScript sau HTML.
Poate fi utilizat pentru a localiza pagini HTML statice sau pentru a încărca localizarea în codul JavaScript.
Generează un URL unic pentru componenta dvs. pe care îl puteți include în paginile HTML pentru a le localiza. Consultați Traducerea HTML și JavaScript folosind Weblate CDN pentru mai multe detalii.
Notă
This add-on requires additional configuration on the Weblate server.
LOCALIZE_CDN_PATH
configures where generated files will be
written (on a filesystem), and LOCALIZE_CDN_URL
defines where
they will be served (URL). Serving of the files is not done by Weblate and
has to be set up externally (typically using a CDN service).
This add-on is configured on Hosted Weblate and serves the files
via https://weblate-cdn.com/
.
Elimină șiruri goale¶
Added in version 4.4.
- ID add-on:
weblate.cleanup.blank
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozit post-commit, depozit post-update
Elimină șirurile fără traducere din fișierele de traducere.
Utilizați această opțiune pentru a nu avea șiruri goale în fișierele de traducere (de exemplu, dacă biblioteca de localizare le afișează ca fiind lipsă în loc să revină la șirul sursă).
Curăță fișierele de traducere¶
- ID add-on:
weblate.cleanup.generic
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozitul pre-commit, depozitul post-update
Actualizează toate fișierele de traducere pentru a se potrivi cu fișierul de bază monolingv. Pentru majoritatea formatelor de fișiere, aceasta înseamnă eliminarea cheilor de traducere învechite care nu mai sunt prezente în fișierul de bază.
For formats containing additional content besides translation strings (such as Fișiere HTML, Fișiere Windows RC, or Formatul OpenDocument) this also brings the translation file in sync with the base file.
Adaugă limbi lipsă¶
- ID add-on:
weblate.consistency.languages
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
zilnic, depozit post-adăugare
Asigură utilizarea unui set coerent de limbi pentru toate componentele unui proiect.
Limbile lipsă sunt verificate o dată la 24 de ore și atunci când sunt adăugate noi limbi în Weblate.
Spre deosebire de majoritatea celorlalte, acest add-on afectează întregul proiect.
Sugestie
Traduceți automat șirurile nou adăugate cu Traducere automată.
Descoperire componente¶
- ID add-on:
weblate.discovery.discovery
- Configurație:
match
Expresie regulată pentru a potrivi fișierele de traducere
file_format
Format fișier
name_template
Personalizează numele componentei
base_file_template
Definește numele fișierului de bază monolingv
Lasă gol pentru fișiere de traducere bilingve.
new_base_template
Definește fișierul de bază pentru traduceri noi
Numele fișierului utilizat pentru crearea de traduceri noi. Pentru gettext, alege fișierul .pot.
intermediate_template
Fișier de limbă intermediar
Numele de fișier al fișierului de traducere intermediar. În cele mai multe cazuri, acesta este un fișier de traducere furnizat de dezvoltatori și este utilizat la crearea șirurilor sursă reale.
language_regex
Filtru limbă
Expresie regulată pentru filtrarea fișierelor de traducere la scanarea pentru masca de fișiere.
copy_addons
Clonare suplimente din componenta principală în cele nou create
remove
Elimină componente pentru fișiere inexistente
confirm
Confirm că potrivirile de mai sus par corecte
- Declanșări:
depozit post-update
Adaugă sau elimină automat componente ale proiectului pe baza modificărilor de fișiere din sistemul de control al versiunilor.
Potrivirea se face cu ajutorul expresiilor regulate, ceea ce permite o configurare complexă, dar sunt necesare anumite cunoștințe în acest sens. Câteva exemple pentru cazuri de utilizare obișnuită pot fi găsite în secțiunea de ajutor a addon-ului.
The regular expression to match translation files has to contain two named groups to match component and language. All named groups in the regular expression can be used as variables in the template fields.
You can use Django template markup in all filename fields, for example:
{{ component }}
Potrivirea numelui de fișier al componentei
{{ component|title }}
Nume de fișier al componentei cu prima literă majusculă
{{ path }}: {{ component }}
Custom match group from the regular expression
După ce apăsați pe Save, va fi prezentată o previzualizare a componentelor corespunzătoare, de unde puteți verifica dacă configurația se potrivește cu nevoile dumneavoastră:
Component discovery examples¶
One folder per language¶
Un dosar pentru fiecare limbă care conține fișiere de traducere pentru componente.
- Regular expression:
(?P<language>[^/.]*)/(?P<component>[^/]*)\.po
- Matching files:
cs/application.po
cs/website.po
de/application.po
de/website.po
Gettext locales layout¶
Structura obișnuită pentru stocarea fișierelor gettext PO.
- Regular expression:
locale/(?P<language>[^/.]*)/LC_MESSAGES/(?P<component>[^/]*)\.po
- Matching files:
locale/cs/LC_MESSAGES/application.po
locale/cs/LC_MESSAGES/website.po
locale/de/LC_MESSAGES/application.po
locale/de/LC_MESSAGES/website.po
Complex filenames¶
Utilizarea atât a componentei, cât și a denumirii limbii în numele fișierului.
- Regular expression:
src/locale/(?P<component>[^/]*)\.(?P<language>[^/.]*)\.po
- Matching files:
src/locale/application.cs.po
src/locale/website.cs.po
src/locale/application.de.po
src/locale/website.de.po
Repeated language code¶
Utilizarea limbii atât în calea de acces, cât și în numele fișierului.
- Regular expression:
locale/(?P<language>[^/.]*)/(?P<component>[^/]*)/(?P=language)\.po
- Matching files:
locale/cs/application/cs.po
locale/cs/website/cs.po
locale/de/application/de.po
locale/de/website/de.po
Split Android strings¶
Șiruri de resurse Android, împărțite în mai multe fișiere.
- Regular expression:
res/values-(?P<language>[^/.]*)/strings-(?P<component>[^/]*)\.xml
- Matching files:
res/values-cs/strings-about.xml
res/values-cs/strings-help.xml
res/values-de/strings-about.xml
res/values-de/strings-help.xml
Matching multiple paths¶
Multi-module Maven project with Java properties translations.
- Regular expression:
(?P<originalHierarchy>.+/)(?P<component>[^/]*)/src/main/resources/ApplicationResources_(?P<language>[^/.]*)\.properties
- Component name:
{{ originalHierarchy }}: {{ component }}
- Matching files:
parent/module1/submodule/src/main/resources/ApplicationResources_fr.properties
parent/module1/submodule/src/main/resources/ApplicationResource_es.properties
parent/module2/src/main/resources/ApplicationResource_de.properties
parent/module2/src/main/resources/ApplicationResource_ro.properties
Sugestie
Component discovery add-on utilizează URL-uri interne Weblate. Este o modalitate convenabilă de a partaja configurația VCS între mai multe componente. Componentele legate utilizează depozitul local al componentei principale, configurat prin completarea weblate://project/main-component
în câmpul Depozitar cod sursă (în Manage ↓ Settings ↓ Version control system) al fiecărei componente respective. Acest lucru economisește timp cu configurarea și, de asemenea, resurse de sistem.
Vezi și
Editare în masă¶
- ID add-on:
weblate.flags.bulk
- Configurație:
q
Înterogare
state
Stare de setat
Alegerile disponibile:
Nu modificați
Necesită editare
Tradus
Aprobat
add_flags
Indicator de traducere de adăugat
remove_flags
Indicatoare de traducere de eliminat
add_labels
Etichete de adăugat
remove_labels
Etichete de eliminat
- Declanșări:
actualizare componentă
Editează majoritatea semnalărilor, etichetelor sau stării șirurilor.
Automatizați etichetarea începând cu interogarea de căutare NOT has:label
și adăugați etichete până când toate șirurile au toate etichetele necesare. Se pot efectua și alte operațiuni automatizate pentru metadatele Weblate.
Exemple:
Interogare de căutare |
|
---|---|
Etichete de adăugat |
recent |
Interogare de căutare |
|
---|---|
Indicator de traducere de adăugat |
|
Semnalează traducerile neschimbate ca „Necesită editare”¶
- ID add-on:
weblate.flags.same_edit
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
unitate post-creare
Ori de câte ori un nou șir traductibil este importat din SCV și se potrivește cu un șir sursă, acesta este semnalat ca necesitând editare în Weblate. Este deosebit de util pentru formatele de fișiere care includ șiruri sursă pentru șiruri netraduse.
Sugestie
De asemenea, este posibil să doriți să întăriți verificarea Traducere neschimbată prin adăugarea indicatorului strict-same
la Indicarori traducere.
Vezi și
Semnalează șirurile sursă noi ca „Necesită editare”¶
- ID add-on:
weblate.flags.source_edit
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
unitate post-creare
Ori de câte ori un nou șir sursă este importat din SCV, acesta este marcat ca necesitând editare în Weblate. În acest fel, poți filtra și edita cu ușurință șirurile sursă scrise de dezvoltatori.
Vezi și
Semnalează traducerile noi ca „Necesită editare”¶
- ID add-on:
weblate.flags.target_edit
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
unitate post-creare
Ori de câte ori un nou șir traductibil este importat din SCV, acesta este semnalat ca necesitând editare în Weblate. În acest fel, poți filtra și edita cu ușurință traducerile create de dezvoltatori.
Vezi și
Completare șiruri doar pentru citire cu sursa¶
Added in version 4.18.
- ID add-on:
weblate.generate.fill_read_only
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
actualizare componentă, zilnic
Completează șirurile de traducere doar pentru citire cu șirul sursă.
Generator de statistici¶
- ID add-on:
weblate.generate.generate
- Configurație:
filename
Nume fișier generat
template
Conținut fișier generat
- Declanșări:
depozit pre-commit
Generează un fișier care conține informații detaliate despre starea traducerii.
Puteți utiliza un șablon Django atât în numele fișierului, cât și în conținut; consultați Marcarea șablonului pentru o descriere detaliată a marcajului.
De exemplu, generarea unui fișier de sinteză pentru fiecare traducere:
- Nume fișier generat
locale/{{ language_code }}.json
- Conținut
{ "language": "{{ language_code }}", "strings": "{{ stats.all }}", "translated": "{{ stats.translated }}", "last_changed": "{{ stats.last_changed }}", "last_author": "{{ stats.last_author }}", }
Vezi și
Precompletare traducere cu sursa¶
Added in version 4.11.
- ID add-on:
weblate.generate.prefill
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
actualizare componentă, zilnic
Completează șirurile de traducere cu șirul sursă.
Toate șirurile de caractere netraduse din componentă vor fi completate cu șirul sursă și vor fi marcate ca necesitând editare. Utilizați această opțiune atunci când nu puteți avea șiruri de caractere goale în fișierele de traducere.
Generare pseudolocale¶
Added in version 4.5.
- ID add-on:
weblate.generate.pseudolocale
- Configurație:
source
Șiruri sursă
target
Traducere țintă
Toate șirurile din această traducere vor fi suprascrise
prefix
Prefix șir fix
var_prefix
Prefix șir variabil
suffix
Sufix șir fix
var_suffix
Sufix șir variabil
var_multiplier
Multiplicator parte variabilă
De câte ori se repetă partea variabilă în funcție de lungimea șirului sursă.
include_readonly
Include șiruri doar pentru citire
- Declanșări:
actualizare componentă, zilnic
Generează o traducere prin adăugarea automată a prefixului și sufixului la șirurile sursă.
Pseudolocalele sunt utile pentru a găsi șiruri de caractere care nu sunt pregătite pentru localizare. Acest lucru se realizează prin modificarea tuturor șirurilor sursă traductibile pentru a facilita identificarea șirurilor nealterate la rularea aplicației în limba pseudolocală.
De asemenea, este posibil să se găsească șiruri de caractere ale căror omologi localizați ar putea să nu se potrivească cu aspectul.
Utilizarea părților variabile face posibilă căutarea șirurilor de caractere care ar putea să nu se potrivească în interfața cu utilizatorul după localizare - se extinde textul pe baza lungimii șirului sursă. Părțile variabile se repetă prin lungimea textului înmulțită cu multiplicatorul. De exemplu, Hello world
cu sufixul variabil _
și multiplicatorul variabil de 1 devine Hello world___________
- sufixul este repetat o dată pentru fiecare caracter din șirul sursă.
Șirurile vor fi generate folosind următorul model:
Prefix de șir fix Prefix de șir variabil Șir sursă Sufix de șir variabil Sufix de șir fix Sufix de șir fix
Sugestie
Puteți folosi limbi reale pentru testare, dar există pseudolocale dedicate disponibile în Weblate - en_XA și ar_XB.
Sugestie
Puteți utiliza acest add-on pentru a începe traducerea într-o nouă locație a unei limbi existente sau a unei limbi similare. După ce adăugați traducerea la componentă, urmați la add-on. Exemplu: Dacă aveți fr și doriți să începeți traducerea fr_CA, setați pur și simplu fr ca sursă, fr_CA ca țintă și lăsați prefixul și sufixul goale.
Dezinstalați add-on-ul după ce ați completat noua traducere pentru a împiedica Weblate să modifice traducerile făcute după copiere.
Contribuitori în comentariu¶
- ID add-on:
weblate.gettext.authors
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozit pre-commit
Actualizează partea de comentarii din antetul fișierului PO pentru a include numele contribuitorilor și anii de contribuție.
Antetul fișierului PO va arăta în felul următor:
# 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.
Actualizarea variabilei ALL_LINGUAS în fișierul „configure”¶
- ID add-on:
weblate.gettext.configure
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozit post-adăugare, zilnic
Actualizează variabila ALL_LINGUAS din configure
, configure.in
sau din orice fișier configure.ac
, atunci când se adaugă o nouă traducere.
Personalizare ieșire gettext¶
- ID add-on:
weblate.gettext.customize
- Configurație:
width
Împachetare linii lungi
În mod implicit, gettext împachetează linii la 77 de caractere și la linii noi. Dacă se folosește parametrul –no-wrap, se face o împachetare doar la linii noi.
Alegerile disponibile:
77
– Înfășurarea liniilor la 77 de caractere și la liniile noi (implicit xgettext)65535
– Întoarceți liniile numai la liniile noi (like «xgettext –no-wrap»)Fără înfășurare de linie
- Declanșări:
depozitare post-încărcare
Permite personalizarea comportamentului de ieșire gettext, de exemplu împachetare linie.
Acesta oferă următoarele opțiuni:
Întoarceți liniile la 77 de caractere și la liniile noi
Întoarceți liniile numai la liniile noi
Fără împachetare linie
Notă
În mod implicit, gettext înfășoară liniile la 77 de caractere și la liniile noi. Dacă se folosește parametrul --no-wrap
, se face o încadrare numai la liniile noi.
Actualizare fișier LINGUAS¶
- ID add-on:
weblate.gettext.linguas
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozit post-adăugare, zilnic
Actualizează fișierul LINGUAS atunci când se adaugă o nouă traducere.
Generare fișiere MO¶
- ID add-on:
weblate.gettext.mo
- Configurație:
path
Cale către fișierul MO generat
Dacă nu este specificat, se va utiliza locația fișierului PO.
fuzzy
Include șiruri care necesită editare
Șirurile care au nevoie de editare (neclare) nu sunt de obicei pregătite pentru a fi utilizate ca traduceri.
- Declanșări:
depozit pre-commit
Generează automat un fișier MO pentru fiecare fișier PO modificat.
Locația fișierului MO generat poate fi personalizată, iar câmpul pentru acesta utilizează Marcarea șablonului.
Notă
If a translation is removed, its PO file will be deleted from the repository, but the MO file generated by this add-on will not. The MO file must be removed from the upstream manually.
Actualizare fișiere PO pentru a se potrivi cu POT (msgmerge)¶
- ID add-on:
weblate.gettext.msgmerge
- Configurație:
previous
Păstrează msgid-urile anterioare ale șirurilor traduse
no_location
Elimină locațiile șirurilor traduse
fuzzy
Folosește potrivire confuză
- Declanșări:
depozit post-update
Actualizează toate fișierele PO (as configured by Mască de fișier) pentru a se potrivi cu fișierul POT (as configured by Șablon pentru traduceri noi) utilizând msgmerge.
Se declanșează ori de câte ori sunt extrase noi modificări din depozitul din amonte. Majoritatea opțiunilor de linie de comandă msgmerge pot fi setate prin intermediul configurației add-on-ului.
Comasează comiteri Git¶
- ID add-on:
weblate.git.squash
- Configurație:
squash
Comitere prin comasare
Alegerile disponibile:
Toate angajamentele într-una singură
language
– Pe limbăfile
– Pe fișierauthor
– Pe autorappend_trailers
Adăugă trailere la mesajul de comitere comasată
Liniile de trailer sunt linii care se aseamănă cu anteturile de e-mail RFC 822, la sfârșitul părții de formă liberă a unui mesaj de comitere, cum ar fi „Co-autor: …”.
commit_message
Mesaj comitere
Acest mesaj de comitere va fi utilizat în locul mesajelor de comitere combinate de la comiterile comasate.
- Declanșări:
depozit post-commit
Comasează comiteri Git înainte de a încărca modificările.
Comițările Git pot fi eliminate înainte de împingerea modificărilor în unul dintre următoarele moduri:
Toate comiterile într-una singură
Pentru fiecare limbă în parte
Pentru fiecare fișier în parte
Pentru fiecare autor în parte
Mesajele de confirmare originale sunt păstrate, dar se pierde paternitatea, cu excepția cazului în care se selectează Per author sau mesajul de confirmare este personalizat pentru a o include.
Mesajele de confirmare originale pot fi opțional înlocuite cu un mesaj de confirmare personalizat.
Remetele (commit lines like Co-authored-by: …
) pot fi opțional eliminate din mesajele de confirmare originale și adăugate la sfârșitul mesajului de confirmare strivit. Acest lucru generează, de asemenea, creditul corespunzător Co-authored-by:
pentru fiecare traducător.
Personalizare ieșire JSON¶
- ID add-on:
weblate.json.customize
- Configurație:
sort_keys
Sortează chei JSON
indent
Indentarea JSON
style
Stil indentare JSON
Alegerile disponibile:
spaces
– Spațiitabs
– Tab-uri- Declanșări:
depozitare post-încărcare
Permite ajustarea comportamentului de ieșire JSON, de exemplu, indentarea sau sortarea.
Formatare fișier de proprietăți Java¶
- ID add-on:
weblate.properties.sort
- Configurație:
case_sensitive
Enable case-sensitive key sorting
- Declanșări:
depozit pre-commit
Formatează și sortează fișierul de proprietăți Java.
Consolidează liniile noi la cele Unix.
Formatarea cu majuscule a secvențelor de evacuare Unicode (în cazul în care acestea sunt prezente).
Șiruri cu observații.
Sortează șirurile de caractere în funcție de chei.
Renunță la șirurile duplicate.
Elimină comentariu învechit¶
- ID add-on:
weblate.removal.comments
- Configurație:
age
Zile de păstrat
- Declanșări:
zilnic
Setare termen pentru eliminare comentarii.
Acest lucru poate fi util pentru a elimina comentariile vechi care ar putea fi depășite. Folosiți-o cu grijă, deoarece faptul că comentariile devin vechi nu înseamnă că și-au pierdut importanța.
Elimină sugestie învechită¶
- ID add-on:
weblate.removal.suggestions
- Configurație:
age
Zile de păstrat
votes
Prag de vot
Prag de eliminare. Acest câmp nu are niciun efect dacă votul este dezactivat.
- Declanșări:
zilnic
Setare termen pentru eliminare sugestii.
Poate fi foarte utilă în legătură cu votarea sugestiilor (see Evaluare reciprocă) pentru a elimina sugestiile care nu primesc suficiente voturi pozitive într-un anumit interval de timp.
Actualizare fișiere RESX¶
- ID add-on:
weblate.resx.update
- Configurație:
Acest add-on nu are nicio configurație.
- Declanșări:
depozit post-update
Actualizează toate fișierele de traducere pentru a se potrivi cu fișierul sursă monolingv din sursă principală. Șirurile neutilizate sunt eliminate, iar cele noi sunt adăugate ca copii ale șirului sursă.
Sugestie
Utilizați Curăță fișierele de traducere dacă doriți să eliminați doar cheile de traducere vechi.
Personalizare ieșire XML¶
Added in version 4.15.
- ID add-on:
weblate.xml.customize
- Configurație:
closing_tags
Include etichetă de închidere pentru etichetele XML goale
- Declanșări:
depozitare post-încărcare
Permite ajustarea comportamentului de ieșire XML, de exemplu etichetele de închidere.
Personalizare ieșire YAML¶
- ID add-on:
weblate.yaml.customize
- Configurație:
indent
Indentare YAML
width
Împachetare linii lungi
Alegerile disponibile:
Întoarceți liniile la 80 de caractere
Întoarceți liniile la 100 de caractere
Întoarceți liniile la 120 de caractere
Înfășurați liniile la 180 de caractere
Fără înfășurare de linie
line_break
Linie de pauză
Alegerile disponibile:
DOS (rn)
unix
– UNIX (\n)mac
– MAC (\r)- Declanșări:
depozitare post-încărcare
Permite ajustarea comportamentului de ieșire YAML, de exemplu, lungimea liniei sau linii noi.
Personalizarea listei de add-on-uri¶
Lista de add-on-uri este configurată prin WEBLATE_ADDONS
. Pentru a adăuga un alt addon, este suficient să includeți numele absolut al clasei în această setare.
Add-on de scriere¶
Puteți să vă scrieți propriile add-on-uri, să creați o subclasă de weblate.addons.base.BaseAddon
pentru a defini metadatele addon-ului și apoi să implementați un callback pentru a face procesarea.
Vezi și
Executarea scripturilor din add-on¶
Suplimentele pot fi utilizate și pentru a executa scripturi externe. Acest lucru era integrat în Weblate, dar acum trebuie să scrieți niște cod pentru a înfășura scriptul vostru cu un add-on.
# Copyright © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later
"""Example pre commit script."""
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 = (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"
Pentru instrucțiuni de instalare, consultați Verificări personalizate ale calității, add-on-uri și corecții automate.
Scriptul este executat cu directorul curent setat la rădăcina depozitului VCS pentru orice componentă dată.
În plus, sunt disponibile următoarele variabile de mediu:
- WL_VCS¶
Sistemul de control al versiunilor utilizat.
- WL_REPO¶
URL-ul depozitului din amonte.
- WL_PATH¶
Calea absolută către depozitul VCS.
- WL_BRANCH¶
Ramura de depozit configurată în componenta curentă.
- WL_FILEMASK¶
Masca de fișier pentru componenta curentă.
- WL_TEMPLATE¶
Numele de fișier al șablonului pentru traducerile monolingve (poate fi gol).
- WL_NEW_BASE¶
Numele de fișier al fișierului utilizat pentru crearea de noi traduceri (poate fi gol).
- WL_FILE_FORMAT¶
Format de fișier utilizat în componenta curentă.
- WL_LANGUAGE¶
Limba traducerii procesate în prezent (nu este disponibilă pentru cârligele la nivel de componentă).
- WL_PREVIOUS_HEAD¶
HEAD anterior după actualizare (disponibil numai după rularea cârligului post-update).
- WL_COMPONENT_SLUG¶
Denumirea componentei utilizată pentru a construi URL-ul.
- WL_PROJECT_SLUG¶
Denumirea proiectului utilizată pentru a construi URL-ul.
- WL_COMPONENT_NAME¶
Denumirea componentei.
- WL_PROJECT_NAME¶
Numele proiectului.
- WL_COMPONENT_URL¶
URL-ul componentei.
- WL_ENGAGE_URL¶
URL de angajare a proiectului.
Vezi și
Prelucrarea depozitelor după actualizare¶
Poate fi utilizat pentru a actualiza fișierele de traducere atunci când sursa VCS din amonte se modifică. Pentru a realiza acest lucru, vă rugăm să rețineți că Weblate vede numai fișierele trimise în VCS, deci trebuie să trimiteți modificările ca parte a scriptului.
De exemplu, cu Gulp puteți face acest lucru folosind următorul cod:
#! /bin/sh
gulp --gulpfile gulp-i18n-extract.js
git commit -m 'Update source strings' src/languages/en.lang.json
Pre-angajare de procesare a traducerilor¶
Utilizați scriptul de trimitere pentru a modifica automat o traducere înainte de a fi trimisă în depozit.
Acesta este transmis ca un singur parametru care constă în numele de fișier al unei traduceri curente.
Add-on activity logging¶
Add-on activity log keeps track of the add-on execution and can be used to keep track of add-on activity.
The logs can be pruned after a certain time interval by configuring the ADDON_ACTIVITY_LOG_EXPIRY
.