惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
V
V2EX
博客园 - 【当耐特】
Vercel News
Vercel News
雷峰网
雷峰网
爱范儿
爱范儿
WordPress大学
WordPress大学
云风的 BLOG
云风的 BLOG
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Microsoft Azure Blog
Microsoft Azure Blog
F
Full Disclosure
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog
NISL@THU
NISL@THU
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Attack and Defense Labs
Attack and Defense Labs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Microsoft Security Blog
Microsoft Security Blog
腾讯CDC
P
Proofpoint News Feed
B
Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
K
Kaspersky official blog
I
InfoQ
Google Online Security Blog
Google Online Security Blog
L
LINUX DO - 最新话题
Project Zero
Project Zero
Engineering at Meta
Engineering at Meta
V
Visual Studio Blog
AI
AI
Schneier on Security
Schneier on Security
B
Blog RSS Feed
T
Tor Project blog
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LINUX DO - 热门话题
阮一峰的网络日志
阮一峰的网络日志
S
Security @ Cisco Blogs
T
Threat Research - Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Cyber Attacks, Cyber Crime and Cyber Security
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
V2EX - 技术
V2EX - 技术
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
Arctic Wolf
Webroot Blog
Webroot Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main

秋实-Allenyou 的小窝

【笔记】人工智能与模式识别 复习笔记 - 秋实-Allenyou 的小窝 机械革命无界 15X 的 Arch Linux 开荒指南 我在用什么?(2026 版) - 秋实-Allenyou 的小窝 关于 Next.js SSG 生成 RSS Feed 文件的另一思路 从零开始的 NixOS 体验 - 秋实-Allenyou 的小窝 2025:迷茫中转向 - 秋实-Allenyou 的小窝 我在用什么?(2025 版) - 秋实-Allenyou 的小窝 【杂谈】关于 AIGC 的一些思考 - 秋实-Allenyou 的小窝 【记录】一种在主机通过 Docker 容器名解析容器 IP 的方法 【记录】如何在 Next.js 中优雅的调用 Matomo 统计 从信号与系统角度看 OI/XCPC 中的傅里叶变换运用 - 秋实-Allenyou 的小窝 【杂谈】答《博客作者呀,我想采访你这 9 个问题!》 - 秋实-Allenyou 的小窝 使用 Golang 重写 gh-proxy - 秋实-Allenyou 的小窝 FurryCTF 2024 寒假赛 调试窗口 题解 2024:“我”的大学生活 - 秋实-Allenyou 的小窝 【游记】CCPC 2024 重庆站尾杀记 - 秋实-Allenyou 的小窝 【游记】ICPC 2024 亚洲区域赛南京站打铁记 - 秋实-Allenyou 的小窝 【杂谈】这次 Furrygooo 结束后我的一些体验 - 秋实-Allenyou 的小窝 【教程】使用阿里云 OSS + CDN 加速 Gravatar 【记录】 一次罗技鼠标驱动冲突问题的排查经历 - 秋实-Allenyou 的小窝 【记录】我是如何用 Next.js 重构我的博客的 - 秋实-Allenyou 的小窝 【教程】如何用 Git 快速搭建简单的 CI - 秋实-Allenyou 的小窝 我的DN42 Peering信息 - 秋实-Allenyou 的小窝 【进度】博客重构计划 - 秋实-Allenyou 的小窝 这是一个正经的2023总结 - 秋实-Allenyou 的小窝 【题解】Luogu P9769 [HUSTFC 2023] 简单的加法乘法计算题 2023新年谜题总结 - 秋实-Allenyou 的小窝 【教程】浅谈Linux服务器的一些基础安全技巧 - 秋实-Allenyou 的小窝 Goodbye, 2022~ - 秋实-Allenyou 的小窝 【教程】使用 Docker 开服,优雅地隔离不同版本JDK - 秋实-Allenyou 的小窝 【旧文补档】2020年终总结 & 2021新年计划 - 秋实-Allenyou 的小窝 【旧文补档】写个脚本监控你的VPS SolusVM面板适用 - 秋实-Allenyou 的小窝 【旧文补档】建立自己的私人网盘!在CentOS VPS上安装NextCloud - 秋实-Allenyou 的小窝 【旧文补档】2019,再见!2020,你好! - 秋实-Allenyou 的小窝 【旧文补档】新一代USB来袭,一起捋一捋USB的“前世今生” - 秋实-Allenyou 的小窝 【旧文补档】矩阵学习笔记 - 秋实-Allenyou 的小窝
【教程】使用 Keyd 将 Copilot 键映射为可用的组合键并修复触摸板防误触失效问题
2026-06-02 · via 秋实-Allenyou 的小窝

