2011-12-20 255 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