Ao fazer o upload de um arquivo para um projeto, todos os novos recursos são extraídos desse arquivo e armazenados em um projeto. O formato do arquivo com upload feito não precisa ser o formato inicial configurado para o projeto. Se códigos forem fornecidos para agrupar recursos, novas chaves terão esses códigos aplicados.
Alguns formatos, como o Gettext, fornecem informações metadados valiosas adicionais, como comentários, descrições ou informações sobre formas plurais. Essas informações são extraídas quando e quando possível e armazenadas junto com os recursos atribuídos, permitindo que todas as informações valiosas fornecidas em arquivos de localização sejam salvas para uso posterior.
Existem vários métodos de fazer upload de arquivos:
-
No aplicativo, ao criar um novo projeto ou selecionando arquivo de upload em uma página de projeto
-
por API
-
por CLI
-
Por padrão, apenas novos conteúdos são extraídos e nenhuma chave existente em um projeto de localização é excluída ou atualizada; nenhum dado pode ser perdido ao fazer upload de arquivos. Se for necessário substituir os dados existentes, substitua os recursos do projeto por conteúdo do arquivo de localização selecionando a opção
. As traduções existentes serão sobrescritas com o conteúdo do arquivo de localização enviado por upload.Esta opção também está disponível na API.
Nota
Para evitar perda de dados, certifique-se de baixar as alterações mais recentes do seu arquivo de localização do Phrase antes de alterá-lo e enviá-lo novamente com a opção
. -
Insira um identificador exclusivo (p.ex., caminho do arquivo) para pré-pendir os nomes das chaves de tradução com upload feito. Use um prefixo significativo relacionado ao projeto ou arquivo para manter nomes de chaves organizados.
Por exemplo, uma chave importada
hello_world
com o prefixoproject_
resultará na chaveproject_hello_world
.O prefixo da chave de tradução garante que as chaves sejam alinhadas com as existentes para evitar colisões entre diferentes projetos ou arquivos.
Esta opção também está disponível na interface da API e CLI.
-
Criar novo e atualizar chaves de tradução existentes com o conteúdo do arquivo enviado por upload.
-
Atualizar traduções somente se as traduções do texto original corresponderem ao arquivo multilíngue enviado por upload.
-
Selecione esta opção se for necessário atualizar todas as descrições das chaves do arquivo enviado por upload. Descrições em branco substituirão as existentes. As descrições podem conter informações adicionais para os tradutores e ajudar a identificar chaves individuais no editor.
-
upload
Para manter as traduções organizadas, adicione vários códigos às chaves com etiquetas significativas. Selecione esta opção para evitar que novas chaves sejam marcadas automaticamente com um código de upload.
-
Selecione esta opção para marcar novas chaves e chaves com traduções atualizadas automaticamente ao fazer upload. Isso ajudará a distinguir entre strings de tradução novas, atualizadas e antigas, garantindo que apenas as chaves relevantes sejam processadas adicionalmente.
Esta opção também está disponível na API.
-
Especifique a codificação (p.ex. UTF-8) do arquivo ou faça a seleção automaticamente (uma codificação selecionada automaticamente pode resultar em codificação incorreta e pode ser rolada de volta desfazendo o upload).
-
necessidade de verificar novamente as traduções do idioma não principal ao atualizar as traduções.
Marcar traduções como revisadas trata todas as traduções com upload feito como revisadas. Esta opção está disponível quando o fluxo de trabalho de revisão avançado está ativado. Isso permite a marcação de chaves como estão prontas para serem empurradas para produção.
Para fazer upload de arquivos no Strings, siga estes passos:
-
Antes de fazer upload, certifique-se de que o arquivo está com a formatação correta com base no tipo.
-
Em um projeto, selecione Upload de arquivo no menu .
A página
é aberta. -
Clique em Choose file e selecione um arquivo de um diretório.
O arquivo selecionado é adicionado ao campo
. -
Selecione um
para o arquivo.Os formatos sugeridos são apresentados primeiro com base no tipo de arquivo.
-
Selecione um idioma para o conteúdo do arquivo a partir da lista suspensa.
Se essas informações não estiverem no próprio arquivo, crie um novo idioma para o conteúdo ou use um existente.
-
Opcionalmente, forneça códigos a serem atribuídos às novas chaves e quaisquer outras opções.
-
Clique em Gravar.
O conteúdo é importado e convertido em chave.
-
Upload não realizado
Se um arquivo não pôde ser processado corretamente, os detalhes do erro são fornecidos para ajudar a mitigar o erro.
-
Upload não realizado
Após o processamento bem-sucedido de um arquivo de tradução, é apresentada uma página de resumo fornecendo uma visão geral do upload com botões que vinculam às etapas seguintes. Clique no código 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á-las novamente, essas chaves não são excluídas automaticamente.
Para remover essas chaves, siga estes passos:
Todas as chaves e traduções associadas que não foram incluídas no arquivo de upload são removidas do projeto.
-
Undo um upload
Cada upload aciona várias ações e pode modificar muitos dados em projetos, e não é possível retrair um upload.
Para remover chaves que foram (incorreta) introduzidas por um arquivo com upload, execute estas etapas:
Todas as chaves e traduções associadas criadas por esse upload foram removidas. As traduções de chaves que existiam antes do upload não serão removidas. Para remover traduções individuais, use o histórico de versão de cada tradução.
Em qualquer página de projeto, selecione
no menu para acessar o arquivo de upload.O arquivo de upload lista todos os uploads históricos em todos os estados possíveis. Clique na área suspenso
para filtrar uploads por estado ( , e/ou ). Para localizar um upload específico, use a caixa de pesquisa na parte superior para pesquisar por nome.Acesse resumos de upload detalhados dos recursos afetados clicando em um upload listado. Todos os uploads bem-sucedidos também são apresentados no fluxo de atividade de um projeto.
Arquivos de idioma podem ser baixados de um projeto a qualquer momento e em qualquer formato de arquivo aceito.
Os arquivos podem ser baixados do aplicativo, por meio da API ou do CLI.
Você pode baixar arquivos na aba Baixar (vários arquivos) ou no botão Mais opções /Baixar de um idioma.
As opções de download são apresentadas ao fazer download de um arquivo na janela
com abas para , e .Selecionar diferentes formato de arquivo específico.
apresenta diferentes opções. Para obter mais detalhes, consulte o artigo relevante sobre o-
Se um prefixo da chave de tradução for adicionado no upload do arquivo, selecione esta opção na aba
para remover o prefixo dos nomes das chaves de tradução exportadas:-
Digite o prefixo para baixar todas as chaves e remova o prefixo especificado quando possível.
Importante
Isso pode criar nomes de chaves duplicadas se outras chaves compartilharem o mesmo nome após a remoção do prefixo.
-
Se necessário, selecione
para baixar apenas as chaves de tradução que contêm o prefixo especificado e remover o prefixo do arquivo baixado.
Esta opção também está disponível na API e na interface CLI.
-
Por padrão, os recursos traduzíveis são armazenados como chaves e valores em vez de manter a estrutura do arquivo original. Isso permite formatos de arquivo intercanviáveis sem estar bloqueados em um formato, bem como agrupamento flexível usando códigos.
Algumas frameworks ou configurações precisam de vários arquivos originais que exigem também uma configuração adicional.
Manter arquivos separados
Em geral, mantenha todas as traduções para cada idioma em um arquivo. Isso faz com que os downloads de recursos sejam mais rápidos e mais robustos. As traduções são mantidas organizadas em projetos. Portanto, não são necessários arquivos pequenos separados.
Se os arquivos de localização precisarem ser mantidos em arquivos separados, um fluxo de trabalho baseado em arquivos pode ser usado marcando as chaves ao fazer upload e usando os códigos como referência ao fazer o download das chaves traduzidas de volta para os arquivos originais. As chaves podem transportar vários códigos e ser incluídas em vários arquivos, garantindo reuso e consistência. Um fluxo de trabalho baseado em código é flexível e permite a reorganização de recursos de tradução sem ter que fazer upload de projetos.
Dê nomes exclusivos às chaves em todos os arquivos para garantir um fluxo de trabalho suave. Em uma abordagem baseada em valores-chave, uma chave deve ter os mesmos valores atribuídos a ela em todos os contextos. Algumas frameworks permitem o uso de chaves não exclusivas em vários arquivos. Alguns formatos, como o Symfony, aceitam temas de mensagem. Estes temas são detectados pelo nome do arquivo. As chaves não são escopadas automaticamente por temas com base em nome de arquivo, mas isso pode ser resolvido usando um prefixo de domínio exclusivo para chaves no arquivo.
Exemplo de configuração de CLI
Se trabalhar com CLI ou conectar um projeto a um repositório (por exemplo, GitHub, GitLab ou Bitbucket), configure um arquivo de configuração para gerenciar uploads e downloads.
Por exemplo, um projeto tem vários arquivos de tradução com nome semântico para o local de origem. Por exemplo: accounts.en.yml
, emails.en.yml
, etc. Esses nomes semânticos são gerenciados por meio de códigos.
Configure o .phrase.yml
para refletir a organização dos arquivos no projeto de localização e vincule-os aos códigos no projeto do Strings, incluindo o marcador de posição do código no caminho do arquivo:
phrase: access_token: "3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793" project_id: "23485c9c5dfb15d85b32d9c5f3d2hl54" file_format: yml push: sources: - arquivo: ./path/to/locales/<tag>.en.yml params: locale_id: "abcd1234cdef1234abcd1234cdef1234" pull: targets: # contas - arquivo: ./path/to/locales/accounts.<locale_name>.yml params: códigos: contas # e-mails - arquivo: ./path/to/locales/emails.<locale_name>.yml params: códigos: e-mails
Importante
Embora aceito, por motivos de segurança, não é recomendável armazenar tokens de acesso no arquivo.
A definição de uma variável do ambiente PHRASE_ACCESS_TOKEN
é mais segura.
Códigos de parâmetros também podem ser usados na seção push em vez de usar o marcador de posição <tag>
.
A configuração cria chaves com códigos com base no arquivo de que eles vieram ao executar uma sincronização push ou acionamento a partir de um repositório. Ao executar o pull ou acionar a exportação ao repositório, ele agrupa chaves em arquivos com base nos códigos.
Um produto, site ou aplicativo é traduzido para vários idiomas diferentes, mas em alguns casos, a localização não é apenas o idioma escolhido, mas diferentes versões em um idioma.
É necessária uma distinção adicional se:
-
Um produto tem uma marca diferente em regiões onde o mesmo idioma é falado.
-
Um produto é usado por diferentes clientes que querem usar uma solução de etiqueta branca.
-
São necessárias variantes de idioma como simples, formais ou informais.
Localizando um produto estático
Se um produto estiver totalmente desenvolvido e raramente atualizado, uma versão separada do produto poderá existir em um projeto.
-
Se for um resultado único ou um projeto de curto prazo:
Crie um ramo, trabalhe exclusivamente nesse ramo durante o período de duração do projeto e remova o ramo quando estiver concluído.
-
Se um projeto de longo prazo:
Manter um duplicado do projeto existente. Isso permite que os clientes convidem e trabalhem com eles na mesma empresa, apenas fornecendo acesso ao seu(s) projeto(s), deixando outros projetos ocultos para eles.
Localizando um projeto com atualizações contínuas
Se um produto for constantemente atualizado com novos conteúdos (chave), será difícil aplicar essas atualizações a vários projetos e sincronizá-los. Use idiomas específicos em um projeto para mantê-los.
Os códigos do idioma após a norma ISO (por exemplo, en-US) não precisam ser exclusivos, pois várias versões do mesmo idioma podem ser criadas em um projeto. Distinguir entre regiões, clientes ou públicos-alvo usando um nome exclusivo do idioma.
Ao configurar, qualquer chave recentemente introduzida no local padrão aparecerá como não traduzida nos outros idiomas e será localizada de acordo. Se trabalhar com um cliente e com seu(s) próprio(s) tradutor(s), especifique se ele(a) só poderá editar as versões do idioma atualizando o acesso ao idioma em seu perfil de usuário ou no gerenciamento de usuários do projeto.
Configure processos de localização paralelos com trabalhos e fluxos de trabalho de revisão no mesmo projeto. Esta flexibilidade também se estende ao upload e download de arquivos de idioma ou processos automatizados por meio da API.