This is an unusual one. The OS isn't handling things properly, and we
have to work around that. Can you get a Win32 user to test psql with
this patch to make sure it actually fixes the problem and behaves as
expected? If you want me to produce a psql binary, I can do that.
Thanks.
---
Michael Mauger wrote:
I'm the maintainer of sql.el in GNU Emacs. On both the Mac OS X
and the Windows/Cygwin platform we've had reports that psql run
under Emacs does not issue a prompt for commands.
I did a little research and it appears that the cause is that
pset.notty is being set to false because stdin/stdout are not
a tty (pgsql-server/src/bin/psql/startup.c). I'd like to
propose that an option be added to the psql command line to
override the detection of the tty and force the prompting for
commands on stdin.
I believe the attached patch should add the option -I to psql
and force the prompt to appear as if it were an interactive
session regardless of the state of stdin/stdout. I do not
have a configuration available to properly test this however.
Please be sure to include me in any replies since I do not
subscribe to this list. TIA.
-- Michael
__
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com
Content-Description: interactive.diff
--- pgsql-server/src/bin/psql/startup.c 29 Sep 2003 18:21:33 - 1.80
+++ pgsql-server/src/bin/psql/startup.c 01 Nov 2003 06:10:42 -
@@ -322,6 +322,7 @@
{field-separator, required_argument, NULL, 'F'},
{host, required_argument, NULL, 'h'},
{html, no_argument, NULL, 'H'},
+ {interactive, no_argument, NULL, 'I'},
{list, no_argument, NULL, 'l'},
{no-readline, no_argument, NULL, 'n'},
{output, required_argument, NULL, 'o'},
@@ -352,7 +353,7 @@
memset(options, 0, sizeof *options);
- while ((c = getopt_long(argc, argv,
aAc:d:eEf:F:h:Hlno:p:P:qR:sStT:uU:v:VWxX?,
+ while ((c = getopt_long(argc, argv,
aAc:d:eEf:F:h:HlMno:p:P:qR:sStT:uU:v:VWxX?,
long_options, optindex)) !=
-1)
{
switch (c)
@@ -395,7 +396,10 @@
case 'H':
pset.popt.topt.format = PRINT_HTML;
break;
+ case 'I':
+ pset.notty = 0;
+ break;
case 'l':
options-action = ACT_LIST_DB;
break;
--- pgsql-server/src/bin/psql/help.c 02 Oct 2003 06:39:31 - 1.81
+++ pgsql-server/src/bin/psql/help.c 01 Nov 2003 06:29:50 -
@@ -103,6 +103,7 @@
puts(_( -a echo all input from script));
puts(_( -e echo commands sent to server));
puts(_( -E display queries that internal commands generate));
+ puts(_( -I force interactive prompting for input));
puts(_( -q run quietly (no messages, only query output)));
puts(_( -o FILENAME send query results to file (or |pipe)));
puts(_( -n disable enhanced command line editing (readline)));
---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly
--
Bruce Momjian| http://candle.pha.pa.us
[EMAIL PROTECTED] | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup.| Newtown Square, Pennsylvania 19073
---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings