我刚刚从OSX终端切换到iTerm2,我似乎失去了一条功能。 在终端,我可以通过输出滚动less
用我的鼠标命令 ,因为我已经安装了MouseTerm 。
然而,当我尝试滚动less
在iTerm2输出,窗口的滚动条,而不是移动。 奇怪的是,滚动按预期工作与vim
。
我如何可以滚动less
的输出与我在iTerm2鼠标?
我刚刚从OSX终端切换到iTerm2,我似乎失去了一条功能。 在终端,我可以通过输出滚动less
用我的鼠标命令 ,因为我已经安装了MouseTerm 。
然而,当我尝试滚动less
在iTerm2输出,窗口的滚动条,而不是移动。 奇怪的是,滚动按预期工作与vim
。
我如何可以滚动less
的输出与我在iTerm2鼠标?
现在被标记的iTerm2问题作为“固定” -但解决办法是添加一个隐藏的选项,所以它不会立即明显如何启用新AlternateMouseScroll
选项。
正如菲利普Valsorda(补丁的作者) 写道 ,一旦你安装iTerm2的每晚构建(仍在1.0.0.20140629不存在),只要运行这个命令:
$ defaults write com.googlecode.iterm2 AlternateMouseScroll -bool true
重新启动iTerm2,当终端处于“备用屏”所有的窗口将报告滚动事件上/下箭头键逃脱的一样都不能少,VIM,Emacs的,等等程序使用(直接寻址)模式。
对于像vim的应用程序和提供额外的鼠标支持emacs的,你仍然要启用鼠标报告模式,因为这种自动模式开关不仅使滚动。
现在,它是在iTerm2实现,并且可以通过激活
设置 - > 高级 - > 滚轮发送在替换屏幕模式时,箭头键和它更改为Yes
( defaults write com.googlecode.iterm2 AlternateMouseScroll -bool true
仍然有效,但它只是改变了相同的设置)
终于做到了,我已经在这个寻找在这里和那里没有运气花费了大量的时间,最简单的步骤是:
安装2.9测试版
完成
Not the OP's question, but for anyone here trying to get this to work in tmux, with credit to choco via this github comment here's a snippet to add to your tmux.conf to get it to handle alternate screens (e.g. less, vim) correctly:
# Check if copy-mode or any mouse flags, then send mouse events
# or check if we're in alternate screen end send navigation keys (up, down)
bind -n WheelUpPane if-shell -Ft='#{?pane_in_mode,1,#{mouse_any_flag}}' \
'send -Mt=' 'if-shell -Ft= "#{alternate_on}" \
"send -t= Up" "copy-mode -et= ; send -Mt="'
bind -n WheelDownPane if-shell -Ft= '#{?pane_in_mode,1,#{mouse_any_flag}}' \
'send -Mt=' 'if-shell -Ft= "#{alternate_on}" \
"send -t= Down" "send -Mt="'
Note, this doesn't require the Iterm preference change mentioned in other answers, but it also isn't hurt by it.
这是不作为的现在。
有一个在有关实现它的iTerm 2问题跟踪一个悬而未决的问题。