我在我的扩展,扩展中使用~/.hgrc
..。
[extensions]
pager =
hgext.extdiff =
[extdiff]
# add new command that runs GNU diff(1) in 'side-by-side' mode
cmd.sdiff = sh
opts.sdiff = -c 'diff -dbB --left-column -y -W `tput cols` $0 $1'
[pager]
pager = LESS='FRX' less
attend = cat, diff, sdiff, glog, log, incoming, outgoing, lg, show, lga
这意味着我可以对自述文件使用hg sdiff README
并在并排模式中使用diff
;但是,出于某种原因,上面的tput cols
输出在运行hg sdiff
时仍然会给shell 80个字符。
如果我从sdiff
扩展中删除[pager]
,我的sdiff
将跨越整个终端宽度.
[pager]
pager = LESS='FRX' less
## Removing sdiff fixes the problem with terminal width
attend = cat, diff, glog, log, incoming, outgoing, lg, show, lga
即使我将sdiff
从[pager]
部分中删除并手动通过less
作为hg sdiff | less -FRX
,差异仍然是一个完整的终端宽度。如何使[extdiff]
和[pager]
允许并行差分的动态终端宽度?
发布于 2015-02-02 01:07:56
我找到的唯一解决办法是
[extdiff]
# add new command that runs GNU diff(1) in 'side-by-side' mode
cmd.sdiff = sh
opts.sdiff = -c 'diff -dbB --left-column -y -W `tput cols` $0 $1 | less -FRX'
我还从sdiff
部分中删除了[pager]
。在这一点上,这看起来像是一个变化无常的错误。
https://stackoverflow.com/questions/28255373
复制相似问题