重新映射 `fn` 键

重新映射 `fn` 键

请注意:这不是重复的,因为该fn键的行为与键盘上的其他键不同。我无法fn通过使用例如来获取键码xev

我现在在我的 Macbook 上运行 Xubuntu 16.04,使用英国键盘布局进行输入,运行良好并且所有按键都在正确的位置。

我在 Macbook 上一直不习惯的一件事是,fnCtrl键与大多数英国笔记本电脑的键盘布局中的键互换了。

在此处输入图片描述

我可以在 Ubuntu 中重新配置我的键盘布局,以便fn上图中的键变成Ctrl,反之亦然(同时保持所有其他键完全相同)吗?

这很棘手,因为该fn键的行为似乎与其他键不同。您无法fn通过运行来获取密钥代码xev我发现这个问题的所有其他答案在处理密钥时都不适用fn,因为它们依赖于从中获取密钥代码xev

我怎样才能重新映射fnCtrl反之亦然?

我欢迎任何“黑客式”的想法或解决方案。

答案1

Fn 键会生成 ACPI 事件,而不是键盘事件。要将 Fn 按键回显到终端,请使用...

sudo acpi_listen

按 Fn + F12 将显示

button/volumeup VOLUP 00000080 00000000 K. 

它直接连接到硬件,并且独立于操作系统。重新映射是不可能的。

这是一个有趣的读物关于内核和键盘映射。但这超出了键码的基本更改,并且不涉及将控制键设置为 Fn。

答案2

如果我迟到了,我很抱歉。

由于您使用的是 Apple 键盘,因此您可以使用free5lot 的 hid-apple-patched交换这两个键,并执行其他几个重新映射(fnmode,,,,,)。swap_fn_leftctrlswap_opt_cmdrightalt_as_rightctrlejectcd_as_delete

它适用于内置键盘以及魔术键盘

安装说明非常简单。

附言:我个人刚刚用美国布局测试了它,但它也应该适用于英国版本。

相关内容