[comp.os.minix] MINED BUG IF YOU AUTO-LINE-WRAP THE CRT

dlawyer@balboa.eng.uci.edu (David Lawyer) (12/20/88)

After updating to v.1.3 and creating the kernel with LINEWRAP defined
(in tty.h) mined had a scrolling problem.  When a message (on the
status line) appears at the bottom of the crt (in reverse video), the
screen would visually scroll but the mined editor would not know about
this scroll and would insert any future characters you typed on the
wrong line.  ^e would restore the cursor to its correct line.

This is caused by mined sending 80 spaces to the terminal for the
purpose of clearing to the end-of-line.  The 80 spaces are named
blank_line.  This will obviously cause an unexpected (by the rest of
mined) wraparound (unless you start off from the first column).  To fix
it I send <ESC>[K to the terminal instead of a blank_line.  I destroyed
all uses (including declarations and initializations) of blank_line and
created clear_eol = "\33[K" in mined.h.  Now string_print(clear_eol)
replaces string_print(blank_line) and mined seems to work OK.

David.Lawyer@milehi.FIDONET.ORG (David Lawyer) (12/22/88)

UFGATE newsin 1.27
From: dlawyer@balboa.eng.uci.edu (David Lawyer)
Date: 20 Dec 88 05:15:26 GMT
Organization: University of California at Irvine.  Electrical Engineering
Message-ID: <1255@orion.cf.uci.edu>
Newsgroups: comp.os.minix

After updating to v.1.3 and creating the kernel with LINEWRAP defined
(in tty.h) mined had a scrolling problem.  When a message (on the
status line) appears at the bottom of the crt (in reverse video), the
screen would visually scroll but the mined editor would not know about
this scroll and would insert any future characters you typed on the
wrong line.  ^e would restore the cursor to its correct line.

This is caused by mined sending 80 spaces to the terminal for the
purpose of clearing to the end-of-line.  The 80 spaces are named
blank_line.  This will obviously cause an unexpected (by the rest of
mined) wraparound (unless you start off from the first column).  To fix
it I send <ESC>[K to the terminal instead of a blank_line.  I destroyed
all uses (including declarations and initializations) of blank_line and
created clear_eol = "\33[K" in mined.h.  Now string_print(clear_eol)
replaces string_print(blank_line) and mined seems to work OK.

PATH: 104/56


--  
David Lawyer - via FidoNet node 1:104/56
UUCP: !{nbires | boulder}!scicom!milehi!David.Lawyer
ARPA: David.Lawyer@milehi.FIDONET.ORG
$
$p
\!{nbires | boulder}!scicom!milehi!David.Lawyer