kurt@wucs.UUCP (Kurt Haserodt) (07/10/84)
We just installed a copy of CCA emacs. It uses (optionally) terminfo instead of termcap, and it seems to work just fine either way. I thought it would be interesting to try it with vi (the claim for terminfo was upward compatability with termcap). Everything linked together nicely, but when vi was invoked I quickly received a floating point exception. Since vi works with termcap now, I'm not too inclined to start digging into the terminfo problem, but ..... if anybody out there has experienced this and is willing to send/post some of their experiences, I would be grateful. Thanks in advance -- Kurt Haserodt ..!ihnp4!wucs!kurt Box 1045 Washington University (314)-889-6160 St. Louis, MO 63130 USA
mark@cbhydra.uucp (07/10/84)
The version of curses/terminfo I have here (and the one distributed with System V Release 2) is upward compatible with termcap at the termlib level. That is, if you have a program that calls tgetent, tgetflag, tgoto, tputs, and so forth, instead of cc foo.c -ltermcap you can type cc foo.c -lcurses and the program will work, using the terminfo database. (Since it brings in the emulation package and the low level terminfo code, it will be a few K bigger than the termcap version. However, it will probably start up faster since terminfo is compiled and there is no quadratic behavior on long descriptions as there is in termcap.) I tried it out by loading vi version 3.7 this way. It worked with no source modifications (although the attempt by vi to build the string "xx|unknown:co#80:bs:am" or some such thing if $TERM isn't set won't work.) I did not use this version extensively. I can't speak for whatever version of vi you have at wucs or the terminfo code distributed by CCA (which I believe is a different implementation) but I would guess that a floating exception means division by zero, which might mean that it thinks you have zero columns on your terminal. vi versions 3.8 and later use terminfo directly, not in emulation mode. Mark Horton