Added macros to Dynamic Keymaps, Zeal60 RGB backlight improvements (#4520)
[jackhill/qmk/firmware.git] / docs / feature_grave_esc.md
CommitLineData
0b54e7f5 1# Grave Escape
2
2bc34b09 3If you're using a 60% keyboard, or any other layout with no F-row, you will have noticed that there is no dedicated Escape key. Grave Escape is a feature that allows you to share the grave key (<code>&#96;</code> and `~`) with Escape.
0b54e7f5 4
2bc34b09 5## Usage
6
7Replace the `KC_GRAVE` key in your keymap (usually to the left of the `1` key) with `KC_GESC`. When pressed it will behave like `KC_ESC`, but with Shift or GUI held it will send `KC_GRAVE`.
8
9## Keycodes
0b54e7f5 10
4c675a83 11|Key |Aliases |Description |
12|---------|-----------|------------------------------------------------------------------|
13|`KC_GESC`|`GRAVE_ESC`|Escape when pressed, <code>&#96;</code> when Shift or GUI are held|
0b54e7f5 14
2bc34b09 15## Configuration
16
17There are several possible key combinations this will break, among them Control+Shift+Escape on Windows and Command+Option+Escape on macOS. To work around this, you can `#define` these options in your `config.h`:
0b54e7f5 18
2bc34b09 19|Define |Description |
20|--------------------------|-----------------------------------------|
21|`GRAVE_ESC_ALT_OVERRIDE` |Always send Escape if Alt is pressed |
22|`GRAVE_ESC_CTRL_OVERRIDE` |Always send Escape if Control is pressed |
23|`GRAVE_ESC_GUI_OVERRIDE` |Always send Escape if GUI is pressed |
24|`GRAVE_ESC_SHIFT_OVERRIDE`|Always send Escape if Shift is pressed |