CLI

Použití CLI (Strings)

Obsah je strojově přeložen z angličtiny s použitím Phrase Language AI.

Nástroj Phrase Strings CLI pomáhá při navigaci v API a umožňuje rychlou správu projektů a překladů z příkazového řádku namísto curl requestů.

Pokud používáte datové centrum v USA, předejte hostitele s phrase init --host https://api.us.app.phrase.com/v2. Pokud již byla konfigurace vygenerována, přidejte tento kód:

fráze:
  host: https://api.us.app.phrase.com/v2

Základní použití

Úpravou konfiguračního souboru .phrase.yml můžete řídit, jak klient odesílá a stahuje soubory.

  1. Inicializace projektu.

    Projekt spustíte spuštěním phrase init. Definuje preferovaný formát kódu jazyka, zdrojové soubory a další:

    $ phrase init
  2. Nahrát kódy jazyků.

    K nahrání kódů jazyků použijte podpříkaz push:

    $ phrase push
  3. Stáhnout kódy jazyků.

    Použijte podpříkaz pull a stáhněte si nejnovější kódy jazyků zpět do projektu:

    $ phrase pull
  4. Další povely.

    Chcete-li zobrazit seznam všech dostupných podpříkazů, spusťte phrase bez zadání podpříkazu. Chcete-li zobrazit všechny podporované možnosti pro konkrétní podpříkaz, použijte příznak --help:

    $ phrase locales list --help

Vzorový konfigurační soubor.

Kódování pravidel a uvozovek

Při předávání JSON objektů na příkazovém řádku se pravidla pro kódování a použití uvozovek mohou lišit v závislosti na použitém shellu.

Pokud používáte Windows shell, uzavřete celý řetězec JSON do uvozovek „“ a dvojité uvozovky v JSON uzavřete zpětným lomítkem \ znak. Například:

phrase locales create --project_id PROJECT123 --data "{\"name\":\"French\", \"code\":\"fr\"}" --access_token TOKEN123123

Přístup a ověřování

Přístup ke koncovým bodům API

Klient může být použit pro přístup ke všem koncovým bodům API. Například pro seznam všech projektů:

$ phrase project list --access_token ACCESS_TOKEN

Ověřování pomocí přihlašovacích údajů Phrase

Zadejte uživatelské jméno s příznakem --username a heslo bude požadováno:

$ phrase project list --username user@example.com
Heslo: *******

Pokud je pro uživatele nebo organizaci aktivováno dvoufaktorové ověření, musí být pomocí příznaku --tfa zadán platný vícefaktorový token:

$ phrase project list --username user@example.com --tfa
Heslo: *******
TFA: ********

Ověřování pomocí přístupového tokenu

Nastavení proměnných prostředí funguje na různých platformách různě. Doporučujeme uložit přístupový token do konfiguračního souboru .phrase.yml.

Přístupový token určete příznakem --access_token:

$ phrase project list --access_token ACCESS_TOKEN

nebo použijte proměnnou prostředí PHRASE_ACCESS_TOKEN pro uložení tokenu:

export PHRASE_ACCESS_TOKEN="ACCESS_TOKEN"

Pokud je aktivováno dvoufaktorové ověření, musí být platný vícefaktorový token zadán příznakem --x_phrase_app_otp:

$ phrase project list --access_token ACCESS_TOKEN --x_phrase_app_otp HESLO

Token lze poskytnout také v interaktivním režimu s příznakem --tfa:

$ phrase project list --access_token ACCESS_TOKEN --tfa
TFA: ********

Přístupový token se ve výchozím nastavení načítá z konfiguračního souboru .phrase.yml, ale chování lze přepsat pomocí zmíněných příznaků nebo proměnných env a místo toho se použije token poskytnutý pomocí příznaku nebo proměnné prostředí. Tokeny poskytnuté pomocí příznaků přepisují tokeny poskytnuté prostřednictvím proměnné prostředí.

Tlačit a táhnout

K nahrávání a stahování kódů jazyků použijte příkazy push a pull. Místo argumentů na příkazovém řádku použijte konfiguraci uloženou v konfiguračním souboru .phrase.yml v kořenové složce projektu.

Příklad konfigurace pro nahrávání a stahování kódů jazyků typické aplikace Rails:

fráze:
  access_token: "ACCESS_TOKEN"
  project_id: "PROJECT_ID"
  file_format: „yml“
  push:
    zdroje:
      - soubor: "./config/locales/<locale_name>.yml"
  pull:
    cíle:
      - soubor: "./config/locales/<locale_name>.yml"

