Nepretržitá lokalizácia

Existuje infraštruktúra, ktorá zabezpečuje, že váš preklad úzko nadväzuje na vývoj. Týmto spôsobom môžu prekladatelia pracovať na prekladoch po celý čas, namiesto práce cez obrovské množstvo nového textu tesne pred vydaním.

Viď aj

Integrácia s Weblate popisuje základné spôsoby integrácie vášho vývoja s Weblate. Integrácie s platformami na hosťovanie kódu uvádza kroky nastavenia špecifické pre poskytovateľov bežných stránok na hosťovanie kódu.

Toto je proces:

  1. Vývojári vykonávajú zmeny a odosielajú ich do repozitára VCS.

  2. Voliteľne sa aktualizujú prekladové súbory, pozrite Zavádzanie nových reťazcov.

  3. Weblate sťahuje zmeny z repozitára VCS, analyzuje prekladové súbory a aktualizuje svoju databázu, pozri Aktualizácia repozitárov.

  4. Prekladatelia odovzdávajú preklady pomocou webového rozhrania Weblate alebo nahrávajú offline zmeny.

  5. Akonáhle prekladatelia skončia, Weblate zapíše zmeny do lokálneho repozitára (pozri Lenivé zápisy).

  6. Zmeny sa odošlú späť do upstream repozitára (pozri Odosielanie zmien z Weblate).

digraph translations { graph [fontname = "sans-serif", fontsize=10, ranksep=0.6, newrank=true]; node [fontname = "sans-serif", fontsize=10, margin=0.15]; edge [fontname = "sans-serif", fontsize=10]; subgraph cluster_codehosting { rank=same; graph [color=lightgrey, label="Upstream code-hosting site", style=filled ]; "VCS repository" [shape=cylinder]; } subgraph cluster_weblate { rank=same; graph [color=lightgrey, label="Weblate", style=filled ]; repo [label="Weblate repository", shape=cylinder]; database [label=Database, shape=cylinder]; } "Developers" [shape=box, fillcolor="#144d3f", fontcolor=white, style=filled]; "Translators" [shape=box, fillcolor="#144d3f", fontcolor=white, style=filled]; "Developers" -> "VCS repository" [label=" 1. Push "]; "VCS repository" -> "VCS repository" [label=" 2. Updating translations ", style=dotted]; "VCS repository" -> repo [label=" 3. Pull "]; repo -> database [label=" 3. Parse translations "]; "database" -> repo [label=" 5. Commit changes "]; "Translators" -> "database" [label=" 4. Translate "]; "repo" -> "VCS repository" [label=" 6. Push repository "]; }

Rada

Hlavná stránka na hosťovanie kódu nie je nevyhnutná, môžete používať Weblate s Lokálne súbory, kde sa repozitár nachádza iba vo vnútri Weblate.

Aktualizácia repozitárov

Mali by ste nastaviť spôsob aktualizácie backendových repozitárov z ich zdroja.

Vždy, keď Weblate aktualizuje repozitár, spustia sa doplnky po aktualizácii, pozri Doplnky.

Zhodné ciele webhookov

Webhooky foriem aktualizujú komponenty, ktorých Repozitár zdrojového kódu sa presne zhoduje s URL repozitára z obsahu webhooku (HTTPS alebo SSH podľa hlásenia foriem, plus bežné varianty ako koncová lomka).

Všeobecné koncové body webhookov foriem sú rozhrania pre kompatibilitu a bežné doručenia z repozitára nie sú kryptograficky autentifikované. Doručenia staršej aplikácie GitHub App obsahujúce inštalačné údaje sú výnimkou: všeobecný koncový bod GitHub overuje ich podpis pomocou GITHUB_LEGACY_APP_WEBHOOK_SECRET. Porovnávanie repozitára neuplatňuje riadenie prístupu k projektu alebo komponentu, pretože webhooky potrebujú aktualizovať aj súkromné projekty a obmedzené komponenty. Ich odpovede JSON zahŕňajú diagnostické počty pre zhody repozitára, vetvy a povolených hookov. Úspešné odpovede tiež zahŕňajú úplné slugy projektu/komponentu a absolútne URL API aktualizovaných komponentov. Poskytnutie zodpovedajúcej URL repozitára teda môže potvrdiť, že repozitár je registrovaný, a odhaliť tieto identifikátory.

