Kezelőparancsok

Megjegyzés

Ha a kezelőparancsokat nem ugyanazzal a felhasználóval futtatja, mint amellyel a webszerver fut, előfordulhat, hogy a fájlok hibás jogosultságokkal jönnek létre. További részletekért lásd: Fájlrendszer jogosultságok.

Az alapvető kezelőparancsok a Django forráskódban ./manage.py néven érhetők el vagy a Weblate-re telepített weblate nevű kibővített parancskészletként.

Kezelőparancsok futtatása

Ahogy korábban említettük, a parancsok meghívása attól függ, hogyan telepítette a Weblate-et.

Ha virtualenv-ben használja a Weblate-et, megadhatja a weblate teljes elérési útját vagy aktiválhatja a virtualenv-et a parancs futtatása előtt:

# Direct invocation
~/weblate-env/bin/weblate

# Activating virtualenv adds it to search path
. ~/weblate-env/bin/activate
weblate

Ha közvetlenül a forráskódból használja (például tarball vagy Git-klón révén), a kezelőparancsokat a Weblate forráskódban található ./manage.py segítségével futtathatja:

python ./manage.py list_versions

Ha a Weblate-et pip-pel vagy a ./setup.py script segítségével telepítette, akkor a weblate elérhető lesz az elérési útban (vagy a virtualenv útvonalán), így onnan irányíthatja a Weblate-et:

weblate list_versions

A Docker-képnél a szkript ugyanígy van telepítve, és a docker exec segítségével futtatható:

docker exec --user weblate <container> weblate list_versions

A docker-compose-plugin esetében a folyamat hasonló, csak a docker compose exec parancsot kell használni:

docker compose exec --user weblate weblate weblate list_versions

Ha fájlt is kell átadnia, ideiglenesen csatolhat egy kötetet is:

docker compose exec --user weblate /tmp:/tmp weblate weblate importusers /tmp/users.json

add_suggestions

weblate add_suggestions <project> <component> <language> <file>

Fordítás importálása fájlból, javaslatként való felhasználásra az adott fordításhoz. Az ismétlődő fordításokat kihagyja; csak az eltérőeket veszi figyelembe.

--author USER@EXAMPLE.COM

A javaslatokat készítő szerző e-mail-címe. Ennek a felhasználónak már léteznie kell az importálás előtt (szükség esetén az admin felületen létrehozható).

Példa:

weblate --author michal@cihar.com add_suggestions weblate application cs /tmp/suggestions-cs.po

auto_translate

weblate auto_translate <project> <component> <language>

A 4.6 verzióban változott: Új paraméterrel bővült a fordítási mód beállításához.

Automatikus fordítást végez más összetevők fordításai alapján.

--source PROJECT/COMPONENT

Meghatározza az összetevőt, amely forrásként szolgál a fordításhoz. Ha nincs megadva, a projekt összes összetevője felhasználásra kerül.

--user USERNAME

A fordítások szerzőjeként feltüntetendő felhasználónév. Ha nincs megadva, az „Anonymous user” kerül felhasználásra.

--overwrite

Meglévő fordítások felülírásának engedélyezése.

--inconsistent

Az inkonzisztens (lásd: Nem egységes) meglévő fordítások felülírásának engedélyezése.

--add

A rendszer automatikusan hozzáadja a nyelvet, ha az adott fordítás még nem létezik.

--mt MT

Gépi fordítás használata más összetevők helyett gépi fordítási forrásként.

--threshold THRESHOLD

Gépi fordítási hasonlósági küszöb, alapértelmezetten 80.

--mode MODE

Fordítási mód megadása, alapértelmezetten translate, de használható a fuzzy vagy a suggest is.

Példa:

weblate auto_translate --user nijel --inconsistent --source weblate/application weblate website cs

celery_queues

weblate celery_queues

Megjeleníti a Celery feladat várósorok hosszát.

checkgit

weblate checkgit <project|project/component>

Kiírja a háttérben működő Git-tároló aktuális állapotát.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

commitgit

weblate commitgit <project|project/component>

Minden függőben lévő módosítás véglegesítése a háttér Git-tárolóban.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő, illetve a --file-format opcióval fájlformátum alapján is szűrhető.

commit_pending

weblate commit_pending <project|project/component>

A megadott korhatárnál régebbi függő módosítások véglegesítése.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

