在 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
当我通过(通过)切换到 Firefox 的第一个选项卡时super+1
。
但有时超级键不能像左 Alt 键那样工作,例如
lxterminal
当我切换到byAlt+1
(viasuper+1
)的第一个标签时,- 当我想通过通过在不同应用程序的窗口之间切换时
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,但我可能错过了一些东西,而且我还注意到他们正在尝试交换两个工作密钥,而不是用一个工作密钥替换一个非工作密钥。
谢谢。