Изменить команду по умолчанию для Mercurial - PullRequest
2 голосов
/ 20 декабря 2011

по умолчанию, просто набрав 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 Ответ

4 голосов
/ 20 декабря 2011

Нет, в 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, по-прежнему вызывают справку.

...