Subject: Re: proplib changes
To: None <tech-kern@netbsd.org>
From: Trevor Talbot <quension@gmail.com>
List: tech-kern
Date: 06/28/2007 12:18:13
On 6/28/07, Eric Haszlakiewicz <erh@nimenees.com> wrote:
> On Tue, Jun 26, 2007 at 11:45:21AM -0700, Trevor Talbot wrote:
> > On 6/26/07, Alan Barrett <apb@cequrux.com> wrote:
> > >On Tue, 26 Jun 2007, Trevor Talbot wrote:
> >
> > >> It doesn't matter that the particular application can read any format,
> > >> or that proplib provides the ability to write any format (it's
> > >> unlikely all the proplib users will expose that), if I still have to
> > >> jump through hoops just to make simple configuration changes.
> >
> > >All that's necessary for you to be able to edit in your preferred
> > >format is for *one* proplib-using application to expose the ability to
> > >convert between different formats.  Then you run "plistedit --format
> > >xyzzy /etc/foobar.conf" instead of "vi /etc/foobar.conf".  Yes, this is
> > >jumping through a hoop, but I think it's an easy jump.
> >
> > Right, but once you're at this stage of using a format-converting tool
> > to edit your supposedly human-friendly no-tools-required configuration
> > files, you've completely lost the benefits of having so many formats.
> > Might as well just pick one format and let the editing tool do all the
> > work, since nothing else benefits from it.
>
>         Why use the format converting tool to _edit_?  It seems to me that,
> assuming proplib externalization uses the same format that a file was
> read in with, you could do something like this _once_:
>         propcat --outformat xyzzy foo.conf > foo.conf.new
>         mv foo.conf.new foo.conf
> and then use whatever you want to edit it.

The problem is that "once" becomes rather arbitrary in a mixed
environment, especially when new applications are introduced.  The
mental overhead of coming across a file not in your preferred format,
and having to stop and remember how to convert again, is too much for
doing what was supposed to be a straightforward configuration task.