我最近开始全职转向 Linux,并且很享受学习曲线。然而,一件特别的事情让我很困惑:我的笔记本电脑上的一些 Fn 组合键不起作用,规范。音量增大/减小、静音等。有效的组合包括 WLAN、睡眠、视频循环、数字键盘等。我可以排除硬件故障,因为这些键在 Windows 7 上运行良好(尽管只有当安装了笔记本电脑制造商的热键软件)。
我已经在网上搜索了可能的解释,并且遇到了scancode(依赖于硬件)、keycode和keysym的概念。我想我了解了基础知识,并且发现控制台和X有自己的映射,需要单独重新映射。控制台使用扫描码到键码的内核映射,但 X 出于某种原因有自己的映射。就我而言,我尝试过:
- 设置开机参数
atkbd.softraw=0
- 通过 Ctrl + Alt + F1 切换到控制台模式
- 用过
showkey --scancodes
。不幸的是,我尝试使用的键没有显示任何扫描码输出 - 用于
dmesg
查看是否发生了任何未知按键事件,但没有找到。 - 在我绝望中,试图
acpi_listen
查看键是否实际上触发了任何 acpi 事件,只有睡眠和视频循环键可以,其他键不输出任何内容
在这一点上,我想也许我应该尝试从 X 环境本身获取扫描码,使用xev
,但没有运气。
我来到这里只是作为最后的手段。我希望有人能很好地解释为什么某些功能键组合在我上面尝试过的工具中没有产生任何输出。如果有帮助,我使用的是 Linux Mint 17.3 Cinnamon,笔记本电脑是由 HCL 制造的。evtest
显示键盘设备为 AT Translated Set 2 键盘。如果需要更多信息,我很乐意提供帮助。谢谢。
编辑:没有相关的 BIOS 设置可用。
忏悔:我在这方面的所有知识都是基于我在 Arch wiki、Ubuntu wiki、大量论坛帖子和其他网站上阅读的内容。所以,如果我在技术上对某事有误,请多多包涵,并纠正我。我喜欢学习这些东西:)