# HG changeset patch # User FUJIWARA Katsunori # Date 2013-12-01 15:50:30 # Node ID acb6cceaffd5ca77a2d4b44b273b7af8a7cb04ee # Parent 27d3f1fe42ac9e7d929c02fabef97c9335eccc75 transplant: use "ui.extractchoices()" to show the list of available responses Before this patch, transplant extension shows the list of available responses by specific string, even though the prompt string passed to "ui.promptchoice()" has enough (maybe i18n-ed) information. This patch uses "ui.extractchoices()" to show the list of available responses. diff --git a/hgext/transplant.py b/hgext/transplant.py --- a/hgext/transplant.py +++ b/hgext/transplant.py @@ -451,15 +451,6 @@ def hasnode(repo, node): def browserevs(ui, repo, nodes, opts): '''interactively transplant changesets''' - def browsehelp(ui): - ui.write(_('y: transplant this changeset\n' - 'n: skip this changeset\n' - 'm: merge at this changeset\n' - 'p: show patch\n' - 'c: commit selected changesets\n' - 'q: cancel transplant\n' - '?: show this help\n')) - displayer = cmdutil.show_changeset(ui, repo, opts) transplants = [] merges = [] @@ -477,7 +468,8 @@ def browserevs(ui, repo, nodes, opts): while not action: action = 'ynmpcq?'[ui.promptchoice(prompt)] if action == '?': - browsehelp(ui) + for c, t in ui.extractchoices(prompt)[1]: + ui.write('%s: %s\n' % (c, t)) action = None elif action == 'p': parent = repo.changelog.parents(node)[0] diff --git a/tests/test-transplant.t b/tests/test-transplant.t --- a/tests/test-transplant.t +++ b/tests/test-transplant.t @@ -493,13 +493,13 @@ test interactive transplant > EOF 1:d11e3596cc1a apply changeset? [ynmpcq?]: unrecognized response - apply changeset? [ynmpcq?]: y: transplant this changeset - n: skip this changeset + apply changeset? [ynmpcq?]: y: yes, transplant this changeset + n: no, skip this changeset m: merge at this changeset p: show patch c: commit selected changesets - q: cancel transplant - ?: show this help + q: quit and cancel transplant + ?: ? (show this help) apply changeset? [ynmpcq?]: 4:a53251cdf717 apply changeset? [ynmpcq?]: (no-eol) $ hg heads --template "{node|short}\n"