[net.unix-wizards] Not just another TENEX...

decot@MITRE@sri-unix (08/13/82)

From: Dave Decot <decot@MITRE>
Date: 29 Jul 1982 11:14:38 EDT (Thursday)
To echo or not to echo, that's not the question;  the question is WHEN.


Most UNIX tty drivers (when operating in the 'echo' and '-raw' modes) echo
input characters when they are typed, not when they are used.  Many people
find the ability to type ahead very useful, since it permits one to think
'out loud' about the next thing one wants to say while the computer is
doing whatever it is that's taking so long.  One problem with this is that
the typed-ahead characters can easily get jumbled in with output characters,
making it difficult to see exactly what you have typed.  Some of the newer
drivers include provisions such as ^R, which retypes the current line.
This is nice, but the combination of input and output looks as if you have
typed it twice.  Another disadvantage of echoed type-ahead is that programs
which use escape sequences to cause special things to happen to your terminal
(e.g. clear the screen, move the cursor to x,y) know nothing of what is
being echoed, and characters echoed during such a sequence will ruin the
sequence.  Granted, most such programs coerce the tty into raw/-echo mode,
but not all do.  Finally, it is sometimes difficult to tell when a
program wants to read its input. If the tty driver always echoes everything,
how can we tell if anybody is really listening??

On the other hand, we have the tty drivers that echo typed characters when
they are USED, meaning read by some other process (ala TOPS-20).  I can think
of only one disadvantage:  that you cannot be sure what you have typed until
it is read, and thus cannot fix any suspected mistakes until then.  One way
to solve this problem is to make a typed-ahead ^R retype the entire buffer
of unused characters and open it for correction.  This need be done only when
one suspects that what he's done is wrong, and it is therefore easier
to follow the conversation.


If the process using the input characters asks for them in chunks, instead
of one at a time, the tty driver could ECHO them in chunks. Also, programs
have more control over what is on the user's screen and can keep it tidier
than is possible when characters can be echoed any old time.  Finally,
the ability to edit the entirety of what you have typed ahead instead of
just the last line seems useful and not too difficult to implement.

This matter could use more discussion.  What's your position?

					-Dave Decot (Decot at Mitre)