【发布时间】:2019-01-09 12:34:13
【问题描述】:
我喜欢我的标签显示为 4 个空格,为此我有偏好 core.pager = 'less -x4'。
我知道此时我在吹毛求疵,但我希望前导选项卡即使在 diff 模式下也是 4 个空格,这显然是最常用的 - 但是由于领先 +、- 或 。由于对齐的行,这有点烦人,如果有些没有前导选项卡,它们会比其他的移动 1 列。
我可以使用 less -x1,5 更正差异的显示,以获得 4 个空格的制表符,在第 1 列模 4 上对齐。但是,此选项会导致前导制表符在非差异模式下显示为 1 列,这反过来又非常令人不安。
所以对于两个具体的例子,我如何设置我使用的 git 选项:
-
less -x1,5用于差异(或真正的补丁显示)命令,例如git diff或git show HEAD -
less -x4用于不显示差异的命令,例如git show HEAD~1:package.json
我确信对于基本上 diff 和 cat 操作,必须有不同的渲染器,但我无法找到它们的特定选项(尽管它们可能存在,但有很多关于 git 主题的噪音)。我也不想写很多别名,这有点太脏了。那么这有可能吗?
【问题讨论】:
-
解决这个问题的常用方法是完全避免使用硬制表符:将您的编辑器设置为使用 4 个空格的“软”制表符,键入制表键,然后您会得到每个人都同意的空格格式。这是我为持续不断的制表符与空间之战找到的最佳答案,即使它并不那么令人满意。
-
@torek git 有一些制表符空白意识,我希望它可以使用whitespace.tabwidth 选项或类似的技巧来进行制表符扩展。毕竟它已经完成了输出的着色。
标签: git git-diff git-config git-show