You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让less分页器完整显示iTerm2图片协议行并保留文本分页?

让less兼容iTerm2内联图片并正常分页的方法

不用完全关闭git diff的分页,通过配置less的参数就能实现:既让iTerm2正常显示图片,又能对普通文本内容分页。

步骤1:修改git的分页配置

打开~/.gitconfig,把[pager]部分改成下面这样,无需再设置diff=false:

[pager]
    diff = less -R -F -X

参数说明:

  • -R:核心作用,让less完整保留ANSI转义序列(包括iTerm2图片用的ESC ] 1337 ... ^G协议),直接输出给终端,不会截断或解析成乱码。
  • -F:如果diff内容不满一屏,自动退出less,不用手动按q。
  • -X:禁止less退出时清屏,避免刚显示的图片被立刻擦掉。

步骤2:全局配置less(可选)

如果想让所有依赖less的命令都默认用这些参数,在~/.zshrc或~/.bashrc里添加一行:

export LESS="-R -F -X"

新开终端后生效,这样git diff和其他工具都会自动适配iTerm2的图片显示。

关键原理

之前的乱码是因为默认less会把长转义序列当成普通文本处理,甚至截断行。而-R参数让less识别这类特殊转义序列,完整传递给终端,iTerm2就能正确解析渲染图片,同时less依然会对普通文本正常分页。

另外要确保你的imgdiff脚本输出的图片转义序列是完整的一行(无换行),这样less能完整处理。


内容的提问来源于stack exchange,提问作者ndbroadbent

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 06:10:00