aboutsummaryrefslogtreecommitdiff
path: root/docs/feature_space_cadet_shift.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/feature_space_cadet_shift.md')
-rw-r--r--docs/feature_space_cadet_shift.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/docs/feature_space_cadet_shift.md b/docs/feature_space_cadet_shift.md
new file mode 100644
index 000000000..bec7cbd3d
--- /dev/null
+++ b/docs/feature_space_cadet_shift.md
@@ -0,0 +1,33 @@
1# Space Cadet Shift: The Future, Built In
2
3Steve Losh described the [Space Cadet Shift](http://stevelosh.com/blog/2012/10/a-modern-space-cadet/) quite well. Essentially, when you tap Left Shift on its own, you get an opening parenthesis; tap Right Shift on its own and you get the closing one. When held, the Shift keys function as normal. Yes, it's as cool as it sounds.
4
5## Usage
6
7Replace the Left Shift key in your keymap with `KC_LSPO` (Left Shift, Parenthesis Open), and Right Shift with `KC_RSPC` (Right Shift, Parenthesis Close).
8
9## Keycodes
10
11|Keycode |Description |
12|---------|--------------------------------------|
13|`KC_LSPO`|Left Shift when held, `(` when tapped |
14|`KC_RSPC`|Right Shift when held, `)` when tapped|
15
16## Caveats
17
18Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. Make sure that Command is disabled in your `rules.mk` with:
19
20```make
21COMMAND_ENABLE = no
22```
23
24## Configuration
25
26By default Space Cadet assumes a US ANSI layout, but if your layout uses different keys for parentheses, you can redefine them in your `config.h`.
27You can also disable the rollover, allowing you to use the opposite Shift key to cancel the Space Cadet state in the event of an erroneous press, instead of emitting a pair of parentheses when the keys are released.
28
29|Define |Default |Description |
30|------------------------------|-------------|------------------------------------------------------------|
31|`LSPO_KEY` |`KC_9` |The keycode to send when Left Shift is tapped |
32|`RSPC_KEY` |`KC_0` |The keycode to send when Right Shift is tapped |
33|`DISABLE_SPACE_CADET_ROLLOVER`|*Not defined*|If defined, use the opposite Shift key to cancel Space Cadet|