Každé zodpovedajúce doručenie zaznamená udalosť hooku a naplánuje aktualizáciu repozitára. Doručenia generických hookov nepodliehajú obmedzeniu frekvencie požiadaviek na úrovni aplikácie ani zlučovaniu. Operácie s repozitárom sa vykonávajú postupne, aby sa zachovala konzistentnosť repozitára, to však neobmedzuje počet prijatých doručení ani počet zaradených pokusov o aktualizáciu. Aktualizácia nezmeneného repozitára napriek tomu načíta nakonfigurovaný vzdialený repozitár, ale skončí pred zlúčením zmien alebo spracovaním prekladových súborov.

Komponenty spravované prostredníctvom autentifikovanej integrácie sú vylúčené zo všeobecného priraďovania webhookov a jeho diagnostických počtov. Momentálne sa to vzťahuje na backend VCS GitHub (cez aplikáciu Weblate GitHub). Tieto komponenty dostávajú oznámenia iba prostredníctvom ich vyhradeného tokenizovaného a podpísaného URL webhooku aplikácie GitHub. Očakáva sa, že budúce autentifikované integrácie budú používať rovnaké oddelenie.

Vrátené URL API neudeľujú prístup ku komponentom. Webové rozhranie a API naďalej vynucujú bežné riadenie prístupu a odpovede webhookov nezahŕňajú obsah repozitára, preklady ani poverenia. Ak je to možné, uprednostnite autentifikovanú integráciu, ako je URL webhooku aplikácie.

Zmenené vo verzii 2026.9: Záložné zhody pre hostiteľa a príponu cesty boli odstránené. Ak sa aktualizácie zastavia, zosúlaďte Repozitár zdrojového kódu s URL z obsahu webhooku foriem.

Vyhýbanie sa konfliktom pri zlúčení

Konflikty pri zlúčení z Weblate vznikajú, keď bol ten istý súbor zmenený vo Weblate aj mimo neho. V závislosti od situácie existuje niekoľko prístupov, ktoré tu môžu pomôcť:

Vyhýbanie sa konfliktom pri zlúčení zmenou prekladových súborov iba vo Weblate

Vyhýbaniu sa úpravám mimo Weblate je jednoduché pri jednojazyčných súboroch — môžete pridávať nové reťazce vo Weblate a nechať celé editovanie súborov tam. Pri dvojjazyčných súboroch zvyčajne existuje nejaký proces extrakcie správ na generovanie preložiteľných súborov zo zdrojového kódu. V niektorých prípadoch sa to dá rozdeliť na dve časti:

  1. Extrakcia generuje šablónu (napríklad gettext POT sa generuje pomocou xgettext).

  2. Ďalší proces ju zlúči do skutočných prekladov (gettext PO súbory sa aktualizujú pomocou msgmerge).

Druhý krok môžete vykonať vo Weblate a zabezpečí, že všetky čakajúce zmeny budú zahrnuté pred touto operáciou.

Vyhýbanie sa konfliktom pri zlúčení uzamknutím Weblate počas vykonávania externých zmien

Integrácia Weblate do vášho procesu aktualizácie tak, aby vyprázdnil zmeny pred aktualizáciou súborov mimo Weblate, dá sa dosiahnuť použitím REST API Weblate na prinútenie Weblate odoslať všetky čakajúce zmeny a uzamknúť preklad, zatiaľ čo vykonávate zmeny na vašej strane.

Skript na vykonávanie aktualizácií môže vyzerať takto:

