]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Update KC_GESC documentation (#5053)
authorYan-Fa Li <yanfali@gmail.com>
Fri, 15 Feb 2019 14:50:28 +0000 (06:50 -0800)
committerMechMerlin <30334081+mechmerlin@users.noreply.github.com>
Fri, 15 Feb 2019 14:50:28 +0000 (06:50 -0800)
* Update KC_GESC documentation

 - document caveats on OSX and expected behavior with KC_GESC and GUI
 - clarify documentation slightly
 - give examples of expected output in actual use

* Update OSX -> macOS

* Captilization

* remove simply

docs/feature_grave_esc.md

index c6fa1602210c73919fd9ac19cd23f1b53464da9d..a7261d2dc88797f8bbe81c87096babfebc94320e 100644 (file)
@@ -4,7 +4,11 @@ If you're using a 60% keyboard, or any other layout with no F-row, you will have
 
 ## Usage
 
-Replace 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`.
+Replace the `KC_GRAVE` key in your keymap (usually to the left of the `1` key) with `KC_GESC`. Most of the time this key will output `KC_ESC` when pressed. However, when Shift or GUI are held down it will output `KC_GRV` instead.
+
+## What Your OS Sees
+
+If Mary presses GESC on her keyboard, the OS will see an KC_ESC character. Now if Mary holds Shift down and presses GESC it will output `~`, or a shifted backtick. Now if she holds GUI/CMD/WIN, it will output a simple <code>&#96;</code> character.
 
 ## Keycodes
 
@@ -12,6 +16,10 @@ Replace the `KC_GRAVE` key in your keymap (usually to the left of the `1` key) w
 |---------|-----------|------------------------------------------------------------------|
 |`KC_GESC`|`GRAVE_ESC`|Escape when pressed, <code>&#96;</code> when Shift or GUI are held|
 
+### Caveats
+
+ * On macOS CMD/GUI + KC_GRV is actually mapped to a hot key so it will not output a backtick.
+
 ## Configuration
 
 There 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`: