diff options
| author | Joe Wasson <jwasson+github@gmail.com> | 2018-05-12 09:54:35 -0700 |
|---|---|---|
| committer | Drashna Jaelre <drashna@live.com> | 2018-05-12 09:54:35 -0700 |
| commit | 6dda0d6e34ac47c6dfdee1429937b445bf941425 (patch) | |
| tree | e74a9e09830312df42d60858ae2673ec638f81c2 | |
| parent | 48a68dcf107314d81fbade38d3969caaa31b5671 (diff) | |
| download | qmk_firmware-6dda0d6e34ac47c6dfdee1429937b445bf941425.tar.gz qmk_firmware-6dda0d6e34ac47c6dfdee1429937b445bf941425.zip | |
More work on Talljoe layout including adding layout support for HHKB and TKL. (#2946)
* Add tap-dancing semicolon.
* Infinity60 was running out of USB space.
* Rename common layout variable so it doesn't collide with some keyboards.
* Godspeed!!!
* Patch the number of LEDs for 1up60rgb
* Don't light up if rgblight is off.
* Add HHKB layout.
* Add HHKB to Talljoe's layout.
* Bring back bananasplit keymap.
* info.json
* Userspace config.h doesn't seem to be setting PREVENT_STUCK_MODIFIERS
* Remove 1uprgb workaround
* Add TKL to talljoe keymap.
Also introduces the tkl layout.
26 files changed, 407 insertions, 28 deletions
diff --git a/keyboards/1up60rgb/1up60rgb.h b/keyboards/1up60rgb/1up60rgb.h index 969fd5b4a..6905fd220 100644 --- a/keyboards/1up60rgb/1up60rgb.h +++ b/keyboards/1up60rgb/1up60rgb.h | |||
| @@ -63,4 +63,19 @@ | |||
| 63 | K400, K401, K403, K406, K410, K411, K413, K414 \ | 63 | K400, K401, K403, K406, K410, K411, K413, K414 \ |
| 64 | ) | 64 | ) |
| 65 | 65 | ||
| 66 | /* HHKB Variant */ | ||
| 67 | #define LAYOUT_60_hhkb( \ | ||
| 68 | K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ | ||
| 69 | K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ | ||
| 70 | K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \ | ||
| 71 | K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ | ||
| 72 | K401, K403, K406, K411, K413 \ | ||
| 73 | ) LAYOUT_all( \ | ||
| 74 | K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ | ||
| 75 | K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ | ||
| 76 | K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K214, \ | ||
| 77 | K300, KC_NO,K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ | ||
| 78 | KC_NO,K401, K403, K406, KC_NO,K411, K413, KC_NO \ | ||
| 79 | ) | ||
| 80 | |||
| 66 | #endif | 81 | #endif |
diff --git a/keyboards/1up60rgb/info.json b/keyboards/1up60rgb/info.json index d662dc60d..67f94b7fe 100644 --- a/keyboards/1up60rgb/info.json +++ b/keyboards/1up60rgb/info.json | |||
| @@ -19,6 +19,9 @@ | |||
| 19 | 19 | ||
| 20 | "LAYOUT_60_ansi_split_bs_rshift": { | 20 | "LAYOUT_60_ansi_split_bs_rshift": { |
| 21 | "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}] | 21 | "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}] |
| 22 | }, | ||
| 23 | "LAYOUT_60_hhkb": { | ||
| 24 | "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"|", "x":13, "y":0}, {"label":"~", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Delete", "x":13.5, "y":1, "w":1.5}, {"label":"Control", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, {"label":"Os", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Os", "x":12.5, "y":4}] | ||
| 22 | } | 25 | } |
| 23 | } | 26 | } |
| 24 | } | 27 | } |
diff --git a/keyboards/1up60rgb/rules.mk b/keyboards/1up60rgb/rules.mk index 7363b3c3d..540e4ea96 100644 --- a/keyboards/1up60rgb/rules.mk +++ b/keyboards/1up60rgb/rules.mk | |||
| @@ -55,4 +55,4 @@ BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality | |||
| 55 | AUDIO_ENABLE ?= no | 55 | AUDIO_ENABLE ?= no |
| 56 | RGBLIGHT_ENABLE ?= yes | 56 | RGBLIGHT_ENABLE ?= yes |
| 57 | 57 | ||
| 58 | LAYOUTS = 60_ansi 60_iso 60_ansi_split_bs_rshift | 58 | LAYOUTS = 60_ansi 60_iso 60_ansi_split_bs_rshift 60_hhkb |
diff --git a/keyboards/bananasplit/keymaps/talljoe/config.h b/keyboards/bananasplit/keymaps/talljoe/config.h new file mode 100644 index 000000000..bb2aadfa6 --- /dev/null +++ b/keyboards/bananasplit/keymaps/talljoe/config.h | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_CONFIG_H | ||
| 5 | |||
| 6 | #define PREVENT_STUCK_MODIFIERS | ||
| 7 | #define SPACE_COUNT 3 | ||
| 8 | |||
| 9 | #define TEMPLATE( \ | ||
| 10 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | ||
| 11 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | ||
| 12 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | ||
| 13 | K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ | ||
| 14 | K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ | ||
| 15 | ) { \ | ||
| 16 | { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \ | ||
| 17 | { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \ | ||
| 18 | { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \ | ||
| 19 | { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \ | ||
| 20 | { K40, K41, K42, KC_NO, K44, K45, K46, KC_NO, K48, K49, KC_NO, K4B, K4C, KC_NO }\ | ||
| 21 | } | ||
| 22 | |||
| 23 | #endif | ||
diff --git a/keyboards/bananasplit/keymaps/talljoe/keymap.c b/keyboards/bananasplit/keymaps/talljoe/keymap.c new file mode 100644 index 000000000..7812add81 --- /dev/null +++ b/keyboards/bananasplit/keymaps/talljoe/keymap.c | |||
| @@ -0,0 +1 @@ | |||
| // This space intentionally left blank | |||
diff --git a/keyboards/frosty_flake/frosty_flake.h b/keyboards/frosty_flake/frosty_flake.h index 32307ece5..ac293df0f 100644 --- a/keyboards/frosty_flake/frosty_flake.h +++ b/keyboards/frosty_flake/frosty_flake.h | |||
| @@ -87,4 +87,6 @@ | |||
| 87 | /* 7 */ { KA7, KB7, KC7, KD7, KE7, KF7, KG7, KH7, KI7, KJ7, KC_NO, KC_NO, KC_NO, KC_NO, KO7, KC_NO, KQ7, KR7 } \ | 87 | /* 7 */ { KA7, KB7, KC7, KD7, KE7, KF7, KG7, KH7, KI7, KJ7, KC_NO, KC_NO, KC_NO, KC_NO, KO7, KC_NO, KQ7, KR7 } \ |
| 88 | } | 88 | } |
| 89 | 89 | ||
| 90 | #define LAYOUT_tkl_ansi KEYMAP_TKL | ||
| 91 | |||
| 90 | #endif | 92 | #endif |
diff --git a/keyboards/frosty_flake/rules.mk b/keyboards/frosty_flake/rules.mk index f9c43d3ed..94619e03d 100644 --- a/keyboards/frosty_flake/rules.mk +++ b/keyboards/frosty_flake/rules.mk | |||
| @@ -68,4 +68,6 @@ AUDIO_ENABLE = no # Audio output on port C6 | |||
| 68 | FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches | 68 | FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches |
| 69 | 69 | ||
| 70 | CUSTOM_MATRIX = yes | 70 | CUSTOM_MATRIX = yes |
| 71 | SRC += matrix.c \ No newline at end of file | 71 | SRC += matrix.c |
| 72 | |||
| 73 | LAYOUTS = tkl_ansi | ||
diff --git a/layouts/community/60_ansi/talljoe-ansi/config.h b/layouts/community/60_ansi/talljoe-ansi/config.h index 9e27b1b0a..1990b0ee3 100644 --- a/layouts/community/60_ansi/talljoe-ansi/config.h +++ b/layouts/community/60_ansi/talljoe-ansi/config.h | |||
| @@ -3,9 +3,10 @@ | |||
| 3 | 3 | ||
| 4 | #include QMK_KEYBOARD_CONFIG_H | 4 | #include QMK_KEYBOARD_CONFIG_H |
| 5 | 5 | ||
| 6 | #define PREVENT_STUCK_MODIFIERS | ||
| 6 | #define ENABLE_GAME_LAYER | 7 | #define ENABLE_GAME_LAYER |
| 7 | 8 | ||
| 8 | #define LAYOUT( \ | 9 | #define TEMPLATE( \ |
| 9 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | 10 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ |
| 10 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | 11 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ |
| 11 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | 12 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ |
diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h b/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h index 0eacbde33..81ab5cf89 100644 --- a/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h | |||
| @@ -3,9 +3,10 @@ | |||
| 3 | 3 | ||
| 4 | #include QMK_KEYBOARD_CONFIG_H | 4 | #include QMK_KEYBOARD_CONFIG_H |
| 5 | 5 | ||
| 6 | #define PREVENT_STUCK_MODIFIERS | ||
| 6 | #define ENABLE_GAME_LAYER | 7 | #define ENABLE_GAME_LAYER |
| 7 | 8 | ||
| 8 | #define LAYOUT( \ | 9 | #define TEMPLATE( \ |
| 9 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | 10 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ |
| 10 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | 11 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ |
| 11 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | 12 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ |
diff --git a/layouts/community/60_hhkb/talljoe-hhkb/config.h b/layouts/community/60_hhkb/talljoe-hhkb/config.h new file mode 100644 index 000000000..938ea6cd6 --- /dev/null +++ b/layouts/community/60_hhkb/talljoe-hhkb/config.h | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_CONFIG_H | ||
| 5 | |||
| 6 | #define PREVENT_STUCK_MODIFIERS | ||
| 7 | #define ENABLE_GAME_LAYER | ||
| 8 | |||
| 9 | #define TEMPLATE( \ | ||
| 10 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | ||
| 11 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | ||
| 12 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | ||
| 13 | K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ | ||
| 14 | K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ | ||
| 15 | ) LAYOUT_60_hhkb( \ | ||
| 16 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | ||
| 17 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | ||
| 18 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | ||
| 19 | K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ | ||
| 20 | K41, K42, K45, K48, K4C \ | ||
| 21 | ) | ||
| 22 | |||
| 23 | #endif //CONFIG_USER_H | ||
diff --git a/layouts/community/60_hhkb/talljoe-hhkb/keymap.c b/layouts/community/60_hhkb/talljoe-hhkb/keymap.c new file mode 100644 index 000000000..7812add81 --- /dev/null +++ b/layouts/community/60_hhkb/talljoe-hhkb/keymap.c | |||
| @@ -0,0 +1 @@ | |||
| // This space intentionally left blank | |||
diff --git a/layouts/community/60_hhkb/talljoe-hhkb/rules.mk b/layouts/community/60_hhkb/talljoe-hhkb/rules.mk new file mode 100644 index 000000000..92007fe8a --- /dev/null +++ b/layouts/community/60_hhkb/talljoe-hhkb/rules.mk | |||
| @@ -0,0 +1 @@ | |||
| USER_NAME := talljoe | |||
diff --git a/layouts/community/ortho_4x12/talljoe/config.h b/layouts/community/ortho_4x12/talljoe/config.h index c2a9567bb..61229e7f6 100644 --- a/layouts/community/ortho_4x12/talljoe/config.h +++ b/layouts/community/ortho_4x12/talljoe/config.h | |||
| @@ -4,7 +4,7 @@ | |||
| 4 | #include QMK_KEYBOARD_CONFIG_H | 4 | #include QMK_KEYBOARD_CONFIG_H |
| 5 | #define SPACE_COUNT 3 | 5 | #define SPACE_COUNT 3 |
| 6 | 6 | ||
| 7 | #define LAYOUT( \ | 7 | #define TEMPLATE( \ |
| 8 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ | 8 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ |
| 9 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | 9 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ |
| 10 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ | 10 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ |
diff --git a/layouts/community/tkl_ansi/talljoe-tkl/config.h b/layouts/community/tkl_ansi/talljoe-tkl/config.h new file mode 100644 index 000000000..90db04e7b --- /dev/null +++ b/layouts/community/tkl_ansi/talljoe-tkl/config.h | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_CONFIG_H | ||
| 5 | |||
| 6 | #define PREVENT_STUCK_MODIFIERS | ||
| 7 | #define ENABLE_GAME_LAYER | ||
| 8 | |||
| 9 | #define TEMPLATE_TKL(\ | ||
| 10 | KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \ | ||
| 11 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \ | ||
| 12 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, KK4, KO7, KQ7, \ | ||
| 13 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 14 | KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KO6, \ | ||
| 15 | KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, KO0, KK0, KL0 \ | ||
| 16 | ) LAYOUT_tkl_ansi( \ | ||
| 17 | KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \ | ||
| 18 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \ | ||
| 19 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, KK4, KO7, KQ7, \ | ||
| 20 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 21 | KN2,KC_NO,KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KO6, \ | ||
| 22 | KA4, KP2, KC6, KK6, KC0, KM3, KD0, KA1, KO0, KK0, KL0 \ | ||
| 23 | ) | ||
| 24 | |||
| 25 | #endif //CONFIG_USER_H | ||
diff --git a/layouts/community/tkl_ansi/talljoe-tkl/keymap.c b/layouts/community/tkl_ansi/talljoe-tkl/keymap.c new file mode 100644 index 000000000..b5dc54492 --- /dev/null +++ b/layouts/community/tkl_ansi/talljoe-tkl/keymap.c | |||
| @@ -0,0 +1,89 @@ | |||
| 1 | #ifdef KEYBOARD_zeal60 | ||
| 2 | #include "config.h" | ||
| 3 | #include "zeal60.h" | ||
| 4 | #include "zeal_backlight.h" | ||
| 5 | #include "action_layer.h" | ||
| 6 | #include "solarized.h" | ||
| 7 | #include "talljoe.h" | ||
| 8 | |||
| 9 | // from zeal_backlight.c | ||
| 10 | // we want to be able to set indicators for the spacebar stabs | ||
| 11 | // but they are not represented by a row/index. | ||
| 12 | extern zeal_backlight_config g_config; | ||
| 13 | void map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led ); | ||
| 14 | |||
| 15 | void set_backlight_defaults(void) { | ||
| 16 | uint8_t space; | ||
| 17 | uint8_t caps_lock; | ||
| 18 | map_row_column_to_led(3, 12, &caps_lock); | ||
| 19 | map_row_column_to_led(4, 7, &space); | ||
| 20 | zeal_backlight_config default_values = { | ||
| 21 | .use_split_backspace = USE_SPLIT_BACKSPACE, | ||
| 22 | .use_split_left_shift = USE_SPLIT_LEFT_SHIFT, | ||
| 23 | .use_split_right_shift = USE_SPLIT_RIGHT_SHIFT, | ||
| 24 | .use_7u_spacebar = USE_7U_SPACEBAR, | ||
| 25 | .use_iso_enter = USE_ISO_ENTER, | ||
| 26 | .disable_when_usb_suspended = 1, | ||
| 27 | .disable_after_timeout = 0, | ||
| 28 | .brightness = 255, | ||
| 29 | .effect = 10, | ||
| 30 | .color_1 = solarized.base2, | ||
| 31 | .color_2 = solarized.base02, | ||
| 32 | .caps_lock_indicator = { .index = caps_lock, .color = solarized.red }, | ||
| 33 | .layer_1_indicator = { .index = space, .color = solarized.blue }, | ||
| 34 | .layer_2_indicator = { .index = space, .color = solarized.yellow }, | ||
| 35 | .layer_3_indicator = { .index = 254, .color = solarized.red }, | ||
| 36 | .alphas_mods = { | ||
| 37 | BACKLIGHT_ALPHAS_MODS_ROW_0, | ||
| 38 | BACKLIGHT_ALPHAS_MODS_ROW_1, | ||
| 39 | BACKLIGHT_ALPHAS_MODS_ROW_2, | ||
| 40 | BACKLIGHT_ALPHAS_MODS_ROW_3, | ||
| 41 | BACKLIGHT_ALPHAS_MODS_ROW_4 } | ||
| 42 | }; | ||
| 43 | memcpy(&g_config, &default_values, sizeof(zeal_backlight_config)); | ||
| 44 | backlight_config_save(); | ||
| 45 | |||
| 46 | solarized_t* S = &solarized; | ||
| 47 | HSV alphas = S->base2; | ||
| 48 | HSV custom_color_map[MATRIX_ROWS][MATRIX_COLS] = CM( | ||
| 49 | S->red, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->red, | ||
| 50 | S->orange, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->orange, | ||
| 51 | S->green, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->green, | ||
| 52 | S->blue, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->blue, S->blue, | ||
| 53 | S->violet, S->magenta, S->yellow, alphas, S->yellow, S->magenta, S->violet, S->green | ||
| 54 | ); | ||
| 55 | for (uint8_t row = 0; row < MATRIX_ROWS; ++row) { | ||
| 56 | for (uint8_t col = 0; col < MATRIX_COLS; ++col) { | ||
| 57 | backlight_set_key_color(row, col, custom_color_map[row][col]); | ||
| 58 | } | ||
| 59 | } | ||
| 60 | } | ||
| 61 | |||
| 62 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | ||
| 63 | static uint8_t last_effect; | ||
| 64 | switch (keycode) { | ||
| 65 | case DFAULTS: | ||
| 66 | if (IS_PRESSED(record->event)) set_backlight_defaults(); | ||
| 67 | return false; | ||
| 68 | case BL_TOGG: | ||
| 69 | if (IS_PRESSED(record->event)) { | ||
| 70 | if (g_config.effect) { | ||
| 71 | last_effect = g_config.effect; | ||
| 72 | g_config.effect = 0; | ||
| 73 | } else { | ||
| 74 | g_config.effect = last_effect; | ||
| 75 | } | ||
| 76 | } | ||
| 77 | return false; | ||
| 78 | case EFFECT...EFFECT_END: | ||
| 79 | if (IS_PRESSED(record->event)) { | ||
| 80 | uint8_t effect = keycode - EFFECT; | ||
| 81 | g_config.effect = effect; | ||
| 82 | backlight_config_save(); | ||
| 83 | } | ||
| 84 | return false; | ||
| 85 | } | ||
| 86 | |||
| 87 | return true; | ||
| 88 | } | ||
| 89 | #endif | ||
diff --git a/layouts/community/tkl_ansi/talljoe-tkl/rules.mk b/layouts/community/tkl_ansi/talljoe-tkl/rules.mk new file mode 100644 index 000000000..92007fe8a --- /dev/null +++ b/layouts/community/tkl_ansi/talljoe-tkl/rules.mk | |||
| @@ -0,0 +1 @@ | |||
| USER_NAME := talljoe | |||
diff --git a/layouts/default/60_hhkb/default_60_hhkb/keymap.c b/layouts/default/60_hhkb/default_60_hhkb/keymap.c new file mode 100644 index 000000000..60d628f12 --- /dev/null +++ b/layouts/default/60_hhkb/default_60_hhkb/keymap.c | |||
| @@ -0,0 +1,65 @@ | |||
| 1 | #include QMK_KEYBOARD_H | ||
| 2 | |||
| 3 | #define BASE 0 | ||
| 4 | #define HHKB 1 | ||
| 5 | |||
| 6 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 7 | |||
| 8 | /* BASE Level: Default Layer | ||
| 9 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 10 | | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` | | ||
| 11 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 12 | | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Backs | | | ||
| 13 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 14 | | Cont | A | S | D | F | G | H | J | K | L | ; | ' | Ent | | | | ||
| 15 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 16 | | Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Fn0 | | | | ||
| 17 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 18 | |||
| 19 | |------+------+-----------------------+------+------| | ||
| 20 | | LAlt | LGUI | ******* Space ******* | RGUI | RAlt | | ||
| 21 | |------+------+-----------------------+------+------| | ||
| 22 | */ | ||
| 23 | |||
| 24 | [BASE] = LAYOUT_60_hhkb( // default layer | ||
| 25 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \ | ||
| 26 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \ | ||
| 27 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ | ||
| 28 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(HHKB), \ | ||
| 29 | KC_LALT, KC_LGUI, /* */ KC_SPC, KC_RGUI, KC_RALT), | ||
| 30 | |||
| 31 | |||
| 32 | |||
| 33 | /* Layer HHKB: HHKB mode (HHKB Fn) | ||
| 34 | |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| | ||
| 35 | | Pwr | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del | | ||
| 36 | |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| | ||
| 37 | | Caps | | | | | | | | Psc | Slk | Pus | Up | | Backs | | | ||
| 38 | |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| | ||
| 39 | | | VoD | VoU | Mut | | | * | / | Hom | PgU | Lef | Rig | Enter | | | | ||
| 40 | |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| | ||
| 41 | | | | | | | | + | - | End | PgD | Dow | | | | | | ||
| 42 | |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| | ||
| 43 | |||
| 44 | |------+------+----------------------+------+------+ | ||
| 45 | | **** | **** | ******************** | **** | **** | | ||
| 46 | |------+------+----------------------+------+------+ | ||
| 47 | |||
| 48 | */ | ||
| 49 | |||
| 50 | [HHKB] = LAYOUT_60_hhkb( | ||
| 51 | KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, \ | ||
| 52 | KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_BSPC, \ | ||
| 53 | KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, \ | ||
| 54 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, \ | ||
| 55 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)}; | ||
| 56 | |||
| 57 | // Runs just one time when the keyboard initializes. | ||
| 58 | void matrix_init_user(void) { | ||
| 59 | |||
| 60 | }; | ||
| 61 | |||
| 62 | // Runs constantly in the background, in a loop. | ||
| 63 | void matrix_scan_user(void) { | ||
| 64 | |||
| 65 | }; | ||
diff --git a/layouts/default/60_hhkb/layout.json b/layouts/default/60_hhkb/layout.json new file mode 100644 index 000000000..9dce76a2e --- /dev/null +++ b/layouts/default/60_hhkb/layout.json | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | ["Esc","!\n1","@\n2","#\n3","$\n4","%\n5","^\n6","&\n7","*\n8","(\n9",")\n0","_\n-","+\n=","|\n\\","~\n`"], | ||
| 2 | [{w:1.5},"Tab","Q","W","E","R","T","Y","U","I","O","P","{\n[","}\n]",{w:1.5},"Delete"], | ||
| 3 | [{w:1.75},"Control","A","S","D","F","G","H","J","K","L",":\n;","\"\n'",{w:2.25},"Enter"], | ||
| 4 | [{w:2.25},"Shift","Z","X","C","V","B","N","M","<\n,",">\n.","?\n/",{w:1.75},"Shift","Fn"], | ||
| 5 | [{x:1.5},"Os",{w:1.5},"Alt",{a:7,w:7},"",{a:4,w:1.5},"Alt","Os"] | ||
diff --git a/layouts/default/60_hhkb/readme.md b/layouts/default/60_hhkb/readme.md new file mode 100644 index 000000000..f02d13e4d --- /dev/null +++ b/layouts/default/60_hhkb/readme.md | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | # 60_hhkb | ||
| 2 | |||
| 3 | LAYOUT_60_hhkb \ No newline at end of file | ||
diff --git a/layouts/default/tkl_ansi/default_tkl_ansi/keymap.c b/layouts/default/tkl_ansi/default_tkl_ansi/keymap.c new file mode 100644 index 000000000..e57f776bb --- /dev/null +++ b/layouts/default/tkl_ansi/default_tkl_ansi/keymap.c | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | #include QMK_KEYBOARD_H | ||
| 2 | |||
| 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 4 | [0] = LAYOUT_tkl_ansi(\ | ||
| 5 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR,KC_SLCK,KC_PAUS, \ | ||
| 6 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,KC_MINS, KC_EQL,KC_BSPC, KC_INS ,KC_HOME,KC_PGUP, \ | ||
| 7 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,KC_LBRC,KC_RBRC,KC_BSLS, KC_DEL ,KC_END ,KC_PGDN, \ | ||
| 8 | KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L,KC_SCLN,KC_QUOT, KC_ENT, \ | ||
| 9 | KC_LSFT,KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M,KC_COMM, KC_DOT,KC_SLSH, KC_RSFT, KC_UP, \ | ||
| 10 | KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ | ||
| 11 | }; | ||
diff --git a/layouts/default/tkl_ansi/layout.json b/layouts/default/tkl_ansi/layout.json new file mode 100644 index 000000000..54492b98f --- /dev/null +++ b/layouts/default/tkl_ansi/layout.json | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | ["Esc",{x:1},"F1","F2","F3","F4",{x:0.5},"F5","F6","F7","F8",{x:0.5},"F9","F10","F11","F12",{x:0.25},"PrtSc","Scroll Lock","Pause\nBreak"], | ||
| 2 | [{y:0.5},"~\n`","!\n1","@\n2","#\n3","$\n4","%\n5","^\n6","&\n7","*\n8","(\n9",")\n0","_\n-","+\n=",{w:2},"Backspace",{x:0.25},"Insert","Home","PgUp"], | ||
| 3 | [{w:1.5},"Tab","Q","W","E","R","T","Y","U","I","O","P","{\n[","}\n]",{w:1.5},"|\n\\",{x:0.25},"Delete","End","PgDn"], | ||
| 4 | [{w:1.75},"Caps Lock","A","S","D","F","G","H","J","K","L",":\n;","\"\n'",{w:2.25},"Enter"], | ||
| 5 | [{w:2.25},"Shift","Z","X","C","V","B","N","M","<\n,",">\n.","?\n/",{w:2.75},"Shift",{x:1.25},"↑"], | ||
| 6 | [{w:1.25},"Ctrl",{w:1.25},"Win",{w:1.25},"Alt",{a:7,w:6.25},"",{a:4,w:1.25},"Alt",{w:1.25},"Win",{w:1.25},"Menu",{w:1.25},"Ctrl",{x:0.25},"←","↓","→"] | ||
diff --git a/layouts/default/tkl_ansi/readme.md b/layouts/default/tkl_ansi/readme.md new file mode 100644 index 000000000..94d5df122 --- /dev/null +++ b/layouts/default/tkl_ansi/readme.md | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | # tkl_ansi | ||
| 2 | |||
| 3 | LAYOUT_tkl_ansi \ No newline at end of file | ||
diff --git a/users/talljoe/rules.mk b/users/talljoe/rules.mk index fa2314960..0f1f6f26a 100644 --- a/users/talljoe/rules.mk +++ b/users/talljoe/rules.mk | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | SRC += talljoe.c | 1 | SRC += talljoe.c tapdance.c |
| 2 | 2 | ||
| 3 | EXTRAFLAGS+=-flto | 3 | EXTRAFLAGS+=-flto |
| 4 | |||
| 5 | TAP_DANCE_ENABLE=yes | ||
| 6 | CONSOLE_ENABLE=no | ||
| 7 | COMMAND_ENABLE=no | ||
diff --git a/users/talljoe/talljoe.c b/users/talljoe/talljoe.c index e49a3060d..e9c69b016 100644 --- a/users/talljoe/talljoe.c +++ b/users/talljoe/talljoe.c | |||
| @@ -3,66 +3,67 @@ | |||
| 3 | #include "talljoe.h" | 3 | #include "talljoe.h" |
| 4 | 4 | ||
| 5 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 5 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 6 | [_BASE] = LAYOUT( | 6 | [_BASE] = TEMPLATE_TKL( |
| 7 | KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_ESC, | 7 | KC_ESC, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_PSCR, KC_SLCK, MO_ADJ , |
| 8 | KC_TAB , KC_Q, KC_W, KC_E, KC_R, KC_T , KC_Y, KC_U, KC_I, KC_O, KC_P , KC_LBRC, KC_RBRC, KC_BSPC, | 8 | KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_INS , KC_HOME, KC_PGUP, |
| 9 | US_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G , KC_H, KC_J, KC_K, KC_L, KC_SCLN, US_QUOT, US_ENT , | 9 | KC_TAB , KC_Q, KC_W, KC_E, KC_R, KC_T , KC_Y, KC_U, KC_I, KC_O, KC_P , KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL , KC_END , KC_PGDN, |
| 10 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO_ADJ , | 10 | US_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G , KC_H, KC_J, KC_K, KC_L, US_SCLN, US_QUOT, US_ENT , |
| 11 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC2, KC_SPC1, KC_SPC3, KC_RALT, KC_APP , KC_RCTL, KC_PTT ), | 11 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP , |
| 12 | [_WORKMAN] = LAYOUT( | 12 | KC_LCTL, KC_LGUI, KC_LALT, KC_SPC2, KC_SPC1, KC_SPC3, KC_RALT, KC_RGUI, KC_RCTL, KC_PTT , KC_LEFT, KC_DOWN, KC_RGHT), |
| 13 | [_WORKMAN] = TEMPLATE( | ||
| 13 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 14 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 14 | _______, KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , KC_SCLN, _______, _______, _______, | 15 | _______, KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , US_SCLN, _______, _______, _______, |
| 15 | _______, KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , _______, _______, | 16 | _______, KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , _______, _______, |
| 16 | _______, KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM, KC_DOT , KC_SLSH, _______, _______, | 17 | _______, KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM, KC_DOT , KC_SLSH, _______, _______, |
| 17 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), | 18 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), |
| 18 | [_NORMAN] = LAYOUT( | 19 | [_NORMAN] = TEMPLATE( |
| 19 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 20 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 20 | _______, KC_Q , KC_W , KC_D , KC_F , KC_K , KC_J , KC_U , KC_R , KC_L , KC_SCLN, _______, _______, _______, | 21 | _______, KC_Q , KC_W , KC_D , KC_F , KC_K , KC_J , KC_U , KC_R , KC_L , US_SCLN, _______, _______, _______, |
| 21 | _______, KC_A , KC_S , KC_E , KC_T , KC_G , KC_Y , KC_N , KC_I , KC_O , KC_H , _______, _______, | 22 | _______, KC_A , KC_S , KC_E , KC_T , KC_G , KC_Y , KC_N , KC_I , KC_O , KC_H , _______, _______, |
| 22 | _______, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_P , KC_M , KC_COMM, KC_DOT , KC_SLSH, _______, _______, | 23 | _______, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_P , KC_M , KC_COMM, KC_DOT , KC_SLSH, _______, _______, |
| 23 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), | 24 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), |
| 24 | [_DVORAK] = LAYOUT( | 25 | [_DVORAK] = TEMPLATE( |
| 25 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, | 26 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, |
| 26 | _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y , KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL , _______, | 27 | _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y , KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL , _______, |
| 27 | _______, KC_A, KC_O, KC_E, KC_U, KC_I , KC_D, KC_H, KC_T, KC_N, KC_S, US_MINS, _______, | 28 | _______, KC_A, KC_O, KC_E, KC_U, KC_I , KC_D, KC_H, KC_T, KC_N, KC_S, US_MINS, _______, |
| 28 | _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X , KC_B, KC_M, KC_W, KC_V, KC_Z, _______, _______, | 29 | _______, US_SCLN, KC_Q, KC_J, KC_K, KC_X , KC_B, KC_M, KC_W, KC_V, KC_Z, _______, _______, |
| 29 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), | 30 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), |
| 30 | [_COLMAK] = LAYOUT( | 31 | [_COLMAK] = TEMPLATE( |
| 31 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 32 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 32 | _______, KC_Q, KC_W, KC_F, KC_P, KC_G , KC_J, KC_L, KC_U, KC_Y, KC_SCLN, _______, _______, _______, | 33 | _______, KC_Q, KC_W, KC_F, KC_P, KC_G , KC_J, KC_L, KC_U, KC_Y, US_SCLN, _______, _______, _______, |
| 33 | _______, KC_A, KC_R, KC_S, KC_T, KC_D , KC_H, KC_N, KC_E, KC_I, KC_O , _______, _______, | 34 | _______, KC_A, KC_R, KC_S, KC_T, KC_D , KC_H, KC_N, KC_E, KC_I, KC_O , _______, _______, |
| 34 | _______, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, _______, | 35 | _______, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, _______, |
| 35 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), | 36 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), |
| 36 | 37 | ||
| 37 | #ifdef ENABLE_GAME_LAYER | 38 | #ifdef ENABLE_GAME_LAYER |
| 38 | [_GAME] = LAYOUT( | 39 | [_GAME] = TEMPLATE( |
| 39 | KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV, | 40 | KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV, |
| 40 | KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, | 41 | KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, |
| 41 | MO_NAV , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , | 42 | MO_NAV , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , |
| 42 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO_ADJ , | 43 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO_ADJ , |
| 43 | KC_LCTL, KC_PTT , KC_PGDN, KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_APP , KC_RCTL, KC_PTT ), | 44 | KC_LCTL, KC_PTT , KC_PGDN, KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_APP , KC_RCTL, KC_PTT ), |
| 44 | #endif | 45 | #endif |
| 45 | [_NAV] = LAYOUT( | 46 | [_NAV] = TEMPLATE( |
| 46 | KC_GRV , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 47 | KC_GRV , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 47 | KC_TAB , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_VOLU, KC_INS , KC_PGUP, KC_UP , KC_PGDN, KC_BTN1, KC_BTN2, KC_BTN3, KC_DEL , | 48 | KC_TAB , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_VOLU, KC_INS , KC_PGUP, KC_UP , KC_PGDN, KC_BTN1, KC_BTN2, KC_BTN3, KC_DEL , |
| 48 | US_CAPS, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_MUTE, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END , KC_RCTL, TG_ADJ , | 49 | US_CAPS, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_MUTE, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END , KC_RCTL, TG_ADJ , |
| 49 | KC_LSFT, KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_VOLD, KC_END , KC_PGDN, KC_WBAK, KC_WFWD, KC_WREF, KC_RSFT, XXXXXXX, | 50 | KC_LSFT, KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_VOLD, KC_END , KC_PGDN, KC_WBAK, KC_WFWD, KC_WREF, KC_RSFT, KC_APP , |
| 50 | KC_LCTL, KC_LGUI, KC_LALT, NV_SPC2, NV_SPC1, NV_SPC3, KC_RALT, KC_RGUI, KC_RCTL, KC_PTT ), | 51 | KC_LCTL, KC_LGUI, KC_LALT, NV_SPC2, NV_SPC1, NV_SPC3, KC_RALT, KC_RGUI, KC_RCTL, KC_PTT ), |
| 51 | [_NUM] = LAYOUT( | 52 | [_NUM] = TEMPLATE( |
| 52 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 53 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 53 | KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, XXXXXXX, KC_DEL , | 54 | KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, XXXXXXX, KC_DEL , |
| 54 | US_CAPS, KC_LCBR, KC_RCBR, KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_PPLS, KC_PENT, XXXXXXX, | 55 | US_CAPS, KC_LCBR, KC_RCBR, KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_PPLS, KC_PENT, XXXXXXX, |
| 55 | KC_LSFT, KC_EQL, KC_PLUS, KC_BSLS, KC_PIPE, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_PAST, KC_PSLS, XXXXXXX, | 56 | KC_LSFT, KC_EQL, KC_PLUS, KC_BSLS, KC_PIPE, KC_SCLN, XXXXXXX, KC_1, KC_2, KC_3, KC_PAST, KC_PSLS, XXXXXXX, |
| 56 | KC_LCTL, KC_LGUI, KC_LALT, NM_SPC2, NM_SPC1, NM_SPC3, KC_PDOT, KC_PCMM, KC_RCTL, KC_PTT ), | 57 | KC_LCTL, KC_LGUI, KC_LALT, NM_SPC2, NM_SPC1, NM_SPC3, KC_PDOT, KC_PCMM, KC_RCTL, KC_PTT ), |
| 57 | // Adjust layer is on the split-shift key; or NAV+Enter (for non-split keyboards) | 58 | // Adjust layer is on the split-shift key; or NAV+Enter (for non-split keyboards) |
| 58 | [_ADJUST] = LAYOUT( | 59 | [_ADJUST] = TEMPLATE( |
| 59 | MO_RST , FX(1) , FX(2) , FX(3) , FX(4) , FX(5) , FX(6) , FX(7) , FX(8) , FX(9) , FX(10) , BR_DEC , BR_INC , XXXXXXX, MO_RST , | 60 | MO_RST , FX(1) , FX(2) , FX(3) , FX(4) , FX(5) , FX(6) , FX(7) , FX(8) , FX(9) , FX(10) , BR_DEC , BR_INC , XXXXXXX, MO_RST , |
| 60 | XXXXXXX, H1_INC , S1_INC , H2_INC , S2_INC , EF_INC , RGB_HUI, RGB_SAI, RGB_MOD, RGB_M_P, DFAULTS, RGB_VAD, RGB_VAI, KC_DEL , | 61 | XXXXXXX, H1_INC , S1_INC , H2_INC , S2_INC , EF_INC , RGB_HUI, RGB_SAI, RGB_MOD, RGB_M_P, DFAULTS, RGB_VAD, RGB_VAI, KC_DEL , |
| 61 | XXXXXXX, H1_DEC , S1_DEC , H2_DEC , S2_DEC , EF_DEC , RGB_HUD, RGB_SAD, RGB_RMOD,RGB_M_K, RGB_M_B, RGB_M_G, TG_ADJ , | 62 | XXXXXXX, H1_DEC , S1_DEC , H2_DEC , S2_DEC , EF_DEC , RGB_HUD, RGB_SAD, RGB_RMOD,RGB_M_K, RGB_M_B, RGB_M_G, TG_ADJ , |
| 62 | TG_NKRO, LY_QWER, LY_WORK, LY_NRMN, LY_DVRK, LY_CLMK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MAKE, KC_CAPS, XXXXXXX, | 63 | TG_NKRO, LY_QWER, LY_WORK, LY_NRMN, LY_DVRK, LY_CLMK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MAKE, KC_CAPS, XXXXXXX, |
| 63 | MO_RST , AG_NORM, AG_SWAP, XXXXXXX, BL_TOGG, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, TG_GAME), | 64 | MO_RST , AG_NORM, AG_SWAP, XXXXXXX, BL_STEP, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, TG_GAME), |
| 64 | // To Reset hit FN + ` + Esc | 65 | // To Reset hit FN + ` + Esc |
| 65 | [_RESET] = LAYOUT( | 66 | [_RESET] = TEMPLATE( |
| 66 | RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , | 67 | RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , |
| 67 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 68 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 68 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 69 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| @@ -98,6 +99,27 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | |||
| 98 | } | 99 | } |
| 99 | 100 | ||
| 100 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 101 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 102 | |||
| 103 | #ifdef RGBLIGHT_ENABLE | ||
| 104 | static uint32_t savedRgbMode; | ||
| 105 | static uint16_t savedHue; | ||
| 106 | static uint8_t savedSat; | ||
| 107 | static uint8_t savedVal; | ||
| 108 | |||
| 109 | if (keycode == KC_ESC) { | ||
| 110 | if (record->event.pressed) { | ||
| 111 | savedRgbMode = rgblight_get_mode(); | ||
| 112 | savedHue = rgblight_get_hue(); | ||
| 113 | savedSat = rgblight_get_sat(); | ||
| 114 | savedVal = rgblight_get_val(); | ||
| 115 | rgblight_mode(1); | ||
| 116 | rgblight_setrgb(255, 0, 0); | ||
| 117 | } else { | ||
| 118 | rgblight_mode(savedRgbMode); | ||
| 119 | rgblight_sethsv(savedHue, savedSat, savedVal); | ||
| 120 | } | ||
| 121 | } | ||
| 122 | #endif | ||
| 101 | // If console is enabled, it will print the matrix position and status of each key pressed | 123 | // If console is enabled, it will print the matrix position and status of each key pressed |
| 102 | #ifdef CONSOLE_ENABLE | 124 | #ifdef CONSOLE_ENABLE |
| 103 | xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); | 125 | xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); |
diff --git a/users/talljoe/talljoe.h b/users/talljoe/talljoe.h index 17e54af69..7c34cd41f 100644 --- a/users/talljoe/talljoe.h +++ b/users/talljoe/talljoe.h | |||
| @@ -28,6 +28,10 @@ enum layers { | |||
| 28 | _RESET = RESET_LAYER, | 28 | _RESET = RESET_LAYER, |
| 29 | }; | 29 | }; |
| 30 | 30 | ||
| 31 | enum tap_dancers { | ||
| 32 | TD_SEMICOLON | ||
| 33 | }; | ||
| 34 | |||
| 31 | #define _______ KC_TRNS | 35 | #define _______ KC_TRNS |
| 32 | #define XXXXXXX KC_NO | 36 | #define XXXXXXX KC_NO |
| 33 | 37 | ||
| @@ -53,6 +57,7 @@ enum layers { | |||
| 53 | #define US_CAPS CTL_T(KC_ESC) | 57 | #define US_CAPS CTL_T(KC_ESC) |
| 54 | #define US_QUOT RCTL_T(KC_QUOT) | 58 | #define US_QUOT RCTL_T(KC_QUOT) |
| 55 | #define US_MINS RCTL_T(KC_QUOT) | 59 | #define US_MINS RCTL_T(KC_QUOT) |
| 60 | #define US_SCLN TD(TD_SEMICOLON) | ||
| 56 | #define US_ENT LT(_NUM, KC_ENT) | 61 | #define US_ENT LT(_NUM, KC_ENT) |
| 57 | 62 | ||
| 58 | #ifndef SPACE_COUNT | 63 | #ifndef SPACE_COUNT |
| @@ -105,4 +110,37 @@ enum layers { | |||
| 105 | #define FN_MO2 KC_NO | 110 | #define FN_MO2 KC_NO |
| 106 | #endif | 111 | #endif |
| 107 | 112 | ||
| 113 | #ifdef TEMPLATE_TKL | ||
| 114 | #define _X_ KC_NO | ||
| 115 | #define TEMPLATE( \ | ||
| 116 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KJ6, \ | ||
| 117 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, \ | ||
| 118 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 119 | KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KA5, \ | ||
| 120 | KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1 \ | ||
| 121 | ) TEMPLATE_TKL ( \ | ||
| 122 | KJ6, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, _X_, KA5, \ | ||
| 123 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, _X_, _X_, _X_, \ | ||
| 124 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, _X_, _X_, _X_, \ | ||
| 125 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 126 | KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, _X_, \ | ||
| 127 | KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, _X_, _X_, _X_ \ | ||
| 128 | ) | ||
| 129 | #else | ||
| 130 | #define TEMPLATE_TKL( \ | ||
| 131 | KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \ | ||
| 132 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \ | ||
| 133 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, KK4, KO7, KQ7, \ | ||
| 134 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 135 | KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KO6, \ | ||
| 136 | KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, KO0, KK0, KL0 \ | ||
| 137 | ) TEMPLATE( \ | ||
| 138 | KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KJ6, \ | ||
| 139 | KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, \ | ||
| 140 | KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ | ||
| 141 | KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KA5, \ | ||
| 142 | KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1 \ | ||
| 143 | ) | ||
| 144 | #endif | ||
| 145 | |||
| 108 | #endif | 146 | #endif |
diff --git a/users/talljoe/tapdance.c b/users/talljoe/tapdance.c new file mode 100644 index 000000000..3198fc67f --- /dev/null +++ b/users/talljoe/tapdance.c | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | //Tap Dance | ||
| 2 | #include "talljoe.h" | ||
| 3 | |||
| 4 | // Send semin-colon + enter on two taps | ||
| 5 | void tap_dance_semicolon(qk_tap_dance_state_t *state, void *user_data) { | ||
| 6 | switch(state->count) { | ||
| 7 | case 1: | ||
| 8 | register_code(KC_SCLN); | ||
| 9 | unregister_code(KC_SCLN); | ||
| 10 | break; | ||
| 11 | case 2: | ||
| 12 | register_code(KC_SCLN); | ||
| 13 | unregister_code(KC_SCLN); | ||
| 14 | |||
| 15 | uint8_t mods = get_mods(); | ||
| 16 | if (mods) { | ||
| 17 | clear_mods(); | ||
| 18 | } | ||
| 19 | |||
| 20 | register_code(KC_ENT); | ||
| 21 | unregister_code(KC_ENT); | ||
| 22 | |||
| 23 | if (mods) { | ||
| 24 | set_mods(mods); | ||
| 25 | } | ||
| 26 | |||
| 27 | reset_tap_dance(state); | ||
| 28 | break; | ||
| 29 | } | ||
| 30 | } | ||
| 31 | |||
| 32 | qk_tap_dance_action_t tap_dance_actions[] = { | ||
| 33 | [TD_SEMICOLON] = ACTION_TAP_DANCE_FN(tap_dance_semicolon), | ||
| 34 | }; | ||
