Macos iTerm2和x2013;使用鼠标滚动较少的输出
我刚刚从OSX终端切换到iTerm2,我似乎失去了一项功能。 在终端中,我可以用鼠标滚动Macos iTerm2和x2013;使用鼠标滚动较少的输出,macos,terminal,scroll,mouse,iterm,Macos,Terminal,Scroll,Mouse,Iterm,我刚刚从OSX终端切换到iTerm2,我似乎失去了一项功能。 在终端中,我可以用鼠标滚动less命令的输出,因为我已经安装了 但是,当我尝试在iTerm2中滚动更少的输出时,窗口的滚动条反而会移动。 奇怪的是,在vim上滚动的效果与预期的一样 如何在iTerm2中使用鼠标滚动更少的输出?目前尚未实现 iTerm 2问题跟踪程序中有一个关于实现它的未决问题 iTerm2问题现在标记为“已修复”- 但解决办法是添加一个隐藏选项,因此它不是立即显而易见的 如何启用新的alternateMouseCro
less
命令的输出,因为我已经安装了
但是,当我尝试在iTerm2中滚动更少的输出时,窗口的滚动条反而会移动。
奇怪的是,在vim
上滚动的效果与预期的一样
如何在iTerm2中使用鼠标滚动更少的输出?
目前尚未实现
iTerm 2问题跟踪程序中有一个关于实现它的未决问题 iTerm2问题现在标记为“已修复”-
但解决办法是添加一个隐藏选项,因此它不是立即显而易见的
如何启用新的alternateMouseCroll
选项
作为Filippo Valsorda(补丁的作者),
一旦您安装了iTerm2的夜间版本(1.0.0.20140629中仍不存在),
只需运行以下命令:
$ defaults write com.googlecode.iterm2 AlternateMouseScroll -bool true
重新启动iTerm2,所有窗口都会报告上下箭头键退出时的滚动事件
当终端处于“备用屏幕”(直接寻址)模式时
用于less、vim、emacs等程序
对于提供额外鼠标支持的vim和emacs等应用程序,
您仍然希望启用鼠标报告模式,
由于此自动模式开关仅启用滚动。最后,我花了很多时间在这方面四处寻找,但运气不佳,最简单的步骤是:
安装2.9测试版
完成
现在它在iTerm2中实现,可以通过
设置->高级->滚轮在交替屏幕模式下发送箭头键,并将其更改为是
(defaults write com.googlecode.iterm2 AlternateMouseScroll-bool true
仍然有效,但它只是更改了相同的设置)这不是OP的问题,但对于任何试图在tmux中实现此功能的人来说,这里有一个代码片段要添加到您的tmux.conf中,以使其能够处理备用屏幕(例如less,vim)正确地说:
# 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="'
注意,这不需要,但也不会对其造成伤害。最新版本的less支持--鼠标和相关标志,因此无需将箭头键发送到备用屏幕。听起来您安装了某种第三方软件,因为终端不支持在使用鼠标滚动时向tty发送输入,所以它只知道如何滚动滚动条。@ChrisPage确实不错。我忘了我很久以前安装的。我在问题中澄清了这一点。是的,这是在这里和iTerm2邮件列表中回答我的问题时添加的。太棒了!除了在tmux
内部时不起作用之外less
在tmux
的内部,它会像滚动条访问tmux窗格历史记录时通常那样进行响应。我有点挠头。我现在不能研究这个问题,但我想知道是否有办法告诉tmux
以一种特殊的方式对待less
。我认为tmux(正确地…)认为less不会处理鼠标滚轮,因此它会继续覆盖滚轮功能。根据Filippo Valsorda的评论,我怀疑您需要在~/.tmux.conf
文件中添加set window option-g mode mouse on
,我有iTerm 2.1.1,我已经尝试了这里的所有内容。在iTerm 2上的Vim中,我只是用鼠标滚轮上下滚动(不起作用),然后点击上下箭头键,窗口顶部弹出一个小通知,询问我是否希望鼠标滚轮在图形程序中滚动。点击是的,一切都很美好。不错。:)SE最大的弱点之一是,这里没有一个可靠的机制来推广更多像这样的最新答案,除非有很多人投票或OP回来改变被接受的答案。这似乎对iterm2 build 3.1.5不起作用,有什么线索吗?@dongiulio尝试重新启动终端和/或mac?在iTerm2 3.1.5中,此解决方案运行良好,无需重新启动。当使用git diff时,在3.2.6中不起作用。有什么建议吗?