[comp.emacs] While we're blaming the terminal...

dps@omssw2.UUCP (Dave Schneider) (12/05/86)

> ...  Your terminal or terminal emulator could have a mode in
> which it translates keyboard entry of Control-S and Control-Q into
> something else - either multi-character escape sequences or other
> control characters....There are probably existing ibmpc
> terminal emulator programs with keystroke macros powerful enough ...

I would like to add a complaint about terminal manufacturers who set up the
arrow  keys  to  send  single character control codes.  Invariably, it will
cause a distortion somewhere.  We ran into this problem  with  VI  when  we
first  started  using  TVI  914's, and when I wanted to use arrow keys with
emacs, I had to move a half-dozen functions (imagine:  arrows that send  ^V
(c. down) and ^L (c. left?)).

The Wyse 50 and Wyse 60 have the same problem, but at least on the Wyse  60
you  can reprogram the arrow keys, and not have to do a lot of translations
when you're in someone else's office.  It's a lot easier to  only  have  to
step  back  and think "next line...oh, that's ^N" and not have to say "next
line...oh, that's ^V...oh, my .emacsrc isn't running here, what's the  ori-
ginal next line...oh, that's ^N, which I normally use for next-page...."

Does anyone know why Televideo and Wyse made this  contribution  to  brain-
damage?