Použijte push příkaz k nahrání kódů jazyků do projektu identifikovaných pomocí project_id odpovídajícího souboru de.yml a en.yml ve složce config/locales:

$ phrase push
Nahrávání config/locales/de.yml
Nahráno config/locales/de.yml úspěšně.
Nahrávání config/locales/en.yml
Nahráno config/locales/en.yml úspěšně.

Použijte příkaz pull a stáhněte kódy jazyků z projektu identifikovaného pomocí project_id do příslušných cest k souborům:

$ phrase pull
Stáhnout do config/locales/de.yml
Stáhnout do config/locales/en.yml

Podpora přenosového limitu

Klient podporuje přenosový limit pro stahování kódů jazyků. Po dosažení přenosového limitu klient počká, dokud přenosový limit nevyprší, a poté pokračuje ve stahování kódů jazyků. Klient zobrazí překročení přenosového limitu, stahování bude pokračovat za x sekund.

Vyčištění nahrávání

Příkaz pro vyčištění nahrávání slouží k odstranění klíčů, které se nacházejí v projektu, ale nejsou součástí nahraného souboru. Po odeslání kódů jazyků může být vyžadováno odstranění všech klíčů, které nejsou obsaženy ve výchozím kódu jazyka nebo jiném kódu jazyka:

$ phrase uploads cleanup --id <YOUR_UPLOAD_ID>

Možnosti formátu

Několik formátů, například CSV, podporuje další možnosti formátování během nahrávání. Získejte přístup k těmto možnostem pomocí --format_options:

nahrané fráze vytvořit \
--project_id PROJECT_ID \
--file ./en.csv \
--file_format csv \
--locale_mapping „{“en“:3, „de“:2}“ \
--format_options „{“key_index“:1}“ \
--access token YOUR_ACCESS_TOKEN

Proxy

Za proxy serverem zadejte nastavení proxy serveru pomocí proměnné prostředí HTTPS_PROXY:

export HTTPS_PROXY=https://user:password@host:port

Komplexní využití

Více lokalizačních souborů pro jeden projekt

Použijte jeden soubor pro každý kód jazyka v projektu. Pokud nástroje nebo rámec vynucují použití více souborů, přečtěte si informace o údržbě struktur souborů, jak nastavit projekt.

Více projektů v rámci jednoho lokalizačního projektu

Při práci na velkém lokalizačním projektu distribuujte překlady do více projektů. Nakonfigurujte CLI pro práci s více lokalizačními soubory pro jeden lokalizační projekt.

Možnosti formátu

Některé formáty souborů umožňují určit možnosti formátování pro větší kontrolu nad syntaxí souboru. V konfiguračním souboru .phrase.yml určete možnosti formátování:

fráze:
  pull:
    cíle:
    - soubor: file.xml
      parametry:
        format_options:
          convert_placeholder: pravda

  push:
    zdroje:
    - soubor: file.csv
      parametry:
        format_options:
          column_separator: „;“

Konfigurace pro projekty Android

Android nepoužívá standardní kódy jazyků ISO jako vzor souboru. Určete požadovaný vzor v souboru .phrase.yml.

Specifikujte jednotlivé kódy jazyků výslovně v souboru .phrase.yml. Tento příklad ukazuje konfiguraci souboru .phrase.yml s angličtinou jako výchozím jazykem, německým kódem jazyka a německým kódem jazyka pro rakouskou němčinu:

fráze:
  access_token: ACCESS_TOKEN
  project_id: PROJECT_ID
  file_format: xml
  pull:
    cíle:
    - soubor: ./app/src/main/res/values/strings.xml
      parametry:
        file_format: xml
        # Unikátní locale id pro angličtinu
        locale_id: LOCALE_ID
    - soubor: ./app/src/main/res/values-de/strings.xml
      parametry:
        file_format: xml
        # Unikátní locale id pro němčinu
        locale_id: LOCALE_ID
    - soubor: ./app/src/main/res/values-de-rAU/strings.xml
      parametry:
        file_format: xml
        # Unikátní locale id pro rakouštinu
        locale_id: LOCALE_ID
  push:
    zdroje:
    - soubor: ./app/src/main/res/values/strings.xml
      parametry:
        file_format: xml
        locale_id: LOCALE_ID
    - soubor: ./app/src/main/res/values-de/strings.xml
      parametry:
        file_format: xml
        locale_id: LOCALE_ID
    - soubor: ./app/src/main/res/values-de-rAU/strings.xml
      parametry:
        file_format: xml
        locale_id: LOCALE_ID
Byl pro vás tento článek užitečný?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.