Re: proposal \gcsv

Erik Rijkers <er@xs4all.nl>

From: Erik Rijkers <er@xs4all.nl>
To: Pavel Stehule <pavel.stehule@gmail.com>
Cc: Vik Fearing <vik@postgresfriends.org>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2020-03-26T18:41:45Z
Lists: pgsql-hackers
On 2020-03-26 18:49, Pavel Stehule wrote:
> Hi
> 
> [psql-gfmt.patch]

This seems useful and works well; I haven't found any errors. Well done.

However, I have a suggestion that is perhaps slightly outside of this 
patch but functionally so close that maybe we can discuss it here.

When you try to get a tab-separated output via this new  \gfmt  in a 
one-liner
you're still forced to use
    \pset csv_fieldsep '\t'

Would it be possible to do one of the following to enable a more compact 
one-liner syntax:

1. add an option:
     \gfmt tsv   --> use a TAB instead of a comma in the csv

or

2. let the psql command-line option '--csv' honour the value given by  
psql -F/--field-separator (it does not do so now)

or

3. add an psql -commandline option:
     --csv-field-separator

Any of these three (I'd prefer the first) would make producing a tsv in 
shell one-liners with psql easier/more compact.


Thanks,


Erik Rijkers














Commits

  1. Allow psql's \g and \gx commands to transiently change \pset options.