这个项目能做什么

keymapper 是一个跨平台的上下文感知按键重映射工具,旨在重新定义系统范围或按应用的键盘布局和快捷键。它允许用户在单个配置文件中管理所有键盘快捷键,同时在不同应用之间修改相似的操作,并在 GNU/Linux、Windows、macOS 和 FreeBSD 之间共享配置。该工具支持直接映射字符(不仅仅是物理按键)、通过快捷键启动应用程序,以及通过外部工具如 keymapperctl 控制状态。鼠标按钮和滚轮事件也可以被映射。配置使用简单的语法,输入/输出表达式通过 '>>' 分隔,支持修饰键、序列、超时以及用于状态切换的虚拟按键。上下文块使得可以根据窗口标题、类、进程路径、设备或修饰键状态进行条件映射。高级功能包括抽象命令、多阶段处理、按键释放时的输出、字符输入、宏以及用于精细调整行为的指令。安装方式因操作系统而异:Linux 需要 systemd 设置以及可选的 Wayland 集成;macOS 需要 Karabiner-Elements 驱动;Windows 提供安装程序或便携版。服务以特权守护进程 (keymapperd) 运行,而面向用户的应用 (keymapper) 负责处理配置和上下文。通过 keymapperctl 进行外部控制可以实现脚本编写、注入按键、切换虚拟按键以及查询状态。紧急退出可通过 Shift+Escape+K 实现。配置文件区分大小写,支持包含、别名以及正则过滤器。内置宏允许动态生成映射。适合寻求深度自定义且不受平台锁定的高级用户。