Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-10 Thread Pavel Stehule
2014-09-10 0:13 GMT+02:00 Andres Freund :

> On 2014-09-09 22:22:45 +0200, Andres Freund wrote:
> > I plan to push this soon.
>
> Done.
>
> Thanks for the patch!
>

Thank you very much

Pavel


>
> Andres Freund
>
> --
>  Andres Freund http://www.2ndQuadrant.com/
>  PostgreSQL Development, 24x7 Support, Training & Services
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-09 Thread Andres Freund
On 2014-09-09 22:22:45 +0200, Andres Freund wrote:
> I plan to push this soon.

Done.

Thanks for the patch!

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-09 Thread Andres Freund
Hi,

Given we already have three topics for --help and I can see others I
went with my --help= proposal.

On 2014-08-28 13:20:07 +0200, Andres Freund wrote:
> Some stuff I changed:
> * I rephrased the sgml changes
> * s/Printing options/Display options/. Or maybe "Display influencing
>   variables"? That makes it clearer why they're listed under
>   --help-variables.
> * I added \? commands as an alias for a plain \?
>   That way the scheme can sensibly be expanded.
> * I renamed help_variables() to be inline with the surrounding functions.

I integrated all those ontop of your help-variables-12.patch.

Then I:
* re-added psql -i which you, probably accidentally, removed
* rephrased the sgml stuff
* removed the "Report bugs to " from helpVariables()
* Changed things so that both --help and \? support "commands",
  "options" and "variables" as help topics
* fixed things so that --help=wrongoption returns a proper exit code
  again

I attached both the full and the incremental diff. I'd appreciate
somebody looking over the the docs...

I plan to push this soon.

Greetings,

Andres Freund

--
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
>From 9fcf3f0983ccd617c20dc4e87889a894d873b92e Mon Sep 17 00:00:00 2001
From: Andres Freund 
Date: Tue, 9 Sep 2014 22:19:14 +0200
Subject: [PATCH] Add new psql help topics, accessible to both --help and \?.

Add --help= for the commandline, and \?  as a backslash
command, to show more help than the invocations without parameters
do. "commands", "variables" and "options" currently exist as help
topics describing, respectively, backslash commands, psql variables,
and commandline switches. Without parameters the help commands show
their previous topic.

Author: Pavel Stehule, editorialized by many

Reviewed-By: Andres Freund, Petr Jelinek, Fujii Masao, MauMau, Abhijit
Menon-Sen and Erik Rijkers.

Discussion: CAFj8pRDVGuC-nXBfe2CK8vpyzd2Dsr9GVpbrATAnZO=2yq0...@mail.gmail.com,
cafj8pra54abtv2rxdtrxiad8hy8wxmovlqhjdrcwenhdd7o...@mail.gmail.com
---
 doc/src/sgml/ref/psql-ref.sgml |  23 -
 src/bin/psql/command.c |  14 ++-
 src/bin/psql/help.c| 210 +++--
 src/bin/psql/help.h|   4 +-
 src/bin/psql/startup.c |  29 --
 src/bin/psql/tab-complete.c|   7 ++
 6 files changed, 224 insertions(+), 63 deletions(-)

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 29ad1aa..aa71674 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -560,11 +560,17 @@ EOF
 
 
   -?
-  --help
+  --help[=topic]
   
   
-  Show help about psql command line
-  arguments, and exit.
+  Show help about psql and exit. The optional
+  topic parameter (defaulting
+  to options) selects which part of psql is
+  explained: commands describes psql's
+  backslash commands; options describes the commandline
+  switches that can be passed to psql;
+  and variables shows help about about psql configuration
+  variables.
   
   
 
@@ -2574,10 +2580,17 @@ testdb=> \setenv LESS -imx4F
 
 
   
-\?
+\? [ topic ]
 
 
-Shows help information about the backslash commands.
+Shows help information. The optional
+topic parameter
+(defaulting to commands) selects which part of psql is
+explained: commands describes psql's
+backslash commands; options describes the commandline
+switches that can be passed to psql;
+and variables shows help about about psql configuration
+variables.
 
 
   
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index 39b5777..5d90ca2 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -1491,7 +1491,19 @@ exec_command(const char *cmd,
 
 	/* \? -- slash command help */
 	else if (strcmp(cmd, "?") == 0)
-		slashUsage(pset.popt.topt.pager);
+	{
+		char	   *opt0 = psql_scan_slash_option(scan_state,
+	OT_NORMAL, NULL, false);
+
+		if (!opt0 || strcmp(opt0, "commands") == 0)
+			slashUsage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "options") == 0)
+			usage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "variables") == 0)
+			helpVariables(pset.popt.topt.pager);
+		else
+			slashUsage(pset.popt.topt.pager);
+	}
 
 #if 0
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index f8f000f..ef35696 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -46,11 +46,12 @@
 #define ON(var) (var ? _("on") : _("off"))
 
 void
-usage(void)
+usage(unsigned short int pager)
 {
 	const char *env;
 	const char *user;
 	char	   *errstr;
+	FILE	   *output;
 
 	/* Find default user, in case we need it. */
 	user = getenv("PGUSER");
@@ -64,77 +65,83 @@ usage(void)
 		}
 	}
 
-	printf(_("psql is the PostgreSQL interactive terminal.\n\n"));
-	printf(_("

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-09 Thread Andres Freund
On 2014-08-28 13:54:28 +0200, Andres Freund wrote:
> On 2014-08-28 13:20:07 +0200, Andres Freund wrote:
> > I've attached a incremental patch.
> 
> Apparently I didn't attach the patch, as so much a file containing the
> name of the patchfile...

Which you obviously didn't integrate. And didn't comment on. Grr.

Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-04 Thread Pavel Stehule
Hi

here is a second variant with support --help=variables

Regards

Pavel


2014-09-04 4:25 GMT+02:00 Robert Haas :

> On Thu, Aug 28, 2014 at 11:20 AM, Andres Freund 
> wrote:
> >> >* How about making it --help=variables instead of --help-variables?
> >>
> >> -1, help is not a variable to be assigned imho
> >
> > I don't think variable assignment is a good mental model for long
> > commandline arguments. And it's not like I'm the first to come up with
> > an extensible --help. Check e.g. gcc.
> >
> > But anyway, I guess I've lost that argument.
>
> I think it mostly depends on how far we think we might extend it.  I
> mean, --help-variables is fine as a parallel to --help.  But if we're
> eventually going to have help for 12 things, --help=TOPIC is a lot
> better than 12 separate switches.  So +0.5 for your proposal from me.
>
> --
> Robert Haas
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
commit cac76b6135ae9f4b3c1eab1ce6bc34b43a7506ef
Author: Pavel Stehule 
Date:   Wed Aug 27 22:47:07 2014 +0200

access to help_variables and usage from psql via psql command

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index db314c3..05a0f01 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -560,11 +560,18 @@ EOF
 
   -?
   --help
+  --help=topic
   
   
   Show help about psql command line
   arguments, and exit.
   
+
+  
+  --help=variablesshow help about psql variables,
+  and exit.
+  
+
   
 
 
@@ -2572,10 +2579,12 @@ testdb=> \setenv LESS -imx4F
 
 
   
-\?
+\? [ options | variables ]
 
 
-Shows help information about the backslash commands.
+Shows help information about the backslash commands.  This command can have a
+option "variables" or "options" to take help for psql configuration variables
+or psql command line options.
 
 
   
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index e16b4d5..987a79f 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -1503,7 +1503,19 @@ exec_command(const char *cmd,
 
 	/* \? -- slash command help */
 	else if (strcmp(cmd, "?") == 0)
-		slashUsage(pset.popt.topt.pager);
+	{
+		char	   *opt0 = psql_scan_slash_option(scan_state,
+	OT_NORMAL, NULL, false);
+
+		if (!opt0)
+			slashUsage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "variables") == 0)
+			help_variables(pset.popt.topt.pager);
+		else if (strcmp(opt0, "options") == 0)
+			usage(pset.popt.topt.pager);
+		else
+			slashUsage(pset.popt.topt.pager);
+	}
 
 #if 0
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index f8f000f..0ada015 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -46,11 +46,12 @@
 #define ON(var) (var ? _("on") : _("off"))
 
 void
-usage(void)
+usage(unsigned short int pager)
 {
 	const char *env;
 	const char *user;
 	char	   *errstr;
+	FILE	   *output;
 
 	/* Find default user, in case we need it. */
 	user = getenv("PGUSER");
@@ -64,77 +65,82 @@ usage(void)
 		}
 	}
 
