Subject: Re: cygwin / ssh / emacs term type issue
From: "Ehud Karni" <[email-masked]>
To: [email-masked]
Cc: [email-masked], [email-masked]
Date: Thu, 8 Mar 2001 00:03:43 +0200

On Wed, 7 Mar 2001 11:13:56 -0800, Todd Wells <[email-masked]> wrote:
> 
> I'm running cygwin bash on Win2k.  While running cygwin I use ssh to connect
> to both linux and solaris machines.  When I attempt to run emacs -nw on the
> remote machines, I get this:
> 
> bash-2.03$ emacs -nw my_filename
> emacs: Terminal type cygwin is not defined.
> If that is not the actual type of terminal you have,
> use the Bourne shell command `TERM=... export TERM' (C-shell:
> `setenv TERM ...') to specify the correct type.  It may be necessary
> to do `unset TERMINFO' (C-shell: `unsetenv TERMINFO') as well.
> 
> Since in this case I'm not actually running emacs on the Win2k machine, the
> traditional FAQ answer for NT emacs/cygwin integration don't seem to apply.
> For grins I tried export TERM=vt100, but that emulation mode didn't seem ssh
> compatible and I got unpredictable results.

Emacs is telling you its problem: 1. Your terminal type (that it got
from the connecting telnet thru the ssh) is cygwin. This is correct !
2. You don't have the cygwin terminal description on the (remote) system.

BTW. The ssh is just a transparent pipe, It does not affect the
     terminal attributes at all.

The obvious solution - compile (or copy) the cygwin terminal definition.
Way 1 - Copying the binary (compiled) terminal description.
      The binary is found (on the PC) at /usr/share/terminfo/c/cygwin
      you need to copy it to the same location on the linux. Check the
      man page of "terminfo" for the exact file name on the solaris.
      You need root permission to put it on linux/solaris.

Way 2 - Uncompile and re-compile.
      2.1 On the PC do: infocmp -I -1 cygwin > cygwin.src
      2.2 On the UNIX do: tic -v cygwin.src
      If you run 2.2 as root the definition will be system wide,
      otherwise it will be installed in your home directory
      ($HOME/.terminfo).

If you don't have root privileges, ask your sysadmin to install the
cygwin terminal description (I think s/he'll want the source from 2.1).

You are encouraged to read the `terminfo' man page to understand what
is terminal description and what it (may) contain. You should also
thank Chuck Wilson for his porting of ncurses to Cygwin that made this
possible. May be he will add something about exporting the `cygwin'
terminal data to the ncurses readme.

Ehud.

-- 
 @@@@@@ @@@ @@@@@@ @    @   Ehud Karni  Simon & Wiesel  Insurance agency
     @    @      @  @@  @   Tel: +972-3-6212-757    Fax: +972-3-6292-544
     @    @ @    @ @  @@    (USA)  Fax  and  voice  mail:  1-815-5509341
     @    @ @    @ @    @        Better     Safe     Than     Sorry
 http://www.simonwiesel.co.il    mailto:[email-masked]

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple