Entrada y salida
Métodos de entrada
Sección titulada «Métodos de entrada»yaku acepta entrada de tres formas, verificadas en este orden:
| Prioridad | Método | Ejemplo |
|---|---|---|
| 1 (más alta) | Archivo (-f) | yaku --to es -f article.en.txt |
| 2 | Argumento posicional | yaku --to es "Hello, world" |
| 3 | Pipe de stdin | echo "Hello" | yaku --to es |
| 4 (más baja) | Entrada interactiva | yaku --to es luego escriba texto + Ctrl+D |
Si se proporcionan múltiples, la fuente de mayor prioridad gana.
Entrada de archivo (-f)
Sección titulada «Entrada de archivo (-f)»Traduzca uno o más archivos. Cuando se proporcionan múltiples archivos, sus contenidos se concatenan:
# Un solo archivoyaku --to es -f README.en.md
# Múltiples archivosyaku --to es -f chapter1.en.md -f chapter2.en.mdyaku detecta automáticamente el formato a partir de la extensión del archivo (.md, .json, .yaml). Consulte Traducción con reconocimiento de formato para detalles.
Argumento posicional
Sección titulada «Argumento posicional»Pase texto corto directamente en la línea de comandos:
yaku --to es "Good morning"yaku --to es "The meeting is tomorrow at ten."Múltiples argumentos se unen con espacios:
yaku --to es Hello world# Traduce "Hello world"Pipe de stdin
Sección titulada «Pipe de stdin»Canalice texto desde otro comando:
echo "Hello, world" | yaku --to escat article.en.md | yaku --to esgit log --oneline -5 | yaku --to escurl -s https://example.com/api/docs | yaku --to esstdin solo se lee cuando no se proporciona la opción -f ni argumentos posicionales. yaku detecta si stdin es un pipe o una terminal:
-
Modo pipe — lee silenciosamente (ej.,
echo "Hello" | yaku --to es) -
Modo interactivo — si ejecuta
yaku --to esen una terminal sin entrada, yaku le solicita que escriba texto directamente:Enter text to translate (Ctrl+D to finish):Escriba o pegue su texto, luego presione Ctrl+D para enviar.
stdout (predeterminado)
Sección titulada «stdout (predeterminado)»yaku escribe el texto traducido a stdout y nada más. Los errores, sugerencias e información detallada van a stderr. Esto mantiene la salida limpia para canalizar:
# Canalizar al portapapeles (macOS)echo "Hello" | yaku --to es | pbcopy
# Canalizar a otro comandoyaku --to es -f report.en.md | wc -w
# Redirigir a archivoyaku --to es -f doc.en.md > traducido.mdSalida a archivo (-o)
Sección titulada «Salida a archivo (-o)»Escriba directamente a un archivo:
yaku --to es -f README.en.md -o README.mdyaku muestra una confirmación en stderr:
Wrote README.mdSalida detallada (--verbose)
Sección titulada «Salida detallada (--verbose)»Muestra el nombre del modelo, uso de tokens y tiempo transcurrido en stderr:
echo "Hello" | yaku --to es --verbosestdout:
Holastderr:
Model: gemini-2.5-flash | Tokens: 42 in / 38 out | Time: 1.2sComo la información detallada va a stderr, puede seguir canalizando stdout limpiamente:
echo "Hello" | yaku --to es --verbose | pbcopy# El portapapeles recibe "Hola", la terminal muestra la información del modeloSanitización de salida
Sección titulada «Sanitización de salida»yaku limpia automáticamente artefactos comunes del LLM en el texto traducido:
- Elimina preámbulos — remueve prefijos no deseados como “Here is the translation:” o “Translation:”
- Elimina explicaciones finales — remueve notas que el LLM agrega después de un doble salto de línea (ej., “Note: I translated X as Y because…”)
- Elimina comillas envolventes — remueve envoltorios
"texto"o「texto」que el LLM a veces agrega - Elimina bloques de código — remueve envoltorios
```alrededor de la salida
Esto se ejecuta en todos los backends automáticamente. No necesita activarlo.