[PATCH 3 of 5 V2] ui: change flag for curses interface to ui.curses
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Mon Jun 1 09:16:01 UTC 2015
On 05/29/2015 10:29 AM, Laurent Charignon wrote:
> # HG changeset patch
> # User Laurent Charignon <lcharignon at fb.com>
> # Date 1432850639 25200
> # Thu May 28 15:03:59 2015 -0700
> # Node ID 2a54d1ceebeac71129f211be67fc2876d01674c2
> # Parent 9e29b782004467e1837c6ddae7091afeda50e485
> ui: change flag for curses interface to ui.curses
>
> Before this patch the flag for the curses interface was experimental.crecord.
> Since this is a ui feature that is no longer experimental we change the config
> flag to ui.curses. We don't have to worry about retrocompatibility as the
> feature was experimental.
I just remind why I was anxious about seeing this "final option name"
discussion starting. It is because the topic is very complicated.
Topic 1
-------
First, the usual pattern for option like 'curse' 'color' 'mouse' etc is
to have three value. "yes", "auto", "no" (yes/no can be true/false).
- yes: make this happen or die
- auto: try to make it happen and skip if you think it will fails
- no: skip this feature.
"yes" is important to have so that (1) people can bypass wrong
detection, (2) people can have a plain crash to debug.
"auto" is usually the default value (of something enabled by default, so
not yet).
Topic 2
-------
Do we want this option to be called "curse", curse is a fairly clear
term for people who have done terminal programming and ... that is about
it. Should we find a better name and if so, which one? 'advanced'
'fullscreen' ?
Topic 3
-------
But actually, the question is a bit wider,
1) There will be other commands that could make use of curse (eg:
histedit, annotate, evolution based history viewing, etc). Do we really
want a global switch for all of them? How would that config work?
2) There will be likely other -interface- to do this chunk selection. A
regular idea is to fire a merge tool up and let the used select the
change through it (eg: base, result, allchange). So do we want a more
versatile option. eg:
[ui]
chunkselector=text (default)
curse
external
Some alternative option could event be also based on curse if someone
comes with a better alternative.
--
Pierre-Yves David
More information about the Mercurial-devel
mailing list