--age HOURS

A véglegesítéshez megadott idő (órában). Ha nincs megadva, akkor az összetevő beállításaiban megadott érték kerül felhasználásra.

Megjegyzés

Ez a művelet a háttérben automatikusan történik a Weblate által, így nincs feltétlenül szükség kézi futtatására – kivéve ha az összetevő által meghatározottnál korábbi véglegesítést kíván végrehajtani.

cleanuptrans

weblate cleanuptrans

Elárvult ellenőrzések és fordítási javaslatok tisztítása. Általában nincs szükség kézi futtatásra, mivel ez automatikusan megtörténik a háttérben.

cleanup_ssh_keys

weblate cleanup_ssh_keys

Added in version 4.9.1.

Elmentett SSH-kulcsok tisztítása:

  • Eltávolítja az elavult RSA kulcsokat a GitHubhoz, amelyek problémát okozhatnak a kapcsolódás során.

  • Eltávolítja a hosztkulcsok duplikált bejegyzéseit.

Lásd még

SSH-tárolók

createadmin

weblate createadmin

Létrehoz egy admin fiókot véletlenszerű jelszóval, hacsak nincs megadva másként.

--password PASSWORD

Jelszó megadása parancssori paraméterként, így nem generálódik véletlenszerű jelszó.

--no-password

Ne állítson be jelszót – ez hasznos lehet a –update kapcsolóval együtt.

--username USERNAME

Az admin helyett megadott név használata.

--email USER@EXAMPLE.COM

Adminisztrátori e-mail-cím megadása.

--name

Adminisztrátor neve (megjelenített név) megadása.

--update

Létező felhasználó frissítése (pl. jelszó módosítására is használható).

dump_memory

weblate dump_memory

Weblate fordítási memória exportálása JSON-fájlba.

dumpuserdata

weblate dumpuserdata <file.json>

Felhasználói adatok mentése fájlba, hogy később a importuserdata paranccsal visszatölthetők legyenek.

Tipp

Hasznos lehet Weblate példányok migrálásánál vagy összevonásánál.

import_demo

weblate import_demo

Added in version 4.1.

Demó projekt létrehozása a következő alapján: <https://github.com/WeblateOrg/demo>. A parancs futtatása előtt győződjön meg arról, hogy a Celery-feladatok futnak.

Ez hasznos lehet a Weblate fejlesztése során.

--delete

Létező demó projekt eltávolítása.

import_json

weblate import_json <json-file>

Összetevők kötegelt importálása JSON-adatok alapján.

Az importált JSON-fájl felépítése nagyrészt megfelel az összetevő objektumnak (lásd: GET /api/components/(string:project)/(string:component)/). Kötelező megadni a name és filemask mezőket.

--project PROJECT

Megadja, honnan történjen az összetevők importálása.

--main-component COMPONENT

A megadott VCS tároló használata minden összetevő esetén.

--ignore

A már importált összetevők kihagyása.

--update

A már importált összetevők frissítése.

JSON-fájl példa:

[
  {
    "slug": "po",
    "name": "Gettext PO",
    "file_format": "po",
    "filemask": "po/*.po",
    "new_lang": "none"
  },
  {
    "name": "Android",
    "filemask": "android/values-*/strings.xml",
    "template": "android/values/strings.xml",
    "repo": "weblate://test/test",
    "file_format": "aresource"
  }
]

Lásd még

import_memory

import_memory

weblate import_memory <file>

Fájl importálása a Weblate fordítási memóriába.

Támogatott fájlformátumok: TMX, JSON, XLIFF, PO, CSV.

A JSON és TMX kívüli formátumoknál szükséges lehet a forrás- és célnyelv megadása.

--language-map LANGMAP

Lehetővé teszi a TMX-ben szereplő nyelvek hozzárendelését a Weblate fordítási memóriához. A nyelvkódok hozzárendelése a Weblate által végzett normalizálás után történik.

Például: --language-map en_US:en hatására minden en_US szöveg en-ként kerül importálásra.

Ez akkor lehet hasznos, ha a TMX fájlban használt területi beállítások (locale-ok) nem egyeznek meg a Weblate-ben használttal.

--source-language SOURCE_LANG

Az importált fordítások forrásnyelvének megadása. Általában olyan formátumoknál szükséges, amelyekből nem állapítható meg a nyelv.

