无需登录 数据私有 本地保存

HID自定义键盘映射器 - 外设事件查看

13
0
0
0
按下键盘上的任意键...
键码详情
Event Code
Event Key
Key Code (deprecated)
Event Which
Location
Repeat
HID Usage ID
HID Usage Name
修饰键状态
时间戳
按键历史 (最近50条)
#类型CodeKeyHID ID修饰键时间
等待按键事件...
自定义映射规则
0 条规则

暂无映射规则,点击"添加规则"开始创建。

源键: 目标键:
映射测试区
映射仅在当前文本框内生效。按下的键如匹配映射规则将被转换。
快速提示
  • 使用捕获按钮然后按键盘上的键来快速设置映射的源键和目标键。
  • 目标键设为 DISABLED 可屏蔽该键(在测试区内)。
  • 映射规则自动保存到本地浏览器存储中。
  • 支持导出为 JSON 格式,方便备份和分享。
  • 修饰键(Ctrl/Alt/Shift/Meta)在测试区中会被保留。
常见问题 & 知识库

HID(Human Interface Device)是USB规范中定义的一类设备标准,用于人与计算机之间的交互。键盘、鼠标、游戏手柄、触摸屏等都属于HID设备。HID协议定义了标准的数据格式(Report Descriptor),使得操作系统无需安装专用驱动即可识别和使用这些设备。键盘的HID Usage Page为0x07,每个按键对应一个Usage ID。

USB HID规范为键盘定义了一个标准键码表(Usage ID范围0x04-0xE7)。例如字母A对应Usage ID 0x04(十进制4),Enter键对应0x28(十进制40)。浏览器的event.code属性(如KeyAEnter)可以大致映射到HID Usage ID。这个映射关系对于开发跨平台键盘工具、固件编程(如QMK)非常有用。

event.code 表示物理按键的位置(如KeyAShiftLeft),与键盘布局无关,是识别按键的最佳方式。event.key 表示按键的当前含义(如aA),受修饰键和键盘布局影响。例如在中文键盘上按下某键,event.code不变但event.key可能不同。对于键盘映射,推荐基于event.code进行。

event.keyCode已被W3C标准弃用,因为它存在跨浏览器不一致性,且无法区分左右修饰键。现代开发应使用event.code(物理键位)和event.key(字符含义)。不过大多数浏览器仍支持event.keyCode以保持向后兼容。

常见场景包括:① 将不常用的键(如CapsLock)映射为常用功能键(如Escape或Ctrl);② 为游戏自定义键位;③ 屏蔽容易误触的键(如Insert或Windows键);④ 模拟其他键盘布局;⑤ 为残障用户定制无障碍输入方案。高级用户可使用QMK固件、AutoHotkey等工具实现系统级映射。

本工具支持导出为JSON格式。导出的配置文件包含所有映射规则,可用于备份或分享。若需在AutoHotkey中使用,可参考映射规则手动编写脚本(如a::b表示按A输出B)。对于QMK固件用户,可将映射逻辑迁移到keymap.c中的process_record_user函数。

本工具的映射基于物理键位(event.code),修饰键(Ctrl、Alt、Shift、Meta)的状态会被保留。例如将KeyA映射为KeyB后,按下Shift+A在测试区会输出大写B(Shift修饰键生效)。修饰键本身也可以作为映射的源键或目标键。

移动端浏览器的软键盘通常不会触发完整的keydown/keyup事件,因此实时按键检测功能在移动端受限。但如果您在平板或手机上连接了蓝牙物理键盘,工具可以正常捕获按键事件。映射规则管理、查看和导出功能在移动端完全可用。