Ir al contenido

Entrada y salida

yaku acepta entrada de tres formas, verificadas en este orden:

PrioridadMétodoEjemplo
1 (más alta)Archivo (-f)yaku --to es -f article.en.txt
2Argumento posicionalyaku --to es "Hello, world"
3Pipe de stdinecho "Hello" | yaku --to es
4 (más baja)Entrada interactivayaku --to es luego escriba texto + Ctrl+D

Si se proporcionan múltiples, la fuente de mayor prioridad gana.

Traduzca uno o más archivos. Cuando se proporcionan múltiples archivos, sus contenidos se concatenan:

Ventana de terminal
# Un solo archivo
yaku --to es -f README.en.md
# Múltiples archivos
yaku --to es -f chapter1.en.md -f chapter2.en.md

yaku 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.

Pase texto corto directamente en la línea de comandos:

Ventana de terminal
yaku --to es "Good morning"
yaku --to es "The meeting is tomorrow at ten."

Múltiples argumentos se unen con espacios:

Ventana de terminal
yaku --to es Hello world
# Traduce "Hello world"

Canalice texto desde otro comando:

Ventana de terminal
echo "Hello, world" | yaku --to es
cat article.en.md | yaku --to es
git log --oneline -5 | yaku --to es
curl -s https://example.com/api/docs | yaku --to es

stdin 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 es en 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.

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:

Ventana de terminal
# Canalizar al portapapeles (macOS)
echo "Hello" | yaku --to es | pbcopy
# Canalizar a otro comando
yaku --to es -f report.en.md | wc -w
# Redirigir a archivo
yaku --to es -f doc.en.md > traducido.md

Escriba directamente a un archivo:

Ventana de terminal
yaku --to es -f README.en.md -o README.md

yaku muestra una confirmación en stderr:

Wrote README.md

Muestra el nombre del modelo, uso de tokens y tiempo transcurrido en stderr:

Ventana de terminal
echo "Hello" | yaku --to es --verbose

stdout:

Hola

stderr:

Model: gemini-2.5-flash | Tokens: 42 in / 38 out | Time: 1.2s

Como la información detallada va a stderr, puede seguir canalizando stdout limpiamente:

Ventana de terminal
echo "Hello" | yaku --to es --verbose | pbcopy
# El portapapeles recibe "Hola", la terminal muestra la información del modelo

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.