如何找到 Fn + 键的键码?

Bud*_*seЯ 12 shortcut-keys 11.10 keycodes

我正在尝试找出Fn+ ?keypress的键码(向左箭头)。Xev 输出

FocusOut event, serial 36, synthetic NO, window 0x3c00001,    mode NotifyGrab, detail NotifyAncestor
FocusIn event, serial 36, synthetic NO, window 0x3c00001,    mode NotifyUngrab, detail NotifyAncestor
KeymapNotify event, serial 36, synthetic NO, window 0x0,    keys:  4294967213 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0              0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0  
Run Code Online (Sandbox Code Playgroud)

如果它告诉我这里的键码,我将无法解释它,因此将不胜感激。

我也很想知道是否可以将某些东西绑定到Fn+Del但是在尝试这种组合时,Xev 输出

KeyPress event, serial 36, synthetic NO, window 0x3c00001,
root 0xad, subw 0x0, time 1984903, (-666,480), root:(53,533),
state 0x0, keycode 119 (keysym 0xffff, Delete), same_screen YES,
XLookupString gives 1 bytes: (7f) " "
XmbLookupString gives 1 bytes: (7f) " "
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x3c00001,
root 0xad, subw 0x0, time 1985008, (-666,480), root:(53,533),
state 0x0, keycode 119 (keysym 0xffff, Delete), same_screen YES,
XLookupString gives 1 bytes: (7f) " "
XFilterEvent returns: False
Run Code Online (Sandbox Code Playgroud)

这与del不按Fn.

所以,总结一下

  1. 如何找到Fn+ ?(左箭头)的键码?

  2. 甚至可以将某些东西绑定到Fn+Del还是我在这里面对风车?

xub*_*tix 20

我不确定您对其中有多少完全清楚:

要显示按下的键的键码,您可以使用例如sudo showkey -k。这将在我的情况下为Fn+打印?

keycode 165 press
keycode 165 release
Run Code Online (Sandbox Code Playgroud)

在我的键盘上,这是一个媒体键(上一首曲目)。同为Fn+Del显示70这里的键码(滚动锁定)。

现在,与此有关的一般问题似乎是Fn可以是在键盘级别工作并修改发送的实际扫描代码的修饰键。因此您可能根本无法知道是否Fn按下了,因为操作系统或 BIOS 的任何部分都无法看到它。如果不是这种情况,则 BIOS 可能能够看到该键被按下。一些硬件制造商提供了可用于以这种方式修改 Fn 键行为的软件(例如Toshibas Fnesse)。

所以:通常没有办法知道Fn被按下了,扫描码和键组合的键码包括Fn取决于个人键盘设计。

  • 我怀着沉重的心情接受你的回答。我希望你错了,但它似乎和你描述的一模一样。感谢您的明确答复。 (2认同)