diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml index 212dbfa154c595222b2f8a0d85f724e0433fe5a5..5899bb4fb3918630df45254727ec39ce12bcfc42 100644 --- a/doc/src/sgml/ref/psql-ref.sgml +++ b/doc/src/sgml/ref/psql-ref.sgml @@ -2038,14 +2038,15 @@ lo_import 152801 The <replaceable class="parameter">value</replaceable> must be a number. In general, the higher the number the more borders and lines the tables will have, - but this depends on the particular format. In - <acronym>HTML</acronym> format, this will translate directly - into the <literal>border=...</literal> attribute; in - <literal>latex</literal> and <literal>latex-longtable</literal> - formats, a value of 3 will add a dividing line between each row; in - the other formats only values 0 (no border), 1 (internal dividing - lines), and 2 (table frame) make sense and values above 2 will be - treated the same as <literal>border = 2</literal>. + but details depend on the particular format. + In <acronym>HTML</acronym> format, this will translate directly + into the <literal>border=...</literal> attribute. + In most other formats only values 0 (no border), 1 (internal + dividing lines), and 2 (table frame) make sense, and values above 2 + will be treated the same as <literal>border = 2</literal>. + The <literal>latex</literal> and <literal>latex-longtable</literal> + formats additionally allow a value of 3 to add dividing lines + between data rows. </para> </listitem> </varlistentry> @@ -2220,8 +2221,8 @@ lo_import 152801 <para> When the <literal>border</> setting is greater than zero, - this option also determines the characters - with which the border lines are drawn. + the <literal>linestyle</literal> option also determines the + characters with which the border lines are drawn. Plain <acronym>ASCII</acronym> characters work everywhere, but Unicode characters look nicer on displays that recognize them. </para> @@ -2364,31 +2365,34 @@ lo_import 152801 </varlistentry> <varlistentry> - <term><literal>unicode_border_style</literal></term> + <term><literal>unicode_border_linestyle</literal></term> <listitem> <para> - Sets the border drawing style for the <literal>unicode</literal> line style to one - of <literal>single</literal> or <literal>double</literal>. + Sets the border drawing style for the <literal>unicode</literal> + line style to one of <literal>single</literal> + or <literal>double</literal>. </para> </listitem> </varlistentry> <varlistentry> - <term><literal>unicode_column_style</literal></term> + <term><literal>unicode_column_linestyle</literal></term> <listitem> <para> - Sets the column drawing style for the <literal>unicode</literal> line style to one - of <literal>single</literal> or <literal>double</literal>. + Sets the column drawing style for the <literal>unicode</literal> + line style to one of <literal>single</literal> + or <literal>double</literal>. </para> </listitem> </varlistentry> <varlistentry> - <term><literal>unicode_header_style</literal></term> + <term><literal>unicode_header_linestyle</literal></term> <listitem> <para> - Sets the header drawing style for the <literal>unicode</literal> line style to one - of <literal>single</literal> or <literal>double</literal>. + Sets the header drawing style for the <literal>unicode</literal> + line style to one of <literal>single</literal> + or <literal>double</literal>. </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/release-9.5.sgml b/doc/src/sgml/release-9.5.sgml index 92443e43c193d9bc0831a4c299b8a7fb37aa088d..9055387832a2017d76709f93ee5328ceb6525a1b 100644 --- a/doc/src/sgml/release-9.5.sgml +++ b/doc/src/sgml/release-9.5.sgml @@ -2061,12 +2061,12 @@ FIXME: Add more specifics? 2014-09-12 [a2dabf0] Stephe..: Add unicode_{column|header|border}_style to psql --> <para> - Allow column, header, and border control to <application>psql</>'s - Unicode style (Pavel Stehule) + Provide separate column, header, and border linestyle control + in <application>psql</>'s unicode linestyle (Pavel Stehule) </para> <para> - Single or double output is supported; the default is + Single or double lines are supported; the default is <literal>single</>. </para> </listitem> diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index 50d3ff51745999cc6865cd670c6a12331c34db6a..72c00c1251c671e42c2982aca11ddade246013f2 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -2415,11 +2415,11 @@ _align2string(enum printFormat in) } /* - * Parse entered unicode linestyle. Returns true, when entered string is - * known linestyle: single, double else returns false. + * Parse entered unicode linestyle. If ok, update *linestyle and return + * true, else return false. */ static bool -set_unicode_line_style(printQueryOpt *popt, const char *value, size_t vallen, +set_unicode_line_style(const char *value, size_t vallen, unicode_linestyle *linestyle) { if (pg_strncasecmp("single", value, vallen) == 0) @@ -2428,10 +2428,6 @@ set_unicode_line_style(printQueryOpt *popt, const char *value, size_t vallen, *linestyle = UNICODE_LINESTYLE_DOUBLE; else return false; - - /* input is ok, generate new unicode style */ - refresh_utf8format(&(popt->topt)); - return true; } @@ -2517,10 +2513,12 @@ do_pset(const char *param, const char *value, printQueryOpt *popt, bool quiet) { if (!value) ; - else if (!set_unicode_line_style(popt, value, vallen, - &popt->topt.unicode_border_linestyle)) + else if (set_unicode_line_style(value, vallen, + &popt->topt.unicode_border_linestyle)) + refresh_utf8format(&(popt->topt)); + else { - psql_error("\\pset: allowed unicode border linestyle are single, double\n"); + psql_error("\\pset: allowed unicode border linestyles are single, double\n"); return false; } } @@ -2530,10 +2528,12 @@ do_pset(const char *param, const char *value, printQueryOpt *popt, bool quiet) { if (!value) ; - else if (!set_unicode_line_style(popt, value, vallen, - &popt->topt.unicode_column_linestyle)) + else if (set_unicode_line_style(value, vallen, + &popt->topt.unicode_column_linestyle)) + refresh_utf8format(&(popt->topt)); + else { - psql_error("\\pset: allowed unicode column linestyle are single, double\n"); + psql_error("\\pset: allowed unicode column linestyles are single, double\n"); return false; } } @@ -2543,10 +2543,12 @@ do_pset(const char *param, const char *value, printQueryOpt *popt, bool quiet) { if (!value) ; - else if (!set_unicode_line_style(popt, value, vallen, - &popt->topt.unicode_header_linestyle)) + else if (set_unicode_line_style(value, vallen, + &popt->topt.unicode_header_linestyle)) + refresh_utf8format(&(popt->topt)); + else { - psql_error("\\pset: allowed unicode header linestyle are single, double\n"); + psql_error("\\pset: allowed unicode header linestyles are single, double\n"); return false; } } @@ -2871,7 +2873,7 @@ printPsetInfo(const char *param, struct printQueryOpt *popt) else if (strcmp(param, "unicode_header_linestyle") == 0) { - printf(_("Unicode border linestyle is \"%s\".\n"), + printf(_("Unicode header linestyle is \"%s\".\n"), _unicode_linestyle2string(popt->topt.unicode_header_linestyle)); }