Windows上的Mercurial 1.5分页
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows上的Mercurial 1.5分页相关的知识,希望对你有一定的参考价值。
我正在尝试设置用于Mercurial的寻呼机但是输出是空的,即使我在[pager]
部分中指定了命令或者作为PAGER
环境变量。
我注意到提供的命令是用cmd.exe
启动的。这是空输出的原因,如果是,那么正确的语法是什么?
环境:Mercurial 1.5,Mercurial 1.4.3
hgrc:
[extensions]
pager =
[pager]
pager = d: oolslessless.exe
示例命令行(来自Process Explorer):
hg diff
c:windowssystem32cmd.exe /c "d: oolslessless.exe 2> NUL:"
d: oolslessless.exe
UPDATE
在pager.py中,通过替换:
sys.stderr = sys.stdout = util.popen(p, "wb")
同
sys.stderr = sys.stdout = subprocess.Popen(p, stdin = subprocess.PIPE, shell=False).stdin
我设法获得了hg status和diff的所需输出。
但是,我确定这是错误的(或者至少是不完整的),我无法控制寻呼机应用程序(less.exe):输出显示在cmd.exe窗口中,我可以看到较少的提示(:)但任何进一步的输入都输入cmd.exe。似乎寻呼机应用程序仍然在后台处于活动状态:在cmd.exe窗口中键入exit后,我可以控制寻呼机应用程序,我可以正常终止它。
此外,我选择的寻呼机应用程序也没有区别(更多的是表现相同)。
更新2
我已经修改了寻呼机扩展以使用临时文件来存储命令输出,结果扩展可以在CodePlex和Bitbucket上找到。
你在pager extension或~/.hgrc
文件中启用了mercurial.ini
吗?
[extensions]
pager =
它是你的mercurial安装,但你仍然需要启用它。
以上是关于Windows上的Mercurial 1.5分页的主要内容,如果未能解决你的问题,请参考以下文章
如何让 Windows 上的 TortoiseHg (Mercurial) 使用生成的私钥文件(由 Puttygen 生成)?
Windows 7 64 位上的 MercurialEclipse:不安装“Mercurial 的 Windows 二进制文件”
Mercurial:两个Windows开发人员,我的PC上的中央存储库。我应该在中央存储库中工作还是从中克隆?