2011-12-20 212 views
2

,只需在命令提示符下键入hg将显示基本帮助 - 当然,新手有什么好处。默认情况下修改默认命令:默认命令为

但是有没有办法修改这个,以便例如显示当前的摘要? (即当输入hg时得到hg sum的结果)。


BTW: 我要做到位的。也就是说,具有配置这样

[alias] 
, = glog -l5 --template "{rev}:{node|short} [{tags}] {desc|firstline}\n" 
. = !%HG% sum && echo. && echo *** GUARDS *** && %HG% qsel && echo. && echo *** applied PATCHES *** && %HG% qap 

我只是想知道这是否可以进一步优化一个字符的别名。

回答

4

不,Mercurial没有这样的功能。你可以用小扩展做到这一点,虽然:

import sys 
from mercurial import dispatch, extensions, commands 

def uisetup(ui): 
    extensions.wrapfunction(commands, 'help_', default) 

def default(orig, ui, repo, **opts): 
    if len(sys.argv) == 1: 
     # No command given 
     sys.argv.append('summary') 
     return dispatch.run() 
    else: 
     return orig(ui, repo, **opts) 

把上面的调用,比如文件,default.py和加载扩展。现在hg将会像hg summary一样运行,像hg add -h这样的东西仍然会触发该帮助。

+0

太棒了!这正是我想要的方式。谢谢。 – 2011-12-20 20:24:00