Traduci file di localizzazione YAML, stile Rails
Un file YAML in stile Rails inizia con il codice della lingua e annida tutto sotto di esso, e le sue stringhe contengono variabili %{name}. KAERIS traduce i valori, riscrive la chiave radice per la lingua di destinazione e verifica che ogni variabile sia stata trasmessa.
KAERIS ha tradotto questa pagina e controllato ogni riga ritraducendola. Un madrelingua non l'ha ancora revisionata. Originale in inglese
Come viene creato un file di localizzazione YAML
La prima riga è la locale (en:); ogni chiave vive sotto di essa. Le forme plurali sono chiavi semplici come one e other. Le liste sono supportate. Viene letto anche un file che è una singola mappatura piatta senza una locale radice, e le sue chiavi puntate rimangono così come sono scritte.
en: greeting: "Welcome back, %{name}!" inbox: one: "%{count} new message" other: "%{count} new messages" errors: blank: "can't be blank" too_short: "is too short (minimum is %{count} characters)" checkout: total: "Total: <strong>%{amount}</strong>"
Cosa controllare nelle traduzioni YAML
La chiave radice segue il file
en:deve diventarede:nel file tedesco, altrimenti Rails non lo troverà mai. KAERIS scrive la lingua di destinazione come radice.%{variables} e HTML
L'interpolazione di Rails è
%{name}; alcuni progetti usano{{name}}. Entrambi vengono confrontati con l'origine. I tag inline come<strong>vengono controllati allo stesso modo.Citazioni
Un valore tradotto che inizia con
[,*o&, o contiene:, non è YAML valido a meno che non sia quotato. Lo scrittore decide autonomamente le virgolette: nell'output di esempio, un valore che inizia con%{count}viene restituito quotato.I commenti non viaggiano
I commenti YAML nell'origine non vengono trasferiti nel file tradotto. Conserva le note per i traduttori nelle chiavi di servizio (una chiave che inizia con
_non viene tradotta) o nel tuo repository.
Un'esecuzione reale: tradotto in tedesco e controllato
Un'esecuzione reale, 27 ottobre 2026, nulla modificato a mano: kaeris translate en.yml --langs de con kaeris 0.2.35, 3 secondi, modello google/gemini-2.5-flash-lite, il predefinito del piano gratuito. Sotto, il file tedesco che ha scritto e cosa dice kaeris check al riguardo.
de: greeting: Willkommen zurück, %{name}! inbox: one: '%{count} neue Nachricht' other: '%{count} neue Nachrichten' errors: blank: darf nicht leer sein too_short: ist zu kurz (mindestens %{count} Zeichen) checkout: total: 'Gesamt: <strong>%{amount}</strong>'
$ kaeris check --source en.yml --langs de ✓ de: complete & placeholder-safe ✓ all locales complete & placeholder-safe
Cosa fa KAERIS con esso
Struttura mantenuta
Annidamento, ordine delle chiavi e liste tornano uguali; la chiave della locale radice viene riscritta per ogni lingua.
Variabili e tag controllati
Una
%{name}o<strong>persa viene trovata contando, senza alcun modello coinvolto.Controllo gratuito per questo formato
Il controllo gratuito su /check legge questo formato e viene eseguito senza chiave o account. Anche il comando da terminale
kaeris checklo legge: gestisce tutti i 13 formati da kaeris 0.2.35, con le stesse regole e nulla inviato da nessuna parte.
Eseguilo in tre passaggi
Installa la CLI
Esegui
pip install kaeris.Traduci il file
Esegui
kaeris translate config/locales/en.yml --langs de,ja. I file di output sono nominati per lingua.Controlla il risultato
Carica l'origine e il file tradotto sulla pagina di controllo gratuita; elenca variabili perse, tag e chiavi mancanti.
pip install kaeris kaeris translate config/locales/en.yml --langs de,ja --verify
Domande
Funziona per Rails en.yml?
Sì. La chiave radice en:, le chiavi annidate e le variabili %{name} sono gestite. Vedi anche la pagina Rails.
E i commenti nel mio YAML?
Rimangono nel tuo file di origine. Il file tradotto viene scritto senza di essi.
È gratuito?
Sì, senza account: 10.000 caratteri per file e fino a 8 lingue per esecuzione. Una chiave API gratuita aumenta il limite di file a 50.000 caratteri. A vita costa $79 una tantum, sulla tua chiave OpenRouter; i piani mensili partono da $19. Prezzi
Posso eseguirlo dal terminale o in CI?
Sì. pip install kaeris, poi kaeris translate config/locales/en.yml --langs de,ja. La GitHub Action esegue la stessa traduzione in una pull request. Documentazione CLI · GitHub Action
Continua
Riferimento CLI · Riferimento Check · Traduci nel browser · Controllo gratuito · Converti formati · Pseudo-localizzazione
Altri formati: JSON · .po · ARB · XLIFF · .strings · .xcstrings · .properties · .resx · CSV · Markdown · Fluent · XML Android