CLI
@ownlate/cli šalje vaše izvorne tekstove gore i vraća prevode dole. Format fajla je isti onaj koji čita Git integracija, pa repozitorijum podešen za jedno radi i sa drugim.
Instalacija
heading.anchorLabelnpm install -g @ownlate/cliIli pokretanje bez instalacije:
npx @ownlate/cli <komanda>Postoji i kontejnerska slika:
docker run --rm -it \ -v "$HOME/.ownlate:/root/.ownlate" \ -v "$(pwd):/app" -w /app \ ownlate/ownlate-cli <komanda>Brzi početak
heading.anchorLabelownlate login # sačuvaj API ključownlate init # izaberi projekat, upiši konfiguracijuownlate push # otpremi izvorne tekstoveownlate pull # preuzmi prevodeKonfiguracija
heading.anchorLabelCLI traži ownlate.yml u tekućem direktorijumu.
project_id: f4092389-de6a-49ee-af84-46d59ba618f0
files: - source: locales/en.json translation: locales/{lang}.jsonSve dostupne opcije:
project_id: <uuid>
api_token_env: OWNLATE_API_TOKEN
files: - source: locales/en.json translation: locales/{lang}.json flat: false languages_mapping: zh-Hans: zh_CN zh-Hant: zh_TW| Ključ | Značenje |
|---|---|
project_id | Sa kojim projektom se sinhronizuje |
api_token_env | Ime promenljive okruženja sa tokenom, umesto ~/.ownlate |
files[].source | Izvorni fajl koji se otprema |
files[].translation | Gde se upisuju prevedeni fajlovi; mora sadržati {lang} |
files[].flat | Zadrži ugnežđene ključeve kakvi jesu umesto ravnanja |
files[].languages_mapping | Mapiraj kod jezika na drugačiji deo imena fajla |
Bez ownlate.yml, CLI koristi konfiguraciju projekta koju je ownlate init upisao u ~/.ownlate.
Autentifikacija
heading.anchorLabelownlate login # traži API ključ, proverava ga, čuva ~/.ownlateownlate logout # briše ~/.ownlateZa pipeline umesto toga uperite api_token_env na promenljivu okruženja:
export OWNLATE_API_TOKEN=own_xxxxxxxxxxxxownlate pushKljučeve pravite pod Profil → API ključevi — vidite REST API.
Komande
heading.anchorLabelownlate init
heading.anchorLabelPreuzima vaše projekte, daje da izaberete jedan i upisuje konfiguraciju za tekući direktorijum.
ownlate push
heading.anchorLabelOtprema svaki files[].source i po njemu pravi ili ažurira segmente.
| Zastavica | Opis |
|---|---|
-w, --watch | Prati izvorne fajlove i šalje pri svakom čuvanju |
-n, --dry-run | Prikaži šta bi bilo poslato, bez otpremanja |
ownlate pull
heading.anchorLabelPreuzima prevedene fajlove na putanje iz files[].translation.
| Zastavica | Opis |
|---|---|
-l, --lang <kod> | Preuzmi samo jedan jezik |
ownlate status
heading.anchorLabelIspisuje tabelu napretka za svaki ciljni jezik.
Project My App f4092389-…
Lang ████████████░░░░░░░░ % Total Untrans Draft Transl Approved ──────────────────────────────────────────────────────────────────────────── fr ████████████████████ 100% 484 0 0 0 484 de ██████████░░░░░░░░░░ 51% 484 237 12 89 146 es ████░░░░░░░░░░░░░░░░ 20% 484 387 4 51 42 ──────────────────────────────────────────────────────────────────────────── 3 langs 57% 1452 624 16 140 672| Zastavica | Opis |
|---|---|
--min <procenat> | Izađi sa kodom 1 ako je bilo koji jezik ispod praga — kapija za CI |
ownlate translate
heading.anchorLabelPredprevodi neprevedene segmente. Posao ide u pozadini na serveru; napredak posle proverite sa ownlate status.
| Zastavica | Opis |
|---|---|
-l, --lang <kod> | Samo jedan jezik |
-p, --provider <tip> | tm za memoriju prevoda (podrazumevano), mt za ugrađeni AI motor |
-s, --score <n> | Najmanja ocena podudaranja iz memorije, 0–100 (podrazumevano 100, važi za tm) |
Šta koji izvor radi sa statusom segmenta, vidite u Memorija prevoda.
ownlate project list i ownlate project create
heading.anchorLabelownlate project listownlate project create "Mobile App" --source en --langs fr,de,es| Zastavica | Opis |
|---|---|
-s, --source <jezik> | Kod izvornog jezika |
-l, --langs <kodovi> | Ciljni jezici razdvojeni zarezom |
U pipeline-u
heading.anchorLabel- name: Push source strings run: npx @ownlate/cli push env: OWNLATE_API_TOKEN: ${{ secrets.OWNLATE_API_TOKEN }}
- name: Fail if a language is behind run: npx @ownlate/cli status --min 90 env: OWNLATE_API_TOKEN: ${{ secrets.OWNLATE_API_TOKEN }}Šaljite pri svakom spajanju u glavnu granu, a preuzimajte po rasporedu ili pred izdanje — tako izvor istine ostaje u Ownlate-u, a izgradnja je ponovljiva iz repozitorijuma.