Gerenciamento de tradução

Usando Arquivos de Localização (Strings)

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

Fazendo Upload de Arquivos de Localização

Ao fazer upload de um arquivo em um projeto, todos os novos recursos são extraídos desse arquivo e armazenados em um projeto. O formato do arquivo enviado não precisa ser o formato inicial configurado para o projeto. Se tags forem fornecidas para agrupar recursos, novas chaves terão essas tags aplicadas.

Alguns formatos, como Gettext, fornecem informações meta adicionais valiosas, como comentários, descrições ou informações sobre formas plurais. Essas informações são extraídas sempre que possível e são armazenadas junto com os recursos atribuídos, permitindo que todas as informações valiosas fornecidas nos arquivos de localização sejam salvas para uso futuro.

Existem vários métodos para fazer upload de arquivos:

  • Na aplicação, ao criar um novo projeto ou selecionando Fazer upload de arquivo em uma página de projeto

  • via API

  • via CLI

Opções de Upload

  • Atualizar traduções

    Por padrão, apenas novo conteúdo é extraído e quaisquer chaves existentes em um projeto de localização não são deletadas ou atualizadas; nenhum dado pode ser perdido ao fazer upload de arquivos. Se for necessário sobrescrever dados existentes, substitua os recursos do projeto pelo conteúdo do arquivo de localização selecionando a opção Atualizar traduções. Traduções existentes serão sobrescritas com o conteúdo do arquivo de localização enviado.

    Essa opção também está disponível na API.

    Nota

    Para evitar perda de dados, certifique-se de que as últimas alterações sejam baixadas do Phrase para o arquivo de localização antes de alterá-lo e enviá-lo novamente com a opção Atualizar traduções.

  • Usar Prefixo de Chave de Tradução

    Insira um identificador único (por exemplo, o caminho do arquivo) para adicionar aos nomes das chaves de tradução carregadas. Use um prefixo significativo relacionado ao projeto ou arquivo para manter os nomes das chaves organizados.

    Por exemplo, uma chave importada hello_world com o prefixo project_ resultará na chave project_hello_world.

    O prefixo da chave de tradução garante que as chaves sejam comparadas com as existentes para evitar colisões entre diferentes projetos ou arquivos.

    Esta opção também está disponível na API e na interface CLI.

  • Criar e atualizar chaves de tradução

    Adicione novas chaves e sobrescreva as existentes com o conteúdo do arquivo carregado.

  • Atualizar tradução em correspondência de origem

    Atualize as traduções de destino apenas se o texto de origem existente no idioma padrão do projeto corresponder ao texto de origem no arquivo multilíngue carregado.

  • Atualizar descrições

    Selecione esta opção se for necessário atualizar todas as descrições das chaves do arquivo carregado. Descrições vazias sobrescreverão as existentes. As descrições podem conter qualquer informação adicional para tradutores e ajudar a identificar chaves individuais no editor.

  • Ignorar upload tags

    Para manter as traduções organizadas, adicione várias tags às chaves com rótulos significativos. Selecione esta opção para evitar que novas chaves sejam automaticamente marcadas com uma tag de upload.

  • Marcar chaves de novas e atualizadas traduções

    Selecione esta opção para marcar novas chaves e chaves com traduções atualizadas automaticamente ao carregar. Isso ajudará a distinguir entre novas, atualizadas e antigas strings de tradução, garantindo que apenas as chaves relevantes sejam processadas posteriormente.

    Essa opção também está disponível na API.

  • Codificação

    Especifique a codificação (por exemplo, UTF-8) do arquivo ou deixe-a selecionada automaticamente (a codificação selecionada automaticamente pode resultar em codificação incorreta e pode ser revertida desfazendo o upload).

  • Revisão

    • Pular não verificação evita a necessidade de verificar traduções de idiomas não principais novamente ao atualizar traduções.

    • Marcar como revisado trata todas as traduções enviadas como revisadas. Esta opção está disponível quando fluxo de trabalho de revisão avançada foi ativado. Isso indica que as chaves estão prontas para serem enviadas para produção.

    • Verificar traduções mencionadas trata todas as traduções enviadas como verificadas.

Envie arquivos via interface do usuário

Para enviar arquivos em Strings, siga estas etapas:

  1. Antes do upload, certifique-se de que o arquivo esteja formatado corretamente com base em tipo.

  2. De um projeto, selecione Enviar arquivo no menu Mais.

    A página Enviar arquivo é aberta.

  3. Clique em Escolher arquivo, selecione um arquivo de um diretório.

    O arquivo selecionado é adicionado ao campo Arquivo.

  4. Selecione um Formato para o arquivo.

    Formatos sugeridos são apresentados primeiro com base no tipo de arquivo.

  5. Selecione um idioma para o conteúdo do arquivo na lista suspensa.

    Se esta informação não estiver no próprio arquivo, crie um novo idioma para o conteúdo ou use um existente.

  6. Opcionalmente, forneça tags a serem atribuídas às novas chaves e quaisquer outras opções.

  7. Clique em Gravar.

    O conteúdo é importado e convertido em chaves.

