Comenzi de gestionare

Notă

Rularea comenzilor de management sub un utilizator diferit de cel care rulează serverul web poate avea ca rezultat obținerea unor permisiuni greșite pentru fișiere; consultați Permisiunile sistemului de fișiere pentru mai multe detalii.

Veți găsi comenzi de gestionare de bază (disponibile ca ./manage.py în sursele Django, sau ca un set extins într-un script numit weblate instalabil deasupra Weblate).

Invocarea comenzilor de gestionare

După cum am menționat anterior, invocarea depinde de modul în care ați instalat Weblate.

Dacă folosiți virtualenv pentru Weblate, puteți fie să specificați calea completă către weblate, fie să activați virtualenv-ul înainte de a-l invoca:

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

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

Dacă folosiți codul sursă direct (fie dintr-un tarball, fie din Git checkout), scriptul de management este ./manage.py disponibil în sursele Weblate. Pentru a-l rula:

python ./manage.py list_versions

Dacă ați instalat Weblate utilizând programul de instalare pip sau scriptul ./setup.py, comanda weblate este instalată în calea dumneavoastră (sau în calea virtualenv), de unde o puteți utiliza pentru a controla Weblate:

weblate list_versions

Pentru imaginea Docker, scriptul este instalat ca mai sus și îl puteți rula folosind docker exec:

docker exec --user weblate <container> weblate list_versions

Pentru docker-compose, procesul este similar, trebuie doar să folosiți docker-compose exec:

docker-compose exec --user weblate weblate weblate list_versions

În cazul în care aveți nevoie să-i transmiteți un fișier, puteți adăuga temporar un volum:

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

adăugare_sugestii

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

Nou în versiunea 2.5.

Importă o traducere din fișier pentru a o utiliza ca sugestie pentru traducerea dată. Nu ia în considerare traducerile duplicate; sunt adăugate doar cele diferite.

--author USER@EXAMPLE.COM

E-mail al autorului pentru sugestii. Acest utilizator trebuie să existe înainte de import (puteți crea unul în interfața de administrare, dacă este necesar).

Exemplu:

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

auto_traducere

weblate auto_translate <project> <component> <language>

Nou în versiunea 2.5.

Schimbat în versiunea 4.6: A fost adăugat un parametru pentru modul de traducere.

Efectuează traducerea automată pe baza traducerilor altor componente.

--source PROJECT/COMPONENT

Specifică componenta care urmează să fie utilizată ca sursă disponibilă pentru traducere. Dacă nu este specificat, se utilizează toate componentele din proiect.

--user USERNAME

Specificați numele de utilizator listat ca autor al traducerilor. „Utilizator anonim” este utilizat dacă nu este specificat.

--overwrite

Dacă trebuie să se suprascrie traducerile existente.

--inconsistent

Dacă se suprascriu traducerile existente care sunt inconsecvente (a se vedea Inconsecvent).

--add

Adăugați automat o limbă în cazul în care o anumită traducere nu există.

--mt MT

Utilizați traducerea automată în locul altor componente ca traduceri automate.

--threshold THRESHOLD

Pragul de similaritate pentru traducerea automată, valoarea implicită este 80.

--mode MODE

Specifică modul de traducere, implicit este translate, dar pot fi folosite fuzzy sau suggest.

Exemplu:

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

celery_queues

weblate celery_queues

Nou în versiunea 3.7.

Afișează lungimea cozilor de sarcini Celery.

checkgit

weblate checkgit <project|project/component>

Tipărește starea curentă a depozitului Git din back-end.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

commitgit

weblate commitgit <project|project/component>

Transferă toate modificările posibile în așteptare în depozitul Git din spate.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

commit_pending

weblate commit_pending <project|project/component>

Activează modificările în așteptare mai vechi de o anumită vârstă.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

--age HOURS

Vârsta în ore pentru angajare. Dacă nu este specificată, se utilizează valoarea configurată în Configurația componentei.

Notă

Acest lucru este efectuat automat în fundal de către Weblate, astfel încât nu este nevoie de o invocare manuală, în afară de forțarea unei comenzi mai devreme decât cea specificată de Configurația componentei.

curățaretrans

