CLI

Usando a CLI (Strings)

O conteúdo de toda a Central de Ajuda é traduzido automaticamente de inglês pelo Phrase Language AI.

A ferramenta CLI Phrase Strings ajuda a navegar na API para gerenciar projetos e traduções rapidamente a partir da linha de comando, em vez de solicitações de curl.

Se estiver usando o data center dos EUA, passe o host com a frase init --host https://api.us.app.phrase.com/v2. Se a configuração já tiver sido gerada, adicione este código:

frase:
  host: https://api.us.app.phrase.com/v2

Utilização Básica

Controle como o cliente envia e extrai arquivos editando o arquivo de configuração .phrase.yml.

  1. Inicializar um projeto.

    Inicialize o projeto executando a frase init. Isso define o formato de arquivo de localidade preferencial, arquivos de origem e muito mais:

    $ frase init
  2. Carregue arquivos de localidade.

    Use o subcomando push para carregar arquivos de localidade:

    $ frase push
  3. Baixar arquivos de localidade.

    Use o subcomando pull para baixar os arquivos de localidade mais recentes de volta para um projeto:

    $ frase puxar
  4. Mais subcomandos.

    Para ver uma lista de todos os subcomandos disponíveis, execute a frase sem especificar um subcomando. Para ver todas as opções com suporte para um subcomando específico, use o sinalizador --help:

    $ phrase locales list --help

Arquivo de configuração de exemplo.

Escapando do uso de regras e cotações

Ao passar objetos JSON na linha de comando, o uso de regras e aspas de escape pode variar de acordo com o shell usado.

Se estiver usando um shell do Windows, coloque toda a cadeia de caracteres JSON entre aspas duplas "" e escape aspas duplas dentro do JSON usando um caractere \ de barra invertida. Por exemplo:

localidades da frase criam --project_id PROJECT123 --data "{\"name\":\"French\", \"code\":\"fr\"}" --access_token TOKEN123123

Acesso e autenticação

Acessando pontos de extremidade da API

O cliente pode ser usado para acessar todos os pontos de extremidade da API. Por exemplo, para listar todos os projetos:

$ frase lista de projetos --access_token ACCESS_TOKEN

Autenticação usando credenciais de frase

Especifique o nome de usuário com o sinalizador --username e a senha será solicitada:

$ frase lista de projetos --nome de usuário user@example.com
Senha:********

Se a autenticação de dois fatores estiver ativada para o usuário ou organização, um token multifator válido deverá ser fornecido por meio do sinalizador --tfa :

$ frase lista de projetos --nome de usuário user@example.com --tfa
Senha:********
TFA: ********

Autenticação usando token de acesso

A configuração de variáveis de ambiente funciona de forma diferente em diferentes plataformas. Recomenda-se armazenar o token de acesso no arquivo de configuração .phrase.yml .

Use o sinalizador --access_token para especificar seu token de acesso:

$ frase lista de projetos --access_token ACCESS_TOKEN

ou use a variável de ambiente PHRASE_ACCESS_TOKEN para armazenar seu token:

export PHRASE_ACCESS_TOKEN="ACCESS_TOKEN"

Se a autenticação de dois fatores estiver ativada, um token multifator válido deverá ser fornecido por meio do sinalizador --x_phrase_app_otp :

$ frase lista de projetos --access_token ACCESS_TOKEN --x_phrase_app_otp SENHA

O token também pode ser fornecido no modo interativo com o sinalizador --tfa :

$ frase lista de projetos --access_token ACCESS_TOKEN --tfa
TFA: ********

O token de acesso é lido do arquivo de configuração .phrase.yml por padrão, mas o comportamento pode ser substituído usando os sinalizadores mencionados ou variáveis env e o token fornecido por meio do sinalizador ou da variável de ambiente é usado em vez disso. Os tokens fornecidos por meio de sinalizadores substituem os tokens fornecidos por meio da variável de ambiente.

Empurre e puxe

Use os comandos push e pull para carregar e baixar arquivos de localidade. Em vez de argumentos de linha de comando, o push e pull dependem da configuração armazenada no arquivo de configuração .phrase.yml na pasta raiz do projeto.

Se o push tiver a opção update_translations definida como true, o push substituirá as traduções. Pull sempre substitui traduções no arquivo local.

Exemplo de configuração para carregar e baixar arquivos de localidade de um aplicativo Rails típico:

frase:
  access_token: "ACCESS_TOKEN"
  project_id: "PROJECT_ID"
  file_format: "yml"
  push:
    Fontes:
      - Arquivo: "./config/locales/<locale_name>.yml"
  pull:
    Alvos:
      - Arquivo: "./config/locales/<locale_name>.yml"

