Изменить команду по умолчанию для Mercurial
По умолчанию просто набираю hg
в командной строке покажет основную справку - что приятно новичку, конечно.
Но есть ли способ изменить это, чтобы, например, отображалось текущее резюме?
(т.е. получить результат hg sum
когда просто печатать hg
).
Кстати, то, что я делаю вместо этого, это настройка псевдонима одного персонажа следующим образом
[alias]
, = glog -l5 --template "{rev}:{node|short} [{tags}] {desc|firstline}\n"
. = !%HG% sum && echo. && echo *** GUARDS *** && %HG% qsel && echo. && echo *** applied PATCHES *** && %HG% qap
Я просто хочу знать, может ли это быть дополнительно оптимизировано.
1 ответ
Решение
Нет, в 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
все еще вызвать помощь.