1.7 KiB
title, sidebar_label
| title | sidebar_label |
|---|---|
| Key Press Behaviors | Key Press |
Summary
The most basic of behaviors, is the ability to send certain keycode presses and releases in response to activating a certain key.
For reference on keycode values, see pages 83-89 of the USB HID Usage Tables.
Keycode Defines
To make it easier to encode the HID keycode numeric values, most keymaps include
the dt-bindings/zmk/keys.h header
provided by ZMK near the top:
#include <dt-bindings/zmk/keys.h>
Doing so makes a set of defines such as A, NUM_1, etc. available for use with these behaviors
:::note There is an open issue to provide a more comprehensive, and complete set of defines for the full keypad and consumer usage pages in the future for ZMK. :::
Keypad Key Press
The "keypad key press" behavior sends standard keypad keycodes on press/release.
Behavior Binding
- Reference:
&kp - Parameter: The keycode usage ID from the keypad usage page, e.g.
4orA
Example:
&kp A
Consumer Key Press
The "consumer key press" behavior allows you to send "consumer" usage page keycodes on press/release. These are mostly used for media and power related keycodes, such as sending "Pause", "Scan Track Next", "Scan Track Previous", etc.
There are a subset of the full consumer usage IDs found in the keys.h include, prefixed with M_, e.g. M_PREV.
Behavior Binding
- Reference:
&cp - Parameter: The keycode usage ID from the consumer usage page, e.g.
M_PREVorM_EJCT
Example:
&cp M_PREV