Skip to main content
AI agent network visualization

Traduzir ficheiros .strings sem quebrar a sua aplicação

Chaves inalteradas. Especificadores de formato preservados. Regras de plural corretas. O seu Localizable.strings traduzido em segundos, não em dias.

A tradução de .strings da Apple é morosa e propensa a erros

Exporta o seu Localizable.strings, entrega-o a um tradutor ou cola-o numa ferramenta genérica e recebe especificadores de formato corrompidos, sequências de escape danificadas e regras de plural alteradas. Depois perde horas a descobrir porque falha a sua aplicação ao abrir em japonês.

As ferramentas genéricas traduzem, reordenam ou removem especificadores de formato, como %@, %d e %1$@

As sequências de escape (\n, \", \t) ficam corrompidas ou são escapadas duas vezes, quebrando a análise das cadeias

As regras de plural de Stringsdict exigem categorias CLDR específicas de cada idioma, que a maioria das ferramentas ignora por completo

Os comentários dos tradutores e as indicações de contexto são removidos, levando a traduções erradas

Origem (inglês)
Base.lproj/Localizable.strings
/* Localizable.strings (English) */

"welcome_title" = "Welcome to MyApp";
"login_button" = "Sign In";
"greeting" = "Hello, %@!";
"items_count" = "%d items in your cart";
"transfer" = "Send %1$@ to %2$@";
Traduzido (japonês)
ja.lproj/Localizable.strings
/* Localizable.strings (Japanese) */

"welcome_title" = "MyAppへようこそ";
"login_button" = "サインイン";
"greeting" = "%@さん、こんにちは!";
"items_count" = "カートに%d個のアイテム";
"transfer" = "%2$@に%1$@を送信";

O que o i18n Agent preserva

Especificadores de formato

Os especificadores posicionais (%1$@) e específicos do tipo (%d, %f, %@) são detetados e permanecem intactos

Sequências de escape

As quebras de linha (\n), tabulações (\t), aspas (\") e sequências de escape Unicode são preservadas corretamente

Plurais de Stringsdict

As categorias de plural CLDR —zero, one, two, few, many e other— são definidas corretamente para cada idioma de destino

Comentários e contexto

Os comentários dos tradutores e as notas dos programadores são preservados para manter o contexto da tradução

Funciona em todas as plataformas Apple

SwiftUI
UIKit / AppKit
Catálogos de cadeias do Xcode
Aplicações macOS
watchOS / tvOS
Pacotes Swift

Ferramentas de código aberto para localizar iOS

i18n Agent para Xcode

Uma aplicação para a barra de menus do macOS que acrescenta localização com um clique ao Xcode. Deteta automaticamente o projeto ativo, traduz os seus ficheiros .strings, .xcstrings e .stringsdict e grava-os nos diretórios .lproj corretos. Envie as traduções existentes como memória de tradução para obter resultados consistentes em todo o projeto.

Deteta automaticamente o seu projeto Xcode ativo através de AppleScript
Pull: traduz os ficheiros e grava-os nos diretórios .lproj corretos
Push: carrega as traduções existentes como memória de tradução
Reside na barra de menus e funciona com .strings, .xcstrings e .stringsdict
Ver no GitHub

LocaleChain

O iOS tem uma lacuna conhecida: quando falta a região específica de um utilizador —como pt-BR—, o sistema passa diretamente para inglês em vez de tentar uma região relacionada —como pt-PT—. LocaleChain é um pacote Swift que corrige o problema com cadeias de recurso configuráveis. Uma linha de configuração, sem alterações ao seu código existente.

Configuração numa linha: LocaleChain.configure()
Funciona de forma transparente com NSLocalizedString, SwiftUI Text e .stringsdict
Cadeias de recurso integradas para português, espanhol, francês, alemão e outros idiomas
Instalação através do Swift Package Manager, com licença MIT
Ver no GitHub

Como funciona

How i18n Agent works: Install, Translate, Done
1
2
3
terminal
$translate_filesrc/messages/en.json
 --target["de", "ja", "es"]
Done.3 languages, 142 keys translated.

Sem copiar e colar manualmente. Sem extrair cadeias. Apenas ficheiros traduzidos.

Experimente já o i18n Agent

Largue aqui o seu ficheiro de tradução

JSON, YAML, PO, XML, CSV, Markdown, Properties

ou clique para selecionar

Idiomas de destino

Sem registoEstimativa imediata

Perguntas frequentes

É programador?

Instale a ferramenta de CLI e traduza o seu primeiro ficheiro em 2 minutos.

Instalar a ferramenta de CLI

Equipa empresarial?

A sua equipa ainda está vinculada a um contrato de TMS? Falemos sobre a migração.