App-Greple-xlate
view release on metacpan or search on metacpan
README.gpt5-FR.md view on Meta::CPAN
# NAME
App::Greple::xlate - module dâassistance à la traduction pour greple
# SYNOPSIS
greple -Mxlate --xlate-engine gpt5 --xlate pattern target-file
greple -Mxlate --xlate-engine deepl --xlate pattern target-file
# VERSION
Version 2.02
# DESCRIPTION
**Greple** **xlate** module recherche les blocs de texte souhaités et les remplace par le texte traduit. Le moteur principal est GPT-5.6 Terra (`llm/gpt5.pm`), qui appelle la commande [llm](https://llm.datasette.io/) ; DeepL (`deepl.pm`) et les mote...
Les traductions sont mises en cache par fichier, de sorte que réexécuter une commande ne coûte rien pour le texte inchangé. Lorsquâun document est modifié, seuls les paragraphes modifiés sont de nouveau envoyés à lâAPI ; un moteur sensibl...
Si vous souhaitez traduire des blocs de texte normaux dans un document écrit dans le style pod de Perl, utilisez la commande **greple** avec `--xlate-engine gpt5` et le module `perl` comme ceci :
greple -Mxlate --xlate-engine gpt5 -Mperl --pod --re '^([\w\pP].*\n)+' --all foo.pm
Dans cette commande, la chaîne de motif `^([\w\pP].*\n)+` signifie des lignes consécutives commençant par des lettres alphanumériques et de ponctuation. Cette commande affiche en surbrillance la zone à traduire. Lâoption **--all** est utilisé...
<div>
<p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/select-area.png">
</p>
</div>
Ajoutez ensuite lâoption `--xlate` pour traduire la zone sélectionnée. Elle trouvera alors les sections souhaitées et les remplacera par la sortie du moteur de traduction.
Par défaut, le texte original et le texte traduit sont imprimés au format « marqueur de conflit » compatible avec [git(1)](http://man.he.net/man1/git). En utilisant le format `ifdef`, vous pouvez obtenir la partie souhaitée facilement avec la co...
<div>
<p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/format-conflict.png">
</p>
</div>
Si vous souhaitez traduire lâintégralité du texte, utilisez lâoption **--match-all**. Il sâagit dâun raccourci pour spécifier le motif `(?s).+` qui correspond à lâensemble du texte.
Les données au format marqueur de conflit peuvent être visualisées côte à côte avec la commande [sdif](https://metacpan.org/pod/App%3A%3Asdif) et lâoption `-V`. Comme il nâa pas de sens de comparer chaîne par chaîne, lâoption `--no-cdif...
sdif -V --no-filename --no-tc --no-cdif data_shishin.deepl-EN-US.cm
<div>
<p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/sdif-cm-view.png">
</p>
</div>
# NORMALIZATION
Le traitement est effectué par unités spécifiées, mais dans le cas dâune séquence de plusieurs lignes de texte non vides, elles sont converties ensemble en une seule ligne. Cette opération est effectuée comme suit:
- Supprimer les espaces au début et à la fin de chaque ligne.
- Si une ligne se termine par un signe de ponctuation pleine chasse, la concaténer avec la ligne suivante.
- Si une ligne se termine par un caractère pleine chasse et que la ligne suivante commence par un caractère pleine chasse, concaténer les lignes.
- Si soit la fin soit le début dâune ligne nâest pas un caractère pleine chasse, les concaténer en insérant un espace.
Les données de cache sont gérées sur la base du texte normalisé, de sorte que même si des modifications sont apportées qui nâaffectent pas les résultats de normalisation, les données de traduction mises en cache resteront efficaces.
Ce processus de normalisation est effectué uniquement pour le premier motif (0e) et les motifs de numéro pair. Ainsi, si deux motifs sont spécifiés comme suit, le texte correspondant au premier motif sera traité après normalisation, et aucun pr...
greple -Mxlate -E normalized -E not-normalized
Par conséquent, utilisez le premier motif pour le texte devant ê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 correspondant au premier motif, utilisez un ...
# MASKING
Il arrive quâil y ait des parties du texte que vous ne souhaitez pas traduire. Par exemple, des balises dans des fichiers Markdown. DeepL suggère que, dans de tels cas, la partie du texte à exclure soit convertie en balises XML, traduite, puis re...
--xlate-setopt maskfile=MASKPATTERN
Cela interprétera chaque ligne du fichier `MASKPATTERN` comme une expression régulière, traduira les chaînes qui y correspondent, puis reviendra en arrière après le traitement. Les lignes commençant par `#` sont ignorées.
Un motif complexe peut être écrit sur plusieurs lignes avec un retour à la ligne échappé par une barre oblique inverse.
La manière dont le texte est transformé par le masquage peut être visualisée avec lâoption **--xlate-mask**.
Les espaces réservés de masquage sont des balises XML autofermantes bien formées, telles que `<m id="1" />`. Les moteurs LLM basés sur JSON reçoivent les balises dans leurs tableaux dâentrée. Pour DeepL, une requête contenant des balises de ...
Le masquage protège le balisage contre la traduction. Pour dissimuler les chaînes sensibles au service de traduction lui-même, voir ["ANONYMIZATION AND TEMPLATES"](#anonymization-and-templates) ; les deux peuvent être utilisés ensemble.
Cette interface est expérimentale et susceptible dâévoluer à lâavenir.
# ANONYMIZATION AND TEMPLATES
Les chaînes sensibles peuvent être dissimulées avant dâêtre envoyées à lâAPI de traduction et restaurées dans la sortie. Trois sources de règles dâanonymisation sont disponibles : un fichier dictionnaire (**--xlate-anonymize**), des mar...
Pour les documents de formulaire (rapports trimestriels et similaires), définissez les acteurs en amont et référencez-les dans le corps :
---
å ±åè
: å±±ç°å¤ªé
çºæ³¨ä¼ç¤¾: ã¢ã¯ã¡æ ªå¼ä¼ç¤¾
---
æ¬ä»¶ã«ã¤ã㦠{{ å ±åè
}} ã調æ»ãè¡ã£ãã
Traduisez le modèle une fois par langue avec `--xlate-template` (et `--xlate-frontmatter` lorsque les valeurs sont conservées dans le fichier), puis générez chaque cas avec le mode autonome **pandoc-embedz** -- les valeurs sous `global:` dans une...
greple -Mxlate --xlate --xlate-engine=gpt5 --xlate-to=EN-US \
--xlate-template= --xlate-format=xtxt \
--match-paragraph --all --need=0 \
report-template.md > report-template.EN.md
pandoc-embedz --standalone report-template.EN.md \
-c case-123.yaml -o report-123.EN.md < /dev/null
Pour les marques en ligne, fournir une configuration de définition de macros permet au même modèle traduit dâafficher soit les vrais noms, soit une version expurgée :
README.gpt5-FR.md view on Meta::CPAN
Dans lâimplémentation actuelle, si plusieurs parties dâune ligne sont traduites, elles sont sorties comme des lignes indépendantes.
# CACHE OPTIONS
Le module **xlate** peut stocker le texte traduit en cache pour chaque fichier et le lire avant lâexécution afin dâéliminer la surcharge des requêtes au serveur. Avec la stratégie de cache par défaut `auto`, il maintient les données du cach...
Utilisez **--xlate-cache=clear** pour initier la gestion du cache ou pour nettoyer toutes les données de cache existantes. Une fois exécutée avec cette option, un nouveau fichier de cache sera créé sâil nâexiste pas, puis automatiquement mai...
- --xlate-cache=_strategy_
- `auto` (Default)
Maintenir le fichier de cache sâil existe.
- `create`
Créer un fichier de cache vide et quitter.
- `always`, `yes`, `1`
Maintenir le cache tant que la cible est un fichier normal.
- `clear`
Effacer dâabord les données du cache.
- `never`, `no`, `0`
Ne jamais utiliser le fichier de cache même sâil existe.
- `accumulate`
Par défaut, les données inutilisées sont supprimées du fichier de cache. Si vous ne voulez pas les supprimer et les conserver dans le fichier, utilisez `accumulate`.
- **--xlate-update**
Cette option force la mise à jour du fichier de cache même si ce nâest pas nécessaire.
# COMMAND LINE INTERFACE
Vous pouvez facilement utiliser ce module depuis la ligne de commande en utilisant la commande `xlate` incluse dans la distribution. Voir la page de manuel `xlate` pour lâutilisation.
La commande `xlate` prend en charge les options longues au format GNU telles que `--to-lang`, `--from-lang`, `--engine` et `--file`. Utilisez `xlate -h` pour afficher toutes les options disponibles.
La commande `xlate` fonctionne de concert avec lâenvironnement Docker, donc même si vous nâavez rien installé localement, vous pouvez lâutiliser tant que Docker est disponible. Utilisez lâoption `-D` ou `-C`.
Les opérations Docker sont gérées par [App::dozo](https://metacpan.org/pod/App%3A%3Adozo), qui peut également être utilisé comme commande autonome. La commande `dozo` prend en charge le fichier de configuration `.dozorc` pour des paramètres de...
De plus, comme des makefiles pour divers styles de documents sont fournis, la traduction vers dâautres langues est possible sans spécification particulière. Utilisez lâoption `-M`.
Vous pouvez également combiner les options Docker et `make` afin de pouvoir exécuter `make` dans un environnement Docker.
Lâexécution comme `xlate -C` lancera un shell avec le dépôt git de travail actuel monté.
Lisez lâarticle japonais dans la section ["SEE ALSO"](#see-also) pour plus de détails.
# EMACS
Chargez le fichier `xlate.el` inclus dans le dépôt pour utiliser la commande `xlate` depuis lâéditeur Emacs. La fonction `xlate-region` traduit la région donnée. La langue par défaut est `EN-US` et vous pouvez spécifier la langue en lâinvo...
<div>
<p>
<img width="750" src="https://raw.githubusercontent.com/kaz-utashiro/App-Greple-xlate/main/images/emacs.png">
</p>
</div>
# ENVIRONMENT
- DEEPL\_AUTH\_KEY
Définissez votre clé dâauthentification pour le service DeepL.
- OPENAI\_API\_KEY
Clé dâauthentification OpenAI, utilisée par les moteurs hérités **gpty**. Le moteur **gpt5** basé sur `llm` lit également cette variable, mais les clés stockées avec `llm keys set openai` fonctionnent aussi.
- GREPLE\_XLATE\_CACHE
Définissez la stratégie de cache par défaut (voir ["CACHE OPTIONS"](#cache-options)).
# INSTALL
## CPANMINUS
$ cpanm App::Greple::xlate
## TOOLS
Installez lâoutil en ligne de commande pour le moteur que vous utilisez : `llm` pour le moteur **gpt5**, `deepl` pour DeepL, `gpty` pour les moteurs GPT hérités.
[https://llm.datasette.io/](https://llm.datasette.io/)
[https://github.com/DeepLcom/deepl-python](https://github.com/DeepLcom/deepl-python)
[https://github.com/tecolicom/App-gpty](https://github.com/tecolicom/App-gpty)
# SEE ALSO
## MODULES
[App::Greple::xlate::llm](https://metacpan.org/pod/App%3A%3AGreple%3A%3Axlate%3A%3Allm), [App::Greple::xlate::deepl](https://metacpan.org/pod/App%3A%3AGreple%3A%3Axlate%3A%3Adeepl)
[App::dozo](https://metacpan.org/pod/App%3A%3Adozo) - Exécuteur Docker générique utilisé par xlate pour les opérations sur les conteneurs
## RELATED MODULES
- [App::Greple](https://metacpan.org/pod/App%3A%3AGreple)
Voir le manuel **greple** pour les détails sur le motif de texte cible. Utilisez les options **--inside**, **--outside**, **--include**, **--exclude** pour limiter la zone de correspondance.
- [App::Greple::update](https://metacpan.org/pod/App%3A%3AGreple%3A%3Aupdate)
Vous pouvez utiliser le module `-Mupdate` pour modifier des fichiers selon le résultat de la commande **greple**.
- [App::sdif](https://metacpan.org/pod/App%3A%3Asdif)
Utilisez **sdif** pour afficher le format de marqueur de conflit côte à côte avec lâoption **-V**.
- [App::Greple::stripe](https://metacpan.org/pod/App%3A%3AGreple%3A%3Astripe)
Module Greple **stripe** utilisé avec lâoption **--xlate-stripe**.
## RESOURCES
( run in 0.362 second using v1.01-cache-2.11-cpan-800906f7e73 )