# Lock Weblate translation
wlc lock
# Push changes from Weblate to upstream repository
wlc push
# Pull changes from upstream repository to your local copy
git pull
# Update translation files, this example is for Django
./manage.py makemessages --keep-pot -a
git commit -m 'Locale updates' -- locale
# Push changes to upstream repository
git push
# Tell Weblate to pull changes (not needed if Weblate follows your repo
# automatically)
wlc pull
# Unlock translations
wlc unlock

Ak máte viacero komponentov zdieľajúcich ten istý repozitár, musíte ich všetky uzamknúť samostatne:

wlc lock foo/bar
wlc lock foo/baz
wlc lock foo/baj

Poznámka

Príklad používa Klient Weblate, ktorý potrebuje konfiguráciu (API kľúče), aby bolo možné ovládať Weblate na diaľku. Môžete to tiež dosiahnuť pomocou akéhokoľvek HTTP klienta namiesto Klient Weblate, napríklad curl, pozri REST API Weblate.

Údržba repozitára

Zobrazenie Údržba repozitára zobrazuje stav repozitára pre projekt, komponent alebo preklad a umožňuje privilegovaným používateľom spúšťať operácie údržby z používateľského rozhrania.

Pre zdieľané repozitáre sa oprávnenia kontrolujú na komponente, ktorý vlastní repozitár, aj keď sa operácia spustí z prepojeného komponentu. Používatelia s oprávneniami k repozitáru iba na prepojenom komponente môžu otvoriť toto zobrazenie, aby videli, aké oprávnenia potrebujú na vlastníka. Obmedzenia identifikujú vlastnícky komponent, ak je prístupný; inak požiadajte administrátora projektu, aby zosúladil prístup s vlastníkom repozitára. Pozrite si Riadenie prístupu pre rozsah oprávnení.

Rovnaké akcie je možné tiež spustiť pomocou REST API Weblate alebo, pre podporovanú podmnožinu, Klient Weblate.

Dostupnosť jednotlivých akcií závisí od oprávnení, nakonfigurovaného systému verziovania, či je nakonfigurované odolanie a či je možné vybraný objekt uzamknúť.

Akcie repozitára spustené z tohto zobrazenia sa zaradia do frontu na spracovanie na pozadí. Pre projekt spracováva Weblate postihnuté repozitáre sekvenčne v jednej úlohe a zobrazuje jej priebeh. Opakovanie rovnakej akcie otvorí existujúcu úlohu; inú akciu nemožno spustiť pre ten istý repozitár, kým sa táto úloha nedokončí.

Operácie repozitára Synchronizovať a Znovu skenovať sa zaradia do frontu na spracovanie na pozadí, ako je opísané vyššie. Samostatné akcie Správa súborov sú dostupné iba pre jednotlivý preklad. Prepíšu daný prekladový súbor a zapíšu výsledok počas webovej požiadavky; nie sú to operácie v rámci celého projektu ani komponentu.

Operácie, ktoré čítajú obsah repozitára, ako je aktualizácia, resetovanie alebo opätovné skenovanie, tiež zosúladia prekladové súbory vo Weblate. Pridané alebo odstránené prekladové súbory sa prejavia po dokončení tohto spracovania. Synchronizácia a čistenie jazykov slovníka sú popísané v Jazykové súbory a synchronizácia.

Akcia

Čo to robí

Typické použitie

Commit

Zapíše čakajúce zmeny uložené vo Weblate do lokálneho repozitára.

Vyprázdniť čakajúce zmeny vo Weblate pred vykonávaním práce s repozitárom inde.

Push

Odošle zapísané zmeny lokálneho repozitára do nakonfigurovaného hlavného.

Pošle zapísané preklady upstream, keď je automatické odoslanie vypnuté alebo oneskorené.

Update

Stiahne zmeny z upstreamu, integruje ich pomocou nakonfigurovaného Štýl zlúčenia komponentu a zosúladí prekladové súbory.

Synchronizovať Weblate s hlavným pomocou predvolenej stratégie integrácie.

Aktualizácia so zlúčením

