Traduci file .ftl Mozilla Fluent
I messaggi Fluent possono contenere variabili, riferimenti a termini e intere espressioni select. KAERIS traduce ogni parte di testo e mantiene la struttura attorno ad essa, quindi controlla le variabili e i riferimenti ai termini.
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 Fluent
I messaggi sono id = text, con variabili { $name }, riferimenti a termini { -brand-name }, attributi (.title) ed espressioni select con varianti [one] e un default *. I commenti iniziano con #.
# Shown on the home screen welcome = Welcome back, { $name }! emails = { $count -> [one] You have { $count } new email. *[other] You have { $count } new emails. } -brand-name = Firefox about = About { -brand-name }
Cosa osservare nelle traduzioni Fluent
Variabili e termini
{ $name }e{ -brand-name }devono rimanere. Nell'esecuzione reale di seguito entrambi sono rimasti.Espressioni Select
Ogni variante è un testo a sé da tradurre. Il default
*rimane contrassegnato; nell'analisi sopra le due varianti email sono stringhe separate.Termini
Un termine come
-brand-nameè una voce a sé; una traduzione senza di esso viene segnalata come mancante.Commenti
I commenti della sorgente vengono riemessi con il file.
Un'esecuzione reale: tradotto in tedesco e controllato
Un'esecuzione reale, 27 ottobre 2026, nulla modificato manualmente: kaeris translate en.ftl --langs de con kaeris 0.2.35, 2,1 secondi, modello google/gemini-2.5-flash-lite, il predefinito del piano gratuito. Di seguito, il file tedesco che ha scritto e cosa dice kaeris check al riguardo.
# Shown on the home screen welcome = Willkommen zurück, { $name }! emails = { $count -> [one] Sie haben { $count } neue E-Mail. *[other] Sie haben { $count } neue E-Mails. } -brand-name = Firefox about = Über { -brand-name }
$ kaeris check --source en.ftl --langs de ✓ de: complete & placeholder-safe ✓ all locales complete & placeholder-safe
Cosa fa KAERIS con esso
Struttura mantenuta
Messaggi, termini, attributi e varianti select vengono percorsi e riscritti nella stessa forma.
Riferimenti contati
Un
{ $name }o{ -term }perso viene trovato senza un modello.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 locales/en/app.ftl --langs de,ja.Controlla il risultato
Carica la sorgente e il .ftl tradotto sulla pagina di controllo gratuito.
pip install kaeris kaeris translate locales/en/app.ftl --langs de,ja --verify
Domande
Le espressioni select sono supportate?
Sì. Ogni variante viene tradotta singolarmente e la struttura viene riscritta.
Cosa dire dei termini come -brand-name?
Sono voci a sé e vengono confrontate con la sorgente; una traduzione che ne omette uno viene segnalata come chiave mancante.
È 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, quindi kaeris translate locales/en/app.ftl --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 · YAML · .po · ARB · XLIFF · .strings · .xcstrings · .properties · .resx · CSV · Markdown · Android XML