#keyboard #hid #keyboard-layout #mapping #layout #no-alloc

no-std key-mapping

允许在DOM和HID usage-ids等系统之间进行键盘按键码转换的库

7个版本 (4个破坏性更新)

0.4.0 2024年5月2日
0.3.0 2024年4月21日
0.2.2 2024年4月21日
0.1.0 2024年4月19日
0.0.0 2024年4月19日

#776 in 编码

每月27次下载

MIT/Apache

13KB
276

key-mapping

A rust library allowing for keyboard key code conversion between systems such as the DOM and HID usage-ids. With Rust [no_std] support.

许可证

根据您的选择,双重许可,在Apache License, Version 2.0MIT许可证下。


lib.rs:

key-mapping库允许在DOM和HID usage-ids等系统之间进行键盘按键码转换。支持Rust的[no_std]

特性

额外功能位于可选特性中,以优化编译时间和二进制大小。

  • std (默认启用) - 添加对Rust的libstd类型的支持。
  • serde 添加对serde反序列化库的支持。
  • usbd-hid 添加对usbd-hid库KeyboardReport之间的转换支持。

示例用法

[dependencies]
key-mapping = "0.4"
use key_mapping::Keyboard;

fn main() {
    let dom_code = "KeyA";
    let usage_id = Keyboard::US.dom_key_to_usage_id(dom_code).unwrap();

    assert_eq!(0x04, *usage_id);
}

依赖项

~0.5–1.7MB
~35K SLoC