Open patrickaldis opened 1 year ago
Ah my apologies, I didn't see this. Out of interest, why do you think it's out of scope for the project?
a terminal is a fixed grid of character cells. There isn't a smooth scrolling concept for them. A terminal emulator models the behavior of that kind of terminal. Pixel level scrolling is difficult to map to that because you'd need to dynamically switch to partially showing rows from either the top or bottom depending on the direction of scrolling, and that has ramifications for the rest of the rendering machinery.
It adds complexity and I just don't feel that it is necessary.
VT320 terminals had it. It looks awesome, especially on a CRT with slower phosphors. It had issues with eightfolding the redraw time, but it looked great.
Alacritty does this afak.
VT320 terminals had it.
Indeed it does look good. I think it would be a great feature.
Since it hasn't been said in here yet:
The main UX benefit of smooth scrolling is that it is much easier to see visually how far you're scrolling.
Check this video comparing wezterm
with gnome-terminal
:
https://github.com/wez/wezterm/assets/399535/be0185af-d371-43ff-8e14-725b34804a50
wezterm
, it is impossible to see how far you've scrolled, leading to loss of context.
You have to think "OK, where am I now?"gnome-terminal
it's super clear.
It would be great to be able to use precision scrolling when scrolling back through the terminal. i.e. scrolling 1-1 with touchpad, not just jumping back a line at a time.
This could be implemented as a configuration option - I know in a terminal emulator pixel by pixel scrolling might not be everyone's cup of tea.