Stiahne hlavné zmeny a integruje ich s explicitným zlúčením.

Prepísať predvolený štýl zlúčenia pre jednu aktualizáciu.

Aktualizácia s rebasom

Stiahne hlavné zmeny a rebasuje lokálne zápisy Weblate na vrchol upstreamu.

Udržiavať históriu lineárnu, keď to zodpovedá vášmu pracovnému postupu.

Aktualizácia s merge bez fast‑forward

Stiahne hlavné zmeny a vytvorí explicitný merge commit, aj keď by bol možný fast-forward.

Zachovať merge zápisy z dôvodov auditu alebo správy vetiev.

Zamknúť / Odomknúť

Zabráni alebo umožní prekladateľom vykonávať ďalšie zmeny vo Weblate.

Zmraziť zmeny prekladu počas vykonávania údržby repozitára mimo Weblate.

Discard local changes

Obnoví lokálny repozitár Weblate do stavu nadradeného repozitára (upstream), zahodí lokálne commity a čakajúce zmeny v prekladoch a zosúladí prekladové súbory.

Použiť, keď by hlavný mal prepísať stav lokálneho repozitára Weblate.

Reset and reapply translations

Resets Weblate’s local repository to upstream, reconciles translation files, and reapplies Weblate’s translations. See Správanie pri obnove prekladov po resetovaní a opätovnom použití zmien.

Obnoviť sa z divergovanej histórie pri zachovaní čakajúcich prekladov Weblate.

Vyčistiť

Odstráni nesledované súbory a zastarané vetvy z lokálnej pracovnej kópie repozitára.

Vyčistiť zostávajúce súbory alebo zastaraný stav repozitára vo pracovnej kópii Weblate.

Synchronizovať

Prinúti Weblate zapísať všetky známe preklady späť do súborov repozitára.

Opraviť prípady, keď sa súbory repozitára dostali mimo synchronizácie so stavom databázy.

Znovu skenovať

Znovu načíta prekladové súbory z lokálneho repozitára do Weblate a odstráni preklady, ktorých súbory už nezodpovedajú konfigurácii komponentu.

Importovať zmeny súborov po manuálnej práci s repozitárom alebo vytvorení súboru.

Odstrániť duplikáty

Odstráni opakované reťazce s rovnakým identifikátorom z jedného prekladového súboru.

Opraviť duplicitné reťazce nahlásené systémom Weblate, keď súbor obsahuje opakované jednotky.

Vyčistiť nepoužité

Odstráni reťazce, ktoré sa už nenachádzajú v základnom súbore, z jedného prekladového súboru. Doplnok Vyčistiť súbory prekladov to dokáže vykonať automaticky.

Spustiť jednorazové vyčistenie bez inštalácie doplnku.

Odstrániť zastarané

Odstráni zastarané reťazce z jedného prekladového súboru PO.

Spustiť jednorazové vyčistenie PO bez zapnutia automatického odstraňovania zastaraných reťazcov.

Pre repozitáre Git obe akcie resetovania ovplyvňujú iba nakonfigurovanú Vetva repozitára. Neresetujú ani neodstraňujú iné lokálne vetvy. Vyčistiť vymaže všetky ostatné lokálne vetvy, vrátane akýchkoľvek zápisov, ktoré neboli odoslané, a odstráni nesledované súbory. Nemáže vetvy z hlavného repozitára.

Ak nahradíte upstream vetvu nesúvisiacou históriou, prepínanie na ňu vo Weblate môže zlyhať, pretože Weblate znovu používa svoju existujúcu lokálnu vetvu a pokúša sa ju zlúčiť alebo rebasovať. Resetovanie, keď je nakonfigurovaná iná vetva, neopraví tú neaktívnu lokálnu vetvu. Napríklad resetovanie master ponechá starú lokálnu vetvu dev nezmenenú.

