【iTerm2 实用技巧】解决两大顽疾:历史记录看不全 & 鼠标滚轮失灵

作为 Mac 上的终端利器,iTerm2 的强大毋庸置疑。但在日常使用中,我们偶尔会遇到一些让人摸不着头脑的"小毛病",其中最典型的两个就是:

  1. 执行 git log、cat 等命令后,输出的内容太长,无法向上滚动查看全部历史。
  2. 在 git log (其实是 less 分页器) 或 vim 等界面中,键盘上下键可以滚动,但鼠标滚轮却完全失灵。

今天就来分享如何通过两个简单的设置,彻底解决这两个问题。


问题一:历史记录被"截断",看不全了

症状:当命令输出超过一屏时,你试图用触控板或鼠标滚轮向上滚动,却发现内容在某个位置被硬生生截断,无法查看更早的输出。

病因:iTerm2 的「回滚缓冲区」大小限制了能保留的历史行数。

药方:扩大甚至取消这个限制。

操作步骤:

  1. 打开 iTerm2 Preferences (Command + ,)。
  2. 进入 Profiles 标签页,选择你正在使用的 Profile(通常是 Default)。
  3. 切换到 Terminal 子标签。
  4. 找到 Scrollback Buffer 区域。
  5. ✅ 直接勾选 Unlimited scrollback (无限回滚)是最简单粗暴的解决方式。
    • 或者,你也可以在 Scrollback lines 中输入一个足够大的数字,例如 100000。

完成此设置后,你的 iTerm2 就能保存海量的历史输出,再也不用担心内容被截断了。


问题二:鼠标滚轮在分页器里"罢工"了

症状 :在 git log、man 手册或 vim 编辑器中,鼠标滚轮无法滚动内容,但使用键盘的上下箭头键却一切正常。

病因:iTerm2 的一个高级设置控制了在"交替屏幕模式"下鼠标滚轮的信号发送方式。

药方:切换这个设置的开关状态。

操作步骤:

  1. 打开 iTerm2 Preferences (Command + ,)。
  2. 这次进入 Advanced 标签页(它藏在窗口左上角,General 选项卡的旁边)。
  3. 在顶部的搜索框中输入 scroll wheel,快速过滤设置项。
  4. 找到 Mouse 分类下的 Scroll wheel sends arrow keys when in alternate screen mode 选项。
  5. 尝试切换它的状态 :
    • 如果当前是 No,就改为 Yes。
    • 如果当前是 Yes,就改为 No。
  6. 重启 iTerm2 使设置生效,然后测试 git log 是否恢复正常滚动。

小贴士 :这个选项没有绝对的"正确"值,它取决于你的使用环境和习惯。如果一种状态不行,务必尝试另一种。根据经验,在很多情况下,将其设置为 Yes 可以解决滚轮失灵的问题。


总结

记住这两个设置的位置,你就能轻松搞定 iTerm2 最常见的两大滚动问题:

  • 历史记录被截断 -> Profiles -> Terminal -> Scrollback Buffer
  • 鼠标滚轮失灵 -> Advanced -> Scroll wheel sends arrow keys when in alternate screen mode

希望这篇短文能帮你提升 iTerm2 的使用体验。如果觉得有用,欢迎点赞和收藏!你在使用 iTerm2 时还遇到过什么其他"怪病"吗?欢迎在评论区留言讨论。


相关推荐
Data analyse45618 小时前
App埋点版本兼容的字段迁移校验
大数据·运维·服务器·前端·数据库·数据分析
todoitbo18 小时前
本来只想给内网开个口子,Natapp 却多给了一道防护
前端·javascript·vue.js·内网穿透·网络防护·natapp
会灭火的程序员18 小时前
SuperMap AgentX Server智能体接入WEB应用技术文档
前端·supermap·agentx·agentx server
CRMEB18 小时前
商品 SKU 设计,从简单规格到多规格踩过什么
java·前端·数据库·开源
Chloe.Zz18 小时前
一篇入门Agent
开发语言·前端·javascript
java1234_小锋18 小时前
【技术专题】HTML5 网页技术 - HTML5 表格标签
前端·html·html5
雪芽蓝域zzs19 小时前
JS 项目转 TS 项目(Vue3 + 若依这类后台项目)完整改造清单
前端·vue.js
定栓19 小时前
Webpack迁到Vite第四节:SVG 图标系统
前端·webpack·node.js
Dovis(誓平步青云)19 小时前
车辆进入隧道后信号断开,座舱旅程怎样补回事件
java·开发语言·前端·数据库·电脑