Le 07/09/2013 10:02, Pavel Stehule a écrit : > Hello > > * patch is cleanly patchable and compilation is without warnings > * all regression tests passed > * no impact on dump, performance or any current features > * no comments to programming style > * we would this feature - it is consistent with \set and it gives a > fast resume about psql printer settings > > Issues: > 1) it doesn't show linestyle when is default > > I looked there and it is probably a small different issue - this value > is initialized as NULL as default. But I dislike a empty output in > this case: > > else if (strcmp(param, "linestyle") == 0) > { > if (!popt->topt.line_style) > ; > else > printf(_("Line style is %s.\n"), > get_line_style(&popt->topt)->name); > } > > I propose a verbose result instead nothing: > > else if (strcmp(param, "linestyle") == 0) > { > if (!popt->topt.line_style) > printf(_("Line style is unset.\n")) ; > else > printf(_("Line style is %s.\n"), > get_line_style(&popt->topt)->name); > }
+1 to show the information even if linestyle is not set but by default get_line_style() return "ascii" if linestyle is not set. So maybe it is better to rewrite it as follow: else if (strcmp(param, "linestyle") == 0) { printf(_("Line style is %s.\n"), get_line_style(&popt->topt)->name); } This will output: Line style is ascii. when linestyle is not set or of course it is set to ascii. > 2) there is only one open question > http://www.postgresql.org/message-id/b6f6fd62f2624c4c9916ac0175d56d880ce00...@jenmbs01.ad.intershop.net > - there is no clean relation between output and some pset option. > > I don't think so Marc' proposal is ideal (these values are not a > variables) - but maybe some enhanced output (only for this resume) can > be better: > > postgres=# \pset > Output format (format) is aligned. > Border style (border) is 1. > Expanded display (expanded) is off. > Null display (null) is "". > Field separator (fieldsep) is "|". > Tuples only (tuples_only) is off. > Title (title) is unset. > Table attributes (tableattr) unset. > Pager (pager) is used for long output. > Record separator (recordsep) is <newline>. > > This expanded output should be used only for this resume (not when a > option was changed or individual ask on option value) Yes this could be a good accommodation but I really prefer to not duplicate code and translation between this resume and the output when these options are set. If we can print the same output messages using: postgres=# \pset fieldsep '|' Field separator (fieldsep) is "|". it could be a good compromise. Regards, -- Gilles Darold Administrateur de bases de données http://dalibo.com - http://dalibo.org -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers