使用 DIY 工具将自定义 QMK 功能添加到您的 Oryx 布局中

  • 介绍:用户希望在享受 Oryx 便利的同时使用 QMK 更强大的功能,若熟悉代码,可通过 GitHub 工作流实现,本文介绍整个过程及相关技巧。
  • Oryx 与 QMK:

    • Oryx 是创建和定制复杂键盘布局的工具,起初能满足需求,但在深入研究极简 34 键布局和主行修改时遇到限制,一些高级功能需在 QMK 固件中直接定制。
    • 虽 Oryx 可下载布局源代码在 QMK 中手动修改,但编辑后会失去使用 Oryx 图形编辑器的能力,于是创建了连接 Oryx 和 QMK 的工具
  • QMK 可通过代码访问的功能:

    • 键覆盖:可自定义修饰键组合发送不同组合或执行自定义操作。
    • Achordion:根据下一个按键修改点击保持键的状态。
    • 发送无限长度宏:Oryx 因法律原因限制宏为 5 字符,编辑代码可去除限制,但勿存储密码等敏感信息。
    • 自动更正:输入时自动纠正错误。
    • 重复键:执行上次按下的键的操作。
  • 安装工具:

    • fork 该仓库,确保不勾选“仅复制主分支”,仓库有主分支用于 QMK 代码修改,Oryx 分支用于跟踪 Oryx 变化,不应直接在 Oryx 分支提交。
    • 首次运行工作流初始化仓库,包括去Actions 标签点击Fetch and build layout运行工作流,输入布局 ID 和键盘类型,完成后可下载固件,布局代码也会在主分支初始化。
  • 用 QMK 功能定制布局:

    • 克隆仓库到本地,添加 QMK 功能较简单,以实现按 Shift + Backspace 发送 Delete 为例,先在rules.mk文件中添加KEY_OVERRIDE_ENABLE = yes,在keymap.c文件末尾定义键覆盖const key_override_t delete_key_override = ko_make_basic(MOD_MASK_SHIFT, KC_BSPC, KC_DEL);等,若使用空格键的点击保持功能可能需调整代码,完成后提交并推送更改,更新默认 GitHub 动作参数,再次运行工作流生成新固件。
  • 刷新固件:

    • 工作流完成后下载固件,解压为 ZIP 文件,使用 ZSA 的 Keymapp 工具安装,安装后打开点击Flash 按钮选择固件文件,按下键盘重置按钮进入刷新模式,完成后自定义的 Oryx 布局和 QMK 代码将在键盘上运行。
  • 继续使用 Oryx:

    • 在 Oryx 中更改布局,完成后点击Compile 按钮,重新运行 GitHub 动作,将 Oryx 更改合并到主分支,然后下载并刷新固件。
  • 解决冲突:

    • 当 Git 无法合并 Oryx 分支和主分支的代码时会出现工作流失败,如在keymap.c中添加重复键功能后在 Oryx 中编辑相关键会导致冲突,需手动合并 Oryx 分支到主分支,使用首选工具解决冲突后提交并推送更改,再次运行工作流使构建成功。
  • 结论:成功定制 Oryx 布局并集成 QMK 功能,支持该项目可 star GitHub 仓库,感谢使用该工作流。
阅读 14
0 条评论