iTerm2 – scroll less output with mouse
Solution 1
The iTerm2 issue is now marked as "fixed" -
but the fix is to add a hidden option, so it is not immediately obvious
how to enable the new AlternateMouseScroll
option.
As Filippo Valsorda (author of the patch) writes, once you install a nightly build (still not present in 1.0.0.20140629) of iTerm2, just run this command:
$ defaults write com.googlecode.iterm2 AlternateMouseScroll -bool true
restart iTerm2, and all your windows will report scroll events as up/down arrow-key escapes when the terminal is in the "alternate screen" (direct addressing) mode used by programs like less, vim, emacs, etcetera.
For applications like vim and emacs that provide additional mouse support, you will still want to enable mouse reporting mode, as this automatic mode switch only enables scrolling.
Solution 2
Now it is implemented in iTerm2 and can be activated by
Settings -> Advanced -> Scroll wheel sends arrow keys when in alternate screen mode and change it to Yes
(defaults write com.googlecode.iterm2 AlternateMouseScroll -bool true
still works but it just changes the same setting)
Solution 3
Finally did it, I've been spending a lot of time on this looking here and there with no luck, the simplest steps are:
Install the 2.9 beta version
Done
Solution 4
This isn't implemented as of now.
There is an open issue in the iTerm 2 issue tracker about implementing it.
Solution 5
The latest version of less supports the --mouse
and related flags so there's no need send arrow keys to alternate screens.
Ruben Verborgh
I’m a professor of Semantic Web technology at IDLab, Ghent University – imec, and a research affiliate at the Decentralized Information Group of CSAIL at MIT. I’m also a technology advocate for Inrupt, supporting the Solid ecosystem that gives you back control and choice—online and offline. I love discussing about the Web, Linked Data, decentralization, Web APIs, hypermedia clients, and much more.
Updated on July 12, 2022Comments
-
Ruben Verborgh almost 2 years
I just switched from OSX Terminal to iTerm2, and I seem to have lost one piece of functionality. In Terminal, I could scroll through output of the
less
command with my mouse, because I had installed MouseTerm.However, when I try scrolling
less
output in iTerm2, the window's scrollbar moves instead. Strangely, scrolling works as expected withvim
.How can I scroll
less
output with my mouse in iTerm2? -
Ruben Verborgh about 11 yearsYep, that was added in response to my question here and on the iTerm2 mailing list.
-
Steven Lu almost 10 yearsAwesome! Except this doesn't work when inside of
tmux
.less
inside oftmux
has it responding as it usually does where the scroll will access the tmux pane history. Scratching my head a little bit. I can't look into this now but I wonder if there's a way to telltmux
to treatless
in a special way. I think it's that tmux believes (correctly...) that less doesn't process the mouse wheel, and so it continues to override wheel functionality. -
Alex Dupuy almost 10 yearsPer the comments at Filippo Valsorda's original post I suspect that you need to add
set-window-option -g mode-mouse on
to your~/.tmux.conf
file. -
r1ckr over 8 yearsThis doesn't work for me, I have iTerm 2.1.1 and I've tried all here says.
-
krs013 about 7 yearsOne of SE's greatest weaknesses is that there's not a reliable mechanism to promote more up-to-date answers like this here, unless a lot of people vote or the OP comes back and changes the accepted answer.
-
Don Giulio over 6 yearsThis doesn't seem to work on iterm2 build 3.1.5, any clues?
-
Pylinux over 6 years@dongiulio tried restarting the terminal and or mac?
-
AlessioX about 6 yearsin iTerm2 3.1.5 this solution works perfectly, and no restarts are required
-
Jonauz over 5 yearsWorked at the beginning, but not anymore. Using v3.1.7. Any other suggestion?
-
Pylinux over 5 years@Jonauz Try updating and or restarting iTerm, it works perfectly fine for me on v3.2.0
-
Johnny_D over 5 yearsDoesn't work on 3.2.6 when while using git diff. Any suggestions?
-
Wildcard over 3 yearsIn Vim on iTerm2, I just scrolled up and down with the mouse wheel (didn't work), then tapped the up and down arrow keys, and a little notice popped up at the top of the window asking me if I wanted the mouse wheel to scroll in graphical programs. Clicked yes and everything is peachy. Nice. :)
-
Matthias almost 2 yearsGit defaults to setting
less -FRSX
, where -X disables this scroll-wheel behavior (for some reason). You can enable scrolling by setting the git pager withgit config --global core.pager 'less -FRS'