weblate cleanuptrans

Curăță verificările orfane și sugestiile de traducere. În mod normal, nu este necesar să executați manual această operațiune, deoarece curățarea se face automat în fundal.

chei_ssh_curățare

weblate cleanup_ssh_keys

Nou în versiunea 4.9.1.

Efectuează curățarea cheilor de gazdă SSH stocate:

  • Elimină cheile RSA depreciate pentru GitHub, care ar putea cauza probleme de conectare la GitHub.

  • Elimină intrările duplicate din cheile de gazdă.

Vezi și

Depozite SSH

createadmin

weblate createadmin

Creează un cont admin cu o parolă aleatorie, cu excepția cazului în care aceasta este specificată.

--password PASSWORD

Furnizează o parolă pe linia de comandă, pentru a nu genera una aleatorie.

--no-password

Nu setați parola, acest lucru poate fi util cu –update.

--username USERNAME

Utilizați numele dat în loc de admin.

--email USER@EXAMPLE.COM

Specificați adresa de e-mail a administratorului.

--name

Specificați numele administratorului (vizibil).

--update

Actualizați utilizatorul existent (puteți folosi acest lucru pentru a schimba parolele).

Schimbat în versiunea 2.9: Au fost adăugați parametrii --username, --email, --name și --update.

memorie_deversare

weblate dump_memory

Nou în versiunea 2.20.

Exportați un fișier JSON care conține conținutul Weblate Translation Memory.

dumpuserdata

weblate dumpuserdata <file.json>

Aruncă datele utilizatorului într-un fișier pentru utilizare ulterioară de către importuserdata.

Sugestie

Acest lucru este util atunci când migrați sau fuzionați instanțe Weblate.

import_demo

weblate import_demo

Nou în versiunea 4.1.

Creează un proiect demo cu componente bazate pe <https://github.com/WeblateOrg/demo>. Asigurați-vă că sarcinile celery sunt în curs de execuție înainte de a rula această comandă.

Acest lucru poate fi util atunci când se dezvoltă Weblate.

import_json

weblate import_json <json-file>

Nou în versiunea 2.7.

Import pe loturi de componente pe baza datelor JSON.

Structura fișierului JSON importat corespunde în mare parte obiectului component (a se vedea GET /api/components/(string:project)/(string:component)/). Trebuie să includeți câmpurile name și filemask.

--project PROJECT

Specifică locul de unde vor fi importate componentele.

--main-component COMPONENT

Utilizați depozitul VCS dat din această componentă pentru toate acestea.

--ignore

Treceți peste componentele (deja) importate.

--update

Actualizarea componentelor importate (deja).

Schimbat în versiunea 2.9: Parametrii --ignore și --update sunt acolo pentru a se ocupa de componentele deja importate.

Exemplu de fișier JSON:

[
  {
    "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"
  }
]

Vezi și

import_memory

import_memory

weblate import_memory <file>

Nou în versiunea 2.20.

Importă un fișier TMX sau JSON în memoria de traducere Weblate.

--language-map LANGMAP

Permite maparea limbilor din TMX în memoria de traducere Weblate. Codurile limbilor sunt cartografiate după normalizarea efectuată de obicei de Weblate.

--language-map en_US:en va importa, de exemplu, toate șirurile en_US ca fiind en.

Acest lucru poate fi util în cazul în care se întâmplă ca localitățile din fișierul TMX să nu corespundă cu cele pe care le utilizați în Weblate.

import_proiect

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

Schimbat în versiunea 3.0: Comanda import_project se bazează acum pe add-on-ul Descoperirea componentelor, ceea ce duce la unele modificări în ceea ce privește comportamentul și parametrii acceptați.

Importul pe loturi de componente în proiect se bazează pe masca de fișier.

<project> numește un proiect existent, în care urmează să fie importate componentele.

<gitrepo> definește adresa URL a depozitului Git care trebuie utilizată, iar <branch> reprezintă ramura Git. Pentru a importa componente de traducere suplimentare dintr-o componentă Weblate existentă, utilizați un URL weblate://<proiect>/<component> pentru <gitrepo>.

