App-Greple-xlate
view release on metacpan or search on metacpan
i18n/src/xlate.deepl-FR.pod view on Meta::CPAN
=encoding utf-8
=head1 NAME
App::Greple::xlate - module d'aide à la traduction pour greple
=head1 SYNOPSIS
greple -Mxlate --xlate-engine gpt5 --xlate pattern target-file
greple -Mxlate --xlate-engine deepl --xlate pattern target-file
=head1 VERSION
Version 2.02
=head1 DESCRIPTION
B<Greple> B<xlate> : le module recherche les blocs de texte souhaités et les remplace par le texte traduit. Le moteur principal est GPT-5.6 Terra (F<llm/gpt5.pm>), qui appelle la commande L<llm|https://llm.datasette.io/> ; DeepL (F<deepl.pm>) et les...
Les traductions sont mises en cache par fichier ; ainsi, relancer une commande ne coûte rien pour le texte inchangé. Lorsquâun document est modifié, seuls les paragraphes modifiés sont renvoyés à lâAPI ; un moteur sensible au contexte reço...
Si vous souhaitez traduire des blocs de texte normaux dans un document rédigé dans le style pod de Perl, utilisez la commande B<greple> avec les modules C<--xlate-engine gpt5> et C<perl> comme suit :
greple -Mxlate --xlate-engine gpt5 -Mperl --pod --re '^([\w\pP].*\n)+' --all foo.pm
Dans cette commande, la chaîne de caractères C<^([\w\p].*\n)+> signifie des lignes consécutives commençant par des lettres alphanumériques et de ponctuation. Cette commande permet de mettre en évidence la zone à traduire. L'option B<-tout> est...
=for html <p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/select-area.png">
</p>
Ajoutez ensuite lâoption C<--xlate> pour traduire la zone sélectionnée. Le moteur de traduction identifiera alors les sections souhaitées et les remplacera par le résultat de la traduction.
Par défaut, les textes originaux et traduits sont imprimés dans le format "marqueur de conflit" compatible avec L<git(1)>. En utilisant le format C<ifdef>, vous pouvez facilement obtenir la partie souhaitée par la commande L<unifdef(1)>. Le format...
=for html <p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/format-conflict.png">
</p>
Si vous souhaitez traduire un texte entier, utilisez l'option B<--match-all>. Il s'agit d'un raccourci pour spécifier le modèle C<(?s).+> qui correspond à un texte entier.
Les données au format marqueur de conflit peuvent être visualisées côte à côte par la commande L<sdif|App::sdif> avec l'option C<-V>. Ãtant donné qu'il n'est pas utile de comparer chaque chaîne de caractères, il est recommandé d'utiliser l...
sdif -V --no-filename --no-tc --no-cdif data_shishin.deepl-EN-US.cm
=for html <p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/sdif-cm-view.png">
</p>
=head1 NORMALIZATION
Le traitement se fait par unités spécifiées, mais dans le cas d'une séquence de plusieurs lignes de texte non vide, elles sont converties ensemble en une seule ligne. Cette opération s'effectue comme suit :
=over 2
=item *
Supprimer les espaces blancs au début et à la fin de chaque ligne.
=item *
Si une ligne se termine par un caractère de ponctuation de pleine largeur, concaténer avec la ligne suivante.
=item *
Si une ligne se termine par un caractère de pleine largeur et que la ligne suivante commence par un caractère de pleine largeur, concaténer les lignes.
=item *
Si la fin ou le début d'une ligne n'est pas un caractère de pleine largeur, concaténer les lignes en insérant un caractère d'espacement.
=back
Les données mises en cache sont gérées sur la base du texte normalisé, de sorte que même si des modifications sont apportées sans affecter les résultats de la normalisation, les données de traduction mises en cache resteront effectives.
Ce processus de normalisation n'est effectué que pour le premier (0e) motif et les motifs pairs. Ainsi, si deux motifs sont spécifiés comme suit, le texte correspondant au premier motif sera traité après normalisation, et aucun processus de norm...
greple -Mxlate -E normalized -E not-normalized
Par conséquent, utilisez le premier motif pour le texte qui doit être traité en combinant plusieurs lignes en une seule, et utilisez le second motif pour le texte préformaté. S'il n'y a pas de texte à faire correspondre dans le premier motif, u...
=head1 MASKING
Il arrive que des parties de texte ne soient pas traduites. Par exemple, les balises dans les fichiers markdown. DeepL suggère que dans de tels cas, la partie du texte à exclure soit convertie en balises XML, traduite, puis restaurée une fois la t...
--xlate-setopt maskfile=MASKPATTERN
Cela interprétera chaque ligne du fichier C<MASKPATTERN> comme une expression régulière, traduira les chaînes qui correspondent et reviendra en arrière après le traitement. Les lignes commençant par C<#> sont ignorées.
Les motifs complexes peuvent être écrits sur plusieurs lignes en utilisant des sauts de ligne échappés par une barre oblique inversée.
L'option B<--xlate-mask> permet de voir comment le texte est transformé par le masquage.
Les marqueurs de remplacement sont des balises XML auto-fermantes bien formées, telles que C<< <m id="1" /> >>. Les moteurs LLM basés sur JSON reçoivent ces balises dans leurs tableaux dâentrée. Pour DeepL, une requête contenant des balises de...
Le masquage empêche le balisage dâêtre traduit. Pour masquer des chaînes sensibles vis-à -vis du service de traduction lui-même, consultez L</ANONYMIZATION AND TEMPLATES> ; les deux méthodes peuvent être utilisées conjointement.
Cette interface est expérimentale et peut être modifiée à l'avenir.
=head1 ANONYMIZATION AND TEMPLATES
Les chaînes sensibles peuvent être masquées avant dâêtre envoyées à lâAPI de traduction, puis restaurées dans la sortie. Trois sources de règles dâanonymisation sont disponibles : un fichier de dictionnaire (B<--xlate-anonymize>), des m...
Pour les documents de type formulaire (rapports trimestriels et autres), définissez les acteurs au préalable et faites-y référence dans le corps du texte :
---
å ±åè
: å±±ç°å¤ªé
i18n/src/xlate.deepl-FR.pod view on Meta::CPAN
=item --xlate-cache=I<strategy>
=over 4
=item C<auto> (Default)
Maintenir le fichier de cache s'il existe.
=item C<create>
Créer un fichier cache vide et quitter.
=item C<always>, C<yes>, C<1>
Maintenir le cache de toute façon tant que la cible est un fichier normal.
=item C<clear>
Effacer d'abord les données du cache.
=item C<never>, C<no>, C<0>
Ne jamais utiliser le fichier cache même s'il existe.
=item C<accumulate>
Par défaut, les données inutilisées sont supprimées du fichier cache. Si vous ne voulez pas les supprimer et les conserver dans le fichier, utilisez C<accumulate>.
=back
=item B<--xlate-update>
Cette option oblige à mettre à jour le fichier de cache même si cela n'est pas nécessaire.
=back
=head1 COMMAND LINE INTERFACE
Vous pouvez facilement utiliser ce module à partir de la ligne de commande en utilisant la commande C<xlate> incluse dans la distribution. Voir la page de manuel C<xlate> pour l'utilisation.
La commande C<xlate> prend en charge les options longues de style GNU telles que C<--to-lang>, C<--from-lang>, C<--engine> et C<--file>. Utilisez C<xlate -h> pour voir toutes les options disponibles.
La commande C<xlate> fonctionne de concert avec l'environnement Docker, donc même si vous n'avez rien d'installé, vous pouvez l'utiliser tant que Docker est disponible. Utilisez l'option C<-D> ou C<-C>.
Les opérations Docker sont gérées par L<App::dozo>, qui peut également être utilisé comme une commande autonome. La commande C<dozo> prend en charge le fichier de configuration C<.dozorc> pour les paramètres persistants des conteneurs.
De plus, comme des makefiles pour différents styles de documents sont fournis, la traduction dans d'autres langues est possible sans spécification particulière. Utilisez l'option C<-M>.
Vous pouvez également combiner les options Docker et C<make> afin d'exécuter C<make> dans un environnement Docker.
L'exécution de C<xlate -C> lancera un shell avec le dépôt git actuel monté.
Lire l'article japonais dans la section L</SEE ALSO> pour plus de détails.
=head1 EMACS
Chargez le fichier F<xlate.el> inclus dans le dépôt pour utiliser la commande C<xlate> à partir de l'éditeur Emacs. La fonction C<xlate-region> traduit la région donnée. La langue par défaut est C<EN-US> et vous pouvez spécifier la langue en ...
=for html <p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/emacs.png">
</p>
=head1 ENVIRONMENT
=over 7
=item DEEPL_AUTH_KEY
Définissez votre clé d'authentification pour le service DeepL.
=item OPENAI_API_KEY
Clé dâauthentification OpenAI, utilisée par les moteurs hérités B<gpty>. Le moteur B<gpt5> basé sur C<llm> lit également cette variable, mais les clés stockées avec C<llm keys set openai> fonctionnent également.
=item GREPLE_XLATE_CACHE
Définissez la stratégie de cache par défaut (voir L</CACHE OPTIONS>).
=back
=head1 INSTALL
=head2 CPANMINUS
$ cpanm App::Greple::xlate
=head2 TOOLS
Installez lâoutil en ligne de commande correspondant au moteur que vous utilisez : C<llm> pour le moteur B<gpt5>, C<deepl> pour DeepL, C<gpty> pour les anciens moteurs GPT.
L<https://llm.datasette.io/>
L<https://github.com/DeepLcom/deepl-python>
L<https://github.com/tecolicom/App-gpty>
=head1 SEE ALSO
=head2 MODULES
L<App::Greple::xlate::llm>, L<App::Greple::xlate::deepl>
L<App::dozo> - Exécutant Docker générique utilisé par xlate pour les opérations sur les conteneurs.
=head2 RELATED MODULES
=over 2
=item * L<App::Greple>
Voir le manuel B<greple> pour les détails sur le modèle de texte cible. Utilisez les options B<--inside>, B<--outside>, B<--include>, B<--exclude> pour limiter la zone de correspondance.
=item * L<App::Greple::update>
Vous pouvez utiliser le module C<-Mupdate> pour modifier les fichiers par le résultat de la commande B<greple>.
=item * L<App::sdif>
Utilisez B<sdif> pour afficher le format des marqueurs de conflit côte à côte avec l'option B<-V>.
( run in 1.152 second using v1.01-cache-2.11-cpan-8dfa8b56332 )