Skip to main content
AI agent network visualization

Tradueixi fitxers .strings sense fer malbé la seva aplicació

Les claus no es toquen. Els especificadors de format es conserven. Les regles de plural són correctes. El seu fitxer Localizable.strings, traduït en segons, no en dies.

La traducció de .strings d'Apple és feixuga i propensa a errors

Exporta el seu fitxer Localizable.strings, el lliura a un traductor o l'enganxa en una eina genèrica i rep especificadors de format corromputs, seqüències d'escapament malmeses i regles de plural malmeses. Després passa hores investigant per què l'aplicació falla en iniciar-se en japonès.

Els especificadors de format com %@, %d i %1$@ es tradueixen, es reordenen o s'eliminen amb eines genèriques

Les seqüències d'escapament (\n, \", \t) es corrompen o es duplica l'escapament, cosa que trenca l'anàlisi de la cadena

Les regles de plural de Stringsdict necessiten categories CLDR específiques per a cada idioma, que la majoria d'eines ignoren completament

Els comentaris per al traductor i els indicis de context s'eliminen, cosa que provoca traduccions incorrectes

Origen (anglè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$@";
Traduït (japonès)
ja.lproj/Localizable.strings
/* Localizable.strings (Japanese) */

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

Què conserva i18n Agent

Especificadors de format

Els especificadors posicionals (%1$@) i específics de tipus (%d, %f, %@) es detecten i es deixen intactes

Seqüències d'escapament

Els salts de línia (\n), les tabulacions (\t), les cometes (\") i els escapaments Unicode es conserven correctament

Formes de plural de Stringsdict

Les categories de plural CLDR (zero, one, two, few, many, other) es defineixen correctament per a cada idioma de destinació

Comentaris i context

Els comentaris per al traductor i les notes del desenvolupador es conserven per mantenir el context de la traducció

Compatible amb totes les plataformes d'Apple

SwiftUI
UIKit / AppKit
Catàlegs de cadenes d'Xcode
Aplicacions macOS
watchOS / tvOS
Paquets Swift

Eines de codi obert per a la localització d'iOS

i18n Agent per a Xcode

Una aplicació de la barra de menús de macOS que afegeix localització amb un sol clic a Xcode. Detecta automàticament el seu projecte actiu, tradueix els fitxers .strings, .xcstrings i .stringsdict i els escriu als directoris .lproj correctes. Enviï les traduccions existents com a memòria de traducció per obtenir resultats coherents a tot el projecte.

Detecta automàticament el seu projecte actiu d'Xcode mitjançant AppleScript
Pull: tradueix els fitxers i els escriu als directoris .lproj correctes
Push: puja les traduccions existents com a memòria de traducció
Resideix a la barra de menús, funciona amb .strings, .xcstrings i .stringsdict
Veure a GitHub

LocaleChain

iOS té una mancança coneguda: quan falta la configuració regional d'un usuari (com pt-BR), el sistema passa directament a l'anglès en lloc de provar una configuració regional relacionada (com pt-PT). LocaleChain és un paquet Swift que ho soluciona amb cadenes de reserva configurables. Una línia de configuració, cap canvi al seu codi existent.

Configuració d'una línia: LocaleChain.configure()
Funciona de manera transparent amb NSLocalizedString, SwiftUI Text i .stringsdict
Cadenes de reserva integrades per al portuguès, l'espanyol, el francès, l'alemany i altres idiomes
S'instal·la mitjançant Swift Package Manager, amb llicència MIT
Veure a GitHub

Com 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.

Res de copiar i enganxar manualment. Res d'extracció de cadenes. Només fitxers traduïts.

Provar i18n Agent ara

Arrossegar aquí el fitxer de traducció

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

o fer clic per explorar

Idiomes de destinació

No cal registrePressupost instantani

Preguntes freqüents

És desenvolupador?

Instal·li l'eina de la CLI i tradueixi el seu primer fitxer en 2 minuts.

Instal·lar l'eina de la CLI

Equip empresarial?

Encara atrapat en un contracte de TMS? Parlem sobre la migració.