Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Unsubscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com Message-ID: <000701bee421$b9a6c280$283f86a1@empros.com> From: "Geoff Hart" To: , References: <19990810234737 DOT 25494 DOT rocketmail AT web117 DOT yahoomail DOT com> Subject: Re: xterms and vi Date: Wed, 11 Aug 1999 12:48:30 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 > > >It sounds like you've forgotten to use cygwin versions of ftp and vi. It's > > >unlikely that windows-only versions of those programs will work with the > > >CYGWIN=tty scheme. > > > > Why is that unlikely? I mean, can we make an "xterm" which acts both as a > > tty for Cygwin tools, *and* as a DOS console window for DOS applications? > > Windows doesn't understand the UNIX terminal structures. Well, I can understand how some Windows Console applications might have difficulty operating in a straight "UNIX" terminal, but in my case I'm mainly interested in Activestate's Perl debugger. And I have discovered a rather trivial solution: the EMACS environment variable :-). ghart:ghart$ export EMACS=1 ghart:ghart$ perl -d /usr/s/srcl/build/bld Loading DB routines from perl5db.pl version 1.0402 Emacs support available. Enter h or `h h' for help. main::(e:\usr\s\srcl\build\bld:56): 56: $IS_NT_PERL = defined (&Win32::IsWinNT); # If we're using NT Perl DB<1> I believe the general problem is the "con" file. Applications (DOS/Windows/ CYGWIN) can open that file to gain direct access to the spawning console. That appears to completely avoid STDIN/STDOUT/STDERR: which is the real problem. If there was a way to configure "con" to use the file handles associated with STDIN/STDOUT/STDERR, then we'd have a more universal solution (unless the application was trying to do something fancy with the console, of course). > Try a recent snapshot of the cygwin1.dll. SET CYGWIN=notty and see what > happens. I think you'll be surprised. The terminal emulation has been > rewritten. Yes I tried it, and it made things slightly worse. No longer could I operate the "Windows" application from the originating *Console* (DOS prompt) window. "output" from "perl -d" would still appeared there, but "input" ("n", "q", ...) no longer seemed to get back to "perl". It's like the input stream for "con" was somehow cut off. But, "EMACS" makes all of this mute. Long live Emacs!!! ;^) Geoff -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com