[Info-vax] Emacs and Meta Key on a VT-520 (LK411-AA Keyboard) Terminal?

Rich Alderson news at alderson.users.panix.com
Wed Feb 6 20:28:33 EST 2013


Johnny Billquist <bqt at softjar.se> writes:

> On 2013-01-26 19:58, haziz wrote:

>> As an Emacs user I appreciate the presence of a meta key (or similar) on a
>> Keyboard. I am unable to figure out how to send a meta key signal to Emacs.

>> I am using a VT-520 terminal with an LK411-AA keyboard.

>> If there is not one to begin with is it possible to reprogram a key (single
>> key please rather than a sequence) to serve as Meta.

> There is no "proper" way of doing this.

> To understand the problem properly, you need to understand what "meta" 
> is. On a serial connection, you just send bytes. Normally each byte is 8 
> bits of data. When you use Latin-1, all 8 bits are needed, so there is 
> no more data bits where you could stuff the "meta" information.

> In the really old days, meta used to be represented by the 8th bit. But 
> with the introduction of Latin-1 in the DEC terminals, that no longer 
> was possible.

In the *REALLY* *OLD* days, the META bit was the 400 bit, and CONTROL was the
200 bit.  The TOP bit was the 4000 bit; on the system which defined these,
SAIL, the 2000 and 1000 bits were not (AFAIK, I'm willing to be corrected)
given names.

SAIL began life as a PDP-6, which was conjoined with a KA-10, which was in turn
conjoined with a KL-10.  The PDP-6 was disconnected and the dual-processor SAIL
was moved to a location on the central quad at Stanford, where eventually it
was weaned of the KA-10.

This is relevant because SAIL used a *12-bit* character code, and used the low-
order ASCII codes for special graphic characters rather than for Teletype(TM)/
paper tape controls.

EMACS used a *9-bit* subset of the SAIL code (called "TV code" at MIT) when it
was a TECO program running on the MIT PDP-10 (KA-10) systems.  Since not
everyone had a terminal which could generate this natively, the use of <ESC> as
a prefix character meaning "turn on the META bit" and of <^C> to mean "turn on
the CONTROL and META bits" was built in.[1]  The ASCII <CTRL> key was made to
stand in for CONTROL.

> In Emacs, an alternative to use the Meta is to use ESC. So instead of 
> pressing Meta-V, you press ESC V. xterm use this trick behind your back. 
> If you press Meta-V in xterm, xterm will in fact send ESC V for you.

Unless you are using SUPDUP protocol, an extension to telnet.[2]

[1] MIT's operating system for the PDP-6/PDP-10, called ITS (pronounced "its",
    not "eye-tee-ess"), used ^Z where DEC OSes use ^C.  For this reason, when
    EMACS was ported to TOPS-20, <^Z> became the C-M- prefix character.

[2] SUPDUP was expounded to the ARPANET world in RFC 734 by my late friend MRC
    in 1977.  The MIT AI Lab memo AIM-644 describes it further (RMS, 1983).

-- 
Rich Alderson                                   news at alderson.users.panix.com
    the russet leaves of an autumn oak/inspire once again the failed poet/
    to take up his pen/and essay to place his meagre words upon the page...



More information about the Info-vax mailing list