docs(dynamic-macros): fix and update docs structure

This commit is contained in:
Nick Conway 2025-06-17 10:14:00 -04:00
parent 5e52271908
commit 5b01d7a89e
No known key found for this signature in database
GPG Key ID: AA850592E4C1D453
4 changed files with 58 additions and 94 deletions

View File

@ -1,55 +0,0 @@
---
title: Introduction to ZMK
sidebar_label: Introduction
slug: /
---
ZMK Firmware is an open source (MIT) keyboard
firmware built on the [Zephyr™ Project](https://zephyrproject.org/) Real Time Operating System (RTOS). ZMK's goal is to provide a modern, wireless, and powerful firmware free of licensing issues.
## Features
ZMK is currently missing some features found in other popular firmware. This table compares the features supported by ZMK, BlueMicro and QMK:
| Legend: | ✅ Supported | 🚧 Under Development | 💡 Planned |
| :------ | :----------- | :------------------- | :--------- |
| **Feature** | ZMK | BlueMicro | QMK |
| ---------------------------------------------------------------------------------------------------------------------------------- | :-: | :-------: | :-: |
| Low Latency BLE Support | ✅ | ✅ | |
| Multi-Device BLE Support | ✅ | | |
| [USB Connectivity](behaviors/outputs.md) | ✅ | ✅ | ✅ |
| User Configuration Repositories | ✅ | | |
| Split Keyboard Support | ✅ | ✅ | ✅ |
| [Keymaps and Layers](behaviors/layers.md) | ✅ | ✅ | ✅ |
| [Hold-Tap](behaviors/hold-tap.mdx) (which includes [Mod-Tap](behaviors/mod-tap.md) and [Layer-Tap](behaviors/layers.md#layer-tap)) | ✅ | ✅ | ✅ |
| [Tap-Dance](behaviors/tap-dance.mdx) | ✅ | ✅[^2] | ✅ |
| [Keyboard Codes](codes/index.mdx#keyboard) | ✅ | ✅ | ✅ |
| [Media](codes/index.mdx#media-controls) & [Consumer](codes/index.mdx#consumer-controls) Codes | ✅ | ✅ | ✅ |
| [Encoders](features/encoders.md) | ✅ | ✅ | ✅ |
| [Display Support](features/displays.md)[^1] | 🚧 | 🚧 | ✅ |
| [RGB Underglow](features/underglow.md) | ✅ | ✅ | ✅ |
| [Backlight](features/backlight.mdx) | ✅ | ✅ | ✅ |
| One Shot Keys | ✅ | ✅ | ✅ |
| [Combo Keys](features/combos.md) | ✅ | | ✅ |
| [Macros](behaviors/macros.md) | ✅ | ✅ | ✅ |
| [Dynamic Macros](behaviors/dynamic-macros.md) | ✅ | | ✅ |
| Mouse Keys | 🚧 | ✅ | ✅ |
| Low Active Power Usage | ✅ | | |
| Low Power Sleep States | ✅ | ✅ | |
| [Low Power Mode (VCC Shutoff)](behaviors/power.md) | ✅ | ✅ | |
| Battery Reporting | ✅ | ✅ | |
| Shell over BLE | 💡 | | |
| Realtime Keymap Updating | 💡 | | ✅ |
| AVR/8 Bit | | | ✅ |
| [Wide Range of ARM Chips Supported](https://docs.zephyrproject.org/3.5.0/boards/index.html) | ✅ | | |
[^2]: Tap-Dances are limited to single and double-tap on BlueMicro
[^1]: OLEDs are currently proof of concept in ZMK.
## Code of Conduct
Please note that this project is released with a
[Contributor Code of Conduct](https://www.contributor-covenant.org/version/2/0/code_of_conduct/).
By participating in this project you agree to abide by its terms.

View File

@ -63,6 +63,7 @@ Below table lists major features/capabilities currently supported in ZMK, as wel
| [Sticky (One Shot) Keys](keymaps/behaviors/sticky-key.md) | ✅ |
| [Combos](keymaps/combos.md) | ✅ |
| [Macros](keymaps/behaviors/macros.md) | ✅ |
| [Dynamic Macros](keymaps/behaviors/dynamic-macros.md) | ✅ |
| [Mouse Keys](keymaps/behaviors/mouse-emulation.md) | ✅ |
| [Realtime Keymap Updating](features/studio.md) | 🚧 |

View File

@ -40,8 +40,7 @@ A dynamic macro definition looks like:
```
/ {
macros {
dyn-macro: dyn-macro {
label = "ZM_dynamic-macro";
dm: dm {
compatible = "zmk,behavior-dynamic-macro";
#binding-cells = <1>;
};
@ -49,12 +48,12 @@ A dynamic macro definition looks like:
};
```
The macro can then be bound in your keymap by referencing it by the label `dyn-macro` followed by PLAY or RECORD, e.g.:
The macro can then be bound in your keymap by referencing it by the label `dm` followed by PLAY or RECORD, e.g.:
```
/ {
keymap {
&dyn-macro PLAY &dyn-macro RECORD
&dm PLAY &dm RECORD
...
};
};

View File

@ -54,41 +54,60 @@ module.exports = {
},
collapsed: true,
items: [
"behaviors/key-press",
"behaviors/layers",
"behaviors/misc",
"behaviors/hold-tap",
"behaviors/mod-tap",
"behaviors/mod-morph",
"behaviors/dynamic-macros",
"behaviors/macros",
"behaviors/key-toggle",
"behaviors/sticky-key",
"behaviors/sticky-layer",
"behaviors/tap-dance",
"behaviors/caps-word",
"behaviors/key-repeat",
"behaviors/sensor-rotate",
"behaviors/mouse-emulation",
"behaviors/reset",
"behaviors/bluetooth",
"behaviors/outputs",
"behaviors/underglow",
"behaviors/backlight",
"behaviors/power",
"behaviors/soft-off",
],
},
{
Codes: [
"codes/index",
"codes/keyboard-keypad",
"codes/modifiers",
"codes/editing",
"codes/media",
"codes/applications",
"codes/input-assist",
"codes/power",
{
type: "category",
label: "Behaviors",
link: {
type: "doc",
id: "keymaps/behaviors/index",
},
collapsed: true,
items: [
"keymaps/behaviors/key-press",
"keymaps/behaviors/layers",
"keymaps/behaviors/misc",
"keymaps/behaviors/hold-tap",
"keymaps/behaviors/mod-morph",
"keymaps/behaviors/macros",
"keymaps/behaviors/dynamic-macros",
"keymaps/behaviors/key-toggle",
"keymaps/behaviors/sticky-key",
"keymaps/behaviors/sticky-layer",
"keymaps/behaviors/tap-dance",
"keymaps/behaviors/caps-word",
"keymaps/behaviors/key-repeat",
"keymaps/behaviors/sensor-rotate",
"keymaps/behaviors/mouse-emulation",
"keymaps/behaviors/reset",
"keymaps/behaviors/bluetooth",
"keymaps/behaviors/outputs",
"keymaps/behaviors/underglow",
"keymaps/behaviors/backlight",
"keymaps/behaviors/power",
"keymaps/behaviors/soft-off",
"keymaps/behaviors/studio-unlock",
],
},
"keymaps/modifiers",
"keymaps/combos",
"keymaps/conditional-layers",
"keymaps/list-of-keycodes",
{
type: "category",
label: "Input Processors",
link: {
type: "doc",
id: "keymaps/input-processors/index",
},
collapsed: true,
items: [
"keymaps/input-processors/usage",
"keymaps/input-processors/scaler",
"keymaps/input-processors/transformer",
"keymaps/input-processors/code-mapper",
"keymaps/input-processors/temp-layer",
],
},
],
},
{