Skip to main content
La ayuda al escribir — sugerencia en gris, lista mientras tecleas — no es una función de terminal. Es una función de editor de texto. En una rejilla de celdas que pinta el shell no hay dónde dibujar una sugerencia: el zle de zsh y el readline de bash son dueños de la línea, del cursor y del redibujado. La salida es dejar de permitir que el shell dibuje la línea. Eso hace la línea de comandos de TYBA: el PS1 sale de la pantalla y la caja donde escribes pasa a ser de la app.
Viene encendida. Una instalación nueva ya abre con ella. Para apagarla, usa Configuración → Code → Línea de comandos de TYBA, en el interruptor Usar la línea de TYBA. La elección vale para sesiones nuevas — el modo se aplica al nacer el shell, así que la sesión ya abierta sigue como está.

Lo que ganas

Completar comandos

La sugerencia ya no depende de que hayas ejecutado eso antes. Cada parte de la línea la completa quien sabe de ella: El orden no es alfabético. Lo que más usas, y usaste hace menos, sube.
La primera palabra viene de dos fuentes porque ninguna alcanza sola. La app lee el $PATH del disco, que no le cuesta nada al shell. Pero nvm, asdf y direnv reescriben el $PATH después de que nace la sesión, y los alias y funciones no existen en disco — esos los informa el propio shell, por sesión. El resultado es la lista que verías escribiendo en tu terminal, no la que la app imaginaría.
⌘L (Ctrl+Alt+L fuera de macOS) limpia la pantalla sin cerrar la sesión.

El historial que ya tienes

La primera vez, TYBA importa el historial de tu shell — zsh, bash y fish — para que la sugerencia nazca sabiendo lo que ejecutas, en vez de esperar a que lo escribas todo de nuevo. Es solo lectura: los archivos de historial de tu shell no se modifican. Para buscar dentro de él con alcance y filtros, mira la paleta de comandos.

Quién recibe la tecla

La línea de TYBA no siempre es la dueña del teclado, y eso es corrección, no comodidad: ssh, psql, python, el sudo pidiendo contraseña — todos leen lo que escribes durante el comando. Una caja que se tragara esas teclas recibiría tu contraseña y no la enviaría a ninguna parte. Ctrl+C, Ctrl+D y Ctrl+Z llegan al proceso incluso con la línea enfocada — son señales, no texto. Ctrl+C además vacía la caja, que es lo que esperas de él.
Mientras un comando corre, las flechas arriba y abajo no llegan al programa si la terminal está esperando una línea entera. Ahí no servirían de nada y aun así aparecerían como ^[[A en la salida guardada. En vim, htop o un menú que lee tecla a tecla, pasan con normalidad.

Si algo se traba

Alt+~ dentro de la terminal devuelve el prompt del shell al instante, sin cerrar la sesión ni perder lo que está corriendo.
Es la válvula de escape, y existe porque la heurística puede fallar en un shell con configuración exótica. Para volver del todo, apaga el interruptor en Configuración — las sesiones ya abiertas siguen como están hasta que abras otra.

Dónde funciona

Sin los marcadores de la shell integration no hay forma de saber que el shell está en el prompt. En ese caso TYBA degrada a la terminal clásica en lugar de adivinar.

Mira también

Bloques de comando

Lo que la línea de TYBA activa junto con ella.

Shell integration

El prerrequisito, y por qué no toca tus dotfiles.

Paleta de comandos

El historial y los snippets también viven ahí, sin depender de esta página.

Configuración de usuario

Dónde vive el interruptor, y el resto de la sección Code.