Traduce Localizable.strings, luego revisa cada línea
Una aplicación de iOS lee su texto a través de NSLocalizedString o String(localized:), desde Localizable.strings o un Catálogo de Cadenas. Un %@ o %d perdido provoca un fallo en la llamada de formato. KAERIS traduce ambos archivos y mantiene cada especificador donde el código lo espera.
KAERIS ha traducido esta página y revisado cada línea traduciéndola de vuelta. Un hablante nativo aún no la ha revisado. Original en inglés
%@ y %d permanecen en cada idioma
Un archivo por locale, listo para de.lproj.
"welcome" = "Welcome back, %@!"; "items_left" = "%d items left in stock"; "save" = "Save changes";
"welcome" = "Willkommen zurück, %@!"; "items_left" = "Noch %d Artikel auf Lager"; "save" = "Änderungen speichern";
Lo que KAERIS hace con él
Catálogos de Cadenas, plurales incluidos
Sube
Localizable.xcstringsy obtén un catálogo fusionado de vuelta con cada idioma, con variantes plurales creadas para cada uno.Variables comprobadas sin IA
Después de la traducción, una simple comprobación por conteo compara cada variable y etiqueta con el original. Una línea que perdió una se marca y se muestra en la parte superior.
Cada línea traducida de vuelta
Un modelo diferente, GPT-4o mini, traduce cada línea de vuelta a tu idioma, y DeepSeek V3.2 en servidores de EE. UU. (DeepInfra, DigitalOcean, Google) juzga si el significado cambió. Lees lo que dice cada línea ahora.
Preguntas
¿Qué pasa con .stringsdict?
Aún no es compatible. Traduce esas variantes por separado, o muévelas a un Catálogo de Cadenas, que funciona con plurales.
¿A dónde van los archivos?
Cada descarga de .strings se nombra según su idioma: colócala en <lang>.lproj. Un Catálogo de Cadenas se devuelve como un solo archivo.
¿Es gratis?
Sí, sin cuenta: 10.000 caracteres por archivo y hasta 8 idiomas por ejecución. Una clave API gratuita eleva el límite de archivos a 50.000 caracteres. La licencia vitalicia cuesta $79 una vez, con tu propia clave OpenRouter; los planes mensuales empiezan en $19. Precios
¿Puedo hacerlo mediante script?
kaeris translate en.lproj/Localizable.strings --langs de,ja,ar funciona desde una lane de Fastlane o CI. Documentación