Traducir

Traducir Catálogos de Cadenas de Xcode (.xcstrings)

Un Catálogo de Cadenas contiene todos los idiomas en un solo archivo JSON que solo Xcode debería editar manualmente. KAERIS añade los nuevos idiomas a ese mismo archivo y deja todo lo demás tal como estaba.

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

Cómo se construye un Catálogo de Cadenas

Un archivo, strings, luego la clave, luego localizations, luego el idioma. Cada idioma contiene un stringUnit o variations para plurales. El archivo también incluye comment, extractionState y shouldTranslate. Una clave sin entrada para el idioma fuente es su propio texto fuente.

Archivo fuenteLocalizable.xcstrings
{
  "sourceLanguage" : "en",
  "strings" : {
    "Welcome back, %@!" : {
      "comment" : "Greeting on the home screen",
      "extractionState" : "manual",
      "localizations" : {
        "en" : { "stringUnit" : { "state" : "translated", "value" : "Welcome back, %@!" } }
      }
    },
    "%lld items" : {
      "localizations" : {
        "en" : {
          "variations" : {
            "plural" : {
              "one" : { "stringUnit" : { "state" : "translated", "value" : "%lld item" } },
              "other" : { "stringUnit" : { "state" : "translated", "value" : "%lld items" } }
            }
          }
        }
      }
    },
    "Cancel" : { }
  },
  "version" : "1.0"
}

Qué tener en cuenta en las traducciones .xcstrings

Una ejecución real: traducido al alemán y verificado

Una ejecución real, 27 de octubre de 2026, nada editado a mano: kaeris translate Localizable.xcstrings --langs de con kaeris 0.2.35, 2.4 segundos, modelo openai/gpt-4.1-mini (el modelo de reserva del servicio respondió este trabajo). Abajo, el archivo alemán que escribió y lo que kaeris check dice sobre él.

Resultado en alemánLocalizable.xcstrings
{
  "sourceLanguage": "en",
  "strings": {
    "Welcome back, %@!": {
      "comment": "Greeting on the home screen",
      "extractionState": "manual",
      "localizations": {
        "en": {
          "stringUnit": {
            "state": "translated",
            "value": "Welcome back, %@!"
          }
        },
        "de": {
          "stringUnit": {
            "state": "translated",
            "value": "Willkommen zurück, %@!"
          }
        }
      }
    },
    "%lld items": {
      "localizations": {
        "en": {
          "variations": {
            "plural": {
              "one": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld item"
                }
              },
              "other": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld items"
                }
              }
            }
          }
        },
        "de": {
          "variations": {
            "plural": {
              "one": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld Artikel"
                }
              },
              "other": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld Artikel"
                }
              }
            }
          }
        }
      }
    },
    "Cancel": {
      "localizations": {
        "de": {
          "stringUnit": {
            "state": "translated",
            "value": "Abbrechen"
          }
        }
      }
    }
  },
  "version": "1.0"
}
kaeris checkexit code 0
$ kaeris check --source Localizable.xcstrings --langs de
✓ de: complete & placeholder-safe
✓ all locales complete & placeholder-safe

Lo que KAERIS hace con él

Ejecuta en tres pasos

  1. Instala el CLI

    Ejecuta pip install kaeris.

  2. Traducir el catálogo

    Ejecute kaeris translate Localizable.xcstrings --langs de,fr,ja. El catálogo se actualiza en el lugar.

  3. Comprobar el resultado

    Suba el catálogo en la página de comprobación gratuita; lee la fuente y las traducciones desde un solo archivo.

pip install kaeris
kaeris translate Localizable.xcstrings --langs de,fr,ja --verify

Preguntas

¿Sobrescribe mis traducciones existentes?

Los idiomas ya en el archivo, los comentarios y los estados de extracción se mantienen intactos, como dice el README de la CLI.

¿Cómo se manejan los plurales?

Las variaciones plurales se expanden a las categorías que cada idioma necesita: el inglés one/other se convierte en one/few/many/other en ruso y seis formas en árabe.

¿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 ejecutarlo desde la terminal o en CI?

Sí. pip install kaeris, luego kaeris translate Localizable.xcstrings --langs de,ja. Véase también iOS. La GitHub Action ejecuta la misma traducción en un pull request. Documentación CLI · GitHub Action

Seguir adelante

Referencia CLI · Referencia de verificación · Traducir en el navegador · Verificación gratuita · Convertir formatos · Pseudo-localización

Otros formatos: JSON · YAML · .po · ARB · XLIFF · .strings · .properties · .resx · CSV · Markdown · Fluent · Android XML