-	printf(_("psql is the PostgreSQL interactive terminal.\n\n"));
-	printf(_("Usage:\n"));
-	printf(_("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
+	output = PageOutput(59, pager);
+
+	fprintf(output, _("psql is the PostgreSQL interactive terminal.\n\n"));
+	fprintf(output, _("Usage:\n"));
+	fprintf(output, _("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
 
-	printf(_("General options:\n"));
+	fprintf(output, _("General options:\n"));
 	/* Display default database */
 	env = getenv("PGDATABASE");
 	if (!env)
 		env = user;
-	printf(_("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"));
-	printf(_("  -d, --dbname=DBNAME  database name to connect to (default: \"%s\")\n"), env);
-	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
-	printf(_("  -l, --list   list available databases, then exit\n"));
-	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
-	printf(_("  -V, --versionoutput version information, then exit\n"));
-	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
-	printf(_("  -1 (\"one\"), --single-transaction\n"
+	fprintf(output, _("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"));
+	fprintf(output, _("  -d, --dbname=DBNAME  database name to connect to (default: \"%s\")\n"), env);
+	fprintf(output, _("  -f, --file=FILENAME  execute commands from file, then exit\n"));
+	fprintf(output, _("  -l, --list   list available databases, then exit\n"));
+	fprintf(output, _("  -v, --set=, --variable=NAME=VALUE\n"
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
+	fprintf(output, _("  -V, --versionoutput version information,

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-03 Thread Robert Haas
On Thu, Aug 28, 2014 at 11:20 AM, Andres Freund  wrote:
>> >* How about making it --help=variables instead of --help-variables?
>>
>> -1, help is not a variable to be assigned imho
>
> I don't think variable assignment is a good mental model for long
> commandline arguments. And it's not like I'm the first to come up with
> an extensible --help. Check e.g. gcc.
>
> But anyway, I guess I've lost that argument.

I think it mostly depends on how far we think we might extend it.  I
mean, --help-variables is fine as a parallel to --help.  But if we're
eventually going to have help for 12 things, --help=TOPIC is a lot
better than 12 separate switches.  So +0.5 for your proposal from me.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-03 Thread Pavel Stehule
Hello

fixed ECHO, ECHO_HIDDEN, PROPMPT

Regards

Pavel



2014-09-01 11:52 GMT+02:00 Fujii Masao :

> On Thu, Aug 28, 2014 at 9:34 PM, Pavel Stehule 
> wrote:
> >
> >
> >
> > 2014-08-28 14:22 GMT+02:00 Fujii Masao :
> >
> >> On Thu, Aug 28, 2014 at 5:48 AM, Pavel Stehule  >
> >> wrote:
> >> > comments?
> >>
> >> +fprintf(output, _("  ECHO   control what input is
> >> written to standard output [all, queries]\n"));
> >>
> >> The valid values in the help messages should be consistent with
> >> the values that the tab-completion displays. So in the case of ECHO,
> >> "errors" and "none" also should be added in the message. Thought?
> >>
> >> In the help messages of some psql variables like ECHO_HIDDEN, valid
> >> values are not explained. Why not?
> >
> >
> > it is based on http://www.postgresql.org/docs/9.4/static/app-psql.html
> >
> > ECHO_HIDDEN
> >
> > When this variable is set and a backslash command queries the database,
> the
> > query is first shown. This way you can study the PostgreSQL internals and
> > provide similar functionality in your own programs. (To select this
> behavior
> > on program start-up, use the switch -E.) If you set the variable to the
> > value noexec, the queries are just shown but are not actually sent to the
> > server and executed.
> >
> > There are no clear a set of valid values :( .. When I found a known
> fields
> > in doc, I used it.
>
> At least "noexec" seems to be documented as a valid value. Of course,
> it's better to document other valid values.
>
> Regards,
>
> --
> Fujii Masao
>
commit 17a0708a0466cc8ff9e8debd0a7e9062eebe3a61
Author: Pavel Stehule 
Date:   Wed Aug 27 22:47:07 2014 +0200

access to help_variables and usage from psql via psql command

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index db314c3..9bb14e9 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -568,6 +568,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
@@ -2572,10 +2581,12 @@ testdb=> \setenv LESS -imx4F
 
 
   
-\?
+\? [ options | variables ]
 
 
-Shows help information about the backslash commands.
+Shows help information about the backslash commands.  This command can have a
+option "variables" or "options" to take help for psql configuration variables
+or psql command line options.
 
 
   
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index e16b4d5..987a79f 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -1503,7 +1503,19 @@ exec_command(const char *cmd,
 
 	/* \? -- slash command help */
 	else if (strcmp(cmd, "?") == 0)
-		slashUsage(pset.popt.topt.pager);
+	{
+		char	   *opt0 = psql_scan_slash_option(scan_state,
+	OT_NORMAL, NULL, false);
+
+		if (!opt0)
+			slashUsage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "variables") == 0)
+			help_variables(pset.popt.topt.pager);
+		else if (strcmp(opt0, "options") == 0)
+			usage(pset.popt.topt.pager);
+		else
+			slashUsage(pset.popt.topt.pager);
+	}
 
 #if 0
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index f8f000f..4f29f2a 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -46,11 +46,12 @@
 #define ON(var) (var ? _("on") : _("off"))
 
 void
-usage(void)
+usage(unsigned short int pager)
 {
 	const char *env;
 	const char *user;
 	char	   *errstr;
+	FILE	   *output;
 
 	/* Find default user, in case we need it. */
 	user = getenv("PGUSER");
@@ -64,77 +65,82 @@ usage(void)
 		}
 	}
 
-	printf(_("psql is the PostgreSQL interactive terminal.\n\n"));
-	printf(_("Usage:\n"));
-	printf(_("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
+	output = PageOutput(59, pager);
+
+	fprintf(output, _("psql is the PostgreSQL interactive terminal.\n\n"));
+	fprintf(output, _("Usage:\n"));
+	fprintf(output, _("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
 
-	printf(_("General options:\n"));
+	fprintf(output, _("General options:\n"));
 	/* Display default database */
 	env = getenv("PGDATABASE");
 	if (!env)
 		env = user;
-	printf(_("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"));
-	printf(_("  -d, --dbname=DBNAME  database name to connect to (default: \"%s\")\n"), env);
-	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
-	printf(_("  -l, --list   list available databases, then exit\n"));
-	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
-	printf(_("  -V, --versionoutput version information, then exit\n"));
-	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
-	printf(_("  -1 (\"one\"), --single-transaction\n"
+	fprintf(output, _("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"))

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-09-01 Thread Fujii Masao
On Thu, Aug 28, 2014 at 9:34 PM, Pavel Stehule  wrote:
>
>
>
> 2014-08-28 14:22 GMT+02:00 Fujii Masao :
>
>> On Thu, Aug 28, 2014 at 5:48 AM, Pavel Stehule 
>> wrote:
>> > comments?
>>
>> +fprintf(output, _("  ECHO   control what input is
>> written to standard output [all, queries]\n"));
>>
>> The valid values in the help messages should be consistent with
>> the values that the tab-completion displays. So in the case of ECHO,
>> "errors" and "none" also should be added in the message. Thought?
>>
>> In the help messages of some psql variables like ECHO_HIDDEN, valid
>> values are not explained. Why not?
>
>
> it is based on http://www.postgresql.org/docs/9.4/static/app-psql.html
>
> ECHO_HIDDEN
>
> When this variable is set and a backslash command queries the database, the
> query is first shown. This way you can study the PostgreSQL internals and
> provide similar functionality in your own programs. (To select this behavior
> on program start-up, use the switch -E.) If you set the variable to the
> value noexec, the queries are just shown but are not actually sent to the
> server and executed.
>
> There are no clear a set of valid values :( .. When I found a known fields
> in doc, I used it.

At least "noexec" seems to be documented as a valid value. Of course,
it's better to document other valid values.

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Andres Freund
On 2014-08-28 14:04:27 +0200, Petr Jelinek wrote:
> On 28/08/14 13:20, Andres Freund wrote:
> >Hi,
> >
> >Stuff I wondered about:
> >* How about making it --help=variables instead of --help-variables?
> 
> -1, help is not a variable to be assigned imho

I don't think variable assignment is a good mental model for long
commandline arguments. And it's not like I'm the first to come up with
an extensible --help. Check e.g. gcc.

But anyway, I guess I've lost that argument.

Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Pavel Stehule
2014-08-28 14:22 GMT+02:00 Fujii Masao :

> On Thu, Aug 28, 2014 at 5:48 AM, Pavel Stehule 
> wrote:
> > comments?
>
> +fprintf(output, _("  ECHO   control what input is
> written to standard output [all, queries]\n"));
>
> The valid values in the help messages should be consistent with
> the values that the tab-completion displays. So in the case of ECHO,
> "errors" and "none" also should be added in the message. Thought?
>
> In the help messages of some psql variables like ECHO_HIDDEN, valid
> values are not explained. Why not?
>

it is based on http://www.postgresql.org/docs/9.4/static/app-psql.html

ECHO_HIDDEN

When this variable is set and a backslash command queries the database, the
query is first shown. This way you can study the PostgreSQL internals and
provide similar functionality in your own programs. (To select this
behavior on program start-up, use the switch -E.) If you set the variable
to the value noexec, the queries are just shown but are not actually sent
to the server and executed.
There are no clear a set of valid values :( .. When I found a known fields
in doc, I used it.

Regards

Pavel


>
> Regards,
>
> --
> Fujii Masao
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Fujii Masao
On Thu, Aug 28, 2014 at 5:48 AM, Pavel Stehule  wrote:
> comments?

+fprintf(output, _("  ECHO   control what input is
written to standard output [all, queries]\n"));

The valid values in the help messages should be consistent with
the values that the tab-completion displays. So in the case of ECHO,
"errors" and "none" also should be added in the message. Thought?

In the help messages of some psql variables like ECHO_HIDDEN, valid
values are not explained. Why not?

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Petr Jelinek

On 28/08/14 13:20, Andres Freund wrote:

Hi,

Stuff I wondered about:
* How about making it --help=variables instead of --help-variables?


-1, help is not a variable to be assigned imho


* Do we really need the 'Report bugs to' blurb for --help-variables?


Probably not.


* Since we're not exhaustive about documenting environment variales, do
   we really need to document TMPDIR and SHELL?


They are bit more important than most of others, but probably not really 
necessary to be there as they are not psql specific.



* Shouldn't we document that PROMPT1 is the standard prompt, PROMPT2 is
   for already started statements, and PROMPT3 is for COPY FROM STDIN?


Yes please!

--
 Petr Jelinek  http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Pavel Stehule
2014-08-28 13:20 GMT+02:00 Andres Freund :

> Hi,
>
> On 2014-08-27 22:48:54 +0200, Pavel Stehule wrote:
> > Hi
> >
> > I chose \? xxx, because it is related to psql features. I wrote commands:
> >
> > \? options
> > \? variables
> >
> > comments?
>
> Generall I like it.
>
> Some stuff I changed:
> * I rephrased the sgml changes
> * s/Printing options/Display options/. Or maybe "Display influencing
>   variables"? That makes it clearer why they're listed under
>   --help-variables.
> * I added \? commands as an alias for a plain \?
>   That way the scheme can sensibly be expanded.
> * I renamed help_variables() to be inline with the surrounding functions.
>
> Stuff I wondered about:
> * How about making it --help=variables instead of --help-variables? That
>

I am sorry, I don't like this idea --help-variables is much more usual for
cmd line


> * Do we really need the 'Report bugs to' blurb for --help-variables?
>


> * Since we're not exhaustive about documenting environment variales, do
>   we really need to document TMPDIR and SHELL?
> * Shouldn't we document that PROMPT1 is the standard prompt, PROMPT2 is
>   for already started statements, and PROMPT3 is for COPY FROM STDIN?
>

I don't see TMPDIR, SHELL as really important in this position

Pavel


>
> Looks like it's commitable next round.
>
> I've attached a incremental patch.
>
> Greetings,
>
> Andres Freund
>
> --
>  Andres Freund http://www.2ndQuadrant.com/
>  PostgreSQL Development, 24x7 Support, Training & Services
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Andres Freund
On 2014-08-28 13:20:07 +0200, Andres Freund wrote:
> I've attached a incremental patch.

Apparently I didn't attach the patch, as so much a file containing the
name of the patchfile...


Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 6d3189d..b14db45 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -2581,12 +2581,15 @@ testdb=> \setenv LESS -imx4F
 
 
   
-\? [ options | variables ]
+\? [ topic ]
 
 
-Shows help information about the backslash commands.  This command can have a
-option "variables" or "options" to take help for psql configuration variables
-or psql command line options.
+Shows help information. The parameter
+topic can be
+commands (the default) to show help about backslash
+commands, options to show information about commandline
+arguments, or variables to show information about
+variables influencing psql's behaviour or display.
 
 
   
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index 12cbb20..7e4626c 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -1507,12 +1507,12 @@ exec_command(const char *cmd,
 		char	   *opt0 = psql_scan_slash_option(scan_state,
 	OT_NORMAL, NULL, false);
 
-		if (!opt0)
+		if (!opt0 || strcmp(opt0, "commands") == 0)
 			slashUsage(pset.popt.topt.pager);
-		else if (strcmp(opt0, "variables") == 0)
-			help_variables(pset.popt.topt.pager);
 		else if (strcmp(opt0, "options") == 0)
 			usage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "variables") == 0)
+			helpVariables(pset.popt.topt.pager);
 		else
 			slashUsage(pset.popt.topt.pager);
 	}
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 5e7953d..e0d1d13 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -171,7 +171,7 @@ slashUsage(unsigned short int pager)
 
 	fprintf(output, _("Help\n"));
 
-	fprintf(output, _("  \\? description of all psql commands\n"));
+	fprintf(output, _("  \\? [commands]  description of all psql commands\n"));
 	fprintf(output, _("  \\? options description of psql options\n"));
 	fprintf(output, _("  \\? variables   description of all psql configuration variables\n"));
 	fprintf(output, _("  \\h [NAME]  help on syntax of SQL commands, * for all commands\n"));
@@ -294,10 +294,12 @@ slashUsage(unsigned short int pager)
 
 
 /*
- * show list of available variables (options) from command line
+ * helpVariables
+ *
+ * Show list of available variables (options).
  */
 void
-help_variables(unsigned short int pager)
+helpVariables(unsigned short int pager)
 {
 	FILE	   *output;
 
@@ -335,7 +337,7 @@ help_variables(unsigned short int pager)
 	fprintf(output, _("  USER   the currently connected database user\n"));
 	fprintf(output, _("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
 
-	fprintf(output, _("\nPrinting options:\n"));
+	fprintf(output, _("\nDisplay influencing variables:\n"));
 	fprintf(output, _("Usage:\n"));
 	fprintf(output, _("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
 
diff --git a/src/bin/psql/help.h b/src/bin/psql/help.h
index bab360d..3ad374a 100644
--- a/src/bin/psql/help.h
+++ b/src/bin/psql/help.h
@@ -12,7 +12,7 @@ void		usage(unsigned short int pager);
 
 void		slashUsage(unsigned short int pager);
 
-void		help_variables(unsigned short int pager);
+void		helpVariables(unsigned short int pager);
 
 void		helpSQL(const char *topic, unsigned short int pager);
 
diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c
index af68e13..0651588 100644
--- a/src/bin/psql/startup.c
+++ b/src/bin/psql/startup.c
@@ -574,7 +574,7 @@ parse_psql_options(int argc, char *argv[], struct adhoc_opts * options)
 }
 break;
 			case 1:
-help_variables(NOPAGER);
+helpVariables(NOPAGER);
 exit(EXIT_SUCCESS);
 			default:
 fprintf(stderr, _("Try \"%s --help\" for more information.\n"),
diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c
index 7a94fa8..da1b984 100644
--- a/src/bin/psql/tab-complete.c
+++ b/src/bin/psql/tab-complete.c
@@ -3516,7 +3516,7 @@ psql_completion(const char *text, int start, int end)
 	else if (strcmp(prev_wd, "\\?") == 0)
 	{
 		static const char *const my_list[] =
-		{"options", "variables", NULL};
+		{"commands","options", "variables", NULL};
 
 		COMPLETE_WITH_LIST_CS(my_list);
 	}

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Fujii Masao
On Thu, Aug 28, 2014 at 8:20 PM, Andres Freund  wrote:
> Hi,
>
> On 2014-08-27 22:48:54 +0200, Pavel Stehule wrote:
>> Hi
>>
>> I chose \? xxx, because it is related to psql features. I wrote commands:
>>
>> \? options
>> \? variables
>>
>> comments?
>
> Generall I like it.
>
> Some stuff I changed:
> * I rephrased the sgml changes
> * s/Printing options/Display options/. Or maybe "Display influencing
>   variables"? That makes it clearer why they're listed under
>   --help-variables.
> * I added \? commands as an alias for a plain \?
>   That way the scheme can sensibly be expanded.
> * I renamed help_variables() to be inline with the surrounding functions.
>
> Stuff I wondered about:
> * How about making it --help=variables instead of --help-variables? That
> * Do we really need the 'Report bugs to' blurb for --help-variables?
> * Since we're not exhaustive about documenting environment variales, do
>   we really need to document TMPDIR and SHELL?
> * Shouldn't we document that PROMPT1 is the standard prompt, PROMPT2 is
>   for already started statements, and PROMPT3 is for COPY FROM STDIN?
>
> Looks like it's commitable next round.
>
> I've attached a incremental patch.

ISTM that you failed to attach the right patch.
help-variables-10--11.diff contains only one line.

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-28 Thread Andres Freund
Hi,

On 2014-08-27 22:48:54 +0200, Pavel Stehule wrote:
> Hi
> 
> I chose \? xxx, because it is related to psql features. I wrote commands:
> 
> \? options
> \? variables
> 
> comments?

Generall I like it.

Some stuff I changed:
* I rephrased the sgml changes
* s/Printing options/Display options/. Or maybe "Display influencing
  variables"? That makes it clearer why they're listed under
  --help-variables.
* I added \? commands as an alias for a plain \?
  That way the scheme can sensibly be expanded.
* I renamed help_variables() to be inline with the surrounding functions.

Stuff I wondered about:
* How about making it --help=variables instead of --help-variables? That
* Do we really need the 'Report bugs to' blurb for --help-variables?
* Since we're not exhaustive about documenting environment variales, do
  we really need to document TMPDIR and SHELL?
* Shouldn't we document that PROMPT1 is the standard prompt, PROMPT2 is
  for already started statements, and PROMPT3 is for COPY FROM STDIN?

Looks like it's commitable next round.

I've attached a incremental patch.

Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
0001-help-variables-11.patch

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-27 Thread Pavel Stehule
Hi

I chose \? xxx, because it is related to psql features. I wrote commands:

\? options
\? variables

comments?

Regards

Pavel



2014-08-26 13:48 GMT+02:00 Andres Freund :

> On 2014-08-26 13:44:16 +0200, Pavel Stehule wrote:
> > 2014-08-26 13:30 GMT+02:00 Petr Jelinek :
> >
> > > On 26/08/14 13:20, Andres Freund wrote:
> > >
> > >>
> > >> I'm looking at committing this, but I wonder: Shouldn't this be
> > >> accessible from inside psql as well? I.e. as a backslash command?
> > >>
> > >>
> > > +1
> > >
> >
> > have you idea about command name?  \?+
>
> Some ideas:
>
> \hv
> \help-variables
> \? set
> \? variables
>
>
> Greetings,
>
> Andres Freund
>
> --
>  Andres Freund http://www.2ndQuadrant.com/
>  PostgreSQL Development, 24x7 Support, Training & Services
>
commit 1c00470629f31d61886ff9ae95a6855693f358c8
Author: Pavel Stehule 
Date:   Wed Aug 27 22:47:07 2014 +0200

access to help_variables and usage from psql via psql command

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 74d4618..6d3189d 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -568,6 +568,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
@@ -2572,10 +2581,12 @@ testdb=> \setenv LESS -imx4F
 
 
   
-\?
+\? [ options | variables ]
 
 
-Shows help information about the backslash commands.
+Shows help information about the backslash commands.  This command can have a
+option "variables" or "options" to take help for psql configuration variables
+or psql command line options.
 
 
   
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index e27ff8c..12cbb20 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -1503,7 +1503,19 @@ exec_command(const char *cmd,
 
 	/* \? -- slash command help */
 	else if (strcmp(cmd, "?") == 0)
-		slashUsage(pset.popt.topt.pager);
+	{
+		char	   *opt0 = psql_scan_slash_option(scan_state,
+	OT_NORMAL, NULL, false);
+
+		if (!opt0)
+			slashUsage(pset.popt.topt.pager);
+		else if (strcmp(opt0, "variables") == 0)
+			help_variables(pset.popt.topt.pager);
+		else if (strcmp(opt0, "options") == 0)
+			usage(pset.popt.topt.pager);
+		else
+			slashUsage(pset.popt.topt.pager);
+	}
 
 #if 0
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index f8f000f..5e7953d 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -46,11 +46,12 @@
 #define ON(var) (var ? _("on") : _("off"))
 
 void
-usage(void)
+usage(unsigned short int pager)
 {
 	const char *env;
 	const char *user;
 	char	   *errstr;
+	FILE	   *output;
 
 	/* Find default user, in case we need it. */
 	user = getenv("PGUSER");
@@ -64,77 +65,82 @@ usage(void)
 		}
 	}
 
-	printf(_("psql is the PostgreSQL interactive terminal.\n\n"));
-	printf(_("Usage:\n"));
-	printf(_("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
+	output = PageOutput(59, pager);
+
+	fprintf(output, _("psql is the PostgreSQL interactive terminal.\n\n"));
+	fprintf(output, _("Usage:\n"));
+	fprintf(output, _("  psql [OPTION]... [DBNAME [USERNAME]]\n\n"));
 
-	printf(_("General options:\n"));
+	fprintf(output, _("General options:\n"));
 	/* Display default database */
 	env = getenv("PGDATABASE");
 	if (!env)
 		env = user;
-	printf(_("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"));
-	printf(_("  -d, --dbname=DBNAME  database name to connect to (default: \"%s\")\n"), env);
-	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
-	printf(_("  -l, --list   list available databases, then exit\n"));
-	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
-	printf(_("  -V, --versionoutput version information, then exit\n"));
-	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
-	printf(_("  -1 (\"one\"), --single-transaction\n"
+	fprintf(output, _("  -c, --command=COMMANDrun only single command (SQL or internal) and exit\n"));
+	fprintf(output, _("  -d, --dbname=DBNAME  database name to connect to (default: \"%s\")\n"), env);
+	fprintf(output, _("  -f, --file=FILENAME  execute commands from file, then exit\n"));
+	fprintf(output, _("  -l, --list   list available databases, then exit\n"));
+	fprintf(output, _("  -v, --set=, --variable=NAME=VALUE\n"
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
+	fprintf(output, _("  -V, --versionoutput version information, then exit\n"));
+	fprintf(output, _("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
+	fprintf(output, _("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interact

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-26 Thread Andres Freund
On 2014-08-26 13:44:16 +0200, Pavel Stehule wrote:
> 2014-08-26 13:30 GMT+02:00 Petr Jelinek :
> 
> > On 26/08/14 13:20, Andres Freund wrote:
> >
> >>
> >> I'm looking at committing this, but I wonder: Shouldn't this be
> >> accessible from inside psql as well? I.e. as a backslash command?
> >>
> >>
> > +1
> >
> 
> have you idea about command name?  \?+

Some ideas:

\hv
\help-variables
\? set
\? variables


Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-26 Thread Pavel Stehule
2014-08-26 13:30 GMT+02:00 Petr Jelinek :

> On 26/08/14 13:20, Andres Freund wrote:
>
>>
>> I'm looking at committing this, but I wonder: Shouldn't this be
>> accessible from inside psql as well? I.e. as a backslash command?
>>
>>
> +1
>

have you idea about command name?  \?+

Pavel




>
>
> --
>  Petr Jelinek  http://www.2ndQuadrant.com/
>
>  PostgreSQL Development, 24x7 Support, Training & Services
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-26 Thread Petr Jelinek

On 26/08/14 13:20, Andres Freund wrote:


I'm looking at committing this, but I wonder: Shouldn't this be
accessible from inside psql as well? I.e. as a backslash command?



+1


--
 Petr Jelinek  http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-26 Thread Andres Freund
On 2014-06-29 18:54:50 +0530, Abhijit Menon-Sen wrote:
> At 2014-06-29 20:35:04 +0900, maumau...@gmail.com wrote:
> >
> > Thanks, I marked it as ready for committer.  I hope Fujii san or
> > another committer will commit this, refining English expression if
> > necessary.
> 
> Since it was just a matter of editing, I went through the patch and
> corrected various minor errors (typos, awkwardness, etc.). I agree
> that this is now ready for committer.
> 
> I've attached the updated diff.

I'm looking at committing this, but I wonder: Shouldn't this be
accessible from inside psql as well? I.e. as a backslash command?

Greetings,

Andres Freund

-- 
 Andres Freund http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-08-19 Thread Alvaro Herrera
Abhijit Menon-Sen wrote:
> At 2014-06-29 20:35:04 +0900, maumau...@gmail.com wrote:
> >
> > Thanks, I marked it as ready for committer.  I hope Fujii san or
> > another committer will commit this, refining English expression if
> > necessary.
> 
> Since it was just a matter of editing, I went through the patch and
> corrected various minor errors (typos, awkwardness, etc.). I agree
> that this is now ready for committer.

FWIW I think "determines" was correct.



-- 
Álvaro Herrerahttp://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-29 Thread Pavel Stehule
2014-06-29 15:24 GMT+02:00 Abhijit Menon-Sen :

> At 2014-06-29 20:35:04 +0900, maumau...@gmail.com wrote:
> >
> > Thanks, I marked it as ready for committer.  I hope Fujii san or
> > another committer will commit this, refining English expression if
> > necessary.
>
> Since it was just a matter of editing, I went through the patch and
> corrected various minor errors (typos, awkwardness, etc.). I agree
> that this is now ready for committer.
>
> I've attached the updated diff.
>

I checked it, and it looks well

Thank you

Regards

Pavel


>
> -- Abhijit
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-29 Thread Abhijit Menon-Sen
At 2014-06-29 20:35:04 +0900, maumau...@gmail.com wrote:
>
> Thanks, I marked it as ready for committer.  I hope Fujii san or
> another committer will commit this, refining English expression if
> necessary.

Since it was just a matter of editing, I went through the patch and
corrected various minor errors (typos, awkwardness, etc.). I agree
that this is now ready for committer.

I've attached the updated diff.

-- Abhijit
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index ee6ec3a..6a172dc 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -556,6 +556,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..9ff2dd9 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables show a list of all specially treated variables, then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,99 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of specially treated variables.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT if set, successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determine the case used to complete SQL keywords\n"
+	 " [lower, upper, preserve-lower, preserve-upper]\n"));
+	printf(_("  DBNAME the currently connected database name\n"));
+	printf(_("  ECHO   control what input is written to standard output [all, queries]\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries executed by backslash commands\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthe number of result rows to fetch and display at a time\n"
+	 " (default: 0=unlimited)\n"));
+	printf(_("  HISTCONTROLcontrol history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  if set, an error doesn't stop a transaction (uses implicit SAVEPOINTs)\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\n"));
+	printf(_("  PORT   server port of the current connection\n"));
+	printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
+	 " specify the psql prompt\n"));
+	printf(_("  QUIET  run quietly (same as -q option)\n"));
+	printf(_("  SINGLELINE end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  SINGLESTEP single-step mode (same as -s option)\n"));
+	printf(_("  USER   the currently connected database user\n"));
+	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
+
+	printf(_("\nPrinting options:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
+
+	printf(_("  border border style (number)\n"));
+	printf(_("  columnsset the target width for the wrapped format\n"));
+	printf(_("  expanded (or x)toggle expanded output\n"));
+	printf(_("  fieldsep   field separator for unaligned output (default '|')\n"));
+	printf(_("  fieldsep_zero  set field separator in unaligned mode to zero\n"));
+	printf(_("  format set output format [unaligned, 

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-29 Thread Pavel Stehule
2014-06-29 13:35 GMT+02:00 MauMau :

> Thanks, I marked it as ready for committer.  I hope Fujii san or another
> committer will commit this, refining English expression if necessary.
>

sure

Thank you very much

Regards

Pavel


>
> Regards
> MauMau
>
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-29 Thread MauMau
Thanks, I marked it as ready for committer.  I hope Fujii san or another 
committer will commit this, refining English expression if necessary.


Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-28 Thread Pavel Stehule
Hi


2014-06-29 0:48 GMT+02:00 MauMau :

> From: "Pavel Stehule" 
>
>  I modified description of setting system variables in dependency on O.S.
>>
>
> Thank you, it's almost OK.  As mentioned in my previous mail, I think
> "determines" should be "determine" to follow other messages.  I'll mark
> this patch as ready for committer when this is fixed.



fixes

>
>
> + printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when
> completing an SQL key word\n"));
>
> Personally, I don't think we have to describe how to set environment
> variables, because it's preliminary knowledge and not specific to
> PostgreSQL.  However, I don't mind if you retain or remove the description.
>

ok

Regards

Pavel


>
> Regards
> MauMau
>
>
>
>
commit 44ba9d7fc1816dde4605ef59ea68b92b8ceb1c57
Author: Pavel Stehule 
Date:   Sat Jun 28 14:19:47 2014 +0200

initial

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index ee6ec3a..6a172dc 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -556,6 +556,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..d7da7c3 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables show a list of all specially treated variables, then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,98 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of specially treated variables.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determine which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   control what input can be written to standard output [all, queries]\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries executed by backslash commands\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthe number of result rows to fetch and display at a time\n"
+	 " (default: 0=unlimited)\n"));
+	printf(_("  HISTCONTROLcontrol history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when on, the error doesn't stop transaction (uses implicit SAVEPOINTs)\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\n"));
+	printf(_("  PORT   server port of the current connection\n"));
+	printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
+	 " specify the psql prompt\n"));
+	printf(_("  QUIET  run quietly (same as -q option)\n"));
+	printf(_("  SINGLELINE end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  SINGLESTEP single-step mode (same as -s option)\n"));
+	printf(_("  USER   the database user currently connected as\n"));
+	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
+
+	printf(_("\nPrinting options:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
+
+	printf(_("  border border style (number)\n"));
+

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-28 Thread MauMau

From: "Pavel Stehule" 

I modified description of setting system variables in dependency on O.S.


Thank you, it's almost OK.  As mentioned in my previous mail, I think 
"determines" should be "determine" to follow other messages.  I'll mark this 
patch as ready for committer when this is fixed.


+ printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when 
completing an SQL key word\n"));


Personally, I don't think we have to describe how to set environment 
variables, because it's preliminary knowledge and not specific to 
PostgreSQL.  However, I don't mind if you retain or remove the description.


Regards
MauMau





--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-28 Thread Pavel Stehule
Hello

I modified description of setting system variables in dependency on O.S.

Regards

Pavel




2014-06-27 8:54 GMT+02:00 Pavel Stehule :

> Hello
>
> thank you Peter, so now only setting for MS Windows is missing?
>
> Regards
>
> Pavel
>
>
> 2014-06-26 21:57 GMT+02:00 Petr Jelinek :
>
> Hello,
>>
>> I went through the patch, seems mostly fine, I adjusted some wording,
>> removed the default .pgpass file info since it's not accurate, and replaced
>> couple of phrases with (hopefully) more informative ones.
>>
>>
>> --
>>  Petr Jelinek  http://www.2ndQuadrant.com/
>>
>>  PostgreSQL Development, 24x7 Support, Training & Services
>>
>
>
commit 44ba9d7fc1816dde4605ef59ea68b92b8ceb1c57
Author: Pavel Stehule 
Date:   Sat Jun 28 14:19:47 2014 +0200

initial

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index ee6ec3a..6a172dc 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -556,6 +556,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..d7da7c3 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables show a list of all specially treated variables, then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,98 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of specially treated variables.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   control what input can be written to standard output [all, queries]\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries executed by backslash commands\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthe number of result rows to fetch and display at a time\n"
+	 " (default: 0=unlimited)\n"));
+	printf(_("  HISTCONTROLcontrol history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when on, the error doesn't stop transaction (uses implicit SAVEPOINTs)\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\n"));
+	printf(_("  PORT   server port of the current connection\n"));
+	printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
+	 " specify the psql prompt\n"));
+	printf(_("  QUIET  run quietly (same as -q option)\n"));
+	printf(_("  SINGLELINE end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  SINGLESTEP single-step mode (same as -s option)\n"));
+	printf(_("  USER   the database user currently connected as\n"));
+	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
+
+	printf(_("\nPrinting options:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
+
+	printf(_("  border border style (number)\n"));
+	printf(_("  columnsset the target width for the wrapped format\n"));
+	p

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-26 Thread Pavel Stehule
Hello

thank you Peter, so now only setting for MS Windows is missing?

Regards

Pavel


2014-06-26 21:57 GMT+02:00 Petr Jelinek :

> Hello,
>
> I went through the patch, seems mostly fine, I adjusted some wording,
> removed the default .pgpass file info since it's not accurate, and replaced
> couple of phrases with (hopefully) more informative ones.
>
>
> --
>  Petr Jelinek  http://www.2ndQuadrant.com/
>
>  PostgreSQL Development, 24x7 Support, Training & Services
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-26 Thread Petr Jelinek

Hello,

I went through the patch, seems mostly fine, I adjusted some wording, 
removed the default .pgpass file info since it's not accurate, and 
replaced couple of phrases with (hopefully) more informative ones.



--
 Petr Jelinek  http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
commit 4d77ccf19ac77dc0f43a58f4d2b74d4aebed871d
Author: Pavel Stehule 
Date:   Mon Jun 23 19:38:41 2014 +0200

without comments

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index ee6ec3a..6a172dc 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -556,6 +556,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..1304e1a 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables show a list of all specially treated variables, then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,92 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of specially treated variables.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   control what input can be written to standard output [all, queries]\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries executed by backslash commands\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthe number of result rows to fetch and display at a time\n"
+	 " (default: 0=unlimited)\n"));
+	printf(_("  HISTCONTROLcontrol history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when on, the error doesn't stop transaction (uses implicit SAVEPOINTs)\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\n"));
+	printf(_("  PORT   server port of the current connection\n"));
+	printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
+	 " specify the psql prompt\n"));
+	printf(_("  QUIET  run quietly (same as -q option)\n"));
+	printf(_("  SINGLELINE end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  SINGLESTEP single-step mode (same as -s option)\n"));
+	printf(_("  USER   the database user currently connected as\n"));
+	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
+
+	printf(_("\nPrinting options:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
+
+	printf(_("  border border style (number)\n"));
+	printf(_("  columnsset the target width for the wrapped format\n"));
+	printf(_("  expanded (or x)toggle expanded output\n"));
+	printf(_("  fieldsep   field separator for unaligned output (default '|')\n"));
+	printf(_("  fieldsep_zero  set field separator in unaligned mode to zero\n"));
+	printf(_("  format set output format [unaligned, aligned, wrapped,

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-26 Thread Pavel Stehule
2014-06-26 15:26 GMT+02:00 MauMau :

> Hello,
>
> From: "Pavel Stehule" 
>
>> fixed
>>
>
> Thank you.  All is fine.
>
>
>
>  should be ""Environment variables".  And this section lacks description
>>> for Windows, such as:
>>>
>>> + printf(_("  NAME=VALUE [NAME=VALUE] psql ...\n  or \\setenv NAME
>>> [VALUE]
>>> in interactive mode\n\n"));
>>>
>>> + printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));
>>>
>>>
>> ??? -
>>
>
> I meant that how to set environment variables on Windows command prompt is
> different from on UNIX/Linux, and the default password file path is also
> different on Windows.  Do we describe them in this help?
>

hmm, I'll check it

Pavel


>
>
> Lastly, to follow most of your descriptions, "s" at the end of the first
> verb in these messages should be removed.  For example, use "set" instead
> of "sets".
>
>
> + printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when
> completing an SQL key word\n"));
> + printf(_("  columnssets the target width for the wrapped
> format\n"));
> + printf(_("  linestyle  sets the border line drawing style
> [ascii, old-ascii, unicode]\n"));
> + printf(_("  recordsep  specifies the record (line) separator to
> use in unaligned output format\n"));
> + printf(_("  title  sets the table title for any subsequently
> printed tables\n"));
>
>
> This is all I noticed in the review.
>
>
> Regards
> MauMau
>
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-26 Thread MauMau

Hello,

From: "Pavel Stehule" 

fixed


Thank you.  All is fine.



should be ""Environment variables".  And this section lacks description
for Windows, such as:

+ printf(_("  NAME=VALUE [NAME=VALUE] psql ...\n  or \\setenv NAME 
[VALUE]

in interactive mode\n\n"));

+ printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));



??? -


I meant that how to set environment variables on Windows command prompt is 
different from on UNIX/Linux, and the default password file path is also 
different on Windows.  Do we describe them in this help?



Lastly, to follow most of your descriptions, "s" at the end of the first 
verb in these messages should be removed.  For example, use "set" instead of 
"sets".


+ printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when 
completing an SQL key word\n"));
+ printf(_("  columnssets the target width for the wrapped 
format\n"));
+ printf(_("  linestyle  sets the border line drawing style [ascii, 
old-ascii, unicode]\n"));
+ printf(_("  recordsep  specifies the record (line) separator to 
use in unaligned output format\n"));
+ printf(_("  title  sets the table title for any subsequently 
printed tables\n"));



This is all I noticed in the review.


Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-25 Thread Pavel Stehule
Hello

Here is next update


2014-06-25 17:17 GMT+02:00 MauMau :

> OK, let me help you, though I'm only a Japanese who is never confident in
> my English.
>
> (1)
> As Fujii-san pointed out, could you add explanation for --help-variables
> in doc/src/sgml/ref/psqlref.sgml?
>
>
> (2)
>
> + printf(_("  --help-variables list of available configuration
> variables (options), then exit\n"));
>
> should better be:
>
> + printf(_("  --help-variables show A list of all specially
> treated variables, then exit\n"));
>
> This follows the psql manual page.  Similarly,
>
> + printf(_("List of variables (options) for use from command line.\n"));
>
> should be:
>
> + printf(_("List of specially treated variables.\n"));
>
>
> (3)
> + printf(_("  ECHO   control what input can be writtent to
> standard output [all, queries]\n"));
>
> "writtent" should be "written".  "controls" should be "control" like other
> options.
>
>
> (4)
> + printf(_("  ECHO_HIDDENdisplay internal queries (same as -E
> option)\n"));
>
> should better be:
>
> + printf(_("  ECHO_HIDDENdisplay internal queries executed by
> backslash commands\n"));
>
> I think "(same as ...)" can be omitted to keep the description short.  If
> you want to retain it, other variables should also accompany similar
> description, such as -a for ECHO.
>
>
> (5)
> + printf(_("  FETCH_COUNTfetch many rows at a time (use less
> memory) (default 0 unlimited)\n"));
>
> should better be:
>
> + printf(_("  FETCH_COUNTthe number of result rows to fetch and
> display at a time (default: 0=unlimited)\n"));
>
>
> (6)
> + printf(_("  HISTCONTROLwhen set, controls history list
> [ignorespace, ignoredups, ignoreboth]\n"));
>
> should better be:
>
> + printf(_("  HISTCONTROLcontrol history list [ignorespace,
> ignoredups, ignoreboth]\n"));
>
>
> (7)
> + printf(_("  USER   the database user currently
> connected\n"));
>
> should add "as" at the end:
>
> + printf(_("  USER   the database user currently connected
> as\n"));
>
>
> (8)
> "Printing options" section lack the following ones described in psql
> manual:
>
> columns
> expanded (or x)
> footer
> numericlocale
> tableattr (or T)
>

fixed


>
>
> (9)
> + printf(_("\nEnvironment options:\n"));
>
> should be ""Environment variables".  And this section lacks description
> for Windows, such as:
>
> + printf(_("  NAME=VALUE [NAME=VALUE] psql ...\n  or \\setenv NAME [VALUE]
> in interactive mode\n\n"));
>
> + printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));
>

??? -

Regards

Pavel


>
> Regards
> MauMau
>
>
commit 4d77ccf19ac77dc0f43a58f4d2b74d4aebed871d
Author: Pavel Stehule 
Date:   Mon Jun 23 19:38:41 2014 +0200

without comments

diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index ee6ec3a..6a172dc 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -556,6 +556,15 @@ EOF
   
 
 
+
+  --help-variables
+  
+  
+  Show help about psql variables,
+  and exit.
+  
+  
+
   
  
 
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..1304e1a 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables show a list of all specially treated variables, then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,92 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of specially treated variables.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   control what input can be written 

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-25 Thread MauMau
OK, let me help you, though I'm only a Japanese who is never confident in my 
English.


(1)
As Fujii-san pointed out, could you add explanation for --help-variables in 
doc/src/sgml/ref/psqlref.sgml?



(2)
+ printf(_("  --help-variables list of available configuration 
variables (options), then exit\n"));


should better be:

+ printf(_("  --help-variables show A list of all specially treated 
variables, then exit\n"));


This follows the psql manual page.  Similarly,

+ printf(_("List of variables (options) for use from command line.\n"));

should be:

+ printf(_("List of specially treated variables.\n"));


(3)
+ printf(_("  ECHO   control what input can be writtent to 
standard output [all, queries]\n"));


"writtent" should be "written".  "controls" should be "control" like other 
options.



(4)
+ printf(_("  ECHO_HIDDENdisplay internal queries (same as -E 
option)\n"));


should better be:

+ printf(_("  ECHO_HIDDENdisplay internal queries executed by 
backslash commands\n"));


I think "(same as ...)" can be omitted to keep the description short.  If 
you want to retain it, other variables should also accompany similar 
description, such as -a for ECHO.



(5)
+ printf(_("  FETCH_COUNTfetch many rows at a time (use less memory) 
(default 0 unlimited)\n"));


should better be:

+ printf(_("  FETCH_COUNTthe number of result rows to fetch and 
display at a time (default: 0=unlimited)\n"));



(6)
+ printf(_("  HISTCONTROLwhen set, controls history list 
[ignorespace, ignoredups, ignoreboth]\n"));


should better be:

+ printf(_("  HISTCONTROLcontrol history list [ignorespace, 
ignoredups, ignoreboth]\n"));



(7)
+ printf(_("  USER   the database user currently connected\n"));

should add "as" at the end:

+ printf(_("  USER   the database user currently connected 
as\n"));



(8)
"Printing options" section lack the following ones described in psql manual:

columns
expanded (or x)
footer
numericlocale
tableattr (or T)


(9)
+ printf(_("\nEnvironment options:\n"));

should be ""Environment variables".  And this section lacks description for 
Windows, such as:


+ printf(_("  NAME=VALUE [NAME=VALUE] psql ...\n  or \\setenv NAME [VALUE] 
in interactive mode\n\n"));

+ printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));

Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Pavel Stehule
Hello

I am sending little bit modified patch by Fujii' comments - but I am not
able to fix it more - it is task for someone with better English skill then
I have

Regards

Pavel


2014-06-23 10:02 GMT+02:00 Fujii Masao :

> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule 
> wrote:
> > Hello
> >
> > third version with Erik's update
>
> Here are some my comments:
>
> The document of psql needs to be updated. At least the description of new
> option
> this patch adds needs to be added into the document.
>
> +printf(_("  --help-variables list of available
> configuration variables (options), then exit\n"));
>
> We should get rid of "of" from the message, or add "show" in front of
> "list of"?
>
> +printf(_("  ECHO   write all input lines to standard
> output\n"));
>
> This message seems not to be correct when ECHO=queries is set.
>
> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
> use when completing an SQL key word\n"));
> +printf(_("  DBNAME name of currently connected
> database\n"));
> +printf(_("  ECHO   write all input lines to standard
> output\n"));
>
> I found that some help message line uses a normal form of a verb, but
> other does not.
> We should standardize them?
>
> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql prompt\n"));
>
> When the option name field is long, we should add a new line just
> after the name field
> and align the starting position of the option explanation field. That is,
> for example, the above should be
>
> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
>  " specify the psql prompt\n"));
>
> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
>
> This message seems incorrect to me. When this option is on and an error
> occurs
> in transaction, transaction continues rather than ROLLBACK occurs, IIUC.
> I did not check whole help messages yet, but ISTM some messages are not
> correct.
> It's better to check them again.
>
> +printf(_("  PSQL_RCalternative location of the user's
> .psqlrc file\n"));
>
> Typo: PSQL_RC should be PSQLRC
>
> +printf(_("  PGDATABASE same as the dbname connection
> parameter\n"));
> +printf(_("  PGHOST same as the host connection
> parameter\n"));
> +printf(_("  PGPORT same as the port connection
> parameter\n"));
> +printf(_("  PGUSER same as the user connection
> parameter\n"));
> +printf(_("  PGPASSWORD possibility to set password (not
> recommended)\n"));
> +printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));
>
> I don't think that psql needs to display the help messages of even
> environment
> variables supported by libpq.
>
> Regards,
>
> --
> Fujii Masao
>
commit 4d8a267870f15a22818da226f72223db86944636
Author: Pavel Stehule 
Date:   Mon Jun 23 19:38:41 2014 +0200

without comments

diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..e960f34 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables list of available configuration variables (options), then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,84 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of variables (options) for use from command line.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   controls what input can be writtent to standard output [all, queries]\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries (same as -E option)\n"));
+	printf(_("  ENCODING 

Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Pavel Stehule
2014-06-23 11:53 GMT+02:00 Fujii Masao :

> On Mon, Jun 23, 2014 at 6:06 PM, Pavel Stehule 
> wrote:
> >
> >
> >
> > 2014-06-23 10:57 GMT+02:00 Fujii Masao :
> >
> >> On Mon, Jun 23, 2014 at 5:10 PM, Pavel Stehule  >
> >> wrote:
> >> > Hello
> >> >
> >> >
> >> > 2014-06-23 10:02 GMT+02:00 Fujii Masao :
> >> >
> >> >> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule
> >> >> 
> >> >> wrote:
> >> >> > Hello
> >> >> >
> >> >> > third version with Erik's update
> >> >>
> >> >> Here are some my comments:
> >> >>
> >> >> The document of psql needs to be updated. At least the description of
> >> >> new
> >> >> option
> >> >> this patch adds needs to be added into the document.
> >> >>
> >> >> +printf(_("  --help-variables list of available
> >> >> configuration variables (options), then exit\n"));
> >> >>
> >> >> We should get rid of "of" from the message, or add "show" in front of
> >> >> "list of"?
> >> >>
> >> >> +printf(_("  ECHO   write all input lines to standard
> >> >> output\n"));
> >> >>
> >> >> This message seems not to be correct when ECHO=queries is set.
> >> >>
> >> >> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
> >> >> use when completing an SQL key word\n"));
> >> >> +printf(_("  DBNAME name of currently connected
> >> >> database\n"));
> >> >> +printf(_("  ECHO   write all input lines to standard
> >> >> output\n"));
> >> >>
> >> >> I found that some help message line uses a normal form of a verb, but
> >> >> other does not.
> >> >> We should standardize them?
> >> >>
> >> >> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql
> >> >> prompt\n"));
> >> >>
> >> >> When the option name field is long, we should add a new line just
> >> >> after the name field
> >> >> and align the starting position of the option explanation field. That
> >> >> is,
> >> >> for example, the above should be
> >> >>
> >> >> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
> >> >>  " specify the psql prompt\n"));
> >> >>
> >> >> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
> >> >>
> >> >> This message seems incorrect to me. When this option is on and an
> error
> >> >> occurs
> >> >> in transaction, transaction continues rather than ROLLBACK occurs,
> >> >> IIUC.
> >> >> I did not check whole help messages yet, but ISTM some messages are
> not
> >> >> correct.
> >> >> It's better to check them again.
> >> >>
> >> >> +printf(_("  PSQL_RCalternative location of the
> user's
> >> >> .psqlrc file\n"));
> >> >>
> >> >> Typo: PSQL_RC should be PSQLRC
> >> >>
> >> >> +printf(_("  PGDATABASE same as the dbname connection
> >> >> parameter\n"));
> >> >> +printf(_("  PGHOST same as the host connection
> >> >> parameter\n"));
> >> >> +printf(_("  PGPORT same as the port connection
> >> >> parameter\n"));
> >> >> +printf(_("  PGUSER same as the user connection
> >> >> parameter\n"));
> >> >> +printf(_("  PGPASSWORD possibility to set password (not
> >> >> recommended)\n"));
> >> >> +printf(_("  PGPASSFILE password file (default
> >> >> ~/.pgpass)\n"));
> >> >>
> >> >> I don't think that psql needs to display the help messages of even
> >> >> environment
> >> >> variables supported by libpq.
> >> >>
> >> >
> >> > Main reason is a PGPASSWORD -- it is probably most used env variable
> >> > with
> >> > psql
> >> >
> >> > PGPASSWORD=** psql is very often used pattern
> >>
> >> But it's not recommended as the help message which the patch added says
> ;)
> >
> >
> > why?
> >
> > who can see this value?
>
> I'm sure that the document explains this.
>

ok

I am too Linux centrist :( it is safe there and I don't see a others

Thank you for info

Regards

Pavel


>
> http://www.postgresql.org/docs/devel/static/libpq-envars.html
> ---
> PGPASSWORD behaves the same as the password connection parameter.
> Use of this environment variable is not recommended for security reasons,
> as some operating systems allow non-root users to see process environment
> variables via ps; instead consider using the ~/.pgpass file
> ---
>
> Regards,
>
> --
> Fujii Masao
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Fujii Masao
On Mon, Jun 23, 2014 at 6:06 PM, Pavel Stehule  wrote:
>
>
>
> 2014-06-23 10:57 GMT+02:00 Fujii Masao :
>
>> On Mon, Jun 23, 2014 at 5:10 PM, Pavel Stehule 
>> wrote:
>> > Hello
>> >
>> >
>> > 2014-06-23 10:02 GMT+02:00 Fujii Masao :
>> >
>> >> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule
>> >> 
>> >> wrote:
>> >> > Hello
>> >> >
>> >> > third version with Erik's update
>> >>
>> >> Here are some my comments:
>> >>
>> >> The document of psql needs to be updated. At least the description of
>> >> new
>> >> option
>> >> this patch adds needs to be added into the document.
>> >>
>> >> +printf(_("  --help-variables list of available
>> >> configuration variables (options), then exit\n"));
>> >>
>> >> We should get rid of "of" from the message, or add "show" in front of
>> >> "list of"?
>> >>
>> >> +printf(_("  ECHO   write all input lines to standard
>> >> output\n"));
>> >>
>> >> This message seems not to be correct when ECHO=queries is set.
>> >>
>> >> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
>> >> use when completing an SQL key word\n"));
>> >> +printf(_("  DBNAME name of currently connected
>> >> database\n"));
>> >> +printf(_("  ECHO   write all input lines to standard
>> >> output\n"));
>> >>
>> >> I found that some help message line uses a normal form of a verb, but
>> >> other does not.
>> >> We should standardize them?
>> >>
>> >> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql
>> >> prompt\n"));
>> >>
>> >> When the option name field is long, we should add a new line just
>> >> after the name field
>> >> and align the starting position of the option explanation field. That
>> >> is,
>> >> for example, the above should be
>> >>
>> >> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
>> >>  " specify the psql prompt\n"));
>> >>
>> >> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
>> >>
>> >> This message seems incorrect to me. When this option is on and an error
>> >> occurs
>> >> in transaction, transaction continues rather than ROLLBACK occurs,
>> >> IIUC.
>> >> I did not check whole help messages yet, but ISTM some messages are not
>> >> correct.
>> >> It's better to check them again.
>> >>
>> >> +printf(_("  PSQL_RCalternative location of the user's
>> >> .psqlrc file\n"));
>> >>
>> >> Typo: PSQL_RC should be PSQLRC
>> >>
>> >> +printf(_("  PGDATABASE same as the dbname connection
>> >> parameter\n"));
>> >> +printf(_("  PGHOST same as the host connection
>> >> parameter\n"));
>> >> +printf(_("  PGPORT same as the port connection
>> >> parameter\n"));
>> >> +printf(_("  PGUSER same as the user connection
>> >> parameter\n"));
>> >> +printf(_("  PGPASSWORD possibility to set password (not
>> >> recommended)\n"));
>> >> +printf(_("  PGPASSFILE password file (default
>> >> ~/.pgpass)\n"));
>> >>
>> >> I don't think that psql needs to display the help messages of even
>> >> environment
>> >> variables supported by libpq.
>> >>
>> >
>> > Main reason is a PGPASSWORD -- it is probably most used env variable
>> > with
>> > psql
>> >
>> > PGPASSWORD=** psql is very often used pattern
>>
>> But it's not recommended as the help message which the patch added says ;)
>
>
> why?
>
> who can see this value?

I'm sure that the document explains this.

http://www.postgresql.org/docs/devel/static/libpq-envars.html
---
PGPASSWORD behaves the same as the password connection parameter.
Use of this environment variable is not recommended for security reasons,
as some operating systems allow non-root users to see process environment
variables via ps; instead consider using the ~/.pgpass file
---

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Pavel Stehule
2014-06-23 10:57 GMT+02:00 Fujii Masao :

> On Mon, Jun 23, 2014 at 5:10 PM, Pavel Stehule 
> wrote:
> > Hello
> >
> >
> > 2014-06-23 10:02 GMT+02:00 Fujii Masao :
> >
> >> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule <
> pavel.steh...@gmail.com>
> >> wrote:
> >> > Hello
> >> >
> >> > third version with Erik's update
> >>
> >> Here are some my comments:
> >>
> >> The document of psql needs to be updated. At least the description of
> new
> >> option
> >> this patch adds needs to be added into the document.
> >>
> >> +printf(_("  --help-variables list of available
> >> configuration variables (options), then exit\n"));
> >>
> >> We should get rid of "of" from the message, or add "show" in front of
> >> "list of"?
> >>
> >> +printf(_("  ECHO   write all input lines to standard
> >> output\n"));
> >>
> >> This message seems not to be correct when ECHO=queries is set.
> >>
> >> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
> >> use when completing an SQL key word\n"));
> >> +printf(_("  DBNAME name of currently connected
> >> database\n"));
> >> +printf(_("  ECHO   write all input lines to standard
> >> output\n"));
> >>
> >> I found that some help message line uses a normal form of a verb, but
> >> other does not.
> >> We should standardize them?
> >>
> >> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql
> prompt\n"));
> >>
> >> When the option name field is long, we should add a new line just
> >> after the name field
> >> and align the starting position of the option explanation field. That
> is,
> >> for example, the above should be
> >>
> >> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
> >>  " specify the psql prompt\n"));
> >>
> >> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
> >>
> >> This message seems incorrect to me. When this option is on and an error
> >> occurs
> >> in transaction, transaction continues rather than ROLLBACK occurs, IIUC.
> >> I did not check whole help messages yet, but ISTM some messages are not
> >> correct.
> >> It's better to check them again.
> >>
> >> +printf(_("  PSQL_RCalternative location of the user's
> >> .psqlrc file\n"));
> >>
> >> Typo: PSQL_RC should be PSQLRC
> >>
> >> +printf(_("  PGDATABASE same as the dbname connection
> >> parameter\n"));
> >> +printf(_("  PGHOST same as the host connection
> >> parameter\n"));
> >> +printf(_("  PGPORT same as the port connection
> >> parameter\n"));
> >> +printf(_("  PGUSER same as the user connection
> >> parameter\n"));
> >> +printf(_("  PGPASSWORD possibility to set password (not
> >> recommended)\n"));
> >> +printf(_("  PGPASSFILE password file (default
> >> ~/.pgpass)\n"));
> >>
> >> I don't think that psql needs to display the help messages of even
> >> environment
> >> variables supported by libpq.
> >>
> >
> > Main reason is a PGPASSWORD -- it is probably most used env variable with
> > psql
> >
> > PGPASSWORD=** psql is very often used pattern
>
> But it's not recommended as the help message which the patch added says ;)
>

why?

who can see this value?

regards

Pavel


>
> Regards,
>
> --
> Fujii Masao
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Fujii Masao
On Mon, Jun 23, 2014 at 5:10 PM, Pavel Stehule  wrote:
> Hello
>
>
> 2014-06-23 10:02 GMT+02:00 Fujii Masao :
>
>> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule 
>> wrote:
>> > Hello
>> >
>> > third version with Erik's update
>>
>> Here are some my comments:
>>
>> The document of psql needs to be updated. At least the description of new
>> option
>> this patch adds needs to be added into the document.
>>
>> +printf(_("  --help-variables list of available
>> configuration variables (options), then exit\n"));
>>
>> We should get rid of "of" from the message, or add "show" in front of
>> "list of"?
>>
>> +printf(_("  ECHO   write all input lines to standard
>> output\n"));
>>
>> This message seems not to be correct when ECHO=queries is set.
>>
>> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
>> use when completing an SQL key word\n"));
>> +printf(_("  DBNAME name of currently connected
>> database\n"));
>> +printf(_("  ECHO   write all input lines to standard
>> output\n"));
>>
>> I found that some help message line uses a normal form of a verb, but
>> other does not.
>> We should standardize them?
>>
>> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql prompt\n"));
>>
>> When the option name field is long, we should add a new line just
>> after the name field
>> and align the starting position of the option explanation field. That is,
>> for example, the above should be
>>
>> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
>>  " specify the psql prompt\n"));
>>
>> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
>>
>> This message seems incorrect to me. When this option is on and an error
>> occurs
>> in transaction, transaction continues rather than ROLLBACK occurs, IIUC.
>> I did not check whole help messages yet, but ISTM some messages are not
>> correct.
>> It's better to check them again.
>>
>> +printf(_("  PSQL_RCalternative location of the user's
>> .psqlrc file\n"));
>>
>> Typo: PSQL_RC should be PSQLRC
>>
>> +printf(_("  PGDATABASE same as the dbname connection
>> parameter\n"));
>> +printf(_("  PGHOST same as the host connection
>> parameter\n"));
>> +printf(_("  PGPORT same as the port connection
>> parameter\n"));
>> +printf(_("  PGUSER same as the user connection
>> parameter\n"));
>> +printf(_("  PGPASSWORD possibility to set password (not
>> recommended)\n"));
>> +printf(_("  PGPASSFILE password file (default
>> ~/.pgpass)\n"));
>>
>> I don't think that psql needs to display the help messages of even
>> environment
>> variables supported by libpq.
>>
>
> Main reason is a PGPASSWORD -- it is probably most used env variable with
> psql
>
> PGPASSWORD=** psql is very often used pattern

But it's not recommended as the help message which the patch added says ;)

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Pavel Stehule
Hello


2014-06-23 10:02 GMT+02:00 Fujii Masao :

> On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule 
> wrote:
> > Hello
> >
> > third version with Erik's update
>
> Here are some my comments:
>
> The document of psql needs to be updated. At least the description of new
> option
> this patch adds needs to be added into the document.
>
> +printf(_("  --help-variables list of available
> configuration variables (options), then exit\n"));
>
> We should get rid of "of" from the message, or add "show" in front of
> "list of"?
>
> +printf(_("  ECHO   write all input lines to standard
> output\n"));
>
> This message seems not to be correct when ECHO=queries is set.
>
> +printf(_("  COMP_KEYWORD_CASE  determines which letter case to
> use when completing an SQL key word\n"));
> +printf(_("  DBNAME name of currently connected
> database\n"));
> +printf(_("  ECHO   write all input lines to standard
> output\n"));
>
> I found that some help message line uses a normal form of a verb, but
> other does not.
> We should standardize them?
>
> +printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql prompt\n"));
>
> When the option name field is long, we should add a new line just
> after the name field
> and align the starting position of the option explanation field. That is,
> for example, the above should be
>
> printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
>  " specify the psql prompt\n"));
>
> +printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
>
> This message seems incorrect to me. When this option is on and an error
> occurs
> in transaction, transaction continues rather than ROLLBACK occurs, IIUC.
> I did not check whole help messages yet, but ISTM some messages are not
> correct.
> It's better to check them again.
>
> +printf(_("  PSQL_RCalternative location of the user's
> .psqlrc file\n"));
>
> Typo: PSQL_RC should be PSQLRC
>
> +printf(_("  PGDATABASE same as the dbname connection
> parameter\n"));
> +printf(_("  PGHOST same as the host connection
> parameter\n"));
> +printf(_("  PGPORT same as the port connection
> parameter\n"));
> +printf(_("  PGUSER same as the user connection
> parameter\n"));
> +printf(_("  PGPASSWORD possibility to set password (not
> recommended)\n"));
> +printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));
>
> I don't think that psql needs to display the help messages of even
> environment
> variables supported by libpq.
>
>
Main reason is a PGPASSWORD -- it is probably most used env variable with
psql

PGPASSWORD=** psql is very often used pattern

Regards

Pavel Stehule


> Regards,
>
> --
> Fujii Masao
>


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-23 Thread Fujii Masao
On Mon, Jun 23, 2014 at 12:04 AM, Pavel Stehule  wrote:
> Hello
>
> third version with Erik's update

Here are some my comments:

The document of psql needs to be updated. At least the description of new option
this patch adds needs to be added into the document.

+printf(_("  --help-variables list of available
configuration variables (options), then exit\n"));

We should get rid of "of" from the message, or add "show" in front of "list of"?

+printf(_("  ECHO   write all input lines to standard
output\n"));

This message seems not to be correct when ECHO=queries is set.

+printf(_("  COMP_KEYWORD_CASE  determines which letter case to
use when completing an SQL key word\n"));
+printf(_("  DBNAME name of currently connected database\n"));
+printf(_("  ECHO   write all input lines to standard
output\n"));

I found that some help message line uses a normal form of a verb, but
other does not.
We should standardize them?

+printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql prompt\n"));

When the option name field is long, we should add a new line just
after the name field
and align the starting position of the option explanation field. That is,
for example, the above should be

printf(_("  PROMPT1, PROMPT2, PROMPT3\n"
 " specify the psql prompt\n"));

+printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));

This message seems incorrect to me. When this option is on and an error occurs
in transaction, transaction continues rather than ROLLBACK occurs, IIUC.
I did not check whole help messages yet, but ISTM some messages are not correct.
It's better to check them again.

+printf(_("  PSQL_RCalternative location of the user's
.psqlrc file\n"));

Typo: PSQL_RC should be PSQLRC

+printf(_("  PGDATABASE same as the dbname connection
parameter\n"));
+printf(_("  PGHOST same as the host connection parameter\n"));
+printf(_("  PGPORT same as the port connection
parameter\n"));
+printf(_("  PGUSER same as the user connection parameter\n"));
+printf(_("  PGPASSWORD possibility to set password (not
recommended)\n"));
+printf(_("  PGPASSFILE password file (default ~/.pgpass)\n"));

I don't think that psql needs to display the help messages of even environment
variables supported by libpq.

Regards,

-- 
Fujii Masao


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [Fwd: Re: [HACKERS] proposal: new long psql parameter --on-error-stop]

2014-06-22 Thread Pavel Stehule
Hello

third version with Erik's update

Thanks Erik

Regards

Pavel


2014-06-22 12:01 GMT+02:00 Erik Rijkers :

> Hi Pavel,
>
> It seems you overlooked the patch that I sent?
>
> There are some typo's in your patch (also in v2) like:
>
> PROPMPT1, PROPMT2, PROPMPT3
>
> SIGLELINE
>
> I fixed those in my patch and improved the text.
> Attached is the diff against your v1 patch
>
>
> Thanks,
>
>
> Erik
>
>
>
>
>
>
>
>
> ---- Original Message
> -----------------
> Subject: Re: [HACKERS] proposal: new long psql parameter --on-error-stop
> From:"Erik Rijkers" 
> Date:Sun, June 22, 2014 01:33
> To:  "Pavel Stehule" 
> Cc:  "MauMau" 
>  "Andrew Dunstan" 
>  "Tom Lane" 
>  Fabrízio Mello 
>  "PostgreSQL Hackers" 
>
> ---
>
> On Sun, June 22, 2014 00:10, Pavel Stehule wrote:
>
> > [help-variables-01.patch ]
>
> +1.  This patch is a very useful improvement, IMHO.
>
> I edited the text somewhat; and removed some obvious typos.
>
> thanks,
>
> Erik Rijkers
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers
>
commit 2d44ee1f1bf7f7b57e51522dca88b9f55b308e67
Author: Pavel Stehule 
Date:   Sun Jun 22 00:08:24 2014 +0200

show a list of psql internal, psql formatting and system variables used by psql

diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..7b026af 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables list of available configuration variables (options), then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,81 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of variables (options) for use from command line.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   write all input lines to standard output\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries (same as -E option)\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthis many rows at a time (use less memory) (default 0 unlimited)\n"));
+	printf(_("  HISTCONTROLwhen set, controls history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\

Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-22 Thread Pavel Stehule
2014-06-22 9:32 GMT+02:00 MauMau :

> From: "Pavel Stehule" 
>
>  pg_dumpall aligns all options left with each other, whether they are short
>>> or long.
>>>
>>>  -x, --no-privileges  do not dump privileges (grant/revoke)
>>>  --binary-upgrade for use by upgrade utilities only
>>>  --column-inserts dump data as INSERT commands with column
>>> names
>>>
>>>
>> ok
>>
>> I fixed it
>>
>
> Thank you.  I marked this patch as ready for committer.
>

Thank you very much

Pavel


>
> Regards
> MauMau
>
>
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-22 Thread MauMau

From: "Pavel Stehule" 
pg_dumpall aligns all options left with each other, whether they are 
short

or long.

 -x, --no-privileges  do not dump privileges (grant/revoke)
 --binary-upgrade for use by upgrade utilities only
 --column-inserts dump data as INSERT commands with column
names



ok

I fixed it


Thank you.  I marked this patch as ready for committer.

Regards
MauMau




--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-21 Thread Pavel Stehule
2014-06-22 2:26 GMT+02:00 MauMau :

> From: "Pavel Stehule" 
>
>  I am not sure in this point. It is aligned left with all long options:
>>
>>  -?, --help   show this help, then exit
>>  --help-variables list of available configuration variables
>> (options), then exit
>>
>
> pg_dumpall aligns all options left with each other, whether they are short
> or long.
>
>  -x, --no-privileges  do not dump privileges (grant/revoke)
>  --binary-upgrade for use by upgrade utilities only
>  --column-inserts dump data as INSERT commands with column
> names
>

ok

I fixed it

Regards

Pavel


>
> Regards
> MauMau
>
>
commit e07af2c24cb8ae85ef6b3ec53baf3444bfa27ad3
Author: Pavel Stehule 
Date:   Sun Jun 22 00:08:24 2014 +0200

show a list of psql internal, psql formatting and system variables used by psql

diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..59030eb 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables list of available configuration variables (options), then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,80 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of variables (options) for use from command line.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT when is on, successful SQL command is automatically commited\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME the name of currently connected database\n"));
+	printf(_("  ECHO   all lines from input can be written to standard output\n"));
+	printf(_("  ECHO_HIDDENdisplay queries for internal commands (same as -E option)\n"));
+	printf(_("  ENCODING   the current client character set encoding\n"));
+	printf(_("  FETCH_COUNThow many rows should be for one page (default 0 unlimited)\n"));
+	printf(_("  HISTCONTROLwhen is set, control history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name that be used for store history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically\n"));
+	printf(_("  ON_ERROR_STOP  when is set, then batch execution stop immediately after error\n"));
+	printf(_("  PORT   the database server port to which is currently used\n"));
+	printf(_("  PROPMPT1, PROPMT2, PROPMPT3  specify a look of psql prompt\n"));
+	printf(_("  QUIET  when is set, run quietly (same as -q option)\n"));
+	printf(_("  SIGLELINE  end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  SINGLESTEP confirm each query mode (same as -s option)\n"));
+	printf(_("  USER   the database user that are currently connected\n"));
+	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
+
+	printf(_("\nPrinting options:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
+
+	printf(_("  border number of border style\n"));
+	printf(_("  fieldsep   specify field separator for unaligned output\n"));
+	printf(_("  fieldsep_zero  field separator in unaligned mode will be zero\n"));
+	printf(_("  format set output format [unaligned, aligned, wrapped, html, latex, ..]\n"));
+	printf(_("  linestyle  sets the border line drawing style [asci

Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-21 Thread MauMau

From: "Pavel Stehule" 

I am not sure in this point. It is aligned left with all long options:

 -?, --help   show this help, then exit
 --help-variables list of available configuration variables
(options), then exit


pg_dumpall aligns all options left with each other, whether they are short 
or long.


 -x, --no-privileges  do not dump privileges (grant/revoke)
 --binary-upgrade for use by upgrade utilities only
 --column-inserts dump data as INSERT commands with column 
names


Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-21 Thread Erik Rijkers
On Sun, June 22, 2014 00:10, Pavel Stehule wrote:

> [help-variables-01.patch ]

+1.  This patch is a very useful improvement, IMHO.

I edited the text somewhat; and removed some obvious typos.

thanks,

Erik Rijkers--- src/bin/psql/help.c.orig	2014-06-22 00:31:55.450860460 +0200
+++ src/bin/psql/help.c	2014-06-22 01:28:23.546375133 +0200
@@ -292,36 +292,36 @@
 	printf(_("Usage:\n"));
 	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
 
-	printf(_("  AUTOCOMMIT when is on, successful SQL command is automatically commited\n"));
+	printf(_("  AUTOCOMMIT successful SQL commands are automatically committed\n"));
 	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
-	printf(_("  DBNAME the name of currently connected database\n"));
-	printf(_("  ECHO   all lines from input can be written to standard output\n"));
-	printf(_("  ECHO_HIDDENdisplay queries for internal commands (same as -E option)\n"));
-	printf(_("  ENCODING   the current client character set encoding\n"));
-	printf(_("  FETCH_COUNThow many rows should be for one page (default 0 unlimited)\n"));
-	printf(_("  HISTCONTROLwhen is set, control history list [ignorespace, ignoredups, ignoreboth]\n"));
-	printf(_("  HISTFILE   file name that be used for store history list\n"));
+	printf(_("  DBNAME name of currently connected database\n"));
+	printf(_("  ECHO   write all input lines to standard output\n"));
+	printf(_("  ECHO_HIDDENdisplay internal queries (same as -E option)\n"));
+	printf(_("  ENCODING   current client character set encoding\n"));
+	printf(_("  FETCH_COUNTthis many rows at a time (use less memory) (default 0 unlimited)\n"));
+	printf(_("  HISTCONTROLwhen set, controls history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name used to store the history list\n"));
 	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
 	printf(_("  HOST   the currently connected database server\n"));
 	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
 	printf(_("  LASTOIDthe value of last affected OID\n"));
-	printf(_("  ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically\n"));
-	printf(_("  ON_ERROR_STOP  when is set, then batch execution stop immediately after error\n"));
-	printf(_("  PORT   the database server port to which is currently used\n"));
-	printf(_("  PROPMPT1, PROPMT2, PROPMPT3  specify a look of psql prompt\n"));
-	printf(_("  QUIET  when is set, run quietly (same as -q option)\n"));
-	printf(_("  SIGLELINE  end of line terminates SQL command mode (same as -S option)\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when on, ROLLBACK on error\n"));
+	printf(_("  ON_ERROR_STOP  stop batch execution after error\n"));
+	printf(_("  PORT   the database server port\n"));
+	printf(_("  PROMPT1, PROMPT2, PROMPT3  specify the psql prompt\n"));
+	printf(_("  QUIET  run quietly (same as -q option)\n"));
+	printf(_("  SINGLELINE end of line terminates SQL command mode (same as -S option)\n"));
 	printf(_("  SINGLESTEP confirm each query mode (same as -s option)\n"));
-	printf(_("  USER   the database user that are currently connected\n"));
+	printf(_("  USER   the database user currently connected\n"));
 	printf(_("  VERBOSITY  control verbosity of error reports [default, verbose, terse]\n"));
 
 	printf(_("\nPrinting options:\n"));
 	printf(_("Usage:\n"));
 	printf(_("  psql --pset=NAME[=VALUE]\n  or \\pset NAME [VALUE] in interactive mode\n\n"));
 
-	printf(_("  border number of border style\n"));
-	printf(_("  fieldsep   specify field separator for unaligned output\n"));
-	printf(_("  fieldsep_zero  field separator in unaligned mode will be zero\n"));
+	printf(_("  border border style (number)\n"));
+	printf(_("  fieldsep   field separator for unaligned output (default '|')\n"));
+	printf(_("  fieldsep_zero  set field separator in unaligned mode to zero\n"));
 	printf(_("  format set output format [unaligned, aligned, wrapped, html, latex, ..]\n"));
 	printf(_("  linestyle  sets the border line drawing style [ascii, old-ascii, unicode]\n"));
 	printf(_("  null   sets the string to be printed in place of a null value\n"));
@@ -333,7 +333,7 @@
 
 	printf(_("\nEnvironment options:\n"));
 	printf(_("Usage:\n"));
-	printf(_("  NAME=VALUE, [NAME=VALUE] psql ...\n  or \\setenv NAME [VALUE] in interactive mode\n\n"));
+	printf(_("  NAME=VALUE [NAME=VALUE] psql ...\n  or \\setenv NAME [VALUE] in interactive mode\n\n"));
 
 	printf(_("  COLUMNSnumber of columns for wr

Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-21 Thread Pavel Stehule
Hello


2014-06-21 15:51 GMT+02:00 MauMau :

> eFrom: "Pavel Stehule" 
>
>> here is a prototype:
>>
>
> The patch applied and built with success.  There are a few minor things:
>
>
> (1)
> help_variables() lacks description of some variables such as SINGLELINE
> and SINGLESTEP.  I think this help should list all available variables,
> because users may want to know the existence of those missing variables.
>  Based on this, modify these lines: remove "some" from the first line and
> the entire second line.
>
> + printf(_("List of some variables (options) for use from command
> line.\n"));
> + printf(_("Complete list you find in psql section in the PostgreSQL
> documentation.\n\n"));
>
>
I fixed it


>
> (2)
> The indent is different from other lines.  Leave just two spaces at the
> beginning of the line.
>
> + printf(_("  --help-variables list of available configuration
> variables (options), then exit\n"));
>

I am not sure in this point. It is aligned left with all long options:

  -?, --help   show this help, then exit
  --help-variables list of available configuration variables
(options), then exit

Input and output options:
  -a, --echo-all   echo all input from script
  -e, --echo-queries   echo commands sent to server
  -E, --echo-hiddendisplay queries that internal commands generate

 I am thinking so current implementation has sense.


>
>
> (3)
> This change is unnecessary.  See src/bin/pg_dumpall.c for similar switches.
>
> - while ((c = getopt_long(argc, argv, "aAc:d:eEf:F:h:HlL:no:p:P:qR:
> sStT:U:v:VwWxXz?01",
> or+ while ((c = getopt_long(argc, argv, "aAc:d:eEf:F:h:HlL:no:p:P:qR:
> sStT:U:v:VwWxXz?001",
>

fixed


>
> Regards
> MauMau
>
>

updated patch is in attachment

Regards

Pavel
commit 826bd11fb4e9ac4b26cfe2e3702535f6b9527c12
Author: Pavel Stehule 
Date:   Sun Jun 22 00:08:24 2014 +0200

initial

diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index 3aa3c16..aa11808 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables list of available configuration variables (options), then exit\n"));
 
 	printf(_("\nInput and output options:\n"));
 	printf(_("  -a, --echo-all   echo all input from script\n"));
@@ -279,6 +280,80 @@ slashUsage(unsigned short int pager)
 }
 
 
+/*
+ * show list of available variables (options) from command line
+ */
+void
+help_variables(void)
+{
+	printf(_("List of variables (options) for use from command line.\n"));
+
+	printf(_("psql variables:\n"));
+	printf(_("Usage:\n"));
+	printf(_("  psql --set=NAME=VALUE\n  or \\set NAME VALUE in interactive mode\n\n"));
+
+	printf(_("  AUTOCOMMIT when is on, successful SQL command is automatically commited\n"));
+	printf(_("  COMP_KEYWORD_CASE  determines which letter case to use when completing an SQL key word\n"));
+	printf(_("  DBNAME the name of currently connected database\n"));
+	printf(_("  ECHO   all lines from input can be written to standard output\n"));
+	printf(_("  ECHO_HIDDENdisplay queries for internal commands (same as -E option)\n"));
+	printf(_("  ENCODING   the current client character set encoding\n"));
+	printf(_("  FETCH_COUNThow many rows should be for one page (default 0 unlimited)\n"));
+	printf(_("  HISTCONTROLwhen is set, control history list [ignorespace, ignoredups, ignoreboth]\n"));
+	printf(_("  HISTFILE   file name that be used for store history list\n"));
+	printf(_("  HISTSIZE   the number of commands to store in the command history\n"));
+	printf(_("  HOST   the currently connected database server\n"));
+	printf(_("  IGNOREEOF  if unset, sending an EOF to interactive session terminates application\n"));
+	printf(_("  LASTOIDthe value of last affected OID\n"));
+	printf(_("  ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically\n"));
+	printf(_("  ON_ERROR_STOP  when is set, then batch execution stop immediately after error\n"));
+	printf(_("  PORT   the database server port to which is currently used\n"));
+	printf(_("  PROPMPT1, PROPMT2, PROPMPT3  specify a look

Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-06-21 Thread MauMau

eFrom: "Pavel Stehule" 

here is a prototype:


The patch applied and built with success.  There are a few minor things:


(1)
help_variables() lacks description of some variables such as SINGLELINE and 
SINGLESTEP.  I think this help should list all available variables, because 
users may want to know the existence of those missing variables.  Based on 
this, modify these lines: remove "some" from the first line and the entire 
second line.


+ printf(_("List of some variables (options) for use from command 
line.\n"));
+ printf(_("Complete list you find in psql section in the PostgreSQL 
documentation.\n\n"));



(2)
The indent is different from other lines.  Leave just two spaces at the 
beginning of the line.


+ printf(_("  --help-variables list of available configuration 
variables (options), then exit\n"));



(3)
This change is unnecessary.  See src/bin/pg_dumpall.c for similar switches.

- while ((c = getopt_long(argc, argv, 
"aAc:d:eEf:F:h:HlL:no:p:P:qR:sStT:U:v:VwWxXz?01",
or+ while ((c = getopt_long(argc, argv, 
"aAc:d:eEf:F:h:HlL:no:p:P:qR:sStT:U:v:VwWxXz?001",


Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-03-02 Thread Pavel Stehule
2014-03-01 23:53 GMT+01:00 Fabrízio de Royes Mello 
:

>
> On Sat, Mar 1, 2014 at 5:37 AM, Pavel Stehule 
> wrote:
> >
> > Hello
> >
> > here is a prototype:
> >
> > bash-4.1$ /usr/local/pgsql/bin/psql --help-variables
> > List of some variables (options) for use from command line.
> > Complete list you find in psql section in the PostgreSQL documentation.
> >
> > psql variables:
> > Usage:
> >   psql --set=NAME=VALUE
> >   or \set NAME VALUE in interactive mode
> >
> >   AUTOCOMMIT when is on, successful SQL command is automatically
> commited
> >   COMP_KEYWORD_CASE  determines which letter case to use when completing
> an SQL key word
> >   ECHO   all lines from input can be written to standard
> output
> >   ECHO_HIDDENdisplay queries for internal commands (same as -E
> option)
> >   FETCH_COUNThow many rows should be for one page (default 0
> unlimited)
> >   HISTFILE   file name that be used for store history list
> >   HISTSIZE   the number of commands to store in the command
> history
> >   ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically
> >   ON_ERROR_STOP  when is set, then batch execution stop immediately
> after error
> >   VERBOSITY  control verbosity of error reports [default,
> verbose, terse]
> >
> > Printing options:
> > Usage:
> >   psql --pset=NAME[=VALUE]
> >   or \pset NAME [VALUE] in interactive mode
> >
> >   border number of border style
> >   fieldsep   specify field separator for unaligned output
> >   fieldsep_zero  field separator in unaligned mode will be zero
> >   format set output format [unaligned, aligned, wrapped,
> html, latex, ..]
> >   linestyle  sets the border line drawing style [ascii,
> old-ascii, unicode]
> >   null   sets the string to be printed in place of a null
> value
> >   pager  when the pager option is off, the pager program is
> not used
> >   recordsep  specifies the record (line) separator to use in
> unaligned output format
> >   recordsep_zero record separator be in unaligned output format a
> zero byte
> >   title  sets the table title for any subsequently printed
> tables
> >   tuples_onlyin tuples-only mode, only actual table data is shown
> >
> > Environment options:
> > Usage:
> >   NAME=VALUE, [NAME=VALUE] psql ...
> >   or \setenv NAME [VALUE] in interactive mode
> >
> >   COLUMNSnumber of columns for wrapped format
> >   PAGER  used pager
> >   PGHOST same as the host connection parameter
> >   PGDATABASE same as the dbname connection parameter
> >   PGUSER same as the user connection parameter
> >   PGPASSWORD possibility to set password
> >   PSQL_EDITOR, EDITOR, VISUAL  editor used by \e \ef commands
> >   PSQL_EDITOR_LINE_NUMBER_ARG  style how to line number is used in editor
> >   PSQL_HISTORY   alternative location for the command history file
> >   PSQL_RCalternative location of the user's .psqlrc file
> >   SHELL  command executed by the \! command
> >   TMPDIR directory for storing temporary files
> >
> > For more information consult the psql section in the PostgreSQL
> > documentation.
> >
>
> The patch is ok (apply to master and apply to master without errors).
>
> Maybe we must show the possible values for each variable/option too.
>

Not all options are writeable - and too long option list should be less
readable - It should not to supply documentation


>
> Thinking more about it, would be nice if we have the possibility to show
> help for commands too. Some like that:
>

This can be implemented as alias probably, so it is not necessary - but I
agree, so it is interesting and valid idea

Regards

Pavel


>
> $ psql -H vacuum
> Command: VACUUM
> Description: garbage-collect and optionally analyze a database
> Syntax:
> VACUUM [ ( { FULL | FREEZE | VERBOSE | ANALYZE } [, ...] ) ] [ table_name
> [ (column_name [, ...] ) ] ]
> VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table_name ]
> VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table_name [ (column_name
> [, ...] ) ] ]
>
> $ psql --help-command=vacuum
> Command: VACUUM
> Description: garbage-collect and optionally analyze a database
> Syntax:
> VACUUM [ ( { FULL | FREEZE | VERBOSE | ANALYZE } [, ...] ) ] [ table_name
> [ (column_name [, ...] ) ] ]
> VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table_name ]
> VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table_name [ (column_name
> [, ...] ) ] ]
>
> It's only an idea that occurred to me reading this thread!
>
> Grettings,
>
> --
> Fabrízio de Royes Mello
> Consultoria/Coaching PostgreSQL
> >> Timbira: http://www.timbira.com.br
> >> Blog sobre TI: http://fabriziomello.blogspot.com
> >> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
> >> Twitter: http://twitter.com/fabriziomello
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-03-01 Thread Fabrízio de Royes Mello
On Sat, Mar 1, 2014 at 5:37 AM, Pavel Stehule 
wrote:
>
> Hello
>
> here is a prototype:
>
> bash-4.1$ /usr/local/pgsql/bin/psql --help-variables
> List of some variables (options) for use from command line.
> Complete list you find in psql section in the PostgreSQL documentation.
>
> psql variables:
> Usage:
>   psql --set=NAME=VALUE
>   or \set NAME VALUE in interactive mode
>
>   AUTOCOMMIT when is on, successful SQL command is automatically
commited
>   COMP_KEYWORD_CASE  determines which letter case to use when completing
an SQL key word
>   ECHO   all lines from input can be written to standard
output
>   ECHO_HIDDENdisplay queries for internal commands (same as -E
option)
>   FETCH_COUNThow many rows should be for one page (default 0
unlimited)
>   HISTFILE   file name that be used for store history list
>   HISTSIZE   the number of commands to store in the command
history
>   ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically
>   ON_ERROR_STOP  when is set, then batch execution stop immediately
after error
>   VERBOSITY  control verbosity of error reports [default,
verbose, terse]
>
> Printing options:
> Usage:
>   psql --pset=NAME[=VALUE]
>   or \pset NAME [VALUE] in interactive mode
>
>   border number of border style
>   fieldsep   specify field separator for unaligned output
>   fieldsep_zero  field separator in unaligned mode will be zero
>   format set output format [unaligned, aligned, wrapped,
html, latex, ..]
>   linestyle  sets the border line drawing style [ascii,
old-ascii, unicode]
>   null   sets the string to be printed in place of a null
value
>   pager  when the pager option is off, the pager program is
not used
>   recordsep  specifies the record (line) separator to use in
unaligned output format
>   recordsep_zero record separator be in unaligned output format a
zero byte
>   title  sets the table title for any subsequently printed
tables
>   tuples_onlyin tuples-only mode, only actual table data is shown
>
> Environment options:
> Usage:
>   NAME=VALUE, [NAME=VALUE] psql ...
>   or \setenv NAME [VALUE] in interactive mode
>
>   COLUMNSnumber of columns for wrapped format
>   PAGER  used pager
>   PGHOST same as the host connection parameter
>   PGDATABASE same as the dbname connection parameter
>   PGUSER same as the user connection parameter
>   PGPASSWORD possibility to set password
>   PSQL_EDITOR, EDITOR, VISUAL  editor used by \e \ef commands
>   PSQL_EDITOR_LINE_NUMBER_ARG  style how to line number is used in editor
>   PSQL_HISTORY   alternative location for the command history file
>   PSQL_RCalternative location of the user's .psqlrc file
>   SHELL  command executed by the \! command
>   TMPDIR directory for storing temporary files
>
> For more information consult the psql section in the PostgreSQL
> documentation.
>

The patch is ok (apply to master and apply to master without errors).

Maybe we must show the possible values for each variable/option too.

Thinking more about it, would be nice if we have the possibility to show
help for commands too. Some like that:

$ psql -H vacuum
Command: VACUUM
Description: garbage-collect and optionally analyze a database
Syntax:
VACUUM [ ( { FULL | FREEZE | VERBOSE | ANALYZE } [, ...] ) ] [ table_name [
(column_name [, ...] ) ] ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table_name ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table_name [ (column_name
[, ...] ) ] ]

$ psql --help-command=vacuum
Command: VACUUM
Description: garbage-collect and optionally analyze a database
Syntax:
VACUUM [ ( { FULL | FREEZE | VERBOSE | ANALYZE } [, ...] ) ] [ table_name [
(column_name [, ...] ) ] ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table_name ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table_name [ (column_name
[, ...] ) ] ]

It's only an idea that occurred to me reading this thread!

Grettings,

--
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Timbira: http://www.timbira.com.br
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-03-01 Thread Pavel Stehule
Hello

here is a prototype:

bash-4.1$ /usr/local/pgsql/bin/psql --help-variables
List of some variables (options) for use from command line.
Complete list you find in psql section in the PostgreSQL documentation.

psql variables:
Usage:
  psql --set=NAME=VALUE
  or \set NAME VALUE in interactive mode

  AUTOCOMMIT when is on, successful SQL command is automatically
commited
  COMP_KEYWORD_CASE  determines which letter case to use when completing an
SQL key word
  ECHO   all lines from input can be written to standard output
  ECHO_HIDDENdisplay queries for internal commands (same as -E
option)
  FETCH_COUNThow many rows should be for one page (default 0
unlimited)
  HISTFILE   file name that be used for store history list
  HISTSIZE   the number of commands to store in the command history
  ON_ERROR_ROLLBACK  when is on, raise ROLLBACK on error automatically
  ON_ERROR_STOP  when is set, then batch execution stop immediately
after error
  VERBOSITY  control verbosity of error reports [default, verbose,
terse]

Printing options:
Usage:
  psql --pset=NAME[=VALUE]
  or \pset NAME [VALUE] in interactive mode

  border number of border style
  fieldsep   specify field separator for unaligned output
  fieldsep_zero  field separator in unaligned mode will be zero
  format set output format [unaligned, aligned, wrapped, html,
latex, ..]
  linestyle  sets the border line drawing style [ascii, old-ascii,
unicode]
  null   sets the string to be printed in place of a null value
  pager  when the pager option is off, the pager program is not
used
  recordsep  specifies the record (line) separator to use in
unaligned output format
  recordsep_zero record separator be in unaligned output format a zero
byte
  title  sets the table title for any subsequently printed
tables
  tuples_onlyin tuples-only mode, only actual table data is shown

Environment options:
Usage:
  NAME=VALUE, [NAME=VALUE] psql ...
  or \setenv NAME [VALUE] in interactive mode

  COLUMNSnumber of columns for wrapped format
  PAGER  used pager
  PGHOST same as the host connection parameter
  PGDATABASE same as the dbname connection parameter
  PGUSER same as the user connection parameter
  PGPASSWORD possibility to set password
  PSQL_EDITOR, EDITOR, VISUAL  editor used by \e \ef commands
  PSQL_EDITOR_LINE_NUMBER_ARG  style how to line number is used in editor
  PSQL_HISTORY   alternative location for the command history file
  PSQL_RCalternative location of the user's .psqlrc file
  SHELL  command executed by the \! command
  TMPDIR directory for storing temporary files

For more information consult the psql section in the PostgreSQL
documentation.

Regards

Pavel



2014-02-28 23:01 GMT+01:00 Andrew Dunstan :

>
> On 02/28/2014 04:38 PM, Tom Lane wrote:
>
>> Andrew Dunstan  writes:
>>
>>> Well, then we just have to add more info to --help

>>> +1 for at least doing that. I found it annoying just the other day not
>>> to find it in plsql's --help output, in a moment of brain fade when I
>>> forgot how to spell it. So it's not just beginners who can benefit, it's
>>> people like me whose memory occasionally goes awry.
>>>
>> No objection in principle, but what are we talking about exactly?
>> Adding some new backslash command that lists all the variables that have
>> special meanings?
>>
>
>
> That's a pretty good idea, especially if we give that command a command
> line option too, so something like
>
>psql --special-variables
>
> would run that command and exit.
>
> Maybe I'm over-egging the pudding a bit ;-)
>
> cheers
>
> andrew
>
commit 82a6a61a11bdb76c00481abeccff42b4b532762e
Author: Pavel Stehule 
Date:   Sat Mar 1 09:34:47 2014 +0100

initial

diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index baa9417..fb77132 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -78,12 +78,13 @@ usage(void)
 	printf(_("  -f, --file=FILENAME  execute commands from file, then exit\n"));
 	printf(_("  -l, --list   list available databases, then exit\n"));
 	printf(_("  -v, --set=, --variable=NAME=VALUE\n"
-			 "   set psql variable NAME to VALUE\n"));
+			 "   set psql variable NAME to VALUE e.g.: -v ON_ERROR_STOP=1\n"));
 	printf(_("  -V, --versionoutput version information, then exit\n"));
 	printf(_("  -X, --no-psqlrc  do not read startup file (~/.psqlrc)\n"));
 	printf(_("  -1 (\"one\"), --single-transaction\n"
 			 "   execute as a single transaction (if non-interactive)\n"));
 	printf(_("  -?, --help   show this help, then exit\n"));
+	printf(_("  --help-variables list of available configuration variables (options), then exit\n"));
 
 	pri

Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 22:52 GMT+01:00 Erik Rijkers :

> e.g.: -v ON_ERROR_STOP=1



I checked it and it is not the most long line there, so it can be a good
solution.

Pavel


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 23:01 GMT+01:00 Andrew Dunstan :

>
> On 02/28/2014 04:38 PM, Tom Lane wrote:
>
>> Andrew Dunstan  writes:
>>
>>> Well, then we just have to add more info to --help

>>> +1 for at least doing that. I found it annoying just the other day not
>>> to find it in plsql's --help output, in a moment of brain fade when I
>>> forgot how to spell it. So it's not just beginners who can benefit, it's
>>> people like me whose memory occasionally goes awry.
>>>
>> No objection in principle, but what are we talking about exactly?
>> Adding some new backslash command that lists all the variables that have
>> special meanings?
>>
>
>
> That's a pretty good idea, especially if we give that command a command
> line option too, so something like
>
>psql --special-variables
>
> would run that command and exit.
>

it can be second one option.

Pavel


>
> Maybe I'm over-egging the pudding a bit ;-)
>
> cheers
>
> andrew
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Andrew Dunstan


On 02/28/2014 04:38 PM, Tom Lane wrote:

Andrew Dunstan  writes:

Well, then we just have to add more info to --help

+1 for at least doing that. I found it annoying just the other day not
to find it in plsql's --help output, in a moment of brain fade when I
forgot how to spell it. So it's not just beginners who can benefit, it's
people like me whose memory occasionally goes awry.

No objection in principle, but what are we talking about exactly?
Adding some new backslash command that lists all the variables that have
special meanings?



That's a pretty good idea, especially if we give that command a command 
line option too, so something like


   psql --special-variables

would run that command and exit.

Maybe I'm over-egging the pudding a bit ;-)

cheers

andrew


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 22:52 GMT+01:00 Erik Rijkers :

> On Fri, February 28, 2014 22:38, Tom Lane wrote:
> > Andrew Dunstan  writes:
> >>> Well, then we just have to add more info to --help
> >
> >> +1 for at least doing that. I found it annoying just the other day not
> >> to find it in plsql's --help output, in a moment of brain fade when I
> >> forgot how to spell it. So it's not just beginners who can benefit, it's
> >> people like me whose memory occasionally goes awry.
> >
> > No objection in principle, but what are we talking about exactly?
> > Adding some new backslash command that lists all the variables that have
> > special meanings?  I'm not sure that the main --help output is the place
> > for this, because that only covers psql's command line switches (and
> > is plenty long enough already).
> >
> >   regards, tom lane
>
> Perhaps this compromise:
>
>   -v, --set=, --variable=NAME=VALUE
>set psql variable NAME to VALUE e.g.: -v
> ON_ERROR_STOP=1
>

can be


>
> this would not lengthen and not broaden the output of psql --help
>
>
>
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Erik Rijkers
On Fri, February 28, 2014 22:38, Tom Lane wrote:
> Andrew Dunstan  writes:
>>> Well, then we just have to add more info to --help
>
>> +1 for at least doing that. I found it annoying just the other day not
>> to find it in plsql's --help output, in a moment of brain fade when I
>> forgot how to spell it. So it's not just beginners who can benefit, it's
>> people like me whose memory occasionally goes awry.
>
> No objection in principle, but what are we talking about exactly?
> Adding some new backslash command that lists all the variables that have
> special meanings?  I'm not sure that the main --help output is the place
> for this, because that only covers psql's command line switches (and
> is plenty long enough already).
>
>   regards, tom lane

Perhaps this compromise:

  -v, --set=, --variable=NAME=VALUE
   set psql variable NAME to VALUE e.g.: -v 
ON_ERROR_STOP=1

this would not lengthen and not broaden the output of psql --help





-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 22:38 GMT+01:00 Tom Lane :

> Andrew Dunstan  writes:
> >> Well, then we just have to add more info to --help
>
> > +1 for at least doing that. I found it annoying just the other day not
> > to find it in plsql's --help output, in a moment of brain fade when I
> > forgot how to spell it. So it's not just beginners who can benefit, it's
> > people like me whose memory occasionally goes awry.
>
> No objection in principle, but what are we talking about exactly?
> Adding some new backslash command that lists all the variables that have
> special meanings?  I'm not sure that the main --help output is the place
> for this, because that only covers psql's command line switches (and
> is plenty long enough already).
>

Hard to say -

a special long option in "General option" can be clean.

or new section "Tips"

Tips:
  -v ON_ERROR_STOP=1   stops on first error




>
> regards, tom lane
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Tom Lane
Andrew Dunstan  writes:
>> Well, then we just have to add more info to --help

> +1 for at least doing that. I found it annoying just the other day not 
> to find it in plsql's --help output, in a moment of brain fade when I 
> forgot how to spell it. So it's not just beginners who can benefit, it's 
> people like me whose memory occasionally goes awry.

No objection in principle, but what are we talking about exactly?
Adding some new backslash command that lists all the variables that have
special meanings?  I'm not sure that the main --help output is the place
for this, because that only covers psql's command line switches (and
is plenty long enough already).

regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Andrew Dunstan


On 02/28/2014 01:27 PM, Pavel Stehule wrote:



>
> three chars is not important
>
> important is a  placing in --help output
>

Well, then we just have to add more info to --help


it can be solution





+1 for at least doing that. I found it annoying just the other day not 
to find it in plsql's --help output, in a moment of brain fade when I 
forgot how to spell it. So it's not just beginners who can benefit, it's 
people like me whose memory occasionally goes awry.


cheers

andrew


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 19:55 GMT+01:00 Fabrízio de Royes Mello 
:

>
> On Fri, Feb 28, 2014 at 3:44 PM, Alvaro Herrera 
> wrote:
> >
> > Fabrízio de Royes Mello escribió:
> > > On Fri, Feb 28, 2014 at 3:17 PM, Pavel Stehule <
> pavel.steh...@gmail.com>
> > > wrote:
> >
> > > > important is a  placing in --help output
> > >
> > > Well, then we just have to add more info to --help
> >
> > I think psql could do with some lines for the possible options for
> > --pset (14) and --variable (13).  Not sure how to do that without having
> > it become too cumbersome while not hiding useful variables.
> >
>
> Maybe by adding something like "--help-pset" and "--help-variables".
>

I dislike it - I afraid so I know too much users, where --help-pset or
--help-variables is too high expert level. --help is a maximum, what they
can do - and you should not use a strange terminology like  "variables".

Regards

Pavel


>
>
> Regards,
>
> --
> Fabrízio de Royes Mello
> Consultoria/Coaching PostgreSQL
> >> Timbira: http://www.timbira.com.br
> >> Blog sobre TI: http://fabriziomello.blogspot.com
> >> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
> >> Twitter: http://twitter.com/fabriziomello
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Fabrízio de Royes Mello
On Fri, Feb 28, 2014 at 3:44 PM, Alvaro Herrera 
wrote:
>
> Fabrízio de Royes Mello escribió:
> > On Fri, Feb 28, 2014 at 3:17 PM, Pavel Stehule 
> > wrote:
>
> > > important is a  placing in --help output
> >
> > Well, then we just have to add more info to --help
>
> I think psql could do with some lines for the possible options for
> --pset (14) and --variable (13).  Not sure how to do that without having
> it become too cumbersome while not hiding useful variables.
>

Maybe by adding something like "--help-pset" and "--help-variables".

Regards,

--
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Timbira: http://www.timbira.com.br
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Alvaro Herrera
Fabrízio de Royes Mello escribió:
> On Fri, Feb 28, 2014 at 3:17 PM, Pavel Stehule 
> wrote:

> > important is a  placing in --help output
> 
> Well, then we just have to add more info to --help

I think psql could do with some lines for the possible options for
--pset (14) and --variable (13).  Not sure how to do that without having
it become too cumbersome while not hiding useful variables.

-- 
Álvaro Herrerahttp://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 19:25 GMT+01:00 Fabrízio de Royes Mello 
:

>
> On Fri, Feb 28, 2014 at 3:17 PM, Pavel Stehule 
> wrote:
> >
> > 2014-02-28 19:13 GMT+01:00 Tom Lane :
> >
> >> Pavel Stehule  writes:
> >> > for beginners is relative difficult to set psql variable from command
> line
> >> > and option
> >> > -v ON_ERROR_STOP=1 is little bit unclean.
> >> > and for any user it is not comfortable. So I propose a new psql option
> >> > --on-error-stop
> >>
> >> That saves a whole three characters ... not sure it's really worth it,
> >> especially since it will not work on older versions.
> >>
> >> Also, it's not like this will save people from having to know about the
> >> ON_ERROR_STOP variable, because there will still be plenty of contexts
> >> where they need to know that (eg, inspecting the setting or changing it
> >> mid-session).  So I don't buy the argument that this simplifies what
> >> beginners need to learn.
> >
> >
> > three chars is not important
> >
> > important is a  placing in --help output
> >
>
> Well, then we just have to add more info to --help
>

it can be solution

Pavel


>
> Regards,
>
> --
> Fabrízio de Royes Mello
> Consultoria/Coaching PostgreSQL
> >> Timbira: http://www.timbira.com.br
> >> Blog sobre TI: http://fabriziomello.blogspot.com
> >> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
> >> Twitter: http://twitter.com/fabriziomello
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Fabrízio de Royes Mello
On Fri, Feb 28, 2014 at 3:17 PM, Pavel Stehule 
wrote:
>
> 2014-02-28 19:13 GMT+01:00 Tom Lane :
>
>> Pavel Stehule  writes:
>> > for beginners is relative difficult to set psql variable from command
line
>> > and option
>> > -v ON_ERROR_STOP=1 is little bit unclean.
>> > and for any user it is not comfortable. So I propose a new psql option
>> > --on-error-stop
>>
>> That saves a whole three characters ... not sure it's really worth it,
>> especially since it will not work on older versions.
>>
>> Also, it's not like this will save people from having to know about the
>> ON_ERROR_STOP variable, because there will still be plenty of contexts
>> where they need to know that (eg, inspecting the setting or changing it
>> mid-session).  So I don't buy the argument that this simplifies what
>> beginners need to learn.
>
>
> three chars is not important
>
> important is a  placing in --help output
>

Well, then we just have to add more info to --help

Regards,

--
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Timbira: http://www.timbira.com.br
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
2014-02-28 19:13 GMT+01:00 Tom Lane :

> Pavel Stehule  writes:
> > for beginners is relative difficult to set psql variable from command
> line
> > and option
> > -v ON_ERROR_STOP=1 is little bit unclean.
> > and for any user it is not comfortable. So I propose a new psql option
> > --on-error-stop
>
> That saves a whole three characters ... not sure it's really worth it,
> especially since it will not work on older versions.
>
> Also, it's not like this will save people from having to know about the
> ON_ERROR_STOP variable, because there will still be plenty of contexts
> where they need to know that (eg, inspecting the setting or changing it
> mid-session).  So I don't buy the argument that this simplifies what
> beginners need to learn.
>

three chars is not important

important is a  placing in --help output

Regards

Pavel




>
> regards, tom lane
>


Re: [HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Tom Lane
Pavel Stehule  writes:
> for beginners is relative difficult to set psql variable from command line
> and option
> -v ON_ERROR_STOP=1 is little bit unclean.
> and for any user it is not comfortable. So I propose a new psql option
> --on-error-stop

That saves a whole three characters ... not sure it's really worth it,
especially since it will not work on older versions.

Also, it's not like this will save people from having to know about the
ON_ERROR_STOP variable, because there will still be plenty of contexts
where they need to know that (eg, inspecting the setting or changing it
mid-session).  So I don't buy the argument that this simplifies what
beginners need to learn.

regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


[HACKERS] proposal: new long psql parameter --on-error-stop

2014-02-28 Thread Pavel Stehule
Hello

for beginners is relative difficult to set psql variable from command line
and option

-v ON_ERROR_STOP=1 is little bit unclean.

and for any user it is not comfortable. So I propose a new psql option

--on-error-stop

It is clean, and it will be mentioned in psql --help.

Comments, ideas?

Regards

Pavel