If no local changes on the affected branch need to be kept, configure a working branch, run Cleanup from Repository maintenance, and wait for it to finish. Then switch to the affected branch again. Weblate creates it afresh from upstream. If the affected branch is already configured, use Discard local changes to replace its local history with upstream instead.

Správanie pri obnove prekladov po resetovaní a opätovnom použití zmien

The Reset and reapply translations operation keeps translations from Weblate while resetting the local repository state to match upstream.

If the Git checkout or its entire .git directory is missing, this operation reconstructs it before reapplying translations. Remote repositories are cloned from the configured upstream branch. Local repositories are initialized with new Git metadata while retaining any surviving working files. Both then use the standard reapply flow. Symlinked checkout directories are never replaced automatically.

V prípade lokálnych repozitárov môže opätovné použitie zmien obnoviť chýbajúce reťazce z databázy vrátane zdrojových reťazcov v základných súboroch jednojazyčných projektov, ak formát súboru podporuje pridávanie reťazcov. Chýbajúce prekladové súbory možno tiež obnoviť, ak formát podporuje ich vytváranie alebo je k dispozícii platná šablóna pre nové preklady. Platí to aj pre lokálne glosáre a ostatné lokálne komponenty, a to aj v prípade, že ich Git checkout funguje správne. Opätovné použitie zmien vo vzdialených repozitároch neobnovuje reťazce odstránené v nadradenom repozitári.

Požadované súbory, ktoré daný formát nedokáže vytvoriť, je potrebné obnoviť zo zálohy. Weblate hlási zlyhania obnovy a zachováva preklady v databáze aj čakajúce zmeny.

Any surviving checkout without a .git directory is preserved under DATA_DIR/repository-recovery/<component-id>/<unique-id>/. Its location is written to the application log. These copies are not removed automatically; inspect and remove them manually after verifying recovery. Reconstruction cannot restore lost Git history or files and metadata that Weblate does not store.

Recovery is explicit: background updates do not automatically rebuild checkouts. If a checkout is unexpectedly missing, first verify that the data volume is available to the worker performing recovery. Damaged Git metadata in an existing .git directory requires manual inspection and repair by an instance administrator.

Operácia môže obnoviť čakajúce preklady iba vtedy, keď cieľové jazykové súbory stále existujú po resete alebo keď ich Weblate môže vytvoriť pre komponent, napríklad pomocou platného Šablóna pre nové preklady.

Ak nie je splnená ani jedna z týchto podmienok, Weblate uchováva čakajúce zmeny vo svojej databáze a hlási chybu obnovy namiesto neskoršieho zlyhania s všeobecnou chybou analýzy.

Vyhýbanie sa konfliktom pri zlúčení zameraním sa na operácie Git

Aj keď je Weblate jediným zdrojom zmien v prekladových súboroch, konflikty sa môžu objaviť pri používaní doplnku Zlúčiť Git zápisy, keď je Štýl zlúčenia nakonfigurovaný na Rebase, alebo keď squashujete zápisy mimo Weblate (napríklad pri zlúčení pull requestu).

Dôvod konfliktov pri zlúčení je v tomto prípade odlišný. Weblate môže mať nové lokálne zápisy po tom, čo zlúčite staršie zápisy Weblate do upstreamu. K tomu zvyčajne dochádza, ak zlúčenie nie je automatizované a zmeny čakajú dni alebo týždne na ľudskú kontrolu. Git potom niekedy nedokáže identifikovať zmeny v upstreame ako zhodné so zmenami vo Weblate a odmietne vykonať rebase.

Squash zlúčenie zmien Weblate sťažuje obnovu z tejto situácie. Squash zlúčenie vytvára nový zápis namiesto zachovania jednotlivých zápisov Weblate v histórii upstreamu. Weblate má stále pôvodné zápisy vo svojom lokálnom repozitári a Git už nemôže dokázať, že ich upstream už obsahuje. Ak bol konflikt tiež vyriešený manuálne, obsah súboru sa môže líšiť od oboch repozitárov, takže Weblate môže pokračovať v zlyhávaní aktualizácie aj po zlúčení pull requestu do upstreamu.

