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 -0000      1.80
> +++ pgsql-server/src/bin/psql/startup.c       01 Nov 2003 06:10:42 -0000
> @@ -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 -0000      1.81
> +++ pgsql-server/src/bin/psql/help.c  01 Nov 2003 06:29:50 -0000
> @@ -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

Reply via email to