aboutsummaryrefslogtreecommitdiffstats
path: root/layouts
diff options
context:
space:
mode:
Diffstat (limited to 'layouts')
-rw-r--r--layouts/community/ergodox/qwerty_code_friendly/keymap.c89
-rw-r--r--layouts/community/ergodox/qwerty_code_friendly/readme.md30
-rw-r--r--layouts/community/ergodox/zweihander-osx/keymap.c81
3 files changed, 90 insertions, 110 deletions
diff --git a/layouts/community/ergodox/qwerty_code_friendly/keymap.c b/layouts/community/ergodox/qwerty_code_friendly/keymap.c
index 520985204..a55a1e8d9 100644
--- a/layouts/community/ergodox/qwerty_code_friendly/keymap.c
+++ b/layouts/community/ergodox/qwerty_code_friendly/keymap.c
@@ -11,11 +11,20 @@
// #define CFQ_USE_MOMENTARY_LAYER_KEYS
// #define CFQ_USE_EXPEREMENTAL_LAYER
+// keep enabled for now
+#define CFQ_USE_DYNAMIC_MACRO
+
#if !defined(CFQ_USER_KEY1)
-#define CFQ_USER_KEY1 KC_F13
+#define CFQ_USER_KEY1 KC_SPC
#endif
#if !defined(CFQ_USER_KEY2)
-#define CFQ_USER_KEY2 KC_APP
+#define CFQ_USER_KEY2 KC_ENT
+#endif
+#if !defined(CFQ_USER_KEY3)
+#define CFQ_USER_KEY3 CFQ_KC_FN3
+#endif
+#if !defined(CFQ_USER_KEY4)
+#define CFQ_USER_KEY4 KC_APP
#endif
#define BASE 0 // default layer
@@ -29,9 +38,16 @@ enum custom_keycodes {
PLACEHOLDER = SAFE_RANGE, // can always be here
EPRM,
VRSN,
- RGB_SLD
+ RGB_SLD,
+#ifdef CFQ_USE_DYNAMIC_MACRO
+ DYNAMIC_MACRO_RANGE,
+#endif
};
+#ifdef CFQ_USE_DYNAMIC_MACRO
+#include "dynamic_macro.h"
+#endif
+
// macros
#ifdef CFQ_USE_EXPEREMENTAL_LAYER
#define M_SPACES_1 2
@@ -77,13 +93,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
* | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | LCtl |Super | Alt | USR2 |Space | | Left | Down | Up |Right | Del |
+ * | LCtl |Super | Alt | USR4 |Space | | Left | Down | Up |Right | Del |
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
- * | Ins | ~L3 | | Home | End |
+ * | Ins | USR3 | | Home | End |
* ,------|------|------| |------+------+------.
* | | | ~L2 | | PgUp | | |
- * |Space | USR1 |------| |------|Enter |Space |
+ * | USR1 | USR2 |------| |------|Enter |Space |
* | | | ~L1 | | PgDn | | |
* `--------------------' `--------------------'
*/
@@ -95,10 +111,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LPRN,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC,
- KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY2, KC_SPC,
- KC_INS, CFQ_KC_FN3,
+ KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY4, KC_SPC,
+ KC_INS, CFQ_USER_KEY3,
CFQ_KC_FN2,
- KC_SPC, CFQ_USER_KEY1, CFQ_KC_FN1,
+ CFQ_USER_KEY1, CFQ_USER_KEY2, CFQ_KC_FN1,
// right hand
KC_RCBR, KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL, KC_BSPC,
KC_RPRN, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
@@ -127,10 +143,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | | | 0 | | . | + | |
* `----------------------------------' `----------------------------------'
* ,-------------. ,---------------.
- * | | | | | |
+ * |Start1|Start2| | | |
* ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | | |------| |------| | |
+ * | | | Stop | | | | |
+ * |Play1 |Play2 |------| |------| | |
* | | | | | | | |
* `--------------------' `----------------------'
*/
@@ -142,9 +158,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_ARROW_RMINUS),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_BRACKET_IN_ANG), M(M_BRACKET_IN_BRC),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+#ifdef CFQ_USE_DYNAMIC_MACRO
+ DYN_REC_START1, DYN_REC_START2,
+ DYN_REC_STOP,
+ DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, KC_TRNS,
+#else
KC_TRNS, KC_TRNS,
KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
+#endif
// right hand
M(M_BRACKET_OUT_CBR), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
M(M_BRACKET_OUT_PRN), M(M_ARROW_LEQL), KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH, KC_F11,
@@ -201,13 +223,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 3: My own testing keys!
*
* ,--------------------------------------------------. ,--------------------------------------------------.
- * | | Spc1 | Spc2 | Spc3 | Spc4 | Spc5 | | | | Spc6 | Spc7 | Spc8 | | | |
+ * | | | | { | } | | } | | | | | | | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | |------| |------| | | | | | |
+ * | | | | ( | ) | | ) | | | Spc7 | Spc8 | | | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | | | | |
+ * | | | | [ | ] | |------| |------| Spc4 | Spc5 | Spc6 | | | |
+ * |--------+------+------+------+------+------| ] | | |------+------+------+------+------+--------|
+ * | | | | < | > | | | | | Spc1 | Spc2 | Spc3 | | | |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | | | | | | | | | | | |
* `----------------------------------' `----------------------------------'
@@ -220,23 +242,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `--------------------' `--------------------'
*/
-// EXPEREMENT
+// EXPERIMENT
[EXPR] = LAYOUT_ergodox(
// left hand
- KC_TRNS, M(M_SPACES_1), M(M_SPACES_2), M(M_SPACES_3), M(M_SPACES_4), M(M_SPACES_5), KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_TRNS, KC_RCBR,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_LPRN, KC_RPRN, KC_TRNS, KC_RPRN,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, S(KC_COMM), S(KC_DOT), KC_TRNS, KC_RBRC,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS,
// right hand
- KC_TRNS, M(M_SPACES_6), M(M_SPACES_7), M(M_SPACES_8), KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, M(M_SPACES_7), M(M_SPACES_8), KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, M(M_SPACES_4), M(M_SPACES_5), M(M_SPACES_6), KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, M(M_SPACES_1), M(M_SPACES_2), M(M_SPACES_3), KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS
@@ -314,6 +336,11 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+#ifdef CFQ_USE_DYNAMIC_MACRO
+ if (!process_record_dynamic_macro(keycode, record)) {
+ return false;
+ }
+#endif
switch (keycode) {
// dynamically generate these.
case EPRM:
diff --git a/layouts/community/ergodox/qwerty_code_friendly/readme.md b/layouts/community/ergodox/qwerty_code_friendly/readme.md
index cb5e96d69..52677310c 100644
--- a/layouts/community/ergodox/qwerty_code_friendly/readme.md
+++ b/layouts/community/ergodox/qwerty_code_friendly/readme.md
@@ -27,7 +27,7 @@
Some optional behavior is configurable without editing the code
using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
-- `CFQ_USER_KEY1`, `CFQ_USER_KEY2` are used for custom-keys
+- `CFQ_USER_KEY1` (1..4) are used for custom-keys
- `CFQ_USE_MOMENTARY_LAYER_KEYS` is used to prevent layer keys from toggling when tapped.
- `CFQ_USE_SWAP_RIGHT_SPACE_ENTER` swap Enter and Space on the right hand thumb cluster.
While asymmetric, it makes Enter more easily accessible.
@@ -40,8 +40,10 @@ using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
When undefined:
-- `USR1` defaults to `F13`, otherwise use `CFQ_USER_KEY1`.
-- `USR2` defaults to `APP`, otherwise use `CFQ_USER_KEY2`.
+- `USR1` defaults to `KC_SPC`, otherwise use `CFQ_USER_KEY1`.
+- `USR2` defaults to `KC_ENT`, otherwise use `CFQ_USER_KEY2`.
+- `USR3` defaults to `KC_FN3`, otherwise use `CFQ_USER_KEY3`.
+- `USR4` defaults to `APP`, otherwise use `CFQ_USER_KEY4`.
```
,--------------------------------------------------. ,--------------------------------------------------.
@@ -53,21 +55,23 @@ When undefined:
|--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
| LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift |
`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- | LCtl |Super | Alt | USR2 |Space | | Left | Down | Up |Right | Del |
+ | LCtl |Super | Alt | USR4 |Space | | Left | Down | Up |Right | Del |
`----------------------------------' `----------------------------------'
,-------------. ,-------------.
- | Ins | ~L3 | | Home | End |
+ | Ins | USR3 | | Home | End |
,------|------|------| |------+------+------.
| | | ~L2 | | PgUp | | |
- |Space | USR1 |------| |------|Enter |Space |
+ | USR1 | USR2 |------| |------|Enter |Space |
| | | ~L1 | | PgDn | | |
`--------------------' `--------------------'
-
```
## Keymap 1: Symbol layer
-Note the double bracket keys on this layer press left to position the cursor between them.
+Notes:
+
+- The double bracket keys on this layer press left to position the cursor between them.
+- The left thumb cluster is used for macro record/replay.
```
,--------------------------------------------------. ,--------------------------------------------------.
@@ -82,10 +86,10 @@ Note the double bracket keys on this layer press left to position the cursor bet
| | | | | | | 0 | | . | + | |
`----------------------------------' `----------------------------------'
,-------------. ,---------------.
- | | | | | |
+ |Start1|Start2| | | |
,------|------|------| |------+--------+------.
- | | | | | | | |
- | | |------| |------| | |
+ | | | Stop | | | | |
+ |Play1 |Play2 |------| |------| | |
| | | | | | | |
`--------------------' `----------------------'
```
@@ -115,6 +119,10 @@ Note the double bracket keys on this layer press left to position the cursor bet
## Changelog
+- 2017/10/28
+ Make more keys user defined on the left thumb cluster.
+ Add macro record/replay keys.
+
- 2017/10/4
Move Insert key to the left thumb cluster (away from the modifier keys).
Replace with `USR2` which defaults to `APP`.
diff --git a/layouts/community/ergodox/zweihander-osx/keymap.c b/layouts/community/ergodox/zweihander-osx/keymap.c
index 2ace33ee2..8c216b09b 100644
--- a/layouts/community/ergodox/zweihander-osx/keymap.c
+++ b/layouts/community/ergodox/zweihander-osx/keymap.c
@@ -6,12 +6,7 @@
#define SYMB 1 // symbols
#define MDIA 2 // media keys
-#define SGWK 0 // "sagewick", ⌘S ⌘⇥
-#define SGWF 1 // "sagewick freshly", ⌘S ⌘⇥ ⌘R
-#define BBED 2 // BBEdit
-#define TMNL 3 // Terminal
-#define SAFA 4 // Safari
-#define ALFRED_LEAD_TIME 250 // time, in milliseconds, to let Alfred come to the fore and accept keyboard input
+// Best viewed in Xcode in Menlo Regular.
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 0: Basic layer
@@ -22,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | ⌦ | Q | W | E | R | T | ~L1 | | ~L1 | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | ⌫ | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' / L⌘ |
- * |--------+------+------+------+------+------| L⌘ | | L⌘ |------+------+------+------+------+--------|
+ * |--------+------+------+------+------+------| L⌘ | | R⌘ |------+------+------+------+------+--------|
* | L⇧ | Z | X | C | V | B | | | | N | M | , | . | / / ⌃| R⇧ |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | L⌃ | L⌥ | L⌘ | ← | → | | ↑ | ↓ | [ | ] | |
@@ -51,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
MO(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT),
- KC_LGUI, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
+ KC_RGUI, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_SPC ,
KC_ESC, KC_BSPC,
KC_PGDN,
@@ -102,13 +97,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 2: Media keys
*
* ,--------------------------------------------------. ,--------------------------------------------------.
- * | | F14 | F15 |PrtScr|SclLck| Pause| | | ⌘Q | ⌘W | ⌘⇧` | ⌘` | | | Power |
+ * | | F14 | F15 |PrtScr|SclLck| Pause| | | | ⌘W | ⌘⇧` | ⌘` | | | Power |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | PgUp |⌘S⌘⇥⌘R| Term | | | | ⌘] | ⌥⌘↑ | ↑ | ⌥⌘↓ | | |
+ * | | | | PgUp | | | | | | ⌘] | ⌥⌘↑ | ↑ | ⌥⌘↓ | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |Safari| PgDn | | |------| |------| ⌘[ | ← | ↓ | → | | ⏯ |
+ * | | | Home | PgDn | End | |------| |------| ⌘[ | ← | ↓ | → | | F16 |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | |BBEdit| | | | | ⏯ | ⏮ | ⏭ | | |
+ * | | | | | | | | | | | ⏯ | ⏮ | ⏭ | | |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | | | | | | |VolUp |VolDn | Mute | | |
* `----------------------------------' `----------------------------------'
@@ -123,17 +118,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// MEDIA AND MOUSE
[MDIA] = LAYOUT_ergodox(
KC_TRNS, KC_F14 , KC_F15 , KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, /* F14 dims screen, F15 brightens */
- KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, M(SGWF), M(TMNL), KC_TRNS,
- KC_TRNS, KC_TRNS, M(SAFA), KC_PGDN, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(BBED), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END , KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
KC_HOME,
KC_TRNS, KC_TRNS, KC_TRNS,
// right hand
- LGUI(KC_Q), LGUI(KC_W), LGUI(LSFT(KC_GRV)), LGUI(KC_GRV), KC_TRNS, KC_TRNS, KC_PWR ,
+ KC_TRNS, LGUI(KC_W), LGUI(LSFT(KC_GRV)), LGUI(KC_GRV), KC_TRNS, KC_TRNS, KC_POWER,
KC_TRNS, LGUI(KC_RBRC), LGUI(LALT(KC_UP)), KC_UP , LGUI(LALT(KC_DOWN)), KC_TRNS, KC_TRNS,
- LGUI(KC_LBRC), KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_MPLY,
+ LGUI(KC_LBRC), KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_F16 ,
KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS,
KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
@@ -149,57 +144,7 @@ const uint16_t PROGMEM fn_actions[] = {
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
// MACRODOWN only works in this function
- switch(id) {
- case SGWK:
- if (record->event.pressed) {
- return MACRO(
- I(10),
- D(LGUI), T(S), U(LGUI),
- D(LGUI), T(TAB), U(LGUI),
- END);
- }
- break;
- case SGWF:
- if (record->event.pressed) {
- return MACRO(
- I(10),
- D(LGUI), T(S), U(LGUI),
- D(LGUI), T(TAB), U(LGUI),
- D(LGUI), T(R), U(LGUI),
- END);
- }
- break;
- case BBED:
- if (record->event.pressed) {
- return MACRO(
- I(10),
- D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME),
- T(B), T(B), T(E), T(D), T(I), T(T),
- T(ENT),
- END);
- }
- break;
- case TMNL:
- if (record->event.pressed) {
- return MACRO(
- I(10),
- D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME),
- T(T), T(E), T(R), T(M), T(I), T(N), T(A), T(L),
- T(ENT),
- END);
- }
- break;
- case SAFA:
- if (record->event.pressed) {
- return MACRO(
- I(10),
- D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME),
- T(S), T(A), T(F), T(A), T(R), T(I),
- T(ENT),
- END);
- }
- break;
- }
+
return MACRO_NONE;
};