P.S.  RMS should note that Wyse 50's and 60's don't behave nicely on ^space
-- the most convenient keystroke built in is ^`, though it would be easy to
set up a function key, and there are 32 possible function keys.

                                        Dave
                                        "dpsatomssw2"
                                        Friday, 12.5

mlandau@Diamond.UUCP (12/10/86)

In comp.emacs (article <533@omssw2.UUCP>), dps@omssw2.UUCP (Dave Schneider) writes:
>
>I would like to add a complaint about terminal manufacturers who set up the
>arrow  keys  to  send  single character control codes.  
>
>Does anyone know why Televideo and Wyse made this  contribution  to  brain-
>damage?

Well, one can argue (quite successfully) that sending single-character 
codes for arrow and function keys makes it a lot easier to write programs
to use those keys.  Having to read multiple characters (and, in some
Emacs'es, set up multiple keymaps) to deal with arrow keys that send
things like Esc-[-A is pretty much a crock.  It's just a crock that has
been around for a long time, thanks to things like the VT100.  When 
does it become time to say "We don't CARE if that's how it's been done
for the past 10 years.  It's time to do something BETTER!"?
-- 
 Matt Landau      	 		BBN Laboratories, Inc.
    mlandau@diamond.bbn.com		10 Moulton Street, Cambridge MA 02238
 ...seismo!diamond.bbn.com!mlandau      (617) 497-2429

jr@CC5.BBN.COM.UUCP (12/10/86)

I really have to differ with Matt's opinion about escape sequences.
The VT100 "things like ESC-[-A" actually follow a well-thought-out
standard known as ANSI X3.64 for coding characters to and from a
terminal.  It is very easy to write a parser for these sequences.  It
becomes a very powerful inter-process procedure call mechanism if you
want.

Given that there are only 128 codes available for most terminals, it
is just not possible to assign every function key a unique
single-character code.  ESC is the "escape" character for extending
the character set beyond the 128 (actualy 96) available characters.  I
think the VT100 does it right.  Also, given the existence of a real
standard, not to mention the VT100 beinbg a de-facto standard before
that, things could be a lot worse.

Now if only emacs had an ANSI parser...maybe I should go add it.

/jr
jr@bbn.com
...!bbnccv!jr

opie@mit-vax.UUCP (Ralph Opie) (12/12/86)

[Please don't feed the line-eater.]
	In case I don't manage to set all the header lines to show the
appropriate person, I'm really Stephen Humble (sthumble@athena.mit.edu),
using a friend's account to post to the net.

	To business. I recently started work at a company with a lot of
Apollos (nice windows) and Unipress emacs (miserable). Is there anyone
on the net who can tell me about Gnuemacs on the Apollo? I've read the
file gnuemacs/etc/APOLLO and it makes me a little uneasy. The Apollos
where I work have a network problem that makes them _very_ slow when
running Apollo's csh emulator: 5-10 seconds for cd and the like. 
	1. Can Gnuemacs run in Apollo's native shell (Aegis)?
	2. How much lisp has to be loaded at startup and how long
	   does that take?
	3. Does Aegis have any delightful quirks :-( re Gnuemacs
	   that aren't mentioned in etc/APOLLO?
	4. any other information.

	Please reply via e-mail since I rarely read netnews.

	Thanks.

inc@tc.fluke.COM (Gary Benson) (12/13/86)

In article <2789@slate.Diamond.BBN.COM>, mlandau@Diamond.BBN.COM (Matt Landau) writes:
> In comp.emacs (article <533@omssw2.UUCP>), dps@omssw2.UUCP (Dave Schneider) writes:
> >
> >I would like to add a complaint about terminal manufacturers who set up the
> >arrow  keys  to  send  single character control codes.  
> >
> >Does anyone know why Televideo and Wyse made this  contribution  to  brain-
> >damage?
> 
> Well, one can argue that sending single-character 
> codes for arrow and function keys makes it a lot easier to write programs
> to use those keys.  Having to ... deal with arrow keys that send
> things like Esc-[-A is pretty much a crock.  It's just a crock that has
> been around for a long time, thanks to things like the VT100.  When 
> does it become time to say "We don't CARE if that's how it's been done
> for the past 10 years.  It's time to do something BETTER!"?
> -- 
>  Matt Landau      	 		BBN Laboratories, Inc.

Oops, I think your ignorance is showing there podner. ESC-[-A isn't just
something DEC pulled out of the air to confuse poor EMACS! The VT-100
terminal is so widely used and became an industry standard because it
implements ANSI standard X3.41. Standards are awfully tough to come by, and
it is not a trivial task to create them. X3.41 is responsible for ASCII,
the 8-bit character standard that makes it possible for you to so
effortlessly complain about "multiple character codes". So what if a
key generates a string? Computers deal with strings quite as well as
they do with single characters.

I'll vote in favor of scrapping X3.41 just as soon as you volunteer to
design the new standard. Then sell me on it. Then sell it to the world.
Until you're ready to do that, just relax, learn the rules of the game
and play by them.

jr@ALEXANDER.BBN.COM (John Robinson) (12/15/86)

Oops ...
>> Oops, I think your ignorance is showing there podner.

>> The VT-100
>> terminal is so widely used and became an industry standard because it
>> implements ANSI standard X3.41.

Actually, it implements part of, or rather is compliant with, ANS
(American National Standard) X3.64, which includes by reference ANS
X3.4, the American Standard Code for Information Interchange (ASCII),
and extends it by specifying a lot of the things you can do with the
control characters.  ASCII pretty much confines itself to the printing
characters.  ASCII is also an international (ISO) standard, and is
called IA5 for International Alphabet 5 (sorry, I forget the ISO
standard number).  Many termcaps now include an X3.64 generic terminal
definition called "ansi".

>> Standards are awfully tough to come by, and
>> it is not a trivial task to create them. X3.41 is responsible for ASCII,
>> the 8-bit character standard that makes it possible for you to so
>> effortlessly complain about "multiple character codes".

No argument here beyond numbering.

/jr

robert@gitpyr.UUCP (12/15/86)

>inc@tc.fluke.COM (Gary Benson) (inc@tc.fluke.COM, <844@tpvax.tc.fluke.COM>):
> Oops, I think your ignorance is showing there podner. ESC-[-A isn't just
> something DEC pulled out of the air to confuse poor EMACS! The VT-100
> terminal is so widely used and became an industry standard because it
> implements ANSI standard X3.41. Standards are awfully tough to come by, and
> it is not a trivial task to create them. X3.41 is responsible for ASCII,
> the 8-bit character standard that makes it possible for you to so
> effortlessly complain about "multiple character codes".

Just to set the record straight, ESC-[-A isn't in the X3.41 standard.  It's
in the X3.64 standard, along with most of the other control sequences the
VT100 and other ANSI standard terminal recognize.

However, I would like to add that no-where in the standard does it say that
cursor keys are supposed to send ESC-[-A, B, C, or D.  The standard has
nothing whatsoever to say about key definitions or keyboards at all.  All
it covers is what sequence the device will recognize in it's receiving
stream.  Now, while it may be perfectly logical to have the cursor keys
send ESC-[-A, B, C, or D, DEC's practice of having the function keys send
ESC-O-x (where "x" is just about any character) is, in my opinion, contrary
to the standard.  ESC-O is a Single-Shift-3, which is used to switch character
sets for the next received character, not for distinguishing function keys
from other keys on the keyboard.

				robert
-- 
Robert Viduya					     robert@pyr.ocs.gatech.edu
Office of Computing Services					(404) 894-4660
Georgia Institute of Technology
Atlanta, Georgia	30332