<filemask> definește descoperirea fișierelor pentru depozit. Aceasta poate fi fie simplă, folosind caractere wildcards, fie poate folosi întreaga putere a expresiilor regulate.

Potrivirea simplă folosește ** pentru numele componentei și *` pentru limbă, de exemplu: **/*.po

Expresia regulată trebuie să conțină grupurile numite component și language. De exemplu: (?P<language>[^/]*)/(?P<component>[^-/]*)\.po

Importul se potrivește cu componentele existente pe baza fișierelor și le adaugă pe cele care nu există. Nu le modifică pe cele deja existente.

--name-template TEMPLATE

Personalizați numele unei componente utilizând sintaxa șablonului Django.

De exemplu: Documentation: {{ component }}}

--base-file-template TEMPLATE

Personalizați fișierul de bază pentru traducerile monolingve.

De exemplu: {{ component }}/res/values/string.xml

--new-base-template TEMPLATE

Personalizați fișierul de bază pentru adăugarea de noi traduceri.

De exemplu: {{ component }}/ts/en.ts`

--file-format FORMAT

De asemenea, puteți specifica formatul de fișier care urmează să fie utilizat (a se vedea Formate de fișiere acceptate); în mod implicit, este vorba de autodetecția.

--language-regex REGEX

Cu acest parametru puteți specifica filtrarea limbii (a se vedea Configurația componentei). Acesta trebuie să fie o expresie regulată validă.

--main-component

Puteți specifica ce componentă va fi aleasă ca principală - cea care conține de fapt depozitul VCS.

--license NAME

Specificați licența de traducere globală, de proiect sau de componentă.

--license-url URL

Precizați adresa URL la care trebuie găsită licența de traducere.

--vcs NAME

În cazul în care trebuie să specificați ce sistem de control al versiunilor trebuie să utilizați, o puteți face aici. Sistemul implicit de control al versiunilor este Git.

Pentru a vă oferi câteva exemple, să încercăm să importăm două proiecte.

În primul rând traducerile Manualului Debian, unde fiecare limbă are un dosar separat cu traducerile fiecărui capitol:

weblate import_project \
    debian-handbook \
    git://anonscm.debian.org/debian-handbook/debian-handbook.git \
    squeeze/master \
    '*/**.po'

Apoi, instrumentul Tanaguru, unde trebuie specificat formatul fișierului, împreună cu șablonul fișierului de bază și modul în care toate componentele și traducerile sunt localizate într-un singur dosar:

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

Exemplu mai complex de analiză a numelor de fișiere pentru a obține componenta și limba corectă dintr-un nume de fișier de tipul 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$'

Filtrarea numai a traducerilor într-o limbă aleasă:

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

Importul documentației Sphinx împărțite în mai multe fișiere:

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

Importul documentației Sphinx împărțite în mai multe fișiere și directoare:

$ 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'

Vezi și

Exemple mai detaliate pot fi găsite în capitolul Începând cu internaționalizarea; alternativ, ați putea folosi import_json.

importădateutilizator

weblate importuserdata <file.json>

Importă datele utilizatorului dintr-un fișier creat de dumpuserdata

importutilizatori

weblate importusers --check <file.json>

Importă utilizatorii din fișierul JSON al bazei de date Django auth_users.

--check

Cu această opțiune se va verifica doar dacă un anumit fișier poate fi importat și va raporta eventualele conflicte care apar din cauza numelor de utilizator sau a e-mailurilor.

Puteți descărca utilizatorii din instalația Django existentă folosind:

weblate dumpdata auth.User > users.json

instalați_addon

Nou în versiunea 3.2.

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

Instalează un add-on la un set de componente.

--addon ADDON

Numele add-on-ului care urmează să fie instalat. De exemplu weblate.gettext.customize.

--configuration CONFIG

Configurația codificată JSON a unui add-on.

--update

Actualizați configurația add-on-ului existent.

Puteți fie să definiți în ce proiect sau componentă să instalați add-on-ul (de exemplu weblate/application), fie să utilizați --all pentru a include toate componentele existente.

Pentru a instala Personalizați ieșirea gettext pentru toate componentele:

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

Vezi și

Extensii

listă_limbi