Resumo do Upload

  • Upload falhou

    Se um arquivo não puder ser processado corretamente, detalhes do erro são fornecidos para ajudar a mitigar o erro.

  • Upload bem-sucedido

    Após o processamento bem-sucedido de um arquivo de tradução, uma página de resumo é apresentada, dando uma visão geral do upload com botões que linkam para os próximos passos. Clique na tag de upload para abrir o arquivo no editor.

  • Removendo chaves

    Para evitar a exclusão acidental de chaves ao remover chaves de um arquivo de localização e enviá-lo novamente, essas chaves não são excluídas automaticamente.

    Para remover essas chaves, siga estes passos:

    1. Faça o upload do arquivo.

    2. Clique em Excluir e selecione Excluir chaves não mencionadas.

    3. Confirme a seleção.

    Chaves não mencionadas são chaves que não estão incluídas no upload atual, mas ainda existem no projeto. Ao excluí-las, todas as chaves e traduções associadas que não foram incluídas no arquivo enviado são removidas do projeto.

  • Desfazer um upload

    Cada upload aciona várias ações e pode modificar muitos dados dentro dos projetos, e não é possível retratar um upload.

    Para remover chaves que foram (incorretamente) introduzidas por um arquivo enviado, siga estes passos:

    1. Na página de resumo do upload afetado, clique em Excluir e selecione Excluir chaves criadas.

    2. Confirme a seleção.

    Todas as chaves e traduções associadas criadas por esse upload são removidas. As traduções para chaves que existiam antes do upload não serão removidas. Para remover traduções individuais, use o histórico de versões para cada tradução.

Fazer Upload do Arquivo

De qualquer página de projeto, selecione Uploads no menu Mais para acessar o arquivo de upload.

O arquivo de upload lista todos os uploads históricos em todos os possíveis estados. Clique no dropdown Todas as situações para filtrar uploads por estado (Sucesso, Falhou e/ou Em progresso). Para localizar um upload específico, use a caixa de pesquisa na parte superior para buscar pelo nome.

Acesse resumos detalhados de uploads de recursos afetados clicando em um upload listado. Todos os uploads bem-sucedidos também são apresentados no fluxo de atividade de um projeto.

Baixando Arquivos de Localização

Os arquivos de idioma podem ser exportados de um projeto a qualquer momento e para qualquer formato de arquivo suportado.

Os arquivos podem ser exportados do aplicativo, via API, ou CLI.

Os arquivos podem ser baixados da aba Idiomas de qualquer projeto selecionando-os e clicando em Baixar (vários arquivos) ou no botão Mais opções Open More Menu/Baixar de um idioma.

Opções de Download

As opções de download são apresentadas ao baixar um arquivo na janela Download com abas para Geral, Avançado e Codificação.

Selecionar diferentes formatos de arquivo apresenta opções diferentes. Para mais detalhes, consulte o artigo relevante sobre o formato de arquivo específico.

Opcionalmente, use o campo Nome do arquivo na aba Geral para especificar um nome de arquivo de exportação personalizado, ou deixe em branco para gerar um nome definido pelo sistema.

  • Remover prefixo da chave de tradução

    Se um prefixo de chave de tradução foi adicionado ao fazer upload do arquivo, selecione esta opção na aba Avançado para remover o prefixo dos nomes das chaves de tradução exportadas:

    1. Digite o prefixo para baixar todas as chaves e remover o prefixo especificado onde for possível.

      Importante

      Isso pode criar nomes de chaves duplicados se outras chaves compartilharem o mesmo nome após a remoção do prefixo.

    2. Se necessário, selecione Usar prefixo de chave de tradução como Filtro para baixar apenas as chaves de tradução que contêm o prefixo especificado e remover o prefixo do arquivo baixado.

    Essa opção também está disponível na API e na interface CLI.

Casos de uso

Manutenção de Estruturas de Arquivo

Por padrão, recursos traduzíveis são armazenados como chaves e valores em vez de manter a estrutura de arquivo original. Isso permite formatos de arquivo intercambiáveis sem estar preso a um formato, além de agrupamento flexível usando tags.

Alguns frameworks ou configurações exigem múltiplos arquivos de origem, também exigindo configuração adicional.

Mantendo arquivos separados

Em geral, mantenha todas as traduções para cada idioma em um único arquivo. Isso torna os downloads de recursos mais rápidos e robustos. As traduções são mantidas organizadas em projetos, portanto, arquivos pequenos separados não são necessários.