前段时间,我将开发工作迁移到了新买的机械革命无界 15X 上,并切换到了 Arch Linux 系统。使用体验非常的棒,但是键盘右下角的 Copilot 键就显得有点碍眼了——毕竟 Linux 自然不会有 Copilot 功能,但是这个键的逻辑又是写死在硬件上的,并不太好自定义。

查阅资料得知,Copilot 键的逻辑是按下后立刻连续发送两个按下-松开左 Shift + 左 Meta/Win + F23 组合键的键盘事件。那么很直白的一个思路就是,在 KDE 的快捷键设置里面把这个组合绑定到某个快捷键上面即可。

但很遗憾,这样不行。查找资料得知,KDE 对 F23 按键处理目前存在 Bug,没有办法正常创建包含 F23 的组合键。那么,我们就只能另辟蹊径,将这个组合键映射成一个 KDE 可以正常处理的组合键,然后再添加对应的快捷键。

这里,我使用了 Keyd 来实现这个映射。

Arch Linux 安装 Keyd 很简单,直接使用 pacman 安装即可。

pacman -S keyd

安装完后,记得启动 Keyd 服务。

systemctl enable --now keyd

配置 Keyd

接下来,我们写一个配置文件。这里我们可以参考这个教程中的方法,写出如下的配置文件:

[ids]
*

[main]
leftmeta+leftshift+f23 = macro(M-S-f24)

其中, [ids] 部分表示对所有键盘启用映射,[main] 是 Keyd 的默认布局部分。这里,我们将 leftmeta+leftshift+f23 映射为一个 M-S-f24 的宏,即按下Meta/Win + Shift + F24 组合键。

设置完成之后,使用 sudo keyd reload 重新加载配置。

这时候,我们可以在 KDE 的快捷键设置里面添加一个快捷键,将 Meta-Shift-f24 组合键绑定到某个快捷键上面即可。这里我绑定给了 Ghostty 的 Quick Terminal 功能。

我触摸板防误触呢?

这时候,使用笔记本的同学就会发现一个问题:我触摸板防误触呢?

这里我们就要引入一个小知识了。在目前的主流发行版/DE 里,输入输出相关都由 libinput 来处理,其中就包括了触摸板防误触。但是,这个功能默认只对内置键盘生效,也即只有 AttrKeyboardIntegration=internal 的键盘输入时,才会触发防误触功能,暂时禁用触摸板。

这里我们安装一个工具 libinput-tools 来查看触摸板的属性。

pacman -S libinput-tools
sudo libinput list-devices

那么我们就会发现,有一个名为 keyd virtual keyboard 的虚拟键盘设备。不难想到,Keyd应该就是把物理键盘的输入事件映射到这个虚拟键盘设备上,同时实现修改按键映射的功能。

这样,问题就很明确了。libinput 将 keyd virtual keyboard 设备识别为了外置键盘,因此 keyd virtual keyboard 设备产生的键盘输入事件,就不会触发防误触功能。

解决方法就是修改配置文件,将这个设备的属性设置为 AttrKeyboardIntegration=internal。这里我们需要修改 /etc/libinput/local-overrides.quirks 文件。这是 libinput 唯一会加载的用户配置文件,用于实现对发行版自带 Quirks 的覆写。

这里我们添加如下条目:

[Keyd Virtual Keyboard]
MatchName=keyd virtual keyboard*
MatchUdevType=keyboard
AttrKeyboardIntegration=internal

保存后,使用 libinput quirks list /dev/eventX 查看配置是否生效。

这里的 eventXkeyd virtual keyboard 设备的路径,需要根据 libinput list-devices 输出的路径替换。

如果一切正常,应该会输出如下内容:

AttrKeyboardIntegration=internal

这时,再去 KDE 的触摸板设置里面打开防误触功能,就可以正常工作了。