Traduis uniquement ce qui a changé.
verbatra compare ta locale source à un fichier de verrouillage commité, envoie uniquement les clés nouvelles et modifiées au fournisseur que tu choisis, et laisse toutes les autres clés intactes.
npm i -D @verbatra/cli- Dernière version
- @verbatra/cli 0.11.1
- Formats de fichier
- 14
- Fournisseurs
- 6
- Licence
- MIT
Fonctionne avec les fichiers de locale que tu as déjà.
Chaque exécution est un diff, pas une réécriture.
Un exemple de session verbatra en ligne de commande.
- verbatra translate
- diff en.json · 2 nouvelles · 1 modifiée · 117 inchangées
- de 3 traduites · 117 intactes · 0 retenue
- es 3 traduites · 117 intactes · 0 retenue
- fr 3 traduites · 117 intactes · 0 retenue
- ✓ 9 clés traduites en 1,8 s · 351 intactes · verrou mis à jour
Le fichier de verrouillage
Un hash par clé et par locale, commité à côté de tes fichiers.
{ "de": {"inbox.title": "a1b2c3d4e5f6a7b8","inbox.count": "9f8e7d6c5b4a3210"} }
Écrit, et rien d'autre
de.json après l'exécution.
{ "inbox": { "title": "Posteingang",nouvelle "count": "{count} neue Nachrichten"conservée }}Refusé avant d'atteindre le fichier
Retenu, jamais écrit, renvoyé à la prochaine exécution.
- clé
- inbox.count
- candidate
- "Neue Nachrichten"
- manquant
- {count}
- motif
- placeholder
- conservée
- "{count} neue Nachrichten"
1. Configure
Locale source, cibles, un fournisseur.
2. Compare
Nouvelles, modifiées, inchangées ou orphelines, par rapport au fichier de verrouillage.
3. Traduis
Seules les clés nouvelles et modifiées partent.
4. Vérifie et écris
Les résultats cassés sont retenus, le reste est écrit.
Six fournisseurs, une interface.
Change de fournisseur en modifiant une ligne de configuration.
Survole les cartes ou parcours-les avec Tab.
Le reste de la boucle de traduction, dans le même outil.
Confie un classeur aux traducteurs, puis réimporte-le.
Exporte, récupère-le rempli, réimporte-le via la même barrière d'intégrité.
En savoir plus sur le transfert Excelverbatra exportverbatra import translations.xlsx| clé | source | cible |
|---|---|---|
| cart.pay | Pay now | Bezahlen |
| cart.total | Total | Gesamt |
| nav.home | Home | Start |
Consulte l'état de chaque locale dans Verbatra Studio.
Couverture, entrées signalées, modifications sur place. Aucun appel au fournisseur.
Réviser les traductions dans Studio
Lance-le à l'enregistrement, en CI ou depuis une GitHub Action.
watch traduit à chaque modification. check fait échouer la pull request quand une locale dérive.
verbatra check --json{ "command": "check",
"result": { "inSync": false, "locales": [
{ "locale": "de", "missing": 0, "stale": 2 }
] } }Ou confie-le à ton agent.
Un serveur MCP, plus des skills installables pour la CLI, MCP et Studio.
Commencer avec l'IAnpx skills@latest add verbatra/skills --skill verbatra-cli -yverbatra mcpllms.txtllms-full.txtDocumentation du serveur MCPverbatra/skills
Ce que tu obtiens vraiment.
L'allemand, l'espagnol et le français de cette page en proviennent.
- Tu paies pour les clés que tu as modifiées.
- Seules les clés nouvelles et modifiées partent chez le fournisseur, et chaque exécution affiche son nombre de tokens par locale.
de: 2 translated, 281 unchanged, 468 tokens (394 in, 74 out)une exécution sur les messages de ce site- Un placeholder cassé n'atteint jamais la production.
- Une traduction candidate qui perd un placeholder, casse l'ICU ou déséquilibre le balisage est retenue, jamais écrite et renvoyée à la prochaine exécution.
de: 1 translated, 0 unchanged, 1 integrity-withheldla même barrière d'intégrité protège les modifications dans Studio et les imports- Une locale qui dérive fait échouer la pull request.
verbatra checkrenvoie le code 1 quand une locale manque ou est obsolète, avec--jsonpour la CI.- docs-i18n-check.ymlce site le lance à chaque pull request
- Tes termes et ton registre ne bougent pas.
- Un glossaire fixe la traduction des termes listés ;
tonedéfinit un ton formel, informel ou neutre. - glossary: { verbatra: "verbatra" }, tone: "informal"le verbatra.config.ts de ce site
- Chaque traduction est un diff git.
- Les fichiers de locale et le fichier de verrouillage sont du texte brut dans ton dépôt, et rien n'est supprimé sans
--prune. - verbatra.lock.jsonun hash par clé et par locale cible
- Des personnes et d'autres outils peuvent prendre le relais.
- Export et import Excel pour les traducteurs, TMX pour la mémoire de traduction, types TypeScript générés pour tes clés.
- export, import, tmx, typesquatre des quatorze commandes
Questions fréquentes
JSON pour i18next, vue-i18n, next-intl et ngx-translate, ainsi que XLIFF, YAML, Flutter ARB, Java/Spring .properties, Apple .strings et les String Catalogs de Xcode, Android strings.xml, les fichiers gettext .po/.pot, INI et .NET .resx. Cela couvre React, Next.js, Vue, Nuxt, Angular, SvelteKit, Astro, Node.js, Spring, Flutter, iOS, macOS, Android et toute stack basée sur gettext. verbatra lit les fichiers que tu as déjà ; il n'y a aucun format propre à verbatra vers lequel migrer.
Il tient un fichier de verrouillage commité qui enregistre ce qui a déjà été traduit. Chaque exécution compare ta locale source à ce fichier de verrouillage et n'envoie que les clés nouvelles ou modifiées à ton fournisseur. Les clés inchangées ne sont jamais touchées, donc une exécution typique coûte une poignée de chaînes, pas tout ton catalogue.
Six, derrière une seule interface : Anthropic, OpenAI et Gemini (LLM), DeepL et Google Cloud Translation (traduction automatique), et openai-compatible, qui pointe verbatra vers un serveur local ou auto-hébergé comme Ollama, LM Studio ou vLLM. Tu en choisis un par son id dans ta configuration, et tu en changes plus tard en modifiant cette seule ligne. Gemini a une vraie offre gratuite, et un modèle local ne coûte rien par appel.
Chaque résultat passe des contrôles d'intégrité des placeholders et de l'ICU avant d'être écrit. Une traduction qui supprime, invente ou réordonne un placeholder, ou qui produit une syntaxe de message ICU invalide, est retenue plutôt qu'enregistrée dans ton fichier de locale. La même barrière d'intégrité s'applique aux modifications et aux retraductions faites dans Verbatra Studio.
verbatra lui-même est gratuit et open source sous licence MIT. Le seul coût est l'usage de ton fournisseur, et c'est toi qui le contrôles : il ne traduit que ce qui a changé, et tu peux le faire tourner gratuitement sur l'offre gratuite de Gemini ou sur un modèle local compatible OpenAI.