Se os arquivos de localização precisarem ser mantidos em arquivos separados, um fluxo de trabalho baseado em arquivos pode ser usado, etiquetando as chaves ao fazer upload e usando as tags como referência ao baixar as chaves traduzidas de volta para os arquivos originais. As chaves podem ter múltiplas tags e ser incluídas em vários arquivos, garantindo reutilização e consistência. Um fluxo de trabalho baseado em tags é flexível e permite a reorganização dos recursos de tradução sem precisar ser enviado para projetos.

Dê nomes únicos às chaves em todos os arquivos para garantir um fluxo de trabalho suave. Em uma abordagem baseada em chave-valor, uma chave deve ter os mesmos valores atribuídos a ela em todos os contextos. Alguns frameworks permitem o uso de chaves não únicas em vários arquivos. Alguns formatos, como Symfony, suportam domínios de mensagens. Esses domínios são detectados pelo nome do arquivo. As chaves não são automaticamente agrupadas por domínios baseados em nomes de arquivos, mas isso pode ser resolvido usando um prefixo de domínio único para chaves dentro do arquivo.

Exemplo de configuração CLI

Se estiver trabalhando com CLI ou conectando um projeto a um repositório (por exemplo, GitHub, GitLab ou Bitbucket), configure um arquivo de configuração para gerenciar uploads e downloads.

Para o exemplo, um projeto possui vários arquivos de tradução nomeados semanticamente para o local de origem. Por exemplo: accounts.en.yml, emails.en.yml etc. Esses nomes semânticos são gerenciados por meio de tags.

Configure o .phrase.yml para refletir a organização dos arquivos no projeto de localização e vincule-os às tags no projeto Strings incluindo o marcador de posição da tag no caminho do arquivo:

phrase:
  access_token: "3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793"
  project_id: "23485c9c5dfb15d85b32d9c5f3d2hl54"
  file_format: yml
  push:
    sources:
      - file: ./path/to/locales/<tag>.en.yml
        params:
          locale_id: "abcd1234cdef1234abcd1234cdef1234"
  pull:
    targets:
      # contas
      - file: ./path/to/locales/accounts.<locale_name>.yml
        params:
          tags: contas
      # e-mails
      - file: ./path/to/locales/emails.<locale_name>.yml
        params:
          tags: e-mails

Importante

Embora suportado, por razões de segurança, não é recomendado armazenar tokens de acesso dentro do arquivo.

Definir uma variável de ambiente FRASE_TOKEN_DE_ACESSO é mais seguro.

Tags de parâmetro também podem ser usadas na seção de push em vez de usar o marcador de posição <tag>.

A configuração cria chaves com tags com base no arquivo de onde vieram ao executar um push ou acionar a sincronização de um repositório. Ao executar pull ou acionar a exportação para o repositório, as chaves são agrupadas em arquivos com base em suas tags.

Localizando um Projeto para Diferentes Regiões, Clientes ou Audiências

Um produto, site ou aplicativo é traduzido para várias línguas diferentes, mas em alguns casos, a localização não é apenas o idioma escolhido, mas diferentes versões dentro de um mesmo idioma.

Uma distinção adicional é necessária se:

  • Um produto tem uma marca diferente em regiões onde a mesma língua é falada.

  • Um produto é usado por diferentes clientes que desejam usar uma solução de marca branca.

  • Variantes de idioma, como simples, formal ou informal, são necessárias.

Localizando um produto estático

Se um produto está totalmente desenvolvido e raramente atualizado, uma versão separada do produto pode existir dentro de um projeto.

  • Se um único resultado ou um projeto de curto prazo:

    Crie um ramo, trabalhe exclusivamente nesse ramo durante a duração do projeto e exclua o ramo quando concluído.

  • Se um projeto de longo prazo:

    Mantenha um duplicado do projeto existente. Isso permite o convite e trabalho com clientes na mesma organização, fornecendo apenas acesso ao(s) projeto(s) deles, mantendo outros projetos ocultos para eles.

Localizando um projeto com atualizações contínuas

Se um produto é constantemente atualizado com novo conteúdo (chaves), aplicar essas atualizações a múltiplos projetos e mantê-los sincronizados é difícil. Use idiomas dedicados dentro de um projeto para mantê-los.

Códigos de idioma seguindo o padrão ISO (por exemplo, en-US) não precisam ser únicos, então muitas versões do mesmo idioma podem ser criadas dentro de um projeto. Distinguir entre regiões, clientes ou públicos usando um nome de idioma único.

Quando configurado, qualquer nova chave introduzida no local padrão apareceria como não traduzida nos outros idiomas e seria localizada de acordo. Se estiver trabalhando com um cliente e seus próprios tradutores, atribua-os especificamente para que possam editar apenas suas versões de idioma, atualizando o acesso ao idioma em seu perfil de usuário ou na gestão de usuários do projeto.

Configure processos de localização paralelos com trabalhos e fluxos de revisão dentro do mesmo projeto. Essa flexibilidade também se estende ao upload e download de arquivos de idioma ou processos automatizados via API.

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.