Rolagem Suave no Terminal

A rolagem suave, pixel a pixel, em emuladores de terminal é polarizadora: alguns usuários a consideram visualmente útil e mais natural com trackpads, enquanto outros a percebem como lenta, pastosa e como algo que adiciona latência indesejada em comparação com saltos instantâneos linha a linha. Os comentadores revisitam terminais de hardware históricos que suportavam rolagem suave, exploram restrições técnicas em emuladores modernos e observam que adicionar rolagem animada frequentemente exige mudanças profundas de arquitetura. Muitos argumentam que ela deveria permanecer um recurso opcional e altamente configurável — idealmente com comportamentos diferentes para entrada por teclado, roda do mouse e touchpad — para equilibrar responsividade, legibilidade e preferência pessoal.

Recepção geral

  • Há uma forte divisão entre quem gosta de rolagem suave e quem a desativa em todo lugar.
  • Críticos a descrevem como “pastosa”, “lenta”, visualmente distrativa e como algo que adiciona latência desnecessária.
  • Defensores dizem que ela oferece melhor continuidade visual, ajuda a acompanhar onde pararam e pode tornar os terminais mais modernos e agradáveis.

Dispositivos de entrada e casos de uso

  • Muitos só rolam terminais com PgUp/PgDn, busca ou pagers e não veem benefício; eles querem saltos instantâneos.
  • Usuários de trackpad ხშირად preferem rolagem contínua e precisa em pixels e sentem que têm “controle direto” quando ela é suave.
  • Vários querem comportamentos diferentes por dispositivo: suave para trackpads/mouses, discreto para rolagem por teclado.
  • Alguns gostam de rolagem suave especificamente em editores ou no Vim para leitura linha por linha; outros só se importam com o scrollback para dumps de comandos.

Latência, animação e padrões

  • Uma objeção recorrente é qualquer latência adicional ou tempo de animação, especialmente no início/fim das rolagens.
  • Alguns desativam deliberadamente todas as animações de interface (efeitos do desktop, transições do navegador, animações CSS) para maximizar a responsividade.
  • Padrões ruins ou lentos, e ter de desativar novamente os recursos em cada máquina, são uma grande fonte de frustração.

Contexto histórico e técnico

  • Terminais de hardware (por exemplo, VT100/220/320, vários compatíveis) suportavam rolagem suave há décadas; muitos usuários a mantinham desligada porque era lenta demais.
  • A discussão cobre como o hardware antigo conseguia isso (registradores do controlador CRT, regiões de rolagem, truques de endereço inicial do VGA) e limitações (tela inteira versus regiões).
  • Emuladores/terminais modernos poderiam, em princípio, fazer melhor com curvas de aceleração, motion blur ou rolagem sublinha, mas a complexidade e os casos de borda deixam os mantenedores hesitantes.

Comportamento de software moderno

  • Alguns terminais Linux baseados em VTE já têm rolagem suave; terminais populares no macOS e no Windows geralmente não têm.
  • VS Code e alguns apps suportam rolagem suave, muitas vezes apenas para a roda do mouse ou rolagem por página, e não para movimentos de uma linha; os comportamentos podem ser sutis e confusos.
  • Os navegadores diferem: a rolagem suave pode se aplicar apenas à navegação por teclado, enquanto trackpads muitas vezes sempre rolam suavemente.

Tópicos secundários

  • Alguns usuários apreciam o apelo visual (fundos com parallax, efeitos CRT retrô); outros acham transparência e imagens atrás do texto inutilmente distrativas.
  • Há uma breve meta-discussão sobre como expressar discordância sem soar passivo-agressivo.