Aller au contenu
Aller au contenu

Référence / CLI

Page traduite automatiquement

Cette page a été traduite automatiquement, elle peut donc contenir des erreurs ou se lire un peu bizarrement. La version anglaise fait foi. Lire l'original en anglais.

Référence de la CLI

Toutes les sous-commandes de verbatra et les options globales qu'elles partagent, plus la façon dont la CLI lit ton environnement et charge les fichiers .env.

@verbatra/cli fournit le binaire verbatra, une surcouche légère de @verbatra/sdk.

Commandes

Ces commandes font le travail :

init

Crée une config verbatra et un .env.example pour ce projet.

extract

Analyse le code de ton application à la recherche des appels de traduction et ajoute les nouvelles clés au fichier de la locale source.

translate

Traduit chaque locale cible une fois, puis termine.

watch

Retraduit à chaque changement de la source jusqu'à interruption.

check

Signale les clés manquantes ou obsolètes par locale, en lecture seule.

diff

Liste les clés exactes qui seraient ajoutées, retraduites ou orphelines par locale, en lecture seule.

report

Affiche un rapport en lecture seule : report provenance liste les traductions qu'une machine a écrites et celles qu'une personne a relues.

doctor

Valide la configuration du projet et signale tous les problèmes d'un coup, sans appeler de fournisseur.

pseudo

Génère une pseudo-locale à partir des chaînes source, sans appeler de fournisseur.

types

Génère les déclarations TypeScript pour les clés de ton catalogue et les arguments de leurs messages, sans appeler de fournisseur.

export

Exporte les chaînes non traduites pour un traducteur humain, en classeur Excel, en un fichier CSV ou TSV par locale ou en un fichier XLIFF par locale pour un outil de TAO.

import

Réimporte un classeur rempli ou un fichier délimité dans les fichiers de locale.

tmx

Importe une mémoire de traduction TMX venant d'un autre outil dans la mémoire de ce projet, ou exporte la mémoire de ce projet dans un fichier TMX.

studio

Démarre Verbatra Studio, le tableau de bord local de traduction.

mcp

Démarre un serveur MCP en stdio qui expose les outils de verbatra à un client MCP.

Installation et invocation

Installe @verbatra/cli comme dépendance de développement :

npm install --save-dev @verbatra/cli

Puis lance le binaire via ton gestionnaire de paquets :

npx @verbatra/cli <command>

Il te faut Node.js ^22.22.0 || >=24 (la CLI 0.12.x accepte ^22.18.0 || >=24).

Tu veux essayer une commande avant d'installer ? npx @verbatra/cli <command> (npm) ou pnpm dlx @verbatra/cli <command> (pnpm) fonctionnent tous les deux sans installation locale préalable. Utilise toujours le nom avec scope : le nom verbatra sans scope sur npm n'appartient pas à ce projet.

Options globales

Ces options ont le même sens sur chaque commande qui les accepte, donc les pages de commande ne listent que leurs propres options. La dernière colonne nomme les commandes qui n'acceptent pas une option.

OptionArgumentPar défautEffetRefusée par
--cwd<path>répertoire courantlance ici la recherche de la config et y résout les chemins que tu passes ; les fichiers de locale sont résolus par rapport au répertoire de la config trouvée ; init y écrit ses fichiersaucune
--config<path>en chercher unecharge ce fichier de config au lieu d'en chercher un ; voir l'ordre de rechercheinit
--jsonaucundésactivéaffiche une enveloppe lisible par machine sur stdout, une ligne par enregistrement ; les erreurs vont toujours sur stderrmcp, studio
-q, --quietaucundésactivén'affiche que les résultats, avertissements et erreurs : ni progression, ni suggestions, ni lignes d'information ; fonctionne avant ou après le nom de la commandeaucune
--no-coloraucuncouleur dans un terminalne colore jamais la sortie ; voir Sortie dans le terminalaucune
-h, --helpaucundésactivéaffiche l'aide du programme ou de la commande et sort avec 0aucune
-V, --versionaucundésactivéaffiche la version de la CLI et sort avec 0aucune

Une commande ou une option inconnue sort avec 2, tout comme un verbatra sans commande : il affiche l'aide sur stderr et, si aucune config n'est trouvée, suggère verbatra init. mcp n'écrit jamais sur stdout, car stdout est son canal de protocole, donc il refuse --json avec USAGE_ERROR. Depuis 0.12.0, un --cwd qui ne nomme aucun répertoire existant sort avec 2 et INVALID_OPTION pour toute commande, avant toute lecture ou écriture.

Fichiers d'environnement

translate, watch, doctor, studio et mcp chargent .env.local puis .env depuis le répertoire de travail avant de s'exécuter. Quand la config trouvée par la recherche se trouve dans un répertoire parent, ils chargent ensuite les deux mêmes fichiers depuis ce répertoire ; avec --config, ils ne lisent que le répertoire de travail. Quand un client MCP change ses racines, le serveur MCP charge aussi les deux fichiers depuis la nouvelle racine du projet. doctor --literals fait exception : il ne lit aucune clé d'API, donc il ne charge aucun des deux fichiers. Une variable déjà définie dans ton environnement réel l'emporte toujours, puis les fichiers du répertoire de travail, puis ceux du répertoire de la config, et une valeur dans .env.local l'emporte sur la même variable dans .env. Les clés d'API sont lues uniquement depuis l'environnement, jamais depuis le fichier de config ni une option : voir Fournisseurs. Les commandes en lecture seule (check, diff, report), les commandes de remise (export, import), extract, init, pseudo, types et tmx n'appellent jamais de fournisseur et ne chargent aucun fichier .env.

Entrées du .gitignore

Une vraie exécution de translate, watch, import, tmx import ou pseudo ajoute aussi à un .gitignore existant à la racine du projet les entrées qui lui manquent parmi .env, .env.local, .verbatra-local/ et verbatra.cache.json, et les nomme sur stderr (--json et --quiet suppriment cette ligne). Cela se fait dès que la config est chargée, donc une exécution qui échoue ensuite l'a déjà fait. Un dry run ne touche pas au fichier, et aucune de ces commandes n'en crée ; c'est le rôle de verbatra init. Un .gitignore qui est un lien symbolique sortant du projet reste inchangé, avec un avertissement que --json et --quiet conservent.

Sortie dans le terminal

La couleur, le spinner, --quiet et les variables qui les pilotent sont décrits dans Sortie dans le terminal.

Codes de sortie

Le contrat des codes de sortie et ses cas particuliers sont sur Codes de sortie et sortie JSON. Chaque page de commande ne liste que les codes que cette commande renvoie.

Modifier sur GitHub

Sur cette page