update intro page, add layer-tap docs and update hold-tap docs.
This commit is contained in:
parent
304603240f
commit
763d62f6f2
3 changed files with 44 additions and 19 deletions
|
@ -22,7 +22,11 @@ We call this the 'hold-preferred' flavor of hold-taps. While this flavor may wor
|
||||||
|
|
||||||
![Hold-tap comparison](../assets/hold-tap/comparison.png)
|
![Hold-tap comparison](../assets/hold-tap/comparison.png)
|
||||||
|
|
||||||
### Configuration
|
### Basic usage
|
||||||
|
For basic usage, please see [mod-tap](./mod-tap.md) and [layer-tap](./layers.md) pages.
|
||||||
|
|
||||||
|
|
||||||
|
### Advanced Configuration
|
||||||
A code example which configures a mod-tap setting that works with homerow mods:
|
A code example which configures a mod-tap setting that works with homerow mods:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
@ -58,5 +62,5 @@ If this config does not work for you, try the flavor "tap-preferred" and a short
|
||||||
|
|
||||||
If you want to use a tap-hold with a keycode from a different code page, you have to define another behavior with another "bindings" parameter.For example, if you want to use SHIFT and volume up, define the bindings like `bindings = <&kp>, <&cp>;`. Only single-argument behaviors are supported at the moment.
|
If you want to use a tap-hold with a keycode from a different code page, you have to define another behavior with another "bindings" parameter.For example, if you want to use SHIFT and volume up, define the bindings like `bindings = <&kp>, <&cp>;`. Only single-argument behaviors are supported at the moment.
|
||||||
|
|
||||||
#### Note
|
#### Comparison to QMK
|
||||||
Astute readers may notice similarities between the possible behaviors in ZMK and other firmware, such as QMK. The hold-preferred flavor works similar to the `HOLD_ON_OTHER_KEY_PRESS` setting. The 'balanced' flavor is similar to the `PERMISSIVE_HOLD` setting, and the `tap-preferred` flavor is similar to `IGNORE_MOD_TAP_INTERRUPT`.
|
The hold-preferred flavor works similar to the `HOLD_ON_OTHER_KEY_PRESS` setting in QMK. The 'balanced' flavor is similar to the `PERMISSIVE_HOLD` setting, and the `tap-preferred` flavor is similar to `IGNORE_MOD_TAP_INTERRUPT`.
|
|
@ -26,7 +26,7 @@ This allows you to use those defines, e.g. `LOWER` later in your keymap.
|
||||||
|
|
||||||
## Momentary Layer
|
## Momentary Layer
|
||||||
|
|
||||||
The "momentary layer" behavior allows you to enable a layer while a certain key is pressed. Immediately upon
|
The "momentary layer" behavior enables a layer while a certain key is pressed. Immediately upon
|
||||||
activation of the key, the layer is enabled, and immediately open release of the key, the layer is disabled
|
activation of the key, the layer is enabled, and immediately open release of the key, the layer is disabled
|
||||||
again.
|
again.
|
||||||
|
|
||||||
|
@ -41,9 +41,25 @@ Example:
|
||||||
&mo LOWER
|
&mo LOWER
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Layer-tap
|
||||||
|
|
||||||
|
The "layer-tap" behavior enables a layer when a key is held, and output another key when the key is only tapped for a short time. For more information on the inner workings of layer-tap, see [hold-tap](./hold-tap.md).
|
||||||
|
|
||||||
|
### Behavior Binding
|
||||||
|
- Reference: `<`
|
||||||
|
- Parameter: The layer number to enable when held, e.g. `1`
|
||||||
|
- Parameter: The keycode to send when tapped, e.g. `A`
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
```
|
||||||
|
< LOWER SPC
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Toggle Layer
|
## Toggle Layer
|
||||||
|
|
||||||
The "toggle layer" behavior allows you to enable a layer until the layer is manually disabled.
|
The "toggle layer" behavior enables a layer until the layer is manually disabled.
|
||||||
|
|
||||||
### Behavior Binding
|
### Behavior Binding
|
||||||
|
|
||||||
|
|
|
@ -7,31 +7,36 @@ sidebar_label: Introduction
|
||||||
ZMK Firmware is an open source (MIT) keyboard
|
ZMK Firmware is an open source (MIT) keyboard
|
||||||
firmware built on the [Zephyr™ Project](https://zephyrproject.org/) Real Time Operating System (RTOS).
|
firmware built on the [Zephyr™ Project](https://zephyrproject.org/) Real Time Operating System (RTOS).
|
||||||
|
|
||||||
The goal is to provider a powerful, featureful keyboard firmware that is free
|
The goal is to provide a powerful, featureful keyboard firmware that is free
|
||||||
of licensing issues that prevent upstream BLE support as a first-class
|
of licensing issues that prevent upstream BLE support as a first-class
|
||||||
feature.
|
feature.
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
At this point, ZMK is _missing_ more features than it has. Currently, the mostly working bits
|
At this point, ZMK is still missing many features. Currently, the working bits
|
||||||
include:
|
include:
|
||||||
|
|
||||||
- HID Over GATT (HOG) - This is the official term for BLE HID devices
|
- Wireless connectivity via BLE HID Over GATT (HOG)
|
||||||
- Keymaps and layers with basic keycodes
|
- USB connectivity
|
||||||
- Some initial work on one "behavior", Mod-Tap
|
- Low active power usage
|
||||||
- Basic HID over USB
|
- Split keyboard support
|
||||||
- Basic consumer (media) keycodes.
|
- [Keymaps and layers](behavior/layers)
|
||||||
- Basic OLED display logic
|
- [Hold-tap](behavior/hold-tap) (which includes [mod-tap](behavior/mod-tap), [layer-tap](behavior/layers))
|
||||||
- Basic Split support
|
- [Basic HID over USB](behavior/key-press)
|
||||||
- Encoders
|
- [Basic consumer (media) keycodes](behavior/key-press#consumer-key-press)
|
||||||
|
- [Encoders](feature/encoders)
|
||||||
|
- Basic [OLED display support](feature/displays)
|
||||||
|
- [RGB Underglow](feature/underglow)
|
||||||
|
|
||||||
## Missing Features
|
## Missing Features
|
||||||
|
|
||||||
- One Shot
|
- One Shot Keys
|
||||||
- Layer Tap
|
- Combo keys
|
||||||
- Complete split support
|
- Macros
|
||||||
|
- Complete split support (encoders and RGB are not supported on the 'peripheral' side)
|
||||||
- Battery reporting
|
- Battery reporting
|
||||||
- Low power mode
|
- Low power sleep states
|
||||||
|
- Low power mode (to toggle LEDs and screen off)
|
||||||
- Shell over BLE
|
- Shell over BLE
|
||||||
|
|
||||||
## Code Of Conduct
|
## Code Of Conduct
|
||||||
|
|
Loading…
Reference in a new issue