App-Greple-xlate
view release on metacpan or search on metacpan
i18n/src/xlate.deepl-ES.pod view on Meta::CPAN
Los datos en formato de marcador de conflicto pueden visualizarse en estilo lado a lado mediante el comando L<sdif|App::sdif> con la opción C<-V>. Dado que no tiene sentido comparar cadena por cadena, se recomienda la opción C<--no-cdif>. Si no nec...
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
El procesamiento se realiza en unidades especificadas, pero en el caso de una secuencia de varias lÃneas de texto no vacÃas, se convierten juntas en una sola lÃnea. Esta operación se realiza del siguiente modo:
=over 2
=item *
Se eliminan los espacios en blanco al principio y al final de cada lÃnea.
=item *
Si una lÃnea termina con un carácter de puntuación de ancho completo, concaténela con la lÃnea siguiente.
=item *
Si una lÃnea termina con un carácter de ancho completo y la lÃnea siguiente comienza con un carácter de ancho completo, concatene las lÃneas.
=item *
Si el final o el principio de una lÃnea no es un carácter de ancho completo, concaténelas insertando un carácter de espacio.
=back
Los datos de la caché se gestionan en función del texto normalizado, por lo que aunque se realicen modificaciones que no afecten a los resultados de la normalización, los datos de traducción almacenados en la caché seguirán siendo efectivos.
Este proceso de normalización sólo se realiza para el primer patrón (0) y los patrones pares. Por lo tanto, si se especifican dos patrones como los siguientes, el texto que coincida con el primer patrón se procesará después de la normalización...
greple -Mxlate -E normalized -E not-normalized
Por lo tanto, utilice el primer patrón para texto que deba procesarse combinando varias lÃneas en una sola, y utilice el segundo patrón para texto preformateado. Si no hay texto que coincidir en el primer patrón, utilice un patrón que no coincid...
=head1 MASKING
En ocasiones, hay partes del texto que no desea traducir. Por ejemplo, las etiquetas de los archivos markdown. DeepL sugiere que, en tales casos, la parte del texto que debe excluirse se convierta en etiquetas XML, se traduzca y, una vez finalizada l...
--xlate-setopt maskfile=MASKPATTERN
Esto interpretará cada lÃnea del archivo C<MASKPATTERN> como una expresión regular, traducirá las cadenas que coincidan con ella y revertirá después del procesamiento. Las lÃneas que comienzan con C<#> se ignoran.
Los patrones complejos pueden escribirse en varias lÃneas con saltos de lÃnea escapados mediante la barra invertida.
Cómo se transforma el texto mediante el enmascaramiento puede verse con la opción B<--xlate-mask>.
El enmascaramiento evita que se traduzcan los elementos de marcado. Para ocultar cadenas sensibles al propio servicio de traducción, consulta L</ANONYMIZATION AND TEMPLATES>; ambas opciones pueden utilizarse conjuntamente.
Esta interfaz es experimental y está sujeta a cambios en el futuro.
=head1 ANONYMIZATION AND TEMPLATES
Las cadenas sensibles pueden ocultarse antes de enviarlas a la API de traducción y restaurarse en el resultado. Hay tres fuentes de reglas de anonimización disponibles: un archivo de diccionario (B<--xlate-anonymize>), marcas en lÃnea en el propio...
Para los documentos de formulario (informes trimestrales y similares), define los actores desde el principio y haz referencia a ellos en el cuerpo:
---
å ±åè
: å±±ç°å¤ªé
çºæ³¨ä¼ç¤¾: ã¢ã¯ã¡æ ªå¼ä¼ç¤¾
---
æ¬ä»¶ã«ã¤ã㦠{{ å ±åè
}} ã調æ»ãè¡ã£ãã
Traduce la plantilla una vez por idioma con C<--xlate-template> (y C<--xlate-frontmatter> cuando los valores se mantengan en el archivo); a continuación, genera cada caso con B<pandoc-embedz> en modo autónomo; los valores bajo C<global:> en una con...
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
En el caso de las marcas en lÃnea, proporcionar una configuración de definición de macro hace que la misma plantilla traducida muestre los nombres reales o una versión censurada:
# macros.yaml # macros-redacted.yaml
preamble: | preamble: |
{% macro person(name) %}{{ name }}{% endmacro %}
{% macro person(name) %}(é¢ä¿è
){% endmacro %}
Excluye los bloques «embedz» de la traducción cuando un documento los contenga:
--exclude '^```embedz\n(?s:.*?)^```\n'
=head1 OPTIONS
=over 7
=item B<--xlate>
=item B<--xlate-color>
=item B<--xlate-fold>
=item B<--xlate-fold-width>=I<n> (Default: 70)
Invoca el proceso de traducción para cada área coincidente.
Sin esta opción, B<greple> se comporta como un comando de búsqueda normal. Por lo tanto, puede comprobar qué parte del archivo será objeto de la traducción antes de invocar el trabajo real.
El resultado del comando va a la salida estándar, asà que redirÃjalo al archivo si es necesario, o considere usar el módulo L<App::Greple::update>.
La opción B<--xlate> llama a la opción B<--xlate-color> con la opción B<--color=nunca>.
Con la opción B<--xlate-fold>, el texto convertido se dobla por el ancho especificado. La anchura por defecto es 70 y puede ajustarse con la opción B<--xlate-fold-width>. Se reservan cuatro columnas para la operación de repliegue, por lo que cada ...
=item B<--xlate-engine>=I<engine>
Especifica el motor de traducción que se va a utilizar.
En este momento, están disponibles los siguientes motores
=over 2
=item * B<gpt5>: gpt-5.5 (via the C<llm> command)
=item * B<deepl>: DeepL API (via the C<deepl> command)
=item * B<gpt3>: gpt-3.5-turbo (legacy, via the C<gpty> command)
=item * B<gpt4o>: gpt-4o-mini (legacy, via the C<gpty> command)
=back
Los módulos del motor se buscan primero en los espacios de nombres del backend (C<llm>, luego C<gpty>), y después directamente bajo C<App::Greple::xlate>. AsÃ, C<gpt5> carga C<App::Greple::xlate::llm::gpt5>, que a su vez llama al comando C<llm>, m...
=item B<--xlate-labor>
=item B<--xlabor>
En lugar de llamar al motor de traducción, se espera que trabajen para. Después de preparar el texto a traducir, se copia en el portapapeles. Se espera que los pegue en el formulario, copie el resultado en el portapapeles y pulse Retorno.
=item B<--xlate-to> (Default: C<EN-US>)
Especifica el idioma de destino. Los motores LLM aceptan cualquier nombre o código de idioma que el modelo comprenda; este se interpolará en la solicitud de traducción. Puedes obtener los idiomas disponibles mediante el comando C<deepl languages> ...
=item B<--xlate-from> (Default: C<ORIGINAL>)
Etiqueta utilizada para el texto original en los formatos de salida C<conflict>, C<colon> y C<ifdef>. Con el motor B<DeepL>, también se pasa un valor no predeterminado como idioma de origen.
=item B<--xlate-format>=I<format> (Default: C<conflict>)
Especifique el formato de salida del texto original y traducido.
Los siguientes formatos distintos de C<xtxt> asumen que la parte a traducir es una colección de lÃneas. De hecho, es posible traducir sólo una parte de una lÃnea, pero especificar un formato distinto de C<xtxt> no producirá resultados significat...
=over 4
=item B<conflict>, B<cm>
El texto original y el convertido se imprimen en formato de marcador de conflicto L<git(1)>.
<<<<<<< ORIGINAL
original text
=======
translated Japanese text
>>>>>>> JA
Puede recuperar el archivo original con el siguiente comando L<sed(1)>.
sed -e '/^<<<<<<< /d' -e '/^=======$/,/^>>>>>>> /d'
=item B<colon>, I<:::::::>
El texto original y el traducido salen en un estilo contenedor personalizado de markdown.
::::::: ORIGINAL
original text
:::::::
::::::: JA
translated Japanese text
:::::::
El texto anterior se traducirá a lo siguiente en HTML.
<div class="ORIGINAL">
original text
</div>
<div class="JA">
translated Japanese text
</div>
El número de dos puntos es 7 por defecto. Si especifica una secuencia de dos puntos como C<:::::>, se utiliza en lugar de 7 dos puntos.
=item B<ifdef>
El texto original y el convertido se imprimen en formato L<cpp(1)> C<#ifdef>.
#ifdef ORIGINAL
original text
#endif
( run in 0.325 second using v1.01-cache-2.11-cpan-cd2fffc590a )