[PATCH V4] record: make hg record always use the non curses interface
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Tue May 19 13:40:13 CDT 2015
On 05/19/2015 12:02 PM, Laurent Charignon wrote:
>
>
> On 5/19/15, 9:35 AM, "Pierre-Yves David" <pierre-yves.david at ens-lyon.org>
> wrote:
>
>>
>>
>> On 05/15/2015 02:41 PM, Pierre-Yves David wrote:
>>>
>>>
>>> On 05/14/2015 07:46 AM, Laurent Charignon wrote:
>>>> # HG changeset patch
>>>> # User Laurent Charignon <lcharignon at fb.com>
>>>> # Date 1431574212 25200
>>>> # Wed May 13 20:30:12 2015 -0700
>>>> # Node ID 6646328ce93ff8071ad87f68ee7320759b7a1144
>>>> # Parent 7c324f65e4efb3310f7664df3da94363bef76765
>>>> record: make hg record always use the non curses interface
>>>>
>>>> Before this patch, hg record was running hg commit -i, therefore with
>>>> the
>>>> experimental.crecord=True flag, hg record was actually launching the
>>>> curses
>>>> record interface. Some of our users could be confused by that.
>>>> This patch makes the hg record command set this flag to False,
>>>> ensuring that
>>>> hg record never shows the curses interface.
>>>> commit -i, shelve -i and revert -i remain unchanged and use the curses
>>>> interface if the experimental.crecord flag is set.
>>>>
>>>> diff --git a/hgext/record.py b/hgext/record.py
>>>> --- a/hgext/record.py
>>>> +++ b/hgext/record.py
>>>> @@ -50,7 +50,12 @@
>>>> This command is not available when committing a merge.'''
>>>>
>>>> opts["interactive"] = True
>>>> - commands.commit(ui, repo, *pats, **opts)
>>>> + backup = ui.backupconfig('experimental', 'crecord')
>>>> + try:
>>>> + ui.setconfig('experimental', 'crecord', False, 'record')
>>>> + commands.commit(ui, repo, *pats, **opts)
>>>> + finally:
>>>> + ui.restoreconfig(backup)
>>>>
>>>> def qrefresh(origfn, ui, repo, *pats, **opts):
>>>> if not opts['interactive']:
>>>> @@ -66,8 +71,13 @@
>>>> mq.refresh(ui, repo, **opts)
>>>>
>>>> # backup all changed files
>>>> - cmdutil.dorecord(ui, repo, committomq, 'qrefresh', True,
>>>> + backup = ui.backupconfig('experimental', 'crecord')
>>>> + try:
>>>> + ui.setconfig('experimental', 'crecord', False, 'record')
>>>> + cmdutil.dorecord(ui, repo, committomq, 'qrefresh', True,
>>>> cmdutil.recordfilter, *pats, **opts)
>>>> + finally:
>>>> + ui.restoreconfig(backup)
>>>
>>> I do not think we should enforce the old UI on 'qrefresh -i' forcing it
>>> on 'qrecord' if we force it on 'crecord' make sense, but forcing it on
>>> 'qrefresh -i' if we do not force it on 'commit -i' (and we do not want
>>> to force it imho) does not make too much sense.
>>>
>>> If you agree I'll drop this hunk and push the patch.
>
> Agreed.
Hunk dropped and patch pushed to the clowncopter.
--
Pierre-Yves David
More information about the Mercurial-devel
mailing list