--target-language TARGET_LANG

Az importált fordítások célnyelvének megadása. Általában olyan formátumoknál szükséges, amelyekből nem állapítható meg a nyelv.

import_project

weblate import_project <project> <gitrepo> <branch> <filemask>

Összetevők kötegelt importálása egy projekthez fájlmaszk alapján. Ez az Összetevők felismerése kiegészítőn alapul, ezért célszerű lehet azt használni helyette.

A <project> egy létező projekt neve, amelybe az összetevők kerülnek importálásra.

A <gitrepo> a használandó Git-tároló URL-je, a <branch> pedig az adott Git ág. Ha meglévő Weblate-összetevőből szeretne további fordítási összetevőket importálni, a következő URL-formátumot használja: weblate://<project>/<component>.

A <filemask> határozza meg a fájlok felismerését a tárolóban. Lehet egyszerű, helyettesítő karaktereket használó forma vagy teljes értékű reguláris kifejezés.

Az egyszerű illesztésnél a ** jelöli az összetevőt, a * pedig a nyelvet, például: **/*.po

A reguláris kifejezésnek tartalmaznia kell component és language nevű csoportokat, például: (?P<language>[^/]*)/(?P<component>[^-/]*)\\.po.

Az import a meglévő fájlok alapján illeszti a már létező összetevőket, és hozzáadja azokat, amelyek még nem léteznek. A meglévőket nem módosítja.

--name-template TEMPLATE

Az összetevő nevének testreszabása Django sablonszintaxis segítségével.

Például: Dokumentáció: {{ component }}

--base-file-template TEMPLATE

Az egynyelvű fordítások alapfájljának testreszabása.

Például: {{ component }}/res/values/string.xml

--new-base-template TEMPLATE

Új fordítások hozzáadásának alapfájlja is testreszabható.

Például: {{ component }}/ts/en.ts

--file-format FORMAT

A használandó fájlformátum is megadható (lásd: Fordítási fájlformátumok), alapértelmezetten automatikus felismerést alkalmaz.

--language-regex REGEX

Megadható nyelvi szűrés (lásd: Összetevőkonfiguráció) ezzel a paraméterrel. Érvényes reguláris kifejezésnek kell lennie.

--main-component

Kiválasztható, melyik összetevő legyen az elsődleges – az, amely ténylegesen tartalmazza a VCS tárolót.

--license NAME

Megadható az általános, projekt- vagy összetevőszintű fordítási licenc.

--license-url URL

Megadható a licenc URL-je, ahol a fordítási licenc elérhető.

--vcs NAME

Ha szükséges megadni, hogy melyik verziókezelő rendszert használja a rendszer, azt itt teheti meg. Az alapértelmezett verziókezelő rendszer a Git.

Hogy szemléltessük a folyamatot, próbáljunk meg importálni két projektet.

Először a Debian kézikönyv fordításait, ahol minden nyelv külön mappában van, és az egyes fejezetek fordításait tartalmazza:

weblate import_project \
    debian-handbook \
    https://salsa.debian.org/hertzog/debian-handbook.git \
    bullseye/main \
    '*/**.po'

Ezután a Tanaguru eszközt, ahol a fájlformátumot is meg kell adni, valamint az alapfájl sablonját, és azt, hogy minden összetevő és fordítás egyetlen mappában található:

weblate import_project \
    --file-format=properties \
    --base-file-template=web-app/tgol-web-app/src/main/resources/i18n/%s-I18N.properties \
    tanaguru \
    https://github.com/Tanaguru/Tanaguru \
    master \
    web-app/tgol-web-app/src/main/resources/i18n/**-I18N_*.properties

Bonyolultabb példa fájlnevek elemzésére, ahol a fájlnév alapján az összetevő és a nyelv is meghatározható, például: src/security/Numerous_security_holes_in_0.10.1.de.po:

weblate import_project \
    tails \
    git://git.tails.boum.org/tails master \
    'wiki/src/security/(?P<component>.*)\.(?P<language>[^.]*)\.po$'

Csak egy kiválasztott nyelv fordításainak szűrése:

./manage import_project \
    --language-regex '^(cs|sk)$' \
    weblate \
    https://github.com/WeblateOrg/weblate.git \
    'weblate/locale/*/LC_MESSAGES/**.po'

Sphinx dokumentáció importálása, amely több fájlra van osztva:

$ weblate import_project --name-template 'Documentation: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/**.po'

Sphinx dokumentáció importálása, amely több fájlra és mappára van osztva:

$ weblate import_project --name-template 'Directory 1: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/dir1/**.po'
$ weblate import_project --name-template 'Directory 2: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/dir2/**.po'

Lásd még

További részletes példák a Alapelvek a nemzetközi fordíthatósághoz fejezetben találhatók, illetve használható a import_json parancs is.

import_projectbackup

weblate import_projectbackup <project_name> <project_slug> <username> <filename>

Added in version 5.10.

Projektszintű biztonsági mentések importálása.

Tipp

Általában kényelmesebb a projekt importálása a projektek hozzáadása során.

importuserdata

weblate importuserdata <file.json>

Felhasználói adatok importálása a dumpuserdata paranccsal létrehozott fájlból.

importusers

weblate importusers --check <file.json>

Felhasználók importálása a Django auth_users adatbázis JSON-dumpjából.

--check

Ezzel az opcióval csak ellenőrzi a rendszer, hogy egy megadott fájl importálható-e, és jelzi az esetleges ütközéseket (felhasználónevek vagy e-mail-címek alapján).

A meglévő Django telepítésből a felhasználók exportálhatók a következő módon:

weblate dumpdata auth.User > users.json

install_addon

weblate install_addon --addon ADDON <project|project/component>

Kiegészítő telepítése összetevők egy csoportjához.

--addon ADDON

A telepítendő kiegészítő neve. Például: weblate.gettext.customize.

--configuration CONFIG

A kiegészítő JSON formátumú konfigurációja.

--update

A meglévő kiegészítő konfigurációjának frissítése.

Megadható, hogy melyik projektbe vagy összetevőbe történjen a telepítés (például weblate/application) vagy használható a --all opció az összes meglévő összetevő bevonásához.

A Gettext kimenet testreszabása telepítése minden összetevőhöz:

weblate install_addon --addon weblate.gettext.customize --configuration '{"width": -1}' --update --all

Lásd még

Kiegészítők

install_machinery

Added in version 4.18.

weblate install_machinery --service SERVICE

Webhelyszintű automatikus javaslatszolgáltatás telepítése.

--service SERVICE

A telepítendő szolgáltatás neve. Például: deepl.

--configuration CONFIG

A szolgáltatás JSON-kódolt konfigurációja.

--update

A meglévő szolgáltatáskonfiguráció frissítése.

A DeepL telepítése:

weblate install_machinery --service deepl --configuration '{"key": "x", "url": "https://api.deepl.com/v2/"}' --update

list_addons

weblate list_addons

Kiegészítők listázása reStructuredText formátumban, sablonként a Kiegészítők dokumentációhoz.

list_permissions

weblate list_permissions

Hozzáférési jogosultságok listázása reStructuredText formátumban, sablonként a Hozzáférés-vezérlés dokumentációhoz.

list_checks

weblate list_checks

Minőség-ellenőrzések listázása reStructuredText formátumban, sablonként a Ellenőrzések és javítások és Ellenőrzések és javítások oldalakhoz.

list_languages

weblate list_languages <locale>

Támogatott nyelvek listázása MediaWiki formátumban – nyelvkódokkal, angol és lokalizált nevekkel.

Ez a következő oldal generálásához használatos: <https://wiki.l10n.cz/Slovn%C3%ADk_s_n%C3%A1zvy_jazyk%C5%AF>.

list_machinery

weblate list_machinery

Automatikus javaslatszolgáltatók listázása reStructuredText formátumban, sablonként az Automatikus javaslatok dokumentációhoz.

list_translators

weblate list_translators <project|project/component>

Fordítók listázása a hozzájárulás nyelve szerint az adott projektben:

[French]
Jean Dupont <jean.dupont@example.com>
[English]
John Doe <jd@example.com>
--language-code

Nevek listázása a nyelv neve helyett a nyelvkód alapján.

Megadható, hogy melyik projektet vagy összetevőt használja (például weblate/application) vagy a --all opcióval az összes meglévő összetevő fordítóit listázhatja.

list_versions

weblate list_versions

Az összes Weblate-függőség és azok verzióinak listázása.

loadpo

weblate loadpo <project|project/component>

Fordítások újratöltése lemezről (például ha manuálisan végzett frissítést a VCS-tárolóban).

--force

Frissítés kényszerítése akkor is, ha a fájlok naprakésznek tűnnek.

--lang LANGUAGE

A feldolgozás korlátozása egyetlen nyelvre.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Megjegyzés

Ezt a parancsot ritkán kell kézzel futtatni, mivel a Weblate automatikusan betölti a módosított fájlokat minden VCS frissítés után. Kézi futtatásra csak akkor lehet szükség, ha manuálisan módosították a Weblate alatti VCS-tárolót vagy egyes speciális esetekben, például frissítés után.

lock_translation

weblate lock_translation <project|project/component>

Egy összetevő további fordításának letiltása.

Tipp

Ez akkor lehet hasznos, ha karbantartást szeretne végezni az alapul szolgáló tárolón.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Lásd még

unlock_translation

migrate

weblate migrate

Adatbázis migrálása az aktuális Weblate séma szerint. A parancssori opciók a Django migrate dokumentációjában találhatók.

Tipp

Nem interaktív telepítéshez használható a weblate migrate --noinput parancs, majd az admin felhasználó létrehozható a createadmin paranccsal.

move_language

weblate move_language source target

Lehetővé teszi nyelvi tartalmak összevonását. Ez hasznos frissítéskor, amikor korábban nem ismert nyelvek új verzióban álnévként (pl. (automatikusan létrehozott) utótaggal) jelennek meg. A művelet áthelyezi a tartalmat a forrás nyelvből a cél nyelvbe.

Példa:

weblate move_language cze cs

Miután áthelyezte a tartalmat, ellenőrizze, hogy nem maradt-e hátra semmi (ez előfordulhat, ha időközben más módosította a tárolót), majd távolítsa el az (automatikusan létrehozott) nyelvi megjelölést.

pushgit

weblate pushgit <project|project/component>

Véglegesített változások feltöltése a távoli VCS (verziókezelő) tárolóba.

--force-commit

Bármely függőben lévő módosítás véglegesítése a feltöltés előtt.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Megjegyzés

A Weblate automatikusan feltölti a változásokat, ha a Feltöltés véglegesítéskor (Push on commit) beállítás engedélyezve van az adott összetevő esetében – ez az alapértelmezett viselkedés.

unlock_translation

weblate unlock_translation <project|project/component>

Egy összetevő feloldása, így ismét elérhetővé válik fordításra.

Tipp

Ez akkor lehet hasznos, ha karbantartást szeretne végezni az alapul szolgáló tárolón.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Lásd még

lock_translation

setupgroups

weblate setupgroups

Alapértelmezett csoportok konfigurálása, és opcionálisan minden felhasználó hozzárendelése ehhez a csoporthoz.

--no-privs-update

Megakadályozza a meglévő csoportok automatikus frissítését (csak újakat ad hozzá).

--no-projects-update

Megakadályozza a meglévő projektek csoportjainak automatikus frissítését. Ez lehetővé teszi az újonnan létrehozott csoportok hozzáadását meglévő projektekhez, lásd: Projekt hozzáférés-vezérlés.

setuplang

weblate setuplang

A Weblate-ben definiált nyelvek listájának frissítése.

--no-update

Megakadályozza a meglévő nyelvek automatikus frissítését (csak újakat ad hozzá).

updatechecks

weblate updatechecks <project|project/component>

Az összes ellenőrzés frissítése az összes szövegre.

Tipp

Hasznos nagyobb változásokat hozó frissítések esetén, amelyek jelentősen módosítják az ellenőrzések működését.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Megjegyzés

A Weblate rendszeresen újraszámolja az ellenőrzéseket a háttérben, ennek gyakorisága a BACKGROUND_TASKS beállítással konfigurálható.

updategit

weblate updategit <project|project/component>

Távoli VCS-tárolók letöltése és a belső gyorsítótár frissítése.

Meghatározható, hogy melyik projekt vagy összetevő frissüljön (például weblate/application) vagy a --all opcióval az összes meglévő összetevő frissíthető.

Megjegyzés

Általában jobb, ha a tárolóban hookokat konfigurál a Értesítési hookok eléréséhez, ahelyett hogy rendszeresen a updategit paranccsal frissítené.