update intro page, add layer-tap docs and update hold-tap docs.

This commit is contained in:
Okke Formsma 2020-09-04 20:57:11 +02:00
parent 304603240f
commit 763d62f6f2
3 changed files with 44 additions and 19 deletions

View file

@ -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)
### 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:
```
@ -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.
#### Note
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`.
#### Comparison to QMK
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`.

View file

@ -26,7 +26,7 @@ This allows you to use those defines, e.g. `LOWER` later in your keymap.
## 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
again.
@ -41,9 +41,25 @@ Example:
&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: `&lt`
- Parameter: The layer number to enable when held, e.g. `1`
- Parameter: The keycode to send when tapped, e.g. `A`
Example:
```
&lt LOWER SPC
```
## 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

View file

@ -7,31 +7,36 @@ sidebar_label: Introduction
ZMK Firmware is an open source (MIT) keyboard
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
feature.
## 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:
- HID Over GATT (HOG) - This is the official term for BLE HID devices
- Keymaps and layers with basic keycodes
- Some initial work on one "behavior", Mod-Tap
- Basic HID over USB
- Basic consumer (media) keycodes.
- Basic OLED display logic
- Basic Split support
- Encoders
- Wireless connectivity via BLE HID Over GATT (HOG)
- USB connectivity
- Low active power usage
- Split keyboard support
- [Keymaps and layers](behavior/layers)
- [Hold-tap](behavior/hold-tap) (which includes [mod-tap](behavior/mod-tap), [layer-tap](behavior/layers))
- [Basic HID over USB](behavior/key-press)
- [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
- One Shot
- Layer Tap
- Complete split support
- One Shot Keys
- Combo keys
- Macros
- Complete split support (encoders and RGB are not supported on the 'peripheral' side)
- Battery reporting
- Low power mode
- Low power sleep states
- Low power mode (to toggle LEDs and screen off)
- Shell over BLE
## Code Of Conduct