您的位置:首页 > 手游攻略 > tmux-better-mouse-mode:实践指南

tmux-better-mouse-mode:实践指南

作者:互联网  时间: 2026-09-11 14:50:01  

实际评估tmux-better-mouse-mode时,我先确认它解决的具体问题:一个 tmux 插件,可以更好地管理和配置鼠标。团队若要把它用于日常自动化,应先处理输入边界、依赖和失败处理如果不清楚就很难稳定复用,否则试用结果很容易失真。先用一项范围明确的真实任务完成最小试跑更稳妥;过程中要观察配置时间、输出质量、异常信息和维护痕迹,失败也应能解释原因。编辑判断上,愿意先做小范围验证并复查原始文档的团队可以优先研究它;其他团队不必为了热门标签勉强接入。

Tmux 更好的鼠标模式

一个 tmux 插件,可以更好地管理鼠标。

提供控制 tmux 中鼠标行为的选项,因此它将完全按照您想要的方式运行:

  • 模拟不提供内置鼠标支持的全屏程序(例如 less)的鼠标支持。
  • 退出 copy-mode 并通过向后滚动至底部返回到提示符。
  • 调整你的滚动速度。
  • 还有更多!

最后,tmux 2.1 版引入了对鼠标行为的向后不兼容的更改,并且该插件恢复了旧的鼠标行为。 tmux 2.2 版主要恢复了 2.0 鼠标行为,但该插件改进了 tmux 鼠标模式,超越了这些更改,并为您提供了更多控制。

要求

该插件适用于 tmux 2.1 及更高版本。它不适用于 2.0 或更低版本。

NOTE:此插件提供“更改”鼠标模式行为的选项,但不启用鼠标模式。

要在 tmux 2.1+ 中启用鼠标模式,请将以下行放入 ~/.tmux.conf 中:

set-option -g mouse on

键绑定

该插件将覆盖 tmux 中 WheelUpPaneWheelDownPane 的值,以配置鼠标滚动。

要查看这些变量的当前设置,请检查 tmux list-keys -T root 的输出。

使用 Tmux 插件管理器 安装(推荐)

  1. 将此插件添加到 .tmux.conf 中的 TPM 插件列表中:

     set -g @plugin 'nhdaly/tmux-better-mouse-mode'
    
  2. prefix + I 或运行 $TMUX_PLUGIN_MANAGER_PATH/tpm/scripts/install_plugins.sh 来获取插件并获取它。您现在应该能够 使用插件。

  3. 要在 tmux 2.1+ 中启用鼠标模式,请将以下行放入 .tmux.conf 中:

     set-option -g mouse on
    

手动安装

  1. 克隆存储库:

     $ git clone https://github.com/nhdaly/tmux-better-mouse-mode ~/clone/path
    
  2. 将此行添加到 .tmux.conf 的底部:

     run-shell ~/clone/path/scroll_copy_mode.tmux
    
  3. 重新加载TMUX环境:

     # type this in terminal
     $ tmux source-file ~/.tmux.conf
    

您现在应该可以使用该插件了。

配置

.tmux.conf 中设置这些选项。例如,set -g @scroll-down-exit-copy-mode "off" 禁用向下滚动退出复制模式。

  • scroll-down-exit-copy-mode - 启用后,当滚动到达回滚历史记录的底部时,窗格退出 copy-mode

    • “on”(默认)- 滚动可以退出 copy-mode
    • “off” - 滚动到底部将保留在 copy-mode 中。
  • scroll-without-changing-pane - 启用后,滚动鼠标将不会选择鼠标悬停的窗格,从而允许您滚动窗口仅读取先前的输出,然后继续在当前窗格中键入。启用此功能是对 tmux 2.0 设置的更改,但可能是一项改进。

    • “on” - 滚动事件发送到鼠标悬停的窗格。
    • “off”(默认)- 滚动事件保留在当前选定的窗格中。
  • scroll-in-moused-over-pane - 启用后,用鼠标在窗格上滚动将在该窗格(而不是当前选定的窗格)中执行滚动。如果 scroll-without-changing-pane 设置为 "off",这也将选择鼠标悬停的窗格。

    • “on”(默认)- 滚动事件选择并滚动鼠标悬停的窗格。
    • “off”- 除非鼠标位于当前选定的窗格上,否则滚动事件将被忽略。
  • scroll-speed-num-lines-per-scroll - 设置每个鼠标滚轮滚动事件要滚动的行数。默认选项为 3,即 tmux 2.0 中的滚动速度。数字越大滚动速度越快。要将滚动速度减慢到每滚轮单击一行慢,请将该值设置为 0.0 到 1.0 之间的小数。使用十进制值时,只有那部分车轮事件才会生效。该值必须 > 0。示例:

    • “3”(默认)- 每次单击鼠标滚轮滚动三行。
    • “1” - 每次鼠标滚轮滚动单击一行(最平滑)。
    • “0.5” - 每隔鼠标滚轮滚动一次,仅滚动一行。
    • “0.25” - 每滚动四次鼠标滚轮,仅滚动一行。
  • emulate-scroll-for-no-mouse-alternate-buffer - 启用后,tmux 将模拟“全屏”滚动,备用缓冲程序,例如 lessmanvi 本身尚不支持鼠标交互。它不会输入 copy-mode,也不会滚动窗格输出历史记录,而是发送 <up-arrow> () 和<down-arrow>() 应用程序的密钥。滚动速度也是通过上面的@scroll-speed-num-lines-per-scroll来设置的。 该选项默认为“off”,与 tmux 2.0 中的行为匹配。但请注意,这种默认行为可能是不可取的,因为在进入全屏备用缓冲程序时窗格历史记录会被破坏。我想说的是,这是一个非常好的选择。

    • “on” - 键在滚动事件上传递到备用缓冲区程序。
    • “off”(默认)- 滚动事件导致窗格输出回滚。

灵感

受到 David Verhasselt 关于 Tmux 2.1 对鼠标支持和滚动的更改的深入文章的启发: http://www.davidverhasselt.com/better-mouse-scrolling-in-tmux/

最新游戏

更多

Copyright©2010-2019. All rights reserved | 波波三国游戏官网|[email protected]

备案编号:湘ICP备2022015115号-4