Number: 1821

Date: 10-Aug-84 18':07':58

Submitter: Sannella.PA

Source: Feuerman.pasa

Subject: Want TTYIN to respect (ECHOCONTROL x ''REAL)

Assigned To: 

Attn: vanMelle

Status: Open


Problem Type: Bug

Impact: Minor

Difficulty: Hard


Priority: Unlikely

System: Text

Subsystem: TTYIN



Lisp Version: 

Source Files: 

Microcode Version: 

Memory Size: 

File Server: 

Server Software Version: 

Disposition: [I guess this is a TTYIN problem (lmm 14Aug84]

Description: '
Date': 25 Jul 84 16':48 PDT'
From': Feuerman.pasa'
Subject': Lisp': Echoing of my own character'
cc': Feuerman.pasa'
Lisp-System-Date':  8-Jun-84 11':31':06'
Machine-Type': Dandelion'
I think this one may be a bug.  Given the font GACHA 10, I did a PUTCHARBITMAP to put the Spanish character n with ~ (an "enyay") into the GETCHARBITMAP of CHARACTER 14 (the control N).  My intension was to have a user type control-N, and get the enyay (n-~).  I then performed an ECHOCONTROL to set the echoing of character code 14 from INDICATE (which would get it to echo as "↑N") to REAL.  This almost worked.  I then evaluate (CHARACTER 14), and it returns the enyay (right!!).  But if I actually type control-N, it echoes "↑N" (wrong!!).  I then found out something very interesting':  I accidentally hit ↑B (break).  It brought up a break window, and for the fun of it I tried the control-N thing again.  This time it worked correctly, complete with echoing the enyay "n-~" when I type in and when it returns that character.  I then ↑ out of the break, OK out of the break, it doesn''t matter.  I still can''t type control-N and have it echo as an enyay on the type in, only when it returns.'
What''s going on?'
Date': 14 Aug 84 15':33 PDT'
To': Masinter.PA'
cc': Feuerman.pasa, LispSupport.PA, vanMelle.PA'
TTYIN deliberately ignores ECHOCONTROL on the grounds that (a) it wants to know how much space the character took and (b) if it is interesting for the user to type control characters, she might want to be able to see which characters they were, instead of blank space or a gritch or whatever.  E.g., if you have (ECHOCONTROL 7 ''SIMULATE) to mean "ring the bell for ↑G", then how do you edit a string containing ↑G?'
(a) was a problem in Interlisp-10, but is less so in Interlisp-D, where we have full control over what REAL means.  I guess Ken might be happy if TTYIN paid attention to echo control REAL and treated all other cases as INDICATE, roughly as it does now.  This would then be a problem only for the character null (ascii 0), which is the only character other than CR that standardly has echocontrol REAL.'
As for why it worked ok in a break, it''s probably because TTYIN was not running there (a bug since fixed).'


Test Case: 

Edit-By: vanMelle

Edit-Date: 14-Aug-84 15':37':54