Still having lots of trouble with Alt/Meta keys
I added some information to #259740, but I'm hopelessly confused as to what
bug which bug report is describing; nothing discussed in that bug report has
helped me so far.
I'm trying to use altwin:meta_win. Trying very, very hard, in fact. Not in
any complicated X applications; just in xterm. This is with the -7 packages
installed.
To take my window manager out of the picture, I started a clean X server
running nothing except for a single xterm. The xterm is running zsh. At
this point I have no options set (not even altwin:meta_win); generic pc104.
This should be easy to reproduce.
All I want is for my Windows keys to send Meta, and xterm to treat that like
Escape. This requires XTerm*metaSendsEscape: true. [For some reason, I have
to start an xterm, run xrdb in it, and start a new xterm for this to take
effect. I can't run it from a VT with $DISPLAY set; it just switches to the
X server instead of merging resources. Huh.]
This all used to work after "setxkbmap -option altwin:meta_win". Now I'm
having trouble. Here's what xmodmap looks like when I start:
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x6d)
mod1 Alt_L (0x40), Alt_L (0x7d), Meta_L (0x9c)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x7f), Hyper_L (0x80)
mod5 Mode_switch (0x5d), ISO_Level3_Shift (0x7c)
At this point alt-b generates "backwards word" and windows-b generates "b".
Without metaSendsEscape alt-b generates an accented a. I turn on
altwin:meta_win:
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x6d)
mod1 Alt_L (0x40), Alt_L (0x7d)
mod2 Num_Lock (0x4d)
mod3
mod4 Meta_L (0x73), Meta_R (0x74), Super_L (0x7f), Hyper_L (0x80), Meta_L (0x9c)
mod5 Mode_switch (0x5d), ISO_Level3_Shift (0x7c)
Now neither alt-b nor windows-b produces any effect. If I use 'xmodmap -e
"clear mod1"', then alt-b generates backspace-word and windows-b generates
an accented a - this is what I wanted, and used to get, I think. If I do
'xmodmap -e "add mod1 = Alt_L"', then neither windows-b nor alt-b produces
any effect again. If I do 'xmodmap -e "add mod1 = Alt_R"', so that both
Alt_L and Alt_R are mapped to mod1, then Alt-b generates backwards word and
Windows-b generates "b".
All of the above, mind you, is using the _left_ alt and windows keys. I
haven't even tried the right ones, since I usually use the left when typing.
So adding Alt_R to mod1 changes the behavior of both left keys...
I can't reproduce all of these results in another server with GNOME and
Metacity running - specifically, with mod1 cleared, Alt-b generates "b"
instead of the accented "a". I assume that's either GNOME or Metacity
somehow eating the modifier. Right now I don't care. It's the keyboard
cursor movement that I need.
This is all terribly confusing, and it's a real shame that we're going to
carry it into Sarge, IMO. But most of all I'd like advice on how to make
the simple case of using altwin:meta_win work in xterm.
All ideas appreciated.
--
Daniel Jacobowitz
Reply to: