[15126] in Athena Bugs

home help back first fref pref prev next nref lref last post

Athena Solaris machines have funky modifiers

daemon@ATHENA.MIT.EDU (jered@MIT.EDU)
Thu May 1 15:34:58 1997

From: jered@MIT.EDU
Date: Thu, 1 May 1997 15:34:52 -0400
To: bugs@MIT.EDU


Athena Solaris machines have the somewhat unusual modifier map of:
shift       Shift_L (0x6a),  Shift_R (0x75)
lock        Caps_Lock (0x7e)
control     Control_L (0x53)
mod1        Meta_L (0x7f),  Meta_R (0x81),  Alt_L (0x1a),  Multi_key (0x4a)
mod2        Mode_switch (0x14)
mod3        Num_Lock (0x69)
mod4        Alt_L (0x1a)
mod5      

(On a stock Solaris box, Alt_L does _not_ generate mod1.)
This causes programs that want to figure out what key generated what, like
XEmacs, to be less than happy (XEmacs generates the warnings that follow.)
Is this done for compatibility with any particular software on Athena, or
is it just cruft? If it serves a purpose, we might want to follow the 
suggestion in (2) of giving them the same keycode to avoid confusion.

Thanks.

--Jered
jered@mit.edu

(1) (key-mapping/warning) 
	The meanings of the modifier bits Mod1 through Mod5 are determined
	by the keysyms used to control those bits.  Mod1 does NOT always
	mean Meta, although some non-ICCCM-compliant programs assume that.

(2) (key-mapping/warning) 
	Two distinct modifier keys (such as Meta and Hyper) cannot generate
	the same modifier bit, because Emacs won't be able to tell which
	modifier was actually held down when some other key is pressed.  It
	won't be able to tell Meta-x and Hyper-x apart, for example.  Change
	one of these keys to use some other modifier bit.  If you intend for
	these keys to have the same behavior, then change them to have the
	same keysym as well as the same modifier bit.

(3) (key-mapping/warning) XEmacs:  Alt_L (0x1a) generates Mod1, which is generated by Meta.

home help back first fref pref prev next nref lref last post