Easy scrolling with tmux and alacritty

terkwood

Felix Terkhorn

Posted on April 29, 2020

Easy scrolling with tmux and alacritty

We want to have a nice experience when scrolling the terminal buffer using both alacritty and tmux on Debian linux.

When we run alacritty and tmux together and there's a lot of text on the screen (say, by invoking tree), we need to hit the following tmux key sequence to scroll back through the terminal history:

Ctrl+B 
[
PageUp
Enter fullscreen mode Exit fullscreen mode

This is difficult. Others have asked about this.

We followed the workaround advice given by the author. We enabled mouse mode, and disabled faux scrolling in .tmux.conf:

set -g mouse on
set -ga terminal-overrides ',*256color*:smcup@:rmcup@'
Enter fullscreen mode Exit fullscreen mode

In .alacritty.conf, the default scrolling key combination, Shift+PageUp, isn't too bad. We can just leave it commented to use it, but if we want to try our own settings, we can:

key_bindings:
#
# ...snip...
#
- { key: PageUp,   mods: Shift, action: ScrollPageUp,   mode: ~Alt       }
- { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt       }
- { key: Home,     mods: Shift, action: ScrollToTop,    mode: ~Alt       }
- { key: End,      mods: Shift, action: ScrollToBottom, mode: ~Alt       }
Enter fullscreen mode Exit fullscreen mode

Resolution

With the changes to .tmux.conf, we can now start an alacritty terminal, enter tmux, and scroll to our hearts' content, without using a difficult key combination.

šŸ”„ It's FAST! šŸ”„

We found that scrolling through history with some basic command line apps wasn't negatively impacted.

When we entered tmux + alacritty, and then dumped a lot of text into less, or navigated man bash, we scrolled happily and without interruption.

These instructions probably apply to other terminal emulators, as well.

This is a happy time. šŸ˜„

šŸ’– šŸ’Ŗ šŸ™… šŸš©
terkwood
Felix Terkhorn

Posted on April 29, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related