为什么我替换Alt_L键的超级键不能在所有情况下都起作用?

在Thinkpad T400上,我的左Alt键已停止工作。 由于我从未在Ubuntu 16.04中使用LXDE中的超级密钥 ,因此我执行了以下操作来修改超级密钥,就好像它是左Alt键一样。

首先,我需要通过运行xev找出有关这两个键的相关信息。

当我按下左Alt键时, xev不输出任何内容。 我只能从右Alt键推断出左Alt键的信息。 当我按右Alt键时,

 KeyPress event, serial 48, synthetic NO, window 0x2800001, root 0xb2, subw 0x0, time 942676, (262,45), root:(264,68), state 0x0, keycode 108 (keysym 0xffea, Alt_R), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 48, synthetic NO, window 0x2800001, root 0xb2, subw 0x0, time 942812, (262,45), root:(264,68), state 0x8, keycode 108 (keysym 0xffea, Alt_R), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False 

当我按下超级键时

 KeyPress event, serial 48, synthetic NO, window 0x2800001, root 0xb2, subw 0x0, time 943386, (262,45), root:(264,68), state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 48, synthetic NO, window 0x2800001, root 0xb2, subw 0x0, time 943498, (262,45), root:(264,68), state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False 

然后在bash shell中运行之后

 xmodmap -e "keycode 133 = Alt_L" 

超级键有时用作左Alt键,例如

  • 当我通过Alt+1 (通过super+1 )切换到Firefox的第一个选项卡时。

但是超级键有时不能用作左Alt键,例如

  • 当我通过Alt+1 (通过super+1 )切换到lxterminal的第一个标签时,
  • 当我想通过Alt+tab通过super+tab在不同应用程序的窗口之间切换时(奇怪的是, Alt_R + tab也不起作用,虽然Alt_L + tab在左Alt键工作之前工作)。
  • 当我在Emacs工作时,需要经常使用Alt键,
  • 当我想调用一个程序时,首先是Alt + F2通过super + F2
  • 当我想关闭一个程序的窗口时,通过Alt + F4通过super + F4

我想知道为什么超级密钥在所有情况下都不能用作左Alt键?

我跟着https://unix.stackexchange.com/questions/86933/swap-alt-and-super/86936#86936和https://askubuntu.com/a/296437/1471 ,但我可能错过了一些东西,我还注意到他们正在尝试交换两个工作密钥,而不是用工作密钥替换一个非工作密钥。

谢谢。