[14638] in Athena Bugs
sun4 8.0I: mwm
daemon@ATHENA.MIT.EDU (Jacob Morzinski)
Thu Sep 5 13:56:47 1996
To: bugs@MIT.EDU
Date: Thu, 05 Sep 1996 13:56:37 EDT
From: "Jacob Morzinski" <jmorzins@MIT.EDU>
System name: m66-080-1
Type and version: SPARC/5 8.0I
Display type: cgthree
What were you trying to do?
Use official Athena keybindings to invoke Mwm functions.
What's wrong:
Mwm sucks.
Okay, okay, a little more elaborate: Mwm and I have
_completely_ different ideas about what keybinding is
invoked by pressing a key on the keyboard.
I tend to trust xmodmap. If xmodmap says a key has a
particluar binding associated with it, then I also think
that the key has that keysym on it, and I try to name the
key using that keysym.
I don't know _what_ mwm trusts. I do know that it's
probably not xmodmap.
The problem become obvious when I try to use the "Alt+F12"
keybinding to raise a window. Doesn't work. "Alt+Again"
does work, however. This is because the "Again" key has F12
associated with it.
Here's the thing that's the bug: no matter _what_ I do with
xmodmap, I can't get Mwm to recognize the key labeled "F12"
as a F12 key. Even if I use xmodmap to make the "F12" key
contain the same keysyms as the "Again" key, Mwm still
refuses to recognize the key.
What should have happened:
Mwm should be more polite about recognizing keys.
Please describe any relevant documentation references:
Okay, here goes.
..(Twiddle on computer a bit)..
Oh, my goodness. I go back to my original assertion.
Mwm sucks.
It seems that when Mwm starts, it scans through the
keybindings once, looking for keysyms. Problem is, it grabs
the _first_ occurrence of F12 that it finds, and assumes that
it is the _only_ occurrence.
So, basically, the bug I'm seeing is that the keysym for
keycode 10 = F12 F12 Redo
is seen before the keysym for the "f12" key:
keycode 18 = F12 SunF37
(No, the "F12" isn't on that key by default...I put it there
as part of my login activities. The darn key is _labeled_
f12, for goodness sake.)
If I rip out the "F12" bindings from the "Again" key
(keycode 10), and _also_ restart MWM, then Mwm notices the
F12 sitting on the F12 key, and deigns to use that one.
Aigh, Mwm sucks. That's must be why it gets confused about
my Escape key, too, because I have two keys on the keyboard
that are both set to generate the "escape" keysym. (The key
labeled "Esc", and the blank key just above it that sits in
the spot where one would expect escape to be.)
May I suggest a workaround, to let Mwm use the "F12" key to
raise windows? Insert the following lines in the system.mwmrc
file (I think it's `/os/opt/SUNWmfwm/lib/system.mwmrc'),
in the function for "Keys DefaultKeyBindings":
==============================================================================
# Mwm sucks. It ignores multiple occurrences of a keysym on different keys!
Meta<Key>SunF37 window f.raise
==============================================================================
This will raise windows successfully on suns, because the
"F12" keyboard key contains the "SunF37" keysym.
(Of course, if people re-bind "f12" to just "f12", then they
lose, because the "again" key is seen first. I suppose the
solution would be to switch windowmanagers.)
Sorry to bother you with such long mail,
--
Jacob Morzinski jmorzins@mit.edu