首页
/ Keymap Drawer v0.22.0 版本发布:键盘布局绘制工具新特性解析

Keymap Drawer v0.22.0 版本发布:键盘布局绘制工具新特性解析

2025-07-08 19:50:10作者:史锋燃Gardner

Keymap Drawer 是一款用于可视化键盘布局和键位映射的开源工具,它能够将复杂的键盘配置转换为直观的图形表示。该项目特别适合机械键盘爱好者和键盘固件开发者使用,支持多种键盘固件格式的解析和可视化。

版本亮点

最新发布的 v0.22.0 版本带来了一系列实用改进和新功能,主要集中在用户体验提升和布局支持扩展方面。

多键位映射合并绘制

新版本引入了将多个键位映射 YAML 文件合并绘制的功能。用户现在可以执行类似 keymap draw file1.yaml file2.yaml 的命令,将多个键位映射文件合并为一个整体后再进行绘制。这一特性特别适合以下场景:

  • 在解析输出基础上添加固定的额外键位映射
  • 单独维护组合键(combos)或额外层(layers)的配置
  • 模块化管理复杂的键位配置

纯组合键支持

现在键位映射 YAML 文件可以只定义组合键而不包含任何层定义。这一改进使得仅需要绘制组合键的用户无需创建冗余的层结构,简化了配置文件。

Font Awesome SVG 图标支持

v0.22.0 新增了对 Font Awesome SVG 图标的支持,用户可以通过 $$fa:...$$ 语法在键位标签中使用这些图标。这一功能丰富了键位表示方式,使得可视化结果更加直观和专业。

Kanata 配置增强

新版本改进了对 Kanata 键盘固件的支持,特别是修复了块注释解析问题,并增加了 deflayermap 指令的支持,提升了与 Kanata 配置文件的兼容性。

技术改进

  • 最低 Python 版本要求提升至 3.12,开发者应确保环境兼容性
  • 修复了 Kanata 块注释解析的相关问题
  • 优化了内部代码结构和处理逻辑

新增键盘布局支持

本次更新增加了对多款键盘的物理布局支持:

  • silakka54(修正了 QMK Configurator 中的不正确布局)
  • apiaster
  • lintilla
  • menura
  • eyelash_corne
  • eyelash_sofle

这些新增布局为使用相应键盘的用户提供了更准确的绘制基础。

ZMK 工作流优化

针对 ZMK 固件用户,新版本增强了自动检测功能:

  • 自动识别仓库中的 <keyboard>-layouts.dtsi 文件作为物理布局
  • draw_args 中已提供布局参数时,跳过自动检测以避免冲突
  • 保持与 <keyboard>.json 文件检测逻辑的一致性

这一改进简化了 ZMK 用户的配置流程,减少了手动指定布局的需求。

升级建议

对于现有用户,建议评估 Python 3.12 的兼容性后进行升级。新用户可以借此版本体验更完善的键盘布局可视化功能,特别是需要多键位映射合并或使用新增键盘布局的用户将从中受益。

Keymap Drawer 持续致力于为键盘爱好者提供更强大、更易用的可视化工具,v0.22.0 版本的改进再次体现了这一目标。无论是简单的键位规划还是复杂的多层配置,都能通过这个工具获得清晰的可视化结果。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
466
3.47 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
715
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
203
82
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1