David,
* David G. Johnston (david.g.johnston@gmail.com) wrote:
> On Mon, Jan 30, 2017 at 8:35 AM, Stephen Frost <sfrost@snowman.net> wrote:
> > * Tom Lane (tgl@sss.pgh.pa.us) wrote:
> > > Stephen Frost <sfrost@snowman.net> writes:
> > > > This particular bike-shedding really doesn't seem to be terribly useful
> > > > or sensible, to me. \gx isn't "consistent" or "descriptive", frankly.
> > >
> > > Why not? To me it reads as "\g with an x option". The "x" refers to
> > > the implied "\x", so it's not an arbitrary choice at all.
> >
> > That's not how '\dx' works, as I pointed out, so I don't see having the
> > second character being 'x' to imply "\x mode" makes sense.
>
> It makes perfect sense ... it just not something that we've had the option
> to do before (no, I haven't tried to figure out if we've missed an
> opportunity or two here).
For my 2c, at least, I think we have.. I could certainly see it as very
useful to have expanded output for \d and various \d sub-commands. How
are we going to get there today? I don't see us re-defining what \dx
means.
With this, what we could do is define \D to be the same as \d but in
expanded mode. For something like \dp, having a \Dp option could be
pretty nice.
> > without actual consistency across commands which take 'x'
> > as a sub-command I don't see the 'descriptive' argument as holding much
> > weight either
> > .
>
> Arguing that something is mnemonic doesn't require any precedence - though
> one could wish for better uses of mnemonic naming choices for past and
> future items.
I can see the mnemonic argument, just not one based on some kind of
consistency with what we've actually got implemented today.
> In scripting uses of psql I could see wanting to use "\gx" and, say "\gn"
> (i.e., always output in non-expanded mode) instead of ";" so that for any
> given query I can specify the exact layout I care about and don't have to
> jump through hoops to toggle \x back and forth.
Ugh. I would *much* rather scripting be clear and set things up ahead
of time instead of changing a would-be query-ending ';' into a backslash
command to indicate the output format for the prior query.
> Limiting consideration of the use-case of this feature to interactive use
> is, IMHO, a mistake. In the copious use of psql scripting that I do I
> would find both options I named above to be useful to directly and
> concisely communicate the display intent of each query I execute.
I'm afraid we might just have to disagree on our preferences for script
writing then. In any case, as I said up-thread, using \G for this
doesn't mean we couldn't make other \g options if people have a use-case
for them.
Thanks!
Stephen