Use o comando push para carregar arquivos de localidade para o projeto identificado por project_id que correspondem ao arquivo de.yml e en.yml na pasta config/locales. Se houver novas chaves, elas serão adicionadas ao arquivo de localização:

$ frase push
Carregando config/locales/de.yml
Config/locales/de.yml carregado com êxito.
Carregando config/locales/en.yml
Config/locales/en.yml carregados com êxito.

Use o comando pull para baixar arquivos de localidade do projeto identificado por project_id para seus respectivos caminhos de arquivo. Se houver novas chaves, elas serão adicionadas ao projeto:

$ frase puxar
Baixado de to config/locales/de.yml
Baixado en to config/locales/en.yml

Suporte a limite de taxa

O cliente oferece suporte ao limite de taxa para downloads de localidade. Quando o limite de taxa é atingido, o cliente aguarda até que o limite de taxa expire e continua baixando localidades depois. O cliente exibe limite de taxa excedido, o download será retomado em x segundos.

Carregar limpeza

O comando de limpeza de carregamentos é fornecido para excluir chaves encontradas no projeto, mas que não estão contidas no arquivo carregado. Depois de enviar arquivos de localidade, a exclusão de todas as chaves que não estão contidas em uma localidade padrão ou em alguma outra localidade pode ser necessária:

$ frase uploads limpeza --id <YOUR_UPLOAD_ID>

Opções de formato

Vários formatos, como CSV, oferecem suporte a opções de formato adicionais durante o upload. Acesse essas opções prefixando as opções com --format_options:

uploads de frases criar \
--project_id PROJECT_ID \
--file ./en.csv \
--file_format csv \
--locale_mapping ‘{“en”:3, “de”:2}’ \
--format_options ‘{“key_index”:1}’ \
--token de acesso YOUR_ACCESS_TOKEN

Procuração

Se estiver atrás de um proxy, especifique as configurações de proxy usando a variável de ambiente HTTPS_PROXY :

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

Uso complexo

Vários arquivos de localização para um projeto

Use um arquivo para cada localidade em um projeto. Se as ferramentas ou a estrutura forçarem o uso de vários arquivos, consulte Mantendo estruturas de arquivos para obter detalhes sobre como configurar o projeto.

Vários projetos para um projeto de localização

Ao trabalhar em um grande projeto de localização, distribua traduções em vários projetos. Configure a CLI para trabalhar com vários arquivos de localização para um projeto de localização.

Opções de formato

Alguns formatos de arquivo permitem especificar opções de formato para maior controle sobre a sintaxe do arquivo. Especifique as opções de formato no arquivo de configuração do .phrase.yml ::

frase:
  pull:
    Alvos:
    - arquivo: file.xml
      params:
        format_options:
          convert_placeholder: verdadeiro

  push:
    Fontes:
    - arquivo: file.csv
      params:
        format_options:
          column_separator: ";"

Configuração para projetos Android

O Android não usa os códigos de idioma ISO padrão como padrão de arquivo. Especifique o padrão necessário em .phrase.yml.

Especifique cada localidade explicitamente no arquivo .phrase.yml . Este exemplo mostra uma configuração de .phrase.yml com inglês como idioma padrão, uma localidade alemão e uma localidade de região alemã para alemão austríaco:

frase:
  access_token: ACCESS_TOKEN
  project_id: PROJECT_ID
  file_format: xml
  pull:
    Alvos:
    - arquivo: ./app/src/main/res/values/strings.xml
      params:
        file_format: xml
        # ID de localidade exclusivo para inglês
        locale_id: LOCALE_ID
    - arquivo: ./app/src/main/res/values-de/strings.xml
      params:
        file_format: xml
        # ID de localidade exclusivo para alemão
        locale_id: LOCALE_ID
    - file: ./app/src/main/res/values-de-rAU/strings.xml
      params:
        file_format: xml
        # ID de localidade exclusivo para austríaco
        locale_id: LOCALE_ID
  push:
    Fontes:
    - arquivo: ./app/src/main/res/values/strings.xml
      params:
        file_format: xml
        locale_id: LOCALE_ID
    - arquivo: ./app/src/main/res/values-de/strings.xml
      params:
        file_format: xml
        locale_id: LOCALE_ID
    - file: ./app/src/main/res/values-de-rAU/strings.xml
      params:
        file_format: xml
        locale_id: LOCALE_ID
Esse artigo foi útil?

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.