[PATCH 3 of 3] commands: add template support for config

Mathias De Maré mathias.demare at gmail.com
Mon Sep 5 15:28:35 UTC 2016


On Tue, Aug 30, 2016 at 4:09 PM, Yuya Nishihara <yuya at tcha.org> wrote:

> On Mon, 29 Aug 2016 12:52:43 -0500, Mathias De Maré wrote:
> > # HG changeset patch
> > # User Mathias De Maré <mathias.demare at gmail.com>
> > # Date 1472447235 -7200
> > #      Mon Aug 29 07:07:15 2016 +0200
> > # Node ID dd7b8ff51af615e1a44d32b103d23e8cd34d5dd9
> > # Parent  e348c87b33d73a590bee53b74def915b1ce8c6fe
> > commands: add template support for config
>
> > -    for f in scmutil.rcpath():
> > -        ui.debug('read config from: %s\n' % f)
> > +    fm = ui.formatter('config', opts)
> > +    if ui.debugflag:
> > +        for f in scmutil.rcpath():
> > +            fm.plain('read config from: %s\n' % f)
>
> This is a real debug message. We'll need another workaround, so please keep
> it as ui.debug().
>
> https://www.mercurial-scm.org/wiki/GenericTemplatingPlan#
> Sanity_check_output
>
> > @@ -1859,25 +1861,31 @@
> >              raise error.Abort(_('only one config item permitted'))
> >      matched = False
> >      for section, name, value in ui.walkconfig(untrusted=untrusted):
> > -        value = str(value).replace('\n', '\\n')
> > -        sectname = section + '.' + name
> > +        if fm.isplain():
> > +            value = str(value).replace('\n', '\\n')
> > +        entryname = section + '.' + name
>
> I think we can always convert value to str because config values should be
> strings in the public (i.e. command) API.
>

Good idea. This also takes care of the 'the caller should handle functions
in the formatter' issues.
I'll resubmit.

>
> > +++ b/tests/test-config.t
> > @@ -54,6 +54,20 @@
> >    Section.KeY=Case Sensitive
> >    Section.key=lower case
> >
> > +  $ hg showconfig Section -Tjson
> > +  [
> > +   {
> > +    "name": "Section.KeY",
> > +    "source": "*.hgrc:16", (glob)
> > +    "value": "Case Sensitive"
> > +   },
> > +   {
> > +    "name": "Section.key",
> > +    "source": "*.hgrc:17", (glob)
> > +    "value": "lower case"
> > +   }
> > +  ]
>
> Can you add more tests to cover all "if"s ?
>

Will do, thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mercurial-scm.org/pipermail/mercurial-devel/attachments/20160905/60fa2673/attachment.html>


More information about the Mercurial-devel mailing list