Utilidades de Terminal (I/O)

Archivo: src/terminal.rs (238 líneas)

¿Por qué existe?

Proporciona operaciones de terminal en modo raw para programas Forja que necesitan entrada de teclado avanzada (teclas individuales sin esperar Enter) y detección del tamaño de la terminal. Es la base para aplicaciones TUI (Terminal User Interface) en Forja.

Implementación multi-plataforma

API Pública

FunciónDescripción
modo_raw()Activa el modo raw en la terminal (desactiva buffering de línea, eco, etc.)
modo_normal()Restaura la terminal a su modo normal
tamano_terminal()Retorna (filas, columnas) del tamaño actual de la terminal
leer_tecla()Lee una tecla individual sin esperar Enter

Uso desde Forja

Estas funciones se exponen a través del módulo terminal.fa de la stdlib, que provee funciones como modo_raw, modo_normal, tamano_terminal, y leer_tecla.

Ejemplo de uso (TUI básica)

// Ejemplo conceptual: leer teclas individuales
importar terminal

escribir("Presioná cualquier tecla (ESC para salir)...")
variable tecla = terminal.leer_tecla()
mientras (tecla != "\x1b") &brace;
    escribir("Tecla: " + tecla)
    tecla = terminal.leer_tecla()
}
💡 Relación con ANSI: El módulo terminal se complementa con ansi.fa de la stdlib, que provee códigos ANSI para colores, movimientos de cursor y estilos de texto.