Subject: Re: getc() problem with Cygwin v1.0
From: Christopher Faylor <[email-masked]>
To: Earnie Boyd <[email-masked]>
Cc: [email-masked], [email-masked], [email-masked]
Date: Thu, 13 Jan 2000 15:25:22 -0500

On Thu, Jan 13, 2000 at 12:10:03PM -0800, Earnie Boyd wrote:
>--- [email-masked] wrote:
>-8<-
>> Yes, using gets() or fgets() for a small program would work better, but
>> the real problem is that canonical mode is broken for v1.0 (the man
>> page for "termio" explains this in detail, but it basically means getc(stdin)
>> should block until a carriage return is entered).  Canonical mode also
>> allows the user to backspace over his mistakes -- which also doesn't work
>> with v1.0.
>> 
>> Pre-compiled programs distributed with Cygwin v1.0 such as bc.exe, dc.exe,
>> etc all rely on canonical mode.  It is especially annoying to not be able
>> to backspace over my mistakes with dc.exe -- I have to kill the program
>> each time and start over.  Even if I were to modify the souce code to
>> replace getc(stdin) with fgets(...), I still wouldn't be able to backspace...
>> 
>> And for that matter, you can't backspace with sh.exe, either.  I can't
>> believe I'm the first person to notice this.
>> 
>> Hey Cygnus, are you reading this?  Is there any way we can fix canonical
>> mode for v1.0?
>> 
>
>Uhm... you've got something not set correctly.  What is your TERM variable set
>to?  It should read TERM=cygwin.  A paste of the output of `cygcheck -s -v -r'
>would be helpful.

The TERM setting should be irrelevant to this.  However, if it isn't set, it
will default to cygwin.

The TERM setting does not affect the default handling of canonical mode
in either UNIX or cygwin.

cgf

--
Want to unsubscribe from this list?
Send a message to [email-masked]