If upstream no longer contains Weblate commits because they were squash merged, updating the repository might not be enough. Use Reset and reapply translations from Repository maintenance to reset Weblate to upstream while keeping pending translations; see Správanie pri obnove prekladov po resetovaní a opätovnom použití zmien. Use Discard local changes only when upstream should fully replace Weblate’s local changes.

Na riešenie tohto musíte buď minimalizovať množstvo čakajúcich zmien vo Weblate, keď zlúčite pull request, alebo sa konfliktom úplne vyhnúť nesquashovaním zmien.

Tu je niekoľko možností, ako sa tomu vyhnúť:

  • Nepoužívajte Zlúčiť Git zápisy ani squash zlúčenie pre zmeny vo Weblate. Práve squashovanie je dôvodom, prečo Git po zlúčení už nemusí rozpoznať zmeny.

  • Pri riešení konfliktov mimo Weblate zlúčte zápisy Weblate bežným merge zápisom a tento výsledok odošlite do upstreamu. Pull request na vyriešenie konfliktu nezlučujte pomocou squash merge.

  • Nechajte Weblate zapísať čakujúce zmeny pred zlúčením. Toto aktualizuje pull request so všetkými jeho zmenami a oba repozitáre budú synchronizované.

  • Použite funkcie kontroly vo Weblate (pozri Pracovné postupy prekladu), aby ste mohli automaticky zlúčiť GitHub pull requesty po úspešnom prejdení CI.

  • Použite uzamykanie vo Weblate, aby ste sa vyhli zmenám, kým je GitHub pull request v recenzii.

Viď aj

Klient Weblate

Oznámenia z hostingu kódu

Pokyny špecifické pre poskytovateľa pre aplikácie a webhooky pre GitHub, GitLab, Bitbucket, Pagure, Azure Repos, Gitea, Forgejo a Gitee sú pokryté v Integrácie s platformami na hosťovanie kódu.

Oznámenia špecifické pre poskytovateľa

Tieto staršie kotvy sú ponechané pre kompatibilitu. Aktuálne nastavenie aplikácií a webhookov špecifických pre poskytovateľa je zdokumentované v Integrácie s platformami na hosťovanie kódu.

Automatická denná aktualizácia repozitárov

Predvolene automaticky sťahuje Weblate vzdialené repozitáre denne, aby zlepšil výkon pri neskoršom zlučovaní zmien. Aktualizácie sú rozložené počas dňa. Nastavte AUTO_UPDATE na "full", aby sa zmeny z vzdialeného repozitára zlúčili aj do pracovnej kópie. Podrobnosti o plánovaní a ďalších režimoch aktualizácie nájdete v AUTO_UPDATE.

Odosielanie zmien z Weblate

Každý prekladový komponent môže mať nastavenú URL na odosielanie (pozri URL odoslania repozitára) a v takom prípade bude Weblate môcť odosielať zmeny do vzdialeného repozitára. Weblate možno tiež nakonfigurovať na automatické odosielanie zmien pri každom zápise, pozri Odoslať pri zápise.

Tabuľku možností odosielania a pracovné postupy pull, merge a review requestov špecifické pre poskytovateľa nájdete v Odosielanie zmien z Weblate.

Viď aj

Pozri Prístup k repozitárom pre nastavenie SSH kľúčov a Lenivé zápisy pre informácie o tom, kedy sa Weblate rozhodne odoslať zmeny.

Chránené vetvy

Ak používate Weblate na chránenej vetve, môžete ho nakonfigurovať na používanie pull requestov a vykonávať skutočnú kontrolu prekladov (čo môže byť problematické pre jazyky, ktoré nepoznáte). Alternatívnym prístupom je vzdať sa tohto obmedzenia pre používateľa push Weblate.

Napríklad na GitHube sa to dá urobiť v konfigurácii repozitára:

../_images/github-protected.png

Interakcia s ostatnými

Weblate uľahčuje interakciu s ostatnými pomocou svojho API.

Lenivé zápisy

Správanie Weblate je zoskupovať zápisy od toho istého autora do jedného zápisu, ak je to možné. Toto výrazne znižuje počet zápisov, avšak môžete ho potrebovať explicitne prinútiť vykonať zápisy v prípade, že chcete dostať repozitár VCS do synchronizácie, napr. pre zlúčenie (toto je v predvolenom nastavení povolené pre skupinu Managers, pozri Zoznam oprávnení).

Zmeny v tomto režime sú zapísané, keď je splnená ktorákoľvek z nasledujúcich podmienok:

  • Niekto iný zmení už zmenený reťazec.

  • Dôjde k zlúčeniu z hlavného.

  • Je vyžiadaný explicitný zápis.

  • Je vyžiadané stiahnutie súboru.

  • Zmena je staršia ako obdobie definované ako Vek zmien na zápis na Konfigurácia komponentu.

Rada

Zápisy sa vytvárajú pre každý komponent. Takže v prípade, že máte veľa komponentov, stále uvidíte veľa zápisov. V takom prípade môžete využiť doplnok Zlúčiť Git zápisy.

Ak chcete zapisovať zmeny častejšie a bez kontroly veku, môžete naplánovať pravidelnú úlohu na vykonanie zápisu. Toto je možné urobiť pomocou Periodické úlohy v Administrátorské rozhranie Django. Najprv vytvorte požadovaný Interval (napríklad 120 sekúnd). Potom pridajte novú periodickú úlohu a vyberte weblate.trans.tasks.commit_pending ako Úloha s {"hours": 0} ako Kľúčové argumenty a požadovaným intervalom.

Spracovanie repozitára skriptami

Spôsob, ako prispôsobiť, ako Weblate interaguje s repozitárom, je Doplnky. Konzultujte Spúšťanie skriptov z doplnku pre informácie o tom, ako vykonávať externé skripty prostredníctvom doplnkov.

Udržiavanie rovnakých prekladov naprieč komponentmi

Keď máte viacero prekladových komponentov, môžete chcieť zabezpečiť, aby mali rovnaké reťazce rovnaký preklad. Toto je možné dosiahnuť na niekoľkých úrovniach.

Propagácia prekladu

S povoleným Povoliť propagáciu prekladu (čo je predvolené, pozri Konfigurácia komponentu), sa všetky nové preklady automaticky vykonajú vo všetkých komponentoch so zodpovedajúcimi reťazcami. Takéto preklady sú správne pripísané aktuálne prekladajúcemu používateľovi vo všetkých komponentoch.

Podmienky propagácie:

  • Components must belong to the configured workspace propagation scope. By default, this is a single project (linking a component is not enough).

  • Povoľte Povoliť propagáciu prekladu na automatické opätovné použitie prekladov pre zodpovedajúce reťazce.

  • Propagácia prekladu vyžaduje, aby sa kľúč zhodoval pre jednojazyčné formáty prekladu, takže na to myslite pri vytváraní prekladových kľúčov.

  • Reťazce sa propagujú počas prekladania, reťazce načítané z repozitára sa nepropagujú.

Tip

Táto funkcia má momentálne obmedzenia a chceme ju urobiť univerzálnejšou. Prosím, podeľte sa o svoju spätnú väzbu na https://github.com/WeblateOrg/weblate/issues/3166.

Kontrola konzistencie

Kontrola Nekonzistentné sa spustí vždy, keď sú reťazce rôzne. Môžete to využiť na manuálnu kontrolu takýchto rozdielov a výber správneho prekladu.

Automatický preklad

Automatický preklad založený na rôznych komponentoch môže byť spôsobom synchronizácie prekladov naprieč komponentmi. Môžete ho spustiť buď manuálne (pozri Automatický preklad) alebo ho nechať bežať automaticky pri aktualizácii repozitára pomocou doplnku (pozri Automatický preklad).