weblate list_languages <locale>

Listează limbile acceptate în marcajul MediaWiki - coduri de limbă, nume în engleză și nume localizate.

Acesta este utilizat pentru a genera <https://wiki.l10n.cz/Slovn%C3%ADk_s_n%C3%A1zvy_jazyk%C5%AF>.

listă_traducători

weblate list_translators <project|project/component>

Listează traducătorii în funcție de limba la care au contribuit pentru proiectul dat:

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

Listează numele după codul limbii în loc de numele limbii.

Puteți fie să definiți ce proiect sau componentă să utilizați (de exemplu weblate/application), fie să utilizați --all pentru a lista traducătorii din toate componentele existente.

listă_versiuni

weblate list_versions

Listează toate dependențele Weblate și versiunile acestora.

loadpo

weblate loadpo <project|project/component>

Reîncarcă traducerile de pe disc (de exemplu, în cazul în care ați făcut unele actualizări în depozitul VCS).

--force

Forțați actualizarea, chiar dacă fișierele ar trebui să fie actualizate.

--lang LANGUAGE

Limitați procesarea la o singură limbă.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

Notă

Rareori este nevoie să apelați acest lucru, Weblate va încărca automat fișierele modificate la fiecare actualizare VCS. Acest lucru este necesar în cazul în care ați modificat manual un depozit VCS subiacent Weblate sau în unele cazuri speciale în urma unei actualizări.

blocare_traducere

weblate lock_translation <project|project/component>

Împiedică continuarea traducerii unei componente.

Sugestie

Utile în cazul în care doriți să efectuați lucrări de întreținere la depozitul de bază.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

mutați_limbă

weblate move_language source target

Nou în versiunea 3.0.

Vă permite să fuzionați conținutul lingvistic. Acest lucru este util atunci când se actualizează la o nouă versiune care conține pseudonime pentru limbi necunoscute anterior care au fost create cu sufixul (generat). Aceasta mută tot conținutul din limba sursă în cea țintă.

Exemplu:

weblate move_language cze cs

După mutarea conținutului, ar trebui să verificați dacă a mai rămas ceva (acest lucru este supus condițiilor de cursă atunci când cineva actualizează între timp depozitul) și să eliminați limbajul (generat).

pushgit

weblate pushgit <project|project/component>

Împinge modificările acceptate în depozitul VCS din amonte.

--force-commit

Forțează confirmarea tuturor modificărilor în așteptare, înainte de a le împinge.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

Notă

Weblate împinge automat modificările dacă Împingeți pe comitere din Configurația componentei este activat, ceea ce este implicit.

deblocare_traducere

weblate unlock_translation <project|project/component>

Deblochează o anumită componentă, făcând-o disponibilă pentru traducere.

Sugestie

Utile în cazul în care doriți să efectuați lucrări de întreținere la depozitul de bază.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

Vezi și

lock_translation

setupgrupuri

weblate setupgroups

Configurează grupurile implicite și, opțional, atribuie toți utilizatorii grupului implicit respectiv.

--no-privs-update

Dezactivează actualizarea automată a grupurilor existente (adaugă doar grupuri noi).

--no-projects-update

Împiedică actualizările automate ale grupurilor pentru proiectele existente. Aceasta permite adăugarea de grupuri nou adăugate la proiectele existente, a se vedea Control acces proiect.

configurarelimbă

weblate setuplang

Actualizează lista de limbi definite în Weblate.

--no-update

Dezactivează actualizările automate ale limbilor existente (adaugă doar cele noi).

controaledeactualizare

weblate updatechecks <project|project/component>

Actualizează toate verificările pentru toate șirurile de caractere.

Sugestie

Utile pentru actualizările care aduc modificări majore la verificări.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

updategit

weblate updategit <project|project/component>

Preia depozitele VCS de la distanță și actualizează memoria cache internă.

Puteți fie să definiți proiectul sau componenta care trebuie actualizată (de exemplu weblate/application), fie să utilizați --all pentru a actualiza toate componentele existente.

Notă

De obicei, este mai bine să configurați cârligele din depozit pentru a declanșa Cârlige de notificare, în loc de interogarea obișnuită de către updategit.