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

benchmark

weblate benchmark

Imports given content into Weblate, useful for benchmarking.

Example of performance profiling
# Run benchmark with a profiling
python -m cProfile -o benchmark.prof ./manage.py benchmark --project benchmark --filemask '*.tbx' --format tbx --zipfile /tmp/MicrosoftTermCollection2.zip

# Convert to SVG for visualization
uvx gprof2dot -f pstats benchmark.prof | dot -Tsvg -o benchmark.svg

# Display SVG
firefox ./benchmark.svg
Example of memory profiling
# Run benchmark under memray
uvx memray run ./manage.py benchmark --project benchmark --filemask '*.tbx' --format tbx --zipfile /tmp/MicrosoftTermCollection2.zip

# Render the profile
uvx memray flamegraph ./memray-manage.py.2554179.bin

# Display it
fixefox memray-flamegraph-manage.py.2554179.html

billing_demo

weblate billing_demo

Added in version 5.15.

Creates a demo billing project. Can be executed multiple times to add additional invoices and billing events.

This can be useful when developing Weblate. Needs Számlázás installed.

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

Age in hours for committing. If not specified the value configured in Összetevőkonfiguráció is used.

Megjegyzés

This is automatically performed in the background by Weblate, so there no real need to invoke this manually, besides forcing an earlier commit than specified by Összetevőkonfiguráció.

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_memory

weblate cleanup_memory

Added in version 5.13.

Removes all obsolete entries with pending status from the translation memory.

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

Usually it is more comfortable to import project when Fordítási projektek és összetevők hozzáadása.

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).

You can dump users from the existing Django site using:

./manage.py dumpdata auth.User > users.json

Tipp

Use dumpuserdata for dumping data from other Weblate server as that includes user settings as well.

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.

To install MO-fájlok generálása for all components:

weblate install_addon --addon weblate.gettext.mo --configuration '{"fuzzy": true}' --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.

list_file_format_params

weblate list_file_format_params

Lists File format parameters.

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

Weblate pushes changes automatically if Feltöltés véglegesítéskor (Push on commit) in Összetevőkonfiguráció is turned on, which is the default.

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é.