Desplazamiento suave en terminales

El desplazamiento suave, píxel a píxel, en emuladores de terminal es polarizante: algunos usuarios lo consideran visualmente útil y más natural con trackpads, mientras que otros lo perciben como lento, pastoso y como algo que añade latencia no deseada frente a saltos instantáneos línea por línea. Quienes comentan revisitan terminales de hardware históricos que admitían desplazamiento suave, exploran las limitaciones técnicas en emuladores modernos y señalan que añadir scroll animado a menudo exige cambios arquitectónicos profundos. Muchos sostienen que debería seguir siendo una función opcional y altamente configurable —idealmente con comportamientos distintos para teclado, rueda del ratón y touchpad— para equilibrar capacidad de respuesta, legibilidad y preferencia personal.

Recepción general

  • Hay una fuerte división entre quienes gustan del desplazamiento suave y quienes lo desactivan en todas partes.
  • Los críticos lo describen como “pastoso”, “con lag”, visualmente distractor y como algo que añade latencia innecesaria.
  • Los partidarios dicen que ofrece una mejor continuidad visual, ayuda a seguir el punto en el que se quedaron y puede hacer que las terminales se sientan más modernas y agradables.

Dispositivos de entrada y casos de uso

  • Muchos solo desplazan terminales con PgUp/PgDn, búsqueda o paginadores y no ven ningún beneficio; quieren saltos instantáneos.
  • Los usuarios de trackpad suelen preferir un desplazamiento continuo y preciso a nivel de píxel y sienten que tienen “control directo” cuando es suave.
  • Varios quieren un comportamiento distinto según el dispositivo: suave para trackpads/ratones, discreto para el desplazamiento con teclado.
  • A algunos les gusta el desplazamiento suave específicamente en editores o Vim para leer línea por línea; otros solo se preocupan por el scrollback para volcados de comandos.

Latencia, animación y valores predeterminados

  • Una objeción recurrente es cualquier latencia añadida o tiempo de animación, especialmente al inicio y al final de los desplazamientos.
  • Algunos desactivan deliberadamente todas las animaciones de la interfaz (efectos del escritorio, transiciones del navegador, animaciones CSS) para maximizar la capacidad de respuesta.
  • Los valores predeterminados malos o lentos, y tener que volver a desactivar funciones en cada máquina, son una gran fuente de frustración.

Contexto histórico y técnico

  • Los terminales de hardware (p. ej., VT100/220/320, varios compatibles) admitían desplazamiento suave hace décadas; muchos usuarios lo mantenían desactivado porque era demasiado lento.
  • La discusión aborda cómo ese hardware antiguo lograba esto (registros del controlador CRT, regiones de desplazamiento, trucos del address start en VGA) y sus limitaciones (pantalla completa frente a regiones).
  • En principio, los emuladores/terminales modernos podrían hacerlo mejor con curvas de aceleración, desenfoque por movimiento o desplazamiento sublínea, pero la complejidad y los casos límite hacen que los mantenedores sean reacios.

Comportamiento del software moderno

  • Algunas terminales Linux basadas en VTE ya tienen desplazamiento suave; las terminales populares de macOS y Windows, en general, no.
  • VS Code y algunas aplicaciones admiten desplazamiento suave, a menudo solo para la rueda del ratón o el desplazamiento por páginas y no para movimientos de una sola línea; los comportamientos pueden ser sutiles y confusos.
  • Los navegadores difieren: el desplazamiento suave puede aplicarse solo a la navegación con teclado, mientras que los trackpads a menudo siempre desplazan suavemente.

Temas secundarios

  • A algunos usuarios les gusta el estilo visual (fondos con paralaje, efectos CRT retro); otros encuentran la transparencia y las imágenes detrás del texto inutilizablemente distractoras.
  • Hay una breve discusión meta sobre cómo expresar desacuerdo sin sonar pasivo-agresivo.