lriggins@afit-ab.arpa (L. Maurice Riggins) (10/18/87)
I've almost finished the termcap file for a new VT100 emulator. One problem
is driving me crazy though. I have to set stty -nl because the emulator
return key can only transmit a CR. According to the manual, this also causes
CR's and LF's leaving the UNIX host to be mapped to CR-LF.
This results in two problems.
1. Since the emulator doesn't strip one of the pair during file capture,
captured text is double-spaced.
2. VI appears to be using LF as a down cursor motion when it would be
quicker. When it does the cursor moves to the beginning of the line or
closer to it than it really is in the text. I suspect this is caused by
the output mapping to CR-LF. I'm not sure if vi uses the carriage return
as cursor motion...I suspect it does, but that doesn't seem to be causing
any problems. For instance, since the emulator backspace is destructive,
I had to remove bs from the termcap. Vi seems to move the cursor to the
beginning of the line (CR?) and tab or nd space it back out. That's ok.
I've tested this using stty nl and everything works fine, text capture and
editor, but I have to manually type Ctrl-J to execute commands in the shell.
Can I map an incoming CR to LF? Any other suggestions?
My termcap, stty and vi settings follow. Hope they help.
Thanks in advance.
d1|vt100|vt-100|pt100|pt-100|dec vt100:\
:al=\E[L:AL=\E[%dL:am:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
:cm=\E[%i%d;%dH:co#80:cs=\E[%i%d;%dr:ct=\E[g:\
:dc=\E[P:DC=\E[%dP:dl=\E[M:DL=\E[%dM:do=\E[B:DO=\E[%dB:ei=:\
:ho=\E[H:ic=\E[@:IC=\E[%d@:im=:if=/usr/lib/tabset/vt100:\
:is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
:kb=^H:kd=\EOB:kh=\E[H:kl=\EOD:kn#4:kr=\EOC:ku=\EOA:\
:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
:le=\E[D:LE=\E[%dD:li#24:ll=\E[24;1H:\
:ms:nd=\E[C:nw=\EE:pt:rc=\E8:ri=\E[C:RI=\E[%dC:\
:sc=\E7\:se=\E[m:sf=\ED:so=\E[7m:sr=5\EM:st=\EH:\
:ue=\E[m:up=\E[A:UP=\E[%dA:us=\E[4m:xn:xo\
new tty, speed 1200 baud, 0 rows, 0 columns
even odd -raw -nl echo -lcase -tandem tabs -cbreak
crt: (crtbs crterase crtkill ctlecho) -tostop
-tilde -flusho -mdmbuf -litout -pass8 -nohang
-pendin -decctlq -noflsh
erase kill werase rprnt flush lnext susp intr quit stop eof
^H ^K ^W ^R ^O ^V ^Z/^Y ^C ^\ ^S/^Q ^D
noautoindent nonumber noslowopen
autoprint open nosourceany
noautowrite nooptimize tabstop=8
nobeautify paragraphs=IPLPPPQPP LIpplpipbp taglength=0
directory=/tmp prompt tags=tags /usr/lib/tags
noedcompatible noreadonly term=vt100
noerrorbells redraw noterse
hardtabs=8 remap notimeout
noignorecase report=5 ttytype=vt100
nolisp scroll=8 nowarn
nolist sections=NHSHH HUnhsh window=16
magic shell=/bin/csh wrapscan
mesg shiftwidth=8 wrapmargin=0
nomodeline noshowmatch nowriteany
--
Maurice lriggins@afit-ab.ARPA