Conversor de Localizable.strings para .xcstrings

Solte seus arquivos Localizable.strings (um por idioma): a ferramenta os junta em um único String Catalog .xcstrings para download. Grátis, sem cadastro, e seus arquivos nunca saem do navegador.

Converta seus arquivos .strings

Ou cole o conteúdo de um arquivo

Convertido no seu navegador: nenhum arquivo é enviado.

Edite o catálogo sem voltar ao Xcode

O LocalePilot é um app desktop que abre seus arquivos .xcstrings, verifica placeholders (%@, %1$@, %d), traduz com IA local se você quiser e regrava o arquivo no estilo do Xcode: um catálogo inalterado sai idêntico byte a byte. Ele está em fase final para macOS: deixe seu e-mail para saber do lançamento.

O que o conversor faz

  • Lê seus arquivos .strings (UTF-8 ou UTF-16, comentários /* … */ e //, escapes \n, \" e \U00e9).
  • Junta todos os idiomas de uma tabela em um único catálogo (Localizable.xcstrings, InfoPlist.xcstrings…): uma entrada por chave, com a tradução de cada idioma no estado translated. As tabelas nunca são misturadas.
  • Usa o comentário acima de uma chave como comentário da entrada.
  • Sinaliza chaves ausentes em um idioma, chaves definidas duas vezes e linhas ilegíveis.

O arquivo é gravado no estilo do Xcode (indentação de 2 espaços, um espaço antes de cada dois-pontos) para que o seu diff no Git continue legível.

Como converter Localizable.strings para xcstrings

  1. Reúna o arquivo Localizable.strings de cada pasta xx.lproj.
  2. Solte a pasta do projeto ou os arquivos um a um e confira o idioma de cada arquivo.
  3. Escolha o idioma de origem, baixe o Localizable.xcstrings e adicione-o ao seu projeto Xcode.
  4. Faça o build e revise o diff: as chaves marcadas como Stale, as novas chaves extraídas do código e os especificadores de formato são explicados no guia de migração para um String Catalog.

O que o conversor não faz

Ele não lê arquivos .stringsdict: plurais e variações por dispositivo ficam para o Xcode ou para um editor de catálogos. Ele não analisa o seu código, então não adiciona as strings que o Xcode extrairia dos literais SwiftUI. Para um projeto inteiro, o comando Migrate to String Catalog do Xcode continua sendo a referência; esta ferramenta serve para arquivos avulsos, a exportação de um tradutor ou um teste rápido.

Perguntas frequentes

Meus arquivos .strings são enviados para um servidor?

Não. Seus arquivos são lidos localmente e o catálogo é montado na página: o download sai do seu navegador, sem passar por um servidor.

Como a ferramenta sabe o idioma de cada arquivo?

Pelo nome da pasta xx.lproj quando você solta uma pasta, ou pelo nome do arquivo (Localizable_fr.strings). Caso contrário, você informa o idioma antes de gerar o catálogo.

Por que não usar a migração do Xcode?

Para um projeto inteiro, use: ela também trata os .stringsdict e conhece o seu código. Este conversor serve para arquivos avulsos, sem abrir o projeto, como uma exportação de um tradutor ou um teste.

Os plurais .stringsdict são convertidos?

Não, só os arquivos .strings são lidos. Os plurais são refeitos no Xcode como variações de plural no catálogo.

Meu arquivo .strings está em UTF-16, é um problema?

Não, a codificação UTF-16 dos arquivos gerados pelo Xcode é detectada automaticamente, assim como UTF-8.

O catálogo gerado é válido?

É JSON no formato String Catalog (versão 1.0). Ele compila com o xcstringstool do Xcode, mas abra-o no Xcode e revise o diff antes de fazer o commit.

Qual a diferença para o LocalePilot?

Esta ferramenta converte arquivos uma vez. O LocalePilot é um app desktop, em fase final para macOS, que edita .xcstrings, verifica placeholders, traduz com IA e exporta com backup.

Seja avisado no lançamento

O LocalePilot está em fase final. Deixe seu e-mail para saber do lançamento.

  • macOS 12 ou posterior · Ollama ou LM Studio opcionais
  • Interface do app em inglês, francês, espanhol, italiano e português.