From 2a89134d8e939c86c5e9008f6ad77e15bb404c39 Mon Sep 17 00:00:00 2001 From: mechmerlin Date: Fri, 10 Aug 2018 23:56:27 -0700 Subject: add some of my default layouts for the clueboard I got --- layouts/community/66_ansi/layout.json | 5 ++++ layouts/community/66_ansi/mechmerlin/keymap.c | 36 +++++++++++++++++++++++++++ layouts/community/66_ansi/readme.md | 3 +++ 3 files changed, 44 insertions(+) create mode 100644 layouts/community/66_ansi/layout.json create mode 100644 layouts/community/66_ansi/mechmerlin/keymap.c create mode 100644 layouts/community/66_ansi/readme.md (limited to 'layouts') diff --git a/layouts/community/66_ansi/layout.json b/layouts/community/66_ansi/layout.json new file mode 100644 index 0000000000..60a3a47c00 --- /dev/null +++ b/layouts/community/66_ansi/layout.json @@ -0,0 +1,5 @@ +["~\n`","!\n1","@\n2","#\n3","$\n4","%\n5","^\n6","&\n7","*\n8","(\n9",")\n0","_\n-","+\n=",{w:2},"Backspace",{x:0.5},"Page Up"], +[{w:1.5},"Tab","Q","W","E","R","T","Y","U","I","O","P","{\n[","}\n]",{w:1.5},"|\n\\",{x:0.5},"Page Down"], +[{w:1.75},"Caps Lock","A","S","D","F","G","H","J","K","L",":\n;","\"\n'",{w:2.25},"Enter"], +[{w:2.25},"Shift","Z","X","C","V","B","N","M","<\n,",">\n.","?\n/",{w:2.25},"Shift","Up"], +[{w:1.25},"Ctrl",{w:1.25},"Win",{w:1.25},"Alt",{a:7,w:6.25},"",{a:4,w:1.25},"Alt","Fn",{w:1.25},"Ctrl","Left","Down","Right"] diff --git a/layouts/community/66_ansi/mechmerlin/keymap.c b/layouts/community/66_ansi/mechmerlin/keymap.c new file mode 100644 index 0000000000..9baf238c73 --- /dev/null +++ b/layouts/community/66_ansi/mechmerlin/keymap.c @@ -0,0 +1,36 @@ +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +#define _BL 0 +#define _FL 1 +#define _CL 2 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: Base Layer (Default Layer) + */ +[_BL] = LAYOUT_66_ansi( + KC_GESC,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_PGUP, \ + 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_PGDN, \ + 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, \ + 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, \ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, MO(_FL),KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT), + + /* Keymap _FL: Function Layer + */ +[_FL] = LAYOUT_66_ansi( + KC_GRV, 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_DEL, KC_VOLU, \ + _______,_______,_______,_______,_______,_______,_______,_______,_______,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_MUTE, KC_VOLD, \ + KC_CAPS,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ + _______, _______,_______,_______,_______,_______,_______,KC_MUTE,KC_VOLU,KC_VOLD,_______, _______, KC_PGUP, \ + _______,_______,_______, _______, _______,_______,_______,KC_HOME,KC_PGDN,KC_END), + + /* Keymap _CL: Control layer + */ +[_CL] = LAYOUT_66_ansi( + BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, _______, RGB_VAI, \ + RGB_TOG,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, \ + _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ + _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, \ + _______,_______,_______, RGB_MOD, _______,_______,_______,RGB_HUD,RGB_SAD,RGB_HUI), +}; diff --git a/layouts/community/66_ansi/readme.md b/layouts/community/66_ansi/readme.md new file mode 100644 index 0000000000..7dee7387ab --- /dev/null +++ b/layouts/community/66_ansi/readme.md @@ -0,0 +1,3 @@ +# 66_ansi + + LAYOUT_66_ansi -- cgit v1.2.3 From 7ad0f24efa3d15f25a18972b54311f651337e9f7 Mon Sep 17 00:00:00 2001 From: skullY Date: Sat, 11 Aug 2018 13:12:13 -0700 Subject: Move my keymap to the community folder --- keyboards/clueboard/66/keymaps/skully/keymap.c | 53 ------------------------- keyboards/clueboard/66/keymaps/skully/readme.md | 11 ----- keyboards/clueboard/66/keymaps/skully/rules.mk | 2 - layouts/community/66_ansi/skully/keymap.c | 35 ++++++++++++++++ layouts/community/66_ansi/skully/readme.md | 3 ++ 5 files changed, 38 insertions(+), 66 deletions(-) delete mode 100644 keyboards/clueboard/66/keymaps/skully/keymap.c delete mode 100644 keyboards/clueboard/66/keymaps/skully/readme.md delete mode 100644 keyboards/clueboard/66/keymaps/skully/rules.mk create mode 100644 layouts/community/66_ansi/skully/keymap.c create mode 100644 layouts/community/66_ansi/skully/readme.md (limited to 'layouts') diff --git a/keyboards/clueboard/66/keymaps/skully/keymap.c b/keyboards/clueboard/66/keymaps/skully/keymap.c deleted file mode 100644 index 7f34a8cbae..0000000000 --- a/keyboards/clueboard/66/keymaps/skully/keymap.c +++ /dev/null @@ -1,53 +0,0 @@ -#include "66.h" - -enum custom_keycodes { - M_SHRUG = SAFE_RANGE -}; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _BL 0 -#define _FL 1 -#define _CL 2 - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap _BL: Base Layer (Default Layer) - */ -[_BL] = LAYOUT( - KC_GESC, 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_GRV, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, - MO(_FL), KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, - KC_LCTL, KC_LALT, KC_LGUI,KC_MHEN, KC_SPC, KC_SPC, KC_HENK, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - /* Keymap _FL: Function Layer - */ -[_FL] = LAYOUT( - KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_GRV), KC_DEL, BL_STEP, - S(KC_TAB), S(KC_Q), S(KC_W),S(KC_E),S(KC_R),S(KC_T), S(KC_Y), S(KC_U),S(KC_I),S(KC_O), S(KC_P), S(KC_LBRC),S(KC_RBRC),S(KC_BSLS), S(KC_PGDN), - S(KC_LCTL),S(KC_A), MO(_CL),S(KC_D),S(KC_F),S(KC_G), S(KC_H), S(KC_J),S(KC_K),S(KC_L), S(KC_SCLN),S(KC_QUOT),S(KC_NUHS),S(KC_ENT), - MO(_FL), S(KC_NUBS),S(KC_Z),S(KC_X),S(KC_C),S(KC_V), S(KC_B), S(KC_N),S(KC_M),S(KC_COMM),S(KC_DOT), S(KC_SLSH),S(KC_RO), KC_RSFT, KC_PGUP, - KC_LCTL, KC_LALT, KC_LGUI,KC_MHEN, S(KC_SPC),S(KC_SPC), KC_HENK, KC_RGUI, KC_RALT, KC_RCTL, KC_HOME, KC_PGDN, KC_END), - - /* Keymap _CL: Control layer - */ -[_CL] = LAYOUT( - M_SHRUG, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, - _______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, - _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, - MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, - _______, _______, _______,_______, RGB_MOD,RGB_MOD, _______, _______, _______, _______, RGB_HUD,RGB_SAD,RGB_HUI), -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (record->event.pressed) { - switch(keycode) { - case M_SHRUG: - SEND_STRING("/shrug"SS_TAP(X_ENTER)); - return false; break; - } - } - return true; -}; diff --git a/keyboards/clueboard/66/keymaps/skully/readme.md b/keyboards/clueboard/66/keymaps/skully/readme.md deleted file mode 100644 index b9ad1b09a9..0000000000 --- a/keyboards/clueboard/66/keymaps/skully/readme.md +++ /dev/null @@ -1,11 +0,0 @@ -![Clueboard Layout Image](http://i.imgur.com/VaoGn3M.png) - -# skullY's Clueboard Layout - -This layout is what I (@skullydazed) use on my personal Clueboards. I mostly use it for programming, CAD, and general typing. - -I've made the following changes from the default layout: - -* shift_fn on left shift -* Change capslock to control -* Swap Alt and Cmd diff --git a/keyboards/clueboard/66/keymaps/skully/rules.mk b/keyboards/clueboard/66/keymaps/skully/rules.mk deleted file mode 100644 index ef4a726fe7..0000000000 --- a/keyboards/clueboard/66/keymaps/skully/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -RGBLIGHT_ENABLE = no -MOUSEKEY_ENABLE = yes diff --git a/layouts/community/66_ansi/skully/keymap.c b/layouts/community/66_ansi/skully/keymap.c new file mode 100644 index 0000000000..0533886534 --- /dev/null +++ b/layouts/community/66_ansi/skully/keymap.c @@ -0,0 +1,35 @@ +#include QMK_KEYBOARD_H + +// Layer names +#define _BL 0 +#define _FL 1 +#define _CL 2 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: Base Layer (Default Layer) + */ +[_BL] = LAYOUT_66_ansi( + KC_GESC,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_PGUP, + 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_PGDN, + 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, + MO(_FL), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT), + + /* Keymap _FL: Function Layer + */ +[_FL] = LAYOUT_66_ansi( + KC_GRV, 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_DEL, BL_STEP, + S(KC_TAB), S(KC_Q),S(KC_W),S(KC_E),S(KC_R),S(KC_T),S(KC_Y),S(KC_U),S(KC_I),S(KC_O),S(KC_P),S(KC_LBRC),S(KC_RBRC),S(KC_BSLS),S(KC_PGDN), + S(KC_LCTL), S(KC_A),MO(_CL),S(KC_D),S(KC_F),S(KC_G),S(KC_H),S(KC_J),S(KC_K),S(KC_L),S(KC_SCLN),S(KC_QUOT),S(KC_ENT), + MO(_FL), S(KC_Z),S(KC_X),S(KC_C),S(KC_V),S(KC_B),S(KC_N),S(KC_M),S(KC_COMM),S(KC_DOT),S(KC_SLSH),KC_RSFT, KC_PGUP, + KC_LCTL, KC_LALT, KC_LGUI, S(KC_SPC), KC_RGUI, KC_RALT,KC_RCTL, KC_HOME,KC_PGDN,KC_END), + + /* Keymap _CL: Control layer + */ +[_CL] = LAYOUT_66_ansi( + _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,RGB_TOG, RGB_VAI, + _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, + _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, + MO(_FL), _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_SAI, + _______, _______, _______, RGB_MOD, _______, _______,_______, RGB_HUD,RGB_SAD,RGB_HUI), +}; diff --git a/layouts/community/66_ansi/skully/readme.md b/layouts/community/66_ansi/skully/readme.md new file mode 100644 index 0000000000..63793b9ba0 --- /dev/null +++ b/layouts/community/66_ansi/skully/readme.md @@ -0,0 +1,3 @@ +# skullY's Clueboard Layout + +This layout is what I (@skullydazed) use on my personal Clueboards. I mostly use it for programming, CAD, and general typing. -- cgit v1.2.3 From 1cdef7cd2f4c2b6ad90c80215bf42fb3e66f0cee Mon Sep 17 00:00:00 2001 From: skullydazed Date: Sat, 11 Aug 2018 14:28:01 -0700 Subject: Keymap: Add fauxclicky support to my keymap (#3625) --- layouts/community/66_ansi/skully/config.h | 12 ++++++++++++ layouts/community/66_ansi/skully/keymap.c | 2 +- layouts/community/66_ansi/skully/readme.md | 2 ++ 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 layouts/community/66_ansi/skully/config.h (limited to 'layouts') diff --git a/layouts/community/66_ansi/skully/config.h b/layouts/community/66_ansi/skully/config.h new file mode 100644 index 0000000000..f51361866c --- /dev/null +++ b/layouts/community/66_ansi/skully/config.h @@ -0,0 +1,12 @@ +#pragma once + +#ifdef AUDIO_CLICKY + #define AUDIO_CLICKY_ON + #define AUDIO_CLICKY_FREQ_DEFAULT 261.63f + #define AUDIO_CLICKY_FREQ_MIN 65.41f + #define AUDIO_CLICKY_FREQ_MAX 1046.5f + //#define AUDIO_CLICKY_FREQ_FACTOR 1.18921f + //#define AUDIO_CLICKY_FREQ_FACTOR 2.71828f // e + #define AUDIO_CLICKY_FREQ_FACTOR 1.61803f // golden ratio + #define AUDIO_CLICKY_FREQ_RANDOMNESS 17.0f +#endif diff --git a/layouts/community/66_ansi/skully/keymap.c b/layouts/community/66_ansi/skully/keymap.c index 0533886534..9337cfe02b 100644 --- a/layouts/community/66_ansi/skully/keymap.c +++ b/layouts/community/66_ansi/skully/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_CL] = LAYOUT_66_ansi( _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,RGB_TOG, RGB_VAI, - _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, + CK_TOGG, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, MO(_FL), _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_SAI, _______, _______, _______, RGB_MOD, _______, _______,_______, RGB_HUD,RGB_SAD,RGB_HUI), diff --git a/layouts/community/66_ansi/skully/readme.md b/layouts/community/66_ansi/skully/readme.md index 63793b9ba0..ad1a1e458d 100644 --- a/layouts/community/66_ansi/skully/readme.md +++ b/layouts/community/66_ansi/skully/readme.md @@ -1,3 +1,5 @@ # skullY's Clueboard Layout This layout is what I (@skullydazed) use on my personal Clueboards. I mostly use it for programming, CAD, and general typing. + +On boards with audio I have faux-clicky enabled. I've tuned it to values I find pleasing, they kinda remind me of the "talking" in Mike Tyson's Punch Out. -- cgit v1.2.3 From f0e0ca402c10fe2ade7129b28a0066bdf10d018d Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Sat, 11 Aug 2018 16:45:29 -0700 Subject: Keymap: copy skully's faux clicky mods (#3628) --- layouts/community/66_ansi/mechmerlin/config.h | 12 ++++++++++++ layouts/community/66_ansi/mechmerlin/keymap.c | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 layouts/community/66_ansi/mechmerlin/config.h (limited to 'layouts') diff --git a/layouts/community/66_ansi/mechmerlin/config.h b/layouts/community/66_ansi/mechmerlin/config.h new file mode 100644 index 0000000000..f51361866c --- /dev/null +++ b/layouts/community/66_ansi/mechmerlin/config.h @@ -0,0 +1,12 @@ +#pragma once + +#ifdef AUDIO_CLICKY + #define AUDIO_CLICKY_ON + #define AUDIO_CLICKY_FREQ_DEFAULT 261.63f + #define AUDIO_CLICKY_FREQ_MIN 65.41f + #define AUDIO_CLICKY_FREQ_MAX 1046.5f + //#define AUDIO_CLICKY_FREQ_FACTOR 1.18921f + //#define AUDIO_CLICKY_FREQ_FACTOR 2.71828f // e + #define AUDIO_CLICKY_FREQ_FACTOR 1.61803f // golden ratio + #define AUDIO_CLICKY_FREQ_RANDOMNESS 17.0f +#endif diff --git a/layouts/community/66_ansi/mechmerlin/keymap.c b/layouts/community/66_ansi/mechmerlin/keymap.c index 9baf238c73..b8142f9674 100644 --- a/layouts/community/66_ansi/mechmerlin/keymap.c +++ b/layouts/community/66_ansi/mechmerlin/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CL] = LAYOUT_66_ansi( BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, _______, RGB_VAI, \ RGB_TOG,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, \ - _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ + CK_TOGG,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, \ _______,_______,_______, RGB_MOD, _______,_______,_______,RGB_HUD,RGB_SAD,RGB_HUI), }; -- cgit v1.2.3 From 05b7383703d9e7bb68f29765adf865ba78facf2d Mon Sep 17 00:00:00 2001 From: Danny Date: Mon, 13 Aug 2018 15:05:58 -0400 Subject: Keyboard: Refactor Levinson to use split common code (#3639) * Migrate Levinson to use split_common code * Update keymap --- keyboards/levinson/config.h | 8 +- keyboards/levinson/i2c.c | 162 --------- keyboards/levinson/i2c.h | 49 --- keyboards/levinson/info.json | 4 +- keyboards/levinson/keymaps/bakingpy2u/config.h | 7 +- keyboards/levinson/keymaps/bakingpy2u/keymap.c | 4 +- keyboards/levinson/keymaps/bakingpy2u/rules.mk | 4 - keyboards/levinson/keymaps/default/config.h | 8 +- keyboards/levinson/keymaps/default/rules.mk | 5 +- keyboards/levinson/keymaps/treadwell/keymap.c | 4 +- keyboards/levinson/keymaps/treadwell/rules.mk | 4 - keyboards/levinson/keymaps/valgrahf/rules.mk | 5 - keyboards/levinson/levinson.h | 5 +- keyboards/levinson/matrix.c | 484 ------------------------- keyboards/levinson/rev1/config.h | 35 +- keyboards/levinson/rev1/rev1.c | 1 - keyboards/levinson/rev1/rev1.h | 7 +- keyboards/levinson/rev2/config.h | 35 +- keyboards/levinson/rev2/rev2.h | 7 +- keyboards/levinson/rules.mk | 52 +-- keyboards/levinson/serial.c | 228 ------------ keyboards/levinson/serial.h | 26 -- keyboards/levinson/split_util.c | 86 ----- keyboards/levinson/split_util.h | 20 - layouts/community/ortho_4x12/bakingpy/config.h | 8 +- layouts/community/ortho_4x12/bakingpy/keymap.c | 76 ++-- layouts/community/ortho_4x12/bakingpy/rules.mk | 3 +- 27 files changed, 66 insertions(+), 1271 deletions(-) delete mode 100644 keyboards/levinson/i2c.c delete mode 100644 keyboards/levinson/i2c.h delete mode 100644 keyboards/levinson/matrix.c delete mode 100644 keyboards/levinson/serial.c delete mode 100644 keyboards/levinson/serial.h delete mode 100644 keyboards/levinson/split_util.c delete mode 100644 keyboards/levinson/split_util.h (limited to 'layouts') diff --git a/keyboards/levinson/config.h b/keyboards/levinson/config.h index 591c656a29..ca0c79e554 100644 --- a/keyboards/levinson/config.h +++ b/keyboards/levinson/config.h @@ -1,6 +1,7 @@ /* Copyright 2012 Jun Wako Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,11 +22,4 @@ along with this program. If not, see . #include "config_common.h" -#ifdef SUBPROJECT_rev1 - #include "rev1/config.h" -#endif -#ifdef SUBPROJECT_rev2 - #include "rev2/config.h" -#endif - #endif diff --git a/keyboards/levinson/i2c.c b/keyboards/levinson/i2c.c deleted file mode 100644 index 084c890c40..0000000000 --- a/keyboards/levinson/i2c.c +++ /dev/null @@ -1,162 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "i2c.h" - -#ifdef USE_I2C - -// Limits the amount of we wait for any one i2c transaction. -// Since were running SCL line 100kHz (=> 10μs/bit), and each transactions is -// 9 bits, a single transaction will take around 90μs to complete. -// -// (F_CPU/SCL_CLOCK) => # of μC cycles to transfer a bit -// poll loop takes at least 8 clock cycles to execute -#define I2C_LOOP_TIMEOUT (9+1)*(F_CPU/SCL_CLOCK)/8 - -#define BUFFER_POS_INC() (slave_buffer_pos = (slave_buffer_pos+1)%SLAVE_BUFFER_SIZE) - -volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -static volatile uint8_t slave_buffer_pos; -static volatile bool slave_has_register_set = false; - -// Wait for an i2c operation to finish -inline static -void i2c_delay(void) { - uint16_t lim = 0; - while(!(TWCR & (1<10. - // Check datasheets for more info. - TWBR = ((F_CPU/SCL_CLOCK)-16)/2; -} - -// Start a transaction with the given i2c slave address. The direction of the -// transfer is set with I2C_READ and I2C_WRITE. -// returns: 0 => success -// 1 => error -uint8_t i2c_master_start(uint8_t address) { - TWCR = (1< slave ACK -// 1 => slave NACK -uint8_t i2c_master_write(uint8_t data) { - TWDR = data; - TWCR = (1<= SLAVE_BUFFER_SIZE ) { - ack = 0; - slave_buffer_pos = 0; - } - slave_has_register_set = true; - } else { - i2c_slave_buffer[slave_buffer_pos] = TWDR; - BUFFER_POS_INC(); - } - break; - - case TW_ST_SLA_ACK: - case TW_ST_DATA_ACK: - // master has addressed this device as a slave transmitter and is - // requesting data. - TWDR = i2c_slave_buffer[slave_buffer_pos]; - BUFFER_POS_INC(); - break; - - case TW_BUS_ERROR: // something went wrong, reset twi state - TWCR = 0; - default: - break; - } - // Reset everything, so we are ready for the next TWI interrupt - TWCR |= (1< - -#ifndef F_CPU -#define F_CPU 16000000UL -#endif - -#define I2C_READ 1 -#define I2C_WRITE 0 - -#define I2C_ACK 1 -#define I2C_NACK 0 - -#define SLAVE_BUFFER_SIZE 0x10 - -// i2c SCL clock frequency -#define SCL_CLOCK 400000L - -extern volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -void i2c_master_init(void); -uint8_t i2c_master_start(uint8_t address); -void i2c_master_stop(void); -uint8_t i2c_master_write(uint8_t data); -uint8_t i2c_master_read(int); -void i2c_reset_state(void); -void i2c_slave_init(uint8_t address); - - -static inline unsigned char i2c_start_read(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_READ); -} - -static inline unsigned char i2c_start_write(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_WRITE); -} - -// from SSD1306 scrips -extern unsigned char i2c_rep_start(unsigned char addr); -extern void i2c_start_wait(unsigned char addr); -extern unsigned char i2c_readAck(void); -extern unsigned char i2c_readNak(void); -extern unsigned char i2c_read(unsigned char ack); - -#define i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak(); - -#endif diff --git a/keyboards/levinson/info.json b/keyboards/levinson/info.json index 4305135a1b..2fb8fa9e3e 100644 --- a/keyboards/levinson/info.json +++ b/keyboards/levinson/info.json @@ -1,7 +1,7 @@ { "keyboard_name": "Levinson", - "url": "", - "maintainer": "qmk", + "url": "https://keeb.io", + "maintainer": "Keebio", "width": 13, "height": 4, "layouts": { diff --git a/keyboards/levinson/keymaps/bakingpy2u/config.h b/keyboards/levinson/keymaps/bakingpy2u/config.h index 75753ac2e7..1db6ea433f 100644 --- a/keyboards/levinson/keymaps/bakingpy2u/config.h +++ b/keyboards/levinson/keymaps/bakingpy2u/config.h @@ -1,7 +1,4 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "config_common.h" +#pragma once /* Use I2C or Serial, not both */ @@ -22,5 +19,3 @@ #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 - -#endif diff --git a/keyboards/levinson/keymaps/bakingpy2u/keymap.c b/keyboards/levinson/keymaps/bakingpy2u/keymap.c index da46d2a05a..219e3468fb 100644 --- a/keyboards/levinson/keymaps/bakingpy2u/keymap.c +++ b/keyboards/levinson/keymaps/bakingpy2u/keymap.c @@ -1,6 +1,4 @@ -#include "levinson.h" -#include "action_layer.h" -#include "eeconfig.h" +#include QMK_KEYBOARD_H extern keymap_config_t keymap_config; diff --git a/keyboards/levinson/keymaps/bakingpy2u/rules.mk b/keyboards/levinson/keymaps/bakingpy2u/rules.mk index 22b6ec4766..d7463419b4 100644 --- a/keyboards/levinson/keymaps/bakingpy2u/rules.mk +++ b/keyboards/levinson/keymaps/bakingpy2u/rules.mk @@ -1,6 +1,2 @@ RGBLIGHT_ENABLE = yes BACKLIGHT_ENABLE = yes - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif diff --git a/keyboards/levinson/keymaps/default/config.h b/keyboards/levinson/keymaps/default/config.h index 6b31e8d14e..e710d6e4aa 100644 --- a/keyboards/levinson/keymaps/default/config.h +++ b/keyboards/levinson/keymaps/default/config.h @@ -3,6 +3,7 @@ This is the c configuration file for the keymap Copyright 2012 Jun Wako Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,10 +19,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "config_common.h" +#pragma once /* Use I2C or Serial, not both */ @@ -33,5 +31,3 @@ along with this program. If not, see . #define MASTER_LEFT // #define MASTER_RIGHT // #define EE_HANDS - -#endif diff --git a/keyboards/levinson/keymaps/default/rules.mk b/keyboards/levinson/keymaps/default/rules.mk index 457a3d01d4..d7463419b4 100644 --- a/keyboards/levinson/keymaps/default/rules.mk +++ b/keyboards/levinson/keymaps/default/rules.mk @@ -1,3 +1,2 @@ -ifndef QUANTUM_DIR - include ../../../../Makefile -endif +RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes diff --git a/keyboards/levinson/keymaps/treadwell/keymap.c b/keyboards/levinson/keymaps/treadwell/keymap.c index 10d7d30355..f930ebb795 100644 --- a/keyboards/levinson/keymaps/treadwell/keymap.c +++ b/keyboards/levinson/keymaps/treadwell/keymap.c @@ -1,6 +1,4 @@ -#include "levinson.h" -#include "action_layer.h" -#include "eeconfig.h" +#include QMK_KEYBOARD_H extern keymap_config_t keymap_config; diff --git a/keyboards/levinson/keymaps/treadwell/rules.mk b/keyboards/levinson/keymaps/treadwell/rules.mk index c5e16f1369..1d2d9e5a9c 100644 --- a/keyboards/levinson/keymaps/treadwell/rules.mk +++ b/keyboards/levinson/keymaps/treadwell/rules.mk @@ -1,6 +1,2 @@ RGBLIGHT_ENABLE = no BACKLIGHT_ENABLE = no - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif diff --git a/keyboards/levinson/keymaps/valgrahf/rules.mk b/keyboards/levinson/keymaps/valgrahf/rules.mk index 0db809fe4b..1f54b32c48 100644 --- a/keyboards/levinson/keymaps/valgrahf/rules.mk +++ b/keyboards/levinson/keymaps/valgrahf/rules.mk @@ -1,8 +1,3 @@ RGBLIGHT_ENABLE = yes BACKLIGHT_ENABLE = yes AUDIO_ENABLE = no -USE_I2C = no - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif diff --git a/keyboards/levinson/levinson.h b/keyboards/levinson/levinson.h index 6b18b1a3e6..2106bc0e37 100644 --- a/keyboards/levinson/levinson.h +++ b/keyboards/levinson/levinson.h @@ -1,5 +1,4 @@ -#ifndef LEVINSON_H -#define LEVINSON_H +#pragma once #include "quantum.h" @@ -24,5 +23,3 @@ ) #define LAYOUT_kc_ortho_4x12 LAYOUT_kc - -#endif diff --git a/keyboards/levinson/matrix.c b/keyboards/levinson/matrix.c deleted file mode 100644 index 217264f263..0000000000 --- a/keyboards/levinson/matrix.c +++ /dev/null @@ -1,484 +0,0 @@ -/* -Copyright 2017 Danny Nguyen - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include "wait.h" -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "split_util.h" -#include "pro_micro.h" -#include "config.h" -#include "timer.h" - -#ifdef BACKLIGHT_ENABLE - #include "backlight.h" - extern backlight_config_t backlight_config; -#endif - -#ifdef USE_I2C -# include "i2c.h" -#else // USE_SERIAL -# include "serial.h" -#endif - -#ifndef DEBOUNCING_DELAY -# define DEBOUNCING_DELAY 5 -#endif - -#if (DEBOUNCING_DELAY > 0) - static uint16_t debouncing_time; - static bool debouncing = false; -#endif - -#if (MATRIX_COLS <= 8) -# define print_matrix_header() print("\nr/c 01234567\n") -# define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) -# define ROW_SHIFTER ((uint8_t)1) -#else -# error "Currently only supports 8 COLS" -#endif -static matrix_row_t matrix_debouncing[MATRIX_ROWS]; - -#define ERROR_DISCONNECT_COUNT 5 - -#define SERIAL_LED_ADDR 0x00 - -#define ROWS_PER_HAND (MATRIX_ROWS/2) - -static uint8_t error_count = 0; - -static const uint8_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -static const uint8_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -/* matrix state(1:on, 0:off) */ -static matrix_row_t matrix[MATRIX_ROWS]; -static matrix_row_t matrix_debouncing[MATRIX_ROWS]; - -#if (DIODE_DIRECTION == COL2ROW) - static void init_cols(void); - static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row); - static void unselect_rows(void); - static void select_row(uint8_t row); - static void unselect_row(uint8_t row); -#elif (DIODE_DIRECTION == ROW2COL) - static void init_rows(void); - static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col); - static void unselect_cols(void); - static void unselect_col(uint8_t col); - static void select_col(uint8_t col); -#endif - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - debug_enable = true; - debug_matrix = true; - debug_mouse = true; - // initialize row and col - unselect_rows(); - init_cols(); - - TX_RX_LED_INIT; - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - matrix_debouncing[i] = 0; - } - - matrix_init_quantum(); - -} - -uint8_t _matrix_scan(void) -{ - int offset = isLeftHand ? 0 : (ROWS_PER_HAND); -#if (DIODE_DIRECTION == COL2ROW) - // Set row, read cols - for (uint8_t current_row = 0; current_row < ROWS_PER_HAND; current_row++) { -# if (DEBOUNCING_DELAY > 0) - bool matrix_changed = read_cols_on_row(matrix_debouncing+offset, current_row); - - if (matrix_changed) { - debouncing = true; - debouncing_time = timer_read(); - } - -# else - read_cols_on_row(matrix+offset, current_row); -# endif - - } - -#elif (DIODE_DIRECTION == ROW2COL) - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { -# if (DEBOUNCING_DELAY > 0) - bool matrix_changed = read_rows_on_col(matrix_debouncing+offset, current_col); - if (matrix_changed) { - debouncing = true; - debouncing_time = timer_read(); - } -# else - read_rows_on_col(matrix+offset, current_col); -# endif - - } -#endif - -# if (DEBOUNCING_DELAY > 0) - if (debouncing && (timer_elapsed(debouncing_time) > DEBOUNCING_DELAY)) { - for (uint8_t i = 0; i < ROWS_PER_HAND; i++) { - matrix[i+offset] = matrix_debouncing[i+offset]; - } - debouncing = false; - } -# endif - - return 1; -} - -#ifdef USE_I2C - -// Get rows from other half over i2c -int i2c_transaction(void) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - - int err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_WRITE); - if (err) goto i2c_error; - - // start of matrix stored at 0x00 - err = i2c_master_write(0x00); - if (err) goto i2c_error; - -#ifdef BACKLIGHT_ENABLE - // Write backlight level for slave to read - err = i2c_master_write(backlight_config.enable ? backlight_config.level : 0); -#else - // Write zero, so our byte index is the same - err = i2c_master_write(0x00); -#endif - if (err) goto i2c_error; - - // Start read - err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_READ); - if (err) goto i2c_error; - - if (!err) { - int i; - for (i = 0; i < ROWS_PER_HAND-1; ++i) { - matrix[slaveOffset+i] = i2c_master_read(I2C_ACK); - } - matrix[slaveOffset+i] = i2c_master_read(I2C_NACK); - i2c_master_stop(); - } else { -i2c_error: // the cable is disconnceted, or something else went wrong - i2c_reset_state(); - return err; - } - - return 0; -} - -#else // USE_SERIAL - -int serial_transaction(void) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - - if (serial_update_buffers()) { - return 1; - } - - for (int i = 0; i < ROWS_PER_HAND; ++i) { - matrix[slaveOffset+i] = serial_slave_buffer[i]; - } - -#ifdef BACKLIGHT_ENABLE - // Write backlight level for slave to read - serial_master_buffer[SERIAL_LED_ADDR] = backlight_config.enable ? backlight_config.level : 0; -#endif - return 0; -} -#endif - -uint8_t matrix_scan(void) -{ - uint8_t ret = _matrix_scan(); - -#ifdef USE_I2C - if( i2c_transaction() ) { -#else // USE_SERIAL - if( serial_transaction() ) { -#endif - // turn on the indicator led when halves are disconnected - TXLED1; - - error_count++; - - if (error_count > ERROR_DISCONNECT_COUNT) { - // reset other half if disconnected - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - for (int i = 0; i < ROWS_PER_HAND; ++i) { - matrix[slaveOffset+i] = 0; - } - } - } else { - // turn off the indicator led on no error - TXLED0; - error_count = 0; - } - matrix_scan_quantum(); - return ret; -} - -void matrix_slave_scan(void) { - _matrix_scan(); - - int offset = (isLeftHand) ? 0 : ROWS_PER_HAND; - -#ifdef USE_I2C -#ifdef BACKLIGHT_ENABLE - // Read backlight level sent from master and update level on slave - backlight_set(i2c_slave_buffer[0]); -#endif - for (int i = 0; i < ROWS_PER_HAND; ++i) { - i2c_slave_buffer[i+1] = matrix[offset+i]; - } -#else // USE_SERIAL - for (int i = 0; i < ROWS_PER_HAND; ++i) { - serial_slave_buffer[i] = matrix[offset+i]; - } - -#ifdef BACKLIGHT_ENABLE - // Read backlight level sent from master and update level on slave - backlight_set(serial_master_buffer[SERIAL_LED_ADDR]); -#endif -#endif -} - -bool matrix_is_modified(void) -{ - if (debouncing) return false; - return true; -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) -{ - return (matrix[row] & ((matrix_row_t)1<> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI - } -} - -static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) -{ - // Store last value of row prior to reading - matrix_row_t last_row_value = current_matrix[current_row]; - - // Clear data in matrix row - current_matrix[current_row] = 0; - - // Select row and wait for row selecton to stabilize - select_row(current_row); - wait_us(30); - - // For each col... - for(uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) { - - // Select the col pin to read (active low) - uint8_t pin = col_pins[col_index]; - uint8_t pin_state = (_SFR_IO8(pin >> 4) & _BV(pin & 0xF)); - - // Populate the matrix row with the state of the col pin - current_matrix[current_row] |= pin_state ? 0 : (ROW_SHIFTER << col_index); - } - - // Unselect row - unselect_row(current_row); - - return (last_row_value != current_matrix[current_row]); -} - -static void select_row(uint8_t row) -{ - uint8_t pin = row_pins[row]; - _SFR_IO8((pin >> 4) + 1) |= _BV(pin & 0xF); // OUT - _SFR_IO8((pin >> 4) + 2) &= ~_BV(pin & 0xF); // LOW -} - -static void unselect_row(uint8_t row) -{ - uint8_t pin = row_pins[row]; - _SFR_IO8((pin >> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI -} - -static void unselect_rows(void) -{ - for(uint8_t x = 0; x < ROWS_PER_HAND; x++) { - uint8_t pin = row_pins[x]; - _SFR_IO8((pin >> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI - } -} - -#elif (DIODE_DIRECTION == ROW2COL) - -static void init_rows(void) -{ - for(uint8_t x = 0; x < ROWS_PER_HAND; x++) { - uint8_t pin = row_pins[x]; - _SFR_IO8((pin >> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI - } -} - -static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) -{ - bool matrix_changed = false; - - // Select col and wait for col selecton to stabilize - select_col(current_col); - wait_us(30); - - // For each row... - for(uint8_t row_index = 0; row_index < ROWS_PER_HAND; row_index++) - { - - // Store last value of row prior to reading - matrix_row_t last_row_value = current_matrix[row_index]; - - // Check row pin state - if ((_SFR_IO8(row_pins[row_index] >> 4) & _BV(row_pins[row_index] & 0xF)) == 0) - { - // Pin LO, set col bit - current_matrix[row_index] |= (ROW_SHIFTER << current_col); - } - else - { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(ROW_SHIFTER << current_col); - } - - // Determine if the matrix changed state - if ((last_row_value != current_matrix[row_index]) && !(matrix_changed)) - { - matrix_changed = true; - } - } - - // Unselect col - unselect_col(current_col); - - return matrix_changed; -} - -static void select_col(uint8_t col) -{ - uint8_t pin = col_pins[col]; - _SFR_IO8((pin >> 4) + 1) |= _BV(pin & 0xF); // OUT - _SFR_IO8((pin >> 4) + 2) &= ~_BV(pin & 0xF); // LOW -} - -static void unselect_col(uint8_t col) -{ - uint8_t pin = col_pins[col]; - _SFR_IO8((pin >> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI -} - -static void unselect_cols(void) -{ - for(uint8_t x = 0; x < MATRIX_COLS; x++) { - uint8_t pin = col_pins[x]; - _SFR_IO8((pin >> 4) + 1) &= ~_BV(pin & 0xF); // IN - _SFR_IO8((pin >> 4) + 2) |= _BV(pin & 0xF); // HI - } -} - -#endif diff --git a/keyboards/levinson/rev1/config.h b/keyboards/levinson/rev1/config.h index ddccbc47a9..52a644e82f 100644 --- a/keyboards/levinson/rev1/config.h +++ b/keyboards/levinson/rev1/config.h @@ -1,6 +1,7 @@ /* Copyright 2012 Jun Wako Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,10 +17,9 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef REV1_CONFIG_H -#define REV1_CONFIG_H +#pragma once -#include "../config.h" +#include QMK_KEYBOARD_CONFIG_H /* USB Device descriptor parameter */ #define VENDOR_ID 0xCEEB @@ -38,12 +38,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D7, E6, B4, B5 } #define MATRIX_COL_PINS { F6, F7, B1, B3, B2, F4 } -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ -#define BACKLIGHT_LEVELS 7 - /* Set 0 if debouncing isn't needed */ #define DEBOUNCING_DELAY 5 @@ -61,30 +55,7 @@ along with this program. If not, see . #define RGB_DI_PIN D3 #define RGBLIGHT_TIMER #define RGBLED_NUM 12 // Number of LEDs -#define ws2812_PORTREG PORTD -#define ws2812_DDRREG DDRD /* Backlight LEDs */ #define BACKLIGHT_PIN B6 #define BACKLIGHT_LEVELS 7 - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -// #define NO_DEBUG - -/* disable print */ -// #define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - - -#endif diff --git a/keyboards/levinson/rev1/rev1.c b/keyboards/levinson/rev1/rev1.c index edcfd93571..573fa787ba 100644 --- a/keyboards/levinson/rev1/rev1.c +++ b/keyboards/levinson/rev1/rev1.c @@ -1,6 +1,5 @@ #include "levinson.h" - #ifdef SSD1306OLED void led_set_kb(uint8_t usb_led) { // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here diff --git a/keyboards/levinson/rev1/rev1.h b/keyboards/levinson/rev1/rev1.h index d24d1d7ad0..2120bb0fa9 100644 --- a/keyboards/levinson/rev1/rev1.h +++ b/keyboards/levinson/rev1/rev1.h @@ -1,7 +1,6 @@ -#ifndef REV2_H -#define REV2_H +#pragma once -#include "../levinson.h" +#include "levinson.h" //void promicro_bootloader_jmp(bool program); #include "quantum.h" @@ -58,5 +57,3 @@ #endif #define LAYOUT_ortho_4x12 LAYOUT - -#endif diff --git a/keyboards/levinson/rev2/config.h b/keyboards/levinson/rev2/config.h index 51ae5cd3c7..4845c935e8 100644 --- a/keyboards/levinson/rev2/config.h +++ b/keyboards/levinson/rev2/config.h @@ -1,6 +1,7 @@ /* Copyright 2012 Jun Wako Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,10 +17,9 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef REV1_CONFIG_H -#define REV1_CONFIG_H +#pragma once -#include "../config.h" +#include QMK_KEYBOARD_CONFIG_H /* USB Device descriptor parameter */ #define VENDOR_ID 0xCEEB @@ -38,12 +38,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { D4, D7, E6, B4 } #define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ -#define BACKLIGHT_LEVELS 7 - /* Set 0 if debouncing isn't needed */ #define DEBOUNCING_DELAY 5 @@ -61,30 +55,7 @@ along with this program. If not, see . #define RGB_DI_PIN D3 #define RGBLIGHT_TIMER #define RGBLED_NUM 12 // Number of LEDs -#define ws2812_PORTREG PORTD -#define ws2812_DDRREG DDRD /* Backlight LEDs */ #define BACKLIGHT_PIN B5 #define BACKLIGHT_LEVELS 7 - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -// #define NO_DEBUG - -/* disable print */ -// #define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - - -#endif diff --git a/keyboards/levinson/rev2/rev2.h b/keyboards/levinson/rev2/rev2.h index d24d1d7ad0..2120bb0fa9 100644 --- a/keyboards/levinson/rev2/rev2.h +++ b/keyboards/levinson/rev2/rev2.h @@ -1,7 +1,6 @@ -#ifndef REV2_H -#define REV2_H +#pragma once -#include "../levinson.h" +#include "levinson.h" //void promicro_bootloader_jmp(bool program); #include "quantum.h" @@ -58,5 +57,3 @@ #endif #define LAYOUT_ortho_4x12 LAYOUT - -#endif diff --git a/keyboards/levinson/rules.mk b/keyboards/levinson/rules.mk index 8e67497f4b..4805ed99ee 100644 --- a/keyboards/levinson/rules.mk +++ b/keyboards/levinson/rules.mk @@ -1,49 +1,7 @@ -SRC += matrix.c \ - i2c.c \ - split_util.c \ - serial.c \ - ssd1306.c - -# MCU name -#MCU = at90usb1287 MCU = atmega32u4 - -# Processor frequency. -# This will define a symbol, F_CPU, in all source code files equal to the -# processor frequency in Hz. You can then use this symbol in your source code to -# calculate timings. Do NOT tack on a 'UL' at the end, this will be done -# automatically to create a 32-bit value in your source code. -# -# This will be an integer division of F_USB below, as it is sourced by -# F_USB after it has run through any CPU prescalers. Note that this value -# does not *change* the processor frequency - it should merely be updated to -# reflect the processor speed set externally so that the code can use accurate -# software delays. F_CPU = 16000000 - -# -# LUFA specific -# -# Target architecture (see library "Board Types" documentation). ARCH = AVR8 - -# Input clock frequency. -# This will define a symbol, F_USB, in all source code files equal to the -# input clock frequency (before any prescaling is performed) in Hz. This value may -# differ from F_CPU if prescaling is used on the latter, and is required as the -# raw input clock is fed directly to the PLL sections of the AVR for high speed -# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' -# at the end, this will be done automatically to create a 32-bit value in your -# source code. -# -# If no clock division is performed on the input clock inside the AVR (via the -# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. F_USB = $(F_CPU) - -# Bootloader -# This definition is optional, and if your keyboard supports multiple bootloaders of -# different sizes, comment this out, and the correct address will be loaded -# automatically (+60). See bootloader.mk for all options. BOOTLOADER = caterina # Interrupt driven control endpoint task(+60) @@ -59,19 +17,17 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450) CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -SUBPROJECT_rev1 = yes -USE_I2C = yes +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -CUSTOM_MATRIX = yes +SPLIT_KEYBOARD = yes LAYOUTS = ortho_4x12 - DEFAULT_FOLDER = levinson/rev2 diff --git a/keyboards/levinson/serial.c b/keyboards/levinson/serial.c deleted file mode 100644 index 74bcbb6bf6..0000000000 --- a/keyboards/levinson/serial.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * WARNING: be careful changing this code, it is very timing dependent - */ - -#ifndef F_CPU -#define F_CPU 16000000 -#endif - -#include -#include -#include -#include -#include "serial.h" - -#ifndef USE_I2C - -// Serial pulse period in microseconds. Its probably a bad idea to lower this -// value. -#define SERIAL_DELAY 24 - -uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0}; -uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0}; - -#define SLAVE_DATA_CORRUPT (1<<0) -volatile uint8_t status = 0; - -inline static -void serial_delay(void) { - _delay_us(SERIAL_DELAY); -} - -inline static -void serial_output(void) { - SERIAL_PIN_DDR |= SERIAL_PIN_MASK; -} - -// make the serial pin an input with pull-up resistor -inline static -void serial_input(void) { - SERIAL_PIN_DDR &= ~SERIAL_PIN_MASK; - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -inline static -uint8_t serial_read_pin(void) { - return !!(SERIAL_PIN_INPUT & SERIAL_PIN_MASK); -} - -inline static -void serial_low(void) { - SERIAL_PIN_PORT &= ~SERIAL_PIN_MASK; -} - -inline static -void serial_high(void) { - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -void serial_master_init(void) { - serial_output(); - serial_high(); -} - -void serial_slave_init(void) { - serial_input(); - - // Enable INT0 - EIMSK |= _BV(INT0); - // Trigger on falling edge of INT0 - EICRA &= ~(_BV(ISC00) | _BV(ISC01)); -} - -// Used by the master to synchronize timing with the slave. -static -void sync_recv(void) { - serial_input(); - // This shouldn't hang if the slave disconnects because the - // serial line will float to high if the slave does disconnect. - while (!serial_read_pin()); - serial_delay(); -} - -// Used by the slave to send a synchronization signal to the master. -static -void sync_send(void) { - serial_output(); - - serial_low(); - serial_delay(); - - serial_high(); -} - -// Reads a byte from the serial line -static -uint8_t serial_read_byte(void) { - uint8_t byte = 0; - serial_input(); - for ( uint8_t i = 0; i < 8; ++i) { - byte = (byte << 1) | serial_read_pin(); - serial_delay(); - _delay_us(1); - } - - return byte; -} - -// Sends a byte with MSB ordering -static -void serial_write_byte(uint8_t data) { - uint8_t b = 8; - serial_output(); - while( b-- ) { - if(data & (1 << b)) { - serial_high(); - } else { - serial_low(); - } - serial_delay(); - } -} - -// interrupt handle to be used by the slave device -ISR(SERIAL_PIN_INTERRUPT) { - sync_send(); - - uint8_t checksum = 0; - for (int i = 0; i < SERIAL_SLAVE_BUFFER_LENGTH; ++i) { - serial_write_byte(serial_slave_buffer[i]); - sync_send(); - checksum += serial_slave_buffer[i]; - } - serial_write_byte(checksum); - sync_send(); - - // wait for the sync to finish sending - serial_delay(); - - // read the middle of pulses - _delay_us(SERIAL_DELAY/2); - - uint8_t checksum_computed = 0; - for (int i = 0; i < SERIAL_MASTER_BUFFER_LENGTH; ++i) { - serial_master_buffer[i] = serial_read_byte(); - sync_send(); - checksum_computed += serial_master_buffer[i]; - } - uint8_t checksum_received = serial_read_byte(); - sync_send(); - - serial_input(); // end transaction - - if ( checksum_computed != checksum_received ) { - status |= SLAVE_DATA_CORRUPT; - } else { - status &= ~SLAVE_DATA_CORRUPT; - } -} - -inline -bool serial_slave_DATA_CORRUPT(void) { - return status & SLAVE_DATA_CORRUPT; -} - -// Copies the serial_slave_buffer to the master and sends the -// serial_master_buffer to the slave. -// -// Returns: -// 0 => no error -// 1 => slave did not respond -int serial_update_buffers(void) { - // this code is very time dependent, so we need to disable interrupts - cli(); - - // signal to the slave that we want to start a transaction - serial_output(); - serial_low(); - _delay_us(1); - - // wait for the slaves response - serial_input(); - serial_high(); - _delay_us(SERIAL_DELAY); - - // check if the slave is present - if (serial_read_pin()) { - // slave failed to pull the line low, assume not present - sei(); - return 1; - } - - // if the slave is present syncronize with it - sync_recv(); - - uint8_t checksum_computed = 0; - // receive data from the slave - for (int i = 0; i < SERIAL_SLAVE_BUFFER_LENGTH; ++i) { - serial_slave_buffer[i] = serial_read_byte(); - sync_recv(); - checksum_computed += serial_slave_buffer[i]; - } - uint8_t checksum_received = serial_read_byte(); - sync_recv(); - - if (checksum_computed != checksum_received) { - sei(); - return 1; - } - - uint8_t checksum = 0; - // send data to the slave - for (int i = 0; i < SERIAL_MASTER_BUFFER_LENGTH; ++i) { - serial_write_byte(serial_master_buffer[i]); - sync_recv(); - checksum += serial_master_buffer[i]; - } - serial_write_byte(checksum); - sync_recv(); - - // always, release the line when not in use - serial_output(); - serial_high(); - - sei(); - return 0; -} - -#endif diff --git a/keyboards/levinson/serial.h b/keyboards/levinson/serial.h deleted file mode 100644 index 15fe4db7b4..0000000000 --- a/keyboards/levinson/serial.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef MY_SERIAL_H -#define MY_SERIAL_H - -#include "config.h" -#include - -/* TODO: some defines for interrupt setup */ -#define SERIAL_PIN_DDR DDRD -#define SERIAL_PIN_PORT PORTD -#define SERIAL_PIN_INPUT PIND -#define SERIAL_PIN_MASK _BV(PD0) -#define SERIAL_PIN_INTERRUPT INT0_vect - -#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 -#define SERIAL_MASTER_BUFFER_LENGTH 1 - -// Buffers for master - slave communication -extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH]; -extern volatile uint8_t serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH]; - -void serial_master_init(void); -void serial_slave_init(void); -int serial_update_buffers(void); -bool serial_slave_data_corrupt(void); - -#endif diff --git a/keyboards/levinson/split_util.c b/keyboards/levinson/split_util.c deleted file mode 100644 index 7f200e6c94..0000000000 --- a/keyboards/levinson/split_util.c +++ /dev/null @@ -1,86 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "split_util.h" -#include "matrix.h" -#include "keyboard.h" -#include "config.h" -#include "timer.h" - -#ifdef USE_I2C -# include "i2c.h" -#else -# include "serial.h" -#endif - -volatile bool isLeftHand = true; - -static void setup_handedness(void) { - #ifdef EE_HANDS - isLeftHand = eeprom_read_byte(EECONFIG_HANDEDNESS); - #else - // I2C_MASTER_RIGHT is deprecated, use MASTER_RIGHT instead, since this works for both serial and i2c - #if defined(I2C_MASTER_RIGHT) || defined(MASTER_RIGHT) - isLeftHand = !has_usb(); - #else - isLeftHand = has_usb(); - #endif - #endif -} - -static void keyboard_master_setup(void) { -#ifdef USE_I2C - i2c_master_init(); -#ifdef SSD1306OLED - matrix_master_OLED_init(); -#endif -#else - serial_master_init(); -#endif -} - -static void keyboard_slave_setup(void) { - timer_init(); -#ifdef USE_I2C - i2c_slave_init(SLAVE_I2C_ADDRESS); -#else - serial_slave_init(); -#endif -} - -bool has_usb(void) { - USBCON |= (1 << OTGPADE); //enables VBUS pad - _delay_us(5); - return (USBSTA & (1< -#include "eeconfig.h" - -#define SLAVE_I2C_ADDRESS 0x32 - -extern volatile bool isLeftHand; - -// slave version of matix scan, defined in matrix.c -void matrix_slave_scan(void); - -void split_keyboard_setup(void); -bool has_usb(void); -void keyboard_slave_loop(void); - -void matrix_master_OLED_init (void); - -#endif diff --git a/layouts/community/ortho_4x12/bakingpy/config.h b/layouts/community/ortho_4x12/bakingpy/config.h index 77fa69ad78..a90f38001a 100644 --- a/layouts/community/ortho_4x12/bakingpy/config.h +++ b/layouts/community/ortho_4x12/bakingpy/config.h @@ -1,7 +1,4 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include QMK_KEYBOARD_CONFIG_H +#pragma once /* Use I2C or Serial, not both */ @@ -9,7 +6,6 @@ // #define USE_I2C /* Select hand configuration */ - #define MASTER_LEFT // #define MASTER_RIGHT // #define EE_HANDS @@ -26,5 +22,3 @@ #ifdef AUDIO_ENABLE #define C6_AUDIO #endif - -#endif diff --git a/layouts/community/ortho_4x12/bakingpy/keymap.c b/layouts/community/ortho_4x12/bakingpy/keymap.c index b34e57cbeb..e71e5d5d2c 100644 --- a/layouts/community/ortho_4x12/bakingpy/keymap.c +++ b/layouts/community/ortho_4x12/bakingpy/keymap.c @@ -1,6 +1,4 @@ #include QMK_KEYBOARD_H -#include "action_layer.h" -#include "eeconfig.h" extern keymap_config_t keymap_config; @@ -19,6 +17,7 @@ enum custom_keycodes { LOWER, RAISE, ADJUST, + PLAY_ALLSTAR, }; #define KC_ KC_TRNS @@ -35,79 +34,80 @@ enum custom_keycodes { #define KC_ENTS MT(MOD_LSFT, KC_ENT) #define KC_BL_S BL_STEP #define KC_BL_T BL_TOGG +#define KC_ALLS PLAY_ALLSTAR const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ ESCC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH,ENTS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ GRVF,LCTL,LALT,LGUI,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), [_COLEMAK] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ TAB , Q , W , F , P , G , J , L , U , Y ,SCLN,MINS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ ESCC, A , R , S , T , D , H , N , E , I , O ,QUOT, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ LSFT, Z , X , C , V , B , K , M ,COMM,DOT ,SLSH,ENTS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ GRVF,LCTL,LALT,LGUI,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), [_DVORAK] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,MINS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ ESCC, A , O , E , U , I , D , H , T , N , S ,SLSH, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ LSFT,SCLN, Q , J , K , X , B , M , W , V , Z ,ENTS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ GRVF,LCTL,LALT,LGUI,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), [_LOWER] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. - ASTR, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ + ALLS, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , , + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ DEL ,CAPP,LEFT,RGHT, UP ,LBRC, RBRC, P4 , P5 , P6 ,PLUS,PIPE, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ ,CPYP, , ,DOWN,LCBR, RCBR, P1 , P2 , P3 ,MINS, , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ BL_S,BL_T, , , ,DEL , DEL , , P0 ,PDOT, , - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), [_RAISE] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ ,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN, , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ DEL ,MPRV,MNXT,VOLU,PGUP,UNDS, EQL ,HOME, , , ,BSLS, - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ MUTE,MSTP,MPLY,VOLD,PGDN,MINS, PLUS,END , , , , , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ , , , , , , , , , , , - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), [_FKEYS] = LAYOUT_kc_ortho_4x12( - //,----+----+----+----+----+----. ,----+----+----+----+----+----. + //┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐ F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ , , , , , , , , , , , , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ , , , , , , , , , , , , - //|----+----+----+----+----+----| |----+----+----+----+----+----| + //├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ , , , , , , , , , , , - //`----+----+----+----+----+----' `----+----+----+----+----+----' + //└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ ), /* Adjust (Lower + Raise) @@ -122,10 +122,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( \ - _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, \ - _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, \ + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ ) @@ -200,7 +200,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case KC_ASTR: + case PLAY_ALLSTAR: if (record->event.pressed) { #ifdef AUDIO_ENABLE PLAY_SONG(all_star_song); diff --git a/layouts/community/ortho_4x12/bakingpy/rules.mk b/layouts/community/ortho_4x12/bakingpy/rules.mk index 80e5f82eef..0d568c401a 100644 --- a/layouts/community/ortho_4x12/bakingpy/rules.mk +++ b/layouts/community/ortho_4x12/bakingpy/rules.mk @@ -2,4 +2,5 @@ ifeq ($(LAYOUTS_HAS_RGB),yes) RGBLIGHT_ENABLE = yes endif -AUDIO_ENABLE = yes +AUDIO_ENABLE = no +BACKLIGHT_ENABLE = yes -- cgit v1.2.3 From 08963796d8ec370e1ee14d157d39cc6cfb78222f Mon Sep 17 00:00:00 2001 From: Logan Bussell <36081148+lbussell@users.noreply.github.com> Date: Mon, 13 Aug 2018 15:37:11 -0400 Subject: Keymap: Added buswerks ortho_4x12 keymap (#3623) * Added buswerks keymap * cleaned up comments on buswerks keymap * Added buswerks keymap readme.md * Fixed spelling in buswerks readme.md * Removed unnecessary includes, changed process_record_user to now use set_single_persistent_default_layer(), removed deprecated functions, and moved the audio ifdef block to config.h --- layouts/community/ortho_4x12/buswerks/config.h | 22 ++++ layouts/community/ortho_4x12/buswerks/keymap.c | 154 ++++++++++++++++++++++++ layouts/community/ortho_4x12/buswerks/readme.md | 28 +++++ 3 files changed, 204 insertions(+) create mode 100644 layouts/community/ortho_4x12/buswerks/config.h create mode 100644 layouts/community/ortho_4x12/buswerks/keymap.c create mode 100644 layouts/community/ortho_4x12/buswerks/readme.md (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/buswerks/config.h b/layouts/community/ortho_4x12/buswerks/config.h new file mode 100644 index 0000000000..1498cae744 --- /dev/null +++ b/layouts/community/ortho_4x12/buswerks/config.h @@ -0,0 +1,22 @@ +#pragma once + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +#define MASTER_LEFT +// #define _MASTER_RIGHT +// #define EE_HANDS + +#ifdef AUDIO_ENABLE + #define STARTUP_SONG SONG(PLANCK_SOUND) + // #define STARTUP_SONG SONG(NO_SOUND) + + #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ + SONG(COLEMAK_SOUND), \ + SONG(DVORAK_SOUND) \ + } +#endif \ No newline at end of file diff --git a/layouts/community/ortho_4x12/buswerks/keymap.c b/layouts/community/ortho_4x12/buswerks/keymap.c new file mode 100644 index 0000000000..776ea461b7 --- /dev/null +++ b/layouts/community/ortho_4x12/buswerks/keymap.c @@ -0,0 +1,154 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +#define _QWERTY 0 +#define _COLEMAK 1 +#define _DVORAK 2 +#define _LOWER 3 +#define _RAISE 4 +#define _ADJUST 16 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + LOWER, + RAISE, + ADJUST, +}; + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define KC_ KC_TRNS +#define XXXXXXX KC_NO + +#define ESC_CMD MT(MOD_LGUI, KC_ESC) +#define RSE_ENT LT(_RAISE, KC_ENT) +#define KC_LOWR LOWER +#define KC_RASE RAISE +#define KC_ADJ ADJUST + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I, KC_O , KC_P , KC_BSPC, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K, KC_L , KC_SCLN, KC_QUOT, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_COLEMAK] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + KC_TAB , KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN, KC_BSPC, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + ESC_CMD, KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_QUOT, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_DVORAK] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_LOWER] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + KC_TILD, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_MINS, KC_DEL, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_PIPE, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, KC_CIRC, KC_ASTR, KC_UNDS, KC_EQL, KC_AMPR, _______, KC_1, KC_2, KC_3, KC_SLSH, _______, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______ \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_RAISE] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + KC_GRV, _______, _______, KC_LPRN, KC_RPRN, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, KC_DEL, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, KC_LCBR, KC_RCBR, _______, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, KC_BSLS, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_ADJUST] = LAYOUT_ortho_4x12( \ + KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \ + _______, _______, RESET, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ +) + + +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + } + return true; +} \ No newline at end of file diff --git a/layouts/community/ortho_4x12/buswerks/readme.md b/layouts/community/ortho_4x12/buswerks/readme.md new file mode 100644 index 0000000000..452116423b --- /dev/null +++ b/layouts/community/ortho_4x12/buswerks/readme.md @@ -0,0 +1,28 @@ +Buswerks' 4x12 Ortholinear Layout +============================ +For use on Planck, Let's Split, and similar keyboards + +### Layout Overview + +- Main Layer + - An additional shift key is located on the right space key (only works for grid layouts) + - Enter is located on the Raise key (layer-tap) + - The left and right shift keys function as Space Cadet shift keys + - The bottom left key is the Adjust modifier + - Escape is in the traditional Caps Lock position + - Holding down the escape key acts as LGUI (intended for macOS use) +- Lower + - There is a numpad on the right hand (4, 5, and 6 are located under JKL/NEI/HTN) + - Plus and minus keys are located to the right of the numpad + - All other symbols are located on the other side of the keyboard, in a somewhat logical order + - Symbols from the number row are in order, starting on the left pinky. + - Equals and underscore are in easily accessible spots, because they are more commonly used in programming + - The ampersand is less common, so it is moved to the right of the equals symbol +- Raise + - Vim-style arrow keys + - Above the arrow keys are media controls + - Below are home, end, pgup, and pgdn + - The left hand has all three types of braces + - Curly braces are under the index and middle fingers for easy access during programming, and because parentheses are already available through Space Cadet shift +- Adjust + - Function keys are located along the top row (reset is moved to accommodate this) \ No newline at end of file -- cgit v1.2.3 From 23867894c099411a3e630bdb171bf91ea75a6a7d Mon Sep 17 00:00:00 2001 From: zgtm Date: Wed, 15 Aug 2018 18:43:39 +0200 Subject: Layouts: Add default ortho 5x14 layout (#3656) * Add default ortho 5x14 layout * Fix layout_ortho_5x14: KC_EQLS -> KC_EQL --- layouts/default/ortho_5x14/default_ortho_5x14/keymap.c | 11 +++++++++++ layouts/default/ortho_5x14/layout.json | 5 +++++ layouts/default/ortho_5x14/readme.md | 3 +++ 3 files changed, 19 insertions(+) create mode 100644 layouts/default/ortho_5x14/default_ortho_5x14/keymap.c create mode 100644 layouts/default/ortho_5x14/layout.json create mode 100644 layouts/default/ortho_5x14/readme.md (limited to 'layouts') diff --git a/layouts/default/ortho_5x14/default_ortho_5x14/keymap.c b/layouts/default/ortho_5x14/default_ortho_5x14/keymap.c new file mode 100644 index 0000000000..2968cecdf1 --- /dev/null +++ b/layouts/default/ortho_5x14/default_ortho_5x14/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_5x14( + 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_ESC, KC_TAB, KC_Q, KC_W, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, + KC_DEL, 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_NUHS, + 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, + KC_LEFT, KC_RGHT, KC_LCTL, KC_LGUI, KC_LALT, KC_ENT, KC_ENT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_DOWN + ) +}; diff --git a/layouts/default/ortho_5x14/layout.json b/layouts/default/ortho_5x14/layout.json new file mode 100644 index 0000000000..e7703827e8 --- /dev/null +++ b/layouts/default/ortho_5x14/layout.json @@ -0,0 +1,5 @@ +["","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","","",""] diff --git a/layouts/default/ortho_5x14/readme.md b/layouts/default/ortho_5x14/readme.md new file mode 100644 index 0000000000..bf2af9a639 --- /dev/null +++ b/layouts/default/ortho_5x14/readme.md @@ -0,0 +1,3 @@ +# ortho_5x14 + + LAYOUT_ortho_5x14 -- cgit v1.2.3 From c19d949b72844120fff5159bc7e637ada4dd2579 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Wed, 15 Aug 2018 17:38:41 -0500 Subject: Keymap: Revamp replicaJunction keymaps (#3589) * Revamp replicaJunction keymaps Updates both the replicaJunction Ergodox and Atreus keymaps and moves most of the logic into a new user directory. * Cleanup as requested in #3589 * Slightly increased TAPPING_TERM * Fixed typo in #pragma once * Fix TAPPING_TERM redefined in config.h * Add include of replicaJunction.h Due to the tap dance references, without this include, I was getting compiler errors about both internal QMK items like `qk_tap_dance_state_t` and constants defined in my replicaJunction.h file like TD_LAYER_TOGGLE. Also remove some commented-out code that defined an enum which has since moved to replicaJunction.h. --- keyboards/atreus/keymaps/replicaJunction/config.h | 101 +-- keyboards/atreus/keymaps/replicaJunction/keymap.c | 260 ++------ .../keymaps/replicaJunction/kle/base-layer.txt | 34 + .../atreus/keymaps/replicaJunction/kle/e-layer.txt | 34 + .../keymaps/replicaJunction/kle/fn-layer.txt | 35 ++ .../atreus/keymaps/replicaJunction/kle/i-layer.txt | 34 + .../atreus/keymaps/replicaJunction/kle/r-layer.txt | 34 + .../keymaps/replicaJunction/kle/space-layer.txt | 34 + keyboards/atreus/keymaps/replicaJunction/readme.md | 102 ++- keyboards/atreus/keymaps/replicaJunction/rules.mk | 12 + layouts/community/ergodox/replicaJunction/config.h | 77 +-- layouts/community/ergodox/replicaJunction/keymap.c | 693 ++++++++++++--------- .../community/ergodox/replicaJunction/readme.md | 93 ++- layouts/community/ergodox/replicaJunction/rules.mk | 8 + users/replicaJunction/config.h | 72 +++ users/replicaJunction/readme.md | 14 + users/replicaJunction/replicaJunction.c | 149 +++++ users/replicaJunction/replicaJunction.h | 115 ++++ users/replicaJunction/rules.mk | 1 + 19 files changed, 1216 insertions(+), 686 deletions(-) create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/base-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/e-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/fn-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/i-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/r-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/kle/space-layer.txt create mode 100644 keyboards/atreus/keymaps/replicaJunction/rules.mk create mode 100644 layouts/community/ergodox/replicaJunction/rules.mk create mode 100644 users/replicaJunction/config.h create mode 100644 users/replicaJunction/readme.md create mode 100644 users/replicaJunction/replicaJunction.c create mode 100644 users/replicaJunction/replicaJunction.h create mode 100644 users/replicaJunction/rules.mk (limited to 'layouts') diff --git a/keyboards/atreus/keymaps/replicaJunction/config.h b/keyboards/atreus/keymaps/replicaJunction/config.h index 437aa662c8..8e786aa0da 100644 --- a/keyboards/atreus/keymaps/replicaJunction/config.h +++ b/keyboards/atreus/keymaps/replicaJunction/config.h @@ -1,94 +1,11 @@ -/* -Config file - Atreus QMK with replicaJunction layout +#pragma once -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. +// Layer definitions -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef CONFIG_H -#define CONFIG_H - -#include "config_common.h" - -/* USB Device descriptor parameter */ - -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Technomancy -#define PRODUCT Atreus -#define DESCRIPTION q.m.k. keyboard firmware for Atreus - -/* key matrix size */ -#define MATRIX_ROWS 4 -#define MATRIX_COLS 11 - -// Change this to how you wired your keyboard -// COLS: Left to right, ROWS: Top to bottom -#if defined(ATREUS_ASTAR) -# define MATRIX_ROW_PINS { D0, D1, D3, D2 } -# define MATRIX_COL_PINS { D7, C6, B5, B4, E6, D4, B6, F6, F7, D6, B7 } -# define UNUSED_PINS -#elif defined(ATREUS_TEENSY2) -# define MATRIX_ROW_PINS { D0, D1, D2, D3 } -# define MATRIX_COL_PINS { F6, F5, F4, B7, B6, B5, B4, B3, B2, B1, B0 } -# define UNUSED_PINS -#endif - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ -//#define BACKLIGHT_LEVELS 3 - -/* Set 0 if debouncing isn't needed */ -// Default: 5 -#define DEBOUNCING_DELAY 6 - -// I don't have any locking keys, so I don't need these features - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -//#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -//#define LOCKING_RESYNC_ENABLE - -/* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ -) - -/* Prevent modifiers from sticking when switching layers */ -#define PREVENT_STUCK_MODIFIERS - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - -#endif +#define L_COLEMAK 0 +#define L_NUM 1 +#define L_EXTEND 2 +#define L_FUNC 3 +#define L_LL_R 4 +#define L_LL_E 5 +#define L_LL_I 6 diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 2d8f0d70f8..c3cc371151 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -1,212 +1,78 @@ /* * Keyboard: Atreus * Keymap: replicaJunction - * Version: 0.4 - * - * This keymap is designed to complement my Ergodox keyboard layout, found in keyboards/ergodox_ez. - * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox. I now - * have both keyboards, so I've designed these layouts in an effort to make switching between the - * two as easy as possible. - * - * Clearly, the Atreus is the limiting factor in this equation, so I've taken heavy advantage of - * function and dual-role keys. - * - * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found - * here: https://colemakmods.github.io/mod-dh/ + * Version: 2.1 */ #include QMK_KEYBOARD_H - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. - -// Note that whatever is set as layer 0 will be the default layer of the keyboard. - -#define _CO 0 // Colemak -#define _QW 1 // QWERTY -#define _GA 2 // Gaming -#define _EX 3 // Extend -#define _NU 4 // Numpad -#define _FN 5 // Function - -// Some quick aliases, just to make it look pretty -#define _______ KC_TRNS -#define KCX_CA LCTL(KC_LALT) -#define KCX_CS LCTL(KC_LSFT) -#define KCX_CSA LCTL(LSFT(KC_LALT)) -#define KCX_LST LSFT(KC_TAB) -#define KX_COPY LCTL(KC_C) -#define KX_CUT LCTL(KC_X) -#define KX_PAST LCTL(KC_V) -#define KX_UNDO LCTL(KC_Z) - -#define _USER 0 // User macro - -; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. +#include "replicaJunction.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* - * Colemak-ModDH - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | F | P | B | | J | L | U | Y | ; | - * +------+------+------+------+------| +------+------+------+------+------| - * | A | R | S | T | G | | M | N | E | I | O | - * +------+------+------+------+------| +------+------+------+------+------| - * |Z Shft| X | C | D | V | ,------. ,------. | K | H | , | . |/ Shft| - * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| - * | Esc | Gui | Tab | _FN | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_CO] = LAYOUT( - KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, - KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, - SFT_T(KC_Z), KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_LGUI, KC_TAB, MO(_FN), KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL - ), - - /* - * QWERTY - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * +------+------+------+------+------| +------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * +------+------+------+------+------| +------+------+------+------+------| - * |Z Shft| X | C | V | B | ,------. ,------. | N | M | , | . |/ Shft| - * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| - * | Esc | Gui | Tab | _FN | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_QW] = LAYOUT( /* Qwerty */ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_LGUI, KC_TAB, MO(_FN), KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL - ), - /* - * Extend - * - * Ctrl+` is a keyboard shortcut for the program ConEmu, which brings up a dropdown console window. - * - * Also note that some dual-role keys are overridden here with their modifiers - * - * ,----------------------------------. ,----------------------------------. - * | | | | |Ctrl `| | PgUp | Home | Up | End | Del | - * +------+------+------+------+------| +------+------+------+------+------| - * | Gui | Shift| Alt | Ctrl | | | PgDn | Left | Down | Right| Bksp | - * +------+------+------+------+------| +------+------+------+------+------| - * | Shift| Cut | Copy | | Paste| ,------. ,------. | | ^Tab | Tab | |Insert| - * +------+------+------+------+------| | Del | | Enter| +------+------+------+------+------| - * | | | | | | | | | | | Space|XXXXXX| | |PrntSc| - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_EX] = LAYOUT( /* Extend */ - _______, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, - KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - KC_LSFT, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, KC_TAB, _______, KC_INS, - _______, _______, _______, _______, _______, KC_DEL, KC_ENT, KC_SPC, _______, _______, _______, KC_PSCR - ), +[L_COLEMAK] = LAYOUT( + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R_LT, KC_S_LT, KC_T, KC_G, KC_M, KC_N, KC_E_LT, KC_I_LT, KC_O, + KX_Z_MT, KX_X_MT, KX_C_MT, KX_D_MT, KC_V, KC_K, KX_H_MT, KX_COMT, KX_DOMT, KX_SLMT, + TD_LAYR, KC_LGUI, KC_TAB, KC_LSFT, KX_BKNM, KX_DCTL, KX_NALT, KX_SPAC, KC_RSFT, KC_MINS, KC_QUOT, KC_EQL +) +, + +[L_NUM] = LAYOUT( + KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_SLSH, KC_COLN, KC_7, KC_8, KC_9, KC_SLSH, + KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_PIPE, KC_HASH, KC_4, KC_5, KC_6, KC_ASTR, + KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_BSLS, KC_BSPC, KC_1, KC_2, KC_3, KC_MINS, + _______, KC_AMPR, KC_TILD, KC_GRV, ooooooo, _______, KC_ENT, MO_FUNC, KC_0, KC_DOT, KC_EQL, KC_PLUS +) +, + +[L_EXTEND] = LAYOUT( + _______, _______, _______, KC_APP, KX_CGR, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, + KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, + _______, _______, _______, KX_SRCH, KX_PAST, _______, KX_STAB, KC_TAB, _______, KC_INS, + _______, _______, _______, _______, MO_FUNC, KC_DEL, KC_ENT, _______, _______, _______, _______, KC_PSCR +) +, + +[L_FUNC] = LAYOUT( + _______, _______, M_LCLIK, M_RCLIK, M_MCLIK, KC_VOLU, KC_F9, KC_F10, KC_F11, KC_F12, + KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, M_WHLUP, KC_MUTE, KC_F5, KC_F6, KC_F7, KC_F8, + M_LEFT, M_DOWN, M_UP, M_RIGHT, M_WHLDN, KC_VOLD, KC_F1, KC_F2, KC_F3, KC_F4, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) +, + +[L_LL_R] = LAYOUT( + _______, _______, _______, _______, _______, KC_COLN, KC_P7, KC_P8, KC_P9, KC_PSLS, + _______, ooooooo, KC_AMPR, KC_PIPE, _______, KC_HASH, KC_P4, KC_P5, KC_P6, KC_PAST, + _______, _______, _______, _______, _______, KC_BSPC, KC_P1, KC_P2, KC_P3, KC_PMNS, + _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, KC_PLUS +) +, + +[L_LL_E] = LAYOUT( + RJ_MAKE, RJ_EQ, RJ_LEQ, RJ_GEQ, RJ_GEQR, _______, _______, _______, _______, _______, + _______, _______, RJ_SELS, RJ_DUND, _______, _______, _______, ooooooo, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) +, + +[L_LL_I] = LAYOUT( + KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_SLSH, _______, KC_UNDS, KC_GRV, _______, _______, + KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_MINS, KC_QUOT, ooooooo, _______, + KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_TILD, KC_DQT, _______, _______, + _______, KC_AMPR, KC_LABK, KC_RABK, _______, _______, _______, _______, _______, _______, _______, _______ +) - /* - * Numbers and symbols - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | { | } | & | | / | 7 | 8 | 9 | * | - * +------+------+------+------+------| +------+------+------+------+------| - * | # | $ | ( | ) | ~ | | | | 4 | 5 | 6 | - | - * +------+------+------+------+------| +------+------+------+------+------| - * | % | ^ | [ | ] | ` | ,------. ,------. | \ | 1 | 2 | 3 | + | - * +------+------+------+------+------| | | | | +------+------+------+------+------| - * | | _GA | | | | | | | | |XXXXXX| 0 | . | = | | - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_NU] = LAYOUT( /* Numbers and symbols */ - KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, - KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, - KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, - _______, TG(_GA), _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ - ), - - /* - * Functions - * - * ,----------------------------------. ,----------------------------------. - * | Caps | F9 | F10 | F11 | F12 | | _USER|Whl Up| MUp |Whl Dn| | - * +------+------+------+------+------| +------+------+------+------+------| - * | | F5 | F6 | F7 | F8 | | Vol ^| MLeft| MDown|MRight| | - * +------+------+------+------+------| +------+------+------+------+------| - * | | F1 | F2 | F3 | F4 | ,------. ,------. | Vol v| | | | | - * +------+------+------+------+------| | | |RClick| +------+------+------+------+------| - * | | | |XXXXXX| | | | | | |LClick|MClick| _CO | _GA | RESET| - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_FN] = LAYOUT( /* Functions */ - KC_CAPS, KC_F9, KC_F10, KC_F11, KC_F12, M(_USER),KC_WH_U, KC_MS_U, KC_WH_D, _______, - _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_R, _______, - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_VOLD, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, KC_BTN2, KC_BTN1, KC_BTN3, DF(_CO), DF(_QW), RESET - ), - - /* - * Gaming - * - * ,----------------------------------. ,----------------------------------. - * | | | | | | | |Whl Up| MUp |Whl Dn| | - * +------+------+------+------+------| +------+------+------+------+------| - * | | | | | | | | MLeft| MDown|MRight| | - * +------+------+------+------+------| +------+------+------+------+------| - * | Z | | | | | ,------. ,------. | | | | | | - * +------+------+------+------+------| | Bksp | |RClick| +------+------+------+------+------| - * | | _GA | | Shift| Space| | | | | |LClick|MClick| | | | - * `----------------------------------' `------' `------' `----------------------------------' - * - */ - [_GA] = LAYOUT( /* Gaming */ - _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, - _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, - KC_Z, _______, _______, _______, _______, _______, _______, KC_MS_D, _______, _______, - _______, TG(_GA), _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, KC_BTN3, _______, _______, _______ - ) }; -/* - * Template - * - * ,----------------------------------. ,----------------------------------. - * | | | | | | | | | | | | - * +------+------+------+------+------| +------+------+------+------+------| - * | | | | | | | | | | | | - * +------+------+------+------+------| +------+------+------+------+------| - * | | | | | | ,------. ,------. | | | | | | - * +------+------+------+------+------| | | | | +------+------+------+------+------| - * | | | | | | | | | | | | | | | | - * `----------------------------------' `------' `------' `----------------------------------' - * - */ +// Uncomment any of these to add keyboard-specific code. Otherwise, they +// will use user defaults defined in the replicaJunction.h header file. -const uint16_t PROGMEM fn_actions[] = { +// bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { +// return true; +// } -}; +// void matrix_init_keymap(void) {}; -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { - // MACRODOWN only works in this function - switch(id) { - case _USER: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - } - return MACRO_NONE; -}; +// void matrix_scan_keymap(void) {}; diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/base-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/base-layer.txt new file mode 100644 index 0000000000..aec41316f2 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/base-layer.txt @@ -0,0 +1,34 @@ +[{r:10,rx:1,y:-0.1,x:2},"F"], +[{y:-0.65,x:1},"W",{x:1},"P"], +[{y:-0.75},"Q"], +[{y:-0.9,x:4},"B"], +[{y:-0.7,x:2},"S"], +[{y:-0.65,x:1,c:"#45b866"},"R",{x:1,c:"#cccccc"},"T"], +[{y:-0.75},"A"], +[{y:-0.9,x:4},"G"], +[{y:-0.7,x:2},"C\n\n\n"], +[{y:-0.65,x:1},"X\n\n\nCtrl",{x:1},"D\n\n\nCtrlAlt"], +[{y:-0.75},"Z"], +[{y:-0.9,x:4},"V\n\n\nAlt"], +[{y:-0.75,x:5,h:1.5},"Del\nCtrl"], +[{y:-0.95,x:2},"Tab"], +[{y:-0.65,x:1,a:7,fa:[7]},"",{x:1,a:4,f:3},"Shift"], +[{y:-0.75,f:3},"Layer tap"], +[{y:-0.9,x:4,f:3},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2,f:3},"U"], +[{y:-0.65,x:1,f:3},"L",{x:1,f:3},"Y"], +[{y:-0.75,x:4,f:3},":\n;"], +[{y:-0.9,f:3},"J"], +[{y:-0.7,x:2,c:"#ffb07b",f:3},"E"], +[{y:-0.65,x:1,c:"#cccccc",f:3},"N",{x:1,c:"#5dcde3",f:3},"I"], +[{y:-0.75,x:4,c:"#cccccc",f:3},"O"], +[{y:-0.9,f:3},"M"], +[{y:-0.7,x:2,f:3},"<\n,\n\nCtrlAlt"], +[{y:-0.65,x:1,f:3},"H\n\n\nAlt",{x:1,f:3},">\n.\n\n"], +[{y:-0.75,x:4,f:3},"?\n/\n\nCtrl"], +[{y:-0.9,f:3},"K"], +[{y:-0.75,x:-1,f:3,h:1.5},"Enter\nAlt"], +[{y:-0.95,x:2,f:3},"_\n-"], +[{y:-0.65,x:1,f:3},"Shift",{x:1,f:3},"\"\n'"], +[{y:-0.75,x:4,f:3},"+\n="], +[{y:-0.9,c:"#ffe08d",f:3},"Space"] diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/e-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/e-layer.txt new file mode 100644 index 0000000000..2b4105b2b4 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/e-layer.txt @@ -0,0 +1,34 @@ +[{r:10,rx:1,y:-0.1,x:2},"<="], +[{y:-0.65,x:1},"==",{x:1},">="], +[{y:-0.75},"make"], +[{y:-0.9,x:4},"=>"], +[{y:-0.7,x:2},"select *"], +[{y:-0.65,x:1,a:7},"",{x:1,a:4},"$_"], +[{y:-0.75,a:7},""], +[{y:-0.9,x:4},""], +[{y:-0.7,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{y:-0.75,x:5,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""], +[{y:-0.7,x:2,c:"#ffb07b"},""], +[{y:-0.65,x:1,c:"#cccccc"},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""], +[{y:-0.7,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""], +[{y:-0.75,x:-1,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""] diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/fn-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/fn-layer.txt new file mode 100644 index 0000000000..d45fb7e97d --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/fn-layer.txt @@ -0,0 +1,35 @@ +[{r:10,rx:1,y:-0.1,x:2},"RClick"], +[{y:-0.65,x:1,a:7},"",{x:1,a:4},"LClick"], +[{y:-0.75,a:7},""], +[{y:-0.9,x:4,a:4},"MClick"], +[{y:-0.7,x:2},"Alt"], +[{y:-0.65,x:1},"Shift",{x:1},"Ctrl"], +[{y:-0.75,a:7,fa:[7]},""], +[{y:-0.9,x:4,a:4,fa:[5,0,0,0,0,0,0,0,0,0,7]},"\n\n\n\n\n\n\n\n\n\n"], +[{y:-0.7,x:2,fa:[0,0,0,0,0,0,0,0,0,0,7]},"\n\n\n\n\n\n\n\n\n\n"], +[{y:-0.65,x:1},"\n\n\n\n\n\n\n\n\n\n",{x:1},"\n\n\n\n\n\n\n\n\n\n"], +[{y:-0.75},"\n\n\n\n\n\n\n\n\n\n"], +[{y:-0.9,x:4,fa:[5,0,0,0,0,0,0,0,0,0,7]},"\n\n\n\n\n\n\n\n\n\n"], +[{y:-0.75,x:5,a:7,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4,c:"#ffe08d"},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2,c:"#cccccc",a:4,f:3},"F10"], +[{y:-0.65,x:1,f:3},"F9",{x:1,f:3},"F11"], +[{y:-0.75,x:4,f:3},"F12"], +[{y:-0.9,a:7},""], +[{y:-0.7,x:2,a:4,f:3},"F6"], +[{y:-0.65,x:1,f:3},"F5",{x:1,f:3},"F7"], +[{y:-0.75,x:4,f:3},"F8"], +[{y:-0.9,a:7},""], +[{y:-0.7,x:2,a:4,f:3},"F2"], +[{y:-0.65,x:1,f:3},"F1",{x:1,f:3},"F3"], +[{y:-0.75,x:4,f:3},"F4"], +[{y:-0.9,a:7},""], +[{y:-0.75,x:-1,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9,c:"#ffe08d"},""] + diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/i-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/i-layer.txt new file mode 100644 index 0000000000..45bef783a3 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/i-layer.txt @@ -0,0 +1,34 @@ +[{r:10,rx:1,y:-0.1,x:2},"{"], +[{y:-0.65,x:1},"@",{x:1},"}"], +[{y:-0.75},"!"], +[{y:-0.9,x:4},"/"], +[{y:-0.7,x:2},"("], +[{y:-0.65,x:1},"$",{x:1},")"], +[{y:-0.75},"#"], +[{y:-0.9,x:4},"|"], +[{y:-0.7,x:2},"["], +[{y:-0.65,x:1},"^",{x:1},"]"], +[{y:-0.75},"%"], +[{y:-0.9,x:4},"\\"], +[{y:-0.75,x:5,a:7,h:1.5},""], +[{y:-0.95,x:2,a:4},"<"], +[{y:-0.65,x:1},"&",{x:1},">"], +[{y:-0.75,a:7},""], +[{y:-0.9,x:4},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2,a:4},"`"], +[{y:-0.65,x:1},"_",{x:1,a:7},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""], +[{y:-0.7,x:2,a:4},"'"], +[{y:-0.65,x:1},"-",{x:1,c:"#5dcde3",a:7},""], +[{y:-0.75,x:4,c:"#cccccc"},""], +[{y:-0.9},""], +[{y:-0.7,x:2,a:4},"\""], +[{y:-0.65,x:1},"~",{x:1,a:7},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""], +[{y:-0.75,x:-1,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4},""], +[{y:-0.9},""] diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/r-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/r-layer.txt new file mode 100644 index 0000000000..3d44383863 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/r-layer.txt @@ -0,0 +1,34 @@ +[{r:10,rx:1,y:-0.1,x:2,a:7},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{y:-0.7,x:2,a:4},"&"], +[{y:-0.65,x:1,c:"#45b866",a:7},"",{x:1,c:"#cccccc",a:4},"|"], +[{y:-0.75,a:7},""], +[{y:-0.9,x:4},""], +[{y:-0.7,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{y:-0.75,x:5,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2,a:4},"8"], +[{y:-0.65,x:1},"7",{x:1},"9"], +[{y:-0.75,x:4},"/"], +[{y:-0.9},":"], +[{y:-0.7,x:2},"5"], +[{y:-0.65,x:1},"4",{x:1},"6"], +[{y:-0.75,x:4},"*"], +[{y:-0.9},"#"], +[{y:-0.7,x:2},"2"], +[{y:-0.65,x:1},"1",{x:1},"3"], +[{y:-0.75,x:4},"-"], +[{y:-0.9},""], +[{y:-0.75,x:-1,a:7,h:1.5},""], +[{y:-0.95,x:2,a:4},"."], +[{y:-0.65,x:1},"0",{x:1},"="], +[{y:-0.75,x:4},"+"], +[{y:-0.9},"Space"] diff --git a/keyboards/atreus/keymaps/replicaJunction/kle/space-layer.txt b/keyboards/atreus/keymaps/replicaJunction/kle/space-layer.txt new file mode 100644 index 0000000000..d1ffa35f89 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/kle/space-layer.txt @@ -0,0 +1,34 @@ +[{r:10,rx:1,y:-0.1,x:2,a:7},""], +[{y:-0.65,x:1},"",{x:1,fa:[7]},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{y:-0.7,x:2,a:4,f:3},"Alt"], +[{y:-0.65,x:1,f:3},"Shift",{x:1,f:3},"Ctrl"], +[{y:-0.75,a:7},""], +[{y:-0.9,x:4},""], +[{y:-0.7,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{y:-0.75,x:5,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75},""], +[{y:-0.9,x:4},""], +[{r:-10,rx:7,ry:0.965,y:-0.2,x:2},""], +[{y:-0.65,x:1,a:4,f:3},"Home",{x:1,f:3},"End"], +[{y:-0.75,x:4,f:3},"Delete"], +[{y:-0.9,f:3},"PgUp"], +[{y:-0.7,x:2,a:7},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4,a:4,f:3},"Bksp"], +[{y:-0.9,f:3},"PgDn"], +[{y:-0.7,x:2,f:3},"Tab"], +[{y:-0.65,x:1,f:3},"Shift+\n\n\n\n\n\nTab",{x:1,a:7},""], +[{y:-0.75,x:4,a:4,f:3},"Insert"], +[{y:-0.9,a:7},""], +[{y:-0.75,x:-1,h:1.5},""], +[{y:-0.95,x:2},""], +[{y:-0.65,x:1},"",{x:1},""], +[{y:-0.75,x:4,a:4,f:3},"Prnt Scrn"], +[{y:-0.9,c:"#ffe08d",a:7},""] diff --git a/keyboards/atreus/keymaps/replicaJunction/readme.md b/keyboards/atreus/keymaps/replicaJunction/readme.md index 6a330bdbfc..f1d6c47b13 100644 --- a/keyboards/atreus/keymaps/replicaJunction/readme.md +++ b/keyboards/atreus/keymaps/replicaJunction/readme.md @@ -1,61 +1,103 @@ -# replicaJunction - Atreus Layout # +# replicaJunction - Atreus Layout This layout is designed to make the absolute most out of the Atreus 40% keyboard. -I was enchanted with the idea of the Atreus keyboard after using my Ergodox for several months. I wanted something of a similar form factor that was easily portable, so I could bring and transport a keyboard to my workplace without much hassle. After building the Atreus keyboard, though, I realized very quickly that the 40% form factor requires a lot more creativity than a full-size keyboard (even one as strangely-shaped as the Ergodox). +This layout is probably not perfect for you. That's okay! Use it for ideas as you design your own perfect layout. -The default Atreus keyboard layout provides all the necessary keys in order to function with the keyboard, but as a programmer, I needed quicker access to just about everything. I noticed that the default layer didn't include any dual-role keys, and so I started on my journey to build my perfect layout for the Atreus. +Most of the custom logic in this keyboard is actually not in these files. Instead, it's in the directory `/users/replicaJunction` (from the root of the QMK repo). This allows me to share macros and custom logic between multiple keyboards. A `process_record_keyboard()` function defined weakly in `replicaJunction.h` allows keyboards to process records individually as well without overriding the `process_record_user()` function. (My Ergodox uses this to handle its LEDs, for example.) -I won't claim that this layout is perfect for everyone. It does make several significant changes from the "normal" Atreus layout. In my own use, though, I've found this keyboard turbocharges my Atreus, and gives it the power of a full-size keyboard without the size. +The default letter layout in this keymap is [Colemak-ModDH](https://colemakmods.github.io/mod-dh/). I use the "matrix version" of that layout, which retains the M key on the home row as in normal Colemak. -## Base Layer ## +## Design Goals -![Atreus base layout](http://imgur.com/YbOjS7O) +I designed this layout with the following goals in mind: -The letters on this layout are arranged in the [Colemak Mod-DH layout](https://colemakmods.github.io/mod-dh/). +* Nothing may interfere with ordinary typing. +* Symbols need to be accessible quickly and organized in a manner I can remember. +* Limit more difficult finger movements (and pinky usage in general). -The primary mechanism for the Shift keys in this keyboard are the dual-role Z and slash keys. Pressing the key sends the keystroke, while holding the key sends a shift. This is a design choice taken from the xyverz layout, and one I find much more intuitive than a thumb shift. In addition, the pinky doesn't need to stretch as far to reach these keys as it does to reach a standard Shift key. +### Nothing may interfere with ordinary typing -Occasionally, when typing the letter Z, I'll hold the key down a fraction of a second too long, and the keyboard will shift instead. If you're not a confident typist, this dual-role Shift key layout is probably not a good solution. In that case, I'd suggest moving Shift onto the Backspace key (press for Backspace, hold for Shift). +For a long time, this meant that I couldn't use letters or home row keys as dual-role keys. I'm a fast typer, and I'm sometimes already typing the next letter before I've fully released the previous one. Normal keyboards don't care about this, but if I started adding dual-role functionality to letters, I found that I would sometimes type the next letter before releasing the layer toggle, and the letter I tried to send would still be sent under the layer I thought I'd left off. -In addition to the Shift keys, there are three dual-purpose keys: Ctrl (Delete), Alt (Enter), and Space (Number layer). In QMK, these dual-role keys can be made to hold their primary key with a tap and hold. For example, if I wanted to insert a long string of Spaces, I would tap the Space key, then tap it again and hold. A single press and hold would trigger the secondary function of the key instead. +Fortunately, though, QMK has addressed this with the `PERMISSIVE_HOLD` flag. [Details are on the QMK docs page.](https://docs.qmk.fm/#/feature_advanced_keycodes?id=permissive-hold) -## Extend Layer ## +Using that flag, I'm comfortable having layer shift keys on the home row, and this goes a long way to eliminate finger stress. -![Atreus extend layer](http://imgur.com/WiKkMQw) +### Sympols need to be accessible quickly -This layout is designed primarily for keyboard navigation. Arrow keys are easily accessible under the right hand (a welcome change from the original Atreus layout, which places them under the left hand), along with Home/End and PgUp/PgDn. +Symbols are available under my left hand by holding the I key (on my right hand). I've grouped parenthesis, slashes, and braces together; the remaining symbols are ordered in the same way as they appear on USA keycap legends (for example, 1 is !, so that symbol is first in my lineup). Practically, I just had to get used to these other "misc" symbols. -Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl key in an easy-to-reach location. +This also means that some symbols are accessible in more than one way. For example, the carats (greater than and less than) are available both in the "normal" location (Shift+Comma / Shift+Period) and on the symbol layer. I make regular changes to some of the symbols I don't use as commonly as I think of them. -For the common Ctrl shortcuts, I also added some hotkeys to this layer over the letter keys they are associated with. This gives the Extend key some extra utility by letting it "feel" like a Ctrl key in some cases. +### Limit more difficult finger movements -The Space key exists to prevent going from this layer directly into the Number layer. Similarly, the Shift key on the left pinky helps make sure that the normal letter (Z) doesn't fire. +This is why I kept trying to put layer toggles on the home row keys instead of just placing them on random thumb keys. I suffer from RSI, and it's important for me to watch out for more "stressful" finger movements. -## Number and Symbol Layer ## +The home row is the easiest row for your fingers to hit, followed by the upper row, and the lower row is noticeably more difficult to press. Because of this, I favored the upper row over the lower one any time I had the option to do so. -![Atreus number and symbol layer](http://imgur.com/gfTXcjC) +## Features -This layer provides the only way of accessing number keys on this keyboard, since it's too small for its own number row. Note that even though they are laid out in the number pad fashion, they send the "regular" number keystrokes. Games and programs that specifically use NumPad keys are not supported in this layout at the moment. +### ZXC Mods -This layer also provides plenty of symbol shortcuts. Most of these can be accessed through other means (like Shift+8 for the asterisk), but having shortcut keys to them makes for one less keypress, which adds up quickly when using these symbols on a regular basis. I've been through many revisions of this concept on my Ergodox as well as the Atreus, and I've finally arrived at this layout as the one that provides the symbols I need most frequently in places I can think to expect them. The Ordinary layout from the Ergodox-EZ keyboard in this repository was a large influence in this design. +Keys on the bottom row of each half of this keyboard can be held to send modifier keys. I've tried to map this in a relatively logical manner: -## Function Layer ## +* Z / Slash: Ctrl +* X / Period: GUI +* C / Comma: Ctrl+Alt +* D / H: Alt -![Atreus function layer](http://imgur.com/m5x0MxZ) +Combined with Shift keys on the thumbs, this makes all modifiers quick to access on either hand. -Function keys (F1-F12) are on this layer. Their layout in groups of four comes from Jeremy's Atreus layout in this repository. I'd been using 1-9 in a numpad layout, then adding 10-12 on the side...I suppose it took seeing someone else do it this way for me to realize how much more sense it makes. +### Layer tap dance -On the right side are mouse keys - cursor left/right/up/down, and scroll up/down. Volume keys are also here, though really only because there was room for them (I'm not entirely happy with their positions). +The lower-left key on the left hand can be used to apply or remove layers based on a number of taps: -Finally, the reset key is on this layer, as well as toggles from Colemak to QWERTY and back. The QWERTY layer is not currently documented, but it is functionally identical to the base layer except for letter positions. +* 1 tap sends Escape, and also disables any persistent layers. +* 2 taps enables the Number pad layer. +* 5 or more taps resets the keyboard. -## Gaming Layer ## +## Extend Layer -![Atreus gaming layer](http://imgur.com/4S5AO4E) +[Originally found on the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/), having a QMK-powered keyboard allows a super easy implementation of this concept. The idea is to place commonly-used keys under easy reach of your hands. Since I work with text often, my most common needs are things like Ctrl+Shift+arrow keys, and they're easy to access using this layer. (While technically it's four keypresses instead of just three, since it takes one key to enter the layer, that one key is a thumb button and the other three are all on the home row, so I find it much more comfortable than modifiers on a traditional keyboard.) -This is a small layer developed to allow some simple gameplay without a mouse. This layer is a toggle (from the Number layer), so it is designed to stay on while in use. +Also featured in this layer is easy access to Tab, plus a Shift+Tab key. Alt-Tabbing back and forth, along with Ctrl-Tab, are super easy and friendly. When I need Ctrl+Alt+Delete, I typically use the ones found on this layer. -The keys on the left hand bring Space into the left thumb's reach, as well as overriding the dual-role Shift with its standard function (Z in both QWERTY and in Colemak). This allows easy Shift presses without blocking the Z key, commonly used in games. +## Layout Images -I would probably not consider the Atreus a hard-core gaming keyboard in the first place, and this layout does have the huge problem of blocking access to the number keys, but for more casual games, it plays quite well. I've used it quite a bit on Minecraft, for example, and I'm quite pleased with it. \ No newline at end of file +Colored keys indicate keys that swap to another layer when held. + +These images are located in the `kle` folder of this directory. Also included is the "raw data" from Keyboard-Layout-Editor in a corresponding text file. + +### Base layer + +![Base layer](kle/base-layer.png) + +### R layer + +![R layer](kle/r-layer.png) + +### E layer + +![E layer](kle/i-layer.png) + +### I layer + +![I layer](kle/i-layer.png) + +### Space layer + +![Space layer](kle/space-layer.png) + +### Function layer + +![Function layer](kle/fn-layer.png) + +## Credits + +* [Drashna](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/readme.md) + * User / keymap function ideas +* [Jeremy](https://github.com/qmk/qmk_firmware/blob/master/keyboards/atreus/keymaps/jeremy/readme.md) + * Sanity check on the Function keys (_of course they should be in rows of 4, not rows of 3 like a number pad. Why did I ever use anything else?_) +* [DreymaR of the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/) + * Original idea of the Extend layer diff --git a/keyboards/atreus/keymaps/replicaJunction/rules.mk b/keyboards/atreus/keymaps/replicaJunction/rules.mk new file mode 100644 index 0000000000..9ff9c3fbb2 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/rules.mk @@ -0,0 +1,12 @@ +# https://docs.qmk.fm/getting_started_make_guide.html + +MOUSEKEY_ENABLE = yes +TAP_DANCE_ENABLE = yes +# KEY_LOCK_ENABLE = yes +# CONSOLE_ENABLE = no +# COMMAND_ENABLE = no + +# Use the "Unicode map" method +# UNICODE_ENABLE = no +# UNICODEMAP_ENABLE = yes + diff --git a/layouts/community/ergodox/replicaJunction/config.h b/layouts/community/ergodox/replicaJunction/config.h index c69ce8cea9..9ffd74dccd 100644 --- a/layouts/community/ergodox/replicaJunction/config.h +++ b/layouts/community/ergodox/replicaJunction/config.h @@ -1,64 +1,13 @@ -/* -Config file - Ergodox QMK with replicaJunction layout - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef KEYBOARDS_ERGODOX_CONFIG_H_ -#define KEYBOARDS_ERGODOX_CONFIG_H_ - -#include QMK_KEYBOARD_CONFIG_H - - -#undef MOUSEKEY_DELAY -#undef MOUSEKEY_INTERVAL -#undef MOUSEKEY_MAX_SPEED -#undef MOUSEKEY_TIME_TO_MAX - -#define MOUSEKEY_DELAY 100 -#define MOUSEKEY_INTERVAL 20 -#define MOUSEKEY_MAX_SPEED 3 -#define MOUSEKEY_TIME_TO_MAX 10 - -#define TAPPING_TOGGLE 1 - -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - -// MS the button needs to be held before a tap becomes a hold (default: 200) -#define TAPPING_TERM 200 - -#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) - -// I don't have any locking keys, so I don't need these features - - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ - -//#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -//#define LOCKING_RESYNC_ENABLE - -/* Prevent modifiers from sticking when switching layers */ -/* Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers */ -#define PREVENT_STUCK_MODIFIERS - -/* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ - keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ -) - - -#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ +#pragma once + +// Layer definitions + +#define L_COLEMAK 0 +#define L_QWERTY 1 +#define L_NUM 2 +#define L_EXTEND 3 +#define L_FUNC 4 +#define L_GAMING 5 +#define L_LL_R 6 +#define L_LL_E 7 +#define L_LL_I 8 diff --git a/layouts/community/ergodox/replicaJunction/keymap.c b/layouts/community/ergodox/replicaJunction/keymap.c index fc80059276..ce0400be5c 100644 --- a/layouts/community/ergodox/replicaJunction/keymap.c +++ b/layouts/community/ergodox/replicaJunction/keymap.c @@ -1,333 +1,424 @@ /* * Keyboard: Ergodox * Keymap: replicaJunction - * Version: 1.2 - * - * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. - * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now - * have both keyboards, so I've designed these layouts in an effort to make switching between the - * two as easy as possible. - * - * I've also tried to make use of the extra keys on the Ergodox in as logical of a manner as possible, - * adding to the layers in the Atreus config without disturbing what's there already. This allows for - * things like F11-F20, the Application (Menu) key, and better media key placement. - * - * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found - * here: https://colemakmods.github.io/mod-dh/ + * Version: 2.1 */ #include QMK_KEYBOARD_H -#include "debug.h" -#include "action_layer.h" - -#define _CO 0 // Colemak -#define _QW 1 // QWERTY -#define _ME 2 // media keys -#define _NU 3 // numpad -#define _EX 4 // extend -#define _GA 5 // mouse overlay for gaming - -// Some quick aliases, just to make it look pretty -#define _______ KC_TRNS -#define KCX_CGR LCTL(KC_GRV) -#define KX_STAB LSFT(KC_TAB) -#define KX_COPY LCTL(KC_C) -#define KX_CUT LCTL(KC_X) -#define KX_PAST LCTL(KC_V) -#define KX_UNDO LCTL(KC_Z) - -; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. +#include "config.h" +#include "replicaJunction.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* - * Keymap: Colemak-ModDH - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| ~GA | | Left | Right| - * ,------|------|------| |------+------+------. - * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | Down | | | - * `--------------------' `--------------------' - */ -[_CO] = LAYOUT_ergodox( - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_LCTL,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, - KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, - - KC_LCTL, TG(_GA), - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, - KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, - KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, - - KC_LEFT, KC_RGHT, - KC_UP, - KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) - ), - - /* - * Keymap: QWERTY layout. - * - * This is optimized for gaming, not typing, so there aren't as many macros - * as the Dvorak layer. Some of the keys have also been moved to "game- - * like" locations, such as making the spacebar available to the left thumb, - * and repositioning the arrow keys at the bottom right corner. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LCtrl | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | Z | X | C | V | B | | | | N | M | , | . | / | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | = | \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| ~GA | | Left | Right| - * ,------|------|------| |------+------+------. - * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | Down | | | - * `--------------------' `--------------------' - */ -[_QW] = LAYOUT_ergodox( // Layer1: QWERTY - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_LCTL,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, - KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - KC_LGUI,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), - - KC_LCTL,TG(_GA), - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, - KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, - KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, - KC_BSLS, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, - - KC_LEFT, KC_RGHT, - KC_UP, - KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) - ), - - /* - * Keymap: Numbers and symbols - * - * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. - * That's why the Num Lock key exists on this layer - just in case. - * - * This layer also contains the layout switches. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ~ |------| |------| | | 4 | 5 | 6 | - | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ` | | | | \ | 1 | 2 | 3 | + | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | |QWERTY|Colemk| | | | 0 | . | = | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * |NumLck| RESET| | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_NU] = LAYOUT_ergodox( - // left hand - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, - _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, - _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, - _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, _______, - _______, DF(_QW), DF(_CO), _______, _______, - - KC_NLCK,RESET, - _______, - _______,_______,_______, - // right hand - _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, KC_SLSH, KC_P7, KC_P8, KC_P9, KC_PAST, _______, - KC_PIPE, KC_P4, KC_P5, KC_P6, KC_PMNS, _______, - _______, KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PPLS, _______, - KC_P0, KC_PDOT, KC_EQL, _______, _______, - - _______, _______, - _______, - _______, _______, _______ - ), - - /* - * Keymap: Extend - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F11 | F12 | F13 | F14 | F15 | Mute | | | F16 | F17 | F18 | F19 | F20 | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | Ctrl`| Vol | | | PgUp | Home | Up | End | Del | | - * |--------+------+------+------+------+------| Up | | |------+------+------+------+------+--------| - * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | Menu | - * |--------+------+------+------+------+------| Vol | | |------+------+------+------+------+--------| - * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| PrntScr| - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - * - * Ctrl+` is a keyboard shortcut for the program ConEmu, which provides a Quake-style drop-down command prompt. - * - */ -[_EX] = LAYOUT_ergodox( - // left hand - _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_MUTE, - _______, _______, _______, _______, _______, KCX_CGR, KC_VOLU, - _______, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, - _______, KX_UNDO, KX_CUT, KX_COPY, _______, KX_PAST, KC_VOLD, - _______, _______, _______, _______, _______, - - _______,_______, - _______, - _______,_______,_______, - // right hand - _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, - _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, - _______, _______, KX_STAB, KC_TAB, _______, KC_INS, KC_PSCR, - _______, _______, _______, _______, _______, - _______, _______, - _______, - _______, _______, _______ - ), - - /* - * Keymap: Gaming - * - * Provides a mouse overlay for the right hand, and also moves some "gamer friendly" keys to the left, such as space. - * This layer also removes a lot of dual-role keys, as when gaming, it's nicer not to need to keep track of those. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LCtrl| | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | ~_GA | | |MClick| - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | Space| |------| |------|RClick|LClick| - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_GA] = LAYOUT_ergodox( - // left hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - KC_LCTL, _______, _______, _______, _______, - - _______,_______, - _______, - KC_SPC, _______,_______, - - // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, - _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, KC_BTN3, - _______, - _______, KC_BTN2, KC_BTN1 - ), -}; -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(_NU) // FN1 - Momentary Layer 1 (Numbers and symbols) -}; +[L_COLEMAK] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + KC_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_GRV , +//--------|--------|--------|--------|--------|--------|--------| + KX_ECTL ,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B ,KC_LBRC , +//--------|--------|--------|--------|--------|--------|--------| + KC_TAB ,KC_A ,KC_R_LT ,KC_S_LT ,KC_T ,KC_G, +//--------|--------|--------|--------|--------|--------|--------| + KC_LSFT ,KX_Z_MT ,KX_X_MT ,KX_C_MT ,KX_D_MT ,KC_V ,KC_RBRC , +//--------|--------|--------|--------|--------|--------|--------| + TD_LAYR ,KC_LGUI ,KC_HYPR ,KX_CTSF ,KC_LCTL , +//--------|--------|--------|--------|--------|--------|--------| + KC_HOME ,KC_END , +// |--------|--------| + KC_PGUP , +// |--------|--------|--------| + KX_BKNM ,KX_DCTL ,KC_PGDN , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|-------| + TG_GAME ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_EQL , +//--------|--------|--------|--------|--------|--------|-------| + KC_DEL ,KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN ,KC_BSLS, +//--------|--------|--------|--------|--------|--------|-------| + KC_M ,KC_N ,KC_E_LT ,KC_I_LT ,KC_O ,KC_QUOT, +//--------|--------|--------|--------|--------|--------|-------| + KC_LOCK ,KC_K ,KX_H_MT ,KX_COMT ,KX_DOMT ,KX_SLMT ,KC_RSFT, +//--------|--------|--------|--------|--------|--------|-------| + KC_LALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM , +//--------|--------|--------|--------|--------|--------|-------| + KC_LEFT ,KC_RGHT , +//--------|--------| + KC_UP , +//--------|--------|--------| + KC_DOWN ,KX_NALT ,KX_SPAC +//--------|--------|--------| + +), + + + +[L_QWERTY] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,KC_EQL , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT , +//--------|--------|--------|--------|--------|--------|--------| + KC_LOCK ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC , +//--------|--------|--------|--------|--------|--------|--------| + KC_RALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM , +//--------|--------|--------|--------|--------|--------|--------| + KC_LEFT ,KC_RGHT , +//--------|--------| + KC_UP , +//--------|--------|--------| + KC_DOWN ,KX_NALT ,KX_SPAC +//--------|--------|--------| +), + + + +[L_NUM] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,KC_F12 , +//--------|--------|--------|--------|--------|--------|--------| + KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_BSPC , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,KC_TAB , +//--------|--------|--------|--------|--------|--------|--------| + KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------| + _______ , +//--------|--------|--------| + _______ ,KC_PENT ,MO_FUNC +//--------|--------|--------| +), + + + +[L_EXTEND] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,KC_APP ,KX_CGR, KC_VOLU, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,KX_SRCH, KX_PAST, KC_VOLD, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------|--------| + _______ , +// |--------|--------|--------| + MO_FUNC, _______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KX_STAB, KC_TAB, _______ ,KC_INS, KC_PSCR, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,KC_PSCR, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ +//--------|--------|--------|--------|--------|--------|--------| +), + + + +[L_FUNC] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,M_LCLIK, M_RCLIK, M_MCLIK, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, M_WHLUP, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,M_LEFT, M_DOWN, M_UP ,M_RIGHT, M_WHLDN, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_VOLU, KC_F9, KC_F10, KC_F11, KC_F12, _______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_MUTE, KC_F5, KC_F6, KC_F7, KC_F8, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_VOLD, KC_F1, KC_F2, KC_F3, KC_F4, _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ +//--------|--------|--------|--------|--------|--------|--------| +), -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - } - return MACRO_NONE; -}; -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { + +[L_GAMING] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_ESC ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_R ,KC_S ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_LSFT, _______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,KC_LALT ,KC_LCTL , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + KC_SPC, KC_LSFT, _______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_E ,KC_I ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,KC_UP, KC_SLSH, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_LEFT, KC_DOWN, KC_RGHT, +//--------|--------|--------|--------|--------|--------|--------| + M_MCLIK ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + M_RCLIK , +//--------|--------|--------|--------|--------|--------|--------| + M_LCLIK ,KC_ENT ,KC_BSPC +//--------|--------|--------|--------|--------|--------|--------| +) +, + +// "Letter Layers" + +[L_LL_R] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,ooooooo ,KC_AMPR ,KC_PIPE ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_TAB , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------| + _______ , +//--------|--------|--------| + _______ ,KC_PENT ,MO_FUNC +//--------|--------|--------| +) +, + +[L_LL_E] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + RJ_QMKV ,RJ_MAKE ,RJ_EQ ,RJ_LEQ ,RJ_GEQ ,RJ_GEQR ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,RJ_SELS ,RJ_DUND ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,ooooooo ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------| + _______ , +//--------|--------|--------| + _______ ,_______ ,_______ +//--------|--------|--------| +) +, + +[L_LL_I] = LAYOUT_ergodox( +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK, +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +// |--------|--------| + _______ , +// |--------|--------|--------| + _______ ,_______ ,_______ , +// |--------|--------|--------| + +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_UNDS, KC_GRV ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,KC_MINS ,KC_QUOT ,ooooooo ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,KC_TILD, KC_DQT ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ ,_______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ , +//--------|--------|--------|--------|--------|--------|--------| + _______ ,_______ ,_______ +//--------|--------|--------|--------|--------|--------|--------| +) + }; -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { +// The normal QMK functions ending in _user are overridden in the +// replicaJunction userspace. Those functions handle my global +// settings, and redirect to these _keymap functions if something +// is unhandled. This allows me to keep most of my global preferences +// in one place while still allowing keyboard-specific code. + +// The idea was shamelessly copied from the amazing Drashna. + +// Nothing to do here, so I've commented it out. +// bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { +// return true; +// } + +// void matrix_init_keymap(void) {}; + +void matrix_scan_keymap(void) { uint8_t layer = biton32(layer_state); // uint8_t default_layer = biton32(layer_state); ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); switch (layer) { - case _CO: + case L_COLEMAK: ergodox_right_led_1_on(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); break; - case _QW: + case L_NUM: + ergodox_right_led_1_on(); ergodox_right_led_2_on(); + ergodox_right_led_3_off(); break; - case _NU: + case L_EXTEND: + ergodox_right_led_1_on(); + ergodox_right_led_2_off(); ergodox_right_led_3_on(); break; - case _GA: + case L_FUNC: ergodox_right_led_1_on(); ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + break; + case L_GAMING: + ergodox_right_led_1_off(); + ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + break; default: // none break; diff --git a/layouts/community/ergodox/replicaJunction/readme.md b/layouts/community/ergodox/replicaJunction/readme.md index 8c4c03353a..9a1c09550a 100644 --- a/layouts/community/ergodox/replicaJunction/readme.md +++ b/layouts/community/ergodox/replicaJunction/readme.md @@ -1,5 +1,94 @@ # replicaJunction - Ergodox (EZ) Layout -I designed this layout, along with my complimentary Atreus layout, to address the challenge of having an Ergodox as my primary home keyboard and an Atreus as my primary work board. I wanted a layout that provided symbols in comfortable locations on both keyboards - but didn't require me to learn two separate sets of symbols for the two keyboards. +This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox. Since I use both keyboards, I've designed these layouts in an effort to make switching between the two as easy as possible. -I had originally used several keys as dual-role keys, where a tap would send a keypress and a long press and hold would trigger a different layer. However, after several months of experimenting with those ideas, I've begun moving away from that design due to performance. It's very hard to strike a balance between the time it takes to press a key normally while typing and the "delay" in the typing motion needed to trigger the alternate layer. I was frequently getting strange characters and artifacts because I pressed the function key + the symbol key too quickly, and the layer never shifted. \ No newline at end of file +I've also tried to make use of the extra keys on the Ergodox in as logical of a manner as possible, adding to the layers in the Atreus config without disturbing what's there already. This allows for things like F11-F20, the Application (Menu) key, and better media key placement. + +Because of this design philosophy, there are several cases where functionality is duplicated and keys are available in more than one place. I don't find that a bad thing. + +This layout makes heavy use of dual-role keys. Dual-role keys seemed to affect my typing speed for quite some time until I discovered the [`USE_PERMISSIVE_HOLD` flag](https://docs.qmk.fm/features/advanced-keycodes#permissive-hold). After applying this flag, I haven't had an issue with dual-role keys and typing quickly. + +The default letter layout in this keymap is [Colemak-ModDH](https://colemakmods.github.io/mod-dh/). I use the "matrix version" of that layout, which retains the M key on the home row as in normal Colemak. + +## Design Goals + +I designed this layout with the following goals in mind: + +* Atreus layout compatibility. +* Nothing may interfere with ordinary typing. +* Symbols need to be accessible quickly and organized in a manner I can remember. +* Limit more difficult finger movements (and pinky usage in general). +* Gaming should be easy. + +### Atreus layout compatibility + +Most of the functionality in this layout isn't strictly necessary - the Ergodox is a 76-key keyboard, and it's got plenty of room for extra keys and functionality compared to smaller boards like the Atreus. However, I've replicated a lot of 40% functionality on this layout in order to preserve my muscle memory. + +The biggest deviation is the Shift keys. My Atreus uses thumb keys for Shift, but the Ergodox doesn't have corresponding thumb keys in a comfortable enough location. I briefly tried using the outermost 1u keys in the bottom row as Shift keys, but they take a large enough thumb movement that it interfered with typing. + +### Nothing may interfere with ordinary typing + +For a long time, this meant that I couldn't use letters or home row keys as dual-role keys. I'm a fast typer, and I'm sometimes already typing the next letter before I've fully released the previous one. Normal keyboards don't care about this, but if I started adding dual-role functionality to letters, I found that I would sometimes type the next letter before releasing the layer toggle, and the letter I tried to send would still be sent under the layer I thought I'd left off. + +Fortunately, though, QMK has addressed this with the `PERMISSIVE_HOLD` flag. [Details are on the QMK docs page.](https://docs.qmk.fm/#/feature_advanced_keycodes?id=permissive-hold) + +Using that flag, I'm comfortable having layer shift keys on the home row, and this goes a long way to eliminate finger stress. + +### Sympols need to be accessible quickly + +Symbols are available under my left hand by holding the I key (on my right hand). I've grouped parenthesis, slashes, and braces together; the remaining symbols are ordered in the same way as they appear on USA keycap legends (for example, 1 is !, so that symbol is first in my lineup). Practically, I just had to get used to these other "misc" symbols. + +This also means that some symbols are accessible in more than one way. For example, the carats (greater than and less than) are available both in the "normal" location (Shift+Comma / Shift+Period) and on the symbol layer. I make regular changes to some of the symbols I don't use as commonly as I think of them. + +### Limit more difficult finger movements + +This is why I kept trying to put layer toggles on the home row keys instead of just placing them on random thumb keys. I suffer from RSI, and it's important for me to watch out for more "stressful" finger movements. + +The home row is the easiest row for your fingers to hit, followed by the upper row, and the lower row is noticeably more difficult to press. Because of this, I favored the upper row over the lower one any time I had the option to do so. + +### Gaming should be easy + +I've added a dedicated gaming layer accessible by pressing the upper-right key on the right hand (next to the 6 key). This layer disables most of the tap/hold functionality to allow keys to act normally. This layer also reverses Backspace and Space (so Space is available on the left thumb while the right hand is on the mouse). + +I've also added a lock key on the right hand's bottom 1.5u key and mouse keys on the right thumb cluster. This has been amazingly helpful for games that involve holding keys for extended times (for example, I can hold the left mouse button in Minecraft to continually mine). + +I strongly recommend using ESDF (QWERTY positions) for movement on the Ergodox rather than WASD. This makes the thumb keys much more accessible. + +Finally, I considered having the gaming layer revert to a QWERTY layout, but decided against it because it really threw me off when I needed to type in chat. I've accepted that I will need to rebind keys in most games as a reasonable compromise. + +## Features + +### ZXC Mods + +Keys on the bottom row of each half of this keyboard can be held to send modifier keys. I've tried to map this in a relatively logical manner: + +* Z / Slash: Ctrl +* X / Period: GUI +* C / Comma: Ctrl+Alt +* D / H: Alt + +This is an example of maintaining compatibility with the Atreus layout. An Ergodox doesn't really need these keys, but I've grown accustomed to them on the Atreus, so they're copied here to preserve compatibility. + +### Layer Switching - Tap Dance + +The lower-left key on the left hand can be used to apply or remove layers based on a number of taps: + +* 1 tap sends Escape, and also disables any persistent layers. +* 2 taps enables the Number pad layer. +* 3 taps enables the QWERTY layer. +* 5 or more taps resets the keyboard. + +## Extend Layer + +[Originally found on the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/), having a QMK-powered keyboard allows a super easy implementation of this concept. The idea is to place commonly-used keys under easy reach of your hands. Since I work with text often, my most common needs are things like Ctrl+Shift+arrow keys, and they're easy to access using this layer. (While technically it's four keypresses instead of just three, since it takes one key to enter the layer, that one key is a thumb button and the other three are all on the home row, so I find it much more comfortable than modifiers on a traditional keyboard.) + +Also featured in this layer is easy access to Tab, plus a Shift+Tab key. Alt-Tabbing back and forth, along with Ctrl-Tab, are super easy and friendly. When I need Ctrl+Alt+Delete, I typically use the ones found on this layer. + +## Credits + +* [Drashna](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/readme.md) + * User / keymap function ideas +* [Jeremy](https://github.com/qmk/qmk_firmware/blob/master/keyboards/atreus/keymaps/jeremy/readme.md) + * Sanity check on the Function keys (_of course they should be in rows of 4, not rows of 3 like a number pad. Why did I ever use anything else?_) +* [DreymaR of the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/) + * Original idea of the Extend layer diff --git a/layouts/community/ergodox/replicaJunction/rules.mk b/layouts/community/ergodox/replicaJunction/rules.mk new file mode 100644 index 0000000000..8a719766cd --- /dev/null +++ b/layouts/community/ergodox/replicaJunction/rules.mk @@ -0,0 +1,8 @@ +# https://docs.qmk.fm/getting_started_make_guide.html + +MOUSEKEY_ENABLE = yes +TAP_DANCE_ENABLE = yes +KEY_LOCK_ENABLE = yes +RGBLIGHT_ENABLE = no +# CONSOLE_ENABLE = no +# COMMAND_ENABLE = no diff --git a/users/replicaJunction/config.h b/users/replicaJunction/config.h new file mode 100644 index 0000000000..f3556c87ed --- /dev/null +++ b/users/replicaJunction/config.h @@ -0,0 +1,72 @@ +#pragma once + + +//////////////////////////////////////////////////////////////////////////////// +// Features That Can Be Enabled +// https://docs.qmk.fm/reference/config-options#features-that-can-be-enabled +//////////////////////////////////////////////////////////////////////////////// + +// Prevent modifiers from sticking when switching layers +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + + + +//////////////////////////////////////////////////////////////////////////////// +// Behaviors That Can Be Configured +// https://docs.qmk.fm/reference/config-options#behaviors-that-can-be-configured +//////////////////////////////////////////////////////////////////////////////// + +// MS the button needs to be held before a tap becomes a hold (default: 200) +#undef TAPPING_TERM +#define TAPPING_TERM 250 + +// Makes it easier for fast typists to use dual-role keys. See additional details here: +// https://docs.qmk.fm/features/advanced-keycodes#permissive-hold +#define PERMISSIVE_HOLD + +// MS after tapping the Leader key to listen for a sequence (default: 300) +#undef LEADER_TIMEOUT +#define LEADER_TIMEOUT 750 + +// This makes it possible to do rolling combos (zx) with keys that convert to other keys on hold +// (for example, if z becomes ctrl when you hold it, when this option isn't enabled, z rapidly +// followed by x actually sends Ctrl-x. That's bad.) +#define IGNORE_MOD_TAP_INTERRUPT + + + +//////////////////////////////////////////////////////////////////////////////// +// Mouse Key Options +// https://docs.qmk.fm/reference/config-options#mouse-key-options +//////////////////////////////////////////////////////////////////////////////// + +#ifdef MOUSEKEY_ENABLE +// Mouse key config + +// Frequency with which cursor movements are sent. Lower means more resolution / DPI. +// Default: 20 +// #undef MOUSEKEY_INTERVAL +// #define MOUSEKEY_INTERVAL 20 + +// MS after pressing the key before initial movement begins. Lower means quicker response. +// Default: 0 +// #undef MOUSEKEY_DELAY +// #define MOUSEKEY_DELAY 0 + +// MS it takes the cursor to accelerate to max speed +// Default: 60 +// #undef MOUSEKEY_TIME_TO_MAX +// #define MOUSEKEY_TIME_TO_MAX 60 + +// Maximum speed for the mouse keys +// Default: 7 +// #undef MOUSEKEY_MAX_SPEED +// #define MOUSEKEY_MAX_SPEED 7 + +// Delay before the mouse wheel +// Default: 0 +// #undef MOUSEKEY_WHEEL_DELAY +// #define MOUSEKEY_WHEEL_DELAY 0 + +#endif // MOUSEKEY_ENABLE diff --git a/users/replicaJunction/readme.md b/users/replicaJunction/readme.md new file mode 100644 index 0000000000..2a9cad2729 --- /dev/null +++ b/users/replicaJunction/readme.md @@ -0,0 +1,14 @@ +Copyright 2018 @ + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . \ No newline at end of file diff --git a/users/replicaJunction/replicaJunction.c b/users/replicaJunction/replicaJunction.c new file mode 100644 index 0000000000..f0bc59d257 --- /dev/null +++ b/users/replicaJunction/replicaJunction.c @@ -0,0 +1,149 @@ +#include "replicaJunction.h" +#include "version.h" + +#ifdef TAP_DANCE_ENABLE +void dance_layer(qk_tap_dance_state_t *state, void *user_data) +{ + uint8_t layer = biton32(layer_state); + + if (state->count >= 5) + { + // 5 or more taps resets the keyboard + reset_keyboard(); + } + #ifdef L_QWERTY + else if (state->count == 3) + { + // Triple tap changes to QWERTY layer + if (layer == L_QWERTY) + { + layer_off(L_QWERTY); + } + else + { + layer_on(L_QWERTY); + } + } + #endif + #ifdef L_NUM + else if (state->count == 2) + { + // Double tap toggles Number layer + if (layer == L_NUM) + { + layer_off(L_NUM); + } + else + { + layer_on(L_NUM); + } + } + #endif + else + { + // Single tap sends Escape, and also turns off layers + // That's mostly in case I get stuck and forget where I am + #ifdef L_NUM + layer_off(L_NUM); + #endif + #ifdef L_EXTEND + layer_off(L_EXTEND); + #endif + #ifdef L_SYMBOL + layer_off(L_SYMBOL); + #endif + #ifdef L_QWERTY + layer_off(L_QWERTY); + #endif + register_code(KC_ESC); + unregister_code(KC_ESC); + } +}; + +// Tap Dance Definitions +// Note - this needs to come AFTER the function is declared +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_LAYER_TOGGLE] = ACTION_TAP_DANCE_FN(dance_layer) +}; + +#endif // TAP_DANCE_ENABLE + +// These functions can be overridden in individual keymap files. +// This allows a user function to be shared for all my keyboards, while each +// keyboard can also have a keyboard-specific section. + +// Note that keymaps don't need to override these if there's nothing to +// override them with. +__attribute__ ((weak)) +void matrix_init_keymap(void) {} + +__attribute__ ((weak)) +void matrix_scan_keymap(void) {} + +__attribute__ ((weak)) +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + return true; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + #ifdef UNICODEMAP_ENABLE + // Set Unicode input to use WinCompose + // https://github.com/samhocevar/wincompose + set_unicode_input_mode(UC_WINC); + #endif // UNICODEMAP_ENABLE + + matrix_init_keymap(); +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + matrix_scan_keymap(); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) + return true; + + switch(keycode) + { + case RJ_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader + SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP + #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU)) + ":dfu" + #elif defined(BOOTLOADER_HALFKAY) + ":teensy" + #elif defined(BOOTLOADER_CATERINA) + ":avrdude" + #endif // bootloader options + //SS_TAP(X_ENTER) + ); + return false; + case RJ_QMKV: + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + return false; + case RJ_EQ: + SEND_STRING("=="); + return false; + case RJ_NEQ: + SEND_STRING("!="); + return false; + case RJ_GEQ: + SEND_STRING(">="); + return false; + case RJ_LEQ: + SEND_STRING("<="); + return false; + case RJ_GEQR: + SEND_STRING("=>"); + return false; + case RJ_DUND: + SEND_STRING("$_"); + return false; + case RJ_SELS: + SEND_STRING("select *"); + return false; + } + + return process_record_keymap(keycode, record); +}; diff --git a/users/replicaJunction/replicaJunction.h b/users/replicaJunction/replicaJunction.h new file mode 100644 index 0000000000..ab0e8ab3e3 --- /dev/null +++ b/users/replicaJunction/replicaJunction.h @@ -0,0 +1,115 @@ +#pragma once + +#include "quantum.h" + +/////////////////////////////////////////////////////////////////////////////// +// Keymap definitions +/////////////////////////////////////////////////////////////////////////////// + +// Layer definitions +// #define L_COLEMAK 0 +// #define L_QWERTY 1 +// #define L_NUM 2 +// #define L_EXTEND 3 +// #define L_FUNC 4 +// #define L_GAMING 5 +// #define L_SYMBOL 6 +// #define L_LL_R 7 +// #define L_LL_S 8 +// #define L_LL_E 9 +// #define L_LL_I 10 + +// Keyboard aliases +#define _______ KC_TRNS +#define ooooooo KC_TRNS + +#define MO_FUNC MO(L_FUNC) +#define TT_NUM TT(L_NUM) +#define TG_GAME TG(L_GAMING) +#define OSL_SYM OSL(L_SYMBOL) + +#define OSM_LSF OSM(MOD_LSFT) +#define OSM_RSF OSM(MOD_RSFT) + +#define KX_CTSF LCTL(KC_LSFT) +#define KX_STAB LSFT(KC_TAB) +#define KX_CGR LCTL(KC_GRV) +#define KX_PAST LCTL(LGUI(LALT(KC_V))) +#define KX_SRCH LCTL(LGUI(LALT(KC_S))) + +#define KX_BKNM LT(L_NUM, KC_BSPC) +#define KX_DCTL CTL_T(KC_DEL) +#define KX_NALT ALT_T(KC_ENT) +#define KX_ECTL CTL_T(KC_ESC) +#define KX_SPAC LT(L_EXTEND, KC_SPC) + +#define KX_Z_MT CTL_T(KC_Z) +#define KX_X_MT GUI_T(KC_X) +#define KX_C_MT MT(MOD_LCTL | MOD_LALT, KC_C) +#define KX_D_MT ALT_T(KC_D) + +#define KX_SLMT CTL_T(KC_SLSH) +#define KX_DOMT GUI_T(KC_DOT) +#define KX_COMT MT(MOD_LCTL | MOD_LALT, KC_COMM) +#define KX_H_MT ALT_T(KC_H) + +#ifdef L_LL_R + #define KC_R_LT LT(L_LL_R, KC_R) +#else + #define KC_R_LT KC_R +#endif + +#ifdef L_LL_S + #define KC_S_LT LT(L_LL_S, KC_S) +#else + #define KC_S_LT KC_S +#endif + +#ifdef L_LL_E + #define KC_E_LT LT(L_LL_E, KC_E) +#else + #define KC_E_LT KC_E +#endif + +#ifdef L_LL_I + #define KC_I_LT LT(L_LL_I, KC_I) +#else + #define KC_I_LT KC_I +#endif + +// "Macro" functions +enum userspace_custom_keycodes { + RJ_MAKE = SAFE_RANGE, // QMK make command + RJ_QMKV, // QMK version + RJ_EQ, // == + RJ_NEQ, // != + RJ_GEQ, // >= + RJ_LEQ, // <= + RJ_GEQR, // => ("greater than or equal - right") + RJ_DUND, // $_ + RJ_SELS, // select * (used for PowerShell) + RJ_MUTE, // Discord mute (GUI+Shift+M) + RJ_DEAF, // Discord deafen (GUI+Shift+D) + RJ_DOVR // Toggle Discord overlay (GUI+Shift+O) +}; + +// Mouse keys +#define M_UP KC_MS_UP +#define M_DOWN KC_MS_DOWN +#define M_LEFT KC_MS_LEFT +#define M_RIGHT KC_MS_RIGHT +#define M_LCLIK KC_MS_BTN1 +#define M_RCLIK KC_MS_BTN2 +#define M_MCLIK KC_MS_BTN3 +#define M_WHLUP KC_WH_U +#define M_WHLDN KC_WH_D + +// Used in macro definitions +#define TAP(code) register_code (code); unregister_code (code); + +// Tap Dance +#ifdef TAP_DANCE_ENABLE +#define TD_LAYER_TOGGLE 0 +extern void dance_layer(qk_tap_dance_state_t *state, void *user_data); +#define TD_LAYR TD(TD_LAYER_TOGGLE) +#endif // TAP_DANCE_ENABLE diff --git a/users/replicaJunction/rules.mk b/users/replicaJunction/rules.mk new file mode 100644 index 0000000000..30a330195d --- /dev/null +++ b/users/replicaJunction/rules.mk @@ -0,0 +1 @@ +SRC += replicaJunction.c -- cgit v1.2.3 From 9175eebc8796f31a481ba16b1ca2ba9e4432502e Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Fri, 17 Aug 2018 16:11:21 -0700 Subject: Keymap: Wanleg userspace (#3670) * configure wanleg userspace * additional layout support * additional layout support * userspace edits * fix swap hands between 30 and 40 percent * add additional keymaps * userspace edits * userspace configuration * userspace configuration * Update readme.md * userspace work * swap hands userspace fix * made requested edits * Update readme.md * use relative paths instead of copying file * Update wanleg.h * fixing layer order --- keyboards/gherkin/keymaps/wanleg/config.h | 24 -- keyboards/gherkin/keymaps/wanleg/keymap.c | 218 ------------------ keyboards/gherkin/keymaps/wanleg/readme.md | 86 ------- keyboards/gherkin/keymaps/wanleg/rules.mk | 7 - layouts/community/ortho_3x10/layout.json | 3 + layouts/community/ortho_3x10/readme.md | 3 + layouts/community/ortho_3x10/wanleg/config.h | 9 + layouts/community/ortho_3x10/wanleg/keymap.c | 29 +++ layouts/community/ortho_3x10/wanleg/readme.md | 83 +++++++ layouts/community/ortho_3x10/wanleg/rules.mk | 3 + layouts/community/ortho_4x12/wanleg/config.h | 15 ++ layouts/community/ortho_4x12/wanleg/keymap.c | 67 ++++++ layouts/community/ortho_4x12/wanleg/readme.md | 24 ++ layouts/community/ortho_4x12/wanleg/rules.mk | 6 + layouts/community/ortho_5x15/wanleg/config.h | 3 + layouts/community/ortho_5x15/wanleg/keymap.c | 176 +++++++++++++++ layouts/community/ortho_5x15/wanleg/rules.mk | 1 + users/wanleg/config.h | 32 +++ users/wanleg/readme.md | 14 ++ users/wanleg/rules.mk | 19 ++ users/wanleg/tapdances.c | 110 +++++++++ users/wanleg/wanleg.c | 158 +++++++++++++ users/wanleg/wanleg.h | 308 ++++++++++++++++++++++++++ 23 files changed, 1063 insertions(+), 335 deletions(-) delete mode 100644 keyboards/gherkin/keymaps/wanleg/config.h delete mode 100644 keyboards/gherkin/keymaps/wanleg/keymap.c delete mode 100644 keyboards/gherkin/keymaps/wanleg/readme.md delete mode 100644 keyboards/gherkin/keymaps/wanleg/rules.mk create mode 100644 layouts/community/ortho_3x10/layout.json create mode 100644 layouts/community/ortho_3x10/readme.md create mode 100644 layouts/community/ortho_3x10/wanleg/config.h create mode 100644 layouts/community/ortho_3x10/wanleg/keymap.c create mode 100644 layouts/community/ortho_3x10/wanleg/readme.md create mode 100644 layouts/community/ortho_3x10/wanleg/rules.mk create mode 100644 layouts/community/ortho_4x12/wanleg/config.h create mode 100644 layouts/community/ortho_4x12/wanleg/keymap.c create mode 100644 layouts/community/ortho_4x12/wanleg/readme.md create mode 100644 layouts/community/ortho_4x12/wanleg/rules.mk create mode 100644 layouts/community/ortho_5x15/wanleg/config.h create mode 100644 layouts/community/ortho_5x15/wanleg/keymap.c create mode 100644 layouts/community/ortho_5x15/wanleg/rules.mk create mode 100644 users/wanleg/config.h create mode 100644 users/wanleg/readme.md create mode 100644 users/wanleg/rules.mk create mode 100644 users/wanleg/tapdances.c create mode 100644 users/wanleg/wanleg.c create mode 100644 users/wanleg/wanleg.h (limited to 'layouts') diff --git a/keyboards/gherkin/keymaps/wanleg/config.h b/keyboards/gherkin/keymaps/wanleg/config.h deleted file mode 100644 index 98e2b23380..0000000000 --- a/keyboards/gherkin/keymaps/wanleg/config.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" -#endif - -#define PREVENT_STUCK_MODIFIERS - -//Tap Dance Prerequisite -#define TAPPING_TERM 200 - -//Mousekeys Settings -#define MOUSEKEY_INTERVAL 16 -#define MOUSEKEY_DELAY 0 -#define MOUSEKEY_TIME_TO_MAX 60 -#define MOUSEKEY_MAX_SPEED 7 -#define MOUSEKEY_WHEEL_DELAY 0 - -/* for QMK DFU bootloader */ -/* not required if using default ProMicro bootloader */ -/* set top left key as bootloader mode escape key */ -#define QMK_ESC_OUTPUT B4 // usually COL -#define QMK_ESC_INPUT F7 // usually ROW -#define QMK_LED B0 \ No newline at end of file diff --git a/keyboards/gherkin/keymaps/wanleg/keymap.c b/keyboards/gherkin/keymaps/wanleg/keymap.c deleted file mode 100644 index 108ed40e53..0000000000 --- a/keyboards/gherkin/keymaps/wanleg/keymap.c +++ /dev/null @@ -1,218 +0,0 @@ -/* Copyright 2017 Brian Fong - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -#include QMK_KEYBOARD_H - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QW 0 -#define DIR 1 -#define NUM 2 -#define ETC 3 - -// Readability keycodes -#define _______ KC_TRNS - - -/////////////// TAP DANCE SECTION START /////////////// -//Tap Dance Declarations (list of my tap dance configurations) -enum { - TD_SFT_CAPS = 0 - ,TD_Q_ESC - ,ENT_TAP_DANCE - ,DEL_TAP_DANCE -}; - -///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION START ///// -///// (no need to edit this section) ///// -//Enums used to clearly convey the state of the tap dance -enum { - SINGLE_TAP = 1, - SINGLE_HOLD = 2, - DOUBLE_TAP = 3, - DOUBLE_HOLD = 4, - DOUBLE_SINGLE_TAP = 5 //send SINGLE_TAP twice - NOT DOUBLE_TAP - // Add more enums here if you want for triple, quadruple, etc. -}; - -typedef struct { - bool is_press_action; - int state; -} tap; - -int cur_dance (qk_tap_dance_state_t *state) { - if (state->count == 1) { - //If count = 1, and it has been interrupted - it doesn't matter if it is pressed or not: Send SINGLE_TAP - if (state->interrupted || !state->pressed) return SINGLE_TAP; - if (state->interrupted) return SINGLE_TAP; - else return SINGLE_HOLD; - } - //If count = 2, and it has been interrupted - assume that user is trying to type the letter associated - //with single tap. - else if (state->count == 2) { - if (state->interrupted) return DOUBLE_SINGLE_TAP; - else if (state->pressed) return DOUBLE_HOLD; - else return DOUBLE_TAP; - } - else return 6; //magic number. At some point this method will expand to work for more presses -} -///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION END ///// -///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION START ///// -//instantialize an instance of 'tap' for the 'ENT' tap dance. -static tap ENTtap_state = { - .is_press_action = true, - .state = 0 -}; - -void ENT_finished (qk_tap_dance_state_t *state, void *user_data) { - ENTtap_state.state = cur_dance(state); - switch (ENTtap_state.state) { - case SINGLE_TAP: register_code(KC_SPC); break; - case SINGLE_HOLD: register_code(KC_LSFT); break; - case DOUBLE_TAP: register_code(KC_ENT); break; - case DOUBLE_HOLD: register_code(KC_NO); break; // setting double hold to do nothing (change this if you want) - case DOUBLE_SINGLE_TAP: register_code(KC_SPC); unregister_code(KC_SPC); register_code(KC_SPC); - //Last case is for fast typing. Assuming your key is `f`: - //For example, when typing the word `buffer`, and you want to make sure that you send `ff` and not `Esc`. - //In order to type `ff` when typing fast, the next character will have to be hit within the `TAPPING_TERM`, which by default is 200ms. - } -} - -void ENT_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (ENTtap_state.state) { - case SINGLE_TAP: unregister_code(KC_SPC); break; - case SINGLE_HOLD: unregister_code(KC_LSFT); break; - case DOUBLE_TAP: unregister_code(KC_ENT); break; - case DOUBLE_HOLD: unregister_code(KC_NO); - case DOUBLE_SINGLE_TAP: unregister_code(KC_SPC); - } - ENTtap_state.state = 0; -} - -//instanalize an instance of 'tap' for the 'DEL' tap dance. -static tap DELtap_state = { - .is_press_action = true, - .state = 0 -}; - -void DEL_finished (qk_tap_dance_state_t *state, void *user_data) { - DELtap_state.state = cur_dance(state); - switch (DELtap_state.state) { - case SINGLE_TAP: register_code(KC_BSPC); break; - case SINGLE_HOLD: register_code(KC_LCTL); break; - case DOUBLE_TAP: register_code(KC_DEL); break; - case DOUBLE_HOLD: register_code(KC_NO); break; - case DOUBLE_SINGLE_TAP: register_code(KC_BSPC); unregister_code(KC_BSPC); register_code(KC_BSPC); - } -} - -void DEL_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (DELtap_state.state) { - case SINGLE_TAP: unregister_code(KC_BSPC); break; - case SINGLE_HOLD: unregister_code(KC_LCTL); break; - case DOUBLE_TAP: unregister_code(KC_DEL); break; - case DOUBLE_HOLD: unregister_code(KC_NO); - case DOUBLE_SINGLE_TAP: unregister_code(KC_BSPC); - } - DELtap_state.state = 0; -} -///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION END ///// - -//Tap Dance Definitions -//THIS SECTION HAS TO BE AT THE END OF THE TAP DANCE SECTION -qk_tap_dance_action_t tap_dance_actions[] = { - [TD_SFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS) -// Other declarations would go here, separated by commas, if you have them - ,[TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC) - ,[ENT_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ENT_finished, ENT_reset) - ,[DEL_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, DEL_finished, DEL_reset) -}; - -//In Layer declaration, add tap dance item in place of a key code -//TD(TD_SFT_CAPS) - -///////////// TAP DANCE SECTION END /////////////// - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - /* Qwerty - * .-----------------------------------------------------------------------------------------. - * | Q//ESC | W | E | R | T | Y | U | I | O | P | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | A | S | D | F | G | H | J | K | L | SPACE | - * | | | | | | | | | |SFThold | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | Z | X | C | V/NUM | B/ETC | N | M/DIR | ,/GUI | ./ALT | BKSC | - * | SFThold| | | | | | | | |CTRLhold| - * '-----------------------------------------------------------------------------------------' - */ - [_QW] = LAYOUT_ortho_3x10( /* Qwerty*/ - TD(TD_Q_ESC), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SPC), - SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V), LT(ETC, KC_B), KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC) - ), - - /* - * Directional Modifiers - * .-----------------------------------------------------------------------------------------. - * | TAB | up | | INS | CTRL | SHIFT | PgUp | HOME | - | = | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | left | down | right | PrScr | SHIFT | CTRL | PgDn | END | [ | ] | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | P-Brk | | | | | | | RGUI | ALT | / | - * '-----------------------------------------------------------------------------------------' - */ - [DIR] = LAYOUT_ortho_3x10( /* Directional Modifiers */ - KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_RSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, - KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_RCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, - KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_LALT, KC_SLSH - ), - - /* - * Numbers - * .-----------------------------------------------------------------------------------------. - * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | F11 | F12 | | | | ENTER | SHIFT | GUI | ./ALT | BKSC | - * | | | | | | | | | |CTRLhold| - * '-----------------------------------------------------------------------------------------' - */ - [NUM] = LAYOUT_ortho_3x10 ( /* Numbers */ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_F11, KC_F12, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, ALT_T(KC_DOT), CTL_T(KC_BSPC) - ), - - /* - * ETC - * .-----------------------------------------------------------------------------------------. - * | ` | mUP | | | RESET | SHIFT | mUp | mDown | | \ | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | - * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | Sft//Cp| | | | | C-A-D | mLeft | mRight | ALT | DEL | - * '-----------------------------------------------------------------------------------------' - */ - [ETC] = LAYOUT_ortho_3x10( /* ETC */ - KC_GRV, KC_MS_U, _______, _______, RESET, KC_RSFT, KC_WH_U, KC_WH_D, _______, KC_BSLS, - KC_MS_L, KC_MS_D, KC_MS_R, _______, KC_LSFT, KC_BTN3, KC_BTN1, KC_BTN2, KC_SCLN, KC_QUOT, - TD(TD_SFT_CAPS), _______, _______, _______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL - ), - -}; diff --git a/keyboards/gherkin/keymaps/wanleg/readme.md b/keyboards/gherkin/keymaps/wanleg/readme.md deleted file mode 100644 index 0b1b099c4a..0000000000 --- a/keyboards/gherkin/keymaps/wanleg/readme.md +++ /dev/null @@ -1,86 +0,0 @@ -![Gherkin Wanleg Layout Image](https://i.imgur.com/nCPog2W.png) -# Gherkin Wanleg Layout -This is the layout I came up with to preserve a standard QWERTY 104 key ANSI layout as much as possible, in as few layers as possible for a 30 key board. -I originally set up a few Tap Dance keys, but dropped half of them in favor of chorded versions since in actual use, they tended to impede typing speed more than their current two-key versions. -I've left them in my `keymap.c` ready for use if anyone wants to try them out: - -Legend Name | Single Tap | Double Tap | Hold ---- | --- | --- | --- -*null* | space | enter | shift -*null* | backspace | delete | control -Sft//Cp | shift | caps lock | *null* -Q//Esc | KC_Q | escape | *null* - -# Gherkin Flashing -## Windows -1. The standard Gherkin uses a ProMicro (or clone) microcontroller, which has the Caterina bootloader by default. -2. If you have never flashed your ProMicro with QMK before, you will need to short the RST pin to GND to put it into bootloader mode (you only have 7 seconds to flash once it enters bootloader mode). You may need to touch the RST pin to GND **TWICE** in quick succession if it doesn't flash with just one touch. -3. Once connected to your computer, you should be able to flash using -`make gherkin:wanleg:avrdude` -4. Once you've been able to successfully flash the ProMicro, you should be able to use the `RESET` key for future flashes instead of shorting the RST pin. - -## Linux -### First Flash with QMK -The built-in `:avrdude` QMK target in Linux doesn't work with the default Caterina bootloader on the ProMicro, so we have to use avrdude separately. The instructions below are adapted from https://deskthority.net/workshop-f7/how-to-use-a-pro-micro-as-a-cheap-controller-converter-like-soarer-s-t8448.html - -1. To flash the device, you need to have AVRdude installed. You can do this via your distro's package manager (or compile from source if needed). -2. Once avrdude has been installed, open a terminal and run -`ls /dev/tty*` -3. Next, plug in your device and re-run `ls /dev/tty*` -There should be one more device than was seen previously. Make a note of it. For me, it's `/dev/ttyACM0`. -4. Navigate to the directory with your `.hex` file in it. Touch the RST pin to GND **TWICE** in quick succession, then run the following within 7 seconds: -`sudo avrdude -p m32u4 -P YOUR_SERIAL_PORT -c avr109 -U flash:w:YOUR_FILENAME.hex` -Replace YOUR_SERIAL_PORT with your serial port's device name, and YOUR_FILENAME.hex with the appropriate filename. For me, it looks like this: -`sudo avrdude -p m32u4 -P /dev/ttyACM0 -c avr109 -U flash:w:gherkin_wanleg.hex` -If you miss the 7 second window, the ProMicro will leave bootloader mode and the flash will fail. Hit `Control` + `C` to exit the `avrdude` command, connect RST to GND twice quickly, and try the `avrdude` command again. - -### Subsequent Flashes with QMK -1. Re-flashing is similar to the initial flash procedure. Plug in your keyboard, open a terminal and run -`ls /dev/tty*` -2. Next, hit the `RESET` key on your keyboard and re-run the `ls /dev/tty*` command to find your keyboard's serial port. -3. Flash your keyboard with the avrdude command you used for the initial flash within 7 seconds after hitting `RESET`. - -# ProMicro Bootloader Replacement (Caterina to QMK DFU) -If you have an Arduino (or clone), you can replace the bootloader for a few extra features (e.g. no more 7 second "flash window", simplified Linux flashing, blinking LED when the ProMicro is in bootloader mode, ability to exit bootloader mode without unplugging your keyboard, among others). -The instructions below have been adapted from https://www.reddit.com/r/olkb/comments/8sxgzb/replace_pro_micro_bootloader_with_qmk_dfu/) -## Arduino Setup -1. Upload the ArduinoISP sketch onto your Arduino board (https://www.arduino.cc/en/Tutorial/ArduinoISP). -2. Wire the Arduino to the ProMicro - -| Arduino | ProMicro | -| --- | --- | -| 10 | RST | -| 11 | 16 | -| 12 | 14 | -| 13 | 15 | -| GND | GND | -| 5V | VCC | - -## Make the QMK DFU .hex -3. In `config.h` add the following. This is already set up in `qmk_firmware/keyboards/gherkin/wanleg`. You only need to do this on other keymaps. -``` -#define QMK_ESC_OUTPUT B4 -#define QMK_ESC_INPUT F7 -#define QMK_LED B0 -``` -The `QMK_ESC_` lines define where the bootloader escape key is. Refer to the `MATRIX_ROW_PINS` and `MATRIX_COL_PINS` lines in your keyboard's `config.h` to choose your preferred key. -You hit the bootloader escape key to exit bootloader mode after you've hit the RESET key to enter bootloader mode (e.g. if you change your mind and don't want to flash just then). -On a Gherkin, B4/F7 corresponds to the top-left corner key. -`B0` is an indicator light on one of the ProMicro's onboard LEDs. With QMK DFU, it will flash to indicate the ProMicro is in bootloader mode. -You can add `#define QMK_SPEAKER C6` if you have a speaker hooked up to pin C6. The Gherkin PCB already uses pin C6 in its switch layout, so you cannot use a speaker on a standard Gherkin. -4. Also, you should add `BOOTLOADER = qmk-dfu` to your `rules.mk` file, so it is flagged properly. Again, this is already set up in `qmk_firmware/keyboards/gherkin/wanleg`. -5. Once you've made the required edits, it's time to compile the firmware. If you use the `:production` target when compiling, it will produce the usual `.hex` file as well as `_bootloader.hex` and `_production.hex` files. The `_production.hex` will be what we want. This contains the bootloader and the firmware, so we only have to flash once (rather than flash the bootloader, and THEN flash the firmware). -For example -`make ::production` -For my particular keymap, for reasons listed in the **Using QMK DFU** section, you should use the following to ensure the bootloader is set properly -`make gherkin:wanleg:production dfu=qmk` - -## Burn QMK DFU -6. Navigate to the directory with your `_production.hex` file, and burn it with the following command -`avrdude -b 19200 -c avrisp -p m32u4 -v -e -U lock:w:0x3F:m -U efuse:w:0xC3:m -U hfuse:w:0xD9:m -U lfuse:w:0x5E:m -U YOUR_production.hex -P comPORT` -Change `comPORT` to whatever port is used by the Arduino (e.g. `com11` in Windows or `/dev/ttyACM0` in Linux). Use Device Manager in Windows to find the port being used. Use `ls /dev/tty*` in Linux. Change `YOUR_production.hex` to whatever you've created in the previous step. - -## Using QMK DFU -7. Once QMK DFU is burned to your ProMicro, you can then flash subsequent hex files with -`make gherkin::dfu dfu=qmk` -The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina` diff --git a/keyboards/gherkin/keymaps/wanleg/rules.mk b/keyboards/gherkin/keymaps/wanleg/rules.mk deleted file mode 100644 index 7f2ff33277..0000000000 --- a/keyboards/gherkin/keymaps/wanleg/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -TAP_DANCE_ENABLE = yes # Enable Tap Dance (comment if not being implemented) - -#If ProMicro has QMK DFU bootloader instead of Caterina, -#run "make : dfu=qmk" when compiling to ensure it is flagged properly after being flashed -ifeq ($(strip $(dfu)), qmk) - BOOTLOADER = qmk-dfu -endif \ No newline at end of file diff --git a/layouts/community/ortho_3x10/layout.json b/layouts/community/ortho_3x10/layout.json new file mode 100644 index 0000000000..6600f32a6a --- /dev/null +++ b/layouts/community/ortho_3x10/layout.json @@ -0,0 +1,3 @@ +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""] diff --git a/layouts/community/ortho_3x10/readme.md b/layouts/community/ortho_3x10/readme.md new file mode 100644 index 0000000000..e0a31cdf63 --- /dev/null +++ b/layouts/community/ortho_3x10/readme.md @@ -0,0 +1,3 @@ +# ortho_3x10 + + LAYOUT_ortho_3x10 diff --git a/layouts/community/ortho_3x10/wanleg/config.h b/layouts/community/ortho_3x10/wanleg/config.h new file mode 100644 index 0000000000..6719a4591e --- /dev/null +++ b/layouts/community/ortho_3x10/wanleg/config.h @@ -0,0 +1,9 @@ +#pragma once + +//QMK DFU settings (ProMicro boards) +// set top left key as bootloader mode escape key on Gherkin +#if defined(KEYBOARD_gherkin) +#define QMK_LED B0 +#define QMK_ESC_OUTPUT B4 // usually COL +#define QMK_ESC_INPUT F7 // usually ROW +#endif diff --git a/layouts/community/ortho_3x10/wanleg/keymap.c b/layouts/community/ortho_3x10/wanleg/keymap.c new file mode 100644 index 0000000000..44be300a41 --- /dev/null +++ b/layouts/community/ortho_3x10/wanleg/keymap.c @@ -0,0 +1,29 @@ +#include QMK_KEYBOARD_H +#include "wanleg.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[gGK] = LAYOUT_ortho_3x10_wrapper( + _______________Gherkin_Row_0_______________, + _______________Gherkin_Row_1_______________, + _______________Gherkin_Row_2_______________ +), + +[gNUM] = LAYOUT_ortho_3x10_wrapper( + _______________Gherkin_NUM_0_______________, + _______________Gherkin_NUM_1_______________, + _______________Gherkin_NUM_2_______________ +), + +[gDIR] = LAYOUT_ortho_3x10_wrapper( + _______________Gherkin_DIR_0_______________, + _______________Gherkin_DIR_1_______________, + _______________Gherkin_DIR_2_______________ +), + +[gETC] = LAYOUT_ortho_3x10_wrapper( + _______________Gherkin_ETC_0_______________, + _______________Gherkin_ETC_1_______________, + _______________Gherkin_ETC_2_______________ +), + +}; diff --git a/layouts/community/ortho_3x10/wanleg/readme.md b/layouts/community/ortho_3x10/wanleg/readme.md new file mode 100644 index 0000000000..ef6c1f9dbb --- /dev/null +++ b/layouts/community/ortho_3x10/wanleg/readme.md @@ -0,0 +1,83 @@ +![Gherkin Wanleg Layout Image](https://i.imgur.com/nCPog2W.png) +# Gherkin Wanleg Layout +This is the layout I came up with to preserve a standard QWERTY 104 key ANSI layout as much as possible, in as few layers as possible for a 30 key board. +I originally set up a few Tap Dance keys, but dropped half of them in favor of chorded versions since in actual use, they tended to impede typing speed more than their current two-key versions. +I've left them in my `keymap.c` ready for use if anyone wants to try them out: + +Legend Name | Single Tap | Double Tap | Hold +--- | --- | --- | --- +*null* | space | enter | shift +*null* | backspace | delete | control +Sft//Cp | shift | caps lock | *null* +Q//Esc | KC_Q | escape | *null* + +# Gherkin Flashing +## Windows +1. The standard Gherkin uses a ProMicro (or clone) microcontroller, which has the Caterina bootloader by default. +2. If you have never flashed your ProMicro with QMK before, you will need to short the RST pin to GND to put it into bootloader mode (you only have 7 seconds to flash once it enters bootloader mode). You may need to touch the RST pin to GND **TWICE** in quick succession if it doesn't flash with just one touch. +3. Once connected to your computer, you should be able to flash using +`make gherkin:wanleg:avrdude` +4. Once you've been able to successfully flash the ProMicro, you should be able to use the `RESET` key for future flashes instead of shorting the RST pin. + +## Linux +### First Flash with QMK +The built-in `:avrdude` QMK target in Linux doesn't work with the default Caterina bootloader on the ProMicro, so we have to use avrdude separately. The instructions below are adapted from https://deskthority.net/workshop-f7/how-to-use-a-pro-micro-as-a-cheap-controller-converter-like-soarer-s-t8448.html + +1. To flash the device, you need to have AVRdude installed. You can do this via your distro's package manager (or compile from source if needed). +2. Once avrdude has been installed, open a terminal and run +`ls /dev/tty*` +3. Next, plug in your device and re-run `ls /dev/tty*` +There should be one more device than was seen previously. Make a note of it. For me, it's `/dev/ttyACM0`. +4. Navigate to the directory with your `.hex` file in it. Touch the RST pin to GND **TWICE** in quick succession, then run the following within 7 seconds: +`sudo avrdude -p m32u4 -P YOUR_SERIAL_PORT -c avr109 -U flash:w:YOUR_FILENAME.hex` +Replace YOUR_SERIAL_PORT with your serial port's device name, and YOUR_FILENAME.hex with the appropriate filename. For me, it looks like this: +`sudo avrdude -p m32u4 -P /dev/ttyACM0 -c avr109 -U flash:w:gherkin_wanleg.hex` +If you miss the 7 second window, the ProMicro will leave bootloader mode and the flash will fail. Hit `Control` + `C` to exit the `avrdude` command, connect RST to GND twice quickly, and try the `avrdude` command again. + +### Subsequent Flashes with QMK +1. Re-flashing is similar to the initial flash procedure. Plug in your keyboard, open a terminal and run +`ls /dev/tty*` +2. Next, hit the `RESET` key on your keyboard and re-run the `ls /dev/tty*` command to find your keyboard's serial port. +3. Flash your keyboard with the avrdude command you used for the initial flash within 7 seconds after hitting `RESET`. + +# ProMicro Bootloader Replacement (Caterina to QMK DFU) +If you have an Arduino (or clone), you can replace the bootloader for a few extra features (e.g. no more 7 second "flash window", simplified Linux flashing, blinking LED when the ProMicro is in bootloader mode, ability to exit bootloader mode without unplugging your keyboard, among others). +The instructions below have been adapted from https://www.reddit.com/r/olkb/comments/8sxgzb/replace_pro_micro_bootloader_with_qmk_dfu/) +## Arduino Setup +1. Upload the ArduinoISP sketch onto your Arduino board (https://www.arduino.cc/en/Tutorial/ArduinoISP). +2. Wire the Arduino to the ProMicro + +| Arduino | ProMicro | +| --- | --- | +| 10 | RST | +| 11 | 16 | +| 12 | 14 | +| 13 | 15 | +| GND | GND | +| 5V | VCC | + +## Make the QMK DFU .hex +3. In `config.h` add the following. This is already set up in `qmk_firmware/layouts/community/ortho_3x10/wanleg`. You only need to do this on other keymaps. +``` +#define QMK_ESC_OUTPUT B4 +#define QMK_ESC_INPUT F7 +#define QMK_LED B0 +``` +The `QMK_ESC_` lines define where the bootloader escape key is. Refer to the `MATRIX_ROW_PINS` and `MATRIX_COL_PINS` lines in your keyboard's `config.h` to choose your preferred key. +You hit the bootloader escape key to exit bootloader mode after you've hit the RESET key to enter bootloader mode (e.g. if you change your mind and don't want to flash just then). +On a Gherkin, B4/F7 corresponds to the top-left corner key. +`B0` is an indicator light on one of the ProMicro's onboard LEDs. With QMK DFU, it will flash to indicate the ProMicro is in bootloader mode. +You can add `#define QMK_SPEAKER C6` if you have a speaker hooked up to pin C6. The Gherkin PCB already uses pin C6 in its switch layout, so you cannot use a speaker on a standard Gherkin. +4. Also, you should add `BOOTLOADER = qmk-dfu` to your `rules.mk` file, so it is flagged properly. Again, this is already set up in `qmk_firmware/layouts/community/ortho_3x10/wanleg`. +5. Once you've made the required edits, it's time to compile the firmware. If you use the `:production` target when compiling, it will produce the usual `.hex` file as well as `_bootloader.hex` and `_production.hex` files. The `_production.hex` will be what we want. This contains the bootloader and the firmware, so we only have to flash once (rather than flash the bootloader, and THEN flash the firmware). +For example +`make ::production` + +## Burn QMK DFU +6. Navigate to the directory with your `_production.hex` file, and burn it with the following command +`avrdude -b 19200 -c avrisp -p m32u4 -v -e -U lock:w:0x3F:m -U efuse:w:0xC3:m -U hfuse:w:0xD9:m -U lfuse:w:0x5E:m -U YOUR_production.hex -P comPORT` +Change `comPORT` to whatever port is used by the Arduino (e.g. `com11` in Windows or `/dev/ttyACM0` in Linux). Use Device Manager in Windows to find the port being used. Use `ls /dev/tty*` in Linux. Change `YOUR_production.hex` to whatever you've created in the previous step. + +## Using QMK DFU +7. Once QMK DFU is burned to your ProMicro, you can then flash subsequent hex files with +`make gherkin::dfu` diff --git a/layouts/community/ortho_3x10/wanleg/rules.mk b/layouts/community/ortho_3x10/wanleg/rules.mk new file mode 100644 index 0000000000..90841d2abe --- /dev/null +++ b/layouts/community/ortho_3x10/wanleg/rules.mk @@ -0,0 +1,3 @@ +SWAP_HANDS_ENABLE = no + +BOOTLOADER = qmk-dfu \ No newline at end of file diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h new file mode 100644 index 0000000000..2c6fcc75f0 --- /dev/null +++ b/layouts/community/ortho_4x12/wanleg/config.h @@ -0,0 +1,15 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +//QMK DFU settings (ProMicro boards) +// set top left key as bootloader mode escape key on Lets Split rev2 +#if defined(KEYBOARD_lets_split_rev2) +#define QMK_LED B0 +#define QMK_ESC_OUTPUT F6 // usually COL +#define QMK_ESC_INPUT D7 // usually ROW +#define USE_SERIAL +#undef USE_I2C +#define EE_HANDS +#endif + +#endif diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c new file mode 100644 index 0000000000..43cae711ac --- /dev/null +++ b/layouts/community/ortho_4x12/wanleg/keymap.c @@ -0,0 +1,67 @@ +#include QMK_KEYBOARD_H +#include "wanleg.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +#if defined(KEYBOARD_lets_split_rev2) +[_GK] = LAYOUT_ortho_4x12_wrapper( + _______________GherkinLike_0_______________, + _______________GherkinLike_1_______________, + _______________GherkinLike_2_______________, + _______________GherkinLike_3_OneHand_______ +), +[ONE] = LAYOUT_ortho_4x12_wrapper( + _______________Qwerty_Row__0_______________, + _______________Qwerty_Row__1_______________, + _______________Qwerty_Row__2_______________, + KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_RGUI, KC_RCTL +), +#else +[_GK] = LAYOUT_ortho_4x12_wrapper( + _______________GherkinLike_0_______________, + _______________GherkinLike_1_______________, + _______________GherkinLike_2_______________, + _______________GherkinLike_3_______________ +), +#endif +[_QW] = LAYOUT_ortho_4x12_wrapper( + _______________Qwerty_Row__0_______________, + _______________Qwerty_Row__1_______________, + _______________Qwerty_Row__2_______________, + _______________Qwerty_Row__3_______________ +), + +[SUP] = LAYOUT_ortho_4x12_wrapper( + ________________SUPRA_Row_0________________, + ________________SUPRA_Row_1________________, + ________________SUPRA_Row_2________________, + ________________SUPRA_Row_3________________ +), + +[SUB] = LAYOUT_ortho_4x12_wrapper( + _______________SUBTER_Row__0_______________, + _______________SUBTER_Row__1_______________, + _______________SUBTER_Row__2_______________, + _______________SUBTER_Row__3_______________ +), + +[NUM] = LAYOUT_ortho_4x12_wrapper( + _______________NUMBERS_Row_0_______________, + _______________NUMBERS_Row_1_______________, + _______________NUMBERS_Row_2_______________, + _______________NUMBERS_Row_3_______________ +), + +[DIR] = LAYOUT_ortho_4x12_wrapper( + _____________DIRECTIONS_Row__0_____________, + _____________DIRECTIONS_Row__1_____________, + _____________DIRECTIONS_Row__2_____________, + _____________DIRECTIONS_Row__3_____________ +), + +[ETC] = LAYOUT_ortho_4x12_wrapper( + ______________ETCETERA_Row__0______________, + ______________ETCETERA_Row__1______________, + ______________ETCETERA_Row__2______________, + ______________ETCETERA_Row__3______________ +), +}; diff --git a/layouts/community/ortho_4x12/wanleg/readme.md b/layouts/community/ortho_4x12/wanleg/readme.md new file mode 100644 index 0000000000..2f89d1de61 --- /dev/null +++ b/layouts/community/ortho_4x12/wanleg/readme.md @@ -0,0 +1,24 @@ +# Let's Split Flashing +(More information at `qmk_firmware/layouts/community/ortho_3x10/wanleg/readme.md`) +## Make the QMK DFU .hex +`make lets_split/rev2:wanleg:production dfu=qmk` + +## Burning EEPROM settings and Firmware +Navigate to the directory with your .hex file and the `eeprom-lefthand.eep` and `eeprom-righthand.eep` files in it. +**Burn Left Side With QMK DFU and Firmware** +`avrdude -b 19200 -c avrisp -p m32u4 -v -e -U lock:w:0x3F:m -U efuse:w:0xC3:m -U hfuse:w:0xD9:m -U lfuse:w:0x5E:m -U eeprom:w:eeprom-lefthand.eep -P comPORT -U flash:w:YOUR_production.hex:a` + +**Burn Right Side With QMK DFU and Firmware** +`avrdude -b 19200 -c avrisp -p m32u4 -v -e -U lock:w:0x3F:m -U efuse:w:0xC3:m -U hfuse:w:0xD9:m -U lfuse:w:0x5E:m -U eeprom:w:eeprom-righthand.eep -P comPORT -U flash:w:YOUR_production.hex:a` + +Change `comPORT` to whatever port is used by the Arduino (e.g. `com11` in Windows or `/dev/ttyACM0` in Linux). Use Device Manager in Windows to find the port being used. Use `ls /dev/tty*` in Linux. Change `YOUR_production.hex` to whatever you've created in the previous step. + +## Using QMK DFU +Once QMK DFU is burned to your ProMicro, you can then flash subsequent hex files with +`make lets_split/rev2::dfu dfu=qmk` +The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina` + +--- +# JJ40 +## To Do +- [ ] Mousekeys not working with Userspace for some reason (jj40 only) \ No newline at end of file diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk new file mode 100644 index 0000000000..79929689cb --- /dev/null +++ b/layouts/community/ortho_4x12/wanleg/rules.mk @@ -0,0 +1,6 @@ +AUDIO_ENABLE = no +SWAP_HANDS_ENABLE = yes + +ifeq ($(strip $(KEYBOARD)), jj40) + SWAP_HANDS_ENABLE = no +endif \ No newline at end of file diff --git a/layouts/community/ortho_5x15/wanleg/config.h b/layouts/community/ortho_5x15/wanleg/config.h new file mode 100644 index 0000000000..a55fc6a3eb --- /dev/null +++ b/layouts/community/ortho_5x15/wanleg/config.h @@ -0,0 +1,3 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H +#endif diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c new file mode 100644 index 0000000000..7731edb6a2 --- /dev/null +++ b/layouts/community/ortho_5x15/wanleg/keymap.c @@ -0,0 +1,176 @@ +#include QMK_KEYBOARD_H +#include "wanleg.h" + +#define _________________BLANK_75__________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +#define _________________Num_Row_75________________ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* QWERTY 75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| gherkin| | FN | + * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| + * | | 7 | 8 | 9 | + * | |--------+--------+--------| + * | 4x12 QWERTY LAYOUT | 4 | 5 | 6 | + * | |--------+--------+--------| + * | | 1 | 2 | 3 | + * | |--------+--------+--------| + * | | 0 | 0 | . | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[QW75] = LAYOUT_ortho_5x15_wrapper( + _________________Num_Row_75________________, GHERKIN75, XXXXXXX, FUNCTION75, + _______________Qwerty_Row__0_______________, KC_KP_7, KC_KP_8, KC_KP_9, + _______________Qwerty_Row__1_______________, KC_KP_4, KC_KP_5, KC_KP_6, + _______________Qwerty_Row__2_______________, KC_KP_1, KC_KP_2, KC_KP_3, + KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, SUBTER75, KC_LSFT, KC_SPC, SUPRA75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +), + + /* Gherkin 75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | | FN | + * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| + * | | 7 | 8 | 9 | + * | |--------+--------+--------| + * | 4x12 GHERKIN LAYOUT | 4 | 5 | 6 | + * | |--------+--------+--------| + * | | 1 | 2 | 3 | + * | |--------+--------+--------| + * | | 0 | 0 | . | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[GK75] = LAYOUT_ortho_5x15_wrapper( + _________________Num_Row_75________________, QWERTY75, XXXXXXX, FUNCTION75, + _______________GherkinLike_0_______________, KC_KP_7, KC_KP_8, KC_KP_9, + _______________GherkinLike_1_______________, KC_KP_4, KC_KP_5, KC_KP_6, + TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM75, KC_V), LT(ETC75, KC_B), KC_N, LT(DIR75, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_KP_1, KC_KP_2, KC_KP_3, + KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +), + + /* SUBTER75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | SUBTER ROW 0 LAYOUT | | | | + * |-----------------------------------------------------------------------------------------------------------+--------+-----------------| + * | | / | * | - | + * | |--------+--------+--------| + * | 4x12 SUBTER LAYOUT | | | + | + * | |--------+--------+--------| + * | | | | ENTER | + * | |--------+--------+--------| + * | | | | | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[SUB75] = LAYOUT_ortho_5x15_wrapper( + _______________SUBTER_Row__0_______________, _______, _______, _______, + _______________SUBTER_Row__0_______________, KC_PSLS, KC_PAST, KC_PMNS, + _______________SUBTER_Row__1_______________, _______, _______, KC_PPLS, + _______________SUBTER_Row__2_______________, _______, _______, KC_PENT, + _______, _______, GHERKIN75, _______, _______, _______, KC_ENT, KC_LSFT, _______, _______, _______, _______, _______, _______, _______ +), + +/* SUPRA75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| + * | | | | | + * | |--------+--------+--------| + * | 4x12 SUPRA LAYOUT | | | | + * | |--------+--------+--------| + * | | | | | + * | |--------+--------+--------| + * | | | | | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[SUP75] = LAYOUT_ortho_5x15_wrapper( + _________________BLANK_75__________________, + ________________SUPRA_Row_0________________, _______, _______, _______, + ________________SUPRA_Row_1________________, _______, _______, _______, + ________________SUPRA_Row_2________________, _______, _______, _______, + _________________BLANK_75__________________ +), + +/* Gherkin 75 Numbers + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| + * | | / | * | - | + * | |--------+--------+--------| + * | 4x12 NUMBERS LAYOUT | | | + | + * | |--------+--------+--------| + * | | | | ENTER | + * | |--------+--------+--------| + * | | | | | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[NUM75] = LAYOUT_ortho_5x15_wrapper( + _________________BLANK_75__________________, + _______________NUMBERS_Row_0_______________, KC_PSLS, KC_PAST, KC_PMNS, + _______________NUMBERS_Row_1_______________, _______, _______, KC_PPLS, + _______________NUMBERS_Row_2_______________, _______, _______, KC_PENT, + _______________NUMBERS_Row_3_______________, _______, _______, _______ +), + +/* Gherkin 75 Et Cetera + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| + * | | | | | + * | |--------+--------+--------| + * | 4x12 ETCETERA LAYOUT | | | | + * | |--------+--------+--------| + * | | | | | + * | |--------+--------+--------| + * | | | | | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[ETC75] = LAYOUT_ortho_5x15_wrapper( + _________________BLANK_75__________________, + ______________ETCETERA_Row__0______________, _______, _______, _______, + ______________ETCETERA_Row__1______________, _______, _______, _______, + ______________ETCETERA_Row__2______________, _______, _______, _______, + ______________ETCETERA_Row__3______________, _______, _______, _______ +), + +/* Gherkin 75 Directional Keys + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| + * | | | | | + * | |--------+--------+--------| + * | 4x12 DIRECTIONAL LAYOUT | | | | + * | |--------+--------+--------| + * | | | | | + * | |--------+--------+--------| + * | | | | | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[DIR75] = LAYOUT_ortho_5x15_wrapper( + _________________BLANK_75__________________, + _____________DIRECTIONS_Row__0_____________, _______, _______, _______, + _____________DIRECTIONS_Row__1_____________, _______, _______, _______, + _____________DIRECTIONS_Row__2_____________, _______, _______, _______, + _______, _______, QWERTY75, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + + +/* FUNCTION 75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| + * | | | | | | | | | | | | | | | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | CAP LK | MS BT5 | MS BT4 | MS BT3 | MS BT2 | SLOW M | FAST M | NEXT | VOL+ | VOL- | PLAY | | | | WHEEL+ | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | RGB TG | RGB MD | RGB HI | RGB HD | RGB SI | RGB SD | RGB VI | RGB VD | BL TOG | BL INC | BL DEC | | | MOUS U | WHEEL- | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | | | | | MS BT1 | | | | | | MOUS L | MOUS D | MOUS R | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[FN75] = LAYOUT_ortho_5x15_wrapper( + _________________BLANK_75__________________, + _________________BLANK_75__________________, + KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, KC_WH_U, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_INC, BL_DEC, _______, _______, KC_MS_U, KC_WH_D, + _______, _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R +), +}; diff --git a/layouts/community/ortho_5x15/wanleg/rules.mk b/layouts/community/ortho_5x15/wanleg/rules.mk new file mode 100644 index 0000000000..e36226fb2e --- /dev/null +++ b/layouts/community/ortho_5x15/wanleg/rules.mk @@ -0,0 +1 @@ +SWAP_HANDS_ENABLE = no \ No newline at end of file diff --git a/users/wanleg/config.h b/users/wanleg/config.h new file mode 100644 index 0000000000..22073449b2 --- /dev/null +++ b/users/wanleg/config.h @@ -0,0 +1,32 @@ +#ifndef USERSPACE_CONFIG_H +#define USERSPACE_CONFIG_H + +#define PREVENT_STUCK_MODIFIERS + +//TAPPING_TERM +#ifdef TAP_DANCE_ENABLE +#define TAPPING_TERM 200 +#endif + +//Mousekey Settings +#ifdef MOUSEKEY_ENABLE +#define MOUSEKEY_INTERVAL 16 +#define MOUSEKEY_DELAY 0 +#define MOUSEKEY_TIME_TO_MAX 60 +#define MOUSEKEY_MAX_SPEED 7 +#define MOUSEKEY_WHEEL_DELAY 0 +#endif + +// Disable action_get_macro and fn_actions, since we don't use these +// and it saves on space in the firmware. +#ifndef NO_DEBUG +#define NO_DEBUG +#endif // !NO_DEBUG +#if !defined(NO_PRINT) && !defined(CONSOLE_ENABLE) +#define NO_PRINT +#endif // !NO_PRINT +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION +#define NO_ACTION_ONESHOT + +#endif // !USERSPACE_CONFIG_H diff --git a/users/wanleg/readme.md b/users/wanleg/readme.md new file mode 100644 index 0000000000..f687b92f48 --- /dev/null +++ b/users/wanleg/readme.md @@ -0,0 +1,14 @@ +Copyright 2018 Brian Fong @wanleg + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk new file mode 100644 index 0000000000..8dcc911cef --- /dev/null +++ b/users/wanleg/rules.mk @@ -0,0 +1,19 @@ +ifeq ($(strip $(KEYBOARD)), lets_split_rev2) +SRC += ../../keyboards/lets_split/lets_split.c +endif + +SRC += wanleg.c tapdances.c + +ifndef TAP_DANCE_ENABLE +TAP_DANCE_ENABLE = yes +endif + +ifndef MOUSEKEY_ENABLE +MOUSEKEY_ENABLE = yes +endif + +#If using a ProMicro and it has the QMK DFU bootloader instead of Caterina, +#run "make : dfu=qmk" when compiling to ensure it is flagged properly after being flashed +ifeq ($(strip $(dfu)), qmk) + BOOTLOADER = qmk-dfu +endif diff --git a/users/wanleg/tapdances.c b/users/wanleg/tapdances.c new file mode 100644 index 0000000000..318810b1b2 --- /dev/null +++ b/users/wanleg/tapdances.c @@ -0,0 +1,110 @@ +//Tap Dance Settings +#include "wanleg.h" + +///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION START ///// +///// (no need to edit this section) ///// +//Enums used to clearly convey the state of the tap dance +enum { + SINGLE_TAP = 1, + SINGLE_HOLD = 2, + DOUBLE_TAP = 3, + DOUBLE_HOLD = 4, + DOUBLE_SINGLE_TAP = 5 //send SINGLE_TAP twice - NOT DOUBLE_TAP + // Add more enums here if you want for triple, quadruple, etc. +}; + +typedef struct { + bool is_press_action; + int state; +} tap; + +int cur_dance (qk_tap_dance_state_t *state) { + if (state->count == 1) { + //If count = 1, and it has been interrupted - it doesn't matter if it is pressed or not: Send SINGLE_TAP + if (state->interrupted || !state->pressed) return SINGLE_TAP; + if (state->interrupted) return SINGLE_TAP; + else return SINGLE_HOLD; + } + //If count = 2, and it has been interrupted - assume that user is trying to type the letter associated + //with single tap. + else if (state->count == 2) { + if (state->interrupted) return DOUBLE_SINGLE_TAP; + else if (state->pressed) return DOUBLE_HOLD; + else return DOUBLE_TAP; + } + else return 6; //magic number. At some point this method will expand to work for more presses +} +///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION END ///// +///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION START ///// +//instantialize an instance of 'tap' for the 'ENT' tap dance. +static tap ENTtap_state = { + .is_press_action = true, + .state = 0 +}; + +void ENT_finished (qk_tap_dance_state_t *state, void *user_data) { + ENTtap_state.state = cur_dance(state); + switch (ENTtap_state.state) { + case SINGLE_TAP: register_code(KC_SPC); break; + case SINGLE_HOLD: register_code(KC_LSFT); break; + case DOUBLE_TAP: register_code(KC_ENT); break; + case DOUBLE_HOLD: register_code(KC_NO); break; // setting double hold to do nothing (change this if you want) + case DOUBLE_SINGLE_TAP: register_code(KC_SPC); unregister_code(KC_SPC); register_code(KC_SPC); + //Last case is for fast typing. Assuming your key is `f`: + //For example, when typing the word `buffer`, and you want to make sure that you send `ff` and not `Esc`. + //In order to type `ff` when typing fast, the next character will have to be hit within the `TAPPING_TERM`, which by default is 200ms. + } +} + +void ENT_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (ENTtap_state.state) { + case SINGLE_TAP: unregister_code(KC_SPC); break; + case SINGLE_HOLD: unregister_code(KC_LSFT); break; + case DOUBLE_TAP: unregister_code(KC_ENT); break; + case DOUBLE_HOLD: unregister_code(KC_NO); + case DOUBLE_SINGLE_TAP: unregister_code(KC_SPC); + } + ENTtap_state.state = 0; +} + +//instanalize an instance of 'tap' for the 'DEL' tap dance. +static tap DELtap_state = { + .is_press_action = true, + .state = 0 +}; + +void DEL_finished (qk_tap_dance_state_t *state, void *user_data) { + DELtap_state.state = cur_dance(state); + switch (DELtap_state.state) { + case SINGLE_TAP: register_code(KC_BSPC); break; + case SINGLE_HOLD: register_code(KC_LCTL); break; + case DOUBLE_TAP: register_code(KC_DEL); break; + case DOUBLE_HOLD: register_code(KC_NO); break; + case DOUBLE_SINGLE_TAP: register_code(KC_BSPC); unregister_code(KC_BSPC); register_code(KC_BSPC); + } +} + +void DEL_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (DELtap_state.state) { + case SINGLE_TAP: unregister_code(KC_BSPC); break; + case SINGLE_HOLD: unregister_code(KC_LCTL); break; + case DOUBLE_TAP: unregister_code(KC_DEL); break; + case DOUBLE_HOLD: unregister_code(KC_NO); + case DOUBLE_SINGLE_TAP: unregister_code(KC_BSPC); + } + DELtap_state.state = 0; +} +///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION END ///// + +//Tap Dance Definitions +//THIS SECTION HAS TO BE AT THE END OF THE TAP DANCE SECTION +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_SFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS) +// Other declarations would go here, separated by commas, if you have them + ,[TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC) + ,[ENT_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ENT_finished, ENT_reset) + ,[DEL_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, DEL_finished, DEL_reset) +}; + +//In Layer declaration, add tap dance item in place of a key code +//TD(TD_SFT_CAPS) \ No newline at end of file diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c new file mode 100644 index 0000000000..0175ae2010 --- /dev/null +++ b/users/wanleg/wanleg.c @@ -0,0 +1,158 @@ +#include "wanleg.h" + +// Defines actions for my global custom keycodes. Defined in wanleg.h file +// Then runs the _keymap's record handier if not processed here +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + print("mode just switched to qwerty and this is a huge string\n"); + set_single_persistent_default_layer(_QW); + } + return false; + break; + case GHERKIN: + if (record->event.pressed) { + set_single_persistent_default_layer(_GK); + } + return false; + break; + case gGHERKIN: + if (record->event.pressed) { + set_single_persistent_default_layer(gGK); + } + return false; + break; + case ONEHAND: + if (record->event.pressed) { + set_single_persistent_default_layer(ONE); + } + return false; + break; + case QWERTY75: + if (record->event.pressed) { + set_single_persistent_default_layer(QW75); + } + return false; + break; + case GHERKIN75: + if (record->event.pressed) { + set_single_persistent_default_layer(GK75); + } + return false; + break; + case SUBTER: + if (record->event.pressed) { + layer_on(SUB); + } else { + layer_off(SUB); + } + return false; + break; + case SUPRA: + if (record->event.pressed) { + layer_on(SUP); + } else { + layer_off(SUP); + } + return false; + break; + case NUMBER: + if (record->event.pressed) { + layer_on(NUM); + } else { + layer_off(NUM); + } + return false; + break; + case DIRECTION: + if (record->event.pressed) { + layer_on(DIR); + } else { + layer_off(DIR); + } + return false; + break; + case ETCETERA: + if (record->event.pressed) { + layer_on(ETC); + } else { + layer_off(ETC); + } + return false; + break; + case gNUMBER: + if (record->event.pressed) { + layer_on(gNUM); + } else { + layer_off(gNUM); + } + return false; + break; + case gDIRECTION: + if (record->event.pressed) { + layer_on(gDIR); + } else { + layer_off(gDIR); + } + return false; + break; + case gETCETERA: + if (record->event.pressed) { + layer_on(gETC); + } else { + layer_off(gETC); + } + return false; + break; + case SUBTER75: + if (record->event.pressed) { + layer_on(SUB75); + } else { + layer_off(SUB75); + } + return false; + break; + case SUPRA75: + if (record->event.pressed) { + layer_on(SUP75); + } else { + layer_off(SUP75); + } + return false; + break; + case NUMBER75: + if (record->event.pressed) { + layer_on(NUM75); + } else { + layer_off(NUM75); + } + return false; + break; + case DIRECTION75: + if (record->event.pressed) { + layer_on(DIR75); + } else { + layer_off(DIR75); + } + return false; + break; + case ETCETERA75: + if (record->event.pressed) { + layer_on(ETC75); + } else { + layer_off(ETC75); + } + return false; + break; + case FUNCTION75: + if (record->event.pressed) { + layer_on(FN75); + } else { + layer_off(FN75); + } + return false; + break; + } + return true; +} diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h new file mode 100644 index 0000000000..da14dcdf5a --- /dev/null +++ b/users/wanleg/wanleg.h @@ -0,0 +1,308 @@ +#ifndef USERSPACE +#define USERSPACE + +#include "quantum.h" + +// Define layer names and order +#ifdef KEYBOARD_gherkin +enum userspace_layers { + gGK = 0, + gNUM, + gDIR, + gETC, + _GK, + _QW, + QW75, + GK75, + ONE, + SUB, + SUP, + NUM, + DIR, + ETC, + SUB75, + SUP75, + NUM75, + DIR75, + ETC75, + FN75 +}; +#elif KEYBOARD_xd75 +enum userspace_layers { + GK75 = 0, + QW75, + SUB75, + SUP75, + NUM75, + DIR75, + ETC75, + FN75, + gGK, + _GK, + _QW, + ONE, + SUB, + SUP, + NUM, + DIR, + ETC, + gNUM, + gDIR, + gETC, +}; +#else + enum userspace_layers { + _GK = 0, + _QW, + QW75, + GK75, + gGK, + ONE, + SUB, + SUP, + NUM, + DIR, + ETC, + gNUM, + gDIR, + gETC, + SUB75, + SUP75, + NUM75, + DIR75, + ETC75, + FN75 +}; +#endif + +enum userspace_custom_keycodes { + gGHERKIN = SAFE_RANGE, + GHERKIN, + QWERTY, + QWERTY75, + GHERKIN75, + ONEHAND, + SUBTER, + SUPRA, + NUMBER, + DIRECTION, + ETCETERA, + gNUMBER, + gDIRECTION, + gETCETERA, + SUBTER75, + SUPRA75, + NUMBER75, + DIRECTION75, + ETCETERA75, + FUNCTION75 + +}; + +//Tap Dance Declarations (list of my tap dance configurations) +#ifdef TAP_DANCE_ENABLE +enum { + TD_SFT_CAPS = 0 + ,TD_Q_ESC + ,ENT_TAP_DANCE + ,DEL_TAP_DANCE +}; +#endif + +// Since our quirky block definitions are basically a list of comma separated +// arguments, we need a wrapper in order for these definitions to be +// expanded before being used as arguments to the LAYOUT_xxx macro. +#if (!defined(LAYOUT) && defined(KEYMAP)) +#define LAYOUT KEYMAP +#endif + +#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_ortho_3x10_wrapper(...) LAYOUT_ortho_3x10(__VA_ARGS__) +#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) +#define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) + +// Blocks for each of the major keyboard layouts +// Organized so we can quickly adapt and modify all of them +// at once, rather than for each keyboard, one at a time. +// And this allows for much cleaner blocks in the keymaps. + +// NOTE: These are all the same length. If you do a search/replace +// then you need to add/remove underscores to keep the +// lengths consistent. + + +/* Pure Gherkin + * .-----------------------------------------------------------------------------------------. + * | Q//ESC | W | E | R | T | Y | U | I | O | P | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | A | S | D | F | G | H | J | K | L | SPACE | + * | | | | | | | | | |SFThold | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | Z | X | C | V/gNUM | B/gETC | N | M/gDIR | ,/GUI | ./ALT | BKSC | + * | SFThold| | | | | | | | |CTRLhold| + * '-----------------------------------------------------------------------------------------' + */ +#define _______________Gherkin_Row_0_______________ TD(TD_Q_ESC), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P +#define _______________Gherkin_Row_1_______________ KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SPC) +#define _______________Gherkin_Row_2_______________ SFT_T(KC_Z), KC_X, KC_C, LT(gNUM,KC_V), LT(gETC,KC_B), KC_N, LT(gDIR,KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC) + +/* Directional Keys + * .-----------------------------------------------------------------------------------------. + * | TAB | up | | INS | CTRL | SHIFT | PgUp | HOME | - | = | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | left | down | right | PrScr | SHIFT | CTRL | PgDn | END | [ | ] | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | P-Brk | | | | | | | RGUI | ALT | / | + * '-----------------------------------------------------------------------------------------' + */ +#define _______________Gherkin_DIR_0_______________ KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_RSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL +#define _______________Gherkin_DIR_1_______________ KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_RCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC +#define _______________Gherkin_DIR_2_______________ KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_LALT, KC_SLSH + +/* Numbers + * .-----------------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | F11 | F12 | | | | ENTER | SHIFT | GUI | ./ALT | BKSC | + * | | | | | | | | | |CTRLhold| + * '-----------------------------------------------------------------------------------------' + */ +#define _______________Gherkin_NUM_0_______________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 +#define _______________Gherkin_NUM_1_______________ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0 +#define _______________Gherkin_NUM_2_______________ KC_F11, KC_F12, _______,_______, _______, KC_ENT, KC_RSFT, KC_RGUI, ALT_T(KC_DOT), CTL_T(KC_BSPC) + +/* Et Cetera + * .-----------------------------------------------------------------------------------------. + * | ` | mUP | | | RESET | SHIFT | mScrUp | mScrDn | | \ | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | Sft//Cp| | | | | C-A-D | mScrL | mScrR | ALT | DEL | + * '-----------------------------------------------------------------------------------------' + */ +#define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,_______, RESET, KC_RSFT, KC_WH_U, KC_WH_D, _______, KC_BSLS +#define _______________Gherkin_ETC_1_______________ KC_MS_L, KC_MS_D, KC_MS_R,_______, KC_LSFT, KC_BTN3, KC_BTN1, KC_BTN2, KC_SCLN, KC_QUOT +#define _______________Gherkin_ETC_2_______________ TD(TD_SFT_CAPS),_______, _______,_______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL + +/* Gherkin-Like + * .-----------------------------------------------------------------------------------------------------------. + * | ESC | Q//ESC | W | E | R | T | Y | U | I | O | P | BACKSP | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | TAB | A | S | D | F | G | H | J | K | L | SPACE | ' | + * | | | | | | | | | | |SFThold | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * |SFT/CAPS| Z | X | C | V/NUM | B/ETC | N | M/DIR | ,/GUI | ./ALT | BKSC | ENT/SFT| + * | |SFThold | | | | | | | | |CTRLhold| | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | LCTRL | LGUI | ALT | ONEHAND| NUM | ETC | SPACE | DIR | RGUI | ALT | DEL | CTRL | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define _______________GherkinLike_0_______________ KC_ESC, _______________Gherkin_Row_0_______________, KC_BSPC +#define _______________GherkinLike_1_______________ KC_TAB, _______________Gherkin_Row_1_______________, KC_QUOT +#define _______________GherkinLike_2_______________ TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V),LT(ETC, KC_B),KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT) +#define _______________GherkinLike_3_______________ KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL +#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL + +/* Qwerty + * .-------------------------------------------------------------------------------------. + * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |-------+------+------+------+------+-------------+------+------+------+------+-------| + * | Tab | A | S | D | F | G | H | J | K | L | ; | ' | + * |-------+------+------+------+------+------|------+------+------+------+------+-------| + * |Sft/Cps| Z | X | C | V | B | N | M | , | . | / |ENT/SFT| + * |-------+------+------+------+------+------+------+------+------+------+------+-------| + * | LCTRL | LGUI | ALT | ALT | SUB | SHIFT| SPACE| SUP | RGUI | RALT | DEL | CTRL | + * '-------------------------------------------------------------------------------------' + */ +#define _______________Qwerty_Row__0_______________ KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC +#define _______________Qwerty_Row__1_______________ KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT +#define _______________Qwerty_Row__2_______________ TD(TD_SFT_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_ENT) +#define _______________Qwerty_Row__3_______________ KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, SUBTER, KC_LSFT, KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL + +/* SUPRA + * .-----------------------------------------------------------------------------------------------------------. + * | RESET | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | left | down | right | PrScr | SHIFT | CTRL | PgDn | End | [ | ] | \ | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | P-Brk | | | | | | | RGUI | ALT | | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | | | | | | | | | | | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define ________________SUPRA_Row_0________________ RESET, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_RSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL +#define ________________SUPRA_Row_1________________ _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_RCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, KC_BSLS +#define ________________SUPRA_Row_2________________ _______, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, _______ +#define ________________SUPRA_Row_3________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + +/* SUBTER + * .-----------------------------------------------------------------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | DEL | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | F11 | F12 | | | | | | RGUI | ./ALT | BKSC | | + * | | | | | | | | | | |CTRLhold| | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | gherkin| | | | ENTER | SHIFT | | | | | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define _______________SUBTER_Row__0_______________ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL +#define _______________SUBTER_Row__1_______________ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______ +#define _______________SUBTER_Row__2_______________ _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_RGUI,ALT_T(KC_DOT), CTL_T(KC_BSPC), _______ +#define _______________SUBTER_Row__3_______________ _______, _______, GHERKIN, _______, _______, _______, KC_ENT, KC_LSFT, _______,_______, _______, _______ + +/* Gherkin Numbers + * .-----------------------------------------------------------------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | DEL | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | F11 | F12 | | | | ENTER | SHIFT | RGUI | ./ALT | BKSC | | + * | | | | | | | | | | |CTRLhold| | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | | | | | ENTER | SHIFT | RGUI | | | | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define _______________NUMBERS_Row_0_______________ _______, _______________Gherkin_NUM_0_______________, KC_DEL +#define _______________NUMBERS_Row_1_______________ _______, _______________Gherkin_NUM_1_______________, _______ +#define _______________NUMBERS_Row_2_______________ _______, _______________Gherkin_NUM_2_______________, _______ +#define _______________NUMBERS_Row_3_______________ _______, _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______, _______ + + +/* Gherkin Directional Keys + * .-----------------------------------------------------------------------------------------------------------. + * | | TAB | up | | INS | CTRL | SHIFT | PgUp | HOME | - | = | DEL | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | left | down | right | PrScr | SHIFT | CTRL | PgDn | END | [ | ] | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | P-Brk | | | | | | | RGUI | ALT | / | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | qwerty | | | | | | | | | | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define _____________DIRECTIONS_Row__0_____________ _______, _______________Gherkin_DIR_0_______________, KC_DEL +#define _____________DIRECTIONS_Row__1_____________ _______, _______________Gherkin_DIR_1_______________, _______ +#define _____________DIRECTIONS_Row__2_____________ _______, _______________Gherkin_DIR_2_______________, _______ +#define _____________DIRECTIONS_Row__3_____________ _______, _______, QWERTY, _______, _______, _______, _______, _______, _______, _______, _______, _______ + +/* Gherkin Et Cetera + * .-----------------------------------------------------------------------------------------------------------. + * | | ` | mUP | | | RESET | SHIFT | mScrUp |mScrDown| | \ | DEL | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | Sft//Cp| | | | | C-A-D |mScrLeft| mScrRt | ALT | DEL | | + * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + * | | | | | | | C-A-D | | | | | | + * '-----------------------------------------------------------------------------------------------------------' + */ +#define ______________ETCETERA_Row__0______________ _______, _______________Gherkin_ETC_0_______________, KC_DEL +#define ______________ETCETERA_Row__1______________ _______, _______________Gherkin_ETC_1_______________, _______ +#define ______________ETCETERA_Row__2______________ _______, _______________Gherkin_ETC_2_______________, _______ +#define ______________ETCETERA_Row__3______________ _______, _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______, _______ + +#endif // !USERSPACE -- cgit v1.2.3 From 10c636a1eeaff65292edabe7f01c781110ba871f Mon Sep 17 00:00:00 2001 From: Graham P Heath Date: Sun, 19 Aug 2018 15:29:11 -0500 Subject: Keyboard: add Telophase board (and Graham's keymaps) (#3244) * add my config * fix backlight, clean up that code * group background code, restore static var * qwerty is supposed to be in the middle * wrap layer change backlight in ifdef * backlight levels and some more 'emojis'. * Restructure to make it possible to press cmd ent on the right side of the board with one hand. * Expose the period through the number layer. Add Hyper keys to mouse layer * reduce mouse speed * add a : -P key * Thumbs up and down, remove some keys that are duplicated via function keys, clean up * fix build issues * add various emoji * duplicate default Meira keymaps * Miera updates * add documented but unmapped emoji * Sound for the Meira, was stumped by a file size! Thanks drashna! * add docs * docs * revert lib changes... * clean up * clean up * remove make file * Fixes missing key * clean up * add my lets split * add more emoji * add the telophase board (unofficially, I guess...) * add missing files * add/reset files * Review feedback implementation: Not needed. Add #define FLIP_HALF to your config.h file instead. * Review feedback implementation: All of these includes should be replaced with #include QMK_KEYBOARD_H. * Review feedback implementation: [FAILING] You may want to use LAYOUT_ortho_4x12 instead, and move this to /layouts/community/ortho_4x12/ instead. That way, you can use the same keymap for all of the boards. * clean up * add a key for command tilde (osx loves it) * at least its building again * remove adjusts and migrate layer switching to MO(_LAYER) * update the telophase readme * update the telophase readme * grahampheaths -> grahampheath * ONEHAND_ENABLE -> SWAP_HANDS_ENABLE * convert lets split to use ortho_4x12 * Move lets split keyboard layout into community/ortho_4x12 * make telophase use LAYOUT() * I did it?! * Add clap and grin * swap tabs and back and forward * whitespace --- keyboards/meira/keymaps/grahampheath/keymap.c | 34 +-- keyboards/planck/keymaps/grahampheath/readme.md | 2 +- keyboards/telophase/config.h | 87 +++++++ keyboards/telophase/keymaps/default/keymap.c | 104 ++++++++ keyboards/telophase/matrix.c | 164 ++++++++++++ keyboards/telophase/readme.md | 16 ++ keyboards/telophase/rules.mk | 75 ++++++ keyboards/telophase/telophase.c | 41 +++ keyboards/telophase/telophase.h | 67 +++++ layouts/community/ortho_4x12/grahampheath/config.h | 39 +++ layouts/community/ortho_4x12/grahampheath/keymap.c | 287 +++++++++++++++++++++ layouts/community/ortho_4x12/grahampheath/rules.mk | 3 + 12 files changed, 901 insertions(+), 18 deletions(-) create mode 100644 keyboards/telophase/config.h create mode 100644 keyboards/telophase/keymaps/default/keymap.c create mode 100644 keyboards/telophase/matrix.c create mode 100644 keyboards/telophase/readme.md create mode 100644 keyboards/telophase/rules.mk create mode 100644 keyboards/telophase/telophase.c create mode 100644 keyboards/telophase/telophase.h create mode 100644 layouts/community/ortho_4x12/grahampheath/config.h create mode 100644 layouts/community/ortho_4x12/grahampheath/keymap.c create mode 100644 layouts/community/ortho_4x12/grahampheath/rules.mk (limited to 'layouts') diff --git a/keyboards/meira/keymaps/grahampheath/keymap.c b/keyboards/meira/keymaps/grahampheath/keymap.c index 6a4b9333c7..69815ef975 100644 --- a/keyboards/meira/keymaps/grahampheath/keymap.c +++ b/keyboards/meira/keymaps/grahampheath/keymap.c @@ -61,10 +61,10 @@ enum custom_keycodes { bool TOG_STATUS = false; int RGB_current_mode; -#define KC_X0 MT(MOD_LCTL, KC_ESC) // Hold for Left Ctrl, Tap for ESC +#define KC_X0 MT(MOD_LCTL, KC_ESC) // Hold for Left Ctrl, Tap for GraveESC #define KC_X1 MT(MOD_RSFT, KC_ENT) // Hold for Right Shift, Tap for Enter #define KC_X2 MT(MOD_RSFT, LGUI(KC_ENT)) // Send Command Enter -#define KC_X3 MT(KC_LGUI, KC_SPC) // Hold for Left GUI, Tap for Space +#define KC_X3 MT(MOD_LGUI, KC_SPC) // Hold for Left GUI, Tap for Space #define KC_EMOJ TT(_EMOJI) // Hold for Emoji Layer, or tap 5 times. #define KC_QS LGUI(KC_SPC) // Send Command + Space (for QuickSilver). #define KC_TABR LGUI(KC_RCBR) // Send Command + } (for tab changing). @@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Emoji |Adjust| Ctrl | Alt |Lower | Cmd |Space |Raise | Left | Down | Up |Right | + * |Emoji | Ctrl | Alt |Lower | Cmd |Space+|Space |Raise | Left | Down | Up |Right | * `-----------------------------------------------------------------------------------' */ [_QWERTY] = KEYMAP( \ @@ -130,15 +130,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Emoji Layer * - * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ - * │HYPR0│ │ ;-) │ │ │ :-P │ │ │:'-( │FLIP │ │ │ - * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ - * │HYPR1│ 👆 │SHRUG│ │ :-( │ │ <3 │ :-) │ │LLAP │ │ │ - * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ - * │HYPR2│ │ │ | :-\ │ │ │ :-D │ SHIT│ │ │ │ - * ├─────┼─────┼─────┼─────┼─────┼─────┴─────┼─────┼─────┼─────┼─────┼─────┤ - * │ │ │ │ │Brig-│ Sleep │Brig+│ 👈 │ 👎 | 👍 │ 👉 │ - * └─────┴─────┴─────┴─────┴─────┴───────────┴─────┴─────┴─────┴─────┴─────┘ + * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ + * │HYPR0│ │ ;-) │ │ │ :-P │ │ │:'-( │FLIP │ │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ + * │HYPR1│ 👆 │SHRUG│ │ :-( │ │ <3 │ :-) │ │LLAP │ │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ + * │HYPR2│ │ │ | :-\ │ │ │ :-D │ SHIT│ │ │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┴─────┼─────┼─────┼─────┼─────┼─────┤ + * │ │ │ │ │Brig-│ Sleep │Brig+│ 👈 │ 👎 | 👍 │ 👉 │ + * └─────┴─────┴─────┴─────┴─────┴───────────┴─────┴─────┴─────┴─────┴─────┘ */ [_EMOJI] = KEYMAP ( \ HYPR_0, _______, WINK, _______, _______, TOUNGE, _______, _______, CRY, FLIP, _______, _______, \ @@ -151,20 +151,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Lower * ,-----------------------------------------------------------------------------------. - * | | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | + * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | * |------+------+------+------+------+------|------+------+------+------+------+------| * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Tab- | Vol- | Vol+ | Tab+ | + * | | | | | | | | Tab- | | | Tab+ | * `-----------------------------------------------------------------------------------' */ [_LOWER] = KEYMAP( \ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, \ - _______, _______, _______, _______, _______, KC_QS, KC_QS, _______, KC_TABL, THMBDN, THMBUP, KC_TABR \ + _______, _______, _______, _______, _______, KC_QS, KC_QS, _______, KC_TABL, _______, _______, KC_TABR \ ), /* Raise @@ -197,7 +197,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = KEYMAP( \ - _______, RESET, _______, KC_MRWD, KC_MPLY, KC_MFFD, KC_PSCR, _______, _______, _______, _______, KC_DEL, \ + _______, RESET, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, KC_DEL, \ _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ diff --git a/keyboards/planck/keymaps/grahampheath/readme.md b/keyboards/planck/keymaps/grahampheath/readme.md index 507120c6f1..ec8020f18c 100644 --- a/keyboards/planck/keymaps/grahampheath/readme.md +++ b/keyboards/planck/keymaps/grahampheath/readme.md @@ -1,4 +1,4 @@ # Graham's Planck ## Sounds -I've added a [8ohm 0.5W speaker](http://a.co/6MIKZSy), its a bit large, but it fits in approximately the same space as the ProMicro. I soldered to the pcb hole labeled PC6 on my Rev 3 Planck PCB, and GND on the near by chip. [Pic of an identical mod](https://i1.sndcdn.com/artworks-000128070066-myh0ls-t500x500.jpg) (not mine). +I've added a [8ohm 0.5W speaker](http://a.co/6MIKZSy), its a bit large, but it fits in approximately the same space as the ProMicro. I soldered to the pcb hole labeled PC6 on my Rev 3 Planck PCB, and GND on the near by chip. [Pic of an identical mod][https://i1.sndcdn.com/artworks-000128070066-myh0ls-t500x500.jpg] (not mine). diff --git a/keyboards/telophase/config.h b/keyboards/telophase/config.h new file mode 100644 index 0000000000..09655c0258 --- /dev/null +++ b/keyboards/telophase/config.h @@ -0,0 +1,87 @@ +/* +Copyright 2012 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ + +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER unknown +#define PRODUCT Telophase +#define DESCRIPTION q.m.k. keyboard firmware for Telophase + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +//#define BACKLIGHT_LEVELS 3 + +#define ONESHOT_TIMEOUT 500 + + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +#define PREVENT_STUCK_MODIFIERS + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +//UART settings for communication with the RF microcontroller +#define SERIAL_UART_BAUD 1000000 +#define SERIAL_UART_DATA UDR1 +#define SERIAL_UART_UBRR (F_CPU / (16UL * SERIAL_UART_BAUD) - 1) +#define SERIAL_UART_TXD_READY (UCSR1A & _BV(UDRE1)) +#define SERIAL_UART_RXD_PRESENT (UCSR1A & _BV(RXC1)) +#define SERIAL_UART_INIT() do { \ + /* baud rate */ \ + UBRR1L = SERIAL_UART_UBRR; \ + /* baud rate */ \ + UBRR1H = SERIAL_UART_UBRR >> 8; \ + /* enable TX and RX */ \ + UCSR1B = _BV(TXEN1) | _BV(RXEN1); \ + /* 8-bit data */ \ + UCSR1C = _BV(UCSZ11) | _BV(UCSZ10); \ + } while(0) + +#endif diff --git a/keyboards/telophase/keymaps/default/keymap.c b/keyboards/telophase/keymaps/default/keymap.c new file mode 100644 index 0000000000..1e692ba12d --- /dev/null +++ b/keyboards/telophase/keymaps/default/keymap.c @@ -0,0 +1,104 @@ +// this is the style you want to emulate. +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, + +#include "telophase.h" + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +enum telophase_layers +{ + _QWERTY, + _LOWER, + _RAISE, + _ADJUST, +}; + +enum telophase_keycodes +{ + LOWER = SAFE_RANGE, + RAISE, + ADJUST +}; + +#define LONGPRESS_DELAY 150 +#define LAYER_TOGGLE_DELAY 300 + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_QWERTY] = { /*QWERTY*/ + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC }, + {KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {KC_LCTL, KC_LGUI, KC_LALT, ADJUST, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT } +}, + + +[_LOWER] = { /*Lower*/ + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, + {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE }, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______ }, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY } +}, + + + +[_RAISE] = { /*Raise*/ + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL }, + {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS }, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______ }, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY } + +}, + + +[_ADJUST] = { /*Adjust*/ + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ }, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ }, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ }, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ } + +}, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + } else { + layer_off(_LOWER); + } + return false; + break; + + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + } else { + layer_off(_RAISE); + } + return false; + break; + + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + + } + return true; +} + +void matrix_scan_user(void) { + return; +}; + diff --git a/keyboards/telophase/matrix.c b/keyboards/telophase/matrix.c new file mode 100644 index 0000000000..b3544453e7 --- /dev/null +++ b/keyboards/telophase/matrix.c @@ -0,0 +1,164 @@ +/* +Copyright 2012 Jun Wako +Copyright 2014 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include +#include +#if defined(__AVR__) +#include +#endif +#include "wait.h" +#include "print.h" +#include "debug.h" +#include "util.h" +#include "matrix.h" +#include "timer.h" + +#if (MATRIX_COLS <= 8) +# define print_matrix_header() print("\nr/c 01234567\n") +# define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) +# define matrix_bitpop(i) bitpop(matrix[i]) +# define ROW_SHIFTER ((uint8_t)1) +#elif (MATRIX_COLS <= 16) +# define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") +# define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) +# define matrix_bitpop(i) bitpop16(matrix[i]) +# define ROW_SHIFTER ((uint16_t)1) +#elif (MATRIX_COLS <= 32) +# define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") +# define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) +# define matrix_bitpop(i) bitpop32(matrix[i]) +# define ROW_SHIFTER ((uint32_t)1) +#endif + +/* matrix state(1:on, 0:off) */ +static matrix_row_t matrix[MATRIX_ROWS]; + +__attribute__ ((weak)) +void matrix_init_quantum(void) { + matrix_init_kb(); +} + +__attribute__ ((weak)) +void matrix_scan_quantum(void) { + matrix_scan_kb(); +} + +__attribute__ ((weak)) +void matrix_init_kb(void) { + matrix_init_user(); +} + +__attribute__ ((weak)) +void matrix_scan_kb(void) { + matrix_scan_user(); +} + +__attribute__ ((weak)) +void matrix_init_user(void) { +} + +__attribute__ ((weak)) +void matrix_scan_user(void) { +} + +inline +uint8_t matrix_rows(void) { + return MATRIX_ROWS; +} + +inline +uint8_t matrix_cols(void) { + return MATRIX_COLS; +} + +void matrix_init(void) { + + matrix_init_quantum(); +} + +uint8_t matrix_scan(void) +{ + SERIAL_UART_INIT(); + + uint32_t timeout = 0; + + //the s character requests the RF slave to send the matrix + SERIAL_UART_DATA = 's'; + + //trust the external keystates entirely, erase the last data + uint8_t uart_data[13] = {0}; + + //there are 12 bytes corresponding to 12 columns, and an end byte + for (uint8_t i = 0; i < 13; i++) { + //wait for the serial data, timeout if it's been too long + //this only happened in testing with a loose wire, but does no + //harm to leave it in here + while(!SERIAL_UART_RXD_PRESENT){ + timeout++; + if (timeout > 10000){ + break; + } + } + uart_data[i] = SERIAL_UART_DATA; + } + + //check for the end packet, the key state bytes use the LSBs, so 0xE0 + //will only show up here if the correct bytes were recieved + if (uart_data[11] == 0xE0) + { + //shifting and transferring the keystates to the QMK matrix variable + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = (uint16_t) uart_data[i*2] | (uint16_t) uart_data[i*2+1] << 6; + } + } + + + matrix_scan_quantum(); + return 1; +} + +inline +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix[row] & ((matrix_row_t)1 + +#define red_led_off PORTF |= (1<<5) +#define red_led_on PORTF &= ~(1<<5) +#define blu_led_off PORTF |= (1<<4) +#define blu_led_on PORTF &= ~(1<<4) +#define grn_led_off PORTD |= (1<<1) +#define grn_led_on PORTD &= ~(1<<1) + +#define set_led_off red_led_off; grn_led_off; blu_led_off +#define set_led_red red_led_on; grn_led_off; blu_led_off +#define set_led_blue red_led_off; grn_led_off; blu_led_on +#define set_led_green red_led_off; grn_led_on; blu_led_off +#define set_led_yellow red_led_on; grn_led_on; blu_led_off +#define set_led_magenta red_led_on; grn_led_off; blu_led_on +#define set_led_cyan red_led_off; grn_led_on; blu_led_on +#define set_led_white red_led_on; grn_led_on; blu_led_on + +/* +#define LED_B 5 +#define LED_R 6 +#define LED_G 7 + +#define all_leds_off PORTF &= ~(1< +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#define FLIP_HALF + +#include "keyboards/lets_split/config.h" + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +#define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +#endif diff --git a/layouts/community/ortho_4x12/grahampheath/keymap.c b/layouts/community/ortho_4x12/grahampheath/keymap.c new file mode 100644 index 0000000000..e2421e9a7e --- /dev/null +++ b/layouts/community/ortho_4x12/grahampheath/keymap.c @@ -0,0 +1,287 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +enum custom_layers { + _QWERTY, + _LOWER, + _RAISE, + _EMOJI, +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + EMOJI, + ABOVE, + BUG, + CONFUSED, + CRY, + CLAP, + FLIP, + FNGLEFT, + FNGRIGHT, + FROWN, + GRIN, + HEART, + JOY, + LLAP, + ROFL, + SHIT, + SING, + SHRUG, + THINK, + THMBDN, + THMBUP, + TOUNGE, + WINK +}; + +#define KC_X0 MT(MOD_LCTL, KC_ESC) // Hold for Left Ctrl, Tap for GraveESC +#define KC_X1 MT(MOD_RSFT, KC_ENT) // Hold for Right Shift, Tap for Enter +#define KC_X2 MT(MOD_RSFT, LGUI(KC_ENT)) // Send Command Enter +#define KC_BACK LGUI(KC_LBRC) // Back +#define KC_FORWARD LGUI(KC_RBRC) // Forward +#define KC_EMOJ TT(_EMOJI) // Hold for Emoji Layer, or tap 5 times. +#define KC_QS LGUI(KC_SPC) // Send Command + Space (for QuickSilver). +#define KC_WTAB LGUI(KC_TILD) // Send Command + ~ (for window changing). +#define KC_TABR LGUI(KC_RCBR) // Send Command + } (for tab changing). +#define KC_TABL LGUI(KC_LCBR) // Send Command + { (for tab changing). +#define HYPR_0 HYPR(KC_TILD) // Send Hyper + ~. +#define HYPR_1 HYPR(KC_EXLM) // Send Hyper + !. +#define HYPR_2 HYPR(KC_AT) // Send Hyper + @. + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Tab | A | S | D | F | G | H | J | K | L | ; | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Emoji | Ctrl | Alt |Lower | Cmd |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_ortho_4x12( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_X0, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_X1, + KC_EMOJ, KC_LCTL, KC_LALT, KC_LGUI, MO(_LOWER), KC_SPC, KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * |cmd(~)| <- | -> | TAB_L| TAB_R| F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Tab- | Vol- | Vol+ | Tab+ | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_4x12( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_WTAB, KC_BACK, KC_FORWARD, KC_TABL, KC_TABR, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), _______, _______, _______, + _______, _______, _______, _______, _______, KC_QS, KC_QS, _______, _______, _______, _______, _______ +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * |cmd(~)| F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Home | PgUp | PgDn | End | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_4x12( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_WTAB, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, KC_X2, + _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END +), + +/* Emoji Layer + * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ + * │HYPR0│ Q │ ;-) │ E │ 🤣 │ :-P │ Y │ U │:'-( │FLIP │ P │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ + * │HYPR1│ 👆 │SHRUG│ GRIN│ :-( │ G │ <3 │ :-) │ k │LLAP │ ; │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ + * │HYPR2│🎶^🎶│💭^💭│ 👏 | :-\ │ 🐛 │ n │ :-D │ SHIT│ . │ / │ │ + * ├─────┼─────┼─────┼─────┼─────┼─────┴─────┼─────┼─────┼─────┼─────┼─────┤ + * │ │ │ │ │Brig-│ Sleep │Brig+│ 👈 │ 👎 | 👍 │ 👉 │ + * └─────┴─────┴─────┴─────┴─────┴───────────┴─────┴─────┴─────┴─────┴─────┘ + */ +[_EMOJI] = LAYOUT_ortho_4x12( + HYPR_0, _______, WINK, _______, ROFL, TOUNGE, _______, _______, CRY, FLIP, _______, _______ , + HYPR_1, ABOVE, SHRUG, GRIN, FROWN, _______, HEART, JOY, _______, LLAP, _______, _______ , + HYPR_2, SING, THINK, CLAP, CONFUSED, BUG, _______, _______, SHIT, _______, _______, _______ , + _______, _______, _______, _______, KC_SLCK, KC_SLEP, KC_SLEP, KC_PAUS, FNGLEFT, THMBDN, THMBUP, FNGRIGHT +), +}; + +#ifdef AUDIO_ENABLE +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +float tone_dvorak[][2] = SONG(DVORAK_SOUND); +float tone_colemak[][2] = SONG(COLEMAK_SOUND); +#endif + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case ABOVE: + if (record->event.pressed) { + SEND_STRING("&above; "); + } + return false; + break; + case BUG: + if (record->event.pressed) { + SEND_STRING("&bug;"); + } + return false; + break; + case CONFUSED: + if (record->event.pressed) { + SEND_STRING(":-\\"); + } + return false; + break; + case CRY: + if (record->event.pressed) { + SEND_STRING(":'-( "); + } + return false; + break; + case CLAP: + if (record->event.pressed) { + SEND_STRING("&clap; "); + } + return false; + break; + case FLIP: + if (record->event.pressed) { + SEND_STRING("&fliptable;"); + } + return false; + break; + case FNGLEFT: + if (record->event.pressed) { + SEND_STRING("&fingerleft; "); + } + return false; + break; + case FNGRIGHT: + if (record->event.pressed) { + SEND_STRING("&fingerright; "); + } + return false; + break; + case FROWN: + if (record->event.pressed) { + SEND_STRING(":-( "); + } + return false; + break; + case GRIN: + if (record->event.pressed) { + SEND_STRING(":-D "); + } + return false; + break; + case HEART: + if (record->event.pressed) { + SEND_STRING("<3 "); + } + return false; + break; + case JOY: + if (record->event.pressed) { + SEND_STRING(":-) "); + } + return false; + break; + case LLAP: + if (record->event.pressed) { + SEND_STRING("&llap; "); + } + return false; + break; + case ROFL: + if (record->event.pressed) { + SEND_STRING("&rofl; "); + } + return false; + break; + case SHIT: + if (record->event.pressed) { + SEND_STRING("&shit; "); + } + return false; + break; + case SING: + if (record->event.pressed) { + SEND_STRING("_sing_"); + } + return false; + break; + case SHRUG: + if (record->event.pressed) { + SEND_STRING("&shrug; "); + } + return false; + break; + case THINK: + if (record->event.pressed) { + SEND_STRING("_think_"); + } + return false; + break; + case THMBDN: + if (record->event.pressed) { + SEND_STRING("&thumbdown; "); + } + return false; + break; + case THMBUP: + if (record->event.pressed) { + SEND_STRING("&thumbup; "); + } + return false; + break; + case TOUNGE: + if (record->event.pressed) { + SEND_STRING(":-P "); + } + return false; + break; + case WINK: + if (record->event.pressed) { + SEND_STRING(";-) "); + } + return false; + break; + + } + return true; +} + +void matrix_scan_user(void) { + return; +}; + diff --git a/layouts/community/ortho_4x12/grahampheath/rules.mk b/layouts/community/ortho_4x12/grahampheath/rules.mk new file mode 100644 index 0000000000..457a3d01d4 --- /dev/null +++ b/layouts/community/ortho_4x12/grahampheath/rules.mk @@ -0,0 +1,3 @@ +ifndef QUANTUM_DIR + include ../../../../Makefile +endif -- cgit v1.2.3 From 9064b424e9ba581f0ea2df7353ccdeef4f4a2ce7 Mon Sep 17 00:00:00 2001 From: Erik Thorsell Date: Thu, 23 Aug 2018 04:16:16 +0100 Subject: Keymap: Add Dvorak Svorak A5 layout for Ergodox-EZ (#3725) * Add svorak a5 * Update Svorak A5 keymap * Fix issue with special characters The initial keymap did not account for non US software layout. Hence, the special characters were incorrect. Since this layout is aimed towards Swedish writing people the presumption is that whoever uses it will have Swedish as their OS language. Includes: - Special character issue fixed - QWERTY layer that can be toggled if requiered (also presumes Swedish software layout) * Add special characters and media keys * Add ctrl, alt, etc. to functional layer --- .../community/ergodox/dvorak_svorak_a5/keymap.c | 214 +++++++++++++++++++++ .../community/ergodox/dvorak_svorak_a5/readme.md | 42 ++++ 2 files changed, 256 insertions(+) create mode 100644 layouts/community/ergodox/dvorak_svorak_a5/keymap.c create mode 100644 layouts/community/ergodox/dvorak_svorak_a5/readme.md (limited to 'layouts') diff --git a/layouts/community/ergodox/dvorak_svorak_a5/keymap.c b/layouts/community/ergodox/dvorak_svorak_a5/keymap.c new file mode 100644 index 0000000000..2668fce866 --- /dev/null +++ b/layouts/community/ergodox/dvorak_svorak_a5/keymap.c @@ -0,0 +1,214 @@ +#include QMK_KEYBOARD_H +#include "debug.h" +#include "action_layer.h" +#include "keymap_swedish.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MOUS 2 // mouse keys +#define QWRT 3 // qwerty layout + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | ~MOUS| | QWRT | 6 | 7 | 8 | 9 | 0 | + | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | P | Y | | | Del | F | G | C | R | L | , | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Escape | A | O | E | U | I |------| |------| D | H | T | N | S | -/_ | + * |--------+------+------+------+------+------| | | RCTRL|------+------+------+------+------+--------| + * | LShift | . | Q | J | K | X | | | | B | M | W | V | Z | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCTRL | | | LAlt | Super| | ~SYMB| Left | Down | Up | Right | + * `-----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Ins | Del | | HOME | END | + * ,------|------|------| |------+--------+-------. + * | | | | | PgUp | | | + * | BSP | Tab |------| |------| Enter | Space | + * | | | | | PgDn | | | + * `--------------------' `-----------------------' + */ +[BASE] = LAYOUT_ergodox( // layer 0 : default + // left hand + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, MO(MOUS), + KC_TAB, NO_AA, NO_AE, NO_OSLH, KC_P, KC_Y, KC_NO, + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_DOT, KC_Q, KC_J, KC_K, KC_X, KC_NO, + KC_LCTRL, KC_NO, KC_NO, KC_LALT, KC_LCMD, + KC_INSERT, KC_DEL, + KC_NO, + KC_BSPC, KC_TAB, KC_NO, + // right hand + TG(QWRT), KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, + KC_DEL, KC_F, KC_G, KC_C, KC_R, KC_L, KC_COMM, + KC_D, KC_H, KC_T, KC_N, KC_S, NO_MINS, + KC_RCTRL, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + MO(SYMB), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + KC_HOME, KC_END, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPACE + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | { | } | [ | ] | $ | | | | " | ? | & | < | > | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | ; | / | ( | ) | | |------| |------| # | ^ | # | " | ~ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | : | = | @ | ! | \ | | | | % | | ' | * | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | BSP | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = LAYOUT_ergodox( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, ALGR(KC_7), ALGR(KC_0), ALGR(KC_8), ALGR(KC_9), ALGR(KC_4), KC_NO, + KC_NO, LSFT(KC_COMM), KC_KP_SLASH, LSFT(KC_8), LSFT(KC_9), ALGR(KC_NUBS), + KC_NO, LSFT(KC_DOT), LSFT(KC_0), ALGR(KC_2), KC_EXLM, ALGR(KC_MINS), KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_NO, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, LSFT(KC_2), NO_QUES, LSFT(KC_6), NO_LESS, NO_GRTR, KC_NO, + KC_HASH, NO_CIRC, KC_HASH, LSFT(KC_2), NO_TILD, KC_NO, + KC_NO, KC_PERC, NO_ACUT, NO_APOS, NO_ASTR, NO_GRV, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | F11 | F12 | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | Vol Up | + * |--------+------+------+------+------+------| | | RCTRL|------+------+------+------+------+--------| + * | | | | | | | | | | | | | B1 | B2 |Vol Down| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCTRL| | | LALT | | | | M_L | M_D | M_U | M_R | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | Play | + * | | | | | | | Pause| + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MOUS] = LAYOUT_ergodox( + KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, + KC_NO, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, + // right hand + KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLU, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_BTN1, KC_BTN2, KC_VOLD, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_MPLY +), +/* Keymap 3: QWERTY Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Print | ! | " | # | # | % | | |Middle| & | / | ( | ) | = | ? | + * | Screen | 1 | 2 @ | 3 | 4 $ | 5 | F11 | |Mouse | 6 | 7 { | 8 [ | 9 ] | 0 } | + \ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | | | | Y | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CapsLk | A | S | D | F | G |------| |------| H | J | K | L | | | + * |--------+------+------+------+------+------| ` | | Del |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | ' | | | N | M | , | . | - | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtl | ^ | * | LAlt | LGui | | AltGr| Down | Up | Left | Right| + * | (') | " ~ | ' | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,--------------. + * | LCtl | LAlt | | Home | End | + * ,------|------|------| |------+-------+------. + * | | | ~ | | PgUp | | | + * | BSP | TAB |------| |------| Enter | Space| + * | | | Esc | | PgDn | | | + * `--------------------' `---------------------' + */ +[QWRT] = LAYOUT_ergodox( + // left hand + KC_PSCR, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, NO_ACUT, + CTL_T(NO_APOS), NO_CIRC, NO_ASTR, KC_LALT, KC_LGUI, + KC_LCTRL, KC_LALT, + NO_TILD, + KC_BSPC, KC_TAB, KC_ESC, + // right hand + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AA, + KC_H, KC_J, KC_K, KC_L, NO_OSLH, NO_AE, + KC_DELT, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, KC_RSFT, + NO_ALGR, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, + KC_HOME, KC_END, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPACE +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + case 3: + ergodox_right_led_3_on(); + break; + default: + break; + } + +}; diff --git a/layouts/community/ergodox/dvorak_svorak_a5/readme.md b/layouts/community/ergodox/dvorak_svorak_a5/readme.md new file mode 100644 index 0000000000..c4b9184166 --- /dev/null +++ b/layouts/community/ergodox/dvorak_svorak_a5/readme.md @@ -0,0 +1,42 @@ +# ErgoDox EZ Svorak A5 + +This layout is supposed to be an implementation of the [Svorak A5 +layout](http://aoeu.info/s/dvorak/svorak). Unfortunately, the Ergodox EZ lacks +one column for the right hand, why the three buttons furthest to the right, on +the right half, are missing. I have tried to move them around and have yet to +find a perfect position for them. + + +## Note + +The keyboard assumes that the operating system interprets your keyboard as +Swedish. If you get weird issues (like, most letters work, but not all special +characters) please make sure your operating system uses a Swedish keyboard +layout. + + +## Flashing + +In order to compile and flash your Ergodox EZ, invoke the following at the root +of the repository. + +`make ergodox_ez:dvorak_svorak_a5:teensy` + +I haven't gotten the above to work on Windows. Instead I use +[Msys2](https://www.msys2.org/) to compile the .hex-file (`make ergodox_ez:dvorak_svorak_a5`) +and [Teensy Loader](https://www.pjrc.com/teensy/loader_win10.html) to flash the +board. + + +## Changelog + +* 2018-08-09 + * Initial release +* 2018-08-10 + * Make special characters work in Windows + * Add QWERTY layer + +# Author +Erik Thorsell +erikthorsell @ github and twitter + -- cgit v1.2.3 From 6d1536db1da117345156ed36255f10f235f0b915 Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Wed, 22 Aug 2018 20:16:49 -0700 Subject: Keymap: fix conditionals in userspace rules.mk (#3726) * fix conditionals in rules.mk * minor keymap change --- layouts/community/ortho_4x12/wanleg/keymap.c | 2 +- users/wanleg/rules.mk | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c index 43cae711ac..8773001d0a 100644 --- a/layouts/community/ortho_4x12/wanleg/keymap.c +++ b/layouts/community/ortho_4x12/wanleg/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______________Qwerty_Row__0_______________, _______________Qwerty_Row__1_______________, _______________Qwerty_Row__2_______________, - KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_RGUI, KC_RCTL + KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL ), #else [_GK] = LAYOUT_ortho_4x12_wrapper( diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index 8dcc911cef..ac86769538 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -4,13 +4,8 @@ endif SRC += wanleg.c tapdances.c -ifndef TAP_DANCE_ENABLE TAP_DANCE_ENABLE = yes -endif - -ifndef MOUSEKEY_ENABLE MOUSEKEY_ENABLE = yes -endif #If using a ProMicro and it has the QMK DFU bootloader instead of Caterina, #run "make : dfu=qmk" when compiling to ensure it is flagged properly after being flashed -- cgit v1.2.3 From 067091d9c2711d2c8b8f5f888b05b378225ad868 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Fri, 24 Aug 2018 08:54:16 -0700 Subject: Introduce new 75_ansi standard layout (#3738) * introduce new layout 75_ansi * use the new 75_ansi layout for my octagon v2 --- keyboards/octagon/v2/keymaps/default/keymap.c | 14 ++--- keyboards/octagon/v2/rules.mk | 2 + keyboards/octagon/v2/v2.h | 16 +++++ layouts/community/75_ansi/layout.json | 6 ++ .../community/75_ansi/mechmerlin-75_ansi/keymap.c | 23 +++++++ .../community/75_ansi/mechmerlin-75_ansi/readme.md | 10 +++ layouts/community/75_ansi/readme.md | 72 ++++++++++++++++++++++ layouts/default/75_ansi/default_75_ansi/keymap.c | 12 ++++ layouts/default/75_ansi/layout.json | 6 ++ layouts/default/75_ansi/readme.md | 3 + 10 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 layouts/community/75_ansi/layout.json create mode 100644 layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c create mode 100644 layouts/community/75_ansi/mechmerlin-75_ansi/readme.md create mode 100644 layouts/community/75_ansi/readme.md create mode 100644 layouts/default/75_ansi/default_75_ansi/keymap.c create mode 100644 layouts/default/75_ansi/layout.json create mode 100644 layouts/default/75_ansi/readme.md (limited to 'layouts') diff --git a/keyboards/octagon/v2/keymaps/default/keymap.c b/keyboards/octagon/v2/keymaps/default/keymap.c index 5f7d179abc..b3182fc239 100644 --- a/keyboards/octagon/v2/keymaps/default/keymap.c +++ b/keyboards/octagon/v2/keymaps/default/keymap.c @@ -13,24 +13,24 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -#include "octagon.h" +#include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* layer 0: qwerty */ - [0] = LAYOUT(\ + [0] = LAYOUT_75_ansi(\ 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_PAUS, KC_DEL, 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_HOME, 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_PGUP, - 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_NO, KC_ENT, KC_PGDN, - KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + 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, KC_PGDN, + 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, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT(\ + [1] = LAYOUT_75_ansi(\ KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, RESET, 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_NO, KC_TRNS, KC_TRNS, - KC_TRNS, KC_NO, 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, 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) }; diff --git a/keyboards/octagon/v2/rules.mk b/keyboards/octagon/v2/rules.mk index d95dbd9603..37f3938d93 100644 --- a/keyboards/octagon/v2/rules.mk +++ b/keyboards/octagon/v2/rules.mk @@ -70,3 +70,5 @@ RGBLIGHT_ENABLE = yes CUSTOM_MATRIX = yes SRC += indicator_leds.c \ matrix.c + +LAYOUTS = 75_ansi diff --git a/keyboards/octagon/v2/v2.h b/keyboards/octagon/v2/v2.h index d37db4a0c7..29b03211ba 100644 --- a/keyboards/octagon/v2/v2.h +++ b/keyboards/octagon/v2/v2.h @@ -33,4 +33,20 @@ { K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, KC_NO, K1M, K1N, K1O, K1P, KC_NO }, \ { K0A, K0B, K0C, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K0J, KC_NO, K0K, K0L, K0M, K0N, K0O, K0P, KC_NO } \ } + +#define LAYOUT_75_ansi( \ + K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, K5Q, \ + K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, K4O, K4P, \ + K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3O, K3P, \ + K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2O, K2P, \ + K1A, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1M, K1N, K1O, K1P, \ + K0A, K0B, K0C, K0J, K0K, K0L, K0M, K0N, K0O, K0P \ +) { \ + { K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, KC_NO, K5Q }, \ + { K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, KC_NO, K4O, K4P, KC_NO }, \ + { K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, KC_NO, K3O, K3P, KC_NO }, \ + { K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, KC_NO, KC_NO, K2O, K2P, KC_NO }, \ + { K1A, KC_NO, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, KC_NO, K1M, K1N, K1O, K1P, KC_NO }, \ + { K0A, K0B, K0C, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K0J, KC_NO, K0K, K0L, K0M, K0N, K0O, K0P, KC_NO } \ +} #endif diff --git a/layouts/community/75_ansi/layout.json b/layouts/community/75_ansi/layout.json new file mode 100644 index 0000000000..4b7c5a0d88 --- /dev/null +++ b/layouts/community/75_ansi/layout.json @@ -0,0 +1,6 @@ +[{a:7},"","","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","",{w:2},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] \ No newline at end of file diff --git a/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c new file mode 100644 index 0000000000..70506da52a --- /dev/null +++ b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c @@ -0,0 +1,23 @@ +#include QMK_KEYBOARD_H + +#define BASE 0 +#define FN 1 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[BASE] = LAYOUT_75_ansi(\ + 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_PAUS, KC_DEL, + 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_HOME, + 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_PGUP, + 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, KC_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[FN] = LAYOUT_75_ansi(\ + KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_CAPS, 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) +}; \ No newline at end of file diff --git a/layouts/community/75_ansi/mechmerlin-75_ansi/readme.md b/layouts/community/75_ansi/mechmerlin-75_ansi/readme.md new file mode 100644 index 0000000000..12c9502703 --- /dev/null +++ b/layouts/community/75_ansi/mechmerlin-75_ansi/readme.md @@ -0,0 +1,10 @@ +# MechMerlin's Standard ANSI 75% Layout + +This is the 75% layout used by u/merlin36, host of the [MechMerlin](www.youtube.com/mechmerlin) +YouTube channel. + +It is used on his +[Duck Octagon V2](https://github.com/qmk/qmk_firmware/tree/master/keyboards/octagon/v2) + +### Build +To build the firmware file associated with this keymap, simply run `make your_keyboard:mechmerlin-ansi`. diff --git a/layouts/community/75_ansi/readme.md b/layouts/community/75_ansi/readme.md new file mode 100644 index 0000000000..14d1a950c0 --- /dev/null +++ b/layouts/community/75_ansi/readme.md @@ -0,0 +1,72 @@ +# 75_ansi + +This is the standard 75% ANSI keyboard layout. + +One may argue that having 3 1u keys to the right of spacebar +is not desired as two 1.5u keys. However, most 75% boards that +come out have that as the standard. + +## Requirements + +### 1. Layout defined + +A keyboard's `.h` file needs to have `LAYOUT_75_ansi` defined + +```c +#define LAYOUT_75_ansi( \ + K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, K5Q, \ + K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, K4O, K4P, \ + K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3O, K3P, \ + K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2O, K2P, \ + K1A, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1M, K1N, K1O, K1P, \ + K0A, K0B, K0C, K0J, K0K, K0L, K0M, K0N, K0O, K0P \ +) { \ + { K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, KC_NO, K5Q }, \ + { K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, KC_NO, K4O, K4P, KC_NO }, \ + { K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, KC_NO, K3O, K3P, KC_NO }, \ + { K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, KC_NO, KC_NO, K2O, K2P, KC_NO }, \ + { K1A, KC_NO, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, KC_NO, K1M, K1N, K1O, K1P, KC_NO }, \ + { K0A, K0B, K0C, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K0J, KC_NO, K0K, K0L, K0M, K0N, K0O, K0P, KC_NO } \ +} +) +``` + +This layout needs to match the layout defined in + + qmk_firmware/layouts/community/75_ansi/layout.json + +### 2. Configuring rules.mk + +`rules.mk` needs to have the following line: + + LAYOUTS = 75_ansi + +### 3. Defining a keymap + +A keymap must be defined at + + qmk_firmware/layouts/community/75_ansi/yourfoldername/keymap.c + +This keymap must have a `LAYOUT_75_ansi` layout defined. + +```c +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_75_ansi(\ + 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_PAUS, KC_DEL, + 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_HOME, + 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_PGUP, + 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, KC_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) + }; +``` + +## Usage + +To make generate a hex file, type + + make yourkeyboard:yourfoldername + +This hex file will contain a keymap with layout `LAYOUT_75_ansi` derived from + + qmk_firmware/layouts/community/75_ansi/yourfoldername/keymap.c diff --git a/layouts/default/75_ansi/default_75_ansi/keymap.c b/layouts/default/75_ansi/default_75_ansi/keymap.c new file mode 100644 index 0000000000..cba2f21c03 --- /dev/null +++ b/layouts/default/75_ansi/default_75_ansi/keymap.c @@ -0,0 +1,12 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* layer 0: qwerty */ + [0] = LAYOUT_75_ansi(\ + 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_PAUS, KC_DEL, + 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_HOME, + 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_PGUP, + 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, KC_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) + }; \ No newline at end of file diff --git a/layouts/default/75_ansi/layout.json b/layouts/default/75_ansi/layout.json new file mode 100644 index 0000000000..72be23b486 --- /dev/null +++ b/layouts/default/75_ansi/layout.json @@ -0,0 +1,6 @@ +[{a:7},"","","","","","","","","","","","","","","",""], +["","","","","","","","","","","","","",{w:2},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] diff --git a/layouts/default/75_ansi/readme.md b/layouts/default/75_ansi/readme.md new file mode 100644 index 0000000000..2ad7222721 --- /dev/null +++ b/layouts/default/75_ansi/readme.md @@ -0,0 +1,3 @@ +# 75_ansi + + LAYOUT_75_ansi \ No newline at end of file -- cgit v1.2.3 From b6d8524794305560e454d6b39a481d57f62f8ef1 Mon Sep 17 00:00:00 2001 From: Danny Date: Sat, 25 Aug 2018 11:46:42 -0400 Subject: Keyboard: add Wavelet (#3739) * Add Wavelet keyboard * Fix build error for keyboards w/o Planck MIT layout * Add swap hands support --- keyboards/wavelet/config.h | 63 ++++++++ keyboards/wavelet/info.json | 17 ++ keyboards/wavelet/keymaps/default/keymap.c | 212 +++++++++++++++++++++++++ keyboards/wavelet/keymaps/default/rules.mk | 2 + keyboards/wavelet/readme.md | 20 +++ keyboards/wavelet/rules.mk | 30 ++++ keyboards/wavelet/wavelet.c | 29 ++++ keyboards/wavelet/wavelet.h | 37 +++++ layouts/community/ortho_4x12/guidoism/config.h | 15 ++ 9 files changed, 425 insertions(+) create mode 100644 keyboards/wavelet/config.h create mode 100644 keyboards/wavelet/info.json create mode 100644 keyboards/wavelet/keymaps/default/keymap.c create mode 100644 keyboards/wavelet/keymaps/default/rules.mk create mode 100644 keyboards/wavelet/readme.md create mode 100644 keyboards/wavelet/rules.mk create mode 100644 keyboards/wavelet/wavelet.c create mode 100644 keyboards/wavelet/wavelet.h (limited to 'layouts') diff --git a/keyboards/wavelet/config.h b/keyboards/wavelet/config.h new file mode 100644 index 0000000000..4e45ef8e19 --- /dev/null +++ b/keyboards/wavelet/config.h @@ -0,0 +1,63 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xCB10 +#define PRODUCT_ID 0x1046 +#define DEVICE_VER 0x0100 +#define MANUFACTURER Keebio +#define PRODUCT Wavelet +#define DESCRIPTION 40 percent ortholinear keyboard + +/* key matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 6 + +// wiring of each half +#define MATRIX_ROW_PINS { F4, F5, F7, B3, D2, D1, D4, D7 } +#define MATRIX_COL_PINS { F6, B1, B2, B6, B4, E6 } + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCING_DELAY 5 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* ws2812 RGB LED */ +#define RGB_DI_PIN D3 +#define RGBLIGHT_TIMER +#define RGBLED_NUM 12 // Number of LEDs + +/* Backlight LEDs */ +#define BACKLIGHT_PIN B5 +#define BACKLIGHT_LEVELS 7 + +#endif diff --git a/keyboards/wavelet/info.json b/keyboards/wavelet/info.json new file mode 100644 index 0000000000..a71058b95a --- /dev/null +++ b/keyboards/wavelet/info.json @@ -0,0 +1,17 @@ +{ + "keyboard_name": "Wavelet", + "url": "https://keeb.io", + "maintainer": "Keebio", + "width": 12, + "height": 4, + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, + {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, + {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, + {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3} + ] + } + } +} diff --git a/keyboards/wavelet/keymaps/default/keymap.c b/keyboards/wavelet/keymaps/default/keymap.c new file mode 100644 index 0000000000..dac8068a42 --- /dev/null +++ b/keyboards/wavelet/keymaps/default/keymap.c @@ -0,0 +1,212 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _QWERTY 0 +#define _COLEMAK 1 +#define _DVORAK 2 +#define _LOWER 3 +#define _RAISE 4 +#define _ADJUST 16 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + LOWER, + RAISE, + ADJUST, +}; + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_ortho_4x12( \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ +), + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = LAYOUT_ortho_4x12( \ + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, \ + KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ +), + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | / | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = LAYOUT_ortho_4x12( \ + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, \ + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \ + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_4x12( \ + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \ + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ + BL_STEP, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_4x12( \ + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ +), + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_ortho_4x12( \ + _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ +) + + +}; + +#ifdef AUDIO_ENABLE +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +float tone_dvorak[][2] = SONG(DVORAK_SOUND); +float tone_colemak[][2] = SONG(COLEMAK_SOUND); +#endif + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(tone_qwerty); + #endif + persistent_default_layer_set(1UL<<_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(tone_colemak); + #endif + persistent_default_layer_set(1UL<<_COLEMAK); + } + return false; + break; + case DVORAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(tone_dvorak); + #endif + persistent_default_layer_set(1UL<<_DVORAK); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + } + return true; +} diff --git a/keyboards/wavelet/keymaps/default/rules.mk b/keyboards/wavelet/keymaps/default/rules.mk new file mode 100644 index 0000000000..d7463419b4 --- /dev/null +++ b/keyboards/wavelet/keymaps/default/rules.mk @@ -0,0 +1,2 @@ +RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes diff --git a/keyboards/wavelet/readme.md b/keyboards/wavelet/readme.md new file mode 100644 index 0000000000..bacd57037d --- /dev/null +++ b/keyboards/wavelet/readme.md @@ -0,0 +1,20 @@ +Wavelet +======= + +A 4x12 ortholinear keyboard using Kailh Choc Low-Profile switches made and sold by [Keebio](https://keeb.io). + +Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) +Hardware Supported: Pro Micro +Hardware Availability: [Keebio](https://keeb.io) + +Make example for this keyboard (after setting up your build environment): + + make wavelet:default + +Example of flashing this keyboard: + + make wavelet:default:avrdude + +See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information. + +A build guide for this keyboard can be found here: [Levinson Build Guide](https://docs.keeb.io) diff --git a/keyboards/wavelet/rules.mk b/keyboards/wavelet/rules.mk new file mode 100644 index 0000000000..86149c5622 --- /dev/null +++ b/keyboards/wavelet/rules.mk @@ -0,0 +1,30 @@ +MCU = atmega32u4 +F_CPU = 16000000 +ARCH = AVR8 +F_USB = $(F_CPU) +BOOTLOADER = caterina + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +LAYOUTS = ortho_4x12 diff --git a/keyboards/wavelet/wavelet.c b/keyboards/wavelet/wavelet.c new file mode 100644 index 0000000000..2bc9c65a52 --- /dev/null +++ b/keyboards/wavelet/wavelet.c @@ -0,0 +1,29 @@ +#include "wavelet.h" + +void matrix_init_kb(void) { + + // // green led on + // DDRD |= (1<<5); + // PORTD &= ~(1<<5); + + // // orange led on + // DDRB |= (1<<0); + // PORTB &= ~(1<<0); + + matrix_init_user(); +}; + +#ifdef SWAP_HANDS_ENABLE +__attribute__ ((weak)) +const keypos_t hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = { + + {{5, 4}, {4, 4}, {3, 4}, {2, 4}, {1, 4}, {0, 4}}, + {{5, 5}, {4, 5}, {3, 5}, {2, 5}, {1, 5}, {0, 5}}, + {{5, 6}, {4, 6}, {3, 6}, {2, 6}, {1, 6}, {0, 6}}, + {{5, 7}, {4, 7}, {3, 7}, {2, 7}, {1, 7}, {0, 7}}, + {{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}}, + {{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}}, + {{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}, {5, 2}}, + {{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}, {5, 3}}, +}; +#endif diff --git a/keyboards/wavelet/wavelet.h b/keyboards/wavelet/wavelet.h new file mode 100644 index 0000000000..69a87a70cd --- /dev/null +++ b/keyboards/wavelet/wavelet.h @@ -0,0 +1,37 @@ +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ + L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ + L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ + L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { R05, R04, R03, R02, R01, R00 }, \ + { R15, R14, R13, R12, R11, R10 }, \ + { R25, R24, R23, R22, R21, R20 }, \ + { R35, R34, R33, R32, R31, R30 } \ + } + +// Used to create a keymap using only KC_ prefixed keys +#define LAYOUT_kc( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ + L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ + L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ + L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \ + ) \ + LAYOUT( \ + KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \ + KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \ + KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \ + KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \ + ) + +#define LAYOUT_ortho_4x12 LAYOUT +#define LAYOUT_kc_ortho_4x12 LAYOUT_kc diff --git a/layouts/community/ortho_4x12/guidoism/config.h b/layouts/community/ortho_4x12/guidoism/config.h index 6075393277..19b71b07ee 100644 --- a/layouts/community/ortho_4x12/guidoism/config.h +++ b/layouts/community/ortho_4x12/guidoism/config.h @@ -26,4 +26,19 @@ along with this program. If not, see . #define IGNORE_MOD_TAP_INTERRUPT #define USB_MAX_POWER_CONSUMPTION 50 +#ifndef LAYOUT_planck_mit +#define LAYOUT_planck_mit( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ +) \ + LAYOUT_ortho_4x12( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b \ + ) +#endif + #endif -- cgit v1.2.3 From 80edd8a9d8d11327204ae37032caec22e55a0c37 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Sat, 25 Aug 2018 08:47:54 -0700 Subject: Keymap: Hold for MO and Tap for TG (#3742) Special thanks to Drashna for teaching me how to implement myFNX command. This allows a user to hold Fn for regular Fn and tap to toggle another layer. For now this will stay within my community layout as this is the only layout that I will be using this in. This may change in the future. --- layouts/community/60_ansi/mechmerlin-ansi/keymap.c | 27 ++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'layouts') diff --git a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c index fca8a97cdd..47316915ca 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c +++ b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c @@ -4,20 +4,24 @@ #define FN 1 #define ARROWS 2 +enum keycodes { + KC_FNX, // Hold for FN layer, tap to toggle ARROWS layer. +}; + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = LAYOUT_60_ansi( KC_GESC, 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_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_BSLASH, \ 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, \ 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_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_FNX, KC_RALT, KC_RGUI, KC_RCTL), [FN] = LAYOUT_60_ansi( KC_GRV, 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_DEL, \ RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ KC_CAPS, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \ - KC_TRNS, KC_TRNS, KC_TRNS, TG(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [ARROWS] = LAYOUT_60_ansi( 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, \ @@ -27,3 +31,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + static uint16_t fnx_layer_timer; + + switch (keycode){ + case KC_FNX: + if(record->event.pressed){ + fnx_layer_timer = timer_read(); + layer_on(FN); + } else { + layer_off(FN); + if (timer_elapsed(fnx_layer_timer) < 150) { + layer_invert(ARROWS); + } + } + return false; + } + return true; +} \ No newline at end of file -- cgit v1.2.3 From 34d01f0a7f9056cc6a50755f8a439c30cc9f746e Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Sat, 25 Aug 2018 09:00:06 -0700 Subject: Keyboard: introduce new default layout 68_ansi (#3745) --- layouts/default/68_ansi/default_68_ansi/keymap.c | 11 +++++++++++ layouts/default/68_ansi/layout.json | 5 +++++ layouts/default/68_ansi/readme.md | 3 +++ 3 files changed, 19 insertions(+) create mode 100644 layouts/default/68_ansi/default_68_ansi/keymap.c create mode 100644 layouts/default/68_ansi/layout.json create mode 100644 layouts/default/68_ansi/readme.md (limited to 'layouts') diff --git a/layouts/default/68_ansi/default_68_ansi/keymap.c b/layouts/default/68_ansi/default_68_ansi/keymap.c new file mode 100644 index 0000000000..59b0ea47d0 --- /dev/null +++ b/layouts/default/68_ansi/default_68_ansi/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* layer 0: qwerty */ + [0] = LAYOUT_68_ansi(\ + 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_HOME, + 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_PGUP, + 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, KC_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) + }; \ No newline at end of file diff --git a/layouts/default/68_ansi/layout.json b/layouts/default/68_ansi/layout.json new file mode 100644 index 0000000000..0fa92b0f2e --- /dev/null +++ b/layouts/default/68_ansi/layout.json @@ -0,0 +1,5 @@ +["","","","","","","","","","","","","",{w:2},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] diff --git a/layouts/default/68_ansi/readme.md b/layouts/default/68_ansi/readme.md new file mode 100644 index 0000000000..eab8f312b2 --- /dev/null +++ b/layouts/default/68_ansi/readme.md @@ -0,0 +1,3 @@ +# 68_ansi + + LAYOUT_68_ansi \ No newline at end of file -- cgit v1.2.3 From 0680bfe03de6538b13fafa747139b26713ddb80b Mon Sep 17 00:00:00 2001 From: Logan Bussell <36081148+lbussell@users.noreply.github.com> Date: Sun, 26 Aug 2018 12:33:43 -0400 Subject: Keymap: Made changes to buswerks ortho_4x12 keymap (#3757) * Added buswerks keymap * cleaned up comments on buswerks keymap * Added buswerks keymap readme.md * Fixed spelling in buswerks readme.md * Removed unnecessary includes, changed process_record_user to now use set_single_persistent_default_layer(), removed deprecated functions, and moved the audio ifdef block to config.h * Changed buswerks ortho_4x12 layout to accommodate 'MIT' layout * Updated README.md to reflect layout changes --- layouts/community/ortho_4x12/buswerks/keymap.c | 28 +++++++++++++++---------- layouts/community/ortho_4x12/buswerks/readme.md | 23 ++++++++++---------- 2 files changed, 29 insertions(+), 22 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/buswerks/keymap.c b/layouts/community/ortho_4x12/buswerks/keymap.c index 776ea461b7..c05c264183 100644 --- a/layouts/community/ortho_4x12/buswerks/keymap.c +++ b/layouts/community/ortho_4x12/buswerks/keymap.c @@ -15,6 +15,7 @@ enum custom_keycodes { DVORAK, LOWER, RAISE, + NAV, ADJUST, }; @@ -29,17 +30,22 @@ enum custom_keycodes { #define KC_RASE RAISE #define KC_ADJ ADJUST +#define DESK_L LCTL(KC_LEFT) +#define DESK_R LCTL(KC_RGHT) +#define MSN_CTL LCTL(KC_UP) +#define APP_WND LCTL(KC_DOWN) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_ortho_4x12( \ // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I, KC_O , KC_P , KC_BSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K, KC_L , KC_SCLN, KC_QUOT, \ + ESC_CMD, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K, KC_L , KC_SCLN, KC_QUOT, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), @@ -51,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), @@ -59,21 +65,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \ + ESC_CMD, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_LSFT, RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), [_LOWER] = LAYOUT_ortho_4x12( \ // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. - KC_TILD, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_MINS, KC_DEL, \ + KC_TILD, _______, KC_VOLD, MSN_CTL, KC_VOLU, _______, _______, KC_7, KC_8, KC_9, KC_MINS, KC_BSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_PIPE, \ + _______, _______, DESK_L , APP_WND, DESK_R , _______, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_PIPE, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, KC_CIRC, KC_ASTR, KC_UNDS, KC_EQL, KC_AMPR, _______, KC_1, KC_2, KC_3, KC_SLSH, _______, \ + KC_LBRC, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, KC_SLSH, KC_RBRC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______ \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' @@ -81,11 +87,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT_ortho_4x12( \ // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. - KC_GRV, _______, _______, KC_LPRN, KC_RPRN, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, KC_DEL, \ + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, KC_LCBR, KC_RCBR, _______, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, KC_BSLS, \ + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, KC_BSLS, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, \ + KC_LCBR, KC_CIRC, KC_ASTR, KC_UNDS, KC_EQL, KC_AMPR, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, KC_RCBR, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' diff --git a/layouts/community/ortho_4x12/buswerks/readme.md b/layouts/community/ortho_4x12/buswerks/readme.md index 452116423b..43c1aaf93b 100644 --- a/layouts/community/ortho_4x12/buswerks/readme.md +++ b/layouts/community/ortho_4x12/buswerks/readme.md @@ -5,24 +5,25 @@ For use on Planck, Let's Split, and similar keyboards ### Layout Overview - Main Layer - - An additional shift key is located on the right space key (only works for grid layouts) - Enter is located on the Raise key (layer-tap) - - The left and right shift keys function as Space Cadet shift keys + - Space Cadet shift keys + - Lower + shift keys = Brackets[] + - Raise + shift keys = Braces{} - The bottom left key is the Adjust modifier - Escape is in the traditional Caps Lock position - Holding down the escape key acts as LGUI (intended for macOS use) - Lower - There is a numpad on the right hand (4, 5, and 6 are located under JKL/NEI/HTN) - Plus and minus keys are located to the right of the numpad - - All other symbols are located on the other side of the keyboard, in a somewhat logical order - - Symbols from the number row are in order, starting on the left pinky. - - Equals and underscore are in easily accessible spots, because they are more commonly used in programming - - The ampersand is less common, so it is moved to the right of the equals symbol + - There are macOS desktop navigation keys and volume controls under the left hand + - Raise - Vim-style arrow keys - - Above the arrow keys are media controls - - Below are home, end, pgup, and pgdn - - The left hand has all three types of braces - - Curly braces are under the index and middle fingers for easy access during programming, and because parentheses are already available through Space Cadet shift + - Below the arrow keys are home, end, pgup, and pgdn + - Symbols are located on the right side of the keyboard, in a somewhat logical order + - Symbols from the number row are in order, starting on the left pinky. + - Equals and underscore are in easily accessible spots, since they're commonly used in programming + - The ampersand is less common, so it's to the right of the equals symbol + - Adjust - - Function keys are located along the top row (reset is moved to accommodate this) \ No newline at end of file + - Function keys are located along the top row (reset is moved to the Colemak 'R' position) \ No newline at end of file -- cgit v1.2.3 From 444def8411d6ac67203c14ec92f8e33d77330895 Mon Sep 17 00:00:00 2001 From: Jacob Jerrell Date: Tue, 28 Aug 2018 18:48:41 -0500 Subject: Keymap: Bocaj - Create Userspace and Ergodox Layout (#3750) * Bocaj Layout Revamp * Pull in Upstream (#1) * Various tweaks for some Input:Club build processes * change KEYMAP to LAYOUT for all new keyboards made using this script * Add support for rev3 of the Atom47 (#2672) * Added support for rev3 of the Atom47 * Updated Atom47 readme's * Fix redefine error on rev2 and add maartenwut's keymap * Fix redefine error on LEdiodes keymap * Add Nyquist keymap (#2692) * nyquist * danielhklein nyquist setup * shift left controls * remove readme * cleanup before pr * ready for pr * Adds Phantom TKL support (#2696) * Add an info.json to phantom keyboard * Add layouts - KEYMAP_WINKEYLESS - KEYMAP_7BIT - KEYMAP_ISO - KEYMAP_ISO_WINKEYLESS * Add key_counts * Add 2 missing F-Row keys * Add TKC1800 info.json Created an info.json for the tkc1800. * Clueboard 60 info.json - adds - LAYOUT_60_ansi - LAYOUT_60_iso - KEYMAP_AEK - KEYMAP - LAYOUT_60_ansi_split_bs_rshift * Add the Speedo keyboard * Fix KC60 info.json file (#2707) * change KEYMAP to LAYOUT in all the KC60 files * Redo the info.json file * Small fixes to TKC1800 - adjust F-row to use 0.25 spacing - split left shift - add key_count * Fix some Configurator Warnings regarding LAYOUT vs KEYMAP (#2708) * change diverge 3 KC_KEYMAP to LAYOUT * Change KEYMAP to LAYOUT for handwired arrow pad * change M10A to LAYOUT for m10-a * Change KC_KEYMAP to LAYOUT_kc and KEYMAP to LAYOUT for mf68 * change KC_KEYMAP to LAYOUT for nano * Refactor to LAYOUT * refactor to LAYOUT-ansi and LAYOUT_iso for s65 * LAYOUT conversions for lfkkeyboards * missed a few renames * mini1800 for lfkeyobards support of LAYOUT * Improve state/chord handling and clean up namespace Some values that can never, ever, change were held in local variables, rather than in PROGMEM. Fixed. Change "pressed" to a signed int so the test for < 0 makes sense, and to avoid possible weird failure modes in the case where a key release comes in when pressed is already zero. (Shouldn't happen, sure, but computers are weird.) A lot of things in process_steno had external linkage for no particular reason. They've been marked static. Stuff still builds. Distinguish between currently-held keys and keys that have been held, and expose these values through a nicely-named API so other code could, say, check on the current set of steno chording in order to make displays. Also in passing fix up the "state" value having external linkage so it could clash with other people's variable declarations. The API also provides hooks for key processing and steno chord events, so you can monitor those events without having to run in matrix_scan_user and recheck the values directly. Also document these. There is no path through processing a key that doesn't end with a return false, so the nested return foo() are gone and we just return false. * Pull information from config.h and rules.mk (#2711) * Pull information from config.h and rules.mk * Readd the kbd75 maintainer * Remove obsolete info.json entries (#2712) * Clean up some long-standing errors when populating the API (#2715) * More Configurator Warning Fixes (#2716) * mf68_ble did not have the correct .c and .h files * Fix JC65 KEYMAP to LAYOUT * Change KEYMAP to LAYOUT for s60_x * Convert KEYMAP to LAYOUT for lets_split boards * Convert KEYMAP to LAYOUT * more fixes to keymap for iris * convert KEYMAP to LAYOUT for levinson keyboard * change losinggeneration's KEYMAP to LAYOUT * convert KEYMAP to LAYOUT * convert KEYMAP to LAYOUT for nyquist * convert KEYMAP to LAYOUT * convert KEYMAP to LAYOUT for viterbi * convert KEYMAP to LAYOUT * convert KEYMAP and its subsidiries to the LAYOUT standard * convert KEYMAP and its subsidiries to the new LAYOUT standard * Normacos keymap for let's split keyboard (#2691) * Cheers let's split keymap * fixed typo on norman layer of cheers keymap for let's split * fixed right handed mappings for home row * cheers keymap for let's split redefinition * updated Cheers keymap for let's split * cheers keymap for let's split updated with some terminal macros * renamed cheers let's split keymap to a more appropriate normacos * updated normacos keymap doc / removed non functional keys * reset let's split rules to default values * added more spotlight search macros * normalized keymap comments * Moved numpad on lower layer * hhkb jp personal keymap (#2698) * Add JJ40 Cockpit personal keymap (#2713) * Add JJ40 Cockpit keymap * Fix lower layer symbols * Add readme for "major" keyboards to eliminate more QMK Configurator errors (#2718) * add readme to ktype keyboard * add readme to m10a * add readme to mini1800 * add readme to parent directory * Revert "Pull in Upstream (#1)" This reverts commit eeba0cec17ccb636e4225eed88aeae72b99f5e45. * Updates to Bocaj Files - Gave up on Tap Dance for ' -> ' + Added another 'Secret' + Add ' -> ' to the Swap Hands key + Add Swap Hands to the ' -> ' key + Made Hand Swapping a momentary toggle - Removed Auto Shift + Added Layer Toggle to KC_QUOTE for the _TOOLS layer - Disabled Tap Dance * Merge remote-tracking branch 'upstream/master' * Updates to Bocaj Added Game Layers, Removed Unused Macros * Removed 'secrets.h' * Updates to Bocaj Remove 'secrets'. Remove 'sendstring_workman.h' and set related layer back to qwerty due to macro compatibility issues * Total revisioning of keymap and layout structure * Missed readme.md file * Bocaj - Permissive Hold setting enabled * Switching from ErgoDox EZ centric configuration to the layout/user approach * Bocaj - Create Userspace and Ergodox layout * Update settings.json --- keyboards/ergodox_ez/keymaps/bocaj/bocaj.h | 146 ------------ keyboards/ergodox_ez/keymaps/bocaj/config.h | 21 -- keyboards/ergodox_ez/keymaps/bocaj/keymap.c | 340 --------------------------- keyboards/ergodox_ez/keymaps/bocaj/readme.md | 48 ---- keyboards/ergodox_ez/keymaps/bocaj/rules.mk | 5 - layouts/community/ergodox/bocaj/config.h | 6 + layouts/community/ergodox/bocaj/keymap.c | 246 +++++++++++++++++++ layouts/community/ergodox/bocaj/rules.mk | 6 + users/bocaj/bocaj.c | 177 ++++++++++++++ users/bocaj/bocaj.h | 141 +++++++++++ users/bocaj/config.h | 33 +++ users/bocaj/readme.md | 14 ++ users/bocaj/rules.mk | 5 + users/bocaj/tap_dances.c | 65 +++++ users/bocaj/tap_dances.h | 7 + 15 files changed, 700 insertions(+), 560 deletions(-) delete mode 100644 keyboards/ergodox_ez/keymaps/bocaj/bocaj.h delete mode 100644 keyboards/ergodox_ez/keymaps/bocaj/config.h delete mode 100644 keyboards/ergodox_ez/keymaps/bocaj/keymap.c delete mode 100644 keyboards/ergodox_ez/keymaps/bocaj/readme.md delete mode 100644 keyboards/ergodox_ez/keymaps/bocaj/rules.mk create mode 100644 layouts/community/ergodox/bocaj/config.h create mode 100644 layouts/community/ergodox/bocaj/keymap.c create mode 100644 layouts/community/ergodox/bocaj/rules.mk create mode 100644 users/bocaj/bocaj.c create mode 100644 users/bocaj/bocaj.h create mode 100644 users/bocaj/config.h create mode 100644 users/bocaj/readme.md create mode 100644 users/bocaj/rules.mk create mode 100644 users/bocaj/tap_dances.c create mode 100644 users/bocaj/tap_dances.h (limited to 'layouts') diff --git a/keyboards/ergodox_ez/keymaps/bocaj/bocaj.h b/keyboards/ergodox_ez/keymaps/bocaj/bocaj.h deleted file mode 100644 index 2c41c01aa8..0000000000 --- a/keyboards/ergodox_ez/keymaps/bocaj/bocaj.h +++ /dev/null @@ -1,146 +0,0 @@ -/* -Copyright 2018 Jacob Jerrell - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#include "quantum.h" - -// Layers -enum layers { - _SWRKMN = 0, - _HWRKMN, - _LOWER, - _RAISE, - _ADJUST, - _DIABLO -}; - - - -enum custom_keycodes { - KC_EPRM = SAFE_RANGE, - KC_SWRK, - KC_HWRK, - KC_VRSN, - JJ_COPY, - JJ_PASTE, - JJ_ARRW, - MC_LOCK, - KC_DIABLO_CLEAR, - KC_NMPD -// UC_FLIP -}; - -// Space Cadet Hyper/Meh and [/] -#define HYP_LBK ALL_T(KC_LBRACKET) -#define MEH_RBK MEH_T(KC_RBRACKET) - -#define KC_LWSP LT(_LOWER, KC_SPACE) -#define KC_RSEN LT(_RAISE, KC_ENTER) -#define KC_ADJS TT(_ADJUST) - -#define XXXXXXX KC_NO -#define _______ KC_TRNS - -#ifdef TAP_DANCE_ENABLE -enum { - TD_D3_1 = 0, - TD_D3_2, - TD_D3_3, - TD_D3_4 -}; -#endif // TAP_DANCE_ENABLE - -// Custom Keycodes for Diablo 3 layer -// But since TD() doesn't work when tap dance is disabled -// We use custom codes here, so we can substitute the right stuff -#ifdef TAP_DANCE_ENABLE -#define KC_D3_1 TD(TD_D3_1) -#define KC_D3_2 TD(TD_D3_2) -#define KC_D3_3 TD(TD_D3_3) -#define KC_D3_4 TD(TD_D3_4) -#else // TAP_DANCE_ENABLE -#define KC_D3_1 KC_1 -#define KC_D3_2 KC_2 -#define KC_D3_3 KC_3 -#define KC_D3_4 KC_4 -#endif // TAP_DANCE_ENABLE - -//define diablo macro timer variables -extern uint16_t diablo_timer[4]; -extern uint8_t diablo_times[]; -extern uint8_t diablo_key_time[4]; - - -void run_diablo_macro_check(void); - - -#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) - -/* Pretty Layout -.---------------------------------------------. .---------------------------------------------. -| 1 | 2 | 3 | 4 | 5 | 6 | 7 | ! 8 | 9 | 10 | 11 | 12 | 13 | 14 | -!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! -| 15 | 16 | 17 | 18 | 19 | 20 | 21 | ! 22 | 23 | 24 | 25 | 26 | 27 | 28 | -!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! -| 29 | 30 | 31 | 32 | 33 | 34 |-------! !-------! 35 | 36 | 37 | 38 | 39 | 40 | -!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! -| 41 | 42 | 43 | 44 | 45 | 46 | 47 | ! 48 | 49 | 50 | 51 | 52 | 53 | 54 | -'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | 55 | 56 | 57 | 58 | 59 | .---------------. .---------------. ! 60 | 61 | 62 | 63 | 64 | - '------------------------------' | 65 | 66 | ! 67 | 68 | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | 69 | ! 70 | ! ! - ! ! !-------! !-------! ! ! - | 71 | 72 | 73 | ! 74 | 75 | 76 | - '-----------------------' '-----------------------' -*/ - -#define ______________________NUMBER_LEFT________________________ KC_1, KC_2, KC_3, KC_4, KC_5 -#define ______________________NUMBER_RIGHT_______________________ KC_6, KC_7, KC_8, KC_9, KC_0 - -#define ______________________SPECIAL_LEFT_______________________ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC -#define ______________________SPECIAL_RIGHT______________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN - -#define _______________________FUNC_LEFT_________________________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 -#define _______________________FUNC_RIGHT________________________ KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 - -#define _________________________________________________________ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS -#define XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX KC_NO, KC_NO, KC_NO, KC_NO, KC_NO - -#define _______________________SWORKMAN_L1_______________________ KC_Q, KC_W, KC_E, KC_R, KC_T -#define _______________________SWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_D), ALT_T(KC_F), KC_G -#define _______________________SWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B - -#define _______________________SWORKMAN_R1_______________________ KC_Y, KC_U, KC_I, KC_O, KC_P -#define _______________________SWORKMAN_R2_______________________ KC_H, ALT_T(KC_J), GUI_T(KC_K), SFT_T(KC_L), KC_SCLN -#define _______________________SWORKMAN_R3_______________________ KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) - -// Hardware Driven Workman -#define _______________________HWORKMAN_L1_______________________ KC_Q, KC_D, KC_R, KC_W, KC_B -#define _______________________HWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_H), ALT_T(KC_T), KC_G -#define _______________________HWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_M, KC_C, KC_V - -#define _______________________HWORKMAN_R1_______________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN -#define _______________________HWORKMAN_R2_______________________ KC_Y, ALT_T(KC_N), GUI_T(KC_E), SFT_T(KC_O), KC_I -#define _______________________HWORKMAN_R3_______________________ KC_K, KC_L, KC_COMM, KC_DOT, CTL_T(KC_SLASH) - -#define ___________________ERGODOX_BOTTOM_LEFT___________________ TT(_DIABLO), TT(_ADJUST), XXXXXXX, KC_UP, KC_LEFT -#define ___________________ERGODOX_BOTTOM_RIGHT__________________ KC_RIGHT, KC_DOWN, TT(_RAISE), TT(_LOWER), TT(_ADJUST) - -// LEFT | RIGHT -#define ______________________ERGODOX_THUMBS_____________________ KC_APP,KC_HOME, KC_PGUP,KC_ESC, \ - KC_END, KC_PGDOWN, \ - KC_LWSP,KC_BSPACE,JJ_COPY, JJ_PASTE,KC_TAB,KC_RSEN diff --git a/keyboards/ergodox_ez/keymaps/bocaj/config.h b/keyboards/ergodox_ez/keymaps/bocaj/config.h deleted file mode 100644 index 59605bc256..0000000000 --- a/keyboards/ergodox_ez/keymaps/bocaj/config.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef USERSPACE_CONFIG_H - #define USERSPACE_CONFIG_H - - #ifndef QMK_KEYS_PER_SCAN - #define QMK_KEYS_PER_SCAN 4 - #endif // QMK KEYS PER SCAN - - // this makes it possible to do rolling combos (zx) with keys that - // convert to other keys on hold (z becomes ctrl when you hold it, - // and when this option isn't enabled, z rapidly followed by x - // actually sends Ctrl-x. That's bad.) - #define IGNORE_MOD_TAP_INTERRUPT - #define PERMISSIVE_HOLD - #undef PREVENT_STUCK_MODIFIERS - - // Disable action_get_macro and fn_actions, since we don't use these - // and it saves on space in the firmware. - #define NO_ACTION_MACRO - #define NO_ACTION_FUNCTION - -#endif // !USERSPACE_CONFIG_H diff --git a/keyboards/ergodox_ez/keymaps/bocaj/keymap.c b/keyboards/ergodox_ez/keymaps/bocaj/keymap.c deleted file mode 100644 index 07117f1164..0000000000 --- a/keyboards/ergodox_ez/keymaps/bocaj/keymap.c +++ /dev/null @@ -1,340 +0,0 @@ -/* -Copyright 2018 Jacob Jerrell -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ -#include QMK_KEYBOARD_H -#include "bocaj.h" - -#ifdef UNICODEMAP_ENABLE -#include "bocaj_unicode.h" -#endif // UNICODEMAP_ENABLE - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Software Workman / QWERTY - http://www.keyboard-layout-editor.com/#/gists/b6c016a22a9d31381a276a603a42fe5f - .---------------------------------------------. .---------------------------------------------. - | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | DEL | Q | W | E | R | T | ( | ! ) | Y | U | I | O | P | \ | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | ADJST | A | S | D | F | G |-------! !-------! H | J | K | L | ; | ' | - !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! - | SHIFT | Z | X | C | V | B | { | ! } | N | M | , | . | / | SHIFT | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | GAME | NUM | VRS | UP | LFT | .---------------. .---------------. ! RGT | DWN | RSE | LWR | ADJ | - '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! SPACE ! | END | ! PGDN | ! ENTER ! - ! / ! BSPCE !-------! !-------! TAB ! / ! - | LOWER | | COPY | ! PASTE | | RAISE | - '-----------------------' '-----------------------' -*/ - [_SWRKMN] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC, ______________________NUMBER_LEFT________________________, JJ_ARRW, KC_MINUS, ______________________NUMBER_RIGHT_______________________, KC_EQUAL, - KC_DEL, _______________________SWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________SWORKMAN_R1_______________________, KC_BSLS, - KC_ADJS,_______________________SWORKMAN_L2_______________________, _______________________SWORKMAN_R2_______________________, KC_QUOTE, - KC_LSFT,_______________________SWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________SWORKMAN_R3_______________________, KC_RSFT, - ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, - ______________________ERGODOX_THUMBS_____________________ - ), -/* Hardware Workman - http://www.keyboard-layout-editor.com/#/gists/7a07cb982ec3597ba3e3d947554225f1 - .---------------------------------------------. .---------------------------------------------. - | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | DEL | Q | D | R | W | B | ( | ! ) | J | F | U | P | ; | \ | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | ADJST | A | S | H | T | G |-------! !-------! Y | N | E | O | I | ' | - !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! - | SHIFT | Z | X | M | C | V | { | ! } | K | L | , | . | / | SHIFT | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | GAME | NUM | VRS | UP | LFT | .---------------. .---------------. ! RGT | DWN | RSE | LWR | ADJ | - '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! SPACE ! | END | ! PGDN | ! ENTER ! - ! / ! BSPCE !-------! !-------! TAB ! / ! - | LOWER | | COPY | ! PASTE | | RAISE | - '-----------------------' '-----------------------' -*/ - [_HWRKMN] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC, ______________________NUMBER_LEFT________________________, JJ_ARRW, KC_MINUS, ______________________NUMBER_RIGHT_______________________, KC_EQUAL, - KC_DEL, _______________________HWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________HWORKMAN_R1_______________________, KC_BSLS, - KC_ADJS,_______________________HWORKMAN_L2_______________________, _______________________HWORKMAN_R2_______________________, KC_QUOTE, - KC_LSFT,_______________________HWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________HWORKMAN_R3_______________________, KC_RSFT, - ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, - ______________________ERGODOX_THUMBS_____________________ - ), -/* Lower - http://www.keyboard-layout-editor.com/#/gists/f1d745a88d1c48ab55e095efd9e7a43a - .---------------------------------------------. .---------------------------------------------. - | | F1 | F2 | F3 | F4 | F5 | | ! | F6 | F7 | F8 | F9 | F10 | | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | ` | 1 | 2 | 3 | 4 | 5 | | ! | 6 | 7 | 8 | 9 | 0 | | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | |-------! !-------! | | | | | | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | | | ! | | | | | | | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | | | | | | .---------------. .---------------. ! | | | | | - '------------------------------' | | | ! | | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | | ! | ! ! - ! ! !-------! !-------! ! ! - | | | | ! | | | - '-----------------------' '-----------------------' -*/ - [_LOWER] = LAYOUT_ergodox_pretty_wrapper( - _______,_______________________FUNC_LEFT_________________________, _______, _______, _______________________FUNC_RIGHT________________________, _______, - KC_GRV ,______________________NUMBER_LEFT________________________, _______, _______, ______________________NUMBER_RIGHT_______________________, _______, - _______,_________________________________________________________, _________________________________________________________, _______, - _______,_________________________________________________________, _______, _______, _________________________________________________________, _______, - _________________________________________________________, _________________________________________________________, - ______________________ERGODOX_THUMBS_____________________ - ), -/* Raise - http://www.keyboard-layout-editor.com/#/gists/e0f591ec2ce9f24675a02d15c7048b25 - .---------------------------------------------. .---------------------------------------------. - | | F1 | F2 | F3 | F4 | F5 | | ! _ | F6 | F7 | F8 | F9 | F10 | | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | ~ | ! | @ | # | $ | % | | ! | ^ | & | * | ( | ) | | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | |-------! !-------! | | | | | | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | | | ! | | | | | | | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | | | | | | .---------------. .---------------. ! | | | | | - '------------------------------' | | | ! | | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | | ! | ! ! - ! ! !-------! !-------! ! ! - | | | | ! | | | - '-----------------------' '-----------------------' -*/ - [_RAISE] = LAYOUT_ergodox_pretty_wrapper( - _______,_______________________FUNC_LEFT_________________________, _______, KC_UNDS, _______________________FUNC_RIGHT________________________, _______, - KC_TILD,______________________SPECIAL_LEFT_______________________, _______, _______, ______________________SPECIAL_RIGHT______________________, _______, - _______,_________________________________________________________, _________________________________________________________, _______, - _______,_________________________________________________________, _______, _______, _________________________________________________________, _______, - _________________________________________________________, _________________________________________________________, - ______________________ERGODOX_THUMBS_____________________ - ), - /* Adjust - http://www.keyboard-layout-editor.com/#/gists/dedeae17b35a5d5f745a42aaea78f007 - .---------------------------------------------. .---------------------------------------------. - | | | | | | | EPRM | ! EPRM | | | | | | | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | | | | | | | | ! | | 7 | 8 | 9 | * | | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | 🔇 | 🔉 | 🔊 | LCK | |-------! !-------! | 4 | 5 | 6 | + | SWRKM | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | | | ! | | 1 | 2 | 3 | - | HWRKM | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | | | | | | .---------------. .---------------. ! 0 | . | , | = | | - '------------------------------' | | | ! | | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | | ! | ! ! - ! ! !-------! !-------! ! ! - | | | | ! | | | - '-----------------------' '-----------------------' -*/ - [_ADJUST] = LAYOUT_ergodox_pretty_wrapper( - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, KC_EPRM, KC_EPRM, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_PAST, XXXXXXX, - _______,KC__MUTE, KC__VOLDOWN, KC__VOLUP, MC_LOCK, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, KC_SWRK, - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_PMNS, KC_HWRK, - XXXXXXX,_______,XXXXXXX,XXXXXXX,XXXXXXX, KC_KP_0, KC_PDOT, KC_COMM, KC_PEQL, _______, - ______________________ERGODOX_THUMBS_____________________ - ), -// Diablo - http://www.keyboard-layout-editor.com/#/gists/28476e4237e77d4835ac8a9d7e5f9b2c - [_DIABLO] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC , KC_V , KC_D ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_TAB , KC_S , KC_I , KC_F , KC_T , KC_J ,XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, XXXXXXX, XXXXXXX, - KC_Q , KC_1 , KC_2 , KC_3 , KC_4 , KC_M , XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, XXXXXXX, XXXXXXX, - KC_LSFT,KC_D3_1 ,KC_D3_2 ,KC_D3_3 ,KC_D3_4 ,XXXXXXX ,XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, XXXXXXX, XXXXXXX, - _______,ALT_T(KC_Z) ,KC_G ,KC_Y ,XXXXXXX , KC_KP_0, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, - XXXXXXX, XXXXXXX, - KC_BTN1,KC_BTN2,KC_DIABLO_CLEAR, XXXXXXX,XXXXXXX,XXXXXXX - ) -}; - -// Defines actions for my custom keycodes -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - // KC_COPY and KC_PASTE have problems with different hardware/software mappings - // e.g. If the mappings conflict, KC_COPY will send Cmd+M which minimizes the - // window and is very annoying. JJ_COPY and JJ_PASTE fix this by sending the - // raw character rather than the KC_* code - case JJ_COPY: - if (!record->event.pressed) { - SEND_STRING(SS_LGUI("c")); - } - return false; - break; - case JJ_PASTE: - if (!record->event.pressed) { - SEND_STRING(SS_LGUI("v")); - } - return false; - break; - case JJ_ARRW: - if (!record->event.pressed) { - SEND_STRING("->"); - } - return false; - break; - case KC_SWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_SWRKMN); - layer_move(_SWRKMN); - ergodox_blink_all_leds(); - ergodox_blink_all_leds(); - } - return false; - break; - case KC_HWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_HWRKMN); - layer_move(_HWRKMN); - ergodox_blink_all_leds(); - ergodox_blink_all_leds(); - } - return false; - break; - case KC_EPRM: - if (!record->event.pressed) { - ergodox_blink_all_leds(); - eeconfig_init(); - } - return false; - break; - case MC_LOCK: - if (!record->event.pressed) { - layer_move(_HWRKMN); - SEND_STRING(SS_LCTRL(SS_LGUI("q"))); - } - return false; - break; - case KC_DIABLO_CLEAR: -#ifdef TAP_DANCE_ENABLE - if (record->event.pressed) { - uint8_t dtime; - for (dtime = 0; dtime < 4; dtime++) { - diablo_key_time[dtime] = diablo_times[0]; - } - } -#endif // TAP_DANCE_ENABLE - return false; - break; - } - return true; -} - -void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; - -// Diablo III Fun stuff -//define diablo macro timer variables -uint16_t diablo_timer[4]; -uint8_t diablo_times[] = { 0, 1, 3, 5, 10, 30 }; -uint8_t diablo_key_time[4]; - -// has the correct number of seconds elapsed (as defined by diablo_times) -bool check_dtimer(uint8_t dtimer) { return (timer_elapsed(diablo_timer[dtimer]) < (diablo_key_time[dtimer] * 1000)) ? false : true; }; - -// Cycle through the times for the macro, starting at 0, for disabled. -// Max of six values, so don't exceed -void diablo_tapdance_master(qk_tap_dance_state_t *state, void *user_data, uint8_t diablo_key) { - if (state->count >= 7) { - diablo_key_time[diablo_key] = diablo_times[0]; - reset_tap_dance(state); - } else { - diablo_key_time[diablo_key] = diablo_times[state->count - 1]; - } -} - -// Would rather have one function for all of this, but no idea how to do that... -void diablo_tapdance1(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 0); } -void diablo_tapdance2(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 1); } -void diablo_tapdance3(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 2); } -void diablo_tapdance4(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 3); } - -//Tap Dance Definitions -qk_tap_dance_action_t tap_dance_actions[] = { - // tap once to disable, and more to enable timed micros - [TD_D3_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), - [TD_D3_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), - [TD_D3_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), - [TD_D3_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), -}; - -// Sends the key press to system, but only if on the Diablo layer -void send_diablo_keystroke(uint8_t diablo_key) { - if (biton32(layer_state) == _DIABLO) { - switch (diablo_key) { - case 0: - tap(KC_1); break; - case 1: - tap(KC_2); break; - case 2: - tap(KC_3); break; - case 3: - tap(KC_4); break; - } - } -} - -// Checks each of the 4 timers/keys to see if enough time has elapsed -// Runs the "send string" command if enough time has passed, and resets the timer. -void run_diablo_macro_check(void) { - uint8_t dtime; - for (dtime = 0; dtime < 4; dtime++) { - if (check_dtimer(dtime) && diablo_key_time[dtime]) { - diablo_timer[dtime] = timer_read(); - send_diablo_keystroke(dtime); - } - } -} - -void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - switch (layer) { - /* - Lights are treated as binary here for easy identification. - LED1 = 4; LED2 = 2; LED1 = 1 - This allows for up to 8 identified layers (default layers being no lights on) - Which is way more than I should ever need - */ - case _LOWER: - ergodox_right_led_3_on(); - ergodox_right_led_3_set(10); // Default brightness is deadly in a dark room - break; - case _RAISE: - ergodox_right_led_2_on(); - ergodox_right_led_2_set(10); - break; - case _ADJUST: - ergodox_right_led_2_on(); - ergodox_right_led_2_set(10); - ergodox_right_led_3_on(); - ergodox_right_led_3_set(10); - break; - case _DIABLO: - ergodox_right_led_1_on(); - ergodox_right_led_1_set(10); - break; - default: - // none - break; - } - #ifdef TAP_DANCE_ENABLE - run_diablo_macro_check(); - #endif -}; diff --git a/keyboards/ergodox_ez/keymaps/bocaj/readme.md b/keyboards/ergodox_ez/keymaps/bocaj/readme.md deleted file mode 100644 index 9d5aa60501..0000000000 --- a/keyboards/ergodox_ez/keymaps/bocaj/readme.md +++ /dev/null @@ -1,48 +0,0 @@ -# Ergodox EZ Layout by JacobJerrell - -My personal Ergodox EZ layout. - -## Summary - -Contains two base layers because I carry my keyboard between different machines and occassionally use the machines without this keyboard. A side-effect to using it in this manner (with a non-QWERTY layout) is that software/hardware mappings conflict so this allows a quick (2-buttons) to get the keyboard to a compatible layer - -## Layers - -| Layer | Purpose | -| ----- | ------- | -| 0 | [Hardware Workman](#hardware-workman) - For OS mapped to QWERTY | -| 1 | [Software Workman](#software-workman) - For OS mapped to Workman | -| 2 | [Lower](#lower) | -| 3 | [Raise](#raise) | -| 4 | [Adjust](#adjust) | -| 5 | [Diablo III](#diablo-iii) | - -### Hardware Workman - -For easy plug and play into QWERTY machines -![Hardware Workman](https://imgur.com/HHMIOEf.png) - -### Software Workman - -To switch to when I was previously using the laptop keyboard with software mapped to Workman. Or so other people can take the Ergodox for a spin. -![Software Workman](https://imgur.com/WnSci7o.png) - -### Lower - -Reveals F1-12 keys and brings numkeys down. -![Lowered](https://imgur.com/mGfjwcn.png) - -### Raise - -Reveals F1-F12 keys and gives shifted numkeys. -![Raised](https://imgur.com/NC96Jus.png) - -### Adjust - -Numpad, Wipe EEPROM, OSX Volume Control, OSX Lockscreen, and Default Layer Switching. -![Adjusted](https://imgur.com/aQtOxZU.png) - -### Diablo III - -Arranged to make playing on a laptop much more enjoyable. Credit for the D1-4 macros (as well as much of the ideas in this layout goes to Drashna) -![Diablo III](https://imgur.com/5eQcDOQ.png) diff --git a/keyboards/ergodox_ez/keymaps/bocaj/rules.mk b/keyboards/ergodox_ez/keymaps/bocaj/rules.mk deleted file mode 100644 index b667841a18..0000000000 --- a/keyboards/ergodox_ez/keymaps/bocaj/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -AUTO_SHIFT_ENABLE = no -COMMAND_ENABLE = no -SWAP_HANDS_ENABLE = no -TAP_DANCE_ENABLE = yes -EXTRAKEY_ENABLE = no diff --git a/layouts/community/ergodox/bocaj/config.h b/layouts/community/ergodox/bocaj/config.h new file mode 100644 index 0000000000..78350f6033 --- /dev/null +++ b/layouts/community/ergodox/bocaj/config.h @@ -0,0 +1,6 @@ +#pragma once + +#include QMK_KEYBOARD_CONFIG_H + +#undef PRODUCT +#define PRODUCT BocajEZ - Frankensteined ErgoDox EZ diff --git a/layouts/community/ergodox/bocaj/keymap.c b/layouts/community/ergodox/bocaj/keymap.c new file mode 100644 index 0000000000..fbe0fca653 --- /dev/null +++ b/layouts/community/ergodox/bocaj/keymap.c @@ -0,0 +1,246 @@ +/* +Copyright 2018 Jacob Jerrell jacob.jerrell@gmail.com @JacobJerrell + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include QMK_KEYBOARD_H +#include "bocaj.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Hardware Workman - http://www.keyboard-layout-editor.com/#/gists/7a07cb982ec3597ba3e3d947554225f1 + .---------------------------------------------. .---------------------------------------------. + | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | DEL | Q | D | R | W | B | ( | ! ) | J | F | U | P | ; | \ | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | NUMS | A | S | H | T | G |-------! !-------! Y | N | E | O | I | ' | + !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! + | SHIFT | Z | X | M | C | V | [ | ! ] | K | L | , | . | / | SHIFT | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | + '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | END | ! PGDN | ! ENTER ! + ! SPACE ! BSPCE !-------! !-------! TAB ! / ! + | | | COPY | ! PASTE | | LOWER | + '-----------------------' '-----------------------' +*/ + [_HWRKMN] = LAYOUT_ergodox_pretty_wrapper( + KC_ESC, _______________________NUMBER_LEFT_______________________, JJ_ARRW, KC_MINUS,_______________________NUMBER_RIGHT______________________, KC_EQUAL, + KC_DEL, _______________________HWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________HWORKMAN_R1_______________________, KC_BSLS, + KC_NUMS,_______________________HWORKMAN_L2_______________________, _______________________HWORKMAN_R2_______________________, KC_QUOTE, + KC_LSFT,_______________________HWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________HWORKMAN_R3_______________________, KC_RSFT, + ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, + ______________________ERGODOX_THUMBS_____________________ + ), +/* Software Workman / QWERTY - http://www.keyboard-layout-editor.com/#/gists/b6c016a22a9d31381a276a603a42fe5f + .---------------------------------------------. .---------------------------------------------. + | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | DEL | Q | W | E | R | T | ( | ! ) | Y | U | I | O | P | \ | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | NUMS | A | S | D | F | G |-------! !-------! H | J | K | L | ; | ' | + !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! + | SHIFT | Z | X | C | V | B | [ | ! ] | N | M | , | . | / | SHIFT | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | + '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | END | ! PGDN | ! ENTER ! + ! SPACE ! BSPCE !-------! !-------! TAB ! / ! + | | | COPY | ! PASTE | | LOWER | + '-----------------------' '-----------------------' +*/ + [_SWRKMN] = LAYOUT_ergodox_pretty_wrapper( + KC_ESC, _______________________NUMBER_LEFT_______________________, JJ_ARRW, KC_MINUS,_______________________NUMBER_RIGHT______________________, KC_EQUAL, + KC_DEL, _______________________SWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________SWORKMAN_R1_______________________, KC_BSLS, + KC_NUMS,_______________________SWORKMAN_L2_______________________, _______________________SWORKMAN_R2_______________________, KC_QUOTE, + KC_LSFT,_______________________SWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________SWORKMAN_R3_______________________, KC_RSFT, + ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, + ______________________ERGODOX_THUMBS_____________________ + ), +/* Lower - http://www.keyboard-layout-editor.com/#/gists/f1d745a88d1c48ab55e095efd9e7a43a + .---------------------------------------------. .---------------------------------------------. + | ESC | | | | | | -> | ! - | | | | | | = | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | DEL | ! | @ | # | $ | % | ( | ! ) | ^ | & | * | ( | ) | \ | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | ` | 1 | 2 | 3 | 4 | 5 |-------! !-------! 6 | 7 | 8 | 9 | 0 | ' | + !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! + | SHIFT | | | | | | [ | ! ] | | | | | | SHIFT | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | + '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | END | ! PGDN | ! ENTER ! + ! SPACE ! BSPCE !-------! !-------! TAB ! / ! + | | | COPY | ! PASTE | | LOWER | + '-----------------------' '-----------------------' +*/ + [_LOWER] = LAYOUT_ergodox_pretty_wrapper( + _______,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, _______, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, + _______,_______________________SPECIAL_LEFT______________________, _______, _______, _______________________SPECIAL_RIGHT_____________________, _______, + KC_GRV ,_______________________NUMBER_LEFT_______________________, _______________________NUMBER_RIGHT______________________, _______, + _______,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, _______, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, + _________________________________________________________, _________________________________________________________, + ______________________ERGODOX_THUMBS_____________________ + ), + /* Adjust - http://www.keyboard-layout-editor.com/#/gists/dedeae17b35a5d5f745a42aaea78f007 + .---------------------------------------------. .---------------------------------------------. + | | | | | | | EPRM | ! EPRM | | | | | | | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | | | | | | | | ! | | | | | | | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | | 🔇 | 🔉 | 🔊 | LCK | |-------! !-------! | | | | | SWRKM | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | | | | | | | | ! | | | | | | HWRKM | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | | | | | | .---------------. .---------------. ! | | | | | + '------------------------------' | | | ! | | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | | ! | ! ! + ! ! !-------! !-------! ! ! + | | | | ! | | | + '-----------------------' '-----------------------' +*/ + [_ADJUST] = LAYOUT_ergodox_pretty_wrapper( + XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, KC_EPRM, KC_EPRM, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, + XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX,KC__MUTE, KC__VOLDOWN, KC__VOLUP, MC_LOCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SWRK, + XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HWRK, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + ______________________ERGODOX_THUMBS_____________________ + ), + [_NUMS] = LAYOUT_ergodox_pretty_wrapper( + XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, + XXXXXXX,XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_PAST, XXXXXXX, + _______,XXXXXXX, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, XXXXXXX, + LM_SHFT,XXXXXXX, XXXXXXX, XXXXXXX, JJ_COPY, JJ_PSTE, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_PMNS, XXXXXXX, + XXXXXXX,_______,XXXXXXX,XXXXXXX,XXXXXXX, KC_KP_0, KC_PDOT, KC_COMM, KC_PEQL, XXXXXXX, + _______, _______, _______,_______, + _______, _______, + KC_LALT,KC_LGUI,_______, _______,_______,_______ + ), + [_NMOD] = LAYOUT_ergodox_pretty_wrapper( + XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, + XXXXXXX,XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, + XXXXXXX,XXXXXXX, _______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, + LM_SHFT,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, _______, _______, _______, _______, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, + XXXXXXX, XXXXXXX, + KC_LALT,KC_LGUI,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX + ), +// Diablo - http://www.keyboard-layout-editor.com/#/gists/28476e4237e77d4835ac8a9d7e5f9b2c + [_DIABLO] = LAYOUT_ergodox_pretty_wrapper( + KC_ESC , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_TAB , KC_Q ,ALT_T(KC_S), KC_I , KC_F , KC_J ,KC_MINS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_LOCK, KC_1 , KC_2 , KC_3 , KC_4 ,KC_DCLR , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_LSFT, KC_D3_1 , KC_D3_2 , KC_D3_3 , KC_D3_4 , KC_T ,KC_MINS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX , XXXXXXX , XXXXXXX , KC_M , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, + XXXXXXX, XXXXXXX, + KC_BTN1,KC_BTN2,KC_ENTER, XXXXXXX,XXXXXXX,XXXXXXX + ) +}; + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + uint8_t default_layer = 0; + default_layer = eeconfig_read_default_layer(); + switch (keycode) { + case KC_SWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_SWRKMN); + layer_move(default_layer); + ergodox_blink_all_leds(); + ergodox_blink_all_leds(); + } + return false; + break; + case KC_HWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_HWRKMN); + layer_move(default_layer); + ergodox_blink_all_leds(); + ergodox_blink_all_leds(); + } + return false; + break; + case KC_EPRM: + if (!record->event.pressed) { + ergodox_blink_all_leds(); + eeconfig_init(); + } + return false; + break; + case MC_LOCK: + if (!record->event.pressed) { + layer_move(default_layer); + SEND_STRING(SS_LCTRL(SS_LGUI("q"))); + } + return false; + break; + } + return true; +} + +void matrix_init_keymap(void) {}; + +void matrix_scan_keymap(void) { + uint8_t layer = biton32(layer_state); + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + /* + Lights are treated as binary here for easy identification. + LED1 = 4; LED2 = 2; LED1 = 1 + This allows for up to 8 identified layers (default layers being no lights on) + Which is way more than I should ever need + */ + case _LOWER: + ergodox_right_led_3_on(); + ergodox_right_led_3_set(10); // Default brightness is deadly in a dark room + break; + case _ADJUST: + ergodox_right_led_2_on(); + ergodox_right_led_2_set(10); + break; + case _NUMS: + ergodox_right_led_2_on(); + ergodox_right_led_2_set(10); + ergodox_right_led_3_on(); + ergodox_right_led_3_set(10); + break; + case _NMOD: + ergodox_right_led_1_on(); + ergodox_right_led_1_set(10); + ergodox_right_led_2_on(); + ergodox_right_led_2_set(10); + ergodox_right_led_3_on(); + ergodox_right_led_3_set(10); + break; + case _DIABLO: + ergodox_right_led_1_on(); + ergodox_right_led_1_set(10); + break; + default: + // none + break; + } + /* #ifdef TAP_DANCE_ENABLE + run_diablo_macro_check(); + #endif */ +}; diff --git a/layouts/community/ergodox/bocaj/rules.mk b/layouts/community/ergodox/bocaj/rules.mk new file mode 100644 index 0000000000..037bca2b67 --- /dev/null +++ b/layouts/community/ergodox/bocaj/rules.mk @@ -0,0 +1,6 @@ +AUTO_SHIFT_ENABLE = no +COMMAND_ENABLE = no +SWAP_HANDS_ENABLE = no +TAP_DANCE_ENABLE = yes +EXTRAKEY_ENABLE = no +KEY_LOCK_ENABLE = yes diff --git a/users/bocaj/bocaj.c b/users/bocaj/bocaj.c new file mode 100644 index 0000000000..6df6e3bbfa --- /dev/null +++ b/users/bocaj/bocaj.c @@ -0,0 +1,177 @@ +#include "bocaj.h" +#include "eeprom.h" +#include "version.h" +#include "tap_dances.h" + +static uint16_t copy_paste_timer; +userspace_config_t userspace_config; + +/* *** *** *** *** * + * Helper Functions * + * *** *** *** *** */ +void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; + +// Add reconfigurable functions here, for keymap customization +// This allows for a global, userspace functions, and continued +// customization of the keymap. Use _keymap instead of _user +// functions in the keymaps +__attribute__ ((weak)) +void matrix_init_keymap(void) {} + +__attribute__ ((weak)) +void startup_keymap(void) {} + +__attribute__ ((weak)) +void suspend_power_down_keymap(void) {} + +__attribute__ ((weak)) +void suspend_wakeup_init_keymap(void) {} + +__attribute__ ((weak)) +void matrix_scan_keymap(void) {} + +__attribute__ ((weak)) +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + return true; +} + +__attribute__ ((weak)) +bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { + return true; +} + + +__attribute__ ((weak)) +uint32_t layer_state_set_keymap (uint32_t state) { + return state; +} + +__attribute__ ((weak)) +uint32_t default_layer_state_set_keymap (uint32_t state) { + return state; +} + +__attribute__ ((weak)) +void led_set_keymap(uint8_t usb_led) {} + +// Call user matrix init, set default RGB colors and then +// call the keymap's init function +void matrix_init_user(void) { + userspace_config.raw = eeprom_read_byte(EECONFIG_USERSPACE); + matrix_init_keymap(); +} + +void startup_user (void) { + startup_keymap(); +} + +void suspend_power_down_user(void) +{ + suspend_power_down_keymap(); +} + +void suspend_wakeup_init_user(void) +{ + suspend_wakeup_init_keymap(); + #ifdef KEYBOARD_ergodox_ez + wait_ms(10); + #endif +} + +// No global matrix scan code, so just run keymap's matrix +// scan function +void matrix_scan_user(void) { + static bool has_ran_yet; + if (!has_ran_yet) { + has_ran_yet = true; + startup_user(); + } + +#ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code. + run_diablo_macro_check(); +#endif // TAP_DANCE_ENABLE + + matrix_scan_keymap(); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + /* uint8_t default_layer = 0; + default_layer = eeconfig_read_default_layer(); */ + switch (keycode) { + case JJ_COPY: + if (!record->event.pressed) { + SEND_STRING(SS_LGUI("c")); + } + return false; + break; + case JJ_PSTE: + if (!record->event.pressed) { + SEND_STRING(SS_LGUI("v")); + } + return false; + break; + case JJ_ARRW: + if (!record->event.pressed) { + SEND_STRING("->"); + } + return false; + break; /* + case KC_SWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_SWRKMN); + layer_move(default_layer); + //ergodox_blink_all_leds(); + //ergodox_blink_all_leds(); + } + return false; + break; + case KC_HWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_HWRKMN); + layer_move(default_layer); + //ergodox_blink_all_leds(); + //ergodox_blink_all_leds(); + } + return false; + break; + case KC_EPRM: + if (!record->event.pressed) { + //ergodox_blink_all_leds(); + eeconfig_init(); + } + return false; + break; + case MC_LOCK: + if (!record->event.pressed) { + layer_move(default_layer); + SEND_STRING(SS_LCTRL(SS_LGUI("q"))); + } + return false; + break; */ + case KC_DCLR: +#ifdef TAP_DANCE_ENABLE + if (record->event.pressed) { + uint8_t dtime; + for (dtime = 0; dtime < 4; dtime++) { + diablo_key_time[dtime] = diablo_times[0]; + } + } +#endif // !TAP_DANCE_ENABLE + return false; + break; + case KC_CCCV: + if (record->event.pressed) { + copy_paste_timer = timer_read(); + } else { + if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy + SEND_STRING(SS_LGUI("c")); + } else { + SEND_STRING(SS_LGUI("v")); + } + } + return false; + break; + } + return process_record_keymap(keycode, record); +} + diff --git a/users/bocaj/bocaj.h b/users/bocaj/bocaj.h new file mode 100644 index 0000000000..7b537397f0 --- /dev/null +++ b/users/bocaj/bocaj.h @@ -0,0 +1,141 @@ +#ifndef USERSPACE +#define USERSPACE + +#include "quantum.h" + +/* *** *** *** *** *** * + * Define layer names * + * *** *** *** *** *** */ +enum userspace_layers { + _HWRKMN = 0, + _SWRKMN, + _LOWER, + _ADJUST, + _NUMS, + _NMOD, + _DIABLO +}; + +#define EECONFIG_USERSPACE (uint8_t *)19 +typedef union { + uint8_t raw; +} userspace_config_t; + +/* *** *** *** *** *** *** * + * Define Custom Keycodes * + * *** *** *** *** *** *** */ +enum userspace_custom_keycodes { + KC_EPRM = SAFE_RANGE, // can always be here + KC_SWRK, + KC_HWRK, + KC_VRSN, + JJ_COPY, + JJ_PSTE, + JJ_ARRW, + KC_CCCV, + MC_LOCK, + KC_DCLR, + NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes +}; + +// Space Cadet Hyper/Meh and [/] +#define HYP_LBK ALL_T(KC_LBRACKET) +#define MEH_RBK MEH_T(KC_RBRACKET) + +// Layout beauti-/simpli-fication +#define KC_LWEN LT(_LOWER, KC_ENTER) +#define KC_ADJS TT(_ADJUST) +#define KC_NUMS TT(_NUMS) +#define LM_SHFT LM(_NMOD, MOD_LSFT) +#define XXXXXXX KC_NO +#define _______ KC_TRNS + +void tap(uint16_t keycode); + +/* *** *** *** *** *** *** * + * Diablo 3 Macro Handling * + * *** *** *** *** *** *** */ + +// If Tap Dancing is enabled, we manage that here. +// If it is not, then we define the KC_D3_# codes gracefully +#ifdef TAP_DANCE_ENABLE +enum { + TD_D3_1 = 0, + TD_D3_2, + TD_D3_3, + TD_D3_4, +}; + +#define KC_D3_1 TD(TD_D3_1) +#define KC_D3_2 TD(TD_D3_2) +#define KC_D3_3 TD(TD_D3_3) +#define KC_D3_4 TD(TD_D3_4) +#else // !TAP_DANCE_ENABLE +#define KC_D3_1 KC_1 +#define KC_D3_2 KC_2 +#define KC_D3_3 KC_3 +#define KC_D3_4 KC_4 +#endif // TAP_DANCE_ENABLE + +// Wrapper for handling of keymap 'blocks' +// not 100% sure what this first part does. Credit to Drashna +#if (!defined(LAYOUT) && defined(KEYMAP)) +#define LAYOUT KEYMAP +#endif + +#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) +/* Pretty Layout +.---------------------------------------------. .---------------------------------------------. +| 1 | 2 | 3 | 4 | 5 | 6 | 7 | ! 8 | 9 | 10 | 11 | 12 | 13 | 14 | +!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! +| 15 | 16 | 17 | 18 | 19 | 20 | 21 | ! 22 | 23 | 24 | 25 | 26 | 27 | 28 | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| 29 | 30 | 31 | 32 | 33 | 34 |-------! !-------! 35 | 36 | 37 | 38 | 39 | 40 | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| 41 | 42 | 43 | 44 | 45 | 46 | 47 | ! 48 | 49 | 50 | 51 | 52 | 53 | 54 | +'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | 55 | 56 | 57 | 58 | 59 | .---------------. .---------------. ! 60 | 61 | 62 | 63 | 64 | + '------------------------------' | 65 | 66 | ! 67 | 68 | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | 69 | ! 70 | ! ! + ! ! !-------! !-------! ! ! + | 71 | 72 | 73 | ! 74 | 75 | 76 | + '-----------------------' '-----------------------' +*/ + +#define _______________________SWORKMAN_L1_______________________ KC_Q, KC_W, KC_E, KC_R, KC_T +#define _______________________SWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_D), ALT_T(KC_F), KC_G +#define _______________________SWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B + +#define _______________________SWORKMAN_R1_______________________ KC_Y, KC_U, KC_I, KC_O, KC_P +#define _______________________SWORKMAN_R2_______________________ KC_H, ALT_T(KC_J), GUI_T(KC_K), SFT_T(KC_L), KC_SCLN +#define _______________________SWORKMAN_R3_______________________ KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) + +// Hardware Driven Workman +#define _______________________HWORKMAN_L1_______________________ KC_Q, KC_D, KC_R, KC_W, KC_B +#define _______________________HWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_H), ALT_T(KC_T), KC_G +#define _______________________HWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_M, KC_C, KC_V + +#define _______________________HWORKMAN_R1_______________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN +#define _______________________HWORKMAN_R2_______________________ KC_Y, ALT_T(KC_N), GUI_T(KC_E), SFT_T(KC_O), KC_I +#define _______________________HWORKMAN_R3_______________________ KC_K, KC_L, KC_COMM, KC_DOT, CTL_T(KC_SLASH) + +#define ___________________ERGODOX_BOTTOM_LEFT___________________ TT(_DIABLO), KC_NUMS, TT(_LOWER), KC_UP, KC_LEFT +#define ___________________ERGODOX_BOTTOM_RIGHT__________________ KC_RIGHT, KC_DOWN, XXXXXXX, XXXXXXX, TT(_ADJUST) + +#define _______________________NUMBER_LEFT_______________________ KC_1, KC_2, KC_3, KC_4, KC_5 +#define _______________________NUMBER_RIGHT______________________ KC_6, KC_7, KC_8, KC_9, KC_0 + +#define _______________________SPECIAL_LEFT______________________ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC +#define _______________________SPECIAL_RIGHT_____________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN + +#define _________________________________________________________ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +#define XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + +// LEFT | RIGHT +#define ______________________ERGODOX_THUMBS_____________________ KC_APP,KC_HOME, KC_PGUP,KC_ESC, \ + KC_END, KC_PGDOWN, \ + KC_SPACE,KC_BSPACE,JJ_COPY, JJ_PSTE,KC_TAB,KC_LWEN + + +#endif // !USERSPACE diff --git a/users/bocaj/config.h b/users/bocaj/config.h new file mode 100644 index 0000000000..ce5ec65d62 --- /dev/null +++ b/users/bocaj/config.h @@ -0,0 +1,33 @@ +#pragma once + +#ifndef QMK_KEYS_PER_SCAN + #define QMK_KEYS_PER_SCAN 4 +#endif // QMK KEYS PER SCAN + +// this makes it possible to do rolling combos (zx) with keys that +// convert to other keys on hold (z becomes ctrl when you hold it, +// and when this option isn't enabled, z rapidly followed by x +// actually sends Ctrl-x. That's bad.) +#define IGNORE_MOD_TAP_INTERRUPT +#undef PERMISSIVE_HOLD +#define PREVENT_STUCK_MODIFIERS + +#ifdef TAPPING_TERM +#undef TAPPING_TERM +#endif // TAPPING_TERM +#define TAPPING_TERM 175 + +// Disable action_get_macro and fn_actions, since we don't use these +// and it saves on space in the firmware. +#ifndef NO_DEBUG +#define NO_DEBUG +#endif // !NO_DEBUG +#if !defined(NO_PRINT) && !defined(CONSOLE_ENABLE) +#define NO_PRINT +#endif // !NO_PRINT +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +#define DISABLE_LEADER + +#define MACRO_TIMER 5 diff --git a/users/bocaj/readme.md b/users/bocaj/readme.md new file mode 100644 index 0000000000..bab6d7337f --- /dev/null +++ b/users/bocaj/readme.md @@ -0,0 +1,14 @@ +Copyright 2018 Jacob Jerrell jacob.jerrell@gmail.com @JacobJerrell + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . diff --git a/users/bocaj/rules.mk b/users/bocaj/rules.mk new file mode 100644 index 0000000000..17d2772a7c --- /dev/null +++ b/users/bocaj/rules.mk @@ -0,0 +1,5 @@ +SRC += bocaj.c + +ifeq ($(strip $(TAP_DANCE_ENABLE)), yes) + SRC += tap_dances.c +endif diff --git a/users/bocaj/tap_dances.c b/users/bocaj/tap_dances.c new file mode 100644 index 0000000000..10767db453 --- /dev/null +++ b/users/bocaj/tap_dances.c @@ -0,0 +1,65 @@ +#include "bocaj.h" +#include "tap_dances.h" + + +//define diablo macro timer variables +uint16_t diablo_timer[4]; +uint8_t diablo_times[] = { 0, 1, 3, 5, 10, 30 }; +uint8_t diablo_key_time[4]; + +// has the correct number of seconds elapsed (as defined by diablo_times) +bool check_dtimer(uint8_t dtimer) { return (timer_elapsed(diablo_timer[dtimer]) < (diablo_key_time[dtimer] * 1000)) ? false : true; }; + +// Cycle through the times for the macro, starting at 0, for disabled. +// Max of six values, so don't exceed +void diablo_tapdance_master(qk_tap_dance_state_t *state, void *user_data, uint8_t diablo_key) { + if (state->count >= 7) { + diablo_key_time[diablo_key] = diablo_times[0]; + reset_tap_dance(state); + } else { + diablo_key_time[diablo_key] = diablo_times[state->count - 1]; + } +} + +// Would rather have one function for all of this, but no idea how to do that... +void diablo_tapdance1(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 0); } +void diablo_tapdance2(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 1); } +void diablo_tapdance3(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 2); } +void diablo_tapdance4(qk_tap_dance_state_t *state, void *user_data) { diablo_tapdance_master(state, user_data, 3); } + +//Tap Dance Definitions +qk_tap_dance_action_t tap_dance_actions[] = { + // tap once to disable, and more to enable timed micros + [TD_D3_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), + [TD_D3_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), + [TD_D3_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), + [TD_D3_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), +}; + +// Sends the key press to system, but only if on the Diablo layer +void send_diablo_keystroke(uint8_t diablo_key) { + if (biton32(layer_state) == _DIABLO) { + switch (diablo_key) { + case 0: + tap(KC_1); break; + case 1: + tap(KC_2); break; + case 2: + tap(KC_3); break; + case 3: + tap(KC_4); break; + } + } +} + +// Checks each of the 4 timers/keys to see if enough time has elapsed +// Runs the "send string" command if enough time has passed, and resets the timer. +void run_diablo_macro_check(void) { + uint8_t dtime; + for (dtime = 0; dtime < 4; dtime++) { + if (check_dtimer(dtime) && diablo_key_time[dtime]) { + diablo_timer[dtime] = timer_read(); + send_diablo_keystroke(dtime); + } + } +} diff --git a/users/bocaj/tap_dances.h b/users/bocaj/tap_dances.h new file mode 100644 index 0000000000..8935753f6c --- /dev/null +++ b/users/bocaj/tap_dances.h @@ -0,0 +1,7 @@ +//define diablo macro timer variables +extern uint16_t diablo_timer[4]; +extern uint8_t diablo_times[]; +extern uint8_t diablo_key_time[4]; + + +void run_diablo_macro_check(void); -- cgit v1.2.3 From e4bbe057f2620ee24c3a78cb758cdfa7c4bd7abf Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Wed, 29 Aug 2018 10:42:15 -0700 Subject: Yet another update to drashna keymaps and userspace (#3787) * Make tap function inline * Use better makefile keyboard detection * Remove Copy-Paste macro * Add F11/F12 to Iris * Minor tweaks to userspace config * Set audio clicky randomness to 1.5 * Set NO_DEBUG to only be set if console is not enabled * Move NO_MUSIC_MODE to userspace config.h * Reduce Ergodox Debounce * Add Planck Light config * Use OSM for ortho 4x12 * Music Mode changes for planck light * Cleanup do to shutdown user and other fixes in Master * Add and use 'shutdown_user' fzunction * Remove global NO_MUSIC_MODE define * Add NO_MUSIC_MODE to individual keymaps * Change layer colors * Remove NO_PRINT and NO_DEBUG from userspace config.h Since these are automatically disabled if the console isn't enabled. * Remove backlight code if backlight isn't enabled * Remove Twinkle from Ergodox * Disable RGB twinkling and enable PSM * Clean up RGB matrix code * Clean up planck light indicators * Clean up tap code * Rules cleanup for ortho 4x12 * Fix up userspace template * Revert "Clean up tap code" This reverts commit 09f64d6d67aa021c3b5ac86a9a739a5ca2b9c1ec. * Organize includes * userspace cleanup * Fix modifier spelling error * Fix userspace rules * Disable Permissive Hold again * Minor clean up * Fix Tap stuff * Viterbi Updates for file size --- keyboards/iris/keymaps/drashna/keymap.c | 22 ++- keyboards/iris/keymaps/drashna/rules.mk | 2 +- keyboards/orthodox/keymaps/drashna/config.h | 2 +- keyboards/orthodox/keymaps/drashna/rules.mk | 2 +- keyboards/viterbi/keymaps/drashna/config.h | 8 +- keyboards/viterbi/keymaps/drashna/keymap.c | 2 +- layouts/community/ergodox/drashna/config.h | 3 + layouts/community/ergodox/drashna/keymap.c | 16 +-- layouts/community/ergodox/drashna/rules.mk | 6 +- layouts/community/ortho_4x12/drashna/config.h | 9 ++ layouts/community/ortho_4x12/drashna/keymap.c | 195 ++++++++++++++------------ layouts/community/ortho_4x12/drashna/rules.mk | 14 +- users/drashna/config.h | 16 +-- users/drashna/drashna.c | 75 ++++------ users/drashna/drashna.h | 22 +-- users/drashna/rgb_stuff.c | 6 +- users/drashna/rgb_stuff.h | 1 - users/drashna/template.c | 97 +++++++++---- users/drashna/template.h | 4 +- 19 files changed, 280 insertions(+), 222 deletions(-) (limited to 'layouts') diff --git a/keyboards/iris/keymaps/drashna/keymap.c b/keyboards/iris/keymaps/drashna/keymap.c index 70d13cac21..37c3f97f54 100644 --- a/keyboards/iris/keymaps/drashna/keymap.c +++ b/keyboards/iris/keymaps/drashna/keymap.c @@ -2,36 +2,34 @@ #include QMK_KEYBOARD_H #include "drashna.h" -#define KC_ALAP ALT_T(KC_APP) -#define KC_OSLG OSM(MOD_LGUI) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_wrapper( KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB , _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS, - KC_CCCV, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, KC_ALAP, KC_OSLG, _________________QWERTY_R3_________________, KC_MRSF, + KC_C1R3, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, + KC_MLSF, _________________QWERTY_L3_________________, ALT_APP, OS_RGUI, _________________QWERTY_R3_________________, KC_MRSF, LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE ), [_COLEMAK] = LAYOUT_wrapper( KC_ESC , ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB , _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSLS, - KC_CCCV, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, - KC_MLSF, _________________COLEMAK_L3________________, KC_ALAP, KC_OSLG, _________________COLEMAK_R3________________, KC_MRSF, + KC_C1R3, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, + KC_MLSF, _________________COLEMAK_L3________________, ALT_APP, OS_RGUI, _________________COLEMAK_R3________________, KC_MRSF, LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE ), [_DVORAK] = LAYOUT_wrapper( KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB , _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSLS, - KC_CCCV, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_QUOT, - KC_MLSF, _________________DVORAK_L3_________________, KC_ALAP, KC_OSLG, _________________DVORAK_R3_________________, KC_MRSF, + KC_C1R3, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_QUOT, + KC_MLSF, _________________DVORAK_L3_________________, ALT_APP, OS_RGUI, _________________DVORAK_R3_________________, KC_MRSF, LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE ), [_WORKMAN] = LAYOUT_wrapper( KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB , _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSLS, - KC_CCCV, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, - KC_MLSF, _________________WORKMAN_L3________________, KC_ALAP, KC_OSLG, _________________WORKMAN_R3________________, KC_MRSF, + KC_C1R3, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, + KC_MLSF, _________________WORKMAN_L3________________, ALT_APP, OS_RGUI, _________________WORKMAN_R3________________, KC_MRSF, LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE ), @@ -53,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT_wrapper( - _______, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, _______, + KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______, _______, ___________________BLANK___________________, _________________LOWER_R2__________________, KC_PIPE, _______, ___________________BLANK___________________, _______, _______, _________________LOWER_R3__________________, _______, @@ -61,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_RAISE] = LAYOUT_wrapper( - _______, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, _______, + KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, _______, _________________RAISE_L3__________________, _______, _______, _________________RAISE_R3__________________, _______, diff --git a/keyboards/iris/keymaps/drashna/rules.mk b/keyboards/iris/keymaps/drashna/rules.mk index ccc33c06f3..e8035176ef 100644 --- a/keyboards/iris/keymaps/drashna/rules.mk +++ b/keyboards/iris/keymaps/drashna/rules.mk @@ -12,6 +12,6 @@ SWAP_HANDS_ENABLE = no INDICATOR_LIGHTS = yes MACROS_ENABLED = no -RGBLIGHT_TWINKLE = yes +RGBLIGHT_TWINKLE = no BOOTLOADER = qmk-dfu diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h index d8ff95fcb6..2257b62fd3 100644 --- a/keyboards/orthodox/keymaps/drashna/config.h +++ b/keyboards/orthodox/keymaps/drashna/config.h @@ -58,7 +58,7 @@ along with this program. If not, see . #define C6_AUDIO #ifdef RGBLIGHT_ENABLE #define NO_MUSIC_MODE -#endif //RGBLIGHT_ENABLE +#endif #endif //AUDIO_ENABLE #undef PRODUCT diff --git a/keyboards/orthodox/keymaps/drashna/rules.mk b/keyboards/orthodox/keymaps/drashna/rules.mk index f870c3a7d6..a826c664a7 100644 --- a/keyboards/orthodox/keymaps/drashna/rules.mk +++ b/keyboards/orthodox/keymaps/drashna/rules.mk @@ -10,6 +10,6 @@ NKRO_ENABLE = yes INDICATOR_LIGHTS = yes MACROS_ENABLED = no -RGBLIGHT_TWINKLE = yes +RGBLIGHT_TWINKLE = no BOOTLOADER = qmk-dfu diff --git a/keyboards/viterbi/keymaps/drashna/config.h b/keyboards/viterbi/keymaps/drashna/config.h index 5bc5598ee0..687f80441a 100644 --- a/keyboards/viterbi/keymaps/drashna/config.h +++ b/keyboards/viterbi/keymaps/drashna/config.h @@ -35,12 +35,6 @@ along with this program. If not, see . #undef LOCKING_SUPPORT_ENABLE #undef LOCKING_RESYNC_ENABLE -#ifndef NO_DEBUG -#define NO_DEBUG -#endif // !NO_DEBUG -#ifndef NO_PRINT -#define NO_PRINT -#endif // !NO_PRINT /* disable action features */ //#define NO_ACTION_LAYER @@ -59,6 +53,8 @@ along with this program. If not, see . #define NO_MUSIC_MODE #endif +#undef PREVENT_STUCK_MODIFIERS + #define LAYOUT_ortho_5x7( \ L00, L01, L02, L03, L04, L05, L06, \ L10, L11, L12, L13, L14, L15, L16, \ diff --git a/keyboards/viterbi/keymaps/drashna/keymap.c b/keyboards/viterbi/keymaps/drashna/keymap.c index 68ca593db8..acda8a0d25 100644 --- a/keyboards/viterbi/keymaps/drashna/keymap.c +++ b/keyboards/viterbi/keymaps/drashna/keymap.c @@ -13,7 +13,7 @@ extern keymap_config_t keymap_config; #define _______ KC_TRNS #define XXXXXXX KC_NO -#define LMACRO TG(_MACROS) +#define LMACRO OSL(_MACROS) #define DIABLO TG(_DIABLO) #define GAMEPAD TG(_GAMEPAD) #define MEDIA TT(_MEDIA) diff --git a/layouts/community/ergodox/drashna/config.h b/layouts/community/ergodox/drashna/config.h index 9e2bd74f32..3ced185932 100644 --- a/layouts/community/ergodox/drashna/config.h +++ b/layouts/community/ergodox/drashna/config.h @@ -13,3 +13,6 @@ #undef PRODUCT #define PRODUCT DrashnaDox - Hacked ErgoDox EZ Shine + +#undef DEBOUNCE +#define DEBOUNCE 5 diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 27d20d9289..4d7700f199 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, _________________QWERTY_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________QWERTY_R1_________________, KC_BSLS, KC_C1R3, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, KC_MLSF, _________________QWERTY_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________QWERTY_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_CCCV, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: COLEMAK layer @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, _________________COLEMAK_L1________________, TG(_DIABLO), TG(_DIABLO), _________________COLEMAK_R1________________, KC_BSLS, KC_C1R3, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, KC_MLSF, _________________COLEMAK_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________COLEMAK_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_CCCV, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: DVORAK Layout @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, _________________DVORAK_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________DVORAK_R1_________________, KC_SLSH, KC_C1R3, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_MINS, KC_MLSF, _________________DVORAK_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________DVORAK_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_CCCV, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: WORKMAN layer @@ -157,7 +157,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, _________________WORKMAN_L1________________, TG(_DIABLO), TG(_DIABLO), _________________WORKMAN_R1________________, KC_BSLS, KC_C1R3, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, KC_MLSF, _________________WORKMAN_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________WORKMAN_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_CCCV, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, __________________ERGODOX_THUMB_CLUSTER_____________________ ), @@ -294,7 +294,7 @@ void matrix_init_keymap(void) { // Runs boot tasks for keyboard void matrix_scan_keymap(void) { // runs frequently to update info - uint8_t modifiders = get_mods(); + uint8_t modifiers = get_mods(); uint8_t led_usb_state = host_keyboard_leds(); uint8_t one_shot = get_oneshot_mods(); @@ -307,15 +307,15 @@ void matrix_scan_keymap(void) { // runs frequently to update info // Since we're not using the LEDs here for layer indication anymore, // then lets use them for modifier indicators. Shame we don't have 4... // Also, no "else", since we want to know each, independently. - if (modifiders & MODS_SHIFT_MASK || led_usb_state & (1<event.pressed) { register_code(KC_RSFT); @@ -170,8 +113,86 @@ bool music_mask_user(uint16_t keycode) { switch (keycode) { case RAISE: case LOWER: + case BK_LWER: + case SP_LWER: + case DL_RAIS: + case ET_RAIS: return false; default: return true; } } + +#ifdef RGB_MATRIX_ENABLE + + +void rgb_matrix_layer_helper (uint8_t red, uint8_t green, uint8_t blue, bool default_layer) { + rgb_led led; + for (int i = 0; i < DRIVER_LED_TOTAL; i++) { + led = g_rgb_leds[i]; + if (led.matrix_co.raw < 0xFF) { + if (led.modifier) { + rgb_matrix_set_color( i, red, green, blue ); + } + } + } +} + +void rgb_matrix_indicators_user(void) { + uint8_t this_mod = get_mods(); + uint8_t this_led = host_keyboard_leds(); + uint8_t this_osm = get_oneshot_mods(); + + switch (biton32(layer_state)) { + case _RAISE: + rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, false); break; + case _LOWER: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00, false); break; + case _ADJUST: + rgb_matrix_layer_helper(0xFF, 0x00, 0x00, false); break; + default: + switch (biton32(default_layer_state)) { + case _QWERTY: + rgb_matrix_layer_helper(0x00, 0xFF, 0xFF, true); break; + case _COLEMAK: + rgb_matrix_layer_helper(0xFF, 0x00, 0xFF, true); break; + case _DVORAK: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00, true); break; + case _WORKMAN: + rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, true); break; + } + } + + switch (biton32(default_layer_state)) { + case _QWERTY: + rgb_matrix_set_color(42, 0x00, 0xFF, 0xFF); break; + case _COLEMAK: + rgb_matrix_set_color(42, 0xFF, 0x00, 0xFF); break; + case _DVORAK: + rgb_matrix_set_color(42, 0x00, 0xFF, 0x00); break; + case _WORKMAN: + rgb_matrix_set_color(42, 0xD9, 0xA5, 0x21); break; + } + + if (this_mod & MODS_SHIFT_MASK || this_led & (1<. */ #include "drashna.h" -#include "version.h" -#include "eeprom.h" #include "tap_dances.h" #include "rgb_stuff.h" - -float tone_copy[][2] = SONG(SCROLL_LOCK_ON_SOUND); -float tone_paste[][2] = SONG(SCROLL_LOCK_OFF_SOUND); - -static uint16_t copy_paste_timer; userspace_config_t userspace_config; // Helper Functions @@ -35,8 +28,14 @@ userspace_config_t userspace_config; // the same thing, but with differring text sent. bool send_game_macro(const char *str, keyrecord_t *record, bool override) { if (!record->event.pressed || override) { + uint16_t keycode; + if (userspace_config.is_overwatch) { + keycode = KC_BSPC; + } else { + keycode = KC_ENTER; + } clear_keyboard(); - tap(userspace_config.is_overwatch ? KC_BSPC : KC_ENTER); + tap(keycode); wait_ms(50); send_string_with_delay(str, MACRO_TIMER); wait_ms(50); @@ -46,8 +45,6 @@ bool send_game_macro(const char *str, keyrecord_t *record, bool override) { return false; } -void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; - bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed) { static uint16_t this_timer; if(pressed) { @@ -93,6 +90,9 @@ void matrix_init_keymap(void) {} __attribute__ ((weak)) void startup_keymap(void) {} +__attribute__ ((weak)) +void shutdown_keymap(void) {} + __attribute__ ((weak)) void suspend_power_down_keymap(void) {} @@ -127,6 +127,7 @@ __attribute__ ((weak)) void led_set_keymap(uint8_t usb_led) {} + // Call user matrix init, set default RGB colors and then // call the keymap's init function void matrix_init_user(void) { @@ -158,6 +159,24 @@ void startup_user (void) { startup_keymap(); } +void shutdown_user (void) { +#ifdef RGBLIGHT_ENABLE + rgblight_enable_noeeprom(); + rgblight_mode_noeeprom(1); + rgblight_setrgb_red(); +#endif // RGBLIGHT_ENABLE +#ifdef RGB_MATRIX_ENABLE + rgb_led led; + for (int i = 0; i < DRIVER_LED_TOTAL; i++) { + led = g_rgb_leds[i]; + if (led.matrix_co.raw < 0xFF) { + rgb_matrix_set_color( i, 0xFF, 0x00, 0x00 ); + } + } +#endif //RGB_MATRIX_ENABLE + shutdown_keymap(); +} + void suspend_power_down_user(void) { suspend_power_down_keymap(); @@ -246,20 +265,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; - - case KC_RESET: // Custom RESET code that sets RGBLights to RED - if (!record->event.pressed) { -#ifdef RGBLIGHT_ENABLE - rgblight_enable_noeeprom(); - rgblight_mode_noeeprom(1); - rgblight_setrgb_red(); -#endif // RGBLIGHT_ENABLE - reset_keyboard(); - } - return false; - break; - - case EPRM: // Resets EEPROM if (record->event.pressed) { eeconfig_init(); @@ -333,28 +338,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; - case KC_CCCV: // One key copy/paste - if(record->event.pressed){ - copy_paste_timer = timer_read(); - } else { - if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy - register_code(KC_LCTL); - tap(KC_C); - unregister_code(KC_LCTL); -#ifdef AUDIO_ENABLE - PLAY_SONG(tone_copy); -#endif - } else { // Tap, paste - register_code(KC_LCTL); - tap(KC_V); - unregister_code(KC_LCTL); -#ifdef AUDIO_ENABLE - PLAY_SONG(tone_paste); -#endif - } - } - return false; - break; case CLICKY_TOGGLE: #ifdef AUDIO_CLICKY userspace_config.clicky_enable = clicky_enable; diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 3efef57046..dd0d1c0d7e 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -15,11 +15,13 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef USERSPACE -#define USERSPACE +#pragma once #include "quantum.h" - - +#include "version.h" +#include "eeprom.h" +#ifdef RGB_MATRIX_ENABLE +#include "rgb_matrix.h" +#endif // Define layer names enum userspace_layers { _QWERTY = 0, @@ -53,7 +55,7 @@ extern bool clicky_enable; void rgblight_sethsv_default_helper(uint8_t index); #endif // RGBLIGHT_ENABLE -void tap(uint16_t keycode); +inline void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed); bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t this_timer); @@ -90,7 +92,6 @@ enum userspace_custom_keycodes { KC_C9, KC_GGEZ, KC_MAKE, // Run keyboard's customized make command - KC_RESET, // Resets keyboard, with red underglow KC_RGB_T, // Toggles RGB Layer Indication mode KC_SECRET_1, // test1 KC_SECRET_2, // test2 @@ -123,6 +124,7 @@ enum userspace_custom_keycodes { #define COLEMAK KC_COLEMAK #define WORKMAN KC_WORKMAN +#define KC_RESET RESET #define KC_RST KC_RESET #ifdef SWAP_HANDS_ENABLE @@ -131,6 +133,11 @@ enum userspace_custom_keycodes { #define KC_C1R3 KC_BSPC #endif // SWAP_HANDS_ENABLE +#define BK_LWER LT(_LOWER, KC_BSPC) +#define SP_LWER LT(_LOWER, KC_SPC) +#define DL_RAIS LT(_RAISE, KC_DEL) +#define ET_RAIS LT(_RAISE, KC_ENTER) + // OSM keycodes, to keep things clean and easy to change #define KC_MLSF OSM(MOD_LSFT) #define KC_MRSF OSM(MOD_RSFT) @@ -325,7 +332,7 @@ enum { #define _________________ADJUST_L1_________________ RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG -#define _________________ADJUST_L2_________________ _______, CK_TOGG, AU_ON, AU_OFF, AG_NORM +#define _________________ADJUST_L2_________________ MU_TOG , CK_TOGG, AU_ON, AU_OFF, AG_NORM #define _________________ADJUST_L3_________________ RGB_RMOD,RGB_HUD,RGB_SAD, RGB_VAD, KC_RGB_T #define _________________ADJUST_R1_________________ KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5 @@ -350,4 +357,3 @@ enum { LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) -#endif // !USERSPACE diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index f2a9a47a90..03c55b1323 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -267,7 +267,7 @@ void matrix_init_rgb(void) { case _COLEMAK: rgblight_sethsv_noeeprom_magenta(); break; case _DVORAK: - rgblight_sethsv_noeeprom_green(); break; + rgblight_sethsv_noeeprom_springgreen(); break; case _WORKMAN: rgblight_sethsv_noeeprom_goldenrod(); break; default: @@ -313,7 +313,7 @@ uint32_t layer_state_set_rgb(uint32_t state) { rgblight_mode_noeeprom(5); break; case _LOWER: - rgblight_sethsv_noeeprom_orange(); + rgblight_sethsv_noeeprom_green(); rgblight_mode_noeeprom(5); break; case _ADJUST: @@ -325,7 +325,7 @@ uint32_t layer_state_set_rgb(uint32_t state) { case _COLEMAK: rgblight_sethsv_noeeprom_magenta(); break; case _DVORAK: - rgblight_sethsv_noeeprom_green(); break; + rgblight_sethsv_noeeprom_springgreen(); break; case _WORKMAN: rgblight_sethsv_noeeprom_goldenrod(); break; default: diff --git a/users/drashna/rgb_stuff.h b/users/drashna/rgb_stuff.h index 6426ea266f..50c75c8c3c 100644 --- a/users/drashna/rgb_stuff.h +++ b/users/drashna/rgb_stuff.h @@ -13,4 +13,3 @@ void matrix_init_rgb(void); void matrix_scan_rgb(void); uint32_t layer_state_set_rgb(uint32_t state); - diff --git a/users/drashna/template.c b/users/drashna/template.c index 20dbb96d7f..e6b50c961b 100644 --- a/users/drashna/template.c +++ b/users/drashna/template.c @@ -1,7 +1,5 @@ -#include "drashna.h" -#include "quantum.h" -#include "action.h" -#include "version.h" +#include "template.h" + // Add reconfigurable functions here, for keymap customization // This allows for a global, userspace functions, and continued @@ -10,25 +8,15 @@ __attribute__ ((weak)) void matrix_init_keymap(void) {} -__attribute__ ((weak)) -void matrix_scan_keymap(void) {} - -__attribute__ ((weak)) -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - return true; -} -__attribute__ ((weak)) -uint32_t layer_state_set_keymap (uint32_t state) { - return state; -} -__attribute__ ((weak)) -void led_set_keymap(uint8_t usb_led) {} - // Call user matrix init, then call the keymap's init function void matrix_init_user(void) { matrix_init_keymap(); } + +__attribute__ ((weak)) +void matrix_scan_keymap(void) {} + // No global matrix scan code, so just run keymap's matix // scan function void matrix_scan_user(void) { @@ -36,11 +24,16 @@ void matrix_scan_user(void) { } +__attribute__ ((weak)) +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + return true; +} + // Defines actions tor my global custom keycodes. Defined in drashna.h file // Then runs the _keymap's recod handier if not processed here, // And use "NEWPLACEHOLDER" for new safe range bool process_record_user(uint16_t keycode, keyrecord_t *record) { - + switch (keycode) { case KC_MAKE: if (!record->event.pressed) { @@ -56,12 +49,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case KC_RESET: - if (!record->event.pressed) { - reset_keyboard(); - } - return false; - break; + case EPRM: if (record->event.pressed) { eeconfig_init(); @@ -78,13 +66,66 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return process_record_keymap(keycode, record); } -// Runs state check and changes underglow color and animation -// on layer change, no matter where the change was initiated -// Then runs keymap's layer change check + +__attribute__ ((weak)) +uint32_t layer_state_set_keymap (uint32_t state) { + return state; +} + uint32_t layer_state_set_user (uint32_t state) { return layer_state_set_keymap (state); } + + +__attribute__ ((weak)) +void led_set_keymap(uint8_t usb_led) {} + void led_set_user(uint8_t usb_led) { led_set_keymap(usb_led); } + + + +__attribute__ ((weak)) +void suspend_power_down_keymap(void) {} + +void suspend_power_down_user(void) +{ + suspend_power_down_keymap(); +} + + + +__attribute__ ((weak)) +void suspend_wakeup_init_keymap(void) {} + +void suspend_wakeup_init_user(void) +{ + suspend_wakeup_init_keymap(); + #ifdef KEYBOARD_ergodox_ez + wait_ms(10); + #endif +} + + + +__attribute__ ((weak)) +void startup_keymap(void) {} + +void startup_user (void) { + #ifdef RGBLIGHT_ENABLE + matrix_init_rgb(); + #endif //RGBLIGHT_ENABLE + startup_keymap(); +} + + + +__attribute__ ((weak)) +void shutdown_keymap(void) {} + +void shutdown_user (void) { + shutdown_keymap(); +} + diff --git a/users/drashna/template.h b/users/drashna/template.h index d1251462b2..5b3a93de5f 100644 --- a/users/drashna/template.h +++ b/users/drashna/template.h @@ -2,8 +2,10 @@ #define USERSPACE #include "quantum.h" +#include "version.h" +#include "eeprom.h" -// Define layer names +// Define layer names #define BASE 0 enum custom_keycodes { -- cgit v1.2.3 From 2fcfd5cff7089338385c40a630315939a7a9ebbc Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Thu, 30 Aug 2018 09:34:14 -0700 Subject: Keymap: Wanleg updates (#3794) * various edits and minor additions * updates * updates * updates * lets_split LEDs off instructions * lets_split LEDs off instructions * turn off lets_split LEDs in userspace * one-hand setup for right side --- keyboards/4x4/rules.mk | 2 +- keyboards/5x5/info.json | 0 keyboards/5x5/rules.mk | 2 +- layouts/community/ortho_4x12/wanleg/config.h | 7 +++++ layouts/community/ortho_4x12/wanleg/keymap.c | 2 +- layouts/community/ortho_4x12/wanleg/readme.md | 40 +++++++++++++++++++++++---- layouts/community/ortho_4x12/wanleg/rules.mk | 4 +++ layouts/community/ortho_5x10/layout.json | 5 ++++ layouts/community/ortho_5x10/readme.md | 3 ++ layouts/community/ortho_5x10/wanleg/config.h | 9 ++++++ layouts/community/ortho_5x10/wanleg/keymap.c | 38 +++++++++++++++++++++++++ layouts/community/ortho_5x10/wanleg/rules.mk | 3 ++ users/wanleg/wanleg.c | 21 ++++++++++++++ users/wanleg/wanleg.h | 7 +++-- 14 files changed, 132 insertions(+), 11 deletions(-) delete mode 100644 keyboards/5x5/info.json create mode 100644 layouts/community/ortho_5x10/layout.json create mode 100644 layouts/community/ortho_5x10/readme.md create mode 100644 layouts/community/ortho_5x10/wanleg/config.h create mode 100644 layouts/community/ortho_5x10/wanleg/keymap.c create mode 100644 layouts/community/ortho_5x10/wanleg/rules.mk (limited to 'layouts') diff --git a/keyboards/4x4/rules.mk b/keyboards/4x4/rules.mk index 3ea4476dbe..b8b4bccc42 100644 --- a/keyboards/4x4/rules.mk +++ b/keyboards/4x4/rules.mk @@ -71,4 +71,4 @@ AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) -LAYOUT = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16 +LAYOUTS = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16 diff --git a/keyboards/5x5/info.json b/keyboards/5x5/info.json deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/keyboards/5x5/rules.mk b/keyboards/5x5/rules.mk index b04e4a527c..24e0e020fd 100644 --- a/keyboards/5x5/rules.mk +++ b/keyboards/5x5/rules.mk @@ -71,4 +71,4 @@ AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) -LAYOUT = ortho_5x5 ortho_5x10 ortho_5x15 +LAYOUTS = ortho_5x5 ortho_5x10 ortho_5x15 diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h index 2c6fcc75f0..0d2cc591e3 100644 --- a/layouts/community/ortho_4x12/wanleg/config.h +++ b/layouts/community/ortho_4x12/wanleg/config.h @@ -12,4 +12,11 @@ #define EE_HANDS #endif +// set top left key as bootloader mode escape key on 4x4 48key layout +#if defined(KEYBOARD_4x4) +#define QMK_LED B0 +#define QMK_ESC_OUTPUT C6 // usually COL +#define QMK_ESC_INPUT B2 // usually ROW +#endif + #endif diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c index 8773001d0a..f6030469c0 100644 --- a/layouts/community/ortho_4x12/wanleg/keymap.c +++ b/layouts/community/ortho_4x12/wanleg/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______________Qwerty_Row__0_______________, _______________Qwerty_Row__1_______________, _______________Qwerty_Row__2_______________, - KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL + KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL ), #else [_GK] = LAYOUT_ortho_4x12_wrapper( diff --git a/layouts/community/ortho_4x12/wanleg/readme.md b/layouts/community/ortho_4x12/wanleg/readme.md index 2f89d1de61..1cd41d116d 100644 --- a/layouts/community/ortho_4x12/wanleg/readme.md +++ b/layouts/community/ortho_4x12/wanleg/readme.md @@ -16,9 +16,39 @@ Change `comPORT` to whatever port is used by the Arduino (e.g. `com11` in Window ## Using QMK DFU Once QMK DFU is burned to your ProMicro, you can then flash subsequent hex files with `make lets_split/rev2::dfu dfu=qmk` -The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina` +The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina` ---- -# JJ40 -## To Do -- [ ] Mousekeys not working with Userspace for some reason (jj40 only) \ No newline at end of file +# Let's Split LEDs +In `qmk_firmware/keyboards/lets_split/rev2/rev2.c`, replace contents with +``` +#include "lets_split.h" + + +#ifdef SSD1306OLED +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + led_set_user(usb_led); +} +#endif + +void matrix_init_kb(void) { + + // // green led on + // DDRD |= (1<<5); + // PORTD &= ~(1<<5); + + // // orange led on + // DDRB |= (1<<0); + // PORTB &= ~(1<<0); + + //turn off LEDs on ProMicro + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); + + DDRB &= ~(1<<0); + PORTB &= ~(1<<0); + + matrix_init_user(); +}; +``` +to turn off LEDs diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk index 79929689cb..69f377a015 100644 --- a/layouts/community/ortho_4x12/wanleg/rules.mk +++ b/layouts/community/ortho_4x12/wanleg/rules.mk @@ -3,4 +3,8 @@ SWAP_HANDS_ENABLE = yes ifeq ($(strip $(KEYBOARD)), jj40) SWAP_HANDS_ENABLE = no +endif + +ifeq ($(strip $(KEYBOARD)), 4x4) + SWAP_HANDS_ENABLE = no endif \ No newline at end of file diff --git a/layouts/community/ortho_5x10/layout.json b/layouts/community/ortho_5x10/layout.json new file mode 100644 index 0000000000..00d8479523 --- /dev/null +++ b/layouts/community/ortho_5x10/layout.json @@ -0,0 +1,5 @@ +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""] diff --git a/layouts/community/ortho_5x10/readme.md b/layouts/community/ortho_5x10/readme.md new file mode 100644 index 0000000000..5c94f8eca8 --- /dev/null +++ b/layouts/community/ortho_5x10/readme.md @@ -0,0 +1,3 @@ +# ortho_5x10 + + LAYOUT_ortho_5x10 diff --git a/layouts/community/ortho_5x10/wanleg/config.h b/layouts/community/ortho_5x10/wanleg/config.h new file mode 100644 index 0000000000..2d24f2771b --- /dev/null +++ b/layouts/community/ortho_5x10/wanleg/config.h @@ -0,0 +1,9 @@ +#pragma once + +//QMK DFU settings (ProMicro boards) +// set top left key as bootloader mode escape key on Gherkin +#if defined(KEYBOARD_5x5) +#define QMK_LED B0 +#define QMK_ESC_OUTPUT D7 // usually COL +#define QMK_ESC_INPUT B2 // usually ROW +#endif diff --git a/layouts/community/ortho_5x10/wanleg/keymap.c b/layouts/community/ortho_5x10/wanleg/keymap.c new file mode 100644 index 0000000000..5d06e53ae4 --- /dev/null +++ b/layouts/community/ortho_5x10/wanleg/keymap.c @@ -0,0 +1,38 @@ +#include QMK_KEYBOARD_H +#include "wanleg.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[gGK] = LAYOUT_ortho_5x10_wrapper( + _______________Gherkin_NUM_0_______________, + _______________Gherkin_Row_0_______________, + _______________Gherkin_Row_1_______________, + _______________Gherkin_Row_2_______________, + _______, _______, _______, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, _______, _______ +), + + +[gNUM] = LAYOUT_ortho_5x10_wrapper( + _______________Gherkin_NUM_0_______________, + _______________Gherkin_NUM_0_______________, + _______________Gherkin_NUM_1_______________, + _______________Gherkin_NUM_2_______________, + _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______ +), + +[gDIR] = LAYOUT_ortho_5x10_wrapper( + _______________Gherkin_NUM_0_______________, + _______________Gherkin_DIR_0_______________, + _______________Gherkin_DIR_1_______________, + _______________Gherkin_DIR_2_______________, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +[gETC] = LAYOUT_ortho_5x10_wrapper( + _______________Gherkin_NUM_0_______________, + _______________Gherkin_ETC_0_______________, + _______________Gherkin_ETC_1_______________, + _______________Gherkin_ETC_2_______________, + _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______ +), + +}; diff --git a/layouts/community/ortho_5x10/wanleg/rules.mk b/layouts/community/ortho_5x10/wanleg/rules.mk new file mode 100644 index 0000000000..90841d2abe --- /dev/null +++ b/layouts/community/ortho_5x10/wanleg/rules.mk @@ -0,0 +1,3 @@ +SWAP_HANDS_ENABLE = no + +BOOTLOADER = qmk-dfu \ No newline at end of file diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c index 0175ae2010..931546c153 100644 --- a/users/wanleg/wanleg.c +++ b/users/wanleg/wanleg.c @@ -156,3 +156,24 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return true; } + +/// Turn off LEDs on ProMicros of Let's Split /// +// LEDs only on by default on Let's Split +// Add reconfigurable functions here, for keymap customization +// This allows for a global, userspace functions, and continued +// customization of the keymap. Use _keymap instead of _user +// functions in the keymaps +__attribute__ ((weak)) +void matrix_init_keymap(void) {} + +// Call user matrix init, then call the keymap's init function +void matrix_init_user(void) { +#if defined(KEYBOARD_lets_split_rev2) + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); + + DDRB &= ~(1<<0); + PORTB &= ~(1<<0); +#endif + matrix_init_keymap(); +} \ No newline at end of file diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h index da14dcdf5a..5cec82e605 100644 --- a/users/wanleg/wanleg.h +++ b/users/wanleg/wanleg.h @@ -119,6 +119,7 @@ enum { #define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_ortho_3x10_wrapper(...) LAYOUT_ortho_3x10(__VA_ARGS__) +#define LAYOUT_ortho_5x10_wrapper(...) LAYOUT_ortho_5x10(__VA_ARGS__) #define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) #define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) @@ -204,7 +205,7 @@ enum { #define _______________GherkinLike_1_______________ KC_TAB, _______________Gherkin_Row_1_______________, KC_QUOT #define _______________GherkinLike_2_______________ TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V),LT(ETC, KC_B),KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT) #define _______________GherkinLike_3_______________ KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL -#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL +#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, ONEHAND, KC_RCTL /* Qwerty * .-------------------------------------------------------------------------------------. @@ -257,7 +258,7 @@ enum { /* Gherkin Numbers * .-----------------------------------------------------------------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | DEL | + * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | BACKSP | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -267,7 +268,7 @@ enum { * | | | | | | | ENTER | SHIFT | RGUI | | | | * '-----------------------------------------------------------------------------------------------------------' */ -#define _______________NUMBERS_Row_0_______________ _______, _______________Gherkin_NUM_0_______________, KC_DEL +#define _______________NUMBERS_Row_0_______________ _______, _______________Gherkin_NUM_0_______________, KC_BSPC #define _______________NUMBERS_Row_1_______________ _______, _______________Gherkin_NUM_1_______________, _______ #define _______________NUMBERS_Row_2_______________ _______, _______________Gherkin_NUM_2_______________, _______ #define _______________NUMBERS_Row_3_______________ _______, _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______, _______ -- cgit v1.2.3 From c51b2266a06aeac767c41e6f0f8054db531a156f Mon Sep 17 00:00:00 2001 From: rschardt <42609861+rschardt@users.noreply.github.com> Date: Fri, 31 Aug 2018 17:44:15 +0200 Subject: Keymap: Adding adnw_puq-Layout for Ergodox (#3723) * added adnw_p_u_q-Layout * changed link * 3723 - outsource definitions to config.h * added TAPPING_TERM * changed defines and added colors * removed debug- and action_layer-Header --- layouts/community/ergodox/adnw_p_u_q/config.h | 9 + layouts/community/ergodox/adnw_p_u_q/keymap.c | 335 ++++++++++++++++++++++ layouts/community/ergodox/adnw_p_u_q/readme.md | 17 ++ layouts/community/ergodox/adnw_p_u_q/visualizer.c | 34 +++ 4 files changed, 395 insertions(+) create mode 100644 layouts/community/ergodox/adnw_p_u_q/config.h create mode 100644 layouts/community/ergodox/adnw_p_u_q/keymap.c create mode 100644 layouts/community/ergodox/adnw_p_u_q/readme.md create mode 100644 layouts/community/ergodox/adnw_p_u_q/visualizer.c (limited to 'layouts') diff --git a/layouts/community/ergodox/adnw_p_u_q/config.h b/layouts/community/ergodox/adnw_p_u_q/config.h new file mode 100644 index 0000000000..b1170aa78c --- /dev/null +++ b/layouts/community/ergodox/adnw_p_u_q/config.h @@ -0,0 +1,9 @@ +#pragma once + +// This is the ideal value for me but find your own +#undef TAPPING_TERM +#define TAPPING_TERM 145 + +// more options here: https://docs.qmk.fm/config_options.html +#define FORCE_NKRO +#define PERMISSIVE_HOLD // tab/hold-Keys should work better with that diff --git a/layouts/community/ergodox/adnw_p_u_q/keymap.c b/layouts/community/ergodox/adnw_p_u_q/keymap.c new file mode 100644 index 0000000000..a90fcbc2c7 --- /dev/null +++ b/layouts/community/ergodox/adnw_p_u_q/keymap.c @@ -0,0 +1,335 @@ +#include QMK_KEYBOARD_H +#include "keymap_german.h" + + +#define BASE 0 // default layer / VIM +#define ARW 1 // arrow layer / Terminal +#define DIAK 2 // diakritika layer +#define BRACK 3 // brackets layer +#define SYMBOLS 4 // symbols +#define MEDIA 5 // media keys / Mouse-Navigation + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer / VIM + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | Media | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | P | U | Dia-L| , | Q | | | | V | C | L | M | B | | + * |--------+------+------+------+------+------| G | | gg |------+------+------+------+------+--------| + * | Symbols| H | I | E | A | O |------| |------| D | T | R | N | S | ARW | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LShift | K | Y | . | ' | X |str-D | |str-U | J | G | Z | W | F | RShift | + * * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Ctrl | Alt | | | | | H | J | K | L | Ctrl | + * `----------------------------------' `----------------------------------' + * LShift is Tab on Click + * + * ,-------------. ,-------------. + * | ^ | / | | ? | $ | + * ,------|------|------| |------+--------+------. + * | | |str+a | |str+c | | | + * | Brack| Space|------| |------| Enter |BSpace| + * | -Lay |/shift| Tab/ | | | | | + * | | | GUI | | ESC | | | + * `--------------------' `----------------------' + * GUI is one shot + * str + a is for tmux etc. + * str + c is for stopping programs + */ +[BASE] = LAYOUT_ergodox( // layer 0 : default + // left hand + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, + TG(SYMBOLS), DE_P, DE_U, OSL(DIAK), DE_COMM, DE_Q, LSFT(DE_G), + OSL(SYMBOLS), DE_H, DE_I, DE_E, DE_A, DE_O, + SFT_T(KC_TAB), DE_K, DE_Y, DE_DOT, DE_QUOT, DE_X, LCTL(DE_D), + KC_LCTRL, KC_LALT, KC_NO, KC_NO, KC_NO, + + + // left hand thumb-cluster + DE_CIRC, DE_SLSH, + LCTL(DE_A), + OSL(BRACK), SFT_T(KC_SPACE), GUI_T(KC_TAB), + + + // right hand + KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, TG(MEDIA), + DE_G, DE_V, DE_C, DE_L, DE_M, DE_B, KC_NO, + DE_D, DE_T, DE_R, DE_N, DE_S, TG(ARW), + LCTL(DE_U), DE_J, DE_G, DE_Z, DE_W, DE_F, KC_RSFT, + KC_H, KC_J, KC_K, KC_L, KC_RCTRL, + + // right thumb-cluster + DE_QST, DE_DLR, + LCTL(DE_C), + KC_ESCAPE, KC_ENTER, KC_BSPACE +), + + +/* Keymap 1: Arrow Layer / Terminal + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |P-Down| |P-Up | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Left | Bot | Top | Right| | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Home | | | | End | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Arrows +[ARW] = LAYOUT_ergodox( + 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_PGDOWN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_HOME, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + 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_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, + KC_TRNS, KC_END, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +/* Keymap 2: Diakritika Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Ü | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | Ä | Ö |------| |------| | | | | ß | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Diakritika +[DIAK] = LAYOUT_ergodox( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, DE_UE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_AE, DE_OE, + 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, + + // right hand + 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, DE_SS, 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 +), + + +/* Keymap 3: Brackets Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | ( | { | [ | |------| |------| | ] | } | ) | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// BRACK +[BRACK] = LAYOUT_ergodox( + 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, DE_LPRN, DE_LCBR, DE_LBRC, 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, + + // right hand + 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, DE_RBRC, DE_RCBR, DE_RPRN, 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 +), + + +/* Keymap 4: Symbol Layer + * + * + * Original: + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ² | ° | ~ | @ | ! | | | | ? | & | § | " | ³ | | + * |--------+------+------+------+------+------| ( | | ) |------+------+------+------+------+--------| + * | | ´ | ' | : | ^ | < |------| |------| > | $ | ; | | | ` | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | € | + | = | * | / | { | | } | \ | % | # | - | _ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ +// SYMBOLS +[SYMBOLS] = LAYOUT_ergodox( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, //DE_LBRC, + KC_TRNS,DE_SQ2, DE_RING, DE_TILD, DE_AT, DE_EXLM, DE_LPRN, + KC_TRNS,DE_ACUT,DE_QUOT, DE_COLN, DE_CIRC, DE_LESS, + KC_TRNS,DE_EURO,DE_PLUS, DE_EQL, DE_ASTR, DE_SLSH, DE_LCBR, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + + // right hand + //DE_RBRC, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + DE_RPRN, DE_QST, DE_AMPR, DE_PARA, DE_DQOT, DE_SQ3, KC_TRNS, + DE_MORE, DE_DLR, DE_SCLN, DE_PIPE, DE_GRV, KC_TRNS, + DE_RCBR, DE_BSLS, DE_PERC, DE_HASH, DE_MINS, DE_UNDS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 5: Numbers + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | Num | / | * | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | 7 | 8 | 9 | + | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | 4 | 5 | 6 | + | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | 1 | 2 | 3 | Enter | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | , | | | Enter| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' +// NUMBERS +[NUMBERS] = LAYOUT_ergodox( + 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, KC_TRNS, + + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_7, KC_8, KC_9, KC_TRNS, + KC_TRNS, KC_TRNS, KC_4, KC_5, KC_8, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_1, KC_2, KC_3, KC_TRNS, + KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +*/ + +/* Keymap 6: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | Sleep| | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Wake | | | | |------| |------| |MsLeft|MsDown| MsUp |MsRght| | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | Mute| VolDn| VolUp| | Play| Prev | Next | Stop | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | Lclk|------| |------|Rclk | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MEDIA] = LAYOUT_ergodox( + KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_SLEP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_WAKE, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_BTN1, KC_TRNS, + // right hand + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_MPLY, KC_MPRV, KC_MNXT, KC_MSTP, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_BTN2, KC_TRNS +), +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user_keyboard(void) { + ergodox_board_led_on(); + ergodox_led_all_on(); +} diff --git a/layouts/community/ergodox/adnw_p_u_q/readme.md b/layouts/community/ergodox/adnw_p_u_q/readme.md new file mode 100644 index 0000000000..dc914a0aa2 --- /dev/null +++ b/layouts/community/ergodox/adnw_p_u_q/readme.md @@ -0,0 +1,17 @@ +This is a fork of the adnw_k_o_y-Layout + +Features: +- Diakritika-Layer for ADNW-PUQ-Layout +- all basic-symbols of the german-layout can be found in the Symbol- and Diakritika-Layer +- Symbol-Layer: Symbols are mirrored -- left = < and right = > +- Basic-Layer-Keys which always be present in any Layer and allow the movement between layers +- HJKL-Keys and Arrow-Keys can be switched, necessary for working with a terminal and vim +- Number-Layer for Numpad-Emulation +- Brackets-Layer for easier programming +- Media-Layer for Mouse-Navigation + +Notes: +- adnw is a layout optimised for usage with german and english language +- PUQ is a variant of adnw: http://www.adnw.de/index.php?n=Main.OptimierungF%C3%BCrDieGeradeTastaturMitDaumen-Shift +- This implementation is optimised for my workflow with vim/tmux/xmonad and ergodox +- The OS must use the de_DE layout diff --git a/layouts/community/ergodox/adnw_p_u_q/visualizer.c b/layouts/community/ergodox/adnw_p_u_q/visualizer.c new file mode 100644 index 0000000000..9a4d485387 --- /dev/null +++ b/layouts/community/ergodox/adnw_p_u_q/visualizer.c @@ -0,0 +1,34 @@ +/* +Note: this is a modified copy of ../default/visualizer.c, originally licensed GPL. +*/ + +#include "simple_visualizer.h" + +// This function should be implemented by the keymap visualizer +// Don't change anything else than state->target_lcd_color and state->layer_text as that's the only thing +// that the simple_visualizer assumes that you are updating +// Also make sure that the buffer passed to state->layer_text remains valid until the previous animation is +// stopped. This can be done by either double buffering it or by using constant strings +static void get_visualizer_layer_and_color(visualizer_state_t* state) { + + if (state->status.layer & 0x20) { + state->target_lcd_color = LCD_COLOR(127, 0xFF, 0xFF); + state->layer_text = "Mouse"; + } else if (state->status.layer & 0x10) { + state->target_lcd_color = LCD_COLOR(85, 0xFF, 0xFF); + state->layer_text = "Symbol"; + } else if (state->status.layer & 0x8) { + state->target_lcd_color = LCD_COLOR(64, 0xFF, 0xFF); + state->layer_text = "Brackets"; + } else if (state->status.layer & 0x4) { + state->target_lcd_color = LCD_COLOR(42, 0xFF, 0xFF); + state->layer_text = "Diak"; + } else if (state->status.layer & 0x2) { + state->target_lcd_color = LCD_COLOR(21, 0xFF, 0xFF); + state->layer_text = "Terminal"; + } else { + state->target_lcd_color = LCD_COLOR(192, 0xFF, 0xFF); + state->layer_text = "Vim"; + } +} + -- cgit v1.2.3 From fb79015049ebd1309cd4f69a7584db614f50d1db Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Fri, 31 Aug 2018 14:49:18 -0700 Subject: Keymap: Merlin Learns to QMK (#3820) * Fix up my keymaps to use more QMK features * update 60_ansi readme * add the start of my userspace * begin to use my new userspace * use more of my userspace * spread userspace love to my clueboard * spread userspace love to 75 layout * add a fairly vanilla readme * put the FNX into a userspace incase I ever want to use it for something else * respond to drashna's code review comments --- layouts/community/60_ansi/mechmerlin-ansi/keymap.c | 38 ++++------------------ .../community/60_ansi/mechmerlin-ansi/readme.md | 4 +-- layouts/community/60_ansi/mechmerlin-ansi/rules.mk | 1 + .../mechmerlin-split/keymap.c | 17 ++++------ .../mechmerlin-split/rules.mk | 1 + layouts/community/66_ansi/mechmerlin/keymap.c | 15 ++------- layouts/community/66_ansi/mechmerlin/rules.mk | 1 + .../community/75_ansi/mechmerlin-75_ansi/keymap.c | 12 +++---- .../community/75_ansi/mechmerlin-75_ansi/rules.mk | 1 + users/mechmerlin/mechmerlin.c | 20 ++++++++++++ users/mechmerlin/mechmerlin.h | 17 ++++++++++ users/mechmerlin/readme.md | 3 ++ users/mechmerlin/rules.mk | 1 + 13 files changed, 68 insertions(+), 63 deletions(-) create mode 100644 layouts/community/60_ansi/mechmerlin-ansi/rules.mk create mode 100644 layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/rules.mk create mode 100644 layouts/community/66_ansi/mechmerlin/rules.mk create mode 100644 layouts/community/75_ansi/mechmerlin-75_ansi/rules.mk create mode 100644 users/mechmerlin/mechmerlin.c create mode 100644 users/mechmerlin/mechmerlin.h create mode 100644 users/mechmerlin/readme.md create mode 100644 users/mechmerlin/rules.mk (limited to 'layouts') diff --git a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c index 47316915ca..e48fddea46 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c +++ b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c @@ -1,29 +1,22 @@ #include QMK_KEYBOARD_H - -#define BASE 0 -#define FN 1 -#define ARROWS 2 - -enum keycodes { - KC_FNX, // Hold for FN layer, tap to toggle ARROWS layer. -}; +#include "mechmerlin.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[BASE] = LAYOUT_60_ansi( +[_BL] = LAYOUT_60_ansi( KC_GESC, 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_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_BSLASH, \ - 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, \ + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 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_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_FNX, KC_RALT, KC_RGUI, KC_RCTL), -[FN] = LAYOUT_60_ansi( +[_FL] = LAYOUT_60_ansi( KC_GRV, 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_DEL, \ RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ - KC_CAPS, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), -[ARROWS] = LAYOUT_60_ansi( +[_AL] = LAYOUT_60_ansi( 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ @@ -31,22 +24,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - static uint16_t fnx_layer_timer; - - switch (keycode){ - case KC_FNX: - if(record->event.pressed){ - fnx_layer_timer = timer_read(); - layer_on(FN); - } else { - layer_off(FN); - if (timer_elapsed(fnx_layer_timer) < 150) { - layer_invert(ARROWS); - } - } - return false; - } - return true; -} \ No newline at end of file diff --git a/layouts/community/60_ansi/mechmerlin-ansi/readme.md b/layouts/community/60_ansi/mechmerlin-ansi/readme.md index c81a126d5d..1c40def2a2 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/readme.md +++ b/layouts/community/60_ansi/mechmerlin-ansi/readme.md @@ -10,8 +10,8 @@ It is used on his [NPKC KC60](https://github.com/qmk/qmk_firmware/tree/master/keyboards/kc60) ## Keymap Notes -- Highly influenced by the KBP V60 and WKL B.Face standard layouts -- Arrow toggle switch is FN + Space +- Arrow toggle switch is tapping the `FN` key once. +- `Caps Lock` can be held to act as a `Left Control` ### Build To build the firmware file associated with this keymap, simply run `make your_keyboard:mechmerlin-ansi`. diff --git a/layouts/community/60_ansi/mechmerlin-ansi/rules.mk b/layouts/community/60_ansi/mechmerlin-ansi/rules.mk new file mode 100644 index 0000000000..e2ce3d7731 --- /dev/null +++ b/layouts/community/60_ansi/mechmerlin-ansi/rules.mk @@ -0,0 +1 @@ +USER_NAME := mechmerlin \ No newline at end of file diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c index 4c6458c9b4..5ec005162f 100644 --- a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c +++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c @@ -1,25 +1,22 @@ #include QMK_KEYBOARD_H - -#define BASE 0 -#define FN 1 -#define ARROWS 2 +#include "mechmerlin.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[BASE] = LAYOUT_60_ansi_split_bs_rshift( +[_BL] = LAYOUT_60_ansi_split_bs_rshift( KC_GESC, 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_NO, KC_BSPC, \ 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_BSLASH, \ - 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, \ + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(2), \ KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL), -[FN] = LAYOUT_60_ansi_split_bs_rshift( - KC_GRV, 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_NO, KC_DEL, \ +[_FL] = LAYOUT_60_ansi_split_bs_rshift( + KC_GRV, 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_NO, KC_DEL, \ RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ - KC_CAPS, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), -[ARROWS] = LAYOUT_60_ansi_split_bs_rshift( +[_AL] = LAYOUT_60_ansi_split_bs_rshift( 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_NO, 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, \ diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/rules.mk b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/rules.mk new file mode 100644 index 0000000000..e2ce3d7731 --- /dev/null +++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/rules.mk @@ -0,0 +1 @@ +USER_NAME := mechmerlin \ No newline at end of file diff --git a/layouts/community/66_ansi/mechmerlin/keymap.c b/layouts/community/66_ansi/mechmerlin/keymap.c index b8142f9674..ea2e923b1c 100644 --- a/layouts/community/66_ansi/mechmerlin/keymap.c +++ b/layouts/community/66_ansi/mechmerlin/keymap.c @@ -1,32 +1,23 @@ #include QMK_KEYBOARD_H +#include "mechmerlin.h" -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -#define _BL 0 -#define _FL 1 #define _CL 2 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap _BL: Base Layer (Default Layer) - */ [_BL] = LAYOUT_66_ansi( KC_GESC,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_PGUP, \ 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_PGDN, \ - 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, \ + KC_CTCP,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT, \ 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, \ KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, MO(_FL),KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT), - /* Keymap _FL: Function Layer - */ [_FL] = LAYOUT_66_ansi( KC_GRV, 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_DEL, KC_VOLU, \ _______,_______,_______,_______,_______,_______,_______,_______,_______,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_MUTE, KC_VOLD, \ - KC_CAPS,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ + _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ _______, _______,_______,_______,_______,_______,_______,KC_MUTE,KC_VOLU,KC_VOLD,_______, _______, KC_PGUP, \ _______,_______,_______, _______, _______,_______,_______,KC_HOME,KC_PGDN,KC_END), - /* Keymap _CL: Control layer - */ [_CL] = LAYOUT_66_ansi( BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, _______, RGB_VAI, \ RGB_TOG,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, \ diff --git a/layouts/community/66_ansi/mechmerlin/rules.mk b/layouts/community/66_ansi/mechmerlin/rules.mk new file mode 100644 index 0000000000..e2ce3d7731 --- /dev/null +++ b/layouts/community/66_ansi/mechmerlin/rules.mk @@ -0,0 +1 @@ +USER_NAME := mechmerlin \ No newline at end of file diff --git a/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c index 70506da52a..ec3286b097 100644 --- a/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c +++ b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c @@ -1,23 +1,21 @@ #include QMK_KEYBOARD_H - -#define BASE 0 -#define FN 1 +#include "mechmerlin.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[BASE] = LAYOUT_75_ansi(\ +[_BL] = LAYOUT_75_ansi(\ 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_PAUS, KC_DEL, 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_HOME, 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_PGUP, - 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, KC_PGDN, + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, 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, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), -[FN] = LAYOUT_75_ansi(\ +[_FL] = LAYOUT_75_ansi(\ KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_CAPS, 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, 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) }; \ No newline at end of file diff --git a/layouts/community/75_ansi/mechmerlin-75_ansi/rules.mk b/layouts/community/75_ansi/mechmerlin-75_ansi/rules.mk new file mode 100644 index 0000000000..e2ce3d7731 --- /dev/null +++ b/layouts/community/75_ansi/mechmerlin-75_ansi/rules.mk @@ -0,0 +1 @@ +USER_NAME := mechmerlin \ No newline at end of file diff --git a/users/mechmerlin/mechmerlin.c b/users/mechmerlin/mechmerlin.c new file mode 100644 index 0000000000..8d6cecd18b --- /dev/null +++ b/users/mechmerlin/mechmerlin.c @@ -0,0 +1,20 @@ +#include "mechmerlin.h" + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + static uint16_t fnx_layer_timer; + + switch (keycode){ + case KC_FNX: + if(record->event.pressed){ + fnx_layer_timer = timer_read(); + layer_on(_FL); + } else { + layer_off(_FL); + if (timer_elapsed(fnx_layer_timer) < 150) { + layer_invert(_AL); + } + } + return false; + } + return true; +} \ No newline at end of file diff --git a/users/mechmerlin/mechmerlin.h b/users/mechmerlin/mechmerlin.h new file mode 100644 index 0000000000..c140ac70c9 --- /dev/null +++ b/users/mechmerlin/mechmerlin.h @@ -0,0 +1,17 @@ +#pragma once + +#include "quantum.h" + +enum userspace_layers { + _BL = 0, // Base Layer + _FL, // Function Layer + _AL // Arrow Layer +}; + +// Enum of custom keycodes defined in process_record_user +enum keycodes { + KC_FNX, // Hold for FN layer, tap to toggle ARROWS layer. +}; + +// Custom #defined keycodes +#define KC_CTCP MT(KC_LCTL, KC_CAPS) diff --git a/users/mechmerlin/readme.md b/users/mechmerlin/readme.md new file mode 100644 index 0000000000..6a76dd2a9d --- /dev/null +++ b/users/mechmerlin/readme.md @@ -0,0 +1,3 @@ +# MechMerlin's Userspace + +This is a collection of my most commonly used QMK functions diff --git a/users/mechmerlin/rules.mk b/users/mechmerlin/rules.mk new file mode 100644 index 0000000000..70c20ec71e --- /dev/null +++ b/users/mechmerlin/rules.mk @@ -0,0 +1 @@ +SRC += mechmerlin.c \ No newline at end of file -- cgit v1.2.3 From 04bea9ef742827f2784401bd976b53fc29158d3d Mon Sep 17 00:00:00 2001 From: leico Date: Mon, 3 Sep 2018 01:46:52 +0900 Subject: Keymap: share my ortho_4x12 layout symbolic (#3833) * add ortho_4x12 symbolic layout * delete trash * modify little bit * fixed doesn't requires replace `#ifndef ... #endif` to `#pragma ones` in config.h delete `QMK_KEYBOARD_CONFIG_H` in config.h delete `action_layer.h` and `eeconfig.h` in keymap.c --- layouts/community/ortho_4x12/symbolic/README.md | 70 ++++++++++ layouts/community/ortho_4x12/symbolic/config.h | 47 +++++++ layouts/community/ortho_4x12/symbolic/keymap.c | 171 ++++++++++++++++++++++++ 3 files changed, 288 insertions(+) create mode 100644 layouts/community/ortho_4x12/symbolic/README.md create mode 100644 layouts/community/ortho_4x12/symbolic/config.h create mode 100644 layouts/community/ortho_4x12/symbolic/keymap.c (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/symbolic/README.md b/layouts/community/ortho_4x12/symbolic/README.md new file mode 100644 index 0000000000..37fbcd56a4 --- /dev/null +++ b/layouts/community/ortho_4x12/symbolic/README.md @@ -0,0 +1,70 @@ +# Symbolic ortho 4x12 layout + +## Features + +### QWERTY based + +![QWERTY layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/QWERTY.png) + +* Default keymap +* QWERTY layout +* Hold and tap + * `Shift` and `Space` + * `Left Ctrl` and `Tab` +* Symmetric Modifiers + * `Shift` + * `Raise Layer` + * `Lower Layer` + * `GUI` + * `Reset` + +### symbol charactor layer + +![Raise layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Raise.png) + +* Raise Layer +* assigned symbolic(punctuation) characters +* as could as possible, related neighbor keys + * brackets + * quotes + * operators + * slashes +* related default layer keys + * colons + * exclamation and question +* thus above features, easy learn keymapping +* transparent all modifiers + +### numbers and allows layer + +![Lower layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Lower.png) + +* Lower Layer +* entrust vim style arrows +* also numkeys +* additional, computer volume keys +* transparent all modifiers + +### Numpads and F key layer + +![Neutral layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Neutral.png) + +* visibled when Raise and Lower layer visibled +* F keys assigned left hand side +* Numpads assigned right hand side + * for that reason, override `RGUI` key +* transparent mostly modifiers + + +### Goals + +* release a right little finger from symbols +* entrust more symbols for a left hand +* simple, minimal, easy learn +* as soon as possible, don't disable any shortcuts + + +### suggestions or find issues + +[post issues for my fork](https://github.com/leico/qmk_firmware/issues) + diff --git a/layouts/community/ortho_4x12/symbolic/config.h b/layouts/community/ortho_4x12/symbolic/config.h new file mode 100644 index 0000000000..702c9226c6 --- /dev/null +++ b/layouts/community/ortho_4x12/symbolic/config.h @@ -0,0 +1,47 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +// prevent stuck modifiers +#define PREVENT_STUCK_MODIFIERS + + +// hold & tapping delay setting +#define TAPPING_TERM 100 + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +//#define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS + +#ifdef AUDIO_ENABLE + #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ + SONG(DVORAK_SOUND), \ + SONG(COLEMAK_SOUND) \ + } +#endif + diff --git a/layouts/community/ortho_4x12/symbolic/keymap.c b/layouts/community/ortho_4x12/symbolic/keymap.c new file mode 100644 index 0000000000..d4c0892368 --- /dev/null +++ b/layouts/community/ortho_4x12/symbolic/keymap.c @@ -0,0 +1,171 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _QWERTY 0 +#define _LOWER 1 +#define _RAISE 2 +#define _NEUTRAL 3 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + L_LOWER, + R_LOWER, + L_RAISE, + R_RAISE +}; + + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,------------------------------------------------------------------------------------. + * | | | | | | || | | | | | | + * | Esc | Q | W | E | R | T || Y | U | I | O | P | Bksp | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * |LCTL_T| | | | | || | | | | | | + * | Tab | A | S | D | F | G || H | J | K | L | ; |Enter | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | | || | | | | | | + * | | Z | X | C | V | B || N | M | , | . | ! | | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | |LSFT_T||RSFT_T| | | | | | + * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset | + * `------------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_ortho_4x12( \ + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ + LCTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \ + XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_EXLM, XXXXXXX, \ + RESET, KC_LALT, KC_LGUI, L_LOWER, L_RAISE, LSFT_T( KC_SPC ), RSFT_T( KC_SPC ), R_RAISE, R_LOWER, KC_RGUI, KC_DEL, RESET \ +), + +/* Raise + * ,------------------------------------------------------------------------------------. + * | | | | | | || | | | | | | + * | Esc | | & | { | } | % || \ | [ | ] | # | | Bksp | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * |LCTL_T| | | | | || | | | | | | + * | Tab | ~ | | | ( | ) | * || / | < | > | ' | : |Enter | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | | || | | | | | | + * | | ` | ^ | @ | $ | + || - | = | _ | " | ? | | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | |LSFT_T||RSFT_T| | | | | | + * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset | + * `------------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_4x12( \ + _______, XXXXXXX, KC_AMPR, KC_LCBR, KC_RCBR, KC_PERC, KC_BSLS, KC_LBRC, KC_RBRC, KC_HASH, XXXXXXX, _______, \ + _______, KC_TILD, KC_PIPE, KC_LPRN, KC_RPRN, KC_ASTR, KC_SLSH, KC_LABK, KC_RABK, KC_QUOT, KC_COLN, _______, \ + _______, KC_GRV, KC_CIRC, KC_AT, KC_DLR, KC_PLUS, KC_MINS, KC_EQL, KC_UNDS, KC_DQUO, KC_QUES, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ +), +/* Lower + * ,------------------------------------------------------------------------------------. + * | | | | | | || | | | | | | + * | Esc | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * |LCTL_T| | | | | || | | | | | | + * | Tab | |VolDn |VolUp | Mute | || Left | Down | Up |Right | |Enter | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | | || | | | | | | + * | | | | | | || | | | | | | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | |LSFT_T||RSFT_T| | | | | | + * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset | + * `------------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_4x12( \ + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \ + _______, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, _______, \ + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ +), + +/* Neutral + * ,------------------------------------------------------------------------------------. + * | | | | | | || | | | | | | + * | Esc | F1 | F2 | F3 | F4 | || + | - | 1 | 2 | 3 | Bksp | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * |LCTL_T| | | | | || | | | | | | + * | Tab | F5 | F6 | F7 | F8 | || * | / | 4 | 5 | 6 |Enter | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | | || | | | | | | + * | | F9 | F10 | F11 | F12 | || . | , | 7 | 8 | 9 | | + * |------+------+------+------+------+------++------+------+------+------+------+------| + * | | | | | |LSFT_T||RSFT_T| | | | | | + * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| 0 | Del |Reset | + * `------------------------------------------------------------------------------------' + */ +[_NEUTRAL] = LAYOUT_ortho_4x12( \ + _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, KC_PPLS, KC_PMNS, KC_P1, KC_P2, KC_P3, _______, \ + _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_PAST, KC_PSLS, KC_P4, KC_P5, KC_P6, _______, \ + _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_PDOT, KC_COMM, KC_P7, KC_P8, KC_P9, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, _______, _______ \ +) + + +}; + + +void DualKeyPressed ( bool brother_state, uint8_t target ){ + + if( brother_state ) return; + + layer_on( target ); + return; +} + +void DualKeyReleased ( bool brother_state, uint8_t target1 ){ + + if( brother_state ) return ; + + layer_off( target1 ); + return ; +} + +bool LayerSwitch ( keyrecord_t *record, bool *key_state, bool brother, uint8_t layer ){ + if ( record -> event.pressed ) { + *key_state = true; + DualKeyPressed( brother, layer ); + } + else { + *key_state = false; + DualKeyReleased( brother, layer ); + } + + update_tri_layer(_LOWER, _RAISE, _NEUTRAL ); + return false; + + +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + static bool l_lower = false; + static bool r_lower = false; + + static bool l_raise = false; + static bool r_raise = false; + + switch (keycode) { + + + case L_LOWER : return LayerSwitch( record, &l_lower, r_lower, _LOWER ); break; + case R_LOWER : return LayerSwitch( record, &r_lower, l_lower, _LOWER ); break; + case L_RAISE : return LayerSwitch( record, &l_raise, r_raise, _RAISE ); break; + case R_RAISE : return LayerSwitch( record, &r_raise, l_raise, _RAISE ); break; + + } + return true; +} -- cgit v1.2.3 From 17fffc3a51f0a1abb1576de2badb67303165e0ae Mon Sep 17 00:00:00 2001 From: Josh Date: Sun, 9 Sep 2018 22:09:53 -0400 Subject: Keymap: Initial PR for contributing my ortho_4x12 community layout. (#3853) * Initial keymap with no BL and with Ctrl and Enter on the home row. * Removing alternative layouts (Dvorak etc.). * Putting Enter back in the default position, moving Esc next to Alt. * Replacing grave with del. * Adding a numpad layer. * Adding operators and a triple zero to the numpad layer. * Swapping Alt and Win. * Updating to use new audio macros. * Removing numpad layer and changing left space to MOD_HYPR on hold. * Adding configurable 'clicky keys' feature. * Cleaning up clicky conditional logic. * Turning on backlight support and mapping backlight keys in the adjust layer. * Enabling backlight functionality. * Adding Adventure time theme song; increasing fake clicky randomness. * Cleaning up layer constants in my Planck keymap. * Initial implementation of porting my Planck keymap to a Let's Split. * Updating keyboards/planck/keymaps/josh to use declarations from new work on master. * Updating keyboards/lets_split/keymaps/josh to use declarations from new work on master. * Work in progress migrating Planck and Let's Split keymaps to a community keymap. Everything is working but Planck backlight. * Fixing rules.mk to enable backlight & audio correctly on Planck PCBs. Cleanup. * Tweaks to get Let's Split working with my community layout. * Switching to use EE_HANDS in my Let's Split build. * Adding vitamins_included makefile options to my ortho_4x12 layout. * Fixing planck/rev6 build -- backlight must be disabled. * Removing I2C from my rules.mk and addressing it in the config.h instead. * Moving community layout directory to my reddit username. :D * Adding a test encoder function; making lower left a media key and moving esc to a mod tap on ctrl. * Commenting out -flto in the compiler flags for the vitamins_included keyboard (couldn't figure out how else to turn it off). * Changing rotary encoder to control media volume. * Changing backlight and clicky defaults to max brightness no breathing and a low pitch click. * Initial implementation of backlight flickering. * Updating my README.md * Adding LINK_TIME_OPTIMIZATION to the vitamins_included/rev1 as a rules.mk feature. * Reverting keyboards/vitamins_included/rules.mk to master and using 'filter_out' in my layout instead. * Adding tested boards to the readme for my layout. * Per drashna, removing redundant clicky implementation and cleaning up headers. * Removing an extra include from my keymap. --- layouts/community/ortho_4x12/mindsound/config.h | 33 ++++ layouts/community/ortho_4x12/mindsound/flicker.h | 5 + layouts/community/ortho_4x12/mindsound/keymap.c | 230 +++++++++++++++++++++++ layouts/community/ortho_4x12/mindsound/readme.md | 19 ++ layouts/community/ortho_4x12/mindsound/rules.mk | 26 +++ 5 files changed, 313 insertions(+) create mode 100644 layouts/community/ortho_4x12/mindsound/config.h create mode 100644 layouts/community/ortho_4x12/mindsound/flicker.h create mode 100644 layouts/community/ortho_4x12/mindsound/keymap.c create mode 100644 layouts/community/ortho_4x12/mindsound/readme.md create mode 100644 layouts/community/ortho_4x12/mindsound/rules.mk (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/mindsound/config.h b/layouts/community/ortho_4x12/mindsound/config.h new file mode 100644 index 0000000000..76e7da2049 --- /dev/null +++ b/layouts/community/ortho_4x12/mindsound/config.h @@ -0,0 +1,33 @@ +#pragma once + +#define ADVENTURE_TIME \ + H__NOTE(_F5), \ + Q__NOTE(_F5), \ + H__NOTE(_F5), \ + H__NOTE(_G5), \ + H__NOTE(_E5), \ + H__NOTE(_E5), \ + H__NOTE(_D5), \ + H__NOTE(_C5), \ + HD_NOTE(_C6), + +#ifdef AUDIO_ENABLE + #define STARTUP_SONG SONG(ADVENTURE_TIME) + #define AUDIO_CLICKY + #define AUDIO_CLICKY_ON + #define AUDIO_CLICKY_FREQ_MAX 2500.0f + #define AUDIO_CLICKY_FREQ_RANDOMNESS 0.2f + #define AUDIO_CLICKY_FREQ_DEFAULT 110.0f +#endif + +// for some reason the LSvi rev1 disables action tapping... +#ifdef NO_ACTION_TAPPING + #undef NO_ACTION_TAPPING +#endif + +#undef BACKLIGHT_LEVELS +#define BACKLIGHT_LEVELS 15 + +// let's split configuration: +#define USE_I2C +#define EE_HANDS diff --git a/layouts/community/ortho_4x12/mindsound/flicker.h b/layouts/community/ortho_4x12/mindsound/flicker.h new file mode 100644 index 0000000000..a982f19aed --- /dev/null +++ b/layouts/community/ortho_4x12/mindsound/flicker.h @@ -0,0 +1,5 @@ +#pragma once + +void flicker_toggle(void); +void flicker_keydown(void); +void flicker_keyup(void); diff --git a/layouts/community/ortho_4x12/mindsound/keymap.c b/layouts/community/ortho_4x12/mindsound/keymap.c new file mode 100644 index 0000000000..2c9ceaf690 --- /dev/null +++ b/layouts/community/ortho_4x12/mindsound/keymap.c @@ -0,0 +1,230 @@ +#include QMK_KEYBOARD_H + +#ifdef BACKLIGHT_ENABLE +#include "flicker.h" +#endif + +extern keymap_config_t keymap_config; + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum planck_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +// keycodes custom to this keymap: +enum planck_keycodes { + QWERTY = SAFE_RANGE, + BL_FLICKER +}; + +// flicker state: +#ifdef BACKLIGHT_ENABLE +bool flicker_enable = true; +bool flicker_isdown = false; +const uint8_t flicker_min_levels = 2; +const uint8_t flicker_max_levels = 7; +uint8_t flicker_restore_level = 0; +#endif + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +// mod tap definitions: +#define CTRL_ESC MT(MOD_LCTL, KC_ESC) +#define HYPR_SPC MT(MOD_HYPR, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | Del | GUI | Alt |Lower |HyprSp|Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_ortho_4x12( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ + CTRL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \ + KC_MPLY, KC_DEL, KC_LGUI, KC_LALT, LOWER, HYPR_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ +), + + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_4x12( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \ + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ +), + + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_4x12( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ +), + + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|Audoff|AGnorm|AGswap| | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | |Clicky|ClkDn |ClkUp |ClkRst| + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_ortho_4x12( + _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, \ + _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, BL_TOGG, BL_DEC, BL_INC, BL_FLICKER, \ + _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_TOGGLE, CLICKY_DOWN, CLICKY_UP, CLICKY_RESET \ +), + +}; // end keymaps + +// if backlighting is enabled, configure it on boot +#ifdef BACKLIGHT_ENABLE +void matrix_init_user(void) { + // set to max + backlight_level(BACKLIGHT_LEVELS); + flicker_restore_level = get_backlight_level(); + + // if breathing happens to be compiled in, turn it off +#ifdef BACKLIGHT_BREATHING + breathing_disable(); +#endif +} +#endif + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + return MACRO_NONE; +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + // handle the _ADJUST layer and custom keycodes: + switch (keycode) { + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; +#ifdef BACKLIGHT_ENABLE + case BL_FLICKER: + if (record->event.pressed) { + flicker_toggle(); + } + return false; + break; +#endif + } // end switch case over custom keycodes + +#ifdef BACKLIGHT_ENABLE + if (flicker_enable) { + if (record->event.pressed) { + flicker_keydown(); + } else { + flicker_keyup(); + } + } +#endif + + return true; +} + +void encoder_update(bool clockwise) { + if (clockwise) { + register_code(KC_VOLU); + unregister_code(KC_VOLU); + } else { + register_code(KC_VOLD); + unregister_code(KC_VOLD); + } +} + +// flicker implementation: +#ifdef BACKLIGHT_ENABLE +void flicker_toggle(void) { + flicker_enable = !flicker_enable; +} + +void flicker_keydown(void) { + // guard condition: only set the level to restore if the flicker is NOT already down + if (!flicker_isdown) { + flicker_restore_level = get_backlight_level(); + flicker_isdown = true; + } + + // calculate a random flicker level between min and max + uint8_t flicker_level = (rand() % (flicker_max_levels - flicker_min_levels)) + flicker_min_levels; + uint8_t level_to_set = flicker_level <= flicker_restore_level ? flicker_restore_level - flicker_level : 0; + backlight_level(level_to_set); +} + +void flicker_keyup(void) { + backlight_level(flicker_restore_level); + flicker_isdown = false; +} +#endif diff --git a/layouts/community/ortho_4x12/mindsound/readme.md b/layouts/community/ortho_4x12/mindsound/readme.md new file mode 100644 index 0000000000..e9db480494 --- /dev/null +++ b/layouts/community/ortho_4x12/mindsound/readme.md @@ -0,0 +1,19 @@ +# Josh's 4x12 layout + +Notable features: + +* Esc is Ctrl on hold +* Left space is `MOD_HYPER` on hold +* Backspace is still backspace on `RAISE` and `LOWER` +* Faux clicky controls are on the arrow keys on the `ADJUST` layer, and the backlight controls are directly above that +* Backlight breathing is disabled; backlight flickering is implemented instead +* Colemak and other layouts are thoroughly disabled +* Rotary encoder controls media volume on base layer + +This layout has been tested on: + +* Let's Split (rev 2) +* Let's Split Vitamins Included (rev 1) +* Planck (rev 4) + +It builds for the Planck rev 6 but has not been tested yet. diff --git a/layouts/community/ortho_4x12/mindsound/rules.mk b/layouts/community/ortho_4x12/mindsound/rules.mk new file mode 100644 index 0000000000..c01a1ddb58 --- /dev/null +++ b/layouts/community/ortho_4x12/mindsound/rules.mk @@ -0,0 +1,26 @@ +# none of my keyboards need LTO and it screws up I2C on my LSVI: +EXTRAFLAGS:=$(filter-out -flto,$(EXTRAFLAGS)) + +# turning off backlighting and audio for the split keebs +ifneq (,$(findstring lets_split,$(KEYBOARD))) + BACKLIGHT_ENABLE = no + BACKLIGHT_BREATHING = no + AUDIO_ENABLE = no +endif +ifneq (,$(findstring vitamins_included,$(KEYBOARD))) + BACKLIGHT_ENABLE = no + BACKLIGHT_BREATHING = no + AUDIO_ENABLE = no +endif + +# both my plancks use audio but only the rev4 has backlighting +ifneq (,$(findstring planck,$(KEYBOARD))) + ifneq (,$(findstring rev4,$(KEYBOARD))) + BACKLIGHT_ENABLE = yes + BACKLIGHT_BREATHING = no + else + BACKLIGHT_ENABLE = no + BACKLIGHT_BREATHING = no + endif + AUDIO_ENABLE = yes +endif -- cgit v1.2.3 From fa1e674bbbb92f70e2baaea88d3c4c38e10aac72 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Sun, 9 Sep 2018 19:45:59 -0700 Subject: 65% and 68 key community layouts (#3872) * rename 68_ansi layout to 65_ansi layout * more renames and readme change * add company names * add community layouts for 68_ansi * add 68_ansi support for mf68 type boards * update readme --- keyboards/mf68/mf68.h | 4 ++-- keyboards/mf68/rules.mk | 2 ++ keyboards/mf68_ble/mf68_ble.h | 4 ++-- layouts/community/68_ansi/layout.json | 5 +++++ layouts/community/68_ansi/mechmerlin/keymap.c | 18 ++++++++++++++++++ layouts/community/68_ansi/mechmerlin/rules.mk | 1 + layouts/community/68_ansi/readme.md | 5 +++++ layouts/default/65_ansi/default_65_ansi/keymap.c | 11 +++++++++++ layouts/default/65_ansi/layout.json | 5 +++++ layouts/default/65_ansi/readme.md | 5 +++++ layouts/default/68_ansi/default_68_ansi/keymap.c | 8 ++++---- layouts/default/68_ansi/layout.json | 10 +++++----- layouts/default/68_ansi/readme.md | 4 +++- 13 files changed, 68 insertions(+), 14 deletions(-) create mode 100644 layouts/community/68_ansi/layout.json create mode 100644 layouts/community/68_ansi/mechmerlin/keymap.c create mode 100644 layouts/community/68_ansi/mechmerlin/rules.mk create mode 100644 layouts/community/68_ansi/readme.md create mode 100644 layouts/default/65_ansi/default_65_ansi/keymap.c create mode 100644 layouts/default/65_ansi/layout.json create mode 100644 layouts/default/65_ansi/readme.md (limited to 'layouts') diff --git a/keyboards/mf68/mf68.h b/keyboards/mf68/mf68.h index a7aefc6479..a55c1d60b0 100644 --- a/keyboards/mf68/mf68.h +++ b/keyboards/mf68/mf68.h @@ -3,7 +3,7 @@ #include "quantum.h" -#define LAYOUT( \ +#define LAYOUT_68_ansi( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K10, K11, K12, K13, K14, K15, K16, \ K17, K18, K20, K21, K22, K23, K24, K25, K26, K27, K28, K30, K31, K32, K33, K34, \ K35, K36, K37, K38, K40, K41, K42, K43, K44, K45, K46, K47, K48, \ @@ -26,7 +26,7 @@ K35, K36, K37, K38, K40, K41, K42, K43, K44, K45, K46, K47, K48, \ K50, K51, K52, K53, K54, K55, K56, K57, K58, K60, K61, K62, K63, \ K64, K65, K66, K67, K68, K70, K71, K72, K73, K74 \ -) LAYOUT( \ +) LAYOUT_68_ansi( \ KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, \ KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, \ KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, \ diff --git a/keyboards/mf68/rules.mk b/keyboards/mf68/rules.mk index a535a9d0e5..9f6445686d 100644 --- a/keyboards/mf68/rules.mk +++ b/keyboards/mf68/rules.mk @@ -64,3 +64,5 @@ MIDI_ENABLE ?= no # MIDI controls UNICODE_ENABLE ?= no # Unicode BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE ?= no # Audio output on port C6 + +LAYOUTS = 68_ansi \ No newline at end of file diff --git a/keyboards/mf68_ble/mf68_ble.h b/keyboards/mf68_ble/mf68_ble.h index fa17a93903..8ef14c98d4 100644 --- a/keyboards/mf68_ble/mf68_ble.h +++ b/keyboards/mf68_ble/mf68_ble.h @@ -3,7 +3,7 @@ #include "quantum.h" -#define LAYOUT( \ +#define LAYOUT_68_ansi( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K10, K11, K12, K13, K14, K15, K16, \ K17, K18, K20, K21, K22, K23, K24, K25, K26, K27, K28, K30, K31, K32, K33, K34, \ K35, K36, K37, K38, K40, K41, K42, K43, K44, K45, K46, K47, K48, \ @@ -26,7 +26,7 @@ K35, K36, K37, K38, K40, K41, K42, K43, K44, K45, K46, K47, K48, \ K50, K51, K52, K53, K54, K55, K56, K57, K58, K60, K61, K62, K63, \ K64, K65, K66, K67, K68, K70, K71, K72, K73, K74 \ -) LAYOUT( \ +) LAYOUT_68_ansi( \ KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, \ KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, \ KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, \ diff --git a/layouts/community/68_ansi/layout.json b/layouts/community/68_ansi/layout.json new file mode 100644 index 0000000000..f81ee0bcbf --- /dev/null +++ b/layouts/community/68_ansi/layout.json @@ -0,0 +1,5 @@ +[{a:7},"","","","","","","","","","","","","",{w:2},"",{x:0.25},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",{x:0.25},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:2.75},"",{x:0.25},""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{x:0.5},"","",""] diff --git a/layouts/community/68_ansi/mechmerlin/keymap.c b/layouts/community/68_ansi/mechmerlin/keymap.c new file mode 100644 index 0000000000..5059bd7d83 --- /dev/null +++ b/layouts/community/68_ansi/mechmerlin/keymap.c @@ -0,0 +1,18 @@ +#include QMK_KEYBOARD_H +#include "mechmerlin.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BL] = LAYOUT_68_ansi(\ + KC_GESC, 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_PGUP, + 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_PGDN, + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + 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, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FL), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [_FL] = LAYOUT_68_ansi(\ + KC_GRV, 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_DEL, 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, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, 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), + }; \ No newline at end of file diff --git a/layouts/community/68_ansi/mechmerlin/rules.mk b/layouts/community/68_ansi/mechmerlin/rules.mk new file mode 100644 index 0000000000..e2ce3d7731 --- /dev/null +++ b/layouts/community/68_ansi/mechmerlin/rules.mk @@ -0,0 +1 @@ +USER_NAME := mechmerlin \ No newline at end of file diff --git a/layouts/community/68_ansi/readme.md b/layouts/community/68_ansi/readme.md new file mode 100644 index 0000000000..2180973de8 --- /dev/null +++ b/layouts/community/68_ansi/readme.md @@ -0,0 +1,5 @@ +# 68_ansi + + LAYOUT_68_ansi + +This is the 68 key ANSI layout made popular by boards such as the Magicforce 68 and Varmilo VA68M. \ No newline at end of file diff --git a/layouts/default/65_ansi/default_65_ansi/keymap.c b/layouts/default/65_ansi/default_65_ansi/keymap.c new file mode 100644 index 0000000000..69fcccd632 --- /dev/null +++ b/layouts/default/65_ansi/default_65_ansi/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* layer 0: qwerty */ + [0] = LAYOUT_65_ansi(\ + 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_HOME, + 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_PGUP, + 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, KC_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) + }; \ No newline at end of file diff --git a/layouts/default/65_ansi/layout.json b/layouts/default/65_ansi/layout.json new file mode 100644 index 0000000000..0fa92b0f2e --- /dev/null +++ b/layouts/default/65_ansi/layout.json @@ -0,0 +1,5 @@ +["","","","","","","","","","","","","",{w:2},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] diff --git a/layouts/default/65_ansi/readme.md b/layouts/default/65_ansi/readme.md new file mode 100644 index 0000000000..0cde8e727e --- /dev/null +++ b/layouts/default/65_ansi/readme.md @@ -0,0 +1,5 @@ +# 65_ansi + + LAYOUT_65_ansi + +This is the 65% ANSI layout made popular by boards such as the [Input Club Whitefox](https://github.com/qmk/qmk_firmware/tree/master/keyboards/whitefox) and [RAMA M65-A](https://github.com/qmk/qmk_firmware/tree/master/keyboards/jc65). \ No newline at end of file diff --git a/layouts/default/68_ansi/default_68_ansi/keymap.c b/layouts/default/68_ansi/default_68_ansi/keymap.c index 59b0ea47d0..544f9c156a 100644 --- a/layouts/default/68_ansi/default_68_ansi/keymap.c +++ b/layouts/default/68_ansi/default_68_ansi/keymap.c @@ -3,9 +3,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* layer 0: qwerty */ [0] = LAYOUT_68_ansi(\ - 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_HOME, - 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_PGUP, - 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, KC_PGDN, - 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, KC_END, + 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_PGUP, + 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_PGDN, + 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, + 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, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) }; \ No newline at end of file diff --git a/layouts/default/68_ansi/layout.json b/layouts/default/68_ansi/layout.json index 0fa92b0f2e..f81ee0bcbf 100644 --- a/layouts/default/68_ansi/layout.json +++ b/layouts/default/68_ansi/layout.json @@ -1,5 +1,5 @@ -["","","","","","","","","","","","","",{w:2},"",""], -[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], -[{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], -[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], -[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] +[{a:7},"","","","","","","","","","","","","",{w:2},"",{x:0.25},"",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",{x:0.25},"",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:2.75},"",{x:0.25},""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{x:0.5},"","",""] diff --git a/layouts/default/68_ansi/readme.md b/layouts/default/68_ansi/readme.md index eab8f312b2..2180973de8 100644 --- a/layouts/default/68_ansi/readme.md +++ b/layouts/default/68_ansi/readme.md @@ -1,3 +1,5 @@ # 68_ansi - LAYOUT_68_ansi \ No newline at end of file + LAYOUT_68_ansi + +This is the 68 key ANSI layout made popular by boards such as the Magicforce 68 and Varmilo VA68M. \ No newline at end of file -- cgit v1.2.3 From 7551e0bbc705c9b67b27a080db2bb483c3ac22e8 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Tue, 11 Sep 2018 14:22:18 -0700 Subject: Keymap: Fixed my ortho_5x12 layout (#3881) * Fixed my ortho_5x12 layout I've fixed the config.h file for my 5x12 ortho layout so that I can now use it with my Nyquist. * Update config.h * Update config.h --- layouts/community/ortho_5x12/xyverz/config.h | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ortho_5x12/xyverz/config.h b/layouts/community/ortho_5x12/xyverz/config.h index 0481aa8142..4489c6e5f5 100644 --- a/layouts/community/ortho_5x12/xyverz/config.h +++ b/layouts/community/ortho_5x12/xyverz/config.h @@ -7,16 +7,18 @@ /* ws2812 RGB LED */ #undef RGB_DI_PIN -#define RGB_DI_PIN B3 -#undef RGBLED_NUM -#define RGBLIGHT_ANIMATIONS -#define RGBLED_NUM 11 // Number of LEDs -#undef RGBLIGHT_HUE_STEP -#define RGBLIGHT_HUE_STEP 8 -#undef RGBLIGHT_SAT_STEP -#define RGBLIGHT_SAT_STEP 8 -#undef RGBLIGHT_VAL_STEP -#define RGBLIGHT_VAL_STEP 8 +#if defined(KEYBOARD_preonic_rev2) + #define RGB_DI_PIN B3 + #undef RGBLED_NUM + #define RGBLIGHT_ANIMATIONS + #define RGBLED_NUM 11 // Number of LEDs + #undef RGBLIGHT_HUE_STEP + #define RGBLIGHT_HUE_STEP 8 + #undef RGBLIGHT_SAT_STEP + #define RGBLIGHT_SAT_STEP 8 + #undef RGBLIGHT_VAL_STEP + #define RGBLIGHT_VAL_STEP 8 +#endif // for the split boards // #define USE_SERIAL -- cgit v1.2.3 From db35065e1431246b5297e644a867ee6f5449a6f4 Mon Sep 17 00:00:00 2001 From: Graham P Heath Date: Sat, 15 Sep 2018 12:12:11 -0500 Subject: Keymap: Grahampheath: telophase fix and keymaps (#3888) * add my config * fix backlight, clean up that code * group background code, restore static var * qwerty is supposed to be in the middle * wrap layer change backlight in ifdef * backlight levels and some more 'emojis'. * Restructure to make it possible to press cmd ent on the right side of the board with one hand. * Expose the period through the number layer. Add Hyper keys to mouse layer * reduce mouse speed * add a : -P key * Thumbs up and down, remove some keys that are duplicated via function keys, clean up * fix build issues * add various emoji * duplicate default Meira keymaps * Miera updates * add documented but unmapped emoji * Sound for the Meira, was stumped by a file size! Thanks drashna! * add docs * docs * revert lib changes... * clean up * clean up * remove make file * Fixes missing key * clean up * add my lets split * add more emoji * add the telophase board (unofficially, I guess...) * add missing files * add/reset files * Review feedback implementation: Not needed. Add #define FLIP_HALF to your config.h file instead. * Review feedback implementation: All of these includes should be replaced with #include QMK_KEYBOARD_H. * Review feedback implementation: [FAILING] You may want to use LAYOUT_ortho_4x12 instead, and move this to /layouts/community/ortho_4x12/ instead. That way, you can use the same keymap for all of the boards. * clean up * add a key for command tilde (osx loves it) * at least its building again * remove adjusts and migrate layer switching to MO(_LAYER) * update the telophase readme * update the telophase readme * grahampheaths -> grahampheath * ONEHAND_ENABLE -> SWAP_HANDS_ENABLE * convert lets split to use ortho_4x12 * Move lets split keyboard layout into community/ortho_4x12 * make telophase use LAYOUT() * I did it?! * Add clap and grin * swap tabs and back and forward * whitespace * Add ellipsis and thanks emoji * Move flip_half to telophase config (conflicts with lets split layout) * Use #pragma once instead of config_user_h * remove unused stuff --- keyboards/planck/keymaps/grahampheath/config.h | 7 +------ layouts/community/ortho_4x12/grahampheath/config.h | 2 -- layouts/community/ortho_4x12/grahampheath/keymap.c | 22 ++++++++++++++++++---- 3 files changed, 19 insertions(+), 12 deletions(-) (limited to 'layouts') diff --git a/keyboards/planck/keymaps/grahampheath/config.h b/keyboards/planck/keymaps/grahampheath/config.h index 1c842420bb..db24d273a4 100644 --- a/keyboards/planck/keymaps/grahampheath/config.h +++ b/keyboards/planck/keymaps/grahampheath/config.h @@ -1,7 +1,4 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" +#pragma once #ifdef AUDIO_ENABLE #define STARTUP_SONG SONG(PLANCK_SOUND) @@ -39,8 +36,6 @@ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ //#define MIDI_TONE_KEYCODE_OCTAVES 2 -#endif - #define TAPPING_TERM 200 #undef BACKLIGHT_LEVELS diff --git a/layouts/community/ortho_4x12/grahampheath/config.h b/layouts/community/ortho_4x12/grahampheath/config.h index 21d647921c..8bc3d7762d 100644 --- a/layouts/community/ortho_4x12/grahampheath/config.h +++ b/layouts/community/ortho_4x12/grahampheath/config.h @@ -21,8 +21,6 @@ along with this program. If not, see . #ifndef CONFIG_USER_H #define CONFIG_USER_H -#define FLIP_HALF - #include "keyboards/lets_split/config.h" /* Use I2C or Serial, not both */ diff --git a/layouts/community/ortho_4x12/grahampheath/keymap.c b/layouts/community/ortho_4x12/grahampheath/keymap.c index e2421e9a7e..0b84b66eb8 100644 --- a/layouts/community/ortho_4x12/grahampheath/keymap.c +++ b/layouts/community/ortho_4x12/grahampheath/keymap.c @@ -19,6 +19,7 @@ enum custom_keycodes { CONFUSED, CRY, CLAP, + ELIP, FLIP, FNGLEFT, FNGRIGHT, @@ -35,6 +36,7 @@ enum custom_keycodes { THMBDN, THMBUP, TOUNGE, + THANKS, WINK }; @@ -114,19 +116,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Emoji Layer * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ - * │HYPR0│ Q │ ;-) │ E │ 🤣 │ :-P │ Y │ U │:'-( │FLIP │ P │ │ + * │HYPR0│ Q │ ;-) │ E │ 🤣 │ :-P │ 🙏🏼 │ U │:'-( │FLIP │ P │ │ * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ * │HYPR1│ 👆 │SHRUG│ GRIN│ :-( │ G │ <3 │ :-) │ k │LLAP │ ; │ │ * ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ - * │HYPR2│🎶^🎶│💭^💭│ 👏 | :-\ │ 🐛 │ n │ :-D │ SHIT│ . │ / │ │ + * │HYPR2│🎶^🎶│💭^💭│ 👏 | :-\ │ 🐛 │ n │ :-D │ SHIT│ ... │ / │ │ * ├─────┼─────┼─────┼─────┼─────┼─────┴─────┼─────┼─────┼─────┼─────┼─────┤ * │ │ │ │ │Brig-│ Sleep │Brig+│ 👈 │ 👎 | 👍 │ 👉 │ * └─────┴─────┴─────┴─────┴─────┴───────────┴─────┴─────┴─────┴─────┴─────┘ */ [_EMOJI] = LAYOUT_ortho_4x12( - HYPR_0, _______, WINK, _______, ROFL, TOUNGE, _______, _______, CRY, FLIP, _______, _______ , + HYPR_0, _______, WINK, _______, ROFL, TOUNGE, THANKS, _______, CRY, FLIP, _______, _______ , HYPR_1, ABOVE, SHRUG, GRIN, FROWN, _______, HEART, JOY, _______, LLAP, _______, _______ , - HYPR_2, SING, THINK, CLAP, CONFUSED, BUG, _______, _______, SHIT, _______, _______, _______ , + HYPR_2, SING, THINK, CLAP, CONFUSED, BUG, _______, _______, SHIT, ELIP, _______, _______ , _______, _______, _______, _______, KC_SLCK, KC_SLEP, KC_SLEP, KC_PAUS, FNGLEFT, THMBDN, THMBUP, FNGRIGHT ), }; @@ -174,6 +176,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case ELIP: + if (record->event.pressed) { + SEND_STRING("..."); + } + return false; + break; case FLIP: if (record->event.pressed) { SEND_STRING("&fliptable;"); @@ -246,6 +254,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case THANKS: + if (record->event.pressed) { + SEND_STRING("&thanks;"); + } + return false; + break; case THINK: if (record->event.pressed) { SEND_STRING("_think_"); -- cgit v1.2.3 From 743449472e58651ec8111e6f70811103fb0a28bd Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Mon, 17 Sep 2018 10:48:02 -0700 Subject: Make `PREVENT_STUCK_MODIFIERS` the default (#3107) * Remove chording as it is not documented, not used, and needs work. * Make Leader Key an optional feature. * Switch from `PREVENT_STUCK_MODIFIERS` to `STRICT_LAYER_RELEASE` * Remove `#define PREVENT_STUCK_MODIFIERS` from keymaps. --- common_features.mk | 11 ++-- docs/config_options.md | 4 +- docs/feature_leader_key.md | 8 +++ docs/understanding_qmk.md | 2 +- keyboards/1upkeyboards/1up60rgb/config.h | 3 - keyboards/1upkeyboards/sweet16/config.h | 7 +- keyboards/acr60/config.h | 3 - keyboards/alf/x2/config.h | 5 +- keyboards/alpha/config.h | 2 - keyboards/alu84/config.h | 3 - keyboards/at101_blackheart/config.h | 3 - keyboards/atreus/keymaps/jeremy/keymap.c | 2 - keyboards/atreus/keymaps/khitsule/config.h | 4 +- keyboards/atreus/keymaps/xk/config.h | 3 +- keyboards/atreus62/keymaps/mneme/config.h | 1 - keyboards/atreus62/keymaps/mneme/rules.mk | 1 + .../bfo9000/keymaps/andylikescandy6x18/config.h | 3 - keyboards/bigseries/1key/config.h | 3 - keyboards/bigseries/2key/config.h | 3 - keyboards/bigseries/3key/config.h | 3 - keyboards/bigseries/4key/config.h | 3 - keyboards/bigswitch/config.h | 2 - keyboards/catch22/config.h | 3 - keyboards/chimera_ergo/config.h | 2 - keyboards/chimera_ls/config.h | 2 - keyboards/chimera_ortho/config.h | 2 - keyboards/chocopad/config.h | 6 +- keyboards/clueboard/60/config.h | 3 - keyboards/clueboard/66/keymaps/bloodlvst/config.h | 1 - keyboards/comet46/config.h | 2 - keyboards/contra/config.h | 4 -- keyboards/contra/keymaps/ryanm101/config.h | 5 +- keyboards/crawlpad/config.h | 3 - keyboards/crkbd/keymaps/default/config.h | 1 - keyboards/dichotemy/config.h | 2 - keyboards/dilly/config.h | 6 +- keyboards/dz60/config.h | 3 - keyboards/dz60/keymaps/LEdiodes/config.h | 3 - keyboards/ergodone/config.h | 2 - keyboards/ergodox_ez/config.h | 2 - .../ergodox_ez/keymaps/heartrobotninja/rules.mk | 3 +- keyboards/ergodox_ez/keymaps/vim/vim.h | 1 - keyboards/ergodox_infinity/keymaps/gordon/config.h | 2 - keyboards/ergodox_infinity/keymaps/narze/config.h | 1 - .../keymaps/not-quite-neo/rules.mk | 3 +- keyboards/ergoinu/config.h | 2 - keyboards/ergotravel/keymaps/ckofy/config.h | 3 - keyboards/felix/config.h | 4 +- keyboards/four_banger/config.h | 5 +- keyboards/fourier/keymaps/jennetters/config.h | 5 +- keyboards/fractal/config.h | 4 -- keyboards/frosty_flake/keymaps/nikchi/rules.mk | 3 +- keyboards/gh80_3000/config.h | 6 +- keyboards/gherkin/config.h | 6 +- keyboards/gherkin/keymaps/talljoe_gherkin/config.h | 4 +- keyboards/gonnerd/keymaps/gam3cat/config.h | 1 - keyboards/hadron/keymaps/default/config.h | 1 - keyboards/hadron/keymaps/side_numpad/config.h | 1 - keyboards/handwired/MS_sculpt_mobile/config.h | 8 +-- .../handwired/atreus50/keymaps/ajp10304/config.h | 2 - keyboards/handwired/dactyl/config.h | 2 - keyboards/handwired/kbod/config.h | 4 +- .../handwired/promethium/keymaps/default/config.h | 2 - .../handwired/promethium/keymaps/priyadi/config.h | 2 - keyboards/handwired/space_oddity/config.h | 4 -- keyboards/helix/pico/config.h | 1 - keyboards/helix/rev1/keymaps/OLED_sample/config.h | 3 +- keyboards/helix/rev2/config.h | 1 - keyboards/hhkb/keymaps/blakedietz/rules.mk | 1 + keyboards/infinity60/config.h | 2 - keyboards/iris/keymaps/davidrambo/config.h | 1 - keyboards/iris/keymaps/jennetters/config.h | 5 +- keyboards/iris/keymaps/krusli/config.h | 2 - keyboards/iris/keymaps/xyverz/config.h | 2 - keyboards/jc65/v32u4/keymaps/gam3cat/config.h | 1 - keyboards/jj40/keymaps/ajp10304/config.h | 8 --- keyboards/jj40/keymaps/fun40/config.h | 1 - keyboards/jj40/keymaps/krusli/config.h | 1 - keyboards/jj40/keymaps/oscillope/config.h | 1 - keyboards/jj40/keymaps/suzuken/config.h | 1 - keyboards/jj40/keymaps/waples/config.h | 1 - keyboards/jm60/config.h | 2 - keyboards/k_type/config.h | 2 - keyboards/katana60/config.h | 3 +- keyboards/kbd75/config.h | 3 - .../kinesis/keymaps/insertsnideremarks/config.h | 1 - keyboards/lets_split/keymaps/OLED_sample/config.h | 2 - keyboards/lets_split/keymaps/adam/config.h | 1 - keyboards/lets_split/keymaps/khord/config.h | 3 - keyboards/lets_split/keymaps/piemod/config.h | 1 - keyboards/lets_split/keymaps/waples/config.h | 2 - keyboards/lets_split/keymaps/xk/config.h | 1 - keyboards/m10a/keymaps/gam3cat/config.h | 2 - keyboards/mechmini/v2/config.h | 3 - keyboards/melody96/config.h | 3 - keyboards/minidox/keymaps/alairock/config.h | 1 - keyboards/minidox/keymaps/khitsule/config.h | 4 +- keyboards/mint60/config.h | 1 - keyboards/mitosis/config.h | 2 - keyboards/niu_mini/config.h | 3 - keyboards/novelpad/config.h | 3 - keyboards/noxary/268/config.h | 5 +- keyboards/ok60/config.h | 3 - keyboards/omnikey_blackheart/config.h | 6 +- keyboards/paladin64/config.h | 2 - keyboards/pegasushoof/keymaps/citadel/config.h | 3 - keyboards/planck/keymaps/ajp10304/config.h | 8 --- keyboards/planck/keymaps/altgr/config.h | 3 - keyboards/planck/keymaps/am/config.h | 3 - keyboards/planck/keymaps/andylikescandy/config.h | 3 - keyboards/planck/keymaps/bone2planck/config.h | 8 --- keyboards/planck/keymaps/davidrambo/config.h | 5 +- keyboards/planck/keymaps/dshields/config.h | 1 - keyboards/planck/keymaps/espynn/keymap.c | 1 - keyboards/planck/keymaps/experimental/config.h | 2 - keyboards/planck/keymaps/experimental/rules.mk | 3 +- keyboards/planck/keymaps/hiea/config.h | 3 - keyboards/planck/keymaps/hieax/config.h | 3 - keyboards/planck/keymaps/ishtob/config.h | 2 - keyboards/planck/keymaps/jarred/config.h | 4 +- keyboards/planck/keymaps/jeremy-dev/keymap.c | 1 - keyboards/planck/keymaps/kmontag42/rules.mk | 1 + keyboards/planck/keymaps/lae3/config.h | 8 --- keyboards/planck/keymaps/mitch/config.h | 3 +- keyboards/planck/keymaps/mitch/readme.md | 4 -- keyboards/planck/keymaps/narze/config.h | 3 +- keyboards/planck/keymaps/neo2planck/config.h | 8 --- keyboards/planck/keymaps/priyadi/config.h | 2 - keyboards/planck/keymaps/sdothum/config.h | 3 - keyboards/planck/keymaps/steno/config.h | 4 +- keyboards/planck/keymaps/tehwalris/config.h | 4 +- keyboards/planck/keymaps/vifon/config.h | 3 - keyboards/planck/keymaps/yale/config.h | 11 ---- keyboards/planck/keymaps/zach/config.h | 1 - keyboards/planck/rev6/config.h | 3 - keyboards/playkbtw/ca66/config.h | 2 - keyboards/playkbtw/pk60/config.h | 5 +- keyboards/preonic/keymaps/bucktooth/config.h | 1 - keyboards/preonic/keymaps/jacwib/config.h | 1 - keyboards/preonic/keymaps/kuatsure/rules.mk | 1 + keyboards/preonic/keymaps/that_canadian/config.h | 8 --- keyboards/preonic/keymaps/zach/config.h | 1 - keyboards/preonic/rev3/config.h | 3 - keyboards/prime_r/config.h | 4 -- .../rorschach/keymaps/insertsnideremarks/config.h | 1 - keyboards/s60_x/keymaps/bluebear/config.h | 3 - keyboards/s60_x/rgb/config.h | 5 +- keyboards/s65_plus/config.h | 3 - keyboards/s65_x/config.h | 4 -- keyboards/sx60/config.h | 4 -- keyboards/telophase/config.h | 2 - keyboards/tetris/config.h | 5 +- .../bananasplit/keymaps/talljoe/config.h | 1 - keyboards/tokyo60/config.h | 3 - keyboards/tomato/config.h | 3 - keyboards/uk78/config.h | 3 - keyboards/viterbi/keymaps/drashna/config.h | 2 +- keyboards/whitefox/config.h | 2 - keyboards/xd60/keymaps/kmontag42/rules.mk | 1 + keyboards/xd75/keymaps/davidrambo/config.h | 3 +- keyboards/xd75/keymaps/tdl-jturner/config.h | 1 - keyboards/xmmx/config.h | 6 +- keyboards/ymd96/keymaps/hgoel89/config.h | 1 - keyboards/z150_blackheart/config.h | 6 +- keyboards/zeal60/keymaps/tusing/config.h | 4 -- keyboards/zlant/config.h | 3 - layouts/community/60_ansi/talljoe-ansi/config.h | 1 - .../60_ansi_split_bs_rshift/talljoe/config.h | 1 - layouts/community/60_hhkb/talljoe-hhkb/config.h | 1 - layouts/community/ergodox/adam/config.h | 1 - layouts/community/ergodox/albert/rules.mk | 3 +- layouts/community/ergodox/algernon/rules.mk | 1 + layouts/community/ergodox/alphadox/config.h | 1 - layouts/community/ergodox/deadcyclo/rules.mk | 1 + .../community/ergodox/erez_experimental/rules.mk | 3 +- layouts/community/ergodox/familiar/rules.mk | 1 + layouts/community/ergodox/mclennon_osx/README.md | 4 +- layouts/community/ergodox/techtomas/readme.md | 2 +- layouts/community/ortho_4x12/symbolic/config.h | 4 -- layouts/community/tkl_ansi/talljoe-tkl/config.h | 1 - quantum/process_keycode/process_chording.c | 76 ---------------------- quantum/process_keycode/process_chording.h | 32 --------- quantum/process_keycode/process_leader.c | 2 +- quantum/quantum.c | 7 +- quantum/quantum.h | 7 +- quantum/quantum_keycodes.h | 6 +- tmk_core/common/action.c | 2 +- tmk_core/common/action.h | 2 +- tmk_core/common/action_layer.c | 4 +- tmk_core/common/action_layer.h | 2 +- users/333fred/333fred_config.h | 1 - users/bocaj/config.h | 1 - users/drashna/config.h | 5 -- users/ishtob/config.h | 3 +- users/replicaJunction/config.h | 6 -- users/talljoe/config.h | 1 - users/wanleg/config.h | 2 - users/zer09/config.h | 2 +- 198 files changed, 91 insertions(+), 599 deletions(-) delete mode 100644 keyboards/jj40/keymaps/ajp10304/config.h delete mode 100644 keyboards/m10a/keymaps/gam3cat/config.h delete mode 100644 keyboards/planck/keymaps/ajp10304/config.h delete mode 100644 keyboards/planck/keymaps/bone2planck/config.h delete mode 100644 keyboards/planck/keymaps/lae3/config.h delete mode 100644 keyboards/planck/keymaps/neo2planck/config.h delete mode 100644 keyboards/planck/keymaps/yale/config.h delete mode 100644 keyboards/preonic/keymaps/that_canadian/config.h create mode 100644 keyboards/xd60/keymaps/kmontag42/rules.mk delete mode 100644 quantum/process_keycode/process_chording.c delete mode 100644 quantum/process_keycode/process_chording.h (limited to 'layouts') diff --git a/common_features.mk b/common_features.mk index c637582d45..7af7789808 100644 --- a/common_features.mk +++ b/common_features.mk @@ -221,7 +221,6 @@ ifeq ($(strip $(USB_HID_ENABLE)), yes) include $(TMK_DIR)/protocol/usb_hid.mk endif - ifeq ($(strip $(HD44780_ENABLE)), yes) SRC += drivers/avr/hd44780.c OPT_DEFS += -DHD44780_ENABLE @@ -232,11 +231,15 @@ ifeq ($(strip $(DYNAMIC_KEYMAP_ENABLE)), yes) SRC += $(QUANTUM_DIR)/dynamic_keymap.c endif +ifeq ($(strip $(LEADER_ENABLE)), yes) + SRC += $(QUANTUM_DIR)/process_keycode/process_leader.c + OPT_DEFS += -DLEADER_ENABLE +endif + QUANTUM_SRC:= \ $(QUANTUM_DIR)/quantum.c \ $(QUANTUM_DIR)/keymap_common.c \ - $(QUANTUM_DIR)/keycode_config.c \ - $(QUANTUM_DIR)/process_keycode/process_leader.c + $(QUANTUM_DIR)/keycode_config.c ifndef CUSTOM_MATRIX ifeq ($(strip $(SPLIT_KEYBOARD)), yes) @@ -251,5 +254,5 @@ ifeq ($(strip $(SPLIT_KEYBOARD)), yes) QUANTUM_SRC += $(QUANTUM_DIR)/split_common/split_flags.c \ $(QUANTUM_DIR)/split_common/split_util.c \ $(QUANTUM_DIR)/split_common/i2c.c \ - $(QUANTUM_DIR)/split_common/serial.c + $(QUANTUM_DIR)/split_common/serial.c endif diff --git a/docs/config_options.md b/docs/config_options.md index eaaa59872c..072857727b 100644 --- a/docs/config_options.md +++ b/docs/config_options.md @@ -119,8 +119,8 @@ If you define these options you will enable the associated feature, which may in * `#define FORCE_NKRO` * NKRO by default requires to be turned on, this forces it on during keyboard startup regardless of EEPROM setting. NKRO can still be turned off but will be turned on again if the keyboard reboots. -* `#define PREVENT_STUCK_MODIFIERS` - * stores the layer a key press came from so the same layer is used when the key is released, regardless of which layers are enabled +* `#define STRICT_LAYER_RELEASE` + * force a key release to be evaluated using the current layer stack instead of remembering which layer it came from (used for advanced cases) ## Behaviors That Can Be Configured diff --git a/docs/feature_leader_key.md b/docs/feature_leader_key.md index 46633b2870..0c3f4a1332 100644 --- a/docs/feature_leader_key.md +++ b/docs/feature_leader_key.md @@ -39,3 +39,11 @@ void matrix_scan_user(void) { As you can see, you have a few function. You can use `SEQ_ONE_KEY` for single-key sequences (Leader followed by just one key), and `SEQ_TWO_KEYS`, `SEQ_THREE_KEYS` up to `SEQ_FIVE_KEYS` for longer sequences. Each of these accepts one or more keycodes as arguments. This is an important point: You can use keycodes from **any layer on your keyboard**. That layer would need to be active for the leader macro to fire, obviously. + +## Adding Leader Key Support in the `rules.mk` + +To add support for Leader Key you simply need to add a single line to your keymap's `rules.mk`: + +``` +LEADER_ENABLE = yes +``` diff --git a/docs/understanding_qmk.md b/docs/understanding_qmk.md index bf695d008d..35596cc692 100644 --- a/docs/understanding_qmk.md +++ b/docs/understanding_qmk.md @@ -129,6 +129,7 @@ Comparing against our keymap we can see that the pressed key is KC_NLCK. From he ##### Process Record + The `process_record()` function itself is deceptively simple, but hidden within is a gateway to overriding functionality at various levels of QMK. The chain of events is listed below, using cluecard whenever we need to look at the keyboard/keymap level functions. Depending on options set in rule.mk or elsewhere, only a subset of the functions below will be included in final firmware. * [`void process_record(keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/08c682c193f43e5d54df990680ae93fc2e06150a/tmk_core/common/action.c#L172) @@ -146,7 +147,6 @@ The `process_record()` function itself is deceptively simple, but hidden within * [`bool process_music(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_music.c#L114) * [`bool process_tap_dance(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_tap_dance.c#L136) * [`bool process_leader(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_leader.c#L38) - * [`bool process_chording(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_chording.c#L41) * [`bool process_combo(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_combo.c#L115) * [`bool process_unicode(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_unicode.c#L22) * [`bool process_ucis(uint16_t keycode, keyrecord_t *record)`](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/process_keycode/process_ucis.c#L91) diff --git a/keyboards/1upkeyboards/1up60rgb/config.h b/keyboards/1upkeyboards/1up60rgb/config.h index bfdf354af7..ee49211b48 100644 --- a/keyboards/1upkeyboards/1up60rgb/config.h +++ b/keyboards/1upkeyboards/1up60rgb/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/1upkeyboards/sweet16/config.h b/keyboards/1upkeyboards/sweet16/config.h index 77d9e276dc..20d99651da 100644 --- a/keyboards/1upkeyboards/sweet16/config.h +++ b/keyboards/1upkeyboards/sweet16/config.h @@ -9,7 +9,7 @@ #define DEVICE_VER 0x0001 #define MANUFACTURER 1up Keyboards #define PRODUCT Sweet16 -#define DESCRIPTION 4x4 grid +#define DESCRIPTION 4x4 grid /* key matrix size */ #define MATRIX_ROWS 4 @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN B1 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS @@ -55,4 +52,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/acr60/config.h b/keyboards/acr60/config.h index c44ba737e8..3066f349de 100644 --- a/keyboards/acr60/config.h +++ b/keyboards/acr60/config.h @@ -41,9 +41,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 20 diff --git a/keyboards/alf/x2/config.h b/keyboards/alf/x2/config.h index 31212ce336..f2106fa88e 100644 --- a/keyboards/alf/x2/config.h +++ b/keyboards/alf/x2/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS @@ -55,4 +52,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/alpha/config.h b/keyboards/alpha/config.h index 0295275635..1e16f5ca3c 100755 --- a/keyboards/alpha/config.h +++ b/keyboards/alpha/config.h @@ -43,8 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS #define RGB_DI_PIN F4 #ifdef RGB_DI_PIN diff --git a/keyboards/alu84/config.h b/keyboards/alu84/config.h index 9e013dbcc3..9d2dca409c 100755 --- a/keyboards/alu84/config.h +++ b/keyboards/alu84/config.h @@ -59,9 +59,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLED_NUM 16 diff --git a/keyboards/at101_blackheart/config.h b/keyboards/at101_blackheart/config.h index 6a809a02f8..237cb095e6 100644 --- a/keyboards/at101_blackheart/config.h +++ b/keyboards/at101_blackheart/config.h @@ -38,6 +38,3 @@ #define IS_COMMAND() ( \ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) - -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS \ No newline at end of file diff --git a/keyboards/atreus/keymaps/jeremy/keymap.c b/keyboards/atreus/keymaps/jeremy/keymap.c index 42bef9d80c..890980f41f 100644 --- a/keyboards/atreus/keymaps/jeremy/keymap.c +++ b/keyboards/atreus/keymaps/jeremy/keymap.c @@ -4,8 +4,6 @@ #include "action_layer.h" #include "keymap_colemak.h" -#define PREVENT_STUCK_MODIFIERS - // Each layer gets a name for readability, which is then used in the keymap matrix below. #define ALPH 0 #define NUMS 1 diff --git a/keyboards/atreus/keymaps/khitsule/config.h b/keyboards/atreus/keymaps/khitsule/config.h index 19714ec7d5..c74909a9ff 100644 --- a/keyboards/atreus/keymaps/khitsule/config.h +++ b/keyboards/atreus/keymaps/khitsule/config.h @@ -3,8 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS - #define IGNORE_MOD_TAP_INTERRUPT -#endif \ No newline at end of file +#endif diff --git a/keyboards/atreus/keymaps/xk/config.h b/keyboards/atreus/keymaps/xk/config.h index 2f8110167e..a8b9c88057 100644 --- a/keyboards/atreus/keymaps/xk/config.h +++ b/keyboards/atreus/keymaps/xk/config.h @@ -30,8 +30,7 @@ the Free Software Foundation, either version 2 of the License, or #define MOUSEKEY_WHEEL_MAX_SPEED 8 #define MOUSEKEY_WHEEL_TIME_TO_MAX 40 -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define PERMISSIVE_HOLD -#endif \ No newline at end of file +#endif diff --git a/keyboards/atreus62/keymaps/mneme/config.h b/keyboards/atreus62/keymaps/mneme/config.h index 73eb0fa33d..a89bf5503c 100644 --- a/keyboards/atreus62/keymaps/mneme/config.h +++ b/keyboards/atreus62/keymaps/mneme/config.h @@ -1,6 +1,5 @@ #define ONESHOT_TIMEOUT 3000 #define TAPPING_TERM 200 -#define PREVENT_STUCK_MODIFIERS #define FORCE_NKRO #define LEADER_TIMEOUT 1000 diff --git a/keyboards/atreus62/keymaps/mneme/rules.mk b/keyboards/atreus62/keymaps/mneme/rules.mk index 046aec2733..160ce6edbf 100644 --- a/keyboards/atreus62/keymaps/mneme/rules.mk +++ b/keyboards/atreus62/keymaps/mneme/rules.mk @@ -3,3 +3,4 @@ NKRO_ENABLE = true MOUSEKEY_ENABLE = no EXTRAKEY_ENABLE = yes CONSOLE_ENABLE = no +LEADER_ENABLE = yes diff --git a/keyboards/bfo9000/keymaps/andylikescandy6x18/config.h b/keyboards/bfo9000/keymaps/andylikescandy6x18/config.h index 9d124a98e5..be57e385ef 100644 --- a/keyboards/bfo9000/keymaps/andylikescandy6x18/config.h +++ b/keyboards/bfo9000/keymaps/andylikescandy6x18/config.h @@ -37,7 +37,4 @@ along with this program. If not, see . #define PERMISSIVE_HOLD - #define PREVENT_STUCK_MODIFIERS - - #endif diff --git a/keyboards/bigseries/1key/config.h b/keyboards/bigseries/1key/config.h index 4e30276fc0..966f2062c4 100755 --- a/keyboards/bigseries/1key/config.h +++ b/keyboards/bigseries/1key/config.h @@ -47,9 +47,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/bigseries/2key/config.h b/keyboards/bigseries/2key/config.h index 83c8e31417..79b9ed3786 100755 --- a/keyboards/bigseries/2key/config.h +++ b/keyboards/bigseries/2key/config.h @@ -47,9 +47,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/bigseries/3key/config.h b/keyboards/bigseries/3key/config.h index e10b14db42..9963a82197 100755 --- a/keyboards/bigseries/3key/config.h +++ b/keyboards/bigseries/3key/config.h @@ -47,9 +47,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/bigseries/4key/config.h b/keyboards/bigseries/4key/config.h index 3ebcfe0911..a222512d3c 100755 --- a/keyboards/bigseries/4key/config.h +++ b/keyboards/bigseries/4key/config.h @@ -47,9 +47,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/bigswitch/config.h b/keyboards/bigswitch/config.h index cc290fd79b..a0ef6b5554 100755 --- a/keyboards/bigswitch/config.h +++ b/keyboards/bigswitch/config.h @@ -47,8 +47,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 diff --git a/keyboards/catch22/config.h b/keyboards/catch22/config.h index cb7ca7d84c..f151e7048f 100644 --- a/keyboards/catch22/config.h +++ b/keyboards/catch22/config.h @@ -46,9 +46,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN F6 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/chimera_ergo/config.h b/keyboards/chimera_ergo/config.h index 86ee237181..8ce195cc06 100644 --- a/keyboards/chimera_ergo/config.h +++ b/keyboards/chimera_ergo/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/chimera_ls/config.h b/keyboards/chimera_ls/config.h index d92878026b..254dad3064 100644 --- a/keyboards/chimera_ls/config.h +++ b/keyboards/chimera_ls/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/chimera_ortho/config.h b/keyboards/chimera_ortho/config.h index 44c6212b17..4bf85eb88f 100644 --- a/keyboards/chimera_ortho/config.h +++ b/keyboards/chimera_ortho/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/chocopad/config.h b/keyboards/chocopad/config.h index bf861ccda4..2163ff8bc4 100644 --- a/keyboards/chocopad/config.h +++ b/keyboards/chocopad/config.h @@ -40,10 +40,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLIGHT_HUE_STEP 8 @@ -56,4 +52,4 @@ #define ws2812_PORTREG PORTD #define ws2812_DDRREG DDRD -#endif \ No newline at end of file +#endif diff --git a/keyboards/clueboard/60/config.h b/keyboards/clueboard/60/config.h index 5c5a86296f..a862d2cda3 100644 --- a/keyboards/clueboard/60/config.h +++ b/keyboards/clueboard/60/config.h @@ -49,9 +49,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 6 -/* Prevent modifiers from being stuck on after layer changes. */ -#define PREVENT_STUCK_MODIFIERS - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ //#define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/clueboard/66/keymaps/bloodlvst/config.h b/keyboards/clueboard/66/keymaps/bloodlvst/config.h index 320401dbda..456936cf93 100644 --- a/keyboards/clueboard/66/keymaps/bloodlvst/config.h +++ b/keyboards/clueboard/66/keymaps/bloodlvst/config.h @@ -3,6 +3,5 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS #define DISABLE_SPACE_CADET_ROLLOVER #endif diff --git a/keyboards/comet46/config.h b/keyboards/comet46/config.h index 90d923f90b..2421f53412 100644 --- a/keyboards/comet46/config.h +++ b/keyboards/comet46/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/contra/config.h b/keyboards/contra/config.h index 85077ed46a..c6bb374da2 100755 --- a/keyboards/contra/config.h +++ b/keyboards/contra/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 diff --git a/keyboards/contra/keymaps/ryanm101/config.h b/keyboards/contra/keymaps/ryanm101/config.h index 9a458b892d..224a4a37d0 100644 --- a/keyboards/contra/keymaps/ryanm101/config.h +++ b/keyboards/contra/keymaps/ryanm101/config.h @@ -3,7 +3,6 @@ #include "config_common.h" -#define PREVENT_STUCK_MODIFIERS #define TAPPING_TERM 200 #ifdef AUDIO_ENABLE @@ -28,7 +27,7 @@ /* enable basic MIDI features: - MIDI notes can be sent when in Music mode is on */ - + #define MIDI_BASIC /* enable advanced MIDI features: @@ -42,4 +41,4 @@ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ //#define MIDI_TONE_KEYCODE_OCTAVES 2 -#endif \ No newline at end of file +#endif diff --git a/keyboards/crawlpad/config.h b/keyboards/crawlpad/config.h index a07c79cd20..c72be83f28 100755 --- a/keyboards/crawlpad/config.h +++ b/keyboards/crawlpad/config.h @@ -40,9 +40,6 @@ false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/crkbd/keymaps/default/config.h b/keyboards/crkbd/keymaps/default/config.h index 8d25f7cbc6..c573530f74 100644 --- a/keyboards/crkbd/keymaps/default/config.h +++ b/keyboards/crkbd/keymaps/default/config.h @@ -36,7 +36,6 @@ along with this program. If not, see . #define USE_SERIAL_PD2 -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/dichotemy/config.h b/keyboards/dichotemy/config.h index b3bd6d9421..1d92cf74e5 100644 --- a/keyboards/dichotemy/config.h +++ b/keyboards/dichotemy/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/dilly/config.h b/keyboards/dilly/config.h index 97a6e533bb..d9ca4597cf 100644 --- a/keyboards/dilly/config.h +++ b/keyboards/dilly/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLIGHT_HUE_STEP 8 @@ -59,4 +55,4 @@ #define ws2812_PORTREG PORTD #define ws2812_DDRREG DDRD -#endif \ No newline at end of file +#endif diff --git a/keyboards/dz60/config.h b/keyboards/dz60/config.h index 8e1a5ae5f5..e58eae0858 100644 --- a/keyboards/dz60/config.h +++ b/keyboards/dz60/config.h @@ -41,9 +41,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 16 diff --git a/keyboards/dz60/keymaps/LEdiodes/config.h b/keyboards/dz60/keymaps/LEdiodes/config.h index bb78d9bb66..4f991b9ca2 100644 --- a/keyboards/dz60/keymaps/LEdiodes/config.h +++ b/keyboards/dz60/keymaps/LEdiodes/config.h @@ -41,9 +41,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 16 diff --git a/keyboards/ergodone/config.h b/keyboards/ergodone/config.h index 1feff26aa7..2c764d782c 100644 --- a/keyboards/ergodone/config.h +++ b/keyboards/ergodone/config.h @@ -53,8 +53,6 @@ /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 -#define PREVENT_STUCK_MODIFIERS - #define USB_MAX_POWER_CONSUMPTION 500 /* NKRO */ diff --git a/keyboards/ergodox_ez/config.h b/keyboards/ergodox_ez/config.h index 07a9b54977..7a350183b1 100644 --- a/keyboards/ergodox_ez/config.h +++ b/keyboards/ergodox_ez/config.h @@ -97,8 +97,6 @@ along with this program. If not, see . */ #define DEBOUNCE 15 -#define PREVENT_STUCK_MODIFIERS - #define USB_MAX_POWER_CONSUMPTION 500 // RGB backlight diff --git a/keyboards/ergodox_ez/keymaps/heartrobotninja/rules.mk b/keyboards/ergodox_ez/keymaps/heartrobotninja/rules.mk index 38112a9065..db5e5d1558 100644 --- a/keyboards/ergodox_ez/keymaps/heartrobotninja/rules.mk +++ b/keyboards/ergodox_ez/keymaps/heartrobotninja/rules.mk @@ -13,6 +13,7 @@ AUTOLOG_ENABLE = no RGBLIGHT_ENABLE = yes RGBLIGHT_ANIMATION = yes EXTRAKEY_ENABLE = yes +LEADER_ENABLE = yes OPT_DEFS += -DUSER_PRINT @@ -31,4 +32,4 @@ OPT_DEFS += -DKEYMAP_VERSION=\"$(KEYMAP_VERSION)\\\#$(KEYMAP_BRANCH)\" ifndef QUANTUM_DIR include ../../../../Makefile -endif \ No newline at end of file +endif diff --git a/keyboards/ergodox_ez/keymaps/vim/vim.h b/keyboards/ergodox_ez/keymaps/vim/vim.h index e9b682fd3f..7565c6e3e6 100644 --- a/keyboards/ergodox_ez/keymaps/vim/vim.h +++ b/keyboards/ergodox_ez/keymaps/vim/vim.h @@ -9,7 +9,6 @@ #define PRESS(keycode) register_code16(keycode) #define RELEASE(keycode) unregister_code16(keycode) -#define PREVENT_STUCK_MODIFIERS uint16_t VIM_QUEUE = KC_NO; diff --git a/keyboards/ergodox_infinity/keymaps/gordon/config.h b/keyboards/ergodox_infinity/keymaps/gordon/config.h index 88d495b12b..772ce0bac9 100644 --- a/keyboards/ergodox_infinity/keymaps/gordon/config.h +++ b/keyboards/ergodox_infinity/keymaps/gordon/config.h @@ -15,8 +15,6 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#define PREVENT_STUCK_MODIFIERS - #undef IGNORE_MOD_TAP_INTERRUPT #define IGNORE_MOD_TAP_INTERRUPT diff --git a/keyboards/ergodox_infinity/keymaps/narze/config.h b/keyboards/ergodox_infinity/keymaps/narze/config.h index 8174edd359..551327a126 100644 --- a/keyboards/ergodox_infinity/keymaps/narze/config.h +++ b/keyboards/ergodox_infinity/keymaps/narze/config.h @@ -13,7 +13,6 @@ #define IGNORE_MOD_TAP_INTERRUPT #define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS #undef MOUSEKEY_DELAY #define MOUSEKEY_DELAY 100 diff --git a/keyboards/ergodox_infinity/keymaps/not-quite-neo/rules.mk b/keyboards/ergodox_infinity/keymaps/not-quite-neo/rules.mk index 75624bb8c6..74505bd69e 100644 --- a/keyboards/ergodox_infinity/keymaps/not-quite-neo/rules.mk +++ b/keyboards/ergodox_infinity/keymaps/not-quite-neo/rules.mk @@ -1,2 +1,3 @@ BACKLIGHT_ENABLE = yes -UNICODE_ENABLE = yes \ No newline at end of file +UNICODE_ENABLE = yes +LEADER_ENABLE = yes diff --git a/keyboards/ergoinu/config.h b/keyboards/ergoinu/config.h index 4b7c584005..de72635b19 100644 --- a/keyboards/ergoinu/config.h +++ b/keyboards/ergoinu/config.h @@ -31,8 +31,6 @@ along with this program. If not, see . #define PRODUCT ergoinu #define DESCRIPTION An (Not Portable But Small) Ergonomic split keyboard - -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/ergotravel/keymaps/ckofy/config.h b/keyboards/ergotravel/keymaps/ckofy/config.h index caae080d70..41ec06657e 100644 --- a/keyboards/ergotravel/keymaps/ckofy/config.h +++ b/keyboards/ergotravel/keymaps/ckofy/config.h @@ -33,9 +33,6 @@ along with this program. If not, see . #define TAPPING_TOGGLE 2 -// required if modifiers are defined in layers besided the default one. -#define PREVENT_STUCK_MODIFIERS - #undef RGBLED_NUM #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 12 diff --git a/keyboards/felix/config.h b/keyboards/felix/config.h index f70089af49..003fe87dc8 100644 --- a/keyboards/felix/config.h +++ b/keyboards/felix/config.h @@ -42,8 +42,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS /* there is no rgb underglow by default. */ #define RGB_DI_PIN @@ -53,4 +51,4 @@ #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 -#endif \ No newline at end of file +#endif diff --git a/keyboards/four_banger/config.h b/keyboards/four_banger/config.h index 96011cbdfa..8dceff5db5 100644 --- a/keyboards/four_banger/config.h +++ b/keyboards/four_banger/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E6 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS @@ -55,4 +52,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/fourier/keymaps/jennetters/config.h b/keyboards/fourier/keymaps/jennetters/config.h index 87cda7b5c9..5f99c65ad5 100644 --- a/keyboards/fourier/keymaps/jennetters/config.h +++ b/keyboards/fourier/keymaps/jennetters/config.h @@ -22,10 +22,7 @@ along with this program. If not, see . #define TAPPING_TERM 100 -/* Try to prevent sticky keys */ -#define PREVENT_STUCK_MODIFIERS - /* Use I2C or Serial, not both */ #define USE_SERIAL -// #define USE_I2C \ No newline at end of file +// #define USE_I2C diff --git a/keyboards/fractal/config.h b/keyboards/fractal/config.h index 30b703b6e6..1a5901f984 100755 --- a/keyboards/fractal/config.h +++ b/keyboards/fractal/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 diff --git a/keyboards/frosty_flake/keymaps/nikchi/rules.mk b/keyboards/frosty_flake/keymaps/nikchi/rules.mk index ad86e82d20..b21eb64044 100644 --- a/keyboards/frosty_flake/keymaps/nikchi/rules.mk +++ b/keyboards/frosty_flake/keymaps/nikchi/rules.mk @@ -1,5 +1,5 @@ # Build Options -# change to "no" to disable the options, or define them in the Makefile in +# change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) @@ -17,6 +17,7 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes +LEADER_ENABLE = yes ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/gh80_3000/config.h b/keyboards/gh80_3000/config.h index 83d30129a1..ca72aba5aa 100644 --- a/keyboards/gh80_3000/config.h +++ b/keyboards/gh80_3000/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 @@ -55,4 +51,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/gherkin/config.h b/keyboards/gherkin/config.h index 4607962d7c..34f38e35c2 100644 --- a/keyboards/gherkin/config.h +++ b/keyboards/gherkin/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 @@ -55,4 +51,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/gherkin/keymaps/talljoe_gherkin/config.h b/keyboards/gherkin/keymaps/talljoe_gherkin/config.h index 3e9e692d3c..7fa3bf328e 100644 --- a/keyboards/gherkin/keymaps/talljoe_gherkin/config.h +++ b/keyboards/gherkin/keymaps/talljoe_gherkin/config.h @@ -3,6 +3,4 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS - -#endif \ No newline at end of file +#endif diff --git a/keyboards/gonnerd/keymaps/gam3cat/config.h b/keyboards/gonnerd/keymaps/gam3cat/config.h index a3819d3a59..d86da86e40 100644 --- a/keyboards/gonnerd/keymaps/gam3cat/config.h +++ b/keyboards/gonnerd/keymaps/gam3cat/config.h @@ -1,7 +1,6 @@ #include "../../config.h" //GRAVE_ESC override for CTRL+SHIFT+ESC Windows task manager shortcut. #define GRAVE_ESC_CTRL_OVERRIDE -#define PREVENT_STUCK_MODIFIERS //Delay matrix scan for tap dance, reduce to activate modifier keys faster. //#define TAPPING_TERM 200 diff --git a/keyboards/hadron/keymaps/default/config.h b/keyboards/hadron/keymaps/default/config.h index 0f349ad932..09922b61bc 100644 --- a/keyboards/hadron/keymaps/default/config.h +++ b/keyboards/hadron/keymaps/default/config.h @@ -5,7 +5,6 @@ #define LEADER_TIMEOUT 300 //#define BACKLIGHT_BREATHING -#define PREVENT_STUCK_MODIFIERS #define USE_I2C #define SSD1306OLED diff --git a/keyboards/hadron/keymaps/side_numpad/config.h b/keyboards/hadron/keymaps/side_numpad/config.h index 0f349ad932..09922b61bc 100644 --- a/keyboards/hadron/keymaps/side_numpad/config.h +++ b/keyboards/hadron/keymaps/side_numpad/config.h @@ -5,7 +5,6 @@ #define LEADER_TIMEOUT 300 //#define BACKLIGHT_BREATHING -#define PREVENT_STUCK_MODIFIERS #define USE_I2C #define SSD1306OLED diff --git a/keyboards/handwired/MS_sculpt_mobile/config.h b/keyboards/handwired/MS_sculpt_mobile/config.h index f89514278d..c3bdf333e2 100644 --- a/keyboards/handwired/MS_sculpt_mobile/config.h +++ b/keyboards/handwired/MS_sculpt_mobile/config.h @@ -28,10 +28,10 @@ along with this program. If not, see . #define DESCRIPTION 6000 /* key matrix size */ -#define MATRIX_ROWS 8 -#define MATRIX_COLS 18 +#define MATRIX_ROWS 8 +#define MATRIX_COLS 18 -#ifdef ASTAR +#ifdef ASTAR #define PRODUCT sculpt mobile astar /*0 1 2 3 4 5 6 7 8 */ #define MATRIX_ROW_PINS {D7, C6, D4, D0, D1, D3, D2, E2} @@ -95,6 +95,4 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION -#define PREVENT_STUCK_MODIFIERS - #endif diff --git a/keyboards/handwired/atreus50/keymaps/ajp10304/config.h b/keyboards/handwired/atreus50/keymaps/ajp10304/config.h index 6916d1a7d4..f5e6bbabe6 100644 --- a/keyboards/handwired/atreus50/keymaps/ajp10304/config.h +++ b/keyboards/handwired/atreus50/keymaps/ajp10304/config.h @@ -3,8 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS - #undef MATRIX_ROW_PINS #undef MATRIX_COL_PINS diff --git a/keyboards/handwired/dactyl/config.h b/keyboards/handwired/dactyl/config.h index a990cc7208..08931ecd34 100644 --- a/keyboards/handwired/dactyl/config.h +++ b/keyboards/handwired/dactyl/config.h @@ -63,8 +63,6 @@ along with this program. If not, see . /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 15 -#define PREVENT_STUCK_MODIFIERS - #define USB_MAX_POWER_CONSUMPTION 500 #endif diff --git a/keyboards/handwired/kbod/config.h b/keyboards/handwired/kbod/config.h index f3d0c8bf2d..a3f3e3908a 100644 --- a/keyboards/handwired/kbod/config.h +++ b/keyboards/handwired/kbod/config.h @@ -48,7 +48,7 @@ along with this program. If not, see . /* COL2ROW, ROW2COL, or CUSTOM_MATRIX */ #define DIODE_DIRECTION COL2ROW - + // #define BACKLIGHT_PIN B7 // #define BACKLIGHT_BREATHING // #define BACKLIGHT_LEVELS 3 @@ -159,8 +159,6 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION -#define PREVENT_STUCK_MODIFIERS - #undef TAPPING_TOGGLE #define TAPPING_TOGGLE 2 diff --git a/keyboards/handwired/promethium/keymaps/default/config.h b/keyboards/handwired/promethium/keymaps/default/config.h index fa86e22479..2064f3676a 100644 --- a/keyboards/handwired/promethium/keymaps/default/config.h +++ b/keyboards/handwired/promethium/keymaps/default/config.h @@ -11,8 +11,6 @@ /* skip bootmagic and eeconfig */ #define BOOTMAGIC_KEY_SKIP KC_SPACE -#define PREVENT_STUCK_MODIFIERS - #define RGBSPS_ENABLE #define RGBSPS_DEMO_ENABLE diff --git a/keyboards/handwired/promethium/keymaps/priyadi/config.h b/keyboards/handwired/promethium/keymaps/priyadi/config.h index fa86e22479..2064f3676a 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/config.h +++ b/keyboards/handwired/promethium/keymaps/priyadi/config.h @@ -11,8 +11,6 @@ /* skip bootmagic and eeconfig */ #define BOOTMAGIC_KEY_SKIP KC_SPACE -#define PREVENT_STUCK_MODIFIERS - #define RGBSPS_ENABLE #define RGBSPS_DEMO_ENABLE diff --git a/keyboards/handwired/space_oddity/config.h b/keyboards/handwired/space_oddity/config.h index 9c9361ced7..46d854099c 100644 --- a/keyboards/handwired/space_oddity/config.h +++ b/keyboards/handwired/space_oddity/config.h @@ -49,10 +49,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 diff --git a/keyboards/helix/pico/config.h b/keyboards/helix/pico/config.h index b49f0173b4..41edfcbc20 100644 --- a/keyboards/helix/pico/config.h +++ b/keyboards/helix/pico/config.h @@ -28,7 +28,6 @@ along with this program. If not, see . #define DESCRIPTION A split keyboard for the cheap makers -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/helix/rev1/keymaps/OLED_sample/config.h b/keyboards/helix/rev1/keymaps/OLED_sample/config.h index 0e1b787a5a..5e8989d96f 100644 --- a/keyboards/helix/rev1/keymaps/OLED_sample/config.h +++ b/keyboards/helix/rev1/keymaps/OLED_sample/config.h @@ -35,7 +35,8 @@ along with this program. If not, see . #define SSD1306OLED -#define PREVENT_STUCK_MODIFIERS +#define USE_SERIAL_PD2 + #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h index 058236122f..b354d312d5 100644 --- a/keyboards/helix/rev2/config.h +++ b/keyboards/helix/rev2/config.h @@ -28,7 +28,6 @@ along with this program. If not, see . #define DESCRIPTION A split keyboard for the cheap makers -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/hhkb/keymaps/blakedietz/rules.mk b/keyboards/hhkb/keymaps/blakedietz/rules.mk index 7c16b2c98d..7d97e7a524 100644 --- a/keyboards/hhkb/keymaps/blakedietz/rules.mk +++ b/keyboards/hhkb/keymaps/blakedietz/rules.mk @@ -1,2 +1,3 @@ TAP_DANCE_ENABLE = no UNICODE_ENABLE = no +LEADER_ENABLE = yes diff --git a/keyboards/infinity60/config.h b/keyboards/infinity60/config.h index 8306c8f7ef..c1e9ec5b1f 100644 --- a/keyboards/infinity60/config.h +++ b/keyboards/infinity60/config.h @@ -18,8 +18,6 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#define PREVENT_STUCK_MODIFIERS - /* USB Device descriptor parameter */ #define VENDOR_ID 0x1c11 #define PRODUCT_ID 0xb04d diff --git a/keyboards/iris/keymaps/davidrambo/config.h b/keyboards/iris/keymaps/davidrambo/config.h index 01e078e326..2cdff4213b 100644 --- a/keyboards/iris/keymaps/davidrambo/config.h +++ b/keyboards/iris/keymaps/davidrambo/config.h @@ -27,7 +27,6 @@ along with this program. If not, see . /* Select hand configuration */ #define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS #define MASTER_LEFT // #define MASTER_RIGHT // #define EE_HANDS diff --git a/keyboards/iris/keymaps/jennetters/config.h b/keyboards/iris/keymaps/jennetters/config.h index a3c0634f52..42f91bd027 100644 --- a/keyboards/iris/keymaps/jennetters/config.h +++ b/keyboards/iris/keymaps/jennetters/config.h @@ -19,9 +19,6 @@ along with this program. If not, see . #define TAPPING_TERM 150 -/* Try to prevent sticky keys */ -#define PREVENT_STUCK_MODIFIERS - /* Use I2C or Serial, not both */ #define USE_SERIAL @@ -38,4 +35,4 @@ along with this program. If not, see . #define RGBLED_NUM 12 #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8 -#define RGBLIGHT_VAL_STEP 8 \ No newline at end of file +#define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/iris/keymaps/krusli/config.h b/keyboards/iris/keymaps/krusli/config.h index a53c746ad9..72e35c4728 100644 --- a/keyboards/iris/keymaps/krusli/config.h +++ b/keyboards/iris/keymaps/krusli/config.h @@ -20,8 +20,6 @@ along with this program. If not, see . #include "config_common.h" -// #define PREVENT_STUCK_MODIFIERS - /* Use I2C or Serial, not both */ #define USE_SERIAL diff --git a/keyboards/iris/keymaps/xyverz/config.h b/keyboards/iris/keymaps/xyverz/config.h index 0c61a8eac8..b820a0753d 100644 --- a/keyboards/iris/keymaps/xyverz/config.h +++ b/keyboards/iris/keymaps/xyverz/config.h @@ -23,8 +23,6 @@ along with this program. If not, see . #define USE_SERIAL #define EE_HANDS -#define PREVENT_STUCK_MODIFIERS - #undef PRODUCT #define PRODUCT Iris Keyboard diff --git a/keyboards/jc65/v32u4/keymaps/gam3cat/config.h b/keyboards/jc65/v32u4/keymaps/gam3cat/config.h index a3819d3a59..d86da86e40 100644 --- a/keyboards/jc65/v32u4/keymaps/gam3cat/config.h +++ b/keyboards/jc65/v32u4/keymaps/gam3cat/config.h @@ -1,7 +1,6 @@ #include "../../config.h" //GRAVE_ESC override for CTRL+SHIFT+ESC Windows task manager shortcut. #define GRAVE_ESC_CTRL_OVERRIDE -#define PREVENT_STUCK_MODIFIERS //Delay matrix scan for tap dance, reduce to activate modifier keys faster. //#define TAPPING_TERM 200 diff --git a/keyboards/jj40/keymaps/ajp10304/config.h b/keyboards/jj40/keymaps/ajp10304/config.h deleted file mode 100644 index 11cafbefcb..0000000000 --- a/keyboards/jj40/keymaps/ajp10304/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif diff --git a/keyboards/jj40/keymaps/fun40/config.h b/keyboards/jj40/keymaps/fun40/config.h index 89807d84ad..f2b5d264e7 100644 --- a/keyboards/jj40/keymaps/fun40/config.h +++ b/keyboards/jj40/keymaps/fun40/config.h @@ -4,6 +4,5 @@ #include "../../config.h" #define FORCE_NKRO -#define PREVENT_STUCK_MODIFIERS #endif diff --git a/keyboards/jj40/keymaps/krusli/config.h b/keyboards/jj40/keymaps/krusli/config.h index 6d98a37a67..e710dbbb60 100644 --- a/keyboards/jj40/keymaps/krusli/config.h +++ b/keyboards/jj40/keymaps/krusli/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS // #define TAPPING_TERM 300 #endif diff --git a/keyboards/jj40/keymaps/oscillope/config.h b/keyboards/jj40/keymaps/oscillope/config.h index d7f991fa91..e812903de9 100644 --- a/keyboards/jj40/keymaps/oscillope/config.h +++ b/keyboards/jj40/keymaps/oscillope/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS #define TAPPING_TERM 200 #endif diff --git a/keyboards/jj40/keymaps/suzuken/config.h b/keyboards/jj40/keymaps/suzuken/config.h index 52aaa8f24d..b1d74e1e69 100644 --- a/keyboards/jj40/keymaps/suzuken/config.h +++ b/keyboards/jj40/keymaps/suzuken/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS #define TAPPING_TERM 300 #endif diff --git a/keyboards/jj40/keymaps/waples/config.h b/keyboards/jj40/keymaps/waples/config.h index 52aaa8f24d..b1d74e1e69 100644 --- a/keyboards/jj40/keymaps/waples/config.h +++ b/keyboards/jj40/keymaps/waples/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS #define TAPPING_TERM 300 #endif diff --git a/keyboards/jm60/config.h b/keyboards/jm60/config.h index 847cf20780..cb5c90bb19 100644 --- a/keyboards/jm60/config.h +++ b/keyboards/jm60/config.h @@ -18,8 +18,6 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#define PREVENT_STUCK_MODIFIERS - /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED #define PRODUCT_ID 0x6464 diff --git a/keyboards/k_type/config.h b/keyboards/k_type/config.h index d19e0ff649..4937d9ad99 100644 --- a/keyboards/k_type/config.h +++ b/keyboards/k_type/config.h @@ -18,8 +18,6 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#define PREVENT_STUCK_MODIFIERS - /* USB Device descriptor parameter */ #define VENDOR_ID 0x1c11 #define PRODUCT_ID 0xb04d diff --git a/keyboards/katana60/config.h b/keyboards/katana60/config.h index 169cffb420..aaf2b5d544 100644 --- a/keyboards/katana60/config.h +++ b/keyboards/katana60/config.h @@ -48,7 +48,7 @@ along with this program. If not, see . /* COL2ROW, ROW2COL, or CUSTOM_MATRIX */ #define DIODE_DIRECTION ROW2COL - + // #define BACKLIGHT_PIN B7 // #define BACKLIGHT_BREATHING // #define BACKLIGHT_LEVELS 3 @@ -111,7 +111,6 @@ along with this program. If not, see . ) #define TAPPING_TERM 200 -#define PREVENT_STUCK_MODIFIERS /* control how magic key switches layers */ //#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true diff --git a/keyboards/kbd75/config.h b/keyboards/kbd75/config.h index f76d9082fb..726afcaf6e 100644 --- a/keyboards/kbd75/config.h +++ b/keyboards/kbd75/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/kinesis/keymaps/insertsnideremarks/config.h b/keyboards/kinesis/keymaps/insertsnideremarks/config.h index 3548fa3486..9ce094be51 100644 --- a/keyboards/kinesis/keymaps/insertsnideremarks/config.h +++ b/keyboards/kinesis/keymaps/insertsnideremarks/config.h @@ -5,7 +5,6 @@ #include "../../config.h" // place overrides here -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_TERM 175 #define TAPPING_TOGGLE 2 diff --git a/keyboards/lets_split/keymaps/OLED_sample/config.h b/keyboards/lets_split/keymaps/OLED_sample/config.h index e8632fe61d..6aa909d284 100644 --- a/keyboards/lets_split/keymaps/OLED_sample/config.h +++ b/keyboards/lets_split/keymaps/OLED_sample/config.h @@ -38,8 +38,6 @@ along with this program. If not, see . #define SSD1306OLED //#define OLED_ROTATE180 - -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/lets_split/keymaps/adam/config.h b/keyboards/lets_split/keymaps/adam/config.h index ff29eb1bde..59a2e5db72 100644 --- a/keyboards/lets_split/keymaps/adam/config.h +++ b/keyboards/lets_split/keymaps/adam/config.h @@ -43,7 +43,6 @@ along with this program. If not, see . #undef TAPPING_TERM #define TAPPING_TERM 200 //At 500 some bad logic takes hold -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define PERMISSIVE_HOLD diff --git a/keyboards/lets_split/keymaps/khord/config.h b/keyboards/lets_split/keymaps/khord/config.h index 4ebdbad769..71ec20dbc8 100644 --- a/keyboards/lets_split/keymaps/khord/config.h +++ b/keyboards/lets_split/keymaps/khord/config.h @@ -25,9 +25,6 @@ along with this program. If not, see . #define TAPPING_TERM 150 -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - /* Use I2C or Serial, not both */ #define USE_SERIAL diff --git a/keyboards/lets_split/keymaps/piemod/config.h b/keyboards/lets_split/keymaps/piemod/config.h index 001b62e41b..1b3fd7544e 100644 --- a/keyboards/lets_split/keymaps/piemod/config.h +++ b/keyboards/lets_split/keymaps/piemod/config.h @@ -43,7 +43,6 @@ along with this program. If not, see . #define RGBLIGHT_EFFECT_KNIGHT_LENGTH 1 // Typing Options -#define PREVENT_STUCK_MODIFIERS #define QMK_KEYS_PER_SCAN 4 #endif diff --git a/keyboards/lets_split/keymaps/waples/config.h b/keyboards/lets_split/keymaps/waples/config.h index 98ebeff455..5221fd011a 100644 --- a/keyboards/lets_split/keymaps/waples/config.h +++ b/keyboards/lets_split/keymaps/waples/config.h @@ -12,6 +12,4 @@ // #define MASTER_RIGHT #define EE_HANDS // We like to have choices I guess -#define PREVENT_STUCK_MODIFIERS // When switching layers, this will release all mods - #endif diff --git a/keyboards/lets_split/keymaps/xk/config.h b/keyboards/lets_split/keymaps/xk/config.h index c75ed12cc8..a5cd518576 100644 --- a/keyboards/lets_split/keymaps/xk/config.h +++ b/keyboards/lets_split/keymaps/xk/config.h @@ -37,7 +37,6 @@ the Free Software Foundation, either version 2 of the License, or #define EE_HANDS -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define PERMISSIVE_HOLD diff --git a/keyboards/m10a/keymaps/gam3cat/config.h b/keyboards/m10a/keymaps/gam3cat/config.h deleted file mode 100644 index 73bc50bc2d..0000000000 --- a/keyboards/m10a/keymaps/gam3cat/config.h +++ /dev/null @@ -1,2 +0,0 @@ -#include "../../config.h" -#define PREVENT_STUCK_MODIFIERS diff --git a/keyboards/mechmini/v2/config.h b/keyboards/mechmini/v2/config.h index 58c751e0f8..e0922bb7e2 100755 --- a/keyboards/mechmini/v2/config.h +++ b/keyboards/mechmini/v2/config.h @@ -62,9 +62,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/melody96/config.h b/keyboards/melody96/config.h index 6083dcf751..67123a7e52 100644 --- a/keyboards/melody96/config.h +++ b/keyboards/melody96/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/minidox/keymaps/alairock/config.h b/keyboards/minidox/keymaps/alairock/config.h index 4456060319..3649fdd12c 100644 --- a/keyboards/minidox/keymaps/alairock/config.h +++ b/keyboards/minidox/keymaps/alairock/config.h @@ -36,5 +36,4 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 10 #define RGBLIGHT_SAT_STEP 17 #define RGBLIGHT_VAL_STEP 17 -#define PREVENT_STUCK_MODIFIERS #endif diff --git a/keyboards/minidox/keymaps/khitsule/config.h b/keyboards/minidox/keymaps/khitsule/config.h index 7023548646..645e80ee8f 100644 --- a/keyboards/minidox/keymaps/khitsule/config.h +++ b/keyboards/minidox/keymaps/khitsule/config.h @@ -1,8 +1,6 @@ #ifndef CONFIG_USER_H #define CONFIG_USER_H -#define PREVENT_STUCK_MODIFIERS - #define IGNORE_MOD_TAP_INTERRUPT -#endif \ No newline at end of file +#endif diff --git a/keyboards/mint60/config.h b/keyboards/mint60/config.h index 37b69e93a1..51c586e636 100644 --- a/keyboards/mint60/config.h +++ b/keyboards/mint60/config.h @@ -29,7 +29,6 @@ along with this program. If not, see . #define PRODUCT Mint60 #define DESCRIPTION A row staggered split keyboard -#define PREVENT_STUCK_MODIFIERS #define TAPPING_FORCE_HOLD #define TAPPING_TERM 100 diff --git a/keyboards/mitosis/config.h b/keyboards/mitosis/config.h index 6101ee1237..5cfd2e4b12 100644 --- a/keyboards/mitosis/config.h +++ b/keyboards/mitosis/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/niu_mini/config.h b/keyboards/niu_mini/config.h index 2f22306160..b9d3ed4e9d 100644 --- a/keyboards/niu_mini/config.h +++ b/keyboards/niu_mini/config.h @@ -64,9 +64,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/novelpad/config.h b/keyboards/novelpad/config.h index 0d6a713433..3a47c0eb65 100755 --- a/keyboards/novelpad/config.h +++ b/keyboards/novelpad/config.h @@ -53,9 +53,6 @@ along with this program. If not, see . false \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define BACKLIGHT_LEVELS 10 #define BACKLIGHT_PIN B7 diff --git a/keyboards/noxary/268/config.h b/keyboards/noxary/268/config.h index b2cb95e95c..7eec79a1bc 100644 --- a/keyboards/noxary/268/config.h +++ b/keyboards/noxary/268/config.h @@ -60,9 +60,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - /* ws2812b options */ #define RGB_DI_PIN B5 #ifdef RGB_DI_PIN @@ -73,4 +70,4 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/ok60/config.h b/keyboards/ok60/config.h index 61c2fa0ed3..db7b74e587 100644 --- a/keyboards/ok60/config.h +++ b/keyboards/ok60/config.h @@ -71,9 +71,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN F6 #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 10 diff --git a/keyboards/omnikey_blackheart/config.h b/keyboards/omnikey_blackheart/config.h index 14b4a5f172..94412cfa67 100644 --- a/keyboards/omnikey_blackheart/config.h +++ b/keyboards/omnikey_blackheart/config.h @@ -45,10 +45,6 @@ /* force n-key rollover*/ #define FORCE_NKRO -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 @@ -57,4 +53,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/paladin64/config.h b/keyboards/paladin64/config.h index 27f54bf161..a5280f4d48 100755 --- a/keyboards/paladin64/config.h +++ b/keyboards/paladin64/config.h @@ -110,8 +110,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS #define RGB_DI_PIN D0 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/pegasushoof/keymaps/citadel/config.h b/keyboards/pegasushoof/keymaps/citadel/config.h index e8eafe2e17..2d27ff392d 100644 --- a/keyboards/pegasushoof/keymaps/citadel/config.h +++ b/keyboards/pegasushoof/keymaps/citadel/config.h @@ -8,7 +8,4 @@ #undef PRODUCT #define PRODUCT Pegasus Hoof Citadel -/* necessary option for this keymap, because CAPS is redefined in Layer 0 */ -#define PREVENT_STUCK_MODIFIERS - #endif diff --git a/keyboards/planck/keymaps/ajp10304/config.h b/keyboards/planck/keymaps/ajp10304/config.h deleted file mode 100644 index 11cafbefcb..0000000000 --- a/keyboards/planck/keymaps/ajp10304/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif diff --git a/keyboards/planck/keymaps/altgr/config.h b/keyboards/planck/keymaps/altgr/config.h index d55258c02b..e517a8b24b 100644 --- a/keyboards/planck/keymaps/altgr/config.h +++ b/keyboards/planck/keymaps/altgr/config.h @@ -3,9 +3,6 @@ #include "../../config.h" -// required because lower/raise modifiers are redefined by colemak-dh -#define PREVENT_STUCK_MODIFIERS - // tap dance key press termination interval #define TAPPING_TERM 250 diff --git a/keyboards/planck/keymaps/am/config.h b/keyboards/planck/keymaps/am/config.h index b2b87045b8..1ae457e3b8 100644 --- a/keyboards/planck/keymaps/am/config.h +++ b/keyboards/planck/keymaps/am/config.h @@ -1,8 +1,5 @@ #pragma once -/* Prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #ifdef AUDIO_ENABLE #define STARTUP_SONG SONG(PLANCK_SOUND) diff --git a/keyboards/planck/keymaps/andylikescandy/config.h b/keyboards/planck/keymaps/andylikescandy/config.h index 0de5f3db0c..01169db2aa 100644 --- a/keyboards/planck/keymaps/andylikescandy/config.h +++ b/keyboards/planck/keymaps/andylikescandy/config.h @@ -17,9 +17,6 @@ #define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS - - /* * MIDI options */ diff --git a/keyboards/planck/keymaps/bone2planck/config.h b/keyboards/planck/keymaps/bone2planck/config.h deleted file mode 100644 index 3e9e692d3c..0000000000 --- a/keyboards/planck/keymaps/bone2planck/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/davidrambo/config.h b/keyboards/planck/keymaps/davidrambo/config.h index c3bebf5799..2decb3dc8d 100644 --- a/keyboards/planck/keymaps/davidrambo/config.h +++ b/keyboards/planck/keymaps/davidrambo/config.h @@ -3,7 +3,6 @@ #define CONFIG_USER_H #define TAPPING_TERM 200 #include "../../config.h" -#define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS +#define PERMISSIVE_HOLD -#endif \ No newline at end of file +#endif diff --git a/keyboards/planck/keymaps/dshields/config.h b/keyboards/planck/keymaps/dshields/config.h index 480ba453a2..9ba854ef04 100644 --- a/keyboards/planck/keymaps/dshields/config.h +++ b/keyboards/planck/keymaps/dshields/config.h @@ -10,7 +10,6 @@ #define _______ KC_TRNS #define XXXXXXX KC_NO -#define PREVENT_STUCK_MODIFIERS #define USB_MAX_POWER_CONSUMPTION 100 #define ONESHOT_TAP_TOGGLE 2 diff --git a/keyboards/planck/keymaps/espynn/keymap.c b/keyboards/planck/keymaps/espynn/keymap.c index 9cf508af6d..5615a78bf7 100644 --- a/keyboards/planck/keymaps/espynn/keymap.c +++ b/keyboards/planck/keymaps/espynn/keymap.c @@ -5,7 +5,6 @@ #ifdef BACKLIGHT_ENABLE #include "backlight.h" #endif -#define PREVENT_STUCK_MODIFIERS extern keymap_config_t keymap_config; // Symbolic names for macro IDs. diff --git a/keyboards/planck/keymaps/experimental/config.h b/keyboards/planck/keymaps/experimental/config.h index 0864b5fbc9..86cc4760bb 100644 --- a/keyboards/planck/keymaps/experimental/config.h +++ b/keyboards/planck/keymaps/experimental/config.h @@ -5,8 +5,6 @@ #define LEADER_TIMEOUT 300 #define BACKLIGHT_BREATHING -#define PREVENT_STUCK_MODIFIERS - /* ws2812 RGB LED */ #define RGB_DI_PIN B1 diff --git a/keyboards/planck/keymaps/experimental/rules.mk b/keyboards/planck/keymaps/experimental/rules.mk index b135dfca01..168d3cb9f0 100644 --- a/keyboards/planck/keymaps/experimental/rules.mk +++ b/keyboards/planck/keymaps/experimental/rules.mk @@ -18,10 +18,11 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. SWAP_HANDS_ENABLE = yes # Enable one-hand typing STENO_ENABLE = yes # Enable TX Bolt protocol for Stenography, requires VIRTSER and may not work with mouse keys +LEADER_ENABLE = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR include ../../../../Makefile -endif \ No newline at end of file +endif diff --git a/keyboards/planck/keymaps/hiea/config.h b/keyboards/planck/keymaps/hiea/config.h index 9bb5e08735..655cdf5db3 100644 --- a/keyboards/planck/keymaps/hiea/config.h +++ b/keyboards/planck/keymaps/hiea/config.h @@ -3,9 +3,6 @@ #include "../../config.h" -// required because lower/raise modifiers are redefined by colemak-dh -#define PREVENT_STUCK_MODIFIERS - // tap dance key press termination interval #define TAPPING_TERM 250 diff --git a/keyboards/planck/keymaps/hieax/config.h b/keyboards/planck/keymaps/hieax/config.h index 9bb5e08735..655cdf5db3 100644 --- a/keyboards/planck/keymaps/hieax/config.h +++ b/keyboards/planck/keymaps/hieax/config.h @@ -3,9 +3,6 @@ #include "../../config.h" -// required because lower/raise modifiers are redefined by colemak-dh -#define PREVENT_STUCK_MODIFIERS - // tap dance key press termination interval #define TAPPING_TERM 250 diff --git a/keyboards/planck/keymaps/ishtob/config.h b/keyboards/planck/keymaps/ishtob/config.h index e58ade0b0f..688607634c 100755 --- a/keyboards/planck/keymaps/ishtob/config.h +++ b/keyboards/planck/keymaps/ishtob/config.h @@ -2,7 +2,6 @@ #ifndef USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H - #ifdef AUDIO_ENABLE // #define STARTUP_SONG SONG(E1M1_DOOM) @@ -24,7 +23,6 @@ #define FORCE_NKRO #define LEADER_TIMEOUT 300 -#define PREVENT_STUCK_MODIFIERS #undef DEBOUNCE #define DEBOUNCE 0 diff --git a/keyboards/planck/keymaps/jarred/config.h b/keyboards/planck/keymaps/jarred/config.h index f98b8935e2..9e8f404c15 100644 --- a/keyboards/planck/keymaps/jarred/config.h +++ b/keyboards/planck/keymaps/jarred/config.h @@ -19,8 +19,6 @@ #include "config_common.h" -#define PREVENT_STUCK_MODIFIERS - #ifdef AUDIO_ENABLE #define STARTUP_SONG SONG(PLANCK_SOUND) #endif @@ -34,6 +32,6 @@ #define MOUSEKEY_WHEEL_DELAY 0 #define MOUSEKEY_WHEEL_MAX_SPEED 4 -#define MOUSEKEY_WHEEL_TIME_TO_MAX 255 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 255 #endif diff --git a/keyboards/planck/keymaps/jeremy-dev/keymap.c b/keyboards/planck/keymaps/jeremy-dev/keymap.c index 5aea443290..89b7e6b84a 100644 --- a/keyboards/planck/keymaps/jeremy-dev/keymap.c +++ b/keyboards/planck/keymaps/jeremy-dev/keymap.c @@ -1,7 +1,6 @@ // This is the personal keymap of Jeremy Cowgar (@jcowgar). It is written for the programmer. // Configuration options -#define PREVENT_STUCK_MODIFIERS #pragma message "You may need to add LAYOUT_planck_grid to your keymap layers - see default for an example" #include "planck.h" diff --git a/keyboards/planck/keymaps/kmontag42/rules.mk b/keyboards/planck/keymaps/kmontag42/rules.mk index b9f73934aa..0c100076be 100644 --- a/keyboards/planck/keymaps/kmontag42/rules.mk +++ b/keyboards/planck/keymaps/kmontag42/rules.mk @@ -1,4 +1,5 @@ UNICODE_ENABLE = yes +LEADER_ENABLE = yes ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/planck/keymaps/lae3/config.h b/keyboards/planck/keymaps/lae3/config.h deleted file mode 100644 index a28634e696..0000000000 --- a/keyboards/planck/keymaps/lae3/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef LAE3_KEYMAP_H -#define LAE3_KEYMAP_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif diff --git a/keyboards/planck/keymaps/mitch/config.h b/keyboards/planck/keymaps/mitch/config.h index 10591b3c8c..bb7989d90d 100644 --- a/keyboards/planck/keymaps/mitch/config.h +++ b/keyboards/planck/keymaps/mitch/config.h @@ -1,6 +1,5 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS // for the broken board #undef MATRIX_COL_PINS -#define MATRIX_COL_PINS { F1, F0, B0, B2, F4, F5, F6, F7, D4, D6, B4, D7 } \ No newline at end of file +#define MATRIX_COL_PINS { F1, F0, B0, B2, F4, F5, F6, F7, D4, D6, B4, D7 } diff --git a/keyboards/planck/keymaps/mitch/readme.md b/keyboards/planck/keymaps/mitch/readme.md index 3869304f44..9ed1133ef9 100644 --- a/keyboards/planck/keymaps/mitch/readme.md +++ b/keyboards/planck/keymaps/mitch/readme.md @@ -20,7 +20,3 @@ rest of the symbols, mostly mapped with the ten key numbers. The normal right shift key uses the `MT` macro to trigger Enter on tap and right shift when held. - -This keymap sets the `PREVENT_STUCK_MODIFIERS` flag to avoid the occasional WTF -moments when using a modifier keys and accidentally releasing them after moving -to a new layer. diff --git a/keyboards/planck/keymaps/narze/config.h b/keyboards/planck/keymaps/narze/config.h index e081a93b53..19d784b2be 100644 --- a/keyboards/planck/keymaps/narze/config.h +++ b/keyboards/planck/keymaps/narze/config.h @@ -33,10 +33,9 @@ #define IGNORE_MOD_TAP_INTERRUPT #define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS #define SUPER_DUPER_SOUND S__NOTE(_B1) #define MOUSEKEY_DELAY 100 -#endif \ No newline at end of file +#endif diff --git a/keyboards/planck/keymaps/neo2planck/config.h b/keyboards/planck/keymaps/neo2planck/config.h deleted file mode 100644 index 3e9e692d3c..0000000000 --- a/keyboards/planck/keymaps/neo2planck/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/priyadi/config.h b/keyboards/planck/keymaps/priyadi/config.h index 448ae3b908..876d057bf2 100644 --- a/keyboards/planck/keymaps/priyadi/config.h +++ b/keyboards/planck/keymaps/priyadi/config.h @@ -11,8 +11,6 @@ /* skip bootmagic and eeconfig */ #define BOOTMAGIC_KEY_SKIP KC_SPACE -#define PREVENT_STUCK_MODIFIERS - #define UNICODE_TYPE_DELAY 0 #define LAYOUT_DVORAK diff --git a/keyboards/planck/keymaps/sdothum/config.h b/keyboards/planck/keymaps/sdothum/config.h index 4b2cdeece1..8bed79e6f7 100644 --- a/keyboards/planck/keymaps/sdothum/config.h +++ b/keyboards/planck/keymaps/sdothum/config.h @@ -3,9 +3,6 @@ #include "../../config.h" -// required because lower/raise modifiers are redefined by colemak-dh -#define PREVENT_STUCK_MODIFIERS - // tap dance key press termination interval #define TAPPING_TERM 250 diff --git a/keyboards/planck/keymaps/steno/config.h b/keyboards/planck/keymaps/steno/config.h index 1879ab007f..4f99c7eb81 100644 --- a/keyboards/planck/keymaps/steno/config.h +++ b/keyboards/planck/keymaps/steno/config.h @@ -15,8 +15,6 @@ #define MUSIC_MASK (keycode != KC_NO) -#define PREVENT_STUCK_MODIFIERS - /* * MIDI options */ @@ -41,4 +39,4 @@ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ //#define MIDI_TONE_KEYCODE_OCTAVES 2 -#endif \ No newline at end of file +#endif diff --git a/keyboards/planck/keymaps/tehwalris/config.h b/keyboards/planck/keymaps/tehwalris/config.h index 4725e1426d..c5d55b9693 100644 --- a/keyboards/planck/keymaps/tehwalris/config.h +++ b/keyboards/planck/keymaps/tehwalris/config.h @@ -3,8 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS - #ifdef AUDIO_ENABLE // #define STARTUP_SONG SONG(PLANCK_SOUND) #define STARTUP_SONG SONG(NO_SOUND) @@ -27,7 +25,7 @@ /* enable basic MIDI features: - MIDI notes can be sent when in Music mode is on */ - + #define MIDI_BASIC /* enable advanced MIDI features: diff --git a/keyboards/planck/keymaps/vifon/config.h b/keyboards/planck/keymaps/vifon/config.h index 4cb4a1235a..be395faad3 100644 --- a/keyboards/planck/keymaps/vifon/config.h +++ b/keyboards/planck/keymaps/vifon/config.h @@ -26,9 +26,6 @@ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ //#define MIDI_TONE_KEYCODE_OCTAVES 2 -/* prevent the modifiers from being stuck, sacrificing some memory */ -#define PREVENT_STUCK_MODIFIERS - /* A larger buffer for the dynamic macros as this keymap is not taking * up that much memory. */ diff --git a/keyboards/planck/keymaps/yale/config.h b/keyboards/planck/keymaps/yale/config.h deleted file mode 100644 index 8a916bbd09..0000000000 --- a/keyboards/planck/keymaps/yale/config.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif - - - diff --git a/keyboards/planck/keymaps/zach/config.h b/keyboards/planck/keymaps/zach/config.h index 19a3856a39..dc79bad064 100644 --- a/keyboards/planck/keymaps/zach/config.h +++ b/keyboards/planck/keymaps/zach/config.h @@ -55,7 +55,6 @@ //#define NO_ACTION_ONESHOT #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION -#define PREVENT_STUCK_MODIFIERS //#define DYNAMIC_MACRO_ENABLE // Enable if you need to use the macro functionality //#define SPACE_CADET // Parenthesis on L/R shift diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h index 0e462180bd..afd69f7d84 100644 --- a/keyboards/planck/rev6/config.h +++ b/keyboards/planck/rev6/config.h @@ -50,9 +50,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 6 -/* Prevent modifiers from being stuck on after layer changes. */ -#define PREVENT_STUCK_MODIFIERS - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ //#define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/playkbtw/ca66/config.h b/keyboards/playkbtw/ca66/config.h index c35718042a..53bbe95e3a 100644 --- a/keyboards/playkbtw/ca66/config.h +++ b/keyboards/playkbtw/ca66/config.h @@ -42,8 +42,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS #define RGB_DI_PIN B1 #ifdef RGB_DI_PIN diff --git a/keyboards/playkbtw/pk60/config.h b/keyboards/playkbtw/pk60/config.h index 06101349cc..601e3c8a5c 100644 --- a/keyboards/playkbtw/pk60/config.h +++ b/keyboards/playkbtw/pk60/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN E2 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS @@ -55,4 +52,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/preonic/keymaps/bucktooth/config.h b/keyboards/preonic/keymaps/bucktooth/config.h index b988831207..23e9e0ed28 100644 --- a/keyboards/preonic/keymaps/bucktooth/config.h +++ b/keyboards/preonic/keymaps/bucktooth/config.h @@ -4,6 +4,5 @@ #include "../../config.h" #define FORCE_NKRO 1 -#define PREVENT_STUCK_MODIFIERS #endif diff --git a/keyboards/preonic/keymaps/jacwib/config.h b/keyboards/preonic/keymaps/jacwib/config.h index b988831207..23e9e0ed28 100644 --- a/keyboards/preonic/keymaps/jacwib/config.h +++ b/keyboards/preonic/keymaps/jacwib/config.h @@ -4,6 +4,5 @@ #include "../../config.h" #define FORCE_NKRO 1 -#define PREVENT_STUCK_MODIFIERS #endif diff --git a/keyboards/preonic/keymaps/kuatsure/rules.mk b/keyboards/preonic/keymaps/kuatsure/rules.mk index 76d73acef7..9369f99a9e 100644 --- a/keyboards/preonic/keymaps/kuatsure/rules.mk +++ b/keyboards/preonic/keymaps/kuatsure/rules.mk @@ -1 +1,2 @@ BACKLIGHT_ENABLE = no +LEADER_ENABLE = yes diff --git a/keyboards/preonic/keymaps/that_canadian/config.h b/keyboards/preonic/keymaps/that_canadian/config.h deleted file mode 100644 index 11cafbefcb..0000000000 --- a/keyboards/preonic/keymaps/that_canadian/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define PREVENT_STUCK_MODIFIERS - -#endif diff --git a/keyboards/preonic/keymaps/zach/config.h b/keyboards/preonic/keymaps/zach/config.h index bb8913c7af..40a083da37 100644 --- a/keyboards/preonic/keymaps/zach/config.h +++ b/keyboards/preonic/keymaps/zach/config.h @@ -87,7 +87,6 @@ along with this program. If not, see . //#define NO_ACTION_ONESHOT #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION -#define PREVENT_STUCK_MODIFIERS //#define DYNAMIC_MACRO_ENABLE // Enable if you need to use the macro functionality //#define SPACE_CADET // Parenthesis on L/R shift diff --git a/keyboards/preonic/rev3/config.h b/keyboards/preonic/rev3/config.h index 3f57c591ab..98899dc6ac 100644 --- a/keyboards/preonic/rev3/config.h +++ b/keyboards/preonic/rev3/config.h @@ -50,9 +50,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 6 -/* Prevent modifiers from being stuck on after layer changes. */ -#define PREVENT_STUCK_MODIFIERS - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ //#define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/prime_r/config.h b/keyboards/prime_r/config.h index b53f149051..ad92199a22 100644 --- a/keyboards/prime_r/config.h +++ b/keyboards/prime_r/config.h @@ -60,10 +60,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 diff --git a/keyboards/rorschach/keymaps/insertsnideremarks/config.h b/keyboards/rorschach/keymaps/insertsnideremarks/config.h index 90fb5120df..2048232c9c 100644 --- a/keyboards/rorschach/keymaps/insertsnideremarks/config.h +++ b/keyboards/rorschach/keymaps/insertsnideremarks/config.h @@ -11,7 +11,6 @@ // #define MASTER_RIGHT #define EE_HANDS -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_TERM 175 #define TAPPING_TOGGLE 2 diff --git a/keyboards/s60_x/keymaps/bluebear/config.h b/keyboards/s60_x/keymaps/bluebear/config.h index 35754b5233..10bddf0d37 100644 --- a/keyboards/s60_x/keymaps/bluebear/config.h +++ b/keyboards/s60_x/keymaps/bluebear/config.h @@ -105,7 +105,4 @@ along with this program. If not, see . // Space Cadet Rollover - if set, allows to tap opposite shift key to cancel erroneous press #define DISABLE_SPACE_CADET_ROLLOVER -// Prevent stuck modifiers -#define PREVENT_STUCK_MODIFIERS - #endif diff --git a/keyboards/s60_x/rgb/config.h b/keyboards/s60_x/rgb/config.h index ec8b0f49e1..d9c26658df 100644 --- a/keyboards/s60_x/rgb/config.h +++ b/keyboards/s60_x/rgb/config.h @@ -17,9 +17,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN F6 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS @@ -29,4 +26,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/s65_plus/config.h b/keyboards/s65_plus/config.h index df60e60a8d..60512db462 100644 --- a/keyboards/s65_plus/config.h +++ b/keyboards/s65_plus/config.h @@ -49,7 +49,4 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #endif diff --git a/keyboards/s65_x/config.h b/keyboards/s65_x/config.h index 8288ef7834..367efc526c 100644 --- a/keyboards/s65_x/config.h +++ b/keyboards/s65_x/config.h @@ -49,8 +49,4 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) - -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #endif diff --git a/keyboards/sx60/config.h b/keyboards/sx60/config.h index f22fbe8be4..52a1cc7a18 100755 --- a/keyboards/sx60/config.h +++ b/keyboards/sx60/config.h @@ -46,10 +46,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 diff --git a/keyboards/telophase/config.h b/keyboards/telophase/config.h index 09655c0258..be0a369773 100644 --- a/keyboards/telophase/config.h +++ b/keyboards/telophase/config.h @@ -52,8 +52,6 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ -#define PREVENT_STUCK_MODIFIERS - /* disable debug print */ //#define NO_DEBUG diff --git a/keyboards/tetris/config.h b/keyboards/tetris/config.h index 9c7f525a71..7e7dac7cf6 100644 --- a/keyboards/tetris/config.h +++ b/keyboards/tetris/config.h @@ -41,9 +41,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define TAPPING_TERM 200 #define PERMISSIVE_HOLD @@ -62,4 +59,4 @@ //#define RGBLIGHT_LIMIT_VAL 128 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h b/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h index bb2aadfa69..fc9bd3d616 100644 --- a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h +++ b/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h @@ -3,7 +3,6 @@ #include QMK_KEYBOARD_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define SPACE_COUNT 3 #define TEMPLATE( \ diff --git a/keyboards/tokyo60/config.h b/keyboards/tokyo60/config.h index 6e6ab2215d..16927be17e 100644 --- a/keyboards/tokyo60/config.h +++ b/keyboards/tokyo60/config.h @@ -47,9 +47,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN F7 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/keyboards/tomato/config.h b/keyboards/tomato/config.h index f33c131087..185cb326cc 100644 --- a/keyboards/tomato/config.h +++ b/keyboards/tomato/config.h @@ -34,9 +34,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - /* eliminate lag on space cadet mods */ #define PERMISSIVE_HOLD diff --git a/keyboards/uk78/config.h b/keyboards/uk78/config.h index 35f5bf70b3..34d6720792 100644 --- a/keyboards/uk78/config.h +++ b/keyboards/uk78/config.h @@ -60,9 +60,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - /* ws2812b options */ #define RGB_DI_PIN F6 #ifdef RGB_DI_PIN diff --git a/keyboards/viterbi/keymaps/drashna/config.h b/keyboards/viterbi/keymaps/drashna/config.h index 687f80441a..a1e361e346 100644 --- a/keyboards/viterbi/keymaps/drashna/config.h +++ b/keyboards/viterbi/keymaps/drashna/config.h @@ -53,7 +53,7 @@ along with this program. If not, see . #define NO_MUSIC_MODE #endif -#undef PREVENT_STUCK_MODIFIERS +#define STRICT_LAYER_RELEASE #define LAYOUT_ortho_5x7( \ L00, L01, L02, L03, L04, L05, L06, \ diff --git a/keyboards/whitefox/config.h b/keyboards/whitefox/config.h index 9f021fb516..a8047cf54f 100644 --- a/keyboards/whitefox/config.h +++ b/keyboards/whitefox/config.h @@ -18,8 +18,6 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#define PREVENT_STUCK_MODIFIERS - /* USB Device descriptor parameter */ #define VENDOR_ID 0x1c11 #define PRODUCT_ID 0xb04d diff --git a/keyboards/xd60/keymaps/kmontag42/rules.mk b/keyboards/xd60/keymaps/kmontag42/rules.mk new file mode 100644 index 0000000000..d0d2ef6d53 --- /dev/null +++ b/keyboards/xd60/keymaps/kmontag42/rules.mk @@ -0,0 +1 @@ +LEADER_ENABLE = yes diff --git a/keyboards/xd75/keymaps/davidrambo/config.h b/keyboards/xd75/keymaps/davidrambo/config.h index e87ccde797..f219147034 100644 --- a/keyboards/xd75/keymaps/davidrambo/config.h +++ b/keyboards/xd75/keymaps/davidrambo/config.h @@ -20,7 +20,6 @@ #include "../../config.h" #define TAPPING_TERM 200 -#define PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS +#define PERMISSIVE_HOLD #endif diff --git a/keyboards/xd75/keymaps/tdl-jturner/config.h b/keyboards/xd75/keymaps/tdl-jturner/config.h index 561a48d7eb..985247bb2e 100644 --- a/keyboards/xd75/keymaps/tdl-jturner/config.h +++ b/keyboards/xd75/keymaps/tdl-jturner/config.h @@ -26,7 +26,6 @@ #define TAPPING_TOGGLE 2 //#define PERMISSIVE_HOLD //#define QMK_KEYS_PER_SCAN 4 -#define PREVENT_STUCK_MODIFIERS #define FORCE_NKRO #define MOUSEKEY_INTERVAL 16 diff --git a/keyboards/xmmx/config.h b/keyboards/xmmx/config.h index f3f893e283..8cb2cf82df 100644 --- a/keyboards/xmmx/config.h +++ b/keyboards/xmmx/config.h @@ -43,10 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 @@ -55,4 +51,4 @@ #define RGBLIGHT_VAL_STEP 8 #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/ymd96/keymaps/hgoel89/config.h b/keyboards/ymd96/keymaps/hgoel89/config.h index 52aaa8f24d..b1d74e1e69 100644 --- a/keyboards/ymd96/keymaps/hgoel89/config.h +++ b/keyboards/ymd96/keymaps/hgoel89/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -#define PREVENT_STUCK_MODIFIERS #define TAPPING_TERM 300 #endif diff --git a/keyboards/z150_blackheart/config.h b/keyboards/z150_blackheart/config.h index d2fce9aeef..3621536522 100644 --- a/keyboards/z150_blackheart/config.h +++ b/keyboards/z150_blackheart/config.h @@ -39,14 +39,10 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - - #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 0 #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 -#endif \ No newline at end of file +#endif diff --git a/keyboards/zeal60/keymaps/tusing/config.h b/keyboards/zeal60/keymaps/tusing/config.h index 93f260946c..64aaece501 100644 --- a/keyboards/zeal60/keymaps/tusing/config.h +++ b/keyboards/zeal60/keymaps/tusing/config.h @@ -34,7 +34,3 @@ // Scale brightnes according to BRIGHTNESS_CORRECTION_TABLE in quantum/rgblight.c. // This allows to mitigate uneven brightness from LED underglow strips. // #define LED_BRIGHTNESS_CORRECTION - -// Prevent modifiers on layer 1 from persisting after we let go -#define PREVENT_STUCK_MODIFIERS - diff --git a/keyboards/zlant/config.h b/keyboards/zlant/config.h index 456d225aa2..ae9dcfef67 100755 --- a/keyboards/zlant/config.h +++ b/keyboards/zlant/config.h @@ -43,9 +43,6 @@ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS - #define RGB_DI_PIN D6 #ifdef RGB_DI_PIN #define RGBLIGHT_ANIMATIONS diff --git a/layouts/community/60_ansi/talljoe-ansi/config.h b/layouts/community/60_ansi/talljoe-ansi/config.h index 1990b0ee3b..4326a2fd10 100644 --- a/layouts/community/60_ansi/talljoe-ansi/config.h +++ b/layouts/community/60_ansi/talljoe-ansi/config.h @@ -3,7 +3,6 @@ #include QMK_KEYBOARD_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define ENABLE_GAME_LAYER #define TEMPLATE( \ 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 81ab5cf89e..bf18fd9f7d 100644 --- a/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h @@ -3,7 +3,6 @@ #include QMK_KEYBOARD_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define ENABLE_GAME_LAYER #define TEMPLATE( \ diff --git a/layouts/community/60_hhkb/talljoe-hhkb/config.h b/layouts/community/60_hhkb/talljoe-hhkb/config.h index 938ea6cd63..9e907feeb5 100644 --- a/layouts/community/60_hhkb/talljoe-hhkb/config.h +++ b/layouts/community/60_hhkb/talljoe-hhkb/config.h @@ -3,7 +3,6 @@ #include QMK_KEYBOARD_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define ENABLE_GAME_LAYER #define TEMPLATE( \ diff --git a/layouts/community/ergodox/adam/config.h b/layouts/community/ergodox/adam/config.h index 21af8c6b8d..1a8fddb506 100644 --- a/layouts/community/ergodox/adam/config.h +++ b/layouts/community/ergodox/adam/config.h @@ -2,5 +2,4 @@ #undef TAPPING_TERM #define TAPPING_TERM 300 //At 500 some bad logic takes hold -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT diff --git a/layouts/community/ergodox/albert/rules.mk b/layouts/community/ergodox/albert/rules.mk index fcd019e838..47549b50f6 100644 --- a/layouts/community/ergodox/albert/rules.mk +++ b/layouts/community/ergodox/albert/rules.mk @@ -1,3 +1,2 @@ COMMAND_ENABLE = no # Commands for debug and configuration - - +LEADER_ENABLE = yes diff --git a/layouts/community/ergodox/algernon/rules.mk b/layouts/community/ergodox/algernon/rules.mk index f795a8676e..53dec5153a 100644 --- a/layouts/community/ergodox/algernon/rules.mk +++ b/layouts/community/ergodox/algernon/rules.mk @@ -8,6 +8,7 @@ TAP_DANCE_ENABLE = yes KEYLOGGER_ENABLE ?= yes UCIS_ENABLE = yes MOUSEKEY_ENABLE = no +LEADER_ENABLE = yes AUTOLOG_ENABLE ?= no diff --git a/layouts/community/ergodox/alphadox/config.h b/layouts/community/ergodox/alphadox/config.h index 6fc64f5082..9e076dead1 100644 --- a/layouts/community/ergodox/alphadox/config.h +++ b/layouts/community/ergodox/alphadox/config.h @@ -4,7 +4,6 @@ #include QMK_KEYBOARD_CONFIG_H #define FORCE_NKRO -#define PREVENT_STUCK_MODIFIERS #undef TAPPING_TERM #undef IGNORE_MOD_TAP_INTERRUPT diff --git a/layouts/community/ergodox/deadcyclo/rules.mk b/layouts/community/ergodox/deadcyclo/rules.mk index 039f07c8e3..f5093529bf 100644 --- a/layouts/community/ergodox/deadcyclo/rules.mk +++ b/layouts/community/ergodox/deadcyclo/rules.mk @@ -1 +1,2 @@ UNICODE_ENABLE = yes +LEADER_ENABLE = yes diff --git a/layouts/community/ergodox/erez_experimental/rules.mk b/layouts/community/ergodox/erez_experimental/rules.mk index 839dd82e1e..f68b56f872 100644 --- a/layouts/community/ergodox/erez_experimental/rules.mk +++ b/layouts/community/ergodox/erez_experimental/rules.mk @@ -3,5 +3,4 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend COMMAND_ENABLE = no # Commands for debug and configuration - - +LEADER_ENABLE = yes diff --git a/layouts/community/ergodox/familiar/rules.mk b/layouts/community/ergodox/familiar/rules.mk index 31e0fcf293..4a3c58621c 100644 --- a/layouts/community/ergodox/familiar/rules.mk +++ b/layouts/community/ergodox/familiar/rules.mk @@ -1 +1,2 @@ TAP_DANCE_ENABLE=yes +LEADER_ENABLE = yes diff --git a/layouts/community/ergodox/mclennon_osx/README.md b/layouts/community/ergodox/mclennon_osx/README.md index 28cdb7c108..53b3d48414 100644 --- a/layouts/community/ergodox/mclennon_osx/README.md +++ b/layouts/community/ergodox/mclennon_osx/README.md @@ -1,5 +1,5 @@ # Ergodox EZ for OS X -This keymapping is designed to be reasonably familiar to an ordinary Mac keyboard while taking advantage of the Ergodox EZ's features. Caps lock instead enables a layer which allows a user to use HJKL as arrow keys and to control media. Shift and control have additional mappings on S and D to provide easier access while holding down caps lock. +This keymapping is designed to be reasonably familiar to an ordinary Mac keyboard while taking advantage of the Ergodox EZ's features. Caps lock instead enables a layer which allows a user to use HJKL as arrow keys and to control media. Shift and control have additional mappings on S and D to provide easier access while holding down caps lock. -If you choose to compile this yourself, be sure to compile with `#define PREVENT_STUCK_MODIFIERS` in your `config.h`. Firmware built using [qmk_firmware](https://github.com/qmk/qmk_firmware/). +Firmware built using [qmk_firmware](https://github.com/qmk/qmk_firmware/). diff --git a/layouts/community/ergodox/techtomas/readme.md b/layouts/community/ergodox/techtomas/readme.md index 36e0591a8e..3d1bcb9e11 100644 --- a/layouts/community/ergodox/techtomas/readme.md +++ b/layouts/community/ergodox/techtomas/readme.md @@ -39,7 +39,7 @@ The right arrow key and End key toggle the control layer on the left board. Ther On the left board you have mouse control with left & right click in the location of the G and B keys. On the right board you have vim-style arrow keys using hjkl -The left thumb cluster moves shift and alt within easy reach while holding the toggle (end). So far I've found this convient to navigate and skip around text when using the hjkl arrow keys. I found that it was easy to get the alt key stuck on depending on what key you released first so I added the PREVENT_STUCK_MODIFIERS to the config.h to help with that. +The left thumb cluster moves shift and alt within easy reach while holding the toggle (end). So far I've found this convient to navigate and skip around text when using the hjkl arrow keys. ## Changelog diff --git a/layouts/community/ortho_4x12/symbolic/config.h b/layouts/community/ortho_4x12/symbolic/config.h index 702c9226c6..c29b077062 100644 --- a/layouts/community/ortho_4x12/symbolic/config.h +++ b/layouts/community/ortho_4x12/symbolic/config.h @@ -20,10 +20,6 @@ along with this program. If not, see . #pragma once -// prevent stuck modifiers -#define PREVENT_STUCK_MODIFIERS - - // hold & tapping delay setting #define TAPPING_TERM 100 diff --git a/layouts/community/tkl_ansi/talljoe-tkl/config.h b/layouts/community/tkl_ansi/talljoe-tkl/config.h index 8b27d41365..02f8a94e39 100644 --- a/layouts/community/tkl_ansi/talljoe-tkl/config.h +++ b/layouts/community/tkl_ansi/talljoe-tkl/config.h @@ -3,7 +3,6 @@ #include QMK_KEYBOARD_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define ENABLE_GAME_LAYER #define TEMPLATE_TKL(\ diff --git a/quantum/process_keycode/process_chording.c b/quantum/process_keycode/process_chording.c deleted file mode 100644 index 6c6ebe300a..0000000000 --- a/quantum/process_keycode/process_chording.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2016 Jack Humbert - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include "process_chording.h" - -bool keys_chord(uint8_t keys[]) { - uint8_t keys_size = sizeof(keys)/sizeof(keys[0]); - bool pass = true; - uint8_t in = 0; - for (uint8_t i = 0; i < chord_key_count; i++) { - bool found = false; - for (uint8_t j = 0; j < keys_size; j++) { - if (chord_keys[i] == (keys[j] & 0xFF)) { - in++; // detects key in chord - found = true; - break; - } - } - if (found) - continue; - if (chord_keys[i] != 0) { - pass = false; // makes sure rest are blank - } - } - return (pass && (in == keys_size)); -} - -bool process_chording(uint16_t keycode, keyrecord_t *record) { - if (keycode >= QK_CHORDING && keycode <= QK_CHORDING_MAX) { - if (record->event.pressed) { - if (!chording) { - chording = true; - for (uint8_t i = 0; i < CHORDING_MAX; i++) - chord_keys[i] = 0; - chord_key_count = 0; - chord_key_down = 0; - } - chord_keys[chord_key_count] = (keycode & 0xFF); - chord_key_count++; - chord_key_down++; - return false; - } else { - if (chording) { - chord_key_down--; - if (chord_key_down == 0) { - chording = false; - // Chord Dictionary - if (keys_chord((uint8_t[]){KC_ENTER, KC_SPACE})) { - register_code(KC_A); - unregister_code(KC_A); - return false; - } - for (uint8_t i = 0; i < chord_key_count; i++) { - register_code(chord_keys[i]); - unregister_code(chord_keys[i]); - return false; - } - } - } - } - } - return true; -} diff --git a/quantum/process_keycode/process_chording.h b/quantum/process_keycode/process_chording.h deleted file mode 100644 index 8c0f4862a8..0000000000 --- a/quantum/process_keycode/process_chording.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2016 Jack Humbert - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#ifndef PROCESS_CHORDING_H -#define PROCESS_CHORDING_H - -#include "quantum.h" - -// Chording stuff -#define CHORDING_MAX 4 -bool chording = false; - -uint8_t chord_keys[CHORDING_MAX] = {0}; -uint8_t chord_key_count = 0; -uint8_t chord_key_down = 0; - -bool process_chording(uint16_t keycode, keyrecord_t *record); - -#endif diff --git a/quantum/process_keycode/process_leader.c b/quantum/process_keycode/process_leader.c index c87ef115af..eddbf71f70 100644 --- a/quantum/process_keycode/process_leader.c +++ b/quantum/process_keycode/process_leader.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ -#ifndef DISABLE_LEADER +#ifdef LEADER_ENABLE #include "process_leader.h" diff --git a/quantum/quantum.c b/quantum/quantum.c index 9d352a94cf..9bf91eb865 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -196,7 +196,7 @@ bool process_record_quantum(keyrecord_t *record) { keypos_t key = record->event.key; uint16_t keycode; - #if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) + #if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) /* TODO: Use store_or_get_action() or a similar function. */ if (!disable_action_cache) { uint8_t layer; @@ -251,12 +251,9 @@ bool process_record_quantum(keyrecord_t *record) { #ifdef TAP_DANCE_ENABLE process_tap_dance(keycode, record) && #endif - #ifndef DISABLE_LEADER + #ifdef LEADER_ENABLE process_leader(keycode, record) && #endif - #ifndef DISABLE_CHORDING - process_chording(keycode, record) && - #endif #ifdef COMBO_ENABLE process_combo(keycode, record) && #endif diff --git a/quantum/quantum.h b/quantum/quantum.h index d1f761f17a..7cf16d81e6 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -89,15 +89,10 @@ extern uint32_t default_layer_state; #include "process_music.h" #endif -#ifndef DISABLE_LEADER +#ifdef LEADER_ENABLE #include "process_leader.h" #endif -#define DISABLE_CHORDING -#ifndef DISABLE_CHORDING - #include "process_chording.h" -#endif - #ifdef UNICODE_ENABLE #include "process_unicode.h" #endif diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 0ecc293a82..3b87954960 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -63,10 +63,6 @@ enum quantum_keycodes { QK_ONE_SHOT_LAYER_MAX = 0x54FF, QK_ONE_SHOT_MOD = 0x5500, QK_ONE_SHOT_MOD_MAX = 0x55FF, -#ifndef DISABLE_CHORDING - QK_CHORDING = 0x5600, - QK_CHORDING_MAX = 0x56FF, -#endif QK_TAP_DANCE = 0x5700, QK_TAP_DANCE_MAX = 0x57FF, QK_LAYER_TAP_TOGGLE = 0x5800, @@ -123,7 +119,7 @@ enum quantum_keycodes { GRAVE_ESC, // Leader key -#ifndef DISABLE_LEADER +#ifdef LEADER_ENABLE KC_LEAD, #endif diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c index ae08647496..76d02bc9df 100644 --- a/tmk_core/common/action.c +++ b/tmk_core/common/action.c @@ -120,7 +120,7 @@ void process_hand_swap(keyevent_t *event) { } #endif -#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) +#if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) bool disable_action_cache = false; void process_record_nocache(keyrecord_t *record) diff --git a/tmk_core/common/action.h b/tmk_core/common/action.h index acc55c7d38..0322c73ed1 100644 --- a/tmk_core/common/action.h +++ b/tmk_core/common/action.h @@ -62,7 +62,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt); bool process_record_quantum(keyrecord_t *record); /* Utilities for actions. */ -#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) +#if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) extern bool disable_action_cache; #endif diff --git a/tmk_core/common/action_layer.c b/tmk_core/common/action_layer.c index f3cd381ab0..62375dfbfe 100644 --- a/tmk_core/common/action_layer.c +++ b/tmk_core/common/action_layer.c @@ -219,7 +219,7 @@ void layer_debug(void) } #endif -#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) +#if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) uint8_t source_layers_cache[(MATRIX_ROWS * MATRIX_COLS + 7) / 8][MAX_LAYER_BITS] = {{0}}; void update_source_layers_cache(keypos_t key, uint8_t layer) @@ -263,7 +263,7 @@ uint8_t read_source_layers_cache(keypos_t key) */ action_t store_or_get_action(bool pressed, keypos_t key) { -#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) +#if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) if (disable_action_cache) { return layer_switch_get_action(key); } diff --git a/tmk_core/common/action_layer.h b/tmk_core/common/action_layer.h index 72a6bd8f68..7bf116be2d 100644 --- a/tmk_core/common/action_layer.h +++ b/tmk_core/common/action_layer.h @@ -88,7 +88,7 @@ uint32_t layer_state_set_kb(uint32_t state); #endif /* pressed actions cache */ -#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) +#if !defined(NO_ACTION_LAYER) && !defined(STRICT_LAYER_RELEASE) /* The number of bits needed to represent the layer number: log2(32). */ #define MAX_LAYER_BITS 5 void update_source_layers_cache(keypos_t key, uint8_t layer); diff --git a/users/333fred/333fred_config.h b/users/333fred/333fred_config.h index 7c637d8d36..b158e2d5a2 100644 --- a/users/333fred/333fred_config.h +++ b/users/333fred/333fred_config.h @@ -1,4 +1,3 @@ #pragma once -#define PREVENT_STUCK_MODIFIERS #define PERMISSIVE_HOLD diff --git a/users/bocaj/config.h b/users/bocaj/config.h index ce5ec65d62..0e726598cd 100644 --- a/users/bocaj/config.h +++ b/users/bocaj/config.h @@ -10,7 +10,6 @@ // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT #undef PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS #ifdef TAPPING_TERM #undef TAPPING_TERM diff --git a/users/drashna/config.h b/users/drashna/config.h index dd6875ceb1..92efcc5c74 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -43,7 +43,6 @@ // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT #undef PERMISSIVE_HOLD -#define PREVENT_STUCK_MODIFIERS // #define TAPPING_FORCE_HOLD //#define RETRO_TAPPING @@ -64,8 +63,4 @@ #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION -#define DISABLE_LEADER - #define MACRO_TIMER 5 - - diff --git a/users/ishtob/config.h b/users/ishtob/config.h index 9c4a7ed8dd..1f567f4a5b 100755 --- a/users/ishtob/config.h +++ b/users/ishtob/config.h @@ -15,7 +15,6 @@ //#define LEADER_TIMEOUT 300 //#define BACKLIGHT_BREATHING -#define PREVENT_STUCK_MODIFIERS //#define PERMISSIVE_HOLD // #define QMK_KEYS_PER_SCAN 4 @@ -72,5 +71,5 @@ // Most tactile encoders have detents every 4 stages #define ENCODER_RESOLUTION 4 - + #endif diff --git a/users/replicaJunction/config.h b/users/replicaJunction/config.h index f3556c87ed..4b58b579f8 100644 --- a/users/replicaJunction/config.h +++ b/users/replicaJunction/config.h @@ -6,12 +6,6 @@ // https://docs.qmk.fm/reference/config-options#features-that-can-be-enabled //////////////////////////////////////////////////////////////////////////////// -// Prevent modifiers from sticking when switching layers -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - - - //////////////////////////////////////////////////////////////////////////////// // Behaviors That Can Be Configured // https://docs.qmk.fm/reference/config-options#behaviors-that-can-be-configured diff --git a/users/talljoe/config.h b/users/talljoe/config.h index 15bbde6bcd..1cdbb5a412 100644 --- a/users/talljoe/config.h +++ b/users/talljoe/config.h @@ -1,7 +1,6 @@ #ifndef USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H -#define PREVENT_STUCK_MODIFIERS #define IGNORE_MOD_TAP_INTERRUPT #define RESET_LAYER 15 diff --git a/users/wanleg/config.h b/users/wanleg/config.h index 22073449b2..28e7690e65 100644 --- a/users/wanleg/config.h +++ b/users/wanleg/config.h @@ -1,8 +1,6 @@ #ifndef USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H -#define PREVENT_STUCK_MODIFIERS - //TAPPING_TERM #ifdef TAP_DANCE_ENABLE #define TAPPING_TERM 200 diff --git a/users/zer09/config.h b/users/zer09/config.h index 7668064622..4cb65c258f 100644 --- a/users/zer09/config.h +++ b/users/zer09/config.h @@ -11,7 +11,7 @@ // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT #undef PERMISSIVE_HOLD -#undef PREVENT_STUCK_MODIFIERS +#define STRICT_LAYER_RELEASE #define FORCE_NKRO -- cgit v1.2.3 From 23da333ae3527228f101ed8cf08e3cd6a5796901 Mon Sep 17 00:00:00 2001 From: nachie Date: Mon, 17 Sep 2018 16:00:40 -0700 Subject: Keyboard: Added support for GSKT-00 (#3911) * Added QMK support for GSKT-00, PaladinSplit, PaladinTKL and PaladinPad pcbs * Remove the paladin boards from this PR * Changed gskt00 as per review comments. Added two new default layouts, 60_ansi_tsangan and 60_iso_tsangan * Fix the layouts/default/60_iso_tsangan/layout.json file * Removed ? from rules.mk, removed unused fn_actions from keymaps. Changed the 60_iso_tsangan to work correctly * Removed PREVENT_STUCK_MODIFIERS --- keyboards/gskt00/config.h | 39 ++++++++++ keyboards/gskt00/gskt00.c | 2 + keyboards/gskt00/gskt00.h | 57 +++++++++++++++ keyboards/gskt00/info.json | 16 +++++ keyboards/gskt00/keymaps/default/keymap.c | 82 ++++++++++++++++++++++ keyboards/gskt00/keymaps/nachie/keymap.c | 82 ++++++++++++++++++++++ keyboards/gskt00/readme.md | 17 +++++ keyboards/gskt00/rules.mk | 55 +++++++++++++++ .../default_60_ansi_tsangan/keymap.c | 11 +++ layouts/default/60_ansi_tsangan/layout.json | 5 ++ layouts/default/60_ansi_tsangan/readme.md | 3 + .../60_iso_tsangan/default_60_iso_tsangan/keymap.c | 11 +++ layouts/default/60_iso_tsangan/layout.json | 5 ++ layouts/default/60_iso_tsangan/readme.md | 3 + 14 files changed, 388 insertions(+) create mode 100755 keyboards/gskt00/config.h create mode 100755 keyboards/gskt00/gskt00.c create mode 100755 keyboards/gskt00/gskt00.h create mode 100644 keyboards/gskt00/info.json create mode 100755 keyboards/gskt00/keymaps/default/keymap.c create mode 100755 keyboards/gskt00/keymaps/nachie/keymap.c create mode 100644 keyboards/gskt00/readme.md create mode 100755 keyboards/gskt00/rules.mk create mode 100644 layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c create mode 100644 layouts/default/60_ansi_tsangan/layout.json create mode 100644 layouts/default/60_ansi_tsangan/readme.md create mode 100644 layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c create mode 100644 layouts/default/60_iso_tsangan/layout.json create mode 100644 layouts/default/60_iso_tsangan/readme.md (limited to 'layouts') diff --git a/keyboards/gskt00/config.h b/keyboards/gskt00/config.h new file mode 100755 index 0000000000..f36493f288 --- /dev/null +++ b/keyboards/gskt00/config.h @@ -0,0 +1,39 @@ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6061 +#define DEVICE_VER 0x0001 +#define MANUFACTURER inachie +#define PRODUCT GSKT00 +#define DESCRIPTION GSKT00 Gasket 60 keyboard + +/* key matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 8 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { F1, D1, D2, D4, D6, F7, B0, F4 } +#define MATRIX_COL_PINS { F6, D7, F5, C7, B4, C6, B6, B5 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCING_DELAY 5 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE + +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + + diff --git a/keyboards/gskt00/gskt00.c b/keyboards/gskt00/gskt00.c new file mode 100755 index 0000000000..89a0040ff3 --- /dev/null +++ b/keyboards/gskt00/gskt00.c @@ -0,0 +1,2 @@ +#include "gskt00.h" + diff --git a/keyboards/gskt00/gskt00.h b/keyboards/gskt00/gskt00.h new file mode 100755 index 0000000000..90e9a1ad5a --- /dev/null +++ b/keyboards/gskt00/gskt00.h @@ -0,0 +1,57 @@ +#ifndef GSKT00_H +#define GSKT00_H + +#include "quantum.h" + +#define LAYOUT_all( \ + K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K26, K27, \ + K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \ + K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \ + K31, K41, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, K22, \ + K30, K40, K50, K60, K00, K10, K20 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { KC_NO, K71, K72, K73, K74, K75, K76, K77 } \ +} + +#define LAYOUT_60_iso_tsangan( \ + K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K27, \ + K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, \ + K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K24, K23, /* enter */ \ + K31, K41, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, \ + K30, K40, K50, K60, K00, K10, K20 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { KC_NO, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, KC_NO, K23, K24, K25, KC_NO, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { KC_NO, K71, K72, K73, K74, K75, K76, K77 } \ +} + +#define LAYOUT_60_ansi_tsangan( \ + K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K27, \ + K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \ + K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \ + K31, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, \ + K30, K40, K50, K60, K00, K10, K20 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, KC_NO, K23, K24, K25, KC_NO, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, KC_NO, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { KC_NO, K71, K72, K73, K74, K75, K76, K77 } \ +} + +#endif diff --git a/keyboards/gskt00/info.json b/keyboards/gskt00/info.json new file mode 100644 index 0000000000..88191240b9 --- /dev/null +++ b/keyboards/gskt00/info.json @@ -0,0 +1,16 @@ +{ + "keyboard_name": "gskt00", + "url": "", + "maintainer": "nachie", + "width": 15, + "height": 5, + "layouts": { + "LAYOUT_60_ansi_tsangan": { + "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"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":2.75}, {"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":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Win", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}] + }, + + "LAYOUT_60_iso_tsangan": { + "layout": [{"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "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":"Backspace", "x":13, "y":0, "w":2}, {"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":"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":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"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":2.75}, {"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":7}, {"label":"AltGr", "x":11, "y":4, "w":1.5}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}] + } + } + } diff --git a/keyboards/gskt00/keymaps/default/keymap.c b/keyboards/gskt00/keymaps/default/keymap.c new file mode 100755 index 0000000000..792ba2f412 --- /dev/null +++ b/keyboards/gskt00/keymaps/default/keymap.c @@ -0,0 +1,82 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* QWERTY */ + LAYOUT_all( + 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_GRV, KC_BSPC, + 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_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, + 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_LSFT, MO(3), + KC_LGUI, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(3)), + + /* DVORAK */ + LAYOUT_all( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC, + MO(3), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, + KC_LSFT, KC_NUBS, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSFT, MO(3), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL), + + /* COLEMAK */ + LAYOUT_all( + 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_GRV, KC_BSLS, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC, + MO(3), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL), + + /* FUNCTION */ + LAYOUT_all( + KC_GRV, 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, + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_PAUS, KC_DEL, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG) + +}; + +void matrix_init_user(void) { +} + +void matrix_scan_user(void) { +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + + if (usb_led & (1 << USB_LED_NUM_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_CAPS_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_COMPOSE)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_KANA)) { + + } else { + + } + +} + diff --git a/keyboards/gskt00/keymaps/nachie/keymap.c b/keyboards/gskt00/keymaps/nachie/keymap.c new file mode 100755 index 0000000000..8606d24841 --- /dev/null +++ b/keyboards/gskt00/keymaps/nachie/keymap.c @@ -0,0 +1,82 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* QWERTY */ + LAYOUT_all( + 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_GRV, KC_BSLS, + 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, + MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + 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_LSFT, MO(3), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_LCTL), + + /* DVORAK */ + LAYOUT_all( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC, + MO(3), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, + KC_LSFT, KC_NUBS, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSFT, MO(3), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL), + + /* COLEMAK */ + LAYOUT_all( + 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_GRV, KC_BSLS, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC, + MO(3), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL), + + /* FUNCTION */ + LAYOUT_all( + KC_GRV, 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_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, + KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, + KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG) + +}; + +void matrix_init_user(void) { +} + +void matrix_scan_user(void) { +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + + if (usb_led & (1 << USB_LED_NUM_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_CAPS_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_COMPOSE)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_KANA)) { + + } else { + + } + +} + diff --git a/keyboards/gskt00/readme.md b/keyboards/gskt00/readme.md new file mode 100644 index 0000000000..ad03ac819f --- /dev/null +++ b/keyboards/gskt00/readme.md @@ -0,0 +1,17 @@ +# GSKT-00 PCB + +Firmware for the GSKT-00 PCB + +Keyboard Maintainer: [/u/iNachie](https://github.com/nachie) +Hardware Supported: GSKT-00 PCB +Hardware Availability: [/u/iNachie](https://www.reddit.com/user/inachie/) + +Make example for this keyboard (after setting up your build environment): + + make gskt00:default + +Or to make and flash: + + make gskt00:default:dfu + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/gskt00/rules.mk b/keyboards/gskt00/rules.mk new file mode 100755 index 0000000000..338384e3e8 --- /dev/null +++ b/keyboards/gskt00/rules.mk @@ -0,0 +1,55 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + +BOOTLOADER = atmel-dfu + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = yes # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +AUDIO_ENABLE = no +RGBLIGHT_ENABLE = no + +LAYOUTS = 60_ansi_tsangan 60_iso_tsangan diff --git a/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c b/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c new file mode 100644 index 0000000000..8f7f5f8c6f --- /dev/null +++ b/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_ansi( + 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_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_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 , + 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_LCTL , KC_LGUI , KC_LALT , KC_SPC , KC_RALT , KC_RGUI , KC_RCTL + ) +}; diff --git a/layouts/default/60_ansi_tsangan/layout.json b/layouts/default/60_ansi_tsangan/layout.json new file mode 100644 index 0000000000..f6a65beb34 --- /dev/null +++ b/layouts/default/60_ansi_tsangan/layout.json @@ -0,0 +1,5 @@ +[{a:7},"","","","","","","","","","","","","",{w:2},""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:2.75},""], +[{w:1.5},"",{w:1},"",{w:1.5},"",{w:7},"",{w:1.5},"",{w:1},"",{w:1.5},""] diff --git a/layouts/default/60_ansi_tsangan/readme.md b/layouts/default/60_ansi_tsangan/readme.md new file mode 100644 index 0000000000..76b4514034 --- /dev/null +++ b/layouts/default/60_ansi_tsangan/readme.md @@ -0,0 +1,3 @@ +# 60_ansi_tsangan + + LAYOUT_60_ansi_tsangan diff --git a/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c b/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c new file mode 100644 index 0000000000..204a12d33d --- /dev/null +++ b/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_iso( + 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_BSPC, + 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, + 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_LCTRL, KC_LALT, KC_LGUI, KC_SPACE, KC_RGUI, KC_RALT, KC_RCTL + ) +}; diff --git a/layouts/default/60_iso_tsangan/layout.json b/layouts/default/60_iso_tsangan/layout.json new file mode 100644 index 0000000000..e231859353 --- /dev/null +++ b/layouts/default/60_iso_tsangan/layout.json @@ -0,0 +1,5 @@ +[{a:7},"","","","","","","","","","","","","",{w:2},""], +[{w:1.5},"","","","","","","","","","","","","",{x:0.25,w:1.25,h:2,w2:1.5,h2:1,x2:-0.25},""], +[{w:1.75},"","","","","","","","","","","","",""], +[{w:1.25},"","","","","","","","","","","","",{w:2.75},""], +[{w:1.5},"",{w:1},"",{w:1.5},"",{w:7},"",{w:1.5},"",{w:1},"",{w:1.5},""] diff --git a/layouts/default/60_iso_tsangan/readme.md b/layouts/default/60_iso_tsangan/readme.md new file mode 100644 index 0000000000..edb7f9242d --- /dev/null +++ b/layouts/default/60_iso_tsangan/readme.md @@ -0,0 +1,3 @@ +# 60_iso_tsangan + + LAYOUT_60_iso_tsangan -- cgit v1.2.3 From c23233f41ab9221577fc83bbae0a230452a38231 Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Wed, 19 Sep 2018 16:13:58 -0700 Subject: Keymap: Talljoe's keymap for oddball keyboards (#3910) * Create layout for JD45 * Tweak layout to better support JD45 and add more tap dancing. * Add Maltron and tweak layout for 40% enter compatibility. * Switch back to `BL_TOGGLE` for backlight. * More tweaks * Rename talljoe_gherkin to talljoe-gherkin * Make NAV layer tab C_S_T also. * Add missing RESET key. * Add Talljoe layout for minivan. * MTI is not for me * Tweak keymap. * Add talljoe keymap to Atreus. * Minor tweaks. * Fix talljoe keymaps to work with new Zeal60 commit. --- keyboards/atreus/keymaps/talljoe-atreus/config.h | 42 ++++++ keyboards/atreus/keymaps/talljoe-atreus/keymap.c | 1 + keyboards/atreus/keymaps/talljoe-atreus/rules.mk | 1 + keyboards/gherkin/keymaps/talljoe-gherkin/config.h | 6 + keyboards/gherkin/keymaps/talljoe-gherkin/keymap.c | 58 ++++++++ keyboards/gherkin/keymaps/talljoe-gherkin/rules.mk | 6 + keyboards/gherkin/keymaps/talljoe_gherkin/config.h | 6 - keyboards/gherkin/keymaps/talljoe_gherkin/keymap.c | 58 -------- keyboards/gherkin/keymaps/talljoe_gherkin/rules.mk | 6 - keyboards/jd45/keymaps/talljoe/config.h | 22 +++ keyboards/jd45/keymaps/talljoe/keymap.c | 1 + keyboards/tv44/keymaps/talljoe-minivan/config.h | 53 ++++++++ keyboards/tv44/keymaps/talljoe-minivan/keymap.c | 1 + keyboards/tv44/keymaps/talljoe-minivan/rules.mk | 3 + keyboards/zeal60/rules.mk | 3 +- .../60_ansi_split_bs_rshift/talljoe/keymap.c | 25 ++-- .../60_ansi_split_bs_rshift/talljoe/rules.mk | 1 + .../60_ansi_split_bs_rshift/talljoe/solarized.c | 23 ++++ .../60_ansi_split_bs_rshift/talljoe/solarized.h | 27 ++++ users/talljoe/config.h | 2 +- users/talljoe/talljoe.c | 53 ++++---- users/talljoe/talljoe.h | 76 +++++++++-- users/talljoe/tapdance.c | 148 ++++++++++++++++++--- 23 files changed, 487 insertions(+), 135 deletions(-) create mode 100644 keyboards/atreus/keymaps/talljoe-atreus/config.h create mode 100644 keyboards/atreus/keymaps/talljoe-atreus/keymap.c create mode 100644 keyboards/atreus/keymaps/talljoe-atreus/rules.mk create mode 100644 keyboards/gherkin/keymaps/talljoe-gherkin/config.h create mode 100644 keyboards/gherkin/keymaps/talljoe-gherkin/keymap.c create mode 100644 keyboards/gherkin/keymaps/talljoe-gherkin/rules.mk delete mode 100644 keyboards/gherkin/keymaps/talljoe_gherkin/config.h delete mode 100644 keyboards/gherkin/keymaps/talljoe_gherkin/keymap.c delete mode 100644 keyboards/gherkin/keymaps/talljoe_gherkin/rules.mk create mode 100644 keyboards/jd45/keymaps/talljoe/config.h create mode 100644 keyboards/jd45/keymaps/talljoe/keymap.c create mode 100644 keyboards/tv44/keymaps/talljoe-minivan/config.h create mode 100644 keyboards/tv44/keymaps/talljoe-minivan/keymap.c create mode 100644 keyboards/tv44/keymaps/talljoe-minivan/rules.mk create mode 100644 layouts/community/60_ansi_split_bs_rshift/talljoe/rules.mk create mode 100644 layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.c create mode 100644 layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.h (limited to 'layouts') diff --git a/keyboards/atreus/keymaps/talljoe-atreus/config.h b/keyboards/atreus/keymaps/talljoe-atreus/config.h new file mode 100644 index 0000000000..87b68ffc65 --- /dev/null +++ b/keyboards/atreus/keymaps/talljoe-atreus/config.h @@ -0,0 +1,42 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include QMK_KEYBOARD_CONFIG_H + +#define PREVENT_STUCK_MODIFIERS +#define SPACE_COUNT 2 + +#define TEMPLATE( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) LAYOUT( \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, \ + K10, K41, K42, K30, K44, K1D, K20, K45, K3C, K0D, K2B, K3D \ +) + +#define TEMPLATE_NUM( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) LAYOUT( \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, \ + K10, K41, K42, K30, K44, K1D, K20, K45, K48, K49, K2B, K3D \ +) + + +#define TEMPLATE_RESET LAYOUT( \ + RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ + RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ +) +#endif diff --git a/keyboards/atreus/keymaps/talljoe-atreus/keymap.c b/keyboards/atreus/keymaps/talljoe-atreus/keymap.c new file mode 100644 index 0000000000..7812add812 --- /dev/null +++ b/keyboards/atreus/keymaps/talljoe-atreus/keymap.c @@ -0,0 +1 @@ +// This space intentionally left blank diff --git a/keyboards/atreus/keymaps/talljoe-atreus/rules.mk b/keyboards/atreus/keymaps/talljoe-atreus/rules.mk new file mode 100644 index 0000000000..92007fe8ad --- /dev/null +++ b/keyboards/atreus/keymaps/talljoe-atreus/rules.mk @@ -0,0 +1 @@ +USER_NAME := talljoe diff --git a/keyboards/gherkin/keymaps/talljoe-gherkin/config.h b/keyboards/gherkin/keymaps/talljoe-gherkin/config.h new file mode 100644 index 0000000000..7fa3bf328e --- /dev/null +++ b/keyboards/gherkin/keymaps/talljoe-gherkin/config.h @@ -0,0 +1,6 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +#endif diff --git a/keyboards/gherkin/keymaps/talljoe-gherkin/keymap.c b/keyboards/gherkin/keymaps/talljoe-gherkin/keymap.c new file mode 100644 index 0000000000..ea2921924e --- /dev/null +++ b/keyboards/gherkin/keymaps/talljoe-gherkin/keymap.c @@ -0,0 +1,58 @@ +#include QMK_KEYBOARD_H +#include "keymap_steno.h" + +#define ST_BOLT QK_STENO_BOLT +#define ST_GEM QK_STENO_GEMINI + +#define XXXXXXX KC_NO + +enum keyboard_layers { + _QWERTY, + _RAISE, + _LOWER, + _PLOVER, + _ADJUST +}; + +#define ADJ_Z LT(_ADJUST, KC_Z) +#define RS_BSPC LT(_RAISE, KC_BSPC) +#define LW_SPC LT(_LOWER, KC_SPC) +#define MO_ADJ MO(_ADJUST) +#define TG_PLV TG(_PLOVER) +#define OS_LCTL OSM(MOD_LCTL) +#define OS_LALT OSM(MOD_LALT) +#define OS_LGUI OSM(MOD_LGUI) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT_ortho_3x10( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_RSFT, + ADJ_Z, KC_X, KC_C, KC_V, RS_BSPC, LW_SPC, KC_B, KC_N, KC_M, KC_ENT + ), + + [_RAISE] = LAYOUT_ortho_3x10( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_7, KC_9, KC_0, + KC_ESC, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC, _______, KC_QUOT, KC_SCLN, _______, + OS_LCTL, OS_LGUI, OS_LALT, KC_GRV, _______, KC_TAB, KC_BSLS, KC_COMM, KC_DOT, KC_SLSH + ), + + [_LOWER] = LAYOUT_ortho_3x10( + KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, KC_PGUP, KC_HOME, KC_UP, KC_END, XXXXXXX, + KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, + KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______, OS_LALT, OS_LGUI, OS_LCTL, KC_CAPS + ), + + [_PLOVER] = LAYOUT_ortho_3x10( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR, + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR, + MO_ADJ, STN_NUM, STN_A, STN_O, STN_NUM, STN_E, STN_U, STN_NUM, STN_NUM, XXXXXXX + ), + + [_ADJUST] = LAYOUT_ortho_3x10( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ST_BOLT, ST_GEM, TG_PLV, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET + ), + +}; diff --git a/keyboards/gherkin/keymaps/talljoe-gherkin/rules.mk b/keyboards/gherkin/keymaps/talljoe-gherkin/rules.mk new file mode 100644 index 0000000000..02216ecb36 --- /dev/null +++ b/keyboards/gherkin/keymaps/talljoe-gherkin/rules.mk @@ -0,0 +1,6 @@ +ifndef QUANTUM_DIR + include ../../../../Makefile +endif + +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER diff --git a/keyboards/gherkin/keymaps/talljoe_gherkin/config.h b/keyboards/gherkin/keymaps/talljoe_gherkin/config.h deleted file mode 100644 index 7fa3bf328e..0000000000 --- a/keyboards/gherkin/keymaps/talljoe_gherkin/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#endif diff --git a/keyboards/gherkin/keymaps/talljoe_gherkin/keymap.c b/keyboards/gherkin/keymaps/talljoe_gherkin/keymap.c deleted file mode 100644 index ea2921924e..0000000000 --- a/keyboards/gherkin/keymaps/talljoe_gherkin/keymap.c +++ /dev/null @@ -1,58 +0,0 @@ -#include QMK_KEYBOARD_H -#include "keymap_steno.h" - -#define ST_BOLT QK_STENO_BOLT -#define ST_GEM QK_STENO_GEMINI - -#define XXXXXXX KC_NO - -enum keyboard_layers { - _QWERTY, - _RAISE, - _LOWER, - _PLOVER, - _ADJUST -}; - -#define ADJ_Z LT(_ADJUST, KC_Z) -#define RS_BSPC LT(_RAISE, KC_BSPC) -#define LW_SPC LT(_LOWER, KC_SPC) -#define MO_ADJ MO(_ADJUST) -#define TG_PLV TG(_PLOVER) -#define OS_LCTL OSM(MOD_LCTL) -#define OS_LALT OSM(MOD_LALT) -#define OS_LGUI OSM(MOD_LGUI) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_QWERTY] = LAYOUT_ortho_3x10( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_RSFT, - ADJ_Z, KC_X, KC_C, KC_V, RS_BSPC, LW_SPC, KC_B, KC_N, KC_M, KC_ENT - ), - - [_RAISE] = LAYOUT_ortho_3x10( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_7, KC_9, KC_0, - KC_ESC, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC, _______, KC_QUOT, KC_SCLN, _______, - OS_LCTL, OS_LGUI, OS_LALT, KC_GRV, _______, KC_TAB, KC_BSLS, KC_COMM, KC_DOT, KC_SLSH - ), - - [_LOWER] = LAYOUT_ortho_3x10( - KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, KC_PGUP, KC_HOME, KC_UP, KC_END, XXXXXXX, - KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, - KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______, OS_LALT, OS_LGUI, OS_LCTL, KC_CAPS - ), - - [_PLOVER] = LAYOUT_ortho_3x10( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR, - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR, - MO_ADJ, STN_NUM, STN_A, STN_O, STN_NUM, STN_E, STN_U, STN_NUM, STN_NUM, XXXXXXX - ), - - [_ADJUST] = LAYOUT_ortho_3x10( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ST_BOLT, ST_GEM, TG_PLV, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET - ), - -}; diff --git a/keyboards/gherkin/keymaps/talljoe_gherkin/rules.mk b/keyboards/gherkin/keymaps/talljoe_gherkin/rules.mk deleted file mode 100644 index 02216ecb36..0000000000 --- a/keyboards/gherkin/keymaps/talljoe_gherkin/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -ifndef QUANTUM_DIR - include ../../../../Makefile -endif - -MOUSEKEY_ENABLE = no # Mouse keys(+4700) -STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER diff --git a/keyboards/jd45/keymaps/talljoe/config.h b/keyboards/jd45/keymaps/talljoe/config.h new file mode 100644 index 0000000000..f8b0333cfb --- /dev/null +++ b/keyboards/jd45/keymaps/talljoe/config.h @@ -0,0 +1,22 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include QMK_KEYBOARD_CONFIG_H + +#define PREVENT_STUCK_MODIFIERS +#define SPACE_COUNT 2 + +#define TEMPLATE( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) { \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K0D, K1D }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, KC_NO }, \ + { K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO }, \ + { K40, K00, K41, K42, K44, KC_NO, K45, KC_NO, K48, K49, K3D, K4C, KC_NO } \ +} + +#endif diff --git a/keyboards/jd45/keymaps/talljoe/keymap.c b/keyboards/jd45/keymaps/talljoe/keymap.c new file mode 100644 index 0000000000..7812add812 --- /dev/null +++ b/keyboards/jd45/keymaps/talljoe/keymap.c @@ -0,0 +1 @@ +// This space intentionally left blank diff --git a/keyboards/tv44/keymaps/talljoe-minivan/config.h b/keyboards/tv44/keymaps/talljoe-minivan/config.h new file mode 100644 index 0000000000..fa1f43adce --- /dev/null +++ b/keyboards/tv44/keymaps/talljoe-minivan/config.h @@ -0,0 +1,53 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include QMK_KEYBOARD_CONFIG_H + +#define SPACE_COUNT 2 + +#define TEMPLATE( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) KEYMAP_ARROW( \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K0D, \ + K41, K49, K42, K44, K45, K3C, K0B, K00, K3D \ +) + +#define TEMPLATE_ALT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) KEYMAP_ARROW( \ + K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ + K41, K49, K42, K44, K45, K48, K49, K4B, K4C \ +) + +#define TEMPLATE_ADJUST( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) KEYMAP_ARROW( \ + K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K2D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ + K40, K49, K42, K44, K45, K48, K0B, K0C, K4C \ +) + +#define TEMPLATE_RESET KEYMAP_ARROW( \ + RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET) + +#endif diff --git a/keyboards/tv44/keymaps/talljoe-minivan/keymap.c b/keyboards/tv44/keymaps/talljoe-minivan/keymap.c new file mode 100644 index 0000000000..7812add812 --- /dev/null +++ b/keyboards/tv44/keymaps/talljoe-minivan/keymap.c @@ -0,0 +1 @@ +// This space intentionally left blank diff --git a/keyboards/tv44/keymaps/talljoe-minivan/rules.mk b/keyboards/tv44/keymaps/talljoe-minivan/rules.mk new file mode 100644 index 0000000000..a4e40d0ba6 --- /dev/null +++ b/keyboards/tv44/keymaps/talljoe-minivan/rules.mk @@ -0,0 +1,3 @@ +USER_NAME := talljoe + +COMMAND_ENABLE = no # Commands for debug and configuration diff --git a/keyboards/zeal60/rules.mk b/keyboards/zeal60/rules.mk index c4686f9852..f099ea9fdd 100644 --- a/keyboards/zeal60/rules.mk +++ b/keyboards/zeal60/rules.mk @@ -53,7 +53,7 @@ BOOTLOADER = atmel-dfu OPT_DEFS += -DNO_SUSPEND_POWER_DOWN # Build Options -# change to "no" to disable the options, or define them in the Makefile in +# change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) @@ -76,3 +76,4 @@ RAW_ENABLE = yes DYNAMIC_KEYMAP_ENABLE = yes CIE1931_CURVE = yes +LAYOUTS = 60_ansi 60_iso 60_hhkb 60_ansi_split_bs_rshift diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c b/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c index b5dc544927..cfad9da8a3 100644 --- a/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c @@ -1,7 +1,7 @@ #ifdef KEYBOARD_zeal60 #include "config.h" #include "zeal60.h" -#include "zeal_backlight.h" +#include "rgb_backlight.h" #include "action_layer.h" #include "solarized.h" #include "talljoe.h" @@ -9,7 +9,7 @@ // from zeal_backlight.c // we want to be able to set indicators for the spacebar stabs // but they are not represented by a row/index. -extern zeal_backlight_config g_config; +extern backlight_config g_config; void map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led ); void set_backlight_defaults(void) { @@ -17,7 +17,7 @@ void set_backlight_defaults(void) { uint8_t caps_lock; map_row_column_to_led(3, 12, &caps_lock); map_row_column_to_led(4, 7, &space); - zeal_backlight_config default_values = { + backlight_config default_values = { .use_split_backspace = USE_SPLIT_BACKSPACE, .use_split_left_shift = USE_SPLIT_LEFT_SHIFT, .use_split_right_shift = USE_SPLIT_RIGHT_SHIFT, @@ -34,15 +34,17 @@ void set_backlight_defaults(void) { .layer_2_indicator = { .index = space, .color = solarized.yellow }, .layer_3_indicator = { .index = 254, .color = solarized.red }, .alphas_mods = { - BACKLIGHT_ALPHAS_MODS_ROW_0, - BACKLIGHT_ALPHAS_MODS_ROW_1, - BACKLIGHT_ALPHAS_MODS_ROW_2, - BACKLIGHT_ALPHAS_MODS_ROW_3, - BACKLIGHT_ALPHAS_MODS_ROW_4 } + RGB_BACKLIGHT_ALPHAS_MODS_ROW_0, + RGB_BACKLIGHT_ALPHAS_MODS_ROW_1, + RGB_BACKLIGHT_ALPHAS_MODS_ROW_2, + RGB_BACKLIGHT_ALPHAS_MODS_ROW_3, + RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 } }; - memcpy(&g_config, &default_values, sizeof(zeal_backlight_config)); + memcpy(&g_config, &default_values, sizeof(backlight_config)); backlight_config_save(); +#undef CUSTOM_RGB_LAYOUTS +#ifdef CUSTOM_RGB_LAYOUTS solarized_t* S = &solarized; HSV alphas = S->base2; HSV custom_color_map[MATRIX_ROWS][MATRIX_COLS] = CM( @@ -54,9 +56,12 @@ void set_backlight_defaults(void) { ); for (uint8_t row = 0; row < MATRIX_ROWS; ++row) { for (uint8_t col = 0; col < MATRIX_COLS; ++col) { - backlight_set_key_color(row, col, custom_color_map[row][col]); + uint8_t index; + map_row_column_to_led( row, col, &index ); + set_key_color(index, custom_color_map[row][col]); } } +#endif // CUSTOM_RGB_LAYOUTS } bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/rules.mk b/layouts/community/60_ansi_split_bs_rshift/talljoe/rules.mk new file mode 100644 index 0000000000..239f03091a --- /dev/null +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/rules.mk @@ -0,0 +1 @@ +SRC += $(KEYMAP_PATH)/solarized.c diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.c b/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.c new file mode 100644 index 0000000000..3e9e726b95 --- /dev/null +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.c @@ -0,0 +1,23 @@ +#include "solarized.h" + +#define MAKE_COLOR(_H, _S, _V) \ + { .h = (((uint32_t)_H) * 255) / 360, .s = (((uint16_t)_S) * 255) / 100, .v = (((uint16_t)_V) * 255) / 100 } + +solarized_t solarized = { + .base03 = MAKE_COLOR(193, 100, 21), + .base02 = MAKE_COLOR(192, 90, 26), + .base01 = MAKE_COLOR(194, 25, 46), + .base00 = MAKE_COLOR(195, 23, 51), + .base0 = MAKE_COLOR(186, 13, 59), + .base1 = MAKE_COLOR(180, 9, 63), + .base2 = MAKE_COLOR( 44, 11, 93), + .base3 = MAKE_COLOR( 44, 10, 99), + .yellow = MAKE_COLOR( 45, 100, 71), + .orange = MAKE_COLOR( 18, 89, 80), + .red = MAKE_COLOR( 1, 79, 86), + .magenta = MAKE_COLOR(331, 74, 83), + .violet = MAKE_COLOR(237, 45, 77), + .blue = MAKE_COLOR(205, 82, 82), + .cyan = MAKE_COLOR(175, 74, 63), + .green = MAKE_COLOR( 68, 100, 60), +}; diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.h b/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.h new file mode 100644 index 0000000000..3b00caea70 --- /dev/null +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/solarized.h @@ -0,0 +1,27 @@ +#ifndef SOLARIZED_H +#define SOLARIZED_H + +#include "quantum/color.h" + +typedef struct { + HSV base03; + HSV base02; + HSV base01; + HSV base00; + HSV base0; + HSV base1; + HSV base2; + HSV base3; + HSV yellow; + HSV orange; + HSV red; + HSV magenta; + HSV violet; + HSV blue; + HSV cyan; + HSV green; +} solarized_t; + +extern solarized_t solarized; + +#endif diff --git a/users/talljoe/config.h b/users/talljoe/config.h index 1cdbb5a412..0d06a0b12d 100644 --- a/users/talljoe/config.h +++ b/users/talljoe/config.h @@ -1,7 +1,7 @@ #ifndef USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H -#define IGNORE_MOD_TAP_INTERRUPT +#define PERMISSIVE_HOLD #define RESET_LAYER 15 diff --git a/users/talljoe/talljoe.c b/users/talljoe/talljoe.c index e9c69b016a..7a343e7768 100644 --- a/users/talljoe/talljoe.c +++ b/users/talljoe/talljoe.c @@ -5,10 +5,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = TEMPLATE_TKL( 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 , - 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, - 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, - 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 , - 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 , + US_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 , US_BSLS, KC_INS , KC_HOME, KC_PGUP, + US_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, + CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G , KC_H, KC_J, KC_K, KC_L, US_SCLN, US_QUOT, US_ENT , + SH_LBRC, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SH_RBRC, KC_UP , 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), [_WORKMAN] = TEMPLATE( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -34,41 +34,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_A, KC_R, KC_S, KC_T, KC_D , KC_H, KC_N, KC_E, KC_I, KC_O , _______, _______, _______, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - +#if (SPACE_COUNT > 1) + // A tweaked version of the Maltron layout + [_MALTROFF] = TEMPLATE( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_Q, KC_P, KC_Y, KC_G, KC_B , KC_J, KC_M, KC_U, KC_K, KC_L, _______, _______, _______, + _______, KC_A, KC_N, KC_I, KC_S, KC_F , KC_D, KC_T, KC_H, KC_O, KC_R , US_ENT , KC_BSPC, + _______, KC_Z, KC_X, KC_C, KC_V, US_QUOT, KC_SCLN, KC_W, KC_COMM, KC_DOT, KC_SLSH, _______, _______, + _______, _______, _______, MLT_E , _______, _______, _______, _______, _______, _______), +#endif #ifdef ENABLE_GAME_LAYER [_GAME] = TEMPLATE( 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, 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, 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 , 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 , - KC_LCTL, KC_PTT , KC_PGDN, KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_APP , KC_RCTL, KC_PTT ), + KC_LCTL, KC_PTT , KC_PGDN, KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_APP , KC_RCTL, KC_PTT ), #endif - [_NAV] = TEMPLATE( + [_NAV] = TEMPLATE_NAV( KC_GRV , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - 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 , - 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 , - 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 , + US_TAB , KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_INS , KC_PGUP, KC_UP , KC_PGDN, KC_BTN1, KC_BTN3, KC_BTN2, KC_DEL , + CTL_ESC, KC_LCBR, KC_RCBR, KC_LPRN, KC_RPRN, KC_AMPR, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END , US_QUOT, TG_ADJ , + KC_LSFT, KC_EQL, KC_PLUS, KC_MINS, KC_UNDS, KC_ASTR, KC_CALC, US_GRV , KC_WBAK, KC_WFWD, KC_WREF, KC_RSFT, KC_APP , KC_LCTL, KC_LGUI, KC_LALT, NV_SPC2, NV_SPC1, NV_SPC3, KC_RALT, KC_RGUI, KC_RCTL, KC_PTT ), - [_NUM] = TEMPLATE( + [_NUM] = TEMPLATE_NUM( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - 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 , - 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, - KC_LSFT, KC_EQL, KC_PLUS, KC_BSLS, KC_PIPE, KC_SCLN, XXXXXXX, KC_1, KC_2, KC_3, KC_PAST, KC_PSLS, XXXXXXX, + KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_VOLU, KC_CIRC, KC_7, KC_8, KC_9, KC_PMNS, XXXXXXX, XXXXXXX, KC_DEL , + CTL_ESC, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_MUTE, KC_PENT, KC_4, KC_5, KC_6, KC_PPLS, XXXXXXX, KC_ENT , + KC_LSFT, KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_VOLD, KC_PIPE, KC_1, KC_2, KC_3, KC_PAST, KC_PSLS, TG_NUM , KC_LCTL, KC_LGUI, KC_LALT, NM_SPC2, NM_SPC1, NM_SPC3, KC_PDOT, KC_PCMM, KC_RCTL, KC_PTT ), // Adjust layer is on the split-shift key; or NAV+Enter (for non-split keyboards) - [_ADJUST] = TEMPLATE( - 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 , - 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 , + [_ADJUST] = TEMPLATE_ADJUST( + MO_RST , FX(1) , FX(2) , FX(3) , FX(4) , FX(5) , FX(8) , FX(9) , FX(10) , FX(20) , FX(0) , BR_DEC , BR_INC , XXXXXXX, MO_RST , + MO_RST , H1_INC , S1_INC , H2_INC , S2_INC , EF_INC , RGB_HUI, RGB_SAI, RGB_MOD, RGB_M_P, DFAULTS, RGB_VAD, RGB_VAI, MO_RST , 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 , - TG_NKRO, LY_QWER, LY_WORK, LY_NRMN, LY_DVRK, LY_CLMK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MAKE, KC_CAPS, XXXXXXX, - MO_RST , AG_NORM, AG_SWAP, XXXXXXX, BL_STEP, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, TG_GAME), + TG_NKRO, LY_QWER, LY_WORK, LY_NRMN, LY_DVRK, LY_CLMK, XXXXXXX, LY_MALT, XXXXXXX, XXXXXXX, KC_MAKE, KC_CAPS, XXXXXXX, + MO_RST , AG_SWAP, AG_NORM, XXXXXXX, BL_TOGG, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, TG_GAME), // To Reset hit FN + ` + Esc - [_RESET] = TEMPLATE( - RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - RESET , XXXXXXX, XXXXXXX, XXXXXXX, KC_SLEP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX), + [_RESET] = TEMPLATE_RESET, }; void matrix_scan_user(void) { diff --git a/users/talljoe/talljoe.h b/users/talljoe/talljoe.h index 7c34cd41ff..4436c0a044 100644 --- a/users/talljoe/talljoe.h +++ b/users/talljoe/talljoe.h @@ -8,7 +8,7 @@ enum userspace_custom_keycodes { DFAULTS, TOGGLE_BACKLIGHT, EFFECT, - EFFECT_END = EFFECT + 10 + EFFECT_END = EFFECT + 20 }; #ifndef RESET_LAYER @@ -21,6 +21,7 @@ enum layers { _NORMAN, _DVORAK, _COLMAK, + _MALTROFF, _GAME, _NAV, _NUM, @@ -29,7 +30,9 @@ enum layers { }; enum tap_dancers { - TD_SEMICOLON + TD_SEMICOLON, + TD_GRAVE, + TD_QUOTE, }; #define _______ KC_TRNS @@ -39,6 +42,7 @@ enum tap_dancers { #define MO_ADJ MO(_ADJUST) #define MO_RST MO(_RESET) #define TG_ADJ TG(_ADJUST) +#define TG_NUM TG(_NUM) #ifdef ENABLE_GAME_LAYER #define TG_GAME TG(_GAME) #else @@ -49,16 +53,28 @@ enum tap_dancers { #define LY_NRMN DF(_NORMAN) #define LY_DVRK DF(_DVORAK) #define LY_CLMK DF(_COLMAK) +#if SPACE_COUNT >= 2 + #define LY_MALT DF(_MALTROFF) +#else + #define LY_MALT KC_NO +#endif #define TG_NKRO MAGIC_TOGGLE_NKRO #define KC_PTT KC_F24 #define MS_MID KC_MS_BTN3 #define FX(x) (EFFECT + x) -#define US_CAPS CTL_T(KC_ESC) -#define US_QUOT RCTL_T(KC_QUOT) +#define CTL_ESC CTL_T(KC_ESC) +#define US_ENT RCTL_T(KC_ENT) #define US_MINS RCTL_T(KC_QUOT) +#define US_BSLS LCA_T(KC_BSLS) #define US_SCLN TD(TD_SEMICOLON) -#define US_ENT LT(_NUM, KC_ENT) +#define US_GRV TD(TD_GRAVE) +#define US_QUOT TD(TD_QUOTE) +#define US_TAB C_S_T(KC_TAB) +#define SH_LBRC LSFT_T(KC_LBRC) +#define SH_RBRC RSFT_T(KC_RBRC) + +#define MLT_E LT(_NUM, KC_E) #ifndef SPACE_COUNT #define SPACE_COUNT 1 @@ -75,17 +91,34 @@ enum tap_dancers { #define NM_SPC1 _______ #define NM_SPC2 _______ #define NM_SPC3 _______ +#elif (SPACE_COUNT == 2) + #define KC_SPC1 LT(_NAV,KC_SPC) + #define KC_SPC2 LT(_NUM,KC_ENT) + + #define NV_SPC1 KC_SPC + #define NV_SPC2 KC_ENT + + #define NM_SPC1 KC_0 + #define NM_SPC2 KC_SPC + + #define KC_SPC3 XXXXXXX + #define NV_SPC3 XXXXXXX + #define NM_SPC3 XXXXXXX #elif (SPACE_COUNT == 3) - #define KC_SPC1 KC_BSPC + #ifdef SWAP_HANDS_ENABLE + #define KC_SPC1 SH_T(KC_BSPC) + #else + #define KC_SPC1 KC_BSPC + #endif #define KC_SPC2 LT(_NUM,KC_ENT) #define KC_SPC3 LT(_NAV,KC_SPC) #define NV_SPC1 KC_SPC - #define NV_SPC2 C_S_T(KC_ENT) + #define NV_SPC2 KC_ENT #define NV_SPC3 KC_SPC - #define NM_SPC2 XXXXXXX #define NM_SPC1 KC_SPC + #define NM_SPC2 XXXXXXX #define NM_SPC3 KC_0 #else #error "Unsupported space count:" SPACE_COUNT @@ -110,7 +143,7 @@ enum tap_dancers { #define FN_MO2 KC_NO #endif -#ifdef TEMPLATE_TKL +#ifndef TEMPLATE #define _X_ KC_NO #define TEMPLATE( \ KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KJ6, \ @@ -126,7 +159,8 @@ enum tap_dancers { KN2, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, _X_, \ KA4, KP2, KC6, KX1, KK6, KX2, KC0, KM3, KD0, KA1, _X_, _X_, _X_ \ ) -#else +#endif +#ifndef TEMPLATE_TKL #define TEMPLATE_TKL( \ KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \ KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \ @@ -143,4 +177,26 @@ enum tap_dancers { ) #endif +#ifndef TEMPLATE_ALT + #define TEMPLATE_ALT TEMPLATE +#endif +#ifndef TEMPLATE_NUM + #define TEMPLATE_NUM TEMPLATE_ALT +#endif +#ifndef TEMPLATE_NAV + #define TEMPLATE_NAV TEMPLATE_ALT +#endif +#ifndef TEMPLATE_ADJUST + #define TEMPLATE_ADJUST TEMPLATE_ALT +#endif + +#ifndef TEMPLATE_RESET + #define TEMPLATE_RESET TEMPLATE_ALT( \ + RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , \ + RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ + RESET , XXXXXXX, XXXXXXX, XXXXXXX, RESET , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX) +#endif + #endif diff --git a/users/talljoe/tapdance.c b/users/talljoe/tapdance.c index 3198fc67f0..c4d6025f0f 100644 --- a/users/talljoe/tapdance.c +++ b/users/talljoe/tapdance.c @@ -1,34 +1,146 @@ //Tap Dance #include "talljoe.h" -// Send semin-colon + enter on two taps -void tap_dance_semicolon(qk_tap_dance_state_t *state, void *user_data) { +enum { + SINGLE_TAP = 1, + SINGLE_HOLD = 2, + DOUBLE_TAP = 3, + DOUBLE_HOLD = 4, + DOUBLE_SINGLE_TAP = 5, //send two single taps + TRIPLE_TAP = 6, + TRIPLE_HOLD = 7, + SPECIAL = 8 +}; + +static struct { + int quote; + int semicolon; +} tap_state = {0}; + +int cur_dance (qk_tap_dance_state_t *state) { + if (state->count == 1) { + //If count = 1, and it has been interrupted - it doesn't matter if it is pressed or not: Send SINGLE_TAP + if (state->interrupted) { + // if (!state->pressed) return SINGLE_TAP; + //need "permissive hold" here. + // else return SINGLE_HOLD; + //If the interrupting key is released before the tap-dance key, then it is a single HOLD + //However, if the tap-dance key is released first, then it is a single TAP + //But how to get access to the state of the interrupting key???? + return SINGLE_TAP; + } + else { + if (!state->pressed) return SINGLE_TAP; + else return SINGLE_HOLD; + } + } + //If count = 2, and it has been interrupted - assume that user is trying to type the letter associated + //with single tap. + else if (state->count == 2) { + if (state->interrupted) return DOUBLE_SINGLE_TAP; + else if (state->pressed) return DOUBLE_HOLD; + else return DOUBLE_TAP; + } + else if ((state->count == 3) && ((state->interrupted) || (!state->pressed))) return TRIPLE_TAP; + else if (state->count == 3) return TRIPLE_HOLD; + else return SPECIAL; +} + +int hold_cur_dance (qk_tap_dance_state_t *state) { + if (state->count == 1) { + if (state->interrupted) { + if (!state->pressed) return SINGLE_TAP; + else return SINGLE_HOLD; + } + else { + if (!state->pressed) return SINGLE_TAP; + else return SINGLE_HOLD; + } + } + //If count = 2, and it has been interrupted - assume that user is trying to type the letter associated + //with single tap. + else if (state->count == 2) { + if (state->pressed) return DOUBLE_HOLD; + else return DOUBLE_TAP; + } + else if (state->count == 3) { + if (!state->pressed) return TRIPLE_TAP; + else return TRIPLE_HOLD; + } + else return SPECIAL; +} + +// Send semi-colon + enter on two taps +void tap_dance_semicolon_finished(qk_tap_dance_state_t *state, void *user_data) { + tap_state.semicolon = hold_cur_dance(state); + switch (tap_state.semicolon) { + case SINGLE_TAP: case DOUBLE_HOLD: register_code(KC_SCLN); break; + case SINGLE_HOLD: layer_on(_NUM); break; + } +} + +void tap_dance_semicolon_reset(qk_tap_dance_state_t *state, void *user_data) { + switch (tap_state.semicolon) { + case SINGLE_TAP: case DOUBLE_HOLD: unregister_code(KC_SCLN); break; + case DOUBLE_TAP: { + if (get_mods()) { + SEND_STRING(";;"); // send normal when mods are pressed + } + else { + SEND_STRING(";\n"); + } + break; + } + case TRIPLE_TAP: { + SEND_STRING(";\n\n"); + } + case SPECIAL: layer_invert(_NUM); break; + case SINGLE_HOLD: layer_off(_NUM); break; + } + tap_state.semicolon = 0; +} + +// Send `. ~. ``` +void tap_dance_grave_finished(qk_tap_dance_state_t *state, void *user_data) { switch(state->count) { case 1: - register_code(KC_SCLN); - unregister_code(KC_SCLN); + SEND_STRING("`"); break; case 2: - register_code(KC_SCLN); - unregister_code(KC_SCLN); + SEND_STRING("~"); + break; + } +} - uint8_t mods = get_mods(); - if (mods) { - clear_mods(); - } +void tap_dance_grave_each(qk_tap_dance_state_t *state, void *user_data) { + if(state->count == 3) { + SEND_STRING("```"); + } else if (state->count > 3) { + SEND_STRING("`"); + } +} - register_code(KC_ENT); - unregister_code(KC_ENT); - if (mods) { - set_mods(mods); - } +void tap_dance_quote_finished(qk_tap_dance_state_t *state, void *user_data) { + tap_state.quote = hold_cur_dance(state); + switch (tap_state.quote) { + case SINGLE_TAP: case DOUBLE_HOLD: register_code(KC_QUOT); break; + case SINGLE_HOLD: layer_on(_NAV); break; + } +} - reset_tap_dance(state); - break; +void tap_dance_quote_reset(qk_tap_dance_state_t *state, void *user_data) { + switch (tap_state.quote) { + case SINGLE_TAP: case DOUBLE_HOLD: unregister_code(KC_QUOTE); break; + case DOUBLE_TAP: SEND_STRING("\""); break; + case TRIPLE_TAP: layer_invert(_NAV); break; + case SINGLE_HOLD: layer_off(_NAV); break; } + tap_state.quote = 0; } qk_tap_dance_action_t tap_dance_actions[] = { - [TD_SEMICOLON] = ACTION_TAP_DANCE_FN(tap_dance_semicolon), + [TD_SEMICOLON] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, tap_dance_semicolon_finished, tap_dance_semicolon_reset), + [TD_GRAVE] = ACTION_TAP_DANCE_FN_ADVANCED(tap_dance_grave_each, tap_dance_grave_finished, NULL), + [TD_QUOTE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, tap_dance_quote_finished, tap_dance_quote_reset), }; -- cgit v1.2.3 From 14f691d2a749c6f4fd9bf39d219da1369747cd8d Mon Sep 17 00:00:00 2001 From: Mat Greten Date: Wed, 19 Sep 2018 17:15:13 -0600 Subject: Keymap: meagerfindings ergodox (#3920) * initial commit * updating after review --- layouts/community/ergodox/meagerfindings/README.md | 109 ++++ layouts/community/ergodox/meagerfindings/config.h | 26 + layouts/community/ergodox/meagerfindings/keymap.c | 558 +++++++++++++++++++++ layouts/community/ergodox/meagerfindings/rules.mk | 3 + 4 files changed, 696 insertions(+) create mode 100644 layouts/community/ergodox/meagerfindings/README.md create mode 100644 layouts/community/ergodox/meagerfindings/config.h create mode 100644 layouts/community/ergodox/meagerfindings/keymap.c create mode 100644 layouts/community/ergodox/meagerfindings/rules.mk (limited to 'layouts') diff --git a/layouts/community/ergodox/meagerfindings/README.md b/layouts/community/ergodox/meagerfindings/README.md new file mode 100644 index 0000000000..e7e4270db9 --- /dev/null +++ b/layouts/community/ergodox/meagerfindings/README.md @@ -0,0 +1,109 @@ +![Base](https://meagerfindings.com/assets/img/ergodox/base.png) + +# Meagerfinding's ErgoDox Layout + + + +- [Overview](#overview) +- [Credit where credit is due](#credit-where-credit-is-due) +- [Features](#features) + - [Tap/Hold Macro Keys](#taphold-macro-keys) + - [TapDance Keys](#tapdance-keys) +- [Base Layer](#base-layer) + - [Things to note:](#things-to-note) +- [Old Base Layer](#old-base-layer) +- [Symbols Layer](#symbols-layer) +- [Mouse & Media Keys Layer](#mouse-media-keys-layer) +- [Markdown Layer](#markdown-layer) +- [Arrow/Movements Layer](#arrowmovements-layer) +- [Numpad Layer](#numpad-layer) + + + +## Overview + +The overall goals of this layout are to: +1. Use the Ergodox thumb clusters to eliminate pinky reach. +2. Place as many useful keys under the home rows as possible. + +I first decided to build an ErgoDox as I wanted to use my thumbs for more with the added ergonomic benefits of a split board and ortholinear layout. I knew my hands were hurting from the weird contortions of copying and pasting constantly on my Mac, but I had no idea how strained I really was until I started moving as many modifier keys to the thumb clusters. + +## Credit where credit is due + +The initial layout used created on the [ErgoDox EZ Configurator](https://ergodox-ez.com/pages/graphical-configurator). I went through 26+ iterations within the configurator prior to beginning my journey with QMK itself. Much of the dual function/layer keys are influenced by and adapted from the EZ Configurator. + +Many features in this layout are either directly inspired by or are adaptations of [Algernon's incredible ErgoDox layout](https://github.com/algernon/ergodox-layout). Specifically: TapDance and its usage, and the brilliant idea of using TapDance to pair down the four keys for parens, brackets, and curly braces into just 2 keys. + +## Features + +### Tap/Hold Macro Keys +* `Paste/Paste Special` key sends Paste on tap and Paste Special when held. +* `Screen/Video` key sends `||scrn` when tapped and `||video` when held + - [Typinator](http://www.ergonis.com/products/typinator/) expands `||scrn` into `(Screenshot: )`, and `||video` into `(Video: )`, the QMK macro then moves back to before the last paren, inserts a space and removes a space to create a hyperlink for use in Zendesk. +* When tapped, `Todoist` toggles quick add window for a new Todoist task (`CMD + Shift + A`) and switches to Todoist when held +* The RubyMine key opens RubyMine by triggering spotlight, typing out `Rubymine`, and submitting the enter key. +* `Zendesk` triggers spotlight and then calls Typinator expansion to open my Zendesk Agent dashboard in Chrome. + + +### TapDance Keys +* `Copy/Cut` key copies on tap, cut's on two taps. +* One tap on `Snagit` key = sends `Ctrl + Shift + C` which is Snagit's selector and two taps on `Snagit` key = `Cmd + Shift + Opt + 4`, OS X cropping screenshot that is copied to the clipboard only. +* Tapping the `[{(`/`)}]` keys once yields `[` or `{` when the shift key is engaged, tapping them twice yields `(`. + +## Base Layer + +![Base](https://meagerfindings.com/assets/img/ergodox/base.png) + +The base layer retains the alphas from the QWERTY layout without any modifications. + +### Things to note: + +- The shift key is a One Shot Modifier key, meaning shift is not submitted when the key is tapped, instead, it only submits when you either tap it again, or on the next key press. + - There is no CAPSLOCK key designated as it is pretty comfortable to simply hold down shift in this layout and continue typing. +- There is only one layer that you can fully switch to on this layout, the [Old Base layer](#old-base-layer). All other layers require holding a key to reach them. For the most part, the key that toggles a layer, will be on the opposite hand that will be typing with that layer. + - For example: the symbols layer is reached by holding down the enter key with your right thumb, and most of the symbols are located on the left hand board. + + +## Old Base Layer + +![Old Base](https://meagerfindings.com/assets/img/ergodox/old_base.png) + +I am moving into a new position (software engineering) at work from a Support position. My hope is to use my F keys more often and write fewer emails. This is my old base layer, still easily accessible, as I'm not used to having F key's on my top row quite yet. + +## Symbols Layer + +![Symbols](https://meagerfindings.com/assets/img/ergodox/symbols.png) + +Holding down the `enter` key with your right thumb toggles the symbol layer. + +I've placed my most used symbols under the homerow. Granted, right now I mainly right emails/support ticket responses, so this home row may need to change as I transition to software engineering. + +## Mouse & Media Keys Layer + +![Mouse & Media](https://meagerfindings.com/assets/img/ergodox/mouse_media.png) + +Holding down the `:` key on with your right pinky toggles the mouse and media layer. Your left hand controls the mouse directions just in a similar fashion to the keys used in the [movement layer](#arrowmovements-layer). + +The right hand has a media controls under the homerow for quick muting/pausing. + +* `XKCD #1319` Key that ironically partially-automates accessing the link to [XKCD #1319](https://xkcd.com/1319/). + +## Markdown Layer + +![Markdown](https://meagerfindings.com/assets/img/ergodox/markdown.png) + +This layer places most common markdown symbols under the right hand. You can reach this layer by holding down the `F` key on your left hand. + +## Arrow/Movements Layer + +![Movement](https://meagerfindings.com/assets/img/ergodox/movement_arrows.png) + +Toggled by holding down the space key with the right thumb. This isn't vim like movement, nope, it's `WASD` but over one column. So I guess it's actually `ESDF` on the left hand and `IJKL` on the right hand to better line up with the columns offset/staggered columns on the Dox. + +## Numpad Layer + +![Numpad](https://meagerfindings.com/assets/img/ergodox/numpad.png) + +My right hand is pretty comfortable with tenkey number input so this is easily accessible by holding down backspace with the left thumb. + +Also, on the left hand, there is a tap to copy and hold to cut macro under the `D` key, and a tap to paste and a hold to paste special macro on the `F` key. I guess I'm to too lazy to move my fingers when copying/pasting... diff --git a/layouts/community/ergodox/meagerfindings/config.h b/layouts/community/ergodox/meagerfindings/config.h new file mode 100644 index 0000000000..3d4f11b43a --- /dev/null +++ b/layouts/community/ergodox/meagerfindings/config.h @@ -0,0 +1,26 @@ +#undef VENDOR_ID +#define VENDOR_ID 0xFEED +#undef PRODUCT_ID +#define PRODUCT_ID 0x1307 +#undef DEVICE_VER +#define DEVICE_VER 0x0001 +#undef MANUFACTURER +#define MANUFACTURER meagerfindings +#undef PRODUCT +#define PRODUCT ErgoDox +#undef DESCRIPTION +#define DESCRIPTION meagerfindings firmware for Ergodox + +#define USB_MAX_POWER_CONSUMPTION 500 + +#undef MOUSEKEY_INTERVAL +#define MOUSEKEY_INTERVAL 20 +#undef MOUSEKEY_DELAY +#define MOUSEKEY_DELAY 0 +#undef MOUSEKEY_TIME_TO_MAX +#define MOUSEKEY_TIME_TO_MAX 18 +#undef MOUSEKEY_MAX_SPEED +#define MOUSEKEY_MAX_SPEED 4 + +#undef TAPPING_TERM +#define TAPPING_TERM 200 diff --git a/layouts/community/ergodox/meagerfindings/keymap.c b/layouts/community/ergodox/meagerfindings/keymap.c new file mode 100644 index 0000000000..62504f9667 --- /dev/null +++ b/layouts/community/ergodox/meagerfindings/keymap.c @@ -0,0 +1,558 @@ +#include QMK_KEYBOARD_H +#include "version.h" + +enum { + BASE = 0, + OLD_BASE, + SYMBL, + MEDIA, + MKDWN, + ARROWS, + NUM, +}; + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + MD_LINK, + XKCD, + DBLE_ZER0, + L_ID_0, + L_ID_1, + L_ID_2, + PAST_PS, + TODO, + RUBYMINE, + ZENDESK, + DBLE_ASTR, + TRPLE_GRAVE, + H_ONE, + H_TWO, + H_THREE, + H_FOUR, + H_FIVE, + M_LINK, + M_GREATER, + TD_COPY_CUT = 6, + TD_SNAGIT = 8, + TD_B_L_SEL = 10, + CT_LBP = 11, + CT_RBP = 12 +}; + +//Redefine Key Names for Readaibilty +#define XXXXXXX KC_NO +#define SCRN_CLIPB LCTL(LGUI(LSFT(KC_4))) +#define CHRM_L LALT(LGUI(KC_LEFT)) //Move left one tab in Chrome +#define CHRM_R LALT(LGUI(KC_RIGHT)) //Move right one tab in Chrome +#define S_CMD_S LGUI_T(KC_S) //`S` when typing `CMD` when held +#define D_CMD_OPT LGUI_T(LALT_T(KC_D)) //`D` when typing `CMD + Opt` when held + +static uint16_t key_timer; //key timer for macros + +//Tap Dance Definitions +qk_tap_dance_action_t tap_dance_actions[] = { + //Tap once for Copy, twice for Paste, three times for Cut. + [TD_COPY_CUT] = ACTION_TAP_DANCE_DOUBLE(LGUI(KC_C),LGUI(KC_X)), + //Tap once for Snagit, twice for Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.) + [TD_SNAGIT] = ACTION_TAP_DANCE_DOUBLE(LCTL(LSFT(KC_C)), LCTL(LGUI(LSFT(KC_4)))), + [CT_LBP] = ACTION_TAP_DANCE_DOUBLE (KC_LBRC, KC_LPRN), + [CT_RBP] = ACTION_TAP_DANCE_DOUBLE (KC_RBRC, KC_RPRN) +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Keymap 0: Basic layer + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | "> " | | []() | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | SCRN |------+------+------+------+------+--------| + * | Hyper | A |S /CMD|D/OPT | F /MD| G |------| |------| H | J |K/OPT |L /CMD| ; /L2| '/Hyper| + * |--------+------+------+------+------+------| ( | | ) |------+------+------+------+------+--------| + * |Shft Tab|Z/Ctrl|X/Alt | C | V | B | [ { | | ] } | N | M | , | ./Alt|//Ctrl|CMD+SHFT| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ` |Zendsk|RBMINE|CMD+S | ToDo | | _ | | 00 | 00 |OLD BASE| + * `----------------------------------' `----------------------------------' + * ,-------------. ,--------------. + * | Esc | Home | |Layer?| Esc | + * ,------|------|------| |------+-------+------. + * | | | End | | Undo | | | + * |Shift |Backsp|------| |------| Return|Space/| + * | OSM | /NUM | DEL | | Ctrl | /SYML |Arrows| + * `--------------------' `---------------------' + * + *Copy/Cut key copies on tap, cut's on two taps. + * + *One tap on Snagit key = is Ctrl + Shift + C which is Snagit's selector. + *Two taps on Snagit key = Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.) + */ + + [BASE] = LAYOUT_ergodox( + //left hand + KC_EQUAL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, M_GREATER, + OSM(MOD_HYPR), KC_A, S_CMD_S, ALT_T(KC_D), LT(MKDWN,KC_F), KC_G, + LSFT(KC_TAB), CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, TD(CT_LBP), + KC_GRAVE, ZENDESK, RUBYMINE, LGUI(KC_S), TODO, + KC_ESCAPE, KC_HOME, + KC_END, + OSM(MOD_LSFT), LT(NUM,KC_BSPACE), LT(MKDWN,KC_DELETE), + + //right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINUS, + MD_LINK, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLASH, + KC_H, KC_J, ALT_T(KC_K), LGUI_T(KC_L), LT(MEDIA,KC_SCOLON), ALL_T(KC_QUOTE), + TD(CT_RBP), KC_N, KC_M, KC_COMMA, ALT_T(KC_DOT), CTL_T(KC_SLASH), SCMD_T(_______), + LSFT(KC_MINUS), _______, DBLE_ZER0, DBLE_ZER0, TO(OLD_BASE), + L_ID_0, KC_ESCAPE, + LGUI(KC_Z), + LT(MEDIA,KC_LCTL), LT(SYMBL,KC_ENTER), LT(ARROWS,KC_SPACE)), + + /* Keymap 1: OLD Base layer + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | []() | |Snagit| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | "> " | | []() | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | SCRN |------+------+------+------+------+--------| + * | Hyper | A |S /CMD| D | F | G |------| |------| H | J | K |L /CMD| ; /L2| '/Hyper| + * |--------+------+------+------+------+------| ( | | ) |------+------+------+------+------+--------| + * |Shft Tab|Z/Ctrl|X/Alt | C | V | B | [ { | | ] } | N | M | , | ./Alt|//Ctrl|CMD+SHFT| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ` |Zendsk|RBMINE|CMD+S | ToDo | | _ | | 00 | 00 |ToBase| + * `----------------------------------' `----------------------------------' + * ,-------------. ,--------------. + * | Esc | Home | |Layer?| Esc | + * ,------|------|------| |------+-------+------. + * | | | End | | Undo | | | + * |Shift |Backsp|------| |------| Return|Space/| + * | OSM | /L5 | DEL | | Ctrl | /LT1 |Arrows| + * `--------------------' `---------------------' + * + *Copy/Cut key copies on tap, cut's on two taps. + * + *One tap on Snagit key = is Ctrl + Shift + C which is Snagit's selector. + *Two taps on Snagit key = Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.) + */ + + [OLD_BASE] = LAYOUT_ergodox( + //left hand + KC_EQUAL, KC_1, KC_2, KC_3, KC_4, KC_5, M_LINK, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, M_GREATER, + OSM(MOD_HYPR), KC_A, S_CMD_S, D_CMD_OPT, LT(MKDWN,KC_F),KC_G, + LSFT(KC_TAB), CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, TD(CT_LBP), + KC_GRAVE, ZENDESK, RUBYMINE, LGUI(KC_S), TODO, + KC_ESCAPE, KC_HOME, + KC_END, + OSM(MOD_LSFT), LT(NUM,KC_BSPACE), LT(MKDWN,KC_DELETE), + + //right hand + TD(TD_SNAGIT), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, + MD_LINK, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLASH, + KC_H, KC_J, KC_K, LGUI_T(KC_L), LT(MEDIA,KC_SCOLON), ALL_T(KC_QUOTE), + TD(CT_RBP), KC_N, KC_M, KC_COMMA, ALT_T(KC_DOT), CTL_T(KC_SLASH), SCMD_T(_______), + LSFT(KC_MINUS), _______, DBLE_ZER0, DBLE_ZER0, TO(BASE), + L_ID_0, KC_ESCAPE, + LGUI(KC_Z), + LT(MEDIA,KC_LCTL), LT(SYMBL,KC_ENTER), LT(ARROWS,KC_SPACE)), + + /* Keymap 2: Symbol + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | []() | |Snagit| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | $ | & | ` | | | Cmd | | | | | * | | | | + * |--------+------+------+------+------+------| + K | | |------+------+------+------+------+--------| + * | | # | $ | & | ! | @ |------| |------| - | [ | ] | ( | ) | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | | | ~ | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | |Layer?| | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // SYMBOLS + [SYMBL] = LAYOUT_ergodox( + //left hand + _______, KC_1, KC_2, KC_3, KC_4, KC_5, M_LINK, + _______, _______, KC_DLR, KC_AMPR, KC_GRAVE, KC_PIPE, LGUI(KC_K), + _______, KC_HASH, KC_DLR, KC_AMPR, KC_EXLM, KC_AT, + _______, KC_PERC, KC_CIRC, _______, _______, KC_TILD, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______, + + //right hand + TD(TD_SNAGIT), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, + _______, _______, _______, KC_PAST, _______, _______, _______, + KC_MINUS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + L_ID_1, _______, + _______, + _______, _______, _______), + + /* Keymap 3: Media and mouse keys + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | XKCD | | | | | | F15 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | |Whl Up| MsUp |Whl Dn| | | | | | | | | | F14 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |Ctl L |MsLeft|MsDown|MsRght| Ctl R|------| |------| | Mute | VolDn| VolUp| TL 2 | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |WHL L | |Whl R | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Mute | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | |LAYER?| | + * ,------|------|------| |------+------+------. + * | Left |Right | | | |Copy/ | paste| + * | Click|Click |------| |------| cut |/paste| + * | | | | | | |spcial| + * `--------------------' `--------------------' + */ + // MEDIA AND MOUSE + + [MEDIA] = LAYOUT_ergodox( + //left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_MS_WH_UP, KC_MS_UP, KC_MS_WH_DOWN, _______, _______, + _______, LCTL(KC_LEFT), KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, RCTL(KC_RIGHT), + XXXXXXX, _______, KC_MS_WH_LEFT, _______, KC_MS_WH_RIGHT, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + KC_MS_BTN1, KC_MS_BTN2, _______, + + //right hand + XKCD, _______, _______, _______, _______, _______, KC_F15, + _______, _______, _______, _______, _______, _______, KC_F14, + _______, KC_AUDIO_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, _______, KC_MEDIA_PLAY_PAUSE, + _______, _______, _______, KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, _______, XXXXXXX, + _______, _______, _______, _______, _______, + L_ID_2, _______, + _______, + _______, TD(TD_COPY_CUT), PAST_PS), + + /* Keymap 4: Markdown Symbols + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | |SCRNCL| | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | ``` | ** | _ | ` | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | TL MD| |------| |------| - | [ | ] | ( | ) | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | # | ## | ### | #### | #####| | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | |Layer?| | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * Sc cp = OS X cropping screenshot that is copied to the clipboard only. + */ + // Markdown Layer + [MKDWN] = LAYOUT_ergodox( + //left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______, + + //right hand + SCRN_CLIPB, _______, _______, _______, _______, _______, _______, + _______, _______, TRPLE_GRAVE, DBLE_ASTR,LSFT(KC_MINUS), KC_GRAVE, _______, + KC_MINUS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, _______, + _______, H_ONE, H_TWO, H_THREE, H_FOUR, H_FIVE, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______), + + /* Keymap 5: Arrows + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Opt+L| Up |Opt+R | | | | | | Opt+L| Up |Opt+R | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |Ctrl+L| Left | Dn | Right|Ctrl+R|------| |------|Ctrl+L| Left | Dn | Right|Ctrl+R| | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * + * + */ + // Movement Layer + + [ARROWS] = LAYOUT_ergodox( + //left hand + RESET, _______, _______, _______, _______, _______, _______, + _______, _______, CHRM_L, KC_UP, CHRM_R, _______, _______, + _______,LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______, + //right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, CHRM_L, KC_UP, CHRM_R, _______, _______, + LCTL(KC_LEFT), KC_LEFT, KC_DOWN, LGUI_T(KC_RIGHT), LCTL(KC_RIGHT), _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______), + + /* Keymap 6: Numpad + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | = | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | |Cp/Cut|paste | |------| |------| + | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | - | 1 | 2 | 3 | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | . | 00 | 00 | Enter| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Nupmad| | + * | | |------| |------|Enter | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // Numpad Layer + [NUM] = LAYOUT_ergodox( + //left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, TD(TD_COPY_CUT), PAST_PS, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______, + + //right hand + _______, _______, _______, _______, _______, _______, _______, + _______, KC_EQUAL, KC_7, KC_8, KC_9, KC_ASTR, _______, + KC_PLUS, KC_4, KC_5, KC_6, KC_PLUS, _______, + _______, KC_MINUS, KC_1, KC_2, KC_3, KC_KP_SLASH, _______, + KC_KP_0, KC_DOT, DBLE_ZER0, DBLE_ZER0, KC_KP_ENTER, + _______, _______, + _______, + _______, KC_PENT, _______), +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + switch (keycode) { + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + + case MD_LINK: + if (record->event.pressed){ + key_timer = timer_read(); + } else { + if (timer_elapsed(key_timer) > 150) { + SEND_STRING ("([Video]("); + } else { + SEND_STRING ("([Screenshot]("); + } + SEND_STRING(SS_LGUI("v")); + SEND_STRING("))"); + } + break; + + case XKCD: + if (record->event.pressed) { + SEND_STRING ("https://xkcd.com/1319/"); + } + break; + + case DBLE_ZER0: + if (record->event.pressed){ + SEND_STRING ("00"); + } + break; + + case DBLE_ASTR: + if (record->event.pressed){ + SEND_STRING ("**"); + SEND_STRING ("**"); + SEND_STRING (SS_TAP(X_LEFT)); + SEND_STRING (SS_TAP(X_LEFT)); + } + break; + + case TRPLE_GRAVE: + if (record->event.pressed){ + SEND_STRING ("```"); + } + break; + + case L_ID_0: + if (record->event.pressed) { + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("Layer 0: Base"); + } + break; + + case L_ID_1: + if (record->event.pressed) { + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("Layer 1: Symbols"); + } + break; + + case L_ID_2: + if (record->event.pressed) { + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("Layer 2: Media & Mousekeys"); + } + break; + + case PAST_PS: + if (record->event.pressed) { + key_timer = timer_read(); + } else { + if (timer_elapsed(key_timer) > 150) { + SEND_STRING (SS_LGUI("V")); // Paste special + } else { + SEND_STRING (SS_LGUI("v")); // Paste + } + } + break; + + case TODO: + if (record->event.pressed) { + key_timer = timer_read(); + } else { + if (timer_elapsed(key_timer) > 150) { //switch to Todoist when held and released + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("Todoist"); + SEND_STRING (SS_TAP(X_ENTER)); + } else { + SEND_STRING (SS_LGUI(SS_LCTRL("a"))); //macro to open Todoist new task dialog + } + } + break; + + case RUBYMINE: + if (record->event.pressed){ + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("RUBYMINE"); + SEND_STRING (SS_TAP(X_ENTER)); + } + break; + + case ZENDESK: + if (record->event.pressed){ + SEND_STRING (SS_LGUI(" ")); + SEND_STRING ("||ZEN"); + SEND_STRING (SS_TAP(X_ENTER)); + } + break; + + case H_ONE: + if (record->event.pressed){ + SEND_STRING ("# "); + } + break; + + case H_TWO: + if (record->event.pressed){ + SEND_STRING ("## "); + } + break; + + case H_THREE: + if (record->event.pressed){ + SEND_STRING ("### "); + } + break; + + case H_FOUR: + if (record->event.pressed){ + SEND_STRING ("#### "); + } + break; + + case H_FIVE: + if (record->event.pressed){ + SEND_STRING ("##### "); + } + break; + case M_LINK: + if (record->event.pressed){ + SEND_STRING ("[]()"); + } + break; + case M_GREATER: + if (record->event.pressed){ + SEND_STRING ("> "); + } + break; + } + return true; +}; + +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + break; + } +}; diff --git a/layouts/community/ergodox/meagerfindings/rules.mk b/layouts/community/ergodox/meagerfindings/rules.mk new file mode 100644 index 0000000000..c775e1f6d6 --- /dev/null +++ b/layouts/community/ergodox/meagerfindings/rules.mk @@ -0,0 +1,3 @@ +COMMAND_ENABLE = no +TAP_DANCE_ENABLE = yes +FORCE_NKRO = yes -- cgit v1.2.3 From 223081bf2b201a53fb0383d6be0cacb8cde39140 Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Tue, 25 Sep 2018 15:39:41 -0700 Subject: Keymap: 4x4 pro micro (#3976) * 4x4 - pro micro version * pro-micro setup on 4x4 * tap dance LCTL/RESET key * remove test file * more research * revert a couple un-intended edits * opt_defs version of adding custom rules.mk variables * cleanup * cleanup * cleanup * cleanup * layout edits * layout edits * keymap edit * numpad layout change * got tap dance layer-switch working * keymap changes * temporary revert * restore previous settings * misc fixes * layer order change * fix layout matrix * Update tapdances.c --- keyboards/4x4/4x4.h | 4 +- layouts/community/ortho_4x12/wanleg/config.h | 19 ++++++- layouts/community/ortho_4x12/wanleg/keymap.c | 17 ++++++ users/wanleg/rules.mk | 12 +++-- users/wanleg/tapdances.c | 77 ++++++++++++++++++++++++++-- users/wanleg/wanleg.c | 6 +++ users/wanleg/wanleg.h | 51 +++++++++++++----- 7 files changed, 158 insertions(+), 28 deletions(-) (limited to 'layouts') diff --git a/keyboards/4x4/4x4.h b/keyboards/4x4/4x4.h index db67ab34e9..ec75c3e280 100644 --- a/keyboards/4x4/4x4.h +++ b/keyboards/4x4/4x4.h @@ -43,7 +43,7 @@ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, ___, ___, ___, ___}, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, ___, ___, ___, ___}, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, ___, ___, ___, ___}, \ - { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b, ___, ___, ___, ___} \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, ___, ___, ___, ___} \ } #define LAYOUT_ortho_4x16( \ @@ -56,7 +56,7 @@ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e, K0f }, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e, K1f }, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, K2f }, \ - { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b, K3c, K3d, K3e, K3f } \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e, K3f } \ } #endif diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h index 0d2cc591e3..2444b8b976 100644 --- a/layouts/community/ortho_4x12/wanleg/config.h +++ b/layouts/community/ortho_4x12/wanleg/config.h @@ -1,7 +1,7 @@ #ifndef CONFIG_USER_H #define CONFIG_USER_H -//QMK DFU settings (ProMicro boards) +//QMK DFU settings (ProMicro boards with QMK bootloader) // set top left key as bootloader mode escape key on Lets Split rev2 #if defined(KEYBOARD_lets_split_rev2) #define QMK_LED B0 @@ -13,10 +13,25 @@ #endif // set top left key as bootloader mode escape key on 4x4 48key layout -#if defined(KEYBOARD_4x4) +#if defined(KEYBOARD_4x4) && !defined(PRO_MICRO) #define QMK_LED B0 #define QMK_ESC_OUTPUT C6 // usually COL #define QMK_ESC_INPUT B2 // usually ROW #endif +// use alternate settings for 4x4 board using ProMicro instead of Micro +// usage: make 4x4:wanleg PM=yes +#if defined(KEYBOARD_4x4) && defined(PRO_MICRO) +#define QMK_ESC_OUTPUT F4 // usually COL +#define QMK_ESC_INPUT D1 // usually ROW +#define QMK_LED B0 + +//need to undefine standard 4x4 array before defining alternate ProMicro array +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS +#define MATRIX_ROW_PINS { D1, D0, D4, C6 } +//last 4 elements of the column array are are not broken out on a ProMicro (included only to preserve array structure) +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, B5, B4, E6, D7, F0, B7, D6, F1 } +#endif + #endif diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c index f6030469c0..6fe8446f6d 100644 --- a/layouts/community/ortho_4x12/wanleg/keymap.c +++ b/layouts/community/ortho_4x12/wanleg/keymap.c @@ -15,6 +15,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______________Qwerty_Row__2_______________, KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL ), + +#elif defined(KEYBOARD_4x4) +[_GK] = LAYOUT_ortho_4x12_wrapper( + _______________GherkinLike_0_______________, + _______________GherkinLike_1_______________, + _______________GherkinLike_2_______________, + TD(RST_TAP_DANCE), KC_LGUI, KC_LALT, NUMPAD, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL +), + +[PAD] = LAYOUT_ortho_4x4_wrapper( + _______________NUMPAD_Row__0_______________, + _______________NUMPAD_Row__1_______________, + _______________NUMPAD_Row__2_______________, + _______________NUMPAD_Row__3_______________ +), + #else [_GK] = LAYOUT_ortho_4x12_wrapper( _______________GherkinLike_0_______________, @@ -64,4 +80,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ______________ETCETERA_Row__2______________, ______________ETCETERA_Row__3______________ ), + }; diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index ac86769538..5630401315 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -1,8 +1,4 @@ -ifeq ($(strip $(KEYBOARD)), lets_split_rev2) -SRC += ../../keyboards/lets_split/lets_split.c -endif - -SRC += wanleg.c tapdances.c +SRC += wanleg.c tapdances.c TAP_DANCE_ENABLE = yes MOUSEKEY_ENABLE = yes @@ -12,3 +8,9 @@ MOUSEKEY_ENABLE = yes ifeq ($(strip $(dfu)), qmk) BOOTLOADER = qmk-dfu endif + +#use alternate settings for 4x4 board using ProMicro instead of Micro +#usage: make 4x4:wanleg PM=yes +ifeq ($(strip $(PM)), yes) + OPT_DEFS += -DPRO_MICRO +endif diff --git a/users/wanleg/tapdances.c b/users/wanleg/tapdances.c index 6a98b896a5..0778bf5f7e 100644 --- a/users/wanleg/tapdances.c +++ b/users/wanleg/tapdances.c @@ -36,7 +36,7 @@ int cur_dance (qk_tap_dance_state_t *state) { } ///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION END ///// ///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION START ///// -//instantialize an instance of 'tap' for the 'ENT' tap dance. +//instantiate 'tap' for the 'ENT' tap dance. static tap ENTtap_state = { .is_press_action = true, .state = 0 @@ -67,7 +67,7 @@ void ENT_reset (qk_tap_dance_state_t *state, void *user_data) { ENTtap_state.state = 0; } -//instanalize an instance of 'tap' for the 'DEL' tap dance. +//instantiate 'tap' for the 'DEL' tap dance. static tap DELtap_state = { .is_press_action = true, .state = 0 @@ -95,7 +95,7 @@ void DEL_reset (qk_tap_dance_state_t *state, void *user_data) { DELtap_state.state = 0; } -//instantialize an instance of 'tap' for the 'CAD' tap dance. +//instantiate 'tap' for the 'CAD' tap dance. static tap CADtap_state = { .is_press_action = true, .state = 0 @@ -107,7 +107,9 @@ void CAD_finished (qk_tap_dance_state_t *state, void *user_data) { case SINGLE_TAP: //register_code(KC_SPC); SEND_STRING(SS_LGUI("l")); + #ifdef BACKLIGHT_ENABLE backlight_set(3); + #endif break; case SINGLE_HOLD: //register_code(KC_NO); @@ -121,7 +123,9 @@ void CAD_finished (qk_tap_dance_state_t *state, void *user_data) { case DOUBLE_TAP: //register_code(KC_ENT); SEND_STRING(SS_LCTRL(SS_LALT(SS_TAP(X_DELETE)))); + #ifdef BACKLIGHT_ENABLE backlight_set(0); + #endif break; //case DOUBLE_HOLD: register_code(KC_NO); break; //register this keycode when button is tapped and then held case DOUBLE_HOLD: @@ -136,7 +140,9 @@ void CAD_reset (qk_tap_dance_state_t *state, void *user_data) { case SINGLE_TAP: //unregister_code(KC_SPC); SEND_STRING(SS_LGUI("l")); + #ifdef BACKLIGHT_ENABLE backlight_set(3); + #endif break; case SINGLE_HOLD: register_code(KC_NO); //(un)register this keycode when button is held and then released @@ -145,13 +151,71 @@ void CAD_reset (qk_tap_dance_state_t *state, void *user_data) { case DOUBLE_TAP: //register_code(KC_ENT); SEND_STRING(SS_LCTRL(SS_LALT(SS_TAP(X_DELETE)))); + #ifdef BACKLIGHT_ENABLE backlight_set(0); + #endif break; case DOUBLE_HOLD: register_code(KC_NO); //(un)register this keycode when button is tapped and then held, and then released case DOUBLE_SINGLE_TAP: unregister_code(KC_NO); } CADtap_state.state = 0; -} +} + +//instantiate 'tap' for the 'RST' tap dance. +static tap RSTtap_state = { + .is_press_action = true, + .state = 0 +}; + +void RST_finished (qk_tap_dance_state_t *state, void *user_data) { + RSTtap_state.state = cur_dance(state); + switch (RSTtap_state.state) { + case SINGLE_TAP: register_code(KC_LCTL); break; + case SINGLE_HOLD: register_code(KC_LCTL); break; + case DOUBLE_TAP: reset_keyboard(); break; + case DOUBLE_HOLD: register_code(KC_NO); break; + case DOUBLE_SINGLE_TAP: register_code(KC_LCTL); unregister_code(KC_LCTL); register_code(KC_LCTL); + } +} + +void RST_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (RSTtap_state.state) { + case SINGLE_TAP: unregister_code(KC_LCTL); break; + case SINGLE_HOLD: unregister_code(KC_LCTL); break; + case DOUBLE_TAP: unregister_code(KC_NO); break; + case DOUBLE_HOLD: unregister_code(KC_NO); + case DOUBLE_SINGLE_TAP: unregister_code(KC_LCTL); + } + RSTtap_state.state = 0; +} + +//instantiate 'tap' for the 'LYR' tap dance. +static tap LYRtap_state = { + .is_press_action = true, + .state = 0 +}; + +void LYR_finished (qk_tap_dance_state_t *state, void *user_data) { + LYRtap_state.state = cur_dance(state); + switch (LYRtap_state.state) { + case SINGLE_TAP: register_code(KC_PSLS); break; + case SINGLE_HOLD: register_code(KC_NO); break; + case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; + case DOUBLE_HOLD: register_code(KC_NO); break; + case DOUBLE_SINGLE_TAP: register_code(KC_PSLS); unregister_code(KC_PSLS); register_code(KC_PSLS); + } +} + +void LYR_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (LYRtap_state.state) { + case SINGLE_TAP: unregister_code(KC_PSLS); break; + case SINGLE_HOLD: unregister_code(KC_NO); break; + case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; + case DOUBLE_HOLD: unregister_code(KC_NO); + case DOUBLE_SINGLE_TAP: unregister_code(KC_PSLS); + } + LYRtap_state.state = 0; +} ///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION END ///// //Tap Dance Definitions @@ -162,8 +226,11 @@ qk_tap_dance_action_t tap_dance_actions[] = { ,[TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC) ,[ENT_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ENT_finished, ENT_reset) ,[DEL_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, DEL_finished, DEL_reset) + ,[RST_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, RST_finished, RST_reset) ,[CAD_TD] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, CAD_finished, CAD_reset) + ,[LYR_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, LYR_finished, LYR_reset) + }; //In Layer declaration, add tap dance item in place of a key code -//TD(TD_SFT_CAPS) \ No newline at end of file +//TD(TD_SFT_CAPS) diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c index 931546c153..f22c34ba30 100644 --- a/users/wanleg/wanleg.c +++ b/users/wanleg/wanleg.c @@ -41,6 +41,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case NUMPAD: + if (record->event.pressed) { + set_single_persistent_default_layer(PAD); + } + return false; + break; case SUBTER: if (record->event.pressed) { layer_on(SUB); diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h index 8b98ec7ddf..65028751a9 100644 --- a/users/wanleg/wanleg.h +++ b/users/wanleg/wanleg.h @@ -25,7 +25,8 @@ enum userspace_layers { NUM75, DIR75, ETC75, - FN75 + FN75, + PAD, }; #elif KEYBOARD_xd75 enum userspace_layers { @@ -49,29 +50,31 @@ enum userspace_layers { gNUM, gDIR, gETC, + PAD, }; #else enum userspace_layers { _GK = 0, + PAD, _QW, - QW75, - GK75, - gGK, ONE, SUB, SUP, NUM, DIR, ETC, + gGK, gNUM, gDIR, gETC, + QW75, + GK75, SUB75, SUP75, NUM75, DIR75, ETC75, - FN75 + FN75, }; #endif @@ -95,7 +98,8 @@ enum userspace_custom_keycodes { NUMBER75, DIRECTION75, ETCETERA75, - FUNCTION75 + FUNCTION75, + NUMPAD, }; @@ -107,6 +111,8 @@ enum { ,ENT_TAP_DANCE ,DEL_TAP_DANCE ,CAD_TD + ,RST_TAP_DANCE + ,LYR_TAP_DANCE }; #endif @@ -123,6 +129,7 @@ enum { #define LAYOUT_ortho_5x10_wrapper(...) LAYOUT_ortho_5x10(__VA_ARGS__) #define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) #define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) +#define LAYOUT_ortho_4x4_wrapper(...) LAYOUT_ortho_4x4(__VA_ARGS__) // Blocks for each of the major keyboard layouts // Organized so we can quickly adapt and modify all of them @@ -141,7 +148,7 @@ enum { * | A | S | D | F | G | H | J | K | L | SPACE | * | | | | | | | | | |SFThold | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | Z | X | C | V/gNUM | B/gETC | N | M/gDIR | ,/GUI | ./ALT | BKSC | + * | Z | X | C | V/gNUM | B/gETC | N | M/gDIR | ,/GUI | ./ALT | BSPC | * | SFThold| | | | | | | | |CTRLhold| * '-----------------------------------------------------------------------------------------' */ @@ -168,7 +175,7 @@ enum { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | F11 | F12 | | | | ENTER | SHIFT | GUI | ./ALT | BKSC | + * | F11 | F12 | | | | ENTER | SHIFT | GUI | ./ALT | BSPC | * | | | | | | | | | |CTRLhold| * '-----------------------------------------------------------------------------------------' */ @@ -191,12 +198,12 @@ enum { /* Gherkin-Like * .-----------------------------------------------------------------------------------------------------------. - * | ESC | Q//ESC | W | E | R | T | Y | U | I | O | P | BACKSP | + * | ESC | Q//ESC | W | E | R | T | Y | U | I | O | P | BSPC | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | TAB | A | S | D | F | G | H | J | K | L | SPACE | ' | * | | | | | | | | | | |SFThold | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * |SFT/CAPS| Z | X | C | V/NUM | B/ETC | N | M/DIR | ,/GUI | ./ALT | BKSC | ENT/SFT| + * |SFT/CAPS| Z | X | C | V/NUM | B/ETC | N | M/DIR | ,/GUI | ./ALT | BSPC | ENT/SFT| * | |SFThold | | | | | | | | |CTRLhold| | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | LCTRL | LGUI | ALT | ONEHAND| NUM | ETC | SPACE | DIR | RGUI | ALT | DEL | CTRL | @@ -210,7 +217,7 @@ enum { /* Qwerty * .-------------------------------------------------------------------------------------. - * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * | Esc | Q | W | E | R | T | Y | U | I | O | P | BSPC | * |-------+------+------+------+------+-------------+------+------+------+------+-------| * | Tab | A | S | D | F | G | H | J | K | L | ; | ' | * |-------+------+------+------+------+------|------+------+------+------+------+-------| @@ -246,7 +253,7 @@ enum { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | | F11 | F12 | | | | | | RGUI | ./ALT | BKSC | | + * | | F11 | F12 | | | | | | RGUI | ./ALT | BSPC | | * | | | | | | | | | | |CTRLhold| | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | | | gherkin| | | | ENTER | SHIFT | | | | | @@ -259,11 +266,11 @@ enum { /* Gherkin Numbers * .-----------------------------------------------------------------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | BACKSP | + * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | BSPC | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | | F11 | F12 | | | | ENTER | SHIFT | RGUI | ./ALT | BKSC | | + * | | F11 | F12 | | | | ENTER | SHIFT | RGUI | ./ALT | BSPC | | * | | | | | | | | | | |CTRLhold| | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | | | | | | | ENTER | SHIFT | RGUI | | | | @@ -307,4 +314,20 @@ enum { #define ______________ETCETERA_Row__2______________ _______, _______________Gherkin_ETC_2_______________, _______ #define ______________ETCETERA_Row__3______________ _______, _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______, _______ +/* Single 4x4 board only + * .-----------------------------------. + * | 7 | 8 | 9 | BSPC | + * |--------+--------+--------+--------| + * | 4 | 5 | 6 | SPACE | + * |--------+--------+--------+--------| + * | 1 | 2 | 3 | ENTER | + * |--------+--------+--------+--------| + * | 0 |/ //_GK | . | - | + * '-----------------------------------' + */ + +#define _______________NUMPAD_Row__0_______________ KC_KP_7, KC_KP_8, KC_KP_9, KC_BSPC +#define _______________NUMPAD_Row__1_______________ KC_KP_4, KC_KP_5, KC_KP_6, KC_SPC +#define _______________NUMPAD_Row__2_______________ KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT +#define _______________NUMPAD_Row__3_______________ KC_KP_0, TD(LYR_TAP_DANCE), KC_KP_DOT, KC_PMNS #endif // !USERSPACE -- cgit v1.2.3 From ec0297027d5ad180af06d41dbfa351d313fe91e8 Mon Sep 17 00:00:00 2001 From: noroadsleft <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 26 Sep 2018 19:19:38 -0700 Subject: Bugfix for 60_ansi_tsangan and 60_iso_tsangan layouts (#3987) This corrects the matrix macro reference for both of the keymap.c files in layouts/default. --- .../default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c | 12 ++++++------ .../default/60_iso_tsangan/default_60_iso_tsangan/keymap.c | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) (limited to 'layouts') diff --git a/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c b/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c index 8f7f5f8c6f..e4562ede51 100644 --- a/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c +++ b/layouts/default/60_ansi_tsangan/default_60_ansi_tsangan/keymap.c @@ -1,11 +1,11 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_60_ansi( - 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_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_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 , - 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_LCTL , KC_LGUI , KC_LALT , KC_SPC , KC_RALT , KC_RGUI , KC_RCTL + [0] = LAYOUT_60_ansi_tsangan( + 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_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_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, + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ) }; diff --git a/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c b/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c index 204a12d33d..94d7630207 100644 --- a/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c +++ b/layouts/default/60_iso_tsangan/default_60_iso_tsangan/keymap.c @@ -1,11 +1,11 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_60_iso( - 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_BSPC, - 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - 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_LCTRL, KC_LALT, KC_LGUI, KC_SPACE, KC_RGUI, KC_RALT, KC_RCTL + [0] = LAYOUT_60_iso_tsangan( + 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_BSPC, + 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, + 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_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL ) }; -- cgit v1.2.3 From 1512a6bfd48fb75619a1f77394d41bdca7ea28b1 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 1 Oct 2018 18:00:14 -0700 Subject: Keymap: Update to drashna keymaps and userspace (#3992) * Enabled unicode support and send_unicode function * Unicode cleanup * More unicode tweaking * Update EEPROM stuff * Account for keyboard macros * Switch Equal to Plus on Ergodox * more tweaks * Minor Unicode tweaks * Correct matrix printing for keylogger * Fix unicode functions * Fix unicode mode set since it actually uses EEPROM * Re-add DISABLE_LEADER * Ergodox is easier to hit the tapping term, fix that * Fix stupid type on unicode mode check * Preliminary CRKBD/HeliDox support * Fixes to Helidox * Cleanup userspace from old merge stuff * Remove CCCV sounds * Make Mode NOEEPROM Again --- keyboards/crkbd/keymaps/drashna/config.h | 43 +++++ keyboards/crkbd/keymaps/drashna/glcdfont.c | 244 +++++++++++++++++++++++++++++ keyboards/crkbd/keymaps/drashna/keymap.c | 173 ++++++++++++++++++++ keyboards/crkbd/keymaps/drashna/rules.mk | 30 ++++ layouts/community/ergodox/drashna/keymap.c | 18 +-- layouts/community/ergodox/drashna/rules.mk | 4 +- users/drashna/config.h | 10 +- users/drashna/drashna.c | 75 +++++---- users/drashna/drashna.h | 28 +++- users/drashna/drashna_unicode.h | 71 --------- users/drashna/rgb_stuff.c | 5 +- users/drashna/rules.mk | 7 +- users/drashna/send_unicode.c | 58 +++++++ users/drashna/send_unicode.h | 71 +++++++++ 14 files changed, 705 insertions(+), 132 deletions(-) create mode 100644 keyboards/crkbd/keymaps/drashna/config.h create mode 100644 keyboards/crkbd/keymaps/drashna/glcdfont.c create mode 100644 keyboards/crkbd/keymaps/drashna/keymap.c create mode 100644 keyboards/crkbd/keymaps/drashna/rules.mk delete mode 100644 users/drashna/drashna_unicode.h create mode 100644 users/drashna/send_unicode.c create mode 100644 users/drashna/send_unicode.h (limited to 'layouts') diff --git a/keyboards/crkbd/keymaps/drashna/config.h b/keyboards/crkbd/keymaps/drashna/config.h new file mode 100644 index 0000000000..366f013dca --- /dev/null +++ b/keyboards/crkbd/keymaps/drashna/config.h @@ -0,0 +1,43 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + + +/* Select hand configuration */ + +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS + +#define SSD1306OLED + +#define USE_SERIAL_PD2 + +// #define TAPPING_FORCE_HOLD +// #define TAPPING_TERM 100 + +#undef RGBLED_NUM +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 27 +#define RGBLIGHT_LIMIT_VAL 120 +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 +#define RGBLIGHT_VAL_STEP 17 diff --git a/keyboards/crkbd/keymaps/drashna/glcdfont.c b/keyboards/crkbd/keymaps/drashna/glcdfont.c new file mode 100644 index 0000000000..4e7b27bc0c --- /dev/null +++ b/keyboards/crkbd/keymaps/drashna/glcdfont.c @@ -0,0 +1,244 @@ +// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. +// See gfxfont.h for newer custom bitmap font info. + +#ifndef FONT5X7_H +#define FONT5X7_H + +#ifdef __AVR__ + #include + #include +#elif defined(ESP8266) + #include +#else + #define PROGMEM +#endif + +// Standard ASCII 5x7 font + +static const unsigned char font[] PROGMEM = { +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, +0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, +0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, +0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, +0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, +0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, +0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, +0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, +0x00, 0x18, 0x24, 0x18, 0x00, 0x00, +0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, +0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, +0x26, 0x29, 0x79, 0x29, 0x26, 0x00, +0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, +0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, +0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, +0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, +0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, +0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, +0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, +0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, +0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, +0x60, 0x60, 0x60, 0x60, 0x60, 0x00, +0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, +0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, +0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, +0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, +0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, +0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, +0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, +0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, +0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, +0x00, 0x07, 0x00, 0x07, 0x00, 0x00, +0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, +0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, +0x23, 0x13, 0x08, 0x64, 0x62, 0x00, +0x36, 0x49, 0x56, 0x20, 0x50, 0x00, +0x00, 0x08, 0x07, 0x03, 0x00, 0x00, +0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, +0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, +0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, +0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, +0x00, 0x80, 0x70, 0x30, 0x00, 0x00, +0x08, 0x08, 0x08, 0x08, 0x08, 0x00, +0x00, 0x00, 0x60, 0x60, 0x00, 0x00, +0x20, 0x10, 0x08, 0x04, 0x02, 0x00, +0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, +0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, +0x72, 0x49, 0x49, 0x49, 0x46, 0x00, +0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, +0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, +0x27, 0x45, 0x45, 0x45, 0x39, 0x00, +0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, +0x41, 0x21, 0x11, 0x09, 0x07, 0x00, +0x36, 0x49, 0x49, 0x49, 0x36, 0x00, +0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, +0x00, 0x00, 0x14, 0x00, 0x00, 0x00, +0x00, 0x40, 0x34, 0x00, 0x00, 0x00, +0x00, 0x08, 0x14, 0x22, 0x41, 0x00, +0x14, 0x14, 0x14, 0x14, 0x14, 0x00, +0x00, 0x41, 0x22, 0x14, 0x08, 0x00, +0x02, 0x01, 0x59, 0x09, 0x06, 0x00, +0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, +0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, +0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, +0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, +0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, +0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, +0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, +0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, +0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, +0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, +0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, +0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, +0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, +0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, +0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, +0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, +0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, +0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, +0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, +0x26, 0x49, 0x49, 0x49, 0x32, 0x00, +0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, +0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, +0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, +0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, +0x63, 0x14, 0x08, 0x14, 0x63, 0x00, +0x03, 0x04, 0x78, 0x04, 0x03, 0x00, +0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, +0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, +0x02, 0x04, 0x08, 0x10, 0x20, 0x00, +0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, +0x04, 0x02, 0x01, 0x02, 0x04, 0x00, +0x40, 0x40, 0x40, 0x40, 0x40, 0x00, +0x00, 0x03, 0x07, 0x08, 0x00, 0x00, +0x20, 0x54, 0x54, 0x78, 0x40, 0x00, +0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, +0x38, 0x44, 0x44, 0x44, 0x28, 0x00, +0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, +0x38, 0x54, 0x54, 0x54, 0x18, 0x00, +0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, +0x18, 0xA4, 0xA4, 0x9C, 0x78, 0x00, +0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, +0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, +0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, +0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, +0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, +0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, +0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, +0x38, 0x44, 0x44, 0x44, 0x38, 0x00, +0xFC, 0x18, 0x24, 0x24, 0x18, 0x00, +0x18, 0x24, 0x24, 0x18, 0xFC, 0x00, +0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, +0x48, 0x54, 0x54, 0x54, 0x24, 0x00, +0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, +0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, +0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, +0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, +0x44, 0x28, 0x10, 0x28, 0x44, 0x00, +0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, +0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, +0x00, 0x08, 0x36, 0x41, 0x00, 0x00, +0x00, 0x00, 0x77, 0x00, 0x00, 0x00, +0x00, 0x41, 0x36, 0x08, 0x00, 0x00, +0x02, 0x01, 0x02, 0x04, 0x02, 0x00, +0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x0E, 0x3F, 0xFF, 0xFF, +0xFF, 0xFF, 0xFE, 0xE0, 0x80, 0x00, +0x00, 0x00, 0x00, 0x00, 0x1E, 0xBE, +0x7F, 0xFF, 0xFF, 0xFE, 0xFE, 0xF0, +0xE0, 0xC0, 0x80, 0x00, 0x0E, 0xEF, +0xDF, 0xDE, 0xBE, 0x3C, 0x38, 0x70, +0xE0, 0xDD, 0xBB, 0x7B, 0x07, 0x0E, +0x0E, 0x0C, 0x98, 0xF0, 0xE0, 0xF0, +0xF0, 0xF8, 0x78, 0x3C, 0x1C, 0x1E, +0x0E, 0x0E, 0x0F, 0x0F, 0x0F, 0x0F, +0x1F, 0xFE, 0xFE, 0xF8, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0xE0, 0xF0, 0xF0, 0xF0, 0xE0, 0xEC, +0xEE, 0xF7, 0xF3, 0x70, 0x20, 0x00, +0x7C, 0x7C, 0x7C, 0x7E, 0x00, 0x7E, +0x7E, 0x7E, 0x7F, 0x7F, 0x7F, 0x00, +0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B, +0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00, +0xC0, 0x00, 0xDC, 0xD7, 0xDE, 0xDE, +0xDE, 0xD7, 0xDC, 0x00, 0xC0, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x01, 0x03, +0x0F, 0x3F, 0xFF, 0xFF, 0xFF, 0xFE, +0xF8, 0xF0, 0xE0, 0xC0, 0x80, 0x7F, +0xFF, 0xFE, 0xFD, 0xFB, 0x1B, 0x07, +0x07, 0x0F, 0x1F, 0x1F, 0x1E, 0x1D, +0x0B, 0x07, 0x01, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, +0xF8, 0xFE, 0xFF, 0xFF, 0x1F, 0x07, +0x01, 0x01, 0x01, 0x03, 0x06, 0x06, +0x0C, 0x0C, 0x08, 0x0C, 0x0C, 0x0E, +0x07, 0x83, 0xC1, 0xE0, 0x70, 0x30, +0x18, 0x1C, 0x7C, 0xCC, 0x8C, 0xDC, +0xF8, 0xC0, 0xE0, 0xE0, 0x70, 0xB8, +0xF0, 0x60, 0x00, 0x00, 0x80, 0xC0, +0xE0, 0xF0, 0x70, 0xF8, 0xFC, 0xFC, +0x3C, 0x30, 0x38, 0xF8, 0xF8, 0xF8, +0x78, 0x00, 0x80, 0x80, 0xC0, 0xE0, +0x70, 0x38, 0x38, 0x9C, 0xDC, 0xFC, +0x7C, 0x38, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x7F, +0x7F, 0x7F, 0x3F, 0x1E, 0x0C, 0x00, +0x1F, 0x1F, 0x1F, 0x3F, 0x00, 0x3F, +0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x00, +0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20, +0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00, +0x03, 0x00, 0x0F, 0x7F, 0x0F, 0x0F, +0x0F, 0x7F, 0x0F, 0x00, 0x03, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x01, 0x03, 0x07, +0x1F, 0x3F, 0x3F, 0x7F, 0x7F, 0x7F, +0x7E, 0x7D, 0x3B, 0x17, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x07, +0x0F, 0x1F, 0x3F, 0x3F, 0x7E, 0x7C, +0x78, 0x70, 0x70, 0x70, 0x70, 0x70, +0x70, 0x78, 0x38, 0x18, 0x1C, 0x0E, +0x07, 0x0F, 0x1F, 0x3F, 0x3C, 0x38, +0x38, 0x18, 0x0C, 0x06, 0x03, 0x01, +0x01, 0x01, 0x01, 0x0E, 0x1F, 0x1F, +0x1C, 0x1C, 0x1E, 0x0F, 0x0F, 0x03, +0x1D, 0x0E, 0x07, 0x03, 0x01, 0x00, +0x00, 0x0E, 0x1F, 0x1F, 0x1D, 0x1E, +0x0F, 0x07, 0x03, 0x03, 0x0F, 0x1F, +0x1F, 0x19, 0x19, 0x19, 0x19, 0x0C, +0x0C, 0x04, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; +#endif // FONT5X7_H diff --git a/keyboards/crkbd/keymaps/drashna/keymap.c b/keyboards/crkbd/keymaps/drashna/keymap.c new file mode 100644 index 0000000000..7bced8de33 --- /dev/null +++ b/keyboards/crkbd/keymaps/drashna/keymap.c @@ -0,0 +1,173 @@ +#include QMK_KEYBOARD_H +#include "drashna.h" +#ifdef PROTOCOL_LUFA + #include "lufa.h" + #include "split_util.h" +#endif +#ifdef SSD1306OLED + #include "ssd1306.h" +#endif + +extern keymap_config_t keymap_config; +extern uint8_t is_master; + +#ifdef RGBLIGHT_ENABLE +//Following line allows macro to read current RGB settings +extern rgblight_config_t rgblight_config; +#endif + +enum crkbd_keycodes { + RGBRST = NEW_SAFE_RANGE +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, + KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + ), + [_COLEMAK] = LAYOUT_wrapper( + KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, + KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + ), + [_DVORAK] = LAYOUT_wrapper( + KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, + KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + ), + [_WORKMAN] = LAYOUT_wrapper( + KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, + KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + ), + + [_MODS] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, + _______, _______, _______, _______, _______, _______ + ), + + [_LOWER] = LAYOUT_wrapper( + KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_BSPC, + KC_F11, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE, + KC_F12, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, + _______, _______, _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT_wrapper( \ + KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_BSPC, + _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, + _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, + _______, _______, _______, _______, _______, _______ //`--------------------' `--------------------' + ), + + [_ADJUST] = LAYOUT_wrapper( \ + KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET, + VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EPRM, + TG_MODS, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY, + _______, _______, _______, _______, _______, _______ + ) +}; + +int RGB_current_mode; + +void matrix_init_keymap(void) { + #ifdef RGBLIGHT_ENABLE + RGB_current_mode = rgblight_config.mode; + #endif + //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h + #ifdef SSD1306OLED + iota_gfx_init(!has_usb()); // turns on the display + #endif + + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); + + DDRB &= ~(1<<0); + PORTB &= ~(1<<0);} + +//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h +#ifdef SSD1306OLED + +// When add source files to SRC in rules.mk, you can use functions. +const char *read_layer_state(void); +const char *read_logo(void); +void set_keylog(uint16_t keycode, keyrecord_t *record); +const char *read_keylog(void); +const char *read_keylogs(void); + +// const char *read_mode_icon(bool swap); +// const char *read_host_led_state(void); +// void set_timelog(void); +// const char *read_timelog(void); + +void matrix_scan_keymap(void) { + iota_gfx_task(); +} + +void matrix_render_user(struct CharacterMatrix *matrix) { + if (is_master) { + // If you want to change the display of OLED, you need to change here + matrix_write_ln(matrix, read_layer_state()); + matrix_write_ln(matrix, read_keylog()); + matrix_write_ln(matrix, read_keylogs()); + //matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui)); + //matrix_write_ln(matrix, read_host_led_state()); + //matrix_write_ln(matrix, read_timelog()); + } else { + matrix_write(matrix, read_logo()); + } +} + +void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) { + if (memcmp(dest->display, source->display, sizeof(dest->display))) { + memcpy(dest->display, source->display, sizeof(dest->display)); + dest->dirty = true; + } +} + +void iota_gfx_task_user(void) { + struct CharacterMatrix matrix; + matrix_clear(&matrix); + matrix_render_user(&matrix); + matrix_update(&display, &matrix); +} + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + set_keylog(keycode, record); + // set_timelog(); + } + + switch (keycode) { + case RGB_MOD: + #ifdef RGBLIGHT_ENABLE + if (record->event.pressed) { + rgblight_mode_noeeprom(RGB_current_mode); + rgblight_step(); + RGB_current_mode = rgblight_config.mode; + } + #endif + return false; + break; + case RGBRST: + #ifdef RGBLIGHT_ENABLE + if (record->event.pressed) { + eeconfig_update_rgblight_default(); + rgblight_enable(); + RGB_current_mode = rgblight_config.mode; + } + #endif + break; + } + return true; +} + +#endif diff --git a/keyboards/crkbd/keymaps/drashna/rules.mk b/keyboards/crkbd/keymaps/drashna/rules.mk new file mode 100644 index 0000000000..f490aa2ea8 --- /dev/null +++ b/keyboards/crkbd/keymaps/drashna/rules.mk @@ -0,0 +1,30 @@ + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SWAP_HANDS_ENABLE = no # Enable one-hand typing + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +# If you want to change the display of OLED, you need to change here +SRC += ./lib/rgb_state_reader.c \ + ./lib/layer_state_reader.c \ + ./lib/logo_reader.c \ + ./lib/keylogger.c \ + # ./lib/mode_icon_reader.c \ + # ./lib/host_led_state_reader.c \ + # ./lib/timelogger.c \ diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 4d7700f199..15153c4692 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -57,11 +57,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_QWERTY] = LAYOUT_ergodox_pretty_wrapper( // left hand // right hand - KC_EQL, ________________NUMBER_LEFT________________, _______, _______, ________________NUMBER_RIGHT_______________, KC_MINS, + KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB, _________________QWERTY_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________QWERTY_R1_________________, KC_BSLS, KC_C1R3, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, KC_MLSF, _________________QWERTY_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________QWERTY_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: COLEMAK layer @@ -89,11 +89,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [_COLEMAK] = LAYOUT_ergodox_pretty_wrapper( // left hand // right hand - KC_EQL, ________________NUMBER_LEFT________________, _______, _______, ________________NUMBER_RIGHT_______________, KC_MINS, + KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB, _________________COLEMAK_L1________________, TG(_DIABLO), TG(_DIABLO), _________________COLEMAK_R1________________, KC_BSLS, KC_C1R3, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, KC_MLSF, _________________COLEMAK_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________COLEMAK_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: DVORAK Layout @@ -121,11 +121,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [_DVORAK] = LAYOUT_ergodox_pretty_wrapper( // left hand // right hand - KC_EQL, ________________NUMBER_LEFT________________, _______, _______, ________________NUMBER_RIGHT_______________, KC_BSLS, + KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_BSLS, KC_TAB, _________________DVORAK_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________DVORAK_R1_________________, KC_SLSH, KC_C1R3, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_MINS, KC_MLSF, _________________DVORAK_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________DVORAK_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, __________________ERGODOX_THUMB_CLUSTER_____________________ ), /* Keymap 0: WORKMAN layer @@ -153,11 +153,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [_WORKMAN] = LAYOUT_ergodox_pretty_wrapper( // left hand - KC_EQL, ________________NUMBER_LEFT________________, _______, _______, ________________NUMBER_RIGHT_______________, KC_MINS, + KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, KC_TAB, _________________WORKMAN_L1________________, TG(_DIABLO), TG(_DIABLO), _________________WORKMAN_R1________________, KC_BSLS, KC_C1R3, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, KC_MLSF, _________________WORKMAN_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________WORKMAN_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, KC_NO, + KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, __________________ERGODOX_THUMB_CLUSTER_____________________ ), @@ -197,7 +197,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_GAMEPAD] = LAYOUT_ergodox_pretty_wrapper( KC_ESC, KC_NO, KC_1, KC_2, KC_3, HYPR(KC_Q), HYPR(KC_GRV), KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, - KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, KC_T, UC_SHRG, UC_DISA, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, KC_I, KC_O, KC_NO, KC_NO, KC_NO, KC_NO, KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_TRNS, TG(_GAMEPAD), KC_N, KC_M, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_U, KC_I, KC_Y, KC_T, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, diff --git a/layouts/community/ergodox/drashna/rules.mk b/layouts/community/ergodox/drashna/rules.mk index 30d513c911..8bf53950e4 100644 --- a/layouts/community/ergodox/drashna/rules.mk +++ b/layouts/community/ergodox/drashna/rules.mk @@ -8,8 +8,8 @@ endif CONSOLE_ENABLE = no BOOTMAGIC_ENABLE = yes -UNICODE_ENABLE = no -UNICDOEMAP_ENABLE = yes +UNICODE_ENABLE = yes +UNICDOEMAP_ENABLE = no MACROS_ENABLED = no RGBLIGHT_TWINKLE = no diff --git a/users/drashna/config.h b/users/drashna/config.h index 92efcc5c74..3ddec93b13 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -55,7 +55,11 @@ #ifdef TAPPING_TERM #undef TAPPING_TERM #endif // TAPPING_TERM -#define TAPPING_TERM 175 +#ifdef KEYBOARD_ergodox_ez + #define TAPPING_TERM 185 +#else + #define TAPPING_TERM 175 +#endif // Disable action_get_macro and fn_actions, since we don't use these @@ -63,4 +67,8 @@ #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION +#define DISABLE_LEADER + #define MACRO_TIMER 5 + + diff --git a/users/drashna/drashna.c b/users/drashna/drashna.c index 9489fb4567..aad9fab611 100644 --- a/users/drashna/drashna.c +++ b/users/drashna/drashna.c @@ -21,6 +21,7 @@ along with this program. If not, see . userspace_config_t userspace_config; +uint16_t copy_paste_timer; // Helper Functions @@ -131,7 +132,7 @@ void led_set_keymap(uint8_t usb_led) {} // Call user matrix init, set default RGB colors and then // call the keymap's init function void matrix_init_user(void) { - userspace_config.raw = eeprom_read_byte(EECONFIG_USERSPACE); + userspace_config.raw = eeprom_read_dword(EECONFIG_USERSPACE); #ifdef BOOTLOADER_CATERINA @@ -143,7 +144,9 @@ void matrix_init_user(void) { #endif #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) - set_unicode_input_mode(UC_WINC); + if (eeprom_read_byte(EECONFIG_UNICODEMODE) != UC_WIN) { + set_unicode_input_mode(UC_WIN); + } #endif //UNICODE_ENABLE matrix_init_keymap(); } @@ -173,17 +176,12 @@ void shutdown_user (void) { shutdown_keymap(); } -void suspend_power_down_user(void) -{ +void suspend_power_down_user(void) { suspend_power_down_keymap(); } -void suspend_wakeup_init_user(void) -{ +void suspend_wakeup_init_user(void) { suspend_wakeup_init_keymap(); - #ifdef KEYBOARD_ergodox_ez - wait_ms(10); - #endif } @@ -216,7 +214,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // If console is enabled, it will print the matrix position and status of each key pressed #ifdef KEYLOGGER_ENABLE - xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); + #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2) + xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); + #else + xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); + #endif #endif //KEYLOGGER_ENABLE switch (keycode) { @@ -249,7 +251,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader if (!record->event.pressed) { send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP -#if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU)) +#if defined(__ARM__) + ":dfu-util" +#elif defined(BOOTLOADER_DFU) ":dfu" #elif defined(BOOTLOADER_HALFKAY) ":teensy" @@ -291,7 +295,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // to save on firmware space, since it's limited. #ifdef MACROS_ENABLED case KC_OVERWATCH: // Toggle's if we hit "ENTER" or "BACKSPACE" to input macros - if (record->event.pressed) { userspace_config.is_overwatch ^= 1; eeprom_update_byte(EECONFIG_USERSPACE, userspace_config.raw); } + if (record->event.pressed) { userspace_config.is_overwatch ^= 1; eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); } #ifdef RGBLIGHT_ENABLE userspace_config.is_overwatch ? rgblight_mode_noeeprom(17) : rgblight_mode_noeeprom(18); #endif //RGBLIGHT_ENABLE @@ -342,45 +346,40 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { register_code(KC_LCTL); tap(KC_C); unregister_code(KC_LCTL); -#ifdef AUDIO_ENABLE - PLAY_SONG(tone_copy); -#endif } else { // Tap, paste register_code(KC_LCTL); tap(KC_V); unregister_code(KC_LCTL); -#ifdef AUDIO_ENABLE - PLAY_SONG(tone_paste); -#endif } } return false; break; #ifdef UNICODE_ENABLE - case UC_FLIP: // (╯°□°)╯ ︵ ┻━┻ + case UC_FLIP: // (ノಠ痊ಠ)ノ彡┻━┻ if (record->event.pressed) { - register_code(KC_RSFT); - tap(KC_9); - unregister_code(KC_RSFT); - process_unicode((0x256F | QK_UNICODE), record); // Arm - process_unicode((0x00B0 | QK_UNICODE), record); // Eye - process_unicode((0x25A1 | QK_UNICODE), record); // Mouth - process_unicode((0x00B0 | QK_UNICODE), record); // Eye - register_code(KC_RSFT); - tap(KC_0); - unregister_code(KC_RSFT); - process_unicode((0x256F | QK_UNICODE), record); // Arm - tap(KC_SPC); - process_unicode((0x0361 | QK_UNICODE), record); // Flippy - tap(KC_SPC); - process_unicode((0x253B | QK_UNICODE), record); // Table - process_unicode((0x2501 | QK_UNICODE), record); // Table - process_unicode((0x253B | QK_UNICODE), record); // Table + send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); } return false; break; -#endif // UNICODE_ENABLE - + case UC_TABL: // ┬─┬ノ( º _ ºノ) + if (record->event.pressed) { + send_unicode_hex_string("252C 2500 252C 30CE 0028 0020 00BA 0020 005F 0020 00BA 30CE 0029"); + } + return false; + break; + case UC_SHRG: // ¯\_(ツ)_/¯ + if (record->event.pressed) { + send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); + } + return false; + break; + case UC_DISA: // ಠ_ಠ + if (record->event.pressed) { + send_unicode_hex_string("0CA0 005F 0CA0"); + } + return false; + break; +#endif } return process_record_keymap(keycode, record) && #ifdef RGBLIGHT_ENABLE diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index de8c3ba947..49e3fc870b 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -19,9 +19,13 @@ along with this program. If not, see . #include "quantum.h" #include "version.h" #include "eeprom.h" +#include "send_unicode.h" + #ifdef RGB_MATRIX_ENABLE #include "rgb_matrix.h" #endif + + // Define layer names enum userspace_layers { _QWERTY = 0, @@ -59,19 +63,26 @@ inline void tap(uint16_t keycode){ register_code(keycode); unregister_code(keyco bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed); bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t this_timer); -#define EECONFIG_USERSPACE (uint8_t *)19 +#define EECONFIG_USERSPACE (uint32_t *)19 typedef union { - uint8_t raw; + uint32_t raw; struct { bool rgb_layer_change :1; bool is_overwatch :1; bool nuke_switch :1; + uint8_t unicode_mod :4; }; } userspace_config_t; +#if defined(KEYMAP_SAFE_RANGE) + #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE +#else + #define PLACEHOLDER_SAFE_RANGE SAFE_RANGE +#endif + enum userspace_custom_keycodes { - EPRM = SAFE_RANGE, // Resets EEPROM do defaults (as in eeconfig_init) + EPRM = PLACEHOLDER_SAFE_RANGE, // Resets EEPROM do defaults (as in eeconfig_init) VRSN, // Prints QMK Firmware and board info KC_QWERTY, // Sets default layer to QWERTY KC_COLEMAK, // Sets default layer to COLEMAK @@ -99,13 +110,14 @@ enum userspace_custom_keycodes { KC_SECRET_5, // test5 KC_CCCV, // Hold to copy, tap to paste KC_NUKE, // NUCLEAR LAUNCH DETECTED!!! - -#ifdef UNICODE_ENABLE - UC_FLIP, // Table flip (not working?) -#endif //UNICODE_ENABLE + UC_FLIP, // (ಠ痊ಠ)┻━┻ + UC_TABL, // ┬─┬ノ( º _ ºノ) + UC_SHRG, // ¯\_(ツ)_/¯ + UC_DISA, // ಠ_ಠ NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes }; + #define LOWER MO(_LOWER) #define RAISE MO(_RAISE) #define ADJUST MO(_ADJUST) @@ -153,6 +165,8 @@ enum userspace_custom_keycodes { #define MG_NKRO MAGIC_TOGGLE_NKRO +#define UC_IRNY UC(0x2E2E) +#define UC_CLUE UC(0x203D) #ifdef TAP_DANCE_ENABLE enum { diff --git a/users/drashna/drashna_unicode.h b/users/drashna/drashna_unicode.h deleted file mode 100644 index 3d1bc03f9b..0000000000 --- a/users/drashna/drashna_unicode.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef UNICODE_USERSPACE_H -#define UNICODE_USERSPACE_H - - - -/* use X(n) to call the */ - -enum unicode_name { - THINK, // thinking face 🤔 - GRIN, // grinning face 😊 - SMRK, // smirk 😏 - WEARY, // good shit 😩 - UNAMU, // unamused 😒 - - SNEK, // snke 🐍 - PENGUIN, // 🐧 - DRAGON, // 🐉 - MONKEY, // 🐒 - CHICK, // 🐥 - BOAR, // 🐗 - - OKOK, // 👌 - EFFU, // 🖕 - INUP, // 👆 - THUP, // 👍 - THDN, // 👎 - - BBB, // dat B 🅱 - POO, // poop 💩 - HUNDR, // 100 💯 - EGGPL, // EGGPLANT 🍆 - WATER, // wet 💦 - TUMBLER, // 🥃 - - LIT, // fire 🔥 - BANG, // ‽ - IRONY, // ⸮ - DEGREE // ° -}; - - -const uint32_t PROGMEM unicode_map[] = { - [THINK] = 0x1F914, - [GRIN] = 0x1F600, - [BBB] = 0x1F171, - [POO] = 0x1F4A9, - [HUNDR] = 0x1F4AF, - [SMRK] = 0x1F60F, - [WEARY] = 0x1F629, - [EGGPL] = 0x1F346, - [WATER] = 0x1F4A6, - [LIT] = 0x1F525, - [UNAMU] = 0x1F612, - [SNEK] = 0x1F40D, - [PENGUIN] = 0x1F427, - [BOAR] = 0x1F417, - [MONKEY] = 0x1F412, - [CHICK] = 0x1F425, - [DRAGON] = 0x1F409, - [OKOK] = 0x1F44C, - [EFFU] = 0x1F595, - [INUP] = 0x1F446, - [THDN] = 0x1F44E, - [THUP] = 0x1F44D, - [TUMBLER] = 0x1F943, - [BANG] = 0x0203D, - [IRONY] = 0x02E2E, - [DEGREE] = 0x000B0 - }; - - #endif diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index 03c55b1323..4a1a8de692 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -230,7 +230,7 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { userspace_config.rgb_layer_change ^= 1; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); - eeprom_update_byte(EECONFIG_USERSPACE, userspace_config.raw); + eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); if (userspace_config.rgb_layer_change) { layer_state_set(layer_state); // This is needed to immediately set the layer color (looks better) } @@ -243,7 +243,7 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { if (userspace_config.rgb_layer_change) { userspace_config.rgb_layer_change = false; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); - eeprom_update_byte(EECONFIG_USERSPACE, userspace_config.raw); + eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); } } return true; break; @@ -273,6 +273,7 @@ void matrix_init_rgb(void) { default: rgblight_sethsv_noeeprom_cyan(); break; } + rgblight_mode_noeeprom(1); } } diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index e299f24a1e..3d6213eff2 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -1,4 +1,3 @@ - SRC += drashna.c ifneq ("$(wildcard $(USER_PATH)/secrets.c)","") @@ -9,7 +8,7 @@ ifeq ($(strip $(TAP_DANCE_ENABLE)), yes) SRC += tap_dances.c endif -EXTRAFLAGS += -flto +EXTRAFLAGS += -flto ifeq ($(strip $(NO_SECRETS)), yes) OPT_DEFS += -DNO_SECRETS @@ -37,3 +36,7 @@ ifdef CONSOLE_ENABLE OPT_DEFS += -DKEYLOGGER_ENABLE endif endif + +ifeq ($(strip $(UNICODE_ENABLE)), yes) + SRC += send_unicode.c +endif diff --git a/users/drashna/send_unicode.c b/users/drashna/send_unicode.c new file mode 100644 index 0000000000..cacfe1dc85 --- /dev/null +++ b/users/drashna/send_unicode.c @@ -0,0 +1,58 @@ +// Written by konstantin: vomindoraan +#include "send_unicode.h" +#include +#include + +__attribute__((weak)) +void send_unicode_hex_string(const char* str) { + if (!str) { return; } // Safety net + + while (*str) { + // Find the next code point (token) in the string + for (; *str == ' '; str++); + size_t n = strcspn(str, " "); // Length of the current token + char code_point[n+1]; + strncpy(code_point, str, n); + code_point[n] = '\0'; // Make sure it's null-terminated + + // Normalize the code point: make all hex digits lowercase + for (char *p = code_point; *p; p++) { + *p = tolower((unsigned char)*p); + } + + // Send the code point as a Unicode input string + unicode_input_start(); + send_string(code_point); + unicode_input_finish(); + + str += n; // Move to the first ' ' (or '\0') after the current token + } +} + +// (ノಠ痊ಠ)ノ彡┻━┻ +// send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); + +//Old code +// (╯°□°)╯ ︵ ┻━┻ + #if 0 + register_code(KC_RSFT); + tap(KC_9); + unregister_code(KC_RSFT); + process_unicode((0x256F | QK_UNICODE), record); // Arm + process_unicode((0x00B0 | QK_UNICODE), record); // Eye + process_unicode((0x25A1 | QK_UNICODE), record); // Mouth + process_unicode((0x00B0 | QK_UNICODE), record); // Eye + register_code(KC_RSFT); + tap(KC_0); + unregister_code(KC_RSFT); + process_unicode((0x256F | QK_UNICODE), record); // Arm + tap(KC_SPC); + process_unicode((0x0361 | QK_UNICODE), record); // Flippy + tap(KC_SPC); + process_unicode((0x253B | QK_UNICODE), record); // Table + process_unicode((0x2501 | QK_UNICODE), record); // Table + process_unicode((0x253B | QK_UNICODE), record); // Table + #endif + + +// If you need a good converter: https://r12a.github.io/app-conversion/ diff --git a/users/drashna/send_unicode.h b/users/drashna/send_unicode.h new file mode 100644 index 0000000000..818b6e571b --- /dev/null +++ b/users/drashna/send_unicode.h @@ -0,0 +1,71 @@ +#pragma once + +#include "quantum.h" + +void send_unicode_hex_string(const char* str); + +/* use X(n) to call the */ +#ifdef UNICODEMAP_ENABLE +enum unicode_name { + THINK, // thinking face 🤔 + GRIN, // grinning face 😊 + SMRK, // smirk 😏 + WEARY, // good shit 😩 + UNAMU, // unamused 😒 + + SNEK, // snke 🐍 + PENGUIN, // 🐧 + DRAGON, // 🐉 + MONKEY, // 🐒 + CHICK, // 🐥 + BOAR, // 🐗 + + OKOK, // 👌 + EFFU, // 🖕 + INUP, // 👆 + THUP, // 👍 + THDN, // 👎 + + BBB, // dat B 🅱 + POO, // poop 💩 + HUNDR, // 100 💯 + EGGPL, // EGGPLANT 🍆 + WATER, // wet 💦 + TUMBLER, // 🥃 + + LIT, // fire 🔥 + BANG, // ‽ + IRONY, // ⸮ + DEGREE // ° +}; + + +const uint32_t PROGMEM unicode_map[] = { + [THINK] = 0x1F914, + [GRIN] = 0x1F600, + [BBB] = 0x1F171, + [POO] = 0x1F4A9, + [HUNDR] = 0x1F4AF, + [SMRK] = 0x1F60F, + [WEARY] = 0x1F629, + [EGGPL] = 0x1F346, + [WATER] = 0x1F4A6, + [LIT] = 0x1F525, + [UNAMU] = 0x1F612, + [SNEK] = 0x1F40D, + [PENGUIN] = 0x1F427, + [BOAR] = 0x1F417, + [MONKEY] = 0x1F412, + [CHICK] = 0x1F425, + [DRAGON] = 0x1F409, + [OKOK] = 0x1F44C, + [EFFU] = 0x1F595, + [INUP] = 0x1F446, + [THDN] = 0x1F44E, + [THUP] = 0x1F44D, + [TUMBLER] = 0x1F943, + [BANG] = 0x0203D, + [IRONY] = 0x02E2E, + [DEGREE] = 0x000B0 + }; +#endif // UNICODEMAP_ENABLE -- cgit v1.2.3 From 31d12662bde435e6636347ee842108b1cb3d8d48 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 15 Oct 2018 12:34:49 -0700 Subject: Update to drashna keymaps and userspace - RGB edition (#4143) * Fix up userspace after feature merges * Add new macros for keyboard layouts * Keep new layouts in keymap for easy reference * Cleanup layouts * Fix CRKBD wrappers * Fix up comments * Fix spacing in orthodox base layer * ergodox related cleanup * Make KC_MAKE only flash when holding shift * Add option to fast compile boards * Clean up rgb modes to save space * Re-enable Swap Hands on my Iris --- keyboards/crkbd/keymaps/drashna/config.h | 10 ++- keyboards/crkbd/keymaps/drashna/keymap.c | 59 +++++++------ keyboards/iris/keymaps/drashna/config.h | 2 +- keyboards/iris/keymaps/drashna/keymap.c | 67 ++++++++------ keyboards/iris/keymaps/drashna/rules.mk | 4 +- keyboards/orthodox/keymaps/drashna/config.h | 2 +- keyboards/orthodox/keymaps/drashna/keymap.c | 52 ++++++----- keyboards/orthodox/keymaps/drashna/rules.mk | 2 +- keyboards/viterbi/keymaps/drashna/config.h | 4 +- layouts/community/ergodox/drashna/config.h | 5 +- layouts/community/ergodox/drashna/keymap.c | 77 +++++++++-------- layouts/community/ortho_4x12/drashna/config.h | 2 +- layouts/community/ortho_4x12/drashna/keymap.c | 50 ++++++----- users/drashna/config.h | 6 +- users/drashna/drashna.c | 35 +++++--- users/drashna/drashna.h | 120 +++++++++++--------------- users/drashna/rgb_stuff.c | 20 ++--- users/drashna/rules.mk | 3 - users/drashna/tap_dances.c | 10 +-- 19 files changed, 282 insertions(+), 248 deletions(-) (limited to 'layouts') diff --git a/keyboards/crkbd/keymaps/drashna/config.h b/keyboards/crkbd/keymaps/drashna/config.h index 366f013dca..adfd79044d 100644 --- a/keyboards/crkbd/keymaps/drashna/config.h +++ b/keyboards/crkbd/keymaps/drashna/config.h @@ -34,10 +34,12 @@ along with this program. If not, see . // #define TAPPING_FORCE_HOLD // #define TAPPING_TERM 100 +#ifdef RGBLIGHT_ENABLE #undef RGBLED_NUM -#define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 27 + +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 #define RGBLIGHT_LIMIT_VAL 120 -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 +#endif diff --git a/keyboards/crkbd/keymaps/drashna/keymap.c b/keyboards/crkbd/keymaps/drashna/keymap.c index 7bced8de33..a293d53374 100644 --- a/keyboards/crkbd/keymaps/drashna/keymap.c +++ b/keyboards/crkbd/keymaps/drashna/keymap.c @@ -20,37 +20,48 @@ enum crkbd_keycodes { RGBRST = NEW_SAFE_RANGE }; +#define LAYOUT_crkbd_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_wrapper( \ + KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ + KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE \ + ) +#define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT_wrapper( - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + [_QWERTY] = LAYOUT_crkbd_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), - [_COLEMAK] = LAYOUT_wrapper( - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_COLEMAK] = LAYOUT_crkbd_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), - [_DVORAK] = LAYOUT_wrapper( - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_DVORAK] = LAYOUT_crkbd_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), - [_WORKMAN] = LAYOUT_wrapper( - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_WORKMAN] = LAYOUT_crkbd_base_wrapper( + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), [_MODS] = LAYOUT_wrapper( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + KC_LSFT, ___________________BLANK___________________, ___________________BLANK___________________, KC_RSFT, _______, _______, _______, _______, _______, _______ ), @@ -65,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_BSPC, _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, - _______, _______, _______, _______, _______, _______ //`--------------------' `--------------------' + _______, _______, _______, _______, _______, _______ ), [_ADJUST] = LAYOUT_wrapper( \ diff --git a/keyboards/iris/keymaps/drashna/config.h b/keyboards/iris/keymaps/drashna/config.h index 47276845f9..0274867153 100644 --- a/keyboards/iris/keymaps/drashna/config.h +++ b/keyboards/iris/keymaps/drashna/config.h @@ -31,7 +31,7 @@ along with this program. If not, see . #ifdef RGBLIGHT_ENABLE #undef RGBLED_NUM #define RGBLED_NUM 18 // Number of LEDs -#define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 12 #define RGBLIGHT_SAT_STEP 12 #define RGBLIGHT_VAL_STEP 12 diff --git a/keyboards/iris/keymaps/drashna/keymap.c b/keyboards/iris/keymaps/drashna/keymap.c index 37c3f97f54..60f41f9d98 100644 --- a/keyboards/iris/keymaps/drashna/keymap.c +++ b/keyboards/iris/keymaps/drashna/keymap.c @@ -2,42 +2,53 @@ #include QMK_KEYBOARD_H #include "drashna.h" + +#define LAYOUT_iris_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_wrapper( \ + KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, \ + KC_TAB , K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSLS, \ + KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_MLSF, CTL_T(K21), K22, K23, K24, K25, ALT_APP, OS_RGUI, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE \ + ) +#define LAYOUT_iris_base_wrapper(...) LAYOUT_iris_base(__VA_ARGS__) + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT_wrapper( - KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB , _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS, - KC_C1R3, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, ALT_APP, OS_RGUI, _________________QWERTY_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + [_QWERTY] = LAYOUT_iris_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), - [_COLEMAK] = LAYOUT_wrapper( - KC_ESC , ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB , _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSLS, - KC_C1R3, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, - KC_MLSF, _________________COLEMAK_L3________________, ALT_APP, OS_RGUI, _________________COLEMAK_R3________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_COLEMAK] = LAYOUT_iris_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), - [_DVORAK] = LAYOUT_wrapper( - KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB , _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSLS, - KC_C1R3, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_QUOT, - KC_MLSF, _________________DVORAK_L3_________________, ALT_APP, OS_RGUI, _________________DVORAK_R3_________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_DVORAK] = LAYOUT_iris_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), - [_WORKMAN] = LAYOUT_wrapper( - KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB , _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSLS, - KC_C1R3, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, - KC_MLSF, _________________WORKMAN_L3________________, ALT_APP, OS_RGUI, _________________WORKMAN_R3________________, KC_MRSF, - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE + + [_WORKMAN] = LAYOUT_iris_base_wrapper( + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), [_MODS] = LAYOUT_wrapper( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + KC_LSFT, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, KC_RSFT, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/iris/keymaps/drashna/rules.mk b/keyboards/iris/keymaps/drashna/rules.mk index e8035176ef..89e568f399 100644 --- a/keyboards/iris/keymaps/drashna/rules.mk +++ b/keyboards/iris/keymaps/drashna/rules.mk @@ -8,10 +8,10 @@ RGBLIGHT_ENABLE = yes AUDIO_ENABLE = yes NKRO_ENABLE = yes BACKLIGHT_ENABLE = no -SWAP_HANDS_ENABLE = no +SWAP_HANDS_ENABLE = yes INDICATOR_LIGHTS = yes MACROS_ENABLED = no -RGBLIGHT_TWINKLE = no +RGBLIGHT_TWINKLE = yes BOOTLOADER = qmk-dfu diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h index 2257b62fd3..09df12d9ed 100644 --- a/keyboards/orthodox/keymaps/drashna/config.h +++ b/keyboards/orthodox/keymaps/drashna/config.h @@ -45,7 +45,7 @@ along with this program. If not, see . #ifdef RGBLIGHT_ENABLE #define RGB_DI_PIN D3 #define RGBLED_NUM 16 // Number of LEDs -#define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 12 #define RGBLIGHT_SAT_STEP 12 #define RGBLIGHT_VAL_STEP 12 diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c index 67f732c127..25296ca4fd 100644 --- a/keyboards/orthodox/keymaps/drashna/keymap.c +++ b/keyboards/orthodox/keymaps/drashna/keymap.c @@ -30,41 +30,47 @@ uint8_t last_led; uint8_t last_osm; #endif -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -// Fillers to make layering more clear -#define _______ KC_TRNS -#define XXXXXXX KC_NO +#define LAYOUT_orthodox_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_wrapper( \ + KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ + KC_TAB, K11, K12, K13, K14, K15, ALT_APP, OS_LGUI, KC_LALT, OS_RGUI, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_MLSF, CTL_T(K21), K22, K23, K24, K25, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF \ + ) +#define LAYOUT_orthodox_base_wrapper(...) LAYOUT_orthodox_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT_wrapper(\ - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, ___________ORTHODOX_THUMP_TOP_____________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, ___________________ORTHODOX_THUMB_BOTTOM____________________, _________________QWERTY_R3_________________, KC_MRSF +[_QWERTY] = LAYOUT_orthodox_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), -[_COLEMAK] = LAYOUT_wrapper(\ - KC_ESC, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSPC, - KC_TAB, _________________COLEMAK_L2________________, ___________ORTHODOX_THUMP_TOP_____________, _________________COLEMAK_R2________________, KC_QUOT, - KC_MLSF, _________________COLEMAK_L3________________, ___________________ORTHODOX_THUMB_BOTTOM____________________, _________________COLEMAK_R3________________, KC_MRSF +[_COLEMAK] = LAYOUT_orthodox_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), -[_DVORAK] = LAYOUT_wrapper(\ - KC_ESC, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSPC, - KC_TAB, _________________DVORAK_L2_________________, ___________ORTHODOX_THUMP_TOP_____________, _________________DVORAK_R2_________________, KC_MINS, - KC_MLSF, _________________DVORAK_L3_________________, ___________________ORTHODOX_THUMB_BOTTOM____________________, _________________DVORAK_R3_________________, KC_MRSF +[_DVORAK] = LAYOUT_orthodox_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), -[_WORKMAN] = LAYOUT_wrapper(\ - KC_ESC, _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSPC, - KC_TAB, _________________WORKMAN_L2________________, ___________ORTHODOX_THUMP_TOP_____________, _________________WORKMAN_R2________________, KC_MINS, - KC_MLSF, _________________WORKMAN_L3________________, ___________________ORTHODOX_THUMB_BOTTOM____________________, _________________WORKMAN_R3________________, KC_MRSF + +[_WORKMAN] = LAYOUT_orthodox_base_wrapper( + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), + [_MODS] = LAYOUT_wrapper(\ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/orthodox/keymaps/drashna/rules.mk b/keyboards/orthodox/keymaps/drashna/rules.mk index a826c664a7..f870c3a7d6 100644 --- a/keyboards/orthodox/keymaps/drashna/rules.mk +++ b/keyboards/orthodox/keymaps/drashna/rules.mk @@ -10,6 +10,6 @@ NKRO_ENABLE = yes INDICATOR_LIGHTS = yes MACROS_ENABLED = no -RGBLIGHT_TWINKLE = no +RGBLIGHT_TWINKLE = yes BOOTLOADER = qmk-dfu diff --git a/keyboards/viterbi/keymaps/drashna/config.h b/keyboards/viterbi/keymaps/drashna/config.h index a1e361e346..6eb871a50f 100644 --- a/keyboards/viterbi/keymaps/drashna/config.h +++ b/keyboards/viterbi/keymaps/drashna/config.h @@ -19,16 +19,14 @@ along with this program. If not, see . #ifdef RGBLIGHT_ENABLE #undef RGBLED_NUM -#define RGBLIGHT_ANIMATIONS #define RGBLED_NUM 16 + #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 #define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2 #define RGBLIGHT_EFFECT_SNAKE_LENGTH 2 #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 -#define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 300 -#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1 #endif // RGBLIGHT_ENABLE diff --git a/layouts/community/ergodox/drashna/config.h b/layouts/community/ergodox/drashna/config.h index 3ced185932..fee954d179 100644 --- a/layouts/community/ergodox/drashna/config.h +++ b/layouts/community/ergodox/drashna/config.h @@ -5,8 +5,9 @@ #ifdef RGBLIGHT_ENABLE #undef RGBLIGHT_SAT_STEP #define RGBLIGHT_SAT_STEP 12 -#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 7 -#define RGBLIGHT_EFFECT_SNAKE_LENGTH 7 + +#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3 +#define RGBLIGHT_EFFECT_SNAKE_LENGTH 3 #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 #endif // RGBLIGHT_ENABLE diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 15153c4692..b9a2eb7a8f 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -30,6 +30,24 @@ along with this program. If not, see . //define layer change stuff for underglow indicator bool skip_leds = false; +#define LAYOUT_ergodox_pretty_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_ergodox_pretty_wrapper( \ + KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, \ + KC_TAB, K01, K02, K03, K04, K05, TG(_DIABLO), TG(_DIABLO), K06, K07, K08, K09, K0A, KC_BSLS, \ + KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_MLSF, CTL_T(K21), K22, K23, K24, K25, TG(_GAMEPAD), TG(_GAMEPAD), K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ + KC_GRV, OSM(MOD_MEH),OSM(MOD_LGUI),KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_IRNY, \ + ALT_T(KC_APP), OSM(MOD_LGUI), OSM(MOD_RGUI), CTL_T(KC_ESCAPE), \ + KC_HOME, KC_PGUP, \ + LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) \ + ) + +#define LAYOUT_ergodox_pretty_base_wrapper(...) LAYOUT_ergodox_pretty_base(__VA_ARGS__) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -55,15 +73,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | End | | PgDn | | | * `---------------------' `---------------------' */ - [_QWERTY] = LAYOUT_ergodox_pretty_wrapper( - // left hand // right hand - KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB, _________________QWERTY_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________QWERTY_R1_________________, KC_BSLS, - KC_C1R3, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________QWERTY_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, - __________________ERGODOX_THUMB_CLUSTER_____________________ - ), + [_QWERTY] = LAYOUT_ergodox_pretty_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ + ), /* Keymap 0: COLEMAK layer * * ,--------------------------------------------------. ,--------------------------------------------------. @@ -87,15 +101,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // If it accepts an argument (i.e, is a function), it doesn't need KC_. // Otherwise, it needs KC_* - [_COLEMAK] = LAYOUT_ergodox_pretty_wrapper( - // left hand // right hand - KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB, _________________COLEMAK_L1________________, TG(_DIABLO), TG(_DIABLO), _________________COLEMAK_R1________________, KC_BSLS, - KC_C1R3, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, - KC_MLSF, _________________COLEMAK_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________COLEMAK_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, - __________________ERGODOX_THUMB_CLUSTER_____________________ - ), + [_COLEMAK] = LAYOUT_ergodox_pretty_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ + ), /* Keymap 0: DVORAK Layout * * ,--------------------------------------------------. ,--------------------------------------------------. @@ -119,15 +129,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // If it accepts an argument (i.e, is a function), it doesn't need KC_. // Otherwise, it needs KC_* - [_DVORAK] = LAYOUT_ergodox_pretty_wrapper( - // left hand // right hand - KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_BSLS, - KC_TAB, _________________DVORAK_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________DVORAK_R1_________________, KC_SLSH, - KC_C1R3, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_MINS, - KC_MLSF, _________________DVORAK_L3_________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________DVORAK_R3_________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, - __________________ERGODOX_THUMB_CLUSTER_____________________ - ), + [_DVORAK] = LAYOUT_ergodox_pretty_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ + ), /* Keymap 0: WORKMAN layer * * ,--------------------------------------------------. ,--------------------------------------------------. @@ -149,17 +155,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | |ace | End | | PgDn | | | * `--------------------' `----------------------' */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* - [_WORKMAN] = LAYOUT_ergodox_pretty_wrapper( - // left hand - KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, - KC_TAB, _________________WORKMAN_L1________________, TG(_DIABLO), TG(_DIABLO), _________________WORKMAN_R1________________, KC_BSLS, - KC_C1R3, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, - KC_MLSF, _________________WORKMAN_L3________________, TG(_GAMEPAD), TG(_GAMEPAD), _________________WORKMAN_R3________________, KC_MRSF, - KC_GRV, ___________ERGODOX_BOTTOM_LEFT_____________, ___________ERGODOX_BOTTOM_RIGHT____________, UC_IRNY, - __________________ERGODOX_THUMB_CLUSTER_____________________ - ), + + [_WORKMAN] = LAYOUT_ergodox_pretty_base_wrapper( + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ + ), // Reverts OSM(Shift) to normal Shifts. However, may not need since we fixed the issue with RDP (LOCAL RESOURCES) [_MODS] = LAYOUT_ergodox_pretty_wrapper( diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h index cbd5bb4602..b4c780cc11 100644 --- a/layouts/community/ortho_4x12/drashna/config.h +++ b/layouts/community/ortho_4x12/drashna/config.h @@ -5,7 +5,7 @@ #if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM) #define RGB_DI_PIN D3 #define RGBLED_NUM 16 // Number of LEDs -#define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 12 #define RGBLIGHT_SAT_STEP 12 #define RGBLIGHT_VAL_STEP 12 diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c index 39f901b14f..108df69315 100644 --- a/layouts/community/ortho_4x12/drashna/keymap.c +++ b/layouts/community/ortho_4x12/drashna/keymap.c @@ -25,34 +25,44 @@ enum planck_keycodes { #define BACKLIT OSM(MOD_LSFT) #endif +#define LAYOUT_ortho_4x12_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_ortho_4x12_wrapper( \ + KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ + KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, CTL_T(K2A), KC_ENT, \ + BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + ) +#define LAYOUT_ortho_4x12_base_wrapper(...) LAYOUT_ortho_4x12_base(__VA_ARGS__) + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT_ortho_4x12_wrapper( - KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, - KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT, - KC_MLSF, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT, - BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +[_QWERTY] = LAYOUT_ortho_4x12_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), -[_COLEMAK] = LAYOUT_ortho_4x12_wrapper( - KC_ESC, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSPC, - KC_TAB, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, - KC_MLSF, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________, KC_ENT, - BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +[_COLEMAK] = LAYOUT_ortho_4x12_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), -[_DVORAK] = LAYOUT_ortho_4x12_wrapper( - KC_ESC, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSPC, - KC_TAB, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_SLSH, - KC_MLSF, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________, KC_ENT, - BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +[_DVORAK] = LAYOUT_ortho_4x12_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), -[_WORKMAN] = LAYOUT_ortho_4x12_wrapper( - KC_TAB, _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSPC, - KC_ESC, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, KC_QUOT, - KC_MLSF, _________________WORKMAN_L3________________, _________________WORKMAN_R3________________, KC_ENT, - BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +[_WORKMAN] = LAYOUT_ortho_4x12_base_wrapper( + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), [_MODS] = LAYOUT_ortho_4x12_wrapper( diff --git a/users/drashna/config.h b/users/drashna/config.h index 3ddec93b13..4545b34ef6 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -19,10 +19,12 @@ #ifdef RGBLIGHT_ENABLE #define RGBLIGHT_SLEEP +#undef RGBLIGHT_ANIMATIONS +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT #endif // RGBLIGHT_ENABLE - - #ifndef ONESHOT_TAP_TOGGLE #define ONESHOT_TAP_TOGGLE 2 #endif // !ONESHOT_TAP_TOGGLE diff --git a/users/drashna/drashna.c b/users/drashna/drashna.c index aad9fab611..5b6620cf33 100644 --- a/users/drashna/drashna.c +++ b/users/drashna/drashna.c @@ -36,11 +36,11 @@ bool send_game_macro(const char *str, keyrecord_t *record, bool override) { keycode = KC_ENTER; } clear_keyboard(); - tap(keycode); + tap_code(keycode); wait_ms(50); send_string_with_delay(str, MACRO_TIMER); wait_ms(50); - tap(KC_ENTER); + tap_code(KC_ENTER); } if (override) wait_ms(3000); return false; @@ -127,13 +127,13 @@ uint32_t default_layer_state_set_keymap (uint32_t state) { __attribute__ ((weak)) void led_set_keymap(uint8_t usb_led) {} - +__attribute__ ((weak)) +void eeconfig_init_keymap(void) {} // Call user matrix init, set default RGB colors and then // call the keymap's init function void matrix_init_user(void) { - userspace_config.raw = eeprom_read_dword(EECONFIG_USERSPACE); - + userspace_config.raw = eeconfig_read_user(); #ifdef BOOTLOADER_CATERINA DDRD &= ~(1<<5); @@ -250,7 +250,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader if (!record->event.pressed) { - send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP + uint8_t temp_mod = get_mods(); + clear_mods(); + send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); + if (temp_mod & MODS_SHIFT_MASK) { + send_string_with_delay_P(PSTR( #if defined(__ARM__) ":dfu-util" #elif defined(BOOTLOADER_DFU) @@ -260,7 +264,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #elif defined(BOOTLOADER_CATERINA) ":avrdude" #endif // bootloader options - SS_TAP(X_ENTER)), 10); + ), 10); + } + if (temp_mod & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } + send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); + set_mods(temp_mod); } return false; break; @@ -268,8 +276,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case EPRM: // Resets EEPROM if (record->event.pressed) { eeconfig_init(); - default_layer_set(1UL<event.pressed) { userspace_config.is_overwatch ^= 1; eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); } + if (record->event.pressed) { userspace_config.is_overwatch ^= 1; eeconfig_update_user(userspace_config.raw); } #ifdef RGBLIGHT_ENABLE userspace_config.is_overwatch ? rgblight_mode_noeeprom(17) : rgblight_mode_noeeprom(18); #endif //RGBLIGHT_ENABLE @@ -344,11 +350,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } else { if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy register_code(KC_LCTL); - tap(KC_C); + tap_code(KC_C); unregister_code(KC_LCTL); } else { // Tap, paste register_code(KC_LCTL); - tap(KC_V); + tap_code(KC_V); unregister_code(KC_LCTL); } } @@ -413,3 +419,8 @@ uint32_t default_layer_state_set_user(uint32_t state) { void led_set_user(uint8_t usb_led) { led_set_keymap(usb_led); } + +void eeconfig_init_user(void) { + userspace_config.raw = 0; + eeconfig_update_user(userspace_config.raw); +} diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 49e3fc870b..7e69a9f8d9 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -19,14 +19,13 @@ along with this program. If not, see . #include "quantum.h" #include "version.h" #include "eeprom.h" -#include "send_unicode.h" #ifdef RGB_MATRIX_ENABLE #include "rgb_matrix.h" #endif -// Define layer names +/* Define layer names */ enum userspace_layers { _QWERTY = 0, _NUMLOCK = 0, @@ -43,28 +42,27 @@ enum userspace_layers { _ADJUST, }; -//define modifiers +/* +define modifiers here, since MOD_* doesn't seem to work for these + */ #define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) #define MODS_CTRL_MASK (MOD_BIT(KC_LCTL)|MOD_BIT(KC_RCTRL)) #define MODS_ALT_MASK (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) #define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) -// RGB color codes are no longer located here anymore. Instead, you will want to -// head to https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight_list.h - -extern bool rgb_layer_change; +/* +RGB color codes are no longer located here anymore. Instead, you will want to +head to https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight_list.h +*/ #ifdef RGBLIGHT_ENABLE void rgblight_sethsv_default_helper(uint8_t index); #endif // RGBLIGHT_ENABLE -inline void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed); bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t this_timer); -#define EECONFIG_USERSPACE (uint32_t *)19 - typedef union { uint32_t raw; struct { @@ -149,7 +147,7 @@ enum userspace_custom_keycodes { #define DL_RAIS LT(_RAISE, KC_DEL) #define ET_RAIS LT(_RAISE, KC_ENTER) -// OSM keycodes, to keep things clean and easy to change +/* OSM keycodes, to keep things clean and easy to change */ #define KC_MLSF OSM(MOD_LSFT) #define KC_MRSF OSM(MOD_RSFT) @@ -178,9 +176,11 @@ enum { #endif // TAP_DANCE_ENABLE -// Custom Keycodes for Diablo 3 layer -// But since TD() doesn't work when tap dance is disabled -// We use custom codes here, so we can substitute the right stuff +/* +Custom Keycodes for Diablo 3 layer +But since TD() doesn't work when tap dance is disabled +We use custom codes here, so we can substitute the right stuff +*/ #ifdef TAP_DANCE_ENABLE #define KC_D3_1 TD(TD_D3_1) #define KC_D3_2 TD(TD_D3_2) @@ -193,11 +193,11 @@ enum { #define KC_D3_4 KC_4 #endif // TAP_DANCE_ENABLE - - -// Since our quirky block definitions are basically a list of comma separated -// arguments, we need a wrapper in order for these definitions to be -// expanded before being used as arguments to the LAYOUT_xxx macro. +/* +Since our quirky block definitions are basically a list of comma separated +arguments, we need a wrapper in order for these definitions to be +expanded before being used as arguments to the LAYOUT_xxx macro. +*/ #if (!defined(LAYOUT) && defined(KEYMAP)) #define LAYOUT KEYMAP #endif @@ -208,112 +208,114 @@ enum { #define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) -// Blocks for each of the four major keyboard layouts -// Organized so we can quickly adapt and modify all of them -// at once, rather than for each keyboard, one at a time. -// And this allows for much cleaner blocks in the keymaps. -// For instance Tap/Hold for Control on all of the layouts - -// NOTE: These are all the same length. If you do a search/replace -// then you need to add/remove underscores to keep the -// lengths consistent. +/* +Blocks for each of the four major keyboard layouts +Organized so we can quickly adapt and modify all of them +at once, rather than for each keyboard, one at a time. +And this allows for much cleaner blocks in the keymaps. +For instance Tap/Hold for Control on all of the layouts + +NOTE: These are all the same length. If you do a search/replace + then you need to add/remove underscores to keep the + lengths consistent. +*/ #define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T #define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G -#define _________________QWERTY_L3_________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B +#define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B #define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P #define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN -#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH #define _________________COLEMAK_L1________________ KC_Q, KC_W, KC_F, KC_P, KC_G #define _________________COLEMAK_L2________________ KC_A, KC_R, KC_S, KC_T, KC_D -#define _________________COLEMAK_L3________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B +#define _________________COLEMAK_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_B #define _________________COLEMAK_R1________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN #define _________________COLEMAK_R2________________ KC_H, KC_N, KC_E, KC_I, KC_O -#define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, KC_SLASH #define ______________COLEMAK_MOD_DH_L1____________ KC_Q, KC_W, KC_F, KC_P, KC_B #define ______________COLEMAK_MOD_DH_L2____________ KC_A, KC_R, KC_S, KC_T, KC_G -#define ______________COLEMAK_MOD_DH_L3____________ CTL_T(KC_Z), KC_X, KC_C, KC_D, KC_V +#define ______________COLEMAK_MOD_DH_L3____________ KC_Z, KC_X, KC_C, KC_D, KC_V #define ______________COLEMAK_MOD_DH_R1____________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN #define ______________COLEMAK_MOD_DH_R2____________ KC_M, KC_N, KC_E, KC_I, KC_O -#define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH #define _________________DVORAK_L1_________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y #define _________________DVORAK_L2_________________ KC_A, KC_O, KC_E, KC_U, KC_I -#define _________________DVORAK_L3_________________ CTL_T(KC_SCLN),KC_Q, KC_J, KC_K, KC_X +#define _________________DVORAK_L3_________________ KC_SCLN, KC_Q, KC_J, KC_K, KC_X #define _________________DVORAK_R1_________________ KC_F, KC_G, KC_C, KC_R, KC_L #define _________________DVORAK_R2_________________ KC_D, KC_H, KC_T, KC_N, KC_S -#define _________________DVORAK_R3_________________ KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z) +#define _________________DVORAK_R3_________________ KC_B, KC_M, KC_W, KC_V, KC_Z #define _________________WORKMAN_L1________________ KC_Q, KC_D, KC_R, KC_W, KC_B #define _________________WORKMAN_L2________________ KC_A, KC_S, KC_H, KC_T, KC_G -#define _________________WORKMAN_L3________________ CTL_T(KC_Z), KC_X, KC_M, KC_C, KC_V +#define _________________WORKMAN_L3________________ KC_Z, KC_X, KC_M, KC_C, KC_V #define _________________WORKMAN_R1________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN #define _________________WORKMAN_R2________________ KC_Y, KC_N, KC_E, KC_O, KC_I -#define _________________WORKMAN_R3________________ KC_K, KC_L, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define _________________WORKMAN_R3________________ KC_K, KC_L, KC_COMM, KC_DOT, KC_SLASH #define _________________NORMAN_L1_________________ KC_Q, KC_W, KC_D, KC_F, KC_K #define _________________NORMAN_L2_________________ KC_A, KC_S, KC_E, KC_T, KC_G -#define _________________NORMAN_L3_________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B +#define _________________NORMAN_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B #define _________________NORMAN_R1_________________ KC_J, KC_U, KC_R, KC_L, KC_SCLN #define _________________NORMAN_R2_________________ KC_Y, KC_N, KC_I, KC_O, KC_U -#define _________________NORMAN_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define _________________NORMAN_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, KC_SLASH #define _________________MALTRON_L1________________ KC_Q, KC_P, KC_Y, KC_C, KC_B #define _________________MALTRON_L2________________ KC_A, KC_N, KC_I, KC_S, KC_F -#define _________________MALTRON_L3________________ CTL_T(KC_SCLN), KC_SLSH, KC_J KC_G, KC_COMM +#define _________________MALTRON_L3________________ KC_SCLN, KC_SLSH, KC_J KC_G, KC_COMM #define _________________MALTRON_R1________________ KC_V, KC_M, KC_U, KC_Z, KC_L #define _________________MALTRON_R2________________ KC_D, KC_T, KC_D, KC_O, KC_R -#define _________________MALTRON_R3________________ KC_DOT, KC_W, KC_K, KC_MINS, CTL_T(KC_x) +#define _________________MALTRON_R3________________ KC_DOT, KC_W, KC_K, KC_MINS, KC_X #define _________________EUCALYN_L1________________ KC_SLSH, KC_COMM, KC_DOT, KC_F, KC_Q #define _________________EUCALYN_L2________________ KC_A, KC_O, KC_E, KC_I, KC_U -#define _________________EUCALYN_L3________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_W +#define _________________EUCALYN_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_W #define _________________EUCALYN_R1________________ KC_M, KC_R, KC_D, KC_Y, KC_P #define _________________EUCALYN_R2________________ KC_G, KC_T, KC_K, KC_S, KC_N -#define _________________EUCALYN_R3________________ KC_B, KC_H, KC_J, KC_L, CTL_T(KC_SCLN) +#define _________________EUCALYN_R3________________ KC_B, KC_H, KC_J, KC_L, KC_SCLN #define _____________CARPLAX_QFMLWY_L1_____________ KC_Q, KC_F, KC_M, KC_L, KC_W #define _____________CARPLAX_QFMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QFMLWY_L3_____________ CTL_T(KC_Z), KC_V, KC_G, KC_C, KC_X +#define _____________CARPLAX_QFMLWY_L3_____________ KC_Z, KC_V, KC_G, KC_C, KC_X #define _____________CARPLAX_QFMLWY_R1_____________ KC_Y, KC_U, KC_O, KC_B, KC_J #define _____________CARPLAX_QFMLWY_R2_____________ KC_I, KC_A, KC_E, KC_H, KC_SCLN -#define _____________CARPLAX_QFMLWY_R3_____________ KC_P, KC_K, KC_COMM, KC_DOT, CTL_T(KC_SLSH) +#define _____________CARPLAX_QFMLWY_R3_____________ KC_P, KC_K, KC_COMM, KC_DOT, KC_SLSH #define _____________CARPLAX_QGMLWB_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W #define _____________CARPLAX_QGMLWB_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QGMLWB_L3_____________ CTL_T(KC_Z), KC_X, KC_C, KC_F, KC_J +#define _____________CARPLAX_QGMLWB_L3_____________ KC_Z, KC_X, KC_C, KC_F, KC_J #define _____________CARPLAX_QGMLWB_R1_____________ KC_B, KC_Y, KC_U, KC_V, KC_SCLN #define _____________CARPLAX_QGMLWB_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H -#define _____________CARPLAX_QGMLWB_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, CTL_T(KC_SLSH) +#define _____________CARPLAX_QGMLWB_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH #define _____________CARPLAX_QGMLWY_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W #define _____________CARPLAX_QGMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QGMLWY_L3_____________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_J +#define _____________CARPLAX_QGMLWY_L3_____________ KC_Z, KC_X, KC_C, KC_V, KC_J #define _____________CARPLAX_QGMLWY_R1_____________ KC_Y, KC_F, KC_U, KC_B, KC_SCLN #define _____________CARPLAX_QGMLWY_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H -#define _____________CARPLAX_QGMLWY_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, CTL_T(KC_SLSH) +#define _____________CARPLAX_QGMLWY_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH #define ________________NUMBER_LEFT________________ KC_1, KC_2, KC_3, KC_4, KC_5 @@ -352,21 +354,3 @@ enum { #define _________________ADJUST_R2_________________ AG_SWAP, QWERTY, COLEMAK, DVORAK, WORKMAN #define _________________ADJUST_R3_________________ MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT - -// Since we have 4 default layouts (QWERTY, DVORAK, COLEMAK and WORKMAN), -// this allows us to quickly modify the bottom row for all of the layouts -// so we don't have to alter it 4 times and hope that we haven't missed -// anything -#define ___________ERGODOX_BOTTOM_LEFT_____________ OSM(MOD_MEH), OSM(MOD_LGUI), KC_LBRC, KC_RBRC -#define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT - - -#define ___________ORTHODOX_THUMP_TOP_____________ ALT_APP, OS_LGUI, KC_LALT, OS_RGUI -#define ___________________ORTHODOX_THUMB_BOTTOM____________________ LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE - - -#define __________________ERGODOX_THUMB_CLUSTER_____________________ ALT_T(KC_APP), OSM(MOD_LGUI), OSM(MOD_RGUI), CTL_T(KC_ESCAPE), \ - KC_HOME, KC_PGUP, \ - LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) - - diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index 4a1a8de692..dc6075320e 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -230,7 +230,7 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { userspace_config.rgb_layer_change ^= 1; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); - eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); + eeconfig_update_user(userspace_config.raw); if (userspace_config.rgb_layer_change) { layer_state_set(layer_state); // This is needed to immediately set the layer color (looks better) } @@ -243,7 +243,7 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { if (userspace_config.rgb_layer_change) { userspace_config.rgb_layer_change = false; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); - eeprom_update_dword(EECONFIG_USERSPACE, userspace_config.raw); + eeconfig_update_user(userspace_config.raw); } } return true; break; @@ -295,31 +295,31 @@ uint32_t layer_state_set_rgb(uint32_t state) { switch (biton32(state)) { case _MACROS: rgblight_sethsv_noeeprom_orange(); - userspace_config.is_overwatch ? rgblight_mode_noeeprom(17) : rgblight_mode_noeeprom(18); + userspace_config.is_overwatch ? rgblight_effect_snake(RGBLIGHT_MODE_SNAKE + 2) : rgblight_effect_snake(RGBLIGHT_MODE_SNAKE + 3); break; case _MEDIA: rgblight_sethsv_noeeprom_chartreuse(); - rgblight_mode_noeeprom(22); + rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 1); break; case _GAMEPAD: rgblight_sethsv_noeeprom_orange(); - rgblight_mode_noeeprom(17); + rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 2); break; case _DIABLO: rgblight_sethsv_noeeprom_red(); - rgblight_mode_noeeprom(5); + rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); break; case _RAISE: rgblight_sethsv_noeeprom_yellow(); - rgblight_mode_noeeprom(5); + rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); break; case _LOWER: rgblight_sethsv_noeeprom_green(); - rgblight_mode_noeeprom(5); + rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); break; case _ADJUST: rgblight_sethsv_noeeprom_red(); - rgblight_mode_noeeprom(23); + rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2); break; default: // for any other layers, or the default layer switch (biton32(default_layer_state)) { @@ -332,7 +332,7 @@ uint32_t layer_state_set_rgb(uint32_t state) { default: rgblight_sethsv_noeeprom_cyan(); break; } - biton32(state) == _MODS ? rgblight_mode_noeeprom(2) : rgblight_mode_noeeprom(1); // if _MODS layer is on, then breath to denote it + biton32(state) == _MODS ? rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING) : rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); // if _MODS layer is on, then breath to denote it break; } // layer_state_set_indicator(); // Runs every scan, so need to call this here .... since I can't get it working "right" anyhow diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 3d6213eff2..964c96c522 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -37,6 +37,3 @@ ifdef CONSOLE_ENABLE endif endif -ifeq ($(strip $(UNICODE_ENABLE)), yes) - SRC += send_unicode.c -endif diff --git a/users/drashna/tap_dances.c b/users/drashna/tap_dances.c index c9e4b1d0ff..3466758530 100644 --- a/users/drashna/tap_dances.c +++ b/users/drashna/tap_dances.c @@ -38,16 +38,16 @@ qk_tap_dance_action_t tap_dance_actions[] = { // Sends the key press to system, but only if on the Diablo layer void send_diablo_keystroke(uint8_t diablo_key) { - if (biton32(layer_state) == _DIABLO) { + if (IS_LAYER_ON(_DIABLO)) { switch (diablo_key) { case 0: - tap(KC_1); break; + tap_code(KC_1); break; case 1: - tap(KC_2); break; + tap_code(KC_2); break; case 2: - tap(KC_3); break; + tap_code(KC_3); break; case 3: - tap(KC_4); break; + tap_code(KC_4); break; } } } -- cgit v1.2.3 From efc88a0b16055dc0b2f94da8c46ea8fadeab70f4 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 20 Oct 2018 02:43:55 +1100 Subject: Keymap: qwerty_code_friendly: use numpad layout for f-keys (#4170) --- .../ergodox/qwerty_code_friendly/keymap.c | 26 +++++++++++----------- .../ergodox/qwerty_code_friendly/readme.md | 13 ++++++----- lib/chibios-contrib | 2 +- 3 files changed, 22 insertions(+), 19 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ergodox/qwerty_code_friendly/keymap.c b/layouts/community/ergodox/qwerty_code_friendly/keymap.c index f882d0e002..2a441be0e6 100644 --- a/layouts/community/ergodox/qwerty_code_friendly/keymap.c +++ b/layouts/community/ergodox/qwerty_code_friendly/keymap.c @@ -403,16 +403,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, K80(L1K2), K80(L1K3), KC_TRNS, KC_TRNS, KC_TRNS ), -/* Keymap 2: Numbers, media and mouse keys +/* Keymap 2: FKeys, media & mouse keys * * .--------------------------------------------------. .--------------------------------------------------. - * | | 1 | 2 | 3 | 4 | 5 | | | Mute | 6 | 7 | 8 | 9 | 0 | | + * | | | | | | | | | Mute | | F10 | F11 | F12 | | | * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | |MWhlUp| |VolUp | | | | | | | + * | | | | MsUp | | |MWhlUp| |VolUp | | F7 | F8 | F9 | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| Left | Down | Up |Right | | | + * | | |MsLeft|MsDown|MsRght| |------| |------| | F4 | F5 | F6 | | | * |--------+------+------+------+------+------|MWhlDn| |VolDn |------+------+------+------+------+--------| - * | | | Rclk | Mclk | Lclk | | | | | | | | | | | + * | | | Rclk | Mclk | Lclk | | | | | | F1 | F2 | F3 | | | * '--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------' * | | | | | | | | | | | | * '----------------------------------' '----------------------------------' @@ -427,7 +427,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* MEDIA, MOUSE & NUMBERS */ [LAYER_MDIA] = LAYOUT_ergodox_76_or_80( /* left hand */ - KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_WH_U, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN3, KC_BTN1, KC_TRNS, KC_WH_D, @@ -436,10 +436,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { K80(L2K0), K80(L2K1), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, /* right hand */ - KC_MUTE, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, - KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS, - KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MUTE, KC_TRNS, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, + KC_VOLU, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_TRNS, KC_TRNS, + KC_TRNS, KC_F4, KC_F5, KC_F6, KC_TRNS, KC_TRNS, + KC_VOLD, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MRWD, KC_MFFD, KC_MPRV, K80(L2K2), K80(L2K3), @@ -448,7 +448,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 3: Entire Words (one for each key) * * .--------------------------------------------------. .--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | | + * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| * | | Q | W | E | R | T | | | | Y | U | I | O | P | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -470,7 +470,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FKEY & WORDS */ [LAYER_FKEY] = LAYOUT_ergodox_76_or_80( /* left hand */ - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, KC_TRNS, M_WORD_Q, M_WORD_W, M_WORD_E, M_WORD_R, M_WORD_T, KC_TRNS, KC_TRNS, M_WORD_A, M_WORD_S, M_WORD_D, M_WORD_F, M_WORD_G, KC_TRNS, M_WORD_Z, M_WORD_X, M_WORD_C, M_WORD_V, M_WORD_B, KC_TRNS, @@ -479,7 +479,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { K80(L3K0), K80(L3K1), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, /* right hand */ - KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_TRNS, M_WORD_Y, M_WORD_U, M_WORD_I, M_WORD_O, M_WORD_P, KC_TRNS, M_WORD_H, M_WORD_J, M_WORD_K, M_WORD_L, KC_TRNS, KC_TRNS, KC_TRNS, M_WORD_N, M_WORD_M, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/layouts/community/ergodox/qwerty_code_friendly/readme.md b/layouts/community/ergodox/qwerty_code_friendly/readme.md index 8bc15dd310..23afa656f7 100644 --- a/layouts/community/ergodox/qwerty_code_friendly/readme.md +++ b/layouts/community/ergodox/qwerty_code_friendly/readme.md @@ -131,13 +131,13 @@ Notes: ``` .--------------------------------------------------. .--------------------------------------------------. -| | 1 | 2 | 3 | 4 | 5 | | | Mute | 6 | 7 | 8 | 9 | 0 | | +| | | | | | | | | Mute | | F10 | F11 | F12 | | | |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| -| | | | MsUp | | |MWhlUp| |VolUp | | | | | | | +| | | | MsUp | | |MWhlUp| |VolUp | | F7 | F8 | F9 | | | |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| -| | |MsLeft|MsDown|MsRght| |------| |------| Left | Down | Up |Right | | | +| | |MsLeft|MsDown|MsRght| |------| |------| | F4 | F5 | F6 | | | |--------+------+------+------+------+------|MWhlDn| |VolDn |------+------+------+------+------+--------| -| | | Rclk | Mclk | Lclk | | | | | | | | | | | +| | | Rclk | Mclk | Lclk | | | | | | F1 | F2 | F3 | | | '--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------' | | | | | | | | | | | | '----------------------------------' '----------------------------------' @@ -158,7 +158,7 @@ eg: `-DCFQ_WORD_E=\"my@email.com\"` ``` .--------------------------------------------------. .--------------------------------------------------. -| | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | | +| | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| | | Q | W | E | R | T | | | | Y | U | I | O | P | | |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -179,6 +179,9 @@ eg: `-DCFQ_WORD_E=\"my@email.com\"` ## Changelog +- 2018/10/19 + Move F-Keys to numpad like layout. + - 2018/05/29 Add number keys for cases when keypad numbers are handled differently. diff --git a/lib/chibios-contrib b/lib/chibios-contrib index ede48346ee..2de67e2f4a 160000 --- a/lib/chibios-contrib +++ b/lib/chibios-contrib @@ -1 +1 @@ -Subproject commit ede48346eee4b8d6847c19bc01420bee76a5e486 +Subproject commit 2de67e2f4a268eae072c5fd76a1b160124cee4f6 -- cgit v1.2.3 From 6f6d28fa8d81063691d2fd11540675eaa5b6989c Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Fri, 19 Oct 2018 11:01:40 -0700 Subject: Big Switch and 5x5 edits (#4168) * 4x4 - pro micro version * pro-micro setup on 4x4 * tap dance LCTL/RESET key * remove test file * more research * revert a couple un-intended edits * opt_defs version of adding custom rules.mk variables * cleanup * cleanup * cleanup * cleanup * layout edits * layout edits * keymap edit * numpad layout change * got tap dance layer-switch working * keymap changes * temporary revert * restore previous settings * misc fixes * layer order change * fix layout matrix * Update tapdances.c * playing around with triple tap dance * sync with upstream * quick edit * tapdance cleanup * mod tap interrupt * tapping term edit * tapping term adjust * 5x5 board edits * set gherkin tapping term * big switch tap dance edit * tapping term refinements * 5x10 layout setup * add audio for bigswitch * keymap change * keymap change & created testing board * sound setup for big_switch * more big switch size testing * bigswitch testing finished * final touch-ups --- keyboards/5x5/5x5.h | 4 +- keyboards/bigswitch/bigswitch.c | 2 + keyboards/bigswitch/keymaps/wanleg/config.h | 11 +- keyboards/bigswitch/keymaps/wanleg/keymap.c | 9 +- keyboards/bigswitch/keymaps/wanleg/rules.mk | 15 +- layouts/community/ortho_3x10/wanleg/readme.md | 9 +- layouts/community/ortho_5x10/wanleg/config.h | 9 - layouts/community/ortho_5x10/wanleg/keymap.c | 38 ---- layouts/community/ortho_5x10/wanleg/rules.mk | 3 - layouts/community/ortho_5x15/wanleg/config.h | 11 +- layouts/community/ortho_5x15/wanleg/keymap.c | 89 ++++++++-- layouts/community/ortho_5x5/layout.json | 1 + layouts/community/ortho_5x5/readme.md | 3 + users/wanleg/config.h | 18 +- users/wanleg/rules.mk | 4 +- users/wanleg/tapdances.c | 246 ++++++++++++++------------ users/wanleg/wanleg.c | 6 + users/wanleg/wanleg.h | 39 +++- 18 files changed, 305 insertions(+), 212 deletions(-) delete mode 100644 layouts/community/ortho_5x10/wanleg/config.h delete mode 100644 layouts/community/ortho_5x10/wanleg/keymap.c delete mode 100644 layouts/community/ortho_5x10/wanleg/rules.mk create mode 100644 layouts/community/ortho_5x5/layout.json create mode 100644 layouts/community/ortho_5x5/readme.md (limited to 'layouts') diff --git a/keyboards/5x5/5x5.h b/keyboards/5x5/5x5.h index cbfc28a901..45fb80a4f7 100644 --- a/keyboards/5x5/5x5.h +++ b/keyboards/5x5/5x5.h @@ -35,7 +35,7 @@ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, ___, ___, ___, ___, ___}, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, ___, ___, ___, ___, ___}, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, ___, ___, ___, ___, ___}, \ - { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, ___, ___, ___, ___, ___}, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, ___, ___, ___, ___, ___}, \ { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, ___, ___, ___, ___, ___} \ } @@ -50,7 +50,7 @@ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e}, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e}, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e}, \ - { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b, K3c, K3d, K3e}, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e}, \ { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4a, K4b, K4c, K4d, K4e} \ } diff --git a/keyboards/bigswitch/bigswitch.c b/keyboards/bigswitch/bigswitch.c index b924c7017c..32f9f7fab8 100644 --- a/keyboards/bigswitch/bigswitch.c +++ b/keyboards/bigswitch/bigswitch.c @@ -26,10 +26,12 @@ void matrix_init_user(void) { __attribute__ ((weak)) void matrix_scan_user(void) { +#if defined(RGBLIGHT_ENABLE) if (runonce && timer_elapsed(my_timer) > 1000) { runonce = false; rgblight_sethsv_noeeprom(0x0, 0xff, 0x80); rgblight_mode_noeeprom(9); rgblight_enable_noeeprom(); } +#endif } diff --git a/keyboards/bigswitch/keymaps/wanleg/config.h b/keyboards/bigswitch/keymaps/wanleg/config.h index f1e1693457..8ac82f40d9 100644 --- a/keyboards/bigswitch/keymaps/wanleg/config.h +++ b/keyboards/bigswitch/keymaps/wanleg/config.h @@ -21,7 +21,6 @@ #define MATRIX_ROW_PINS { B4 } #undef MATRIX_COL_PINS #define MATRIX_COL_PINS { B6 } -//#define UNUSED_PINS /* COL2ROW, ROW2COL, or CUSTOM_MATRIX */ #undef DIODE_DIRECTION @@ -32,14 +31,12 @@ #define BACKLIGHT_LEVELS 3 #define BREATHING_PERIOD 5 -/* for Tap Dance */ -#undef TAPPING_TERM -#define TAPPING_TERM 700 - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -//#define DEBOUNCING_DELAY 5 #undef DEBOUNCING_DELAY -#define DEBOUNCING_DELAY 2 +#define DEBOUNCING_DELAY 5 // set flashing LED with QMK DFU #define QMK_LED B0 + +// set audio pin +#define C6_AUDIO diff --git a/keyboards/bigswitch/keymaps/wanleg/keymap.c b/keyboards/bigswitch/keymaps/wanleg/keymap.c index 7f4150e581..76d0808fda 100644 --- a/keyboards/bigswitch/keymaps/wanleg/keymap.c +++ b/keyboards/bigswitch/keymaps/wanleg/keymap.c @@ -20,8 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( /* Base */ TD(CAD_TD) \ ), -}; - -void led_set_user(uint8_t usb_led) { - -} +[1] = LAYOUT( /*Secondary*/ +TD(BSW_TAP_DANCE) \ +), +}; \ No newline at end of file diff --git a/keyboards/bigswitch/keymaps/wanleg/rules.mk b/keyboards/bigswitch/keymaps/wanleg/rules.mk index bc4a1873f8..a6c7d1d3f0 100644 --- a/keyboards/bigswitch/keymaps/wanleg/rules.mk +++ b/keyboards/bigswitch/keymaps/wanleg/rules.mk @@ -1,7 +1,16 @@ -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default - #If using a ProMicro and it has the QMK DFU bootloader instead of Caterina, #run "make : dfu=qmk" when compiling to ensure it is flagged properly after being flashed ifeq ($(strip $(dfu)), qmk) BOOTLOADER = qmk-dfu -endif \ No newline at end of file +endif + +AUDIO_ENABLE = yes # Audio output on port C6 +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) \ No newline at end of file diff --git a/layouts/community/ortho_3x10/wanleg/readme.md b/layouts/community/ortho_3x10/wanleg/readme.md index ef6c1f9dbb..8696cccf6b 100644 --- a/layouts/community/ortho_3x10/wanleg/readme.md +++ b/layouts/community/ortho_3x10/wanleg/readme.md @@ -1,13 +1,10 @@ ![Gherkin Wanleg Layout Image](https://i.imgur.com/nCPog2W.png) # Gherkin Wanleg Layout This is the layout I came up with to preserve a standard QWERTY 104 key ANSI layout as much as possible, in as few layers as possible for a 30 key board. -I originally set up a few Tap Dance keys, but dropped half of them in favor of chorded versions since in actual use, they tended to impede typing speed more than their current two-key versions. -I've left them in my `keymap.c` ready for use if anyone wants to try them out: +Here are the two Tap Dance keys I've set up for this board: -Legend Name | Single Tap | Double Tap | Hold ---- | --- | --- | --- -*null* | space | enter | shift -*null* | backspace | delete | control +Legend Name | Single Tap | Double Tap | Hold +--- | --- | --- | --- Sft//Cp | shift | caps lock | *null* Q//Esc | KC_Q | escape | *null* diff --git a/layouts/community/ortho_5x10/wanleg/config.h b/layouts/community/ortho_5x10/wanleg/config.h deleted file mode 100644 index 2d24f2771b..0000000000 --- a/layouts/community/ortho_5x10/wanleg/config.h +++ /dev/null @@ -1,9 +0,0 @@ -#pragma once - -//QMK DFU settings (ProMicro boards) -// set top left key as bootloader mode escape key on Gherkin -#if defined(KEYBOARD_5x5) -#define QMK_LED B0 -#define QMK_ESC_OUTPUT D7 // usually COL -#define QMK_ESC_INPUT B2 // usually ROW -#endif diff --git a/layouts/community/ortho_5x10/wanleg/keymap.c b/layouts/community/ortho_5x10/wanleg/keymap.c deleted file mode 100644 index 5d06e53ae4..0000000000 --- a/layouts/community/ortho_5x10/wanleg/keymap.c +++ /dev/null @@ -1,38 +0,0 @@ -#include QMK_KEYBOARD_H -#include "wanleg.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[gGK] = LAYOUT_ortho_5x10_wrapper( - _______________Gherkin_NUM_0_______________, - _______________Gherkin_Row_0_______________, - _______________Gherkin_Row_1_______________, - _______________Gherkin_Row_2_______________, - _______, _______, _______, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, _______, _______ -), - - -[gNUM] = LAYOUT_ortho_5x10_wrapper( - _______________Gherkin_NUM_0_______________, - _______________Gherkin_NUM_0_______________, - _______________Gherkin_NUM_1_______________, - _______________Gherkin_NUM_2_______________, - _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______ -), - -[gDIR] = LAYOUT_ortho_5x10_wrapper( - _______________Gherkin_NUM_0_______________, - _______________Gherkin_DIR_0_______________, - _______________Gherkin_DIR_1_______________, - _______________Gherkin_DIR_2_______________, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), - -[gETC] = LAYOUT_ortho_5x10_wrapper( - _______________Gherkin_NUM_0_______________, - _______________Gherkin_ETC_0_______________, - _______________Gherkin_ETC_1_______________, - _______________Gherkin_ETC_2_______________, - _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______ -), - -}; diff --git a/layouts/community/ortho_5x10/wanleg/rules.mk b/layouts/community/ortho_5x10/wanleg/rules.mk deleted file mode 100644 index 90841d2abe..0000000000 --- a/layouts/community/ortho_5x10/wanleg/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -SWAP_HANDS_ENABLE = no - -BOOTLOADER = qmk-dfu \ No newline at end of file diff --git a/layouts/community/ortho_5x15/wanleg/config.h b/layouts/community/ortho_5x15/wanleg/config.h index a55fc6a3eb..1043986f7a 100644 --- a/layouts/community/ortho_5x15/wanleg/config.h +++ b/layouts/community/ortho_5x15/wanleg/config.h @@ -1,3 +1,8 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H -#endif +#pragma once + +// set top left key as bootloader mode escape key on 5x5 75key layout +#if defined(KEYBOARD_5x5) && !defined(PRO_MICRO) +#define QMK_LED B0 +#define QMK_ESC_OUTPUT D7 // usually COL +#define QMK_ESC_INPUT B2 // usually ROW +#endif \ No newline at end of file diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c index 7731edb6a2..df74241157 100644 --- a/layouts/community/ortho_5x15/wanleg/keymap.c +++ b/layouts/community/ortho_5x15/wanleg/keymap.c @@ -2,30 +2,36 @@ #include "wanleg.h" #define _________________BLANK_75__________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +#define _________________BLANK_50__________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ #define _________________Num_Row_75________________ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* QWERTY 75 - * .--------------------------------------------------------------------------------------------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| gherkin| | FN | - * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| - * | | 7 | 8 | 9 | - * | |--------+--------+--------| - * | 4x12 QWERTY LAYOUT | 4 | 5 | 6 | - * | |--------+--------+--------| - * | | 1 | 2 | 3 | - * | |--------+--------+--------| - * | | 0 | 0 | . | - * '--------------------------------------------------------------------------------------------------------------------------------------' - */ -[QW75] = LAYOUT_ortho_5x15_wrapper( - _________________Num_Row_75________________, GHERKIN75, XXXXXXX, FUNCTION75, - _______________Qwerty_Row__0_______________, KC_KP_7, KC_KP_8, KC_KP_9, - _______________Qwerty_Row__1_______________, KC_KP_4, KC_KP_5, KC_KP_6, - _______________Qwerty_Row__2_______________, KC_KP_1, KC_KP_2, KC_KP_3, - KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, SUBTER75, KC_LSFT, KC_SPC, SUPRA75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +#if defined(KEYBOARD_5x5) +[GK75] = LAYOUT_ortho_5x15_wrapper( + _________________Num_Row_75________________, QWERTY75, XXXXXXX, FUNCTION75, + _______________GherkinLike_0_______________, KC_KP_7, KC_KP_8, KC_KP_9, + _______________GherkinLike_1_______________, KC_KP_4, KC_KP_5, KC_KP_6, + TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM75, KC_V), LT(ETC75, KC_B), KC_N, LT(DIR75, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_KP_1, KC_KP_2, KC_KP_3, + TD(RST_TAP_DANCE), GHERKIN50, KC_LALT, NUMPAD, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +), + +[PAD] = LAYOUT_ortho_5x5_wrapper( + _______, _______, _______, _______, _______, + _______________NUMPAD_Row__0_______________, _______, + _______________NUMPAD_Row__1_______________, _______, + _______________NUMPAD_Row__2_______________, _______, + KC_KP_0, TD(LYR50_TAP_DANCE), KC_KP_DOT, KC_PMNS, _______ +), + +[GK50] = LAYOUT_ortho_5x10_wrapper( + KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSPC, + _______________Gherkin_Row_0_______________, + _______________Gherkin_Row_1_______________, + _______________Gherkin_Row_2_______________, + TD(RST_TAP_DANCE), GHERKIN75, NUMPAD, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, KC_RALT, KC_RGUI ), +#else /* Gherkin 75 * .--------------------------------------------------------------------------------------------------------------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | | FN | @@ -46,6 +52,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM75, KC_V), LT(ETC75, KC_B), KC_N, LT(DIR75, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_KP_1, KC_KP_2, KC_KP_3, KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT ), +#endif + /* QWERTY 75 + * .--------------------------------------------------------------------------------------------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| gherkin| | FN | + * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| + * | | 7 | 8 | 9 | + * | |--------+--------+--------| + * | 4x12 QWERTY LAYOUT | 4 | 5 | 6 | + * | |--------+--------+--------| + * | | 1 | 2 | 3 | + * | |--------+--------+--------| + * | | 0 | 0 | . | + * '--------------------------------------------------------------------------------------------------------------------------------------' + */ +[QW75] = LAYOUT_ortho_5x15_wrapper( + _________________Num_Row_75________________, GHERKIN75, XXXXXXX, FUNCTION75, + _______________Qwerty_Row__0_______________, KC_KP_7, KC_KP_8, KC_KP_9, + _______________Qwerty_Row__1_______________, KC_KP_4, KC_KP_5, KC_KP_6, + _______________Qwerty_Row__2_______________, KC_KP_1, KC_KP_2, KC_KP_3, + KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, SUBTER75, KC_LSFT, KC_SPC, SUPRA75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +), /* SUBTER75 * .--------------------------------------------------------------------------------------------------------------------------------------. @@ -173,4 +200,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_INC, BL_DEC, _______, _______, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R ), + +[gNUM] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_NUM_0_______________, + _______________Gherkin_NUM_1_______________, + _______________Gherkin_NUM_2_______________, + _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______ +), + +[gDIR] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_DIR_0_______________, + _______________Gherkin_DIR_1_______________, + _______________Gherkin_DIR_2_______________, + _________________BLANK_50__________________ +), + +[gETC] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_ETC_0_______________, + _______________Gherkin_ETC_1_______________, + _______________Gherkin_ETC_2_______________, + _______, KC_CAPS, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______ +), }; diff --git a/layouts/community/ortho_5x5/layout.json b/layouts/community/ortho_5x5/layout.json new file mode 100644 index 0000000000..ab4eef8e1b --- /dev/null +++ b/layouts/community/ortho_5x5/layout.json @@ -0,0 +1 @@ +["","","","",""],["","","","",""],["","","","",""],["","","","",""],["","","","",""] diff --git a/layouts/community/ortho_5x5/readme.md b/layouts/community/ortho_5x5/readme.md new file mode 100644 index 0000000000..3dd75765d1 --- /dev/null +++ b/layouts/community/ortho_5x5/readme.md @@ -0,0 +1,3 @@ +# ortho_5x5 + + LAYOUT_ortho_5x5 \ No newline at end of file diff --git a/users/wanleg/config.h b/users/wanleg/config.h index 28e7690e65..f2e785659f 100644 --- a/users/wanleg/config.h +++ b/users/wanleg/config.h @@ -2,8 +2,17 @@ #define USERSPACE_CONFIG_H //TAPPING_TERM -#ifdef TAP_DANCE_ENABLE -#define TAPPING_TERM 200 +//tapping term short (<100): on multi-purpose keys, slow taps may not register, but "holds" register easier. multi-tap keys may be difficult to activate. +//tapping term long (>200): holds don't register as easily - noticeable when typing quickly (e.g. shift doesn't want to engage.) +#if defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_lets_split_rev2) +//Kailh Coppers activate quickly and don't need a long tapping term +#define TAPPING_TERM 100 + +#elif defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_bigswitch) +#define TAPPING_TERM 700 + +#else +#define TAPPING_TERM 145 #endif //Mousekey Settings @@ -27,4 +36,9 @@ #define NO_ACTION_FUNCTION #define NO_ACTION_ONESHOT +// Disable mod tap interrrupt +#ifndef IGNORE_MOD_TAP_INTERRUPT +#define IGNORE_MOD_TAP_INTERRUPT +#endif // !mod tap interrrupt + #endif // !USERSPACE_CONFIG_H diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index 5630401315..2a2a65cfea 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -9,8 +9,8 @@ ifeq ($(strip $(dfu)), qmk) BOOTLOADER = qmk-dfu endif -#use alternate settings for 4x4 board using ProMicro instead of Micro -#usage: make 4x4:wanleg PM=yes +#use alternate settings for boards using ProMicro instead of Micro +#example usage: make 4x4:wanleg PM=yes ifeq ($(strip $(PM)), yes) OPT_DEFS += -DPRO_MICRO endif diff --git a/users/wanleg/tapdances.c b/users/wanleg/tapdances.c index 0778bf5f7e..3878e6d31c 100644 --- a/users/wanleg/tapdances.c +++ b/users/wanleg/tapdances.c @@ -1,6 +1,12 @@ //Tap Dance Settings #include "wanleg.h" +//audio settings for one of the tap dances below +#ifdef AUDIO_ENABLE + float lyrup_song[][2] = SONG(MUSIC_ON_SOUND); + float lyrdown_song[][2] = SONG(MUSIC_OFF_SOUND); +#endif + ///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION START ///// ///// (no need to edit this section) ///// //Enums used to clearly convey the state of the tap dance @@ -9,7 +15,10 @@ enum { SINGLE_HOLD = 2, DOUBLE_TAP = 3, DOUBLE_HOLD = 4, - DOUBLE_SINGLE_TAP = 5 //send SINGLE_TAP twice - NOT DOUBLE_TAP + DOUBLE_SINGLE_TAP = 5, //send SINGLE_TAP twice - NOT DOUBLE_TAP + TRIPLE_TAP = 6, + TRIPLE_HOLD = 7, + TRIPLE_SINGLE_TAP = 8 // Add more enums here if you want for triple, quadruple, etc. }; @@ -32,69 +41,18 @@ int cur_dance (qk_tap_dance_state_t *state) { else if (state->pressed) return DOUBLE_HOLD; else return DOUBLE_TAP; } - else return 6; //magic number. At some point this method will expand to work for more presses -} -///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION END ///// -///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION START ///// -//instantiate 'tap' for the 'ENT' tap dance. -static tap ENTtap_state = { - .is_press_action = true, - .state = 0 -}; - -void ENT_finished (qk_tap_dance_state_t *state, void *user_data) { - ENTtap_state.state = cur_dance(state); - switch (ENTtap_state.state) { - case SINGLE_TAP: register_code(KC_SPC); break; - case SINGLE_HOLD: register_code(KC_LSFT); break; - case DOUBLE_TAP: register_code(KC_ENT); break; - case DOUBLE_HOLD: register_code(KC_NO); break; // setting double hold to do nothing (change this if you want) - case DOUBLE_SINGLE_TAP: register_code(KC_SPC); unregister_code(KC_SPC); register_code(KC_SPC); - //Last case is for fast typing. Assuming your key is `f`: - //For example, when typing the word `buffer`, and you want to make sure that you send `ff` and not `Esc`. - //In order to type `ff` when typing fast, the next character will have to be hit within the `TAPPING_TERM`, which by default is 200ms. - } -} - -void ENT_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (ENTtap_state.state) { - case SINGLE_TAP: unregister_code(KC_SPC); break; - case SINGLE_HOLD: unregister_code(KC_LSFT); break; - case DOUBLE_TAP: unregister_code(KC_ENT); break; - case DOUBLE_HOLD: unregister_code(KC_NO); - case DOUBLE_SINGLE_TAP: unregister_code(KC_SPC); - } - ENTtap_state.state = 0; -} - -//instantiate 'tap' for the 'DEL' tap dance. -static tap DELtap_state = { - .is_press_action = true, - .state = 0 -}; - -void DEL_finished (qk_tap_dance_state_t *state, void *user_data) { - DELtap_state.state = cur_dance(state); - switch (DELtap_state.state) { - case SINGLE_TAP: register_code(KC_BSPC); break; - case SINGLE_HOLD: register_code(KC_LCTL); break; - case DOUBLE_TAP: register_code(KC_DEL); break; - case DOUBLE_HOLD: register_code(KC_NO); break; - case DOUBLE_SINGLE_TAP: register_code(KC_BSPC); unregister_code(KC_BSPC); register_code(KC_BSPC); - } -} -void DEL_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (DELtap_state.state) { - case SINGLE_TAP: unregister_code(KC_BSPC); break; - case SINGLE_HOLD: unregister_code(KC_LCTL); break; - case DOUBLE_TAP: unregister_code(KC_DEL); break; - case DOUBLE_HOLD: unregister_code(KC_NO); - case DOUBLE_SINGLE_TAP: unregister_code(KC_BSPC); + //If count = 3, and it has been interrupted - assume that user is trying to type the letter associated + //with double tap. + else if (state->count == 3) { + if (state->interrupted) return TRIPLE_SINGLE_TAP; + else if (state->pressed) return TRIPLE_HOLD; + else return TRIPLE_TAP; } - DELtap_state.state = 0; + else return 9; //magic number. At some point this method will expand to work for more presses } - +///// QUAD FUNCTION TAP DANCE GENERAL SETUP SECTION END ///// +///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION START ///// //instantiate 'tap' for the 'CAD' tap dance. static tap CADtap_state = { .is_press_action = true, @@ -104,14 +62,14 @@ static tap CADtap_state = { void CAD_finished (qk_tap_dance_state_t *state, void *user_data) { CADtap_state.state = cur_dance(state); switch (CADtap_state.state) { - case SINGLE_TAP: - //register_code(KC_SPC); + case SINGLE_TAP: + //register_code(KC_SPC); SEND_STRING(SS_LGUI("l")); #ifdef BACKLIGHT_ENABLE - backlight_set(3); + backlight_level(3); #endif break; - case SINGLE_HOLD: + case SINGLE_HOLD: //register_code(KC_NO); //take a screenshot of a single window, open Paint and paste SEND_STRING(SS_LALT(SS_TAP(X_PSCREEN)) SS_LGUI("r")); @@ -120,47 +78,37 @@ void CAD_finished (qk_tap_dance_state_t *state, void *user_data) { _delay_ms(700); SEND_STRING(SS_LCTRL("v")); break; //register this keycode when button is held - case DOUBLE_TAP: - //register_code(KC_ENT); + case DOUBLE_TAP: + //register_code(KC_ENT); SEND_STRING(SS_LCTRL(SS_LALT(SS_TAP(X_DELETE)))); #ifdef BACKLIGHT_ENABLE - backlight_set(0); + backlight_level(0); #endif break; //case DOUBLE_HOLD: register_code(KC_NO); break; //register this keycode when button is tapped and then held - case DOUBLE_HOLD: - reset_keyboard(); + case DOUBLE_HOLD: + reset_keyboard(); break; //register this keycode when button is tapped and then held - case DOUBLE_SINGLE_TAP: register_code(KC_NO); unregister_code(KC_NO); register_code(KC_NO); + case TRIPLE_TAP: + SEND_STRING("wanleg@github.com"); + break; + case TRIPLE_HOLD: + set_single_persistent_default_layer(1); + #ifdef AUDIO_ENABLE + stop_all_notes(); + PLAY_SONG(lyrup_song); + #endif + break; } } void CAD_reset (qk_tap_dance_state_t *state, void *user_data) { switch (CADtap_state.state) { - case SINGLE_TAP: - //unregister_code(KC_SPC); - SEND_STRING(SS_LGUI("l")); - #ifdef BACKLIGHT_ENABLE - backlight_set(3); - #endif - break; - case SINGLE_HOLD: - register_code(KC_NO); //(un)register this keycode when button is held and then released - //SEND_STRING(SS_LCTRL("v")); - break; - case DOUBLE_TAP: - //register_code(KC_ENT); - SEND_STRING(SS_LCTRL(SS_LALT(SS_TAP(X_DELETE)))); - #ifdef BACKLIGHT_ENABLE - backlight_set(0); - #endif - break; - case DOUBLE_HOLD: register_code(KC_NO); //(un)register this keycode when button is tapped and then held, and then released - case DOUBLE_SINGLE_TAP: unregister_code(KC_NO); +//nothing to do } CADtap_state.state = 0; -} - +} + //instantiate 'tap' for the 'RST' tap dance. static tap RSTtap_state = { .is_press_action = true, @@ -173,21 +121,18 @@ void RST_finished (qk_tap_dance_state_t *state, void *user_data) { case SINGLE_TAP: register_code(KC_LCTL); break; case SINGLE_HOLD: register_code(KC_LCTL); break; case DOUBLE_TAP: reset_keyboard(); break; - case DOUBLE_HOLD: register_code(KC_NO); break; - case DOUBLE_SINGLE_TAP: register_code(KC_LCTL); unregister_code(KC_LCTL); register_code(KC_LCTL); + case DOUBLE_SINGLE_TAP: register_code(KC_LCTL); unregister_code(KC_LCTL); register_code(KC_LCTL); break; } -} +} void RST_reset (qk_tap_dance_state_t *state, void *user_data) { switch (RSTtap_state.state) { case SINGLE_TAP: unregister_code(KC_LCTL); break; case SINGLE_HOLD: unregister_code(KC_LCTL); break; - case DOUBLE_TAP: unregister_code(KC_NO); break; - case DOUBLE_HOLD: unregister_code(KC_NO); - case DOUBLE_SINGLE_TAP: unregister_code(KC_LCTL); + case DOUBLE_SINGLE_TAP: unregister_code(KC_LCTL); break; } RSTtap_state.state = 0; -} +} //instantiate 'tap' for the 'LYR' tap dance. static tap LYRtap_state = { @@ -199,23 +144,106 @@ void LYR_finished (qk_tap_dance_state_t *state, void *user_data) { LYRtap_state.state = cur_dance(state); switch (LYRtap_state.state) { case SINGLE_TAP: register_code(KC_PSLS); break; - case SINGLE_HOLD: register_code(KC_NO); break; case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; - case DOUBLE_HOLD: register_code(KC_NO); break; case DOUBLE_SINGLE_TAP: register_code(KC_PSLS); unregister_code(KC_PSLS); register_code(KC_PSLS); } -} +} void LYR_reset (qk_tap_dance_state_t *state, void *user_data) { switch (LYRtap_state.state) { case SINGLE_TAP: unregister_code(KC_PSLS); break; - case SINGLE_HOLD: unregister_code(KC_NO); break; case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; - case DOUBLE_HOLD: unregister_code(KC_NO); case DOUBLE_SINGLE_TAP: unregister_code(KC_PSLS); } LYRtap_state.state = 0; -} +} + +//instantiate 'tap' for the 'LYR75' tap dance. +static tap LYR75tap_state = { + .is_press_action = true, + .state = 0 +}; + +void LYR75_finished (qk_tap_dance_state_t *state, void *user_data) { + LYR75tap_state.state = cur_dance(state); + switch (LYR75tap_state.state) { + case SINGLE_TAP: register_code(KC_PSLS); break; + case DOUBLE_TAP: set_single_persistent_default_layer(GK75); break; + case DOUBLE_SINGLE_TAP: register_code(KC_PSLS); unregister_code(KC_PSLS); register_code(KC_PSLS); + } +} + +void LYR75_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (LYR75tap_state.state) { + case SINGLE_TAP: unregister_code(KC_PSLS); break; + case DOUBLE_TAP: set_single_persistent_default_layer(GK75); break; + case DOUBLE_SINGLE_TAP: unregister_code(KC_PSLS); + } + LYR75tap_state.state = 0; +} + +//instantiate 'tap' for the 'LYR50' tap dance. +static tap LYR50tap_state = { + .is_press_action = true, + .state = 0 +}; + +void LYR50_finished (qk_tap_dance_state_t *state, void *user_data) { + LYR50tap_state.state = cur_dance(state); + switch (LYR75tap_state.state) { + case SINGLE_TAP: register_code(KC_PSLS); break; + case DOUBLE_TAP: set_single_persistent_default_layer(GK50); break; + case DOUBLE_SINGLE_TAP: register_code(KC_PSLS); unregister_code(KC_PSLS); register_code(KC_PSLS); + } +} + +void LYR50_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (LYR50tap_state.state) { + case SINGLE_TAP: unregister_code(KC_PSLS); break; + case DOUBLE_TAP: set_single_persistent_default_layer(GK50); break; + case DOUBLE_SINGLE_TAP: unregister_code(KC_PSLS); + } + LYR50tap_state.state = 0; +} + +//instantiate 'tap' for the 'BSW' tap dance. +static tap BSWtap_state = { + .is_press_action = true, + .state = 0 +}; + +void BSW_finished (qk_tap_dance_state_t *state, void *user_data) { + BSWtap_state.state = cur_dance(state); + switch (BSWtap_state.state) { + case SINGLE_TAP: register_code(KC_ENTER); break; + case SINGLE_HOLD: + set_single_persistent_default_layer(0); + #ifdef AUDIO_ENABLE + stop_all_notes(); + PLAY_SONG(lyrdown_song); + #endif + break; + case DOUBLE_TAP: + register_code(KC_LCTRL); + register_code(KC_C); + break; + case DOUBLE_HOLD: + reset_keyboard(); + break; //register this keycode when button is tapped and then held + } +} + +void BSW_reset (qk_tap_dance_state_t *state, void *user_data) { + switch (BSWtap_state.state) { + case SINGLE_TAP: unregister_code(KC_ENTER); break; + case DOUBLE_TAP: + unregister_code(KC_LCTRL); + unregister_code(KC_C); + break; + } + BSWtap_state.state = 0; +} + ///// QUAD FUNCTION TAP DANCE PERSONALIZATION SECTION END ///// //Tap Dance Definitions @@ -224,12 +252,12 @@ qk_tap_dance_action_t tap_dance_actions[] = { [TD_SFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS) // Other declarations would go here, separated by commas, if you have them ,[TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC) - ,[ENT_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ENT_finished, ENT_reset) - ,[DEL_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, DEL_finished, DEL_reset) ,[RST_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, RST_finished, RST_reset) ,[CAD_TD] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, CAD_finished, CAD_reset) ,[LYR_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, LYR_finished, LYR_reset) - + ,[LYR75_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, LYR75_finished, LYR75_reset) + ,[LYR50_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, LYR50_finished, LYR50_reset) + ,[BSW_TAP_DANCE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, BSW_finished, BSW_reset) }; //In Layer declaration, add tap dance item in place of a key code diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c index f22c34ba30..4e60c422fa 100644 --- a/users/wanleg/wanleg.c +++ b/users/wanleg/wanleg.c @@ -47,6 +47,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case GHERKIN50: + if (record->event.pressed) { + set_single_persistent_default_layer(GK50); + } + return false; + break; case SUBTER: if (record->event.pressed) { layer_on(SUB); diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h index 65028751a9..9e0cf3ee5d 100644 --- a/users/wanleg/wanleg.h +++ b/users/wanleg/wanleg.h @@ -27,10 +27,12 @@ enum userspace_layers { ETC75, FN75, PAD, + GK50, }; #elif KEYBOARD_xd75 enum userspace_layers { GK75 = 0, + PAD, QW75, SUB75, SUP75, @@ -50,7 +52,32 @@ enum userspace_layers { gNUM, gDIR, gETC, + GK50, +}; +#elif KEYBOARD_5x5 +enum userspace_layers { + GK50 = 0, + gNUM, + gDIR, + gETC, + GK75, + QW75, + SUB75, + SUP75, + NUM75, + DIR75, + ETC75, + FN75, PAD, + gGK, + _GK, + _QW, + ONE, + SUB, + SUP, + NUM, + DIR, + ETC, }; #else enum userspace_layers { @@ -75,6 +102,7 @@ enum userspace_layers { DIR75, ETC75, FN75, + GK50, }; #endif @@ -100,6 +128,7 @@ enum userspace_custom_keycodes { ETCETERA75, FUNCTION75, NUMPAD, + GHERKIN50, }; @@ -108,11 +137,12 @@ enum userspace_custom_keycodes { enum { TD_SFT_CAPS = 0 ,TD_Q_ESC - ,ENT_TAP_DANCE - ,DEL_TAP_DANCE ,CAD_TD ,RST_TAP_DANCE ,LYR_TAP_DANCE + ,LYR50_TAP_DANCE + ,LYR75_TAP_DANCE + ,BSW_TAP_DANCE }; #endif @@ -130,6 +160,7 @@ enum { #define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) #define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) #define LAYOUT_ortho_4x4_wrapper(...) LAYOUT_ortho_4x4(__VA_ARGS__) +#define LAYOUT_ortho_5x5_wrapper(...) LAYOUT_ortho_5x5(__VA_ARGS__) // Blocks for each of the major keyboard layouts // Organized so we can quickly adapt and modify all of them @@ -189,12 +220,12 @@ enum { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | Sft//Cp| | | | | C-A-D | mScrL | mScrR | ALT | DEL | + * | Sft//Cp| CAPS | | | | C-A-D | mScrL | mScrR | ALT | DEL | * '-----------------------------------------------------------------------------------------' */ #define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,_______, RESET, KC_RSFT, KC_WH_U, KC_WH_D, _______, KC_BSLS #define _______________Gherkin_ETC_1_______________ KC_MS_L, KC_MS_D, KC_MS_R,_______, KC_LSFT, KC_BTN3, KC_BTN1, KC_BTN2, KC_SCLN, KC_QUOT -#define _______________Gherkin_ETC_2_______________ TD(TD_SFT_CAPS),_______, _______,_______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL +#define _______________Gherkin_ETC_2_______________ TD(TD_SFT_CAPS),KC_CAPS, _______,_______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL /* Gherkin-Like * .-----------------------------------------------------------------------------------------------------------. -- cgit v1.2.3 From f775168c4fa870c045984069a1b55eb9d269098c Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 20 Oct 2018 10:47:59 +1100 Subject: Keymap: qwerty_code_friendly: update readme, comments (#4178) --- .../community/ergodox/qwerty_code_friendly/keymap.c | 2 +- .../community/ergodox/qwerty_code_friendly/readme.md | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ergodox/qwerty_code_friendly/keymap.c b/layouts/community/ergodox/qwerty_code_friendly/keymap.c index 2a441be0e6..43a1d1ad80 100644 --- a/layouts/community/ergodox/qwerty_code_friendly/keymap.c +++ b/layouts/community/ergodox/qwerty_code_friendly/keymap.c @@ -445,7 +445,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MPRV, K80(L2K2), K80(L2K3), KC_MNXT, KC_TRNS, KC_MPLY ), -/* Keymap 3: Entire Words (one for each key) +/* Keymap 3: Entire Words (one for each key) & Numbers * * .--------------------------------------------------. .--------------------------------------------------. * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | diff --git a/layouts/community/ergodox/qwerty_code_friendly/readme.md b/layouts/community/ergodox/qwerty_code_friendly/readme.md index 23afa656f7..9abd071b9b 100644 --- a/layouts/community/ergodox/qwerty_code_friendly/readme.md +++ b/layouts/community/ergodox/qwerty_code_friendly/readme.md @@ -30,7 +30,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_KEY0` - (0..7) are used for custom-keys + (0..8) are used for custom-keys - `CFQ_USE_MOMENTARY_LAYER_KEYS` is used to prevent layer keys from toggling when tapped. - `CFQ_USE_SHIFT_QUOTES` @@ -122,12 +122,7 @@ Notes: '--------------------' '--------------------' ``` -## Keymap 2: Media, Mouse Keys and Numbers - -Notes: - -- Numbers are included on this layer since some applications differentiate - between numbers top row and keypad. +## Keymap 2: F-Keys, Media & Mouse Keys ``` .--------------------------------------------------. .--------------------------------------------------. @@ -150,12 +145,17 @@ Notes: '--------------------' '--------------------' ``` -## Keymap 3: F-Keys & User Defined Words +## Keymap 3: User Defined Words & Numbers This is for assigning whole words to single keys. You can define the arguments (which must be quoted) using: `CFQ_WORD_[A-Z]` eg: `-DCFQ_WORD_E=\"my@email.com\"` +Notes: + +- Numbers are included on this layer since some applications differentiate + between numbers top row and keypad. + ``` .--------------------------------------------------. .--------------------------------------------------. | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | @@ -180,7 +180,7 @@ eg: `-DCFQ_WORD_E=\"my@email.com\"` ## Changelog - 2018/10/19 - Move F-Keys to numpad like layout. + Move F-Keys to key-pad like layout. - 2018/05/29 Add number keys for cases when keypad numbers are handled differently. -- cgit v1.2.3 From 00b6f14821f44ead75504e28d7fed26791cb2875 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 22 Oct 2018 08:57:37 -0700 Subject: Replace outdated RGB/Audio information --- keyboards/amj40/keymaps/default/rules.mk | 4 ++-- keyboards/amj40/keymaps/fabian/rules.mk | 2 +- keyboards/amj40/keymaps/jetpacktuxedo/rules.mk | 2 +- keyboards/amj40/keymaps/myee/rules.mk | 2 +- keyboards/amj60/keymaps/iso_split_rshift/rules.mk | 2 +- keyboards/atomic/keymaps/pvc/rules.mk | 2 +- keyboards/atomic/rules.mk | 2 +- keyboards/atreus/keymaps/xk/rules.mk | 2 +- keyboards/bfo9000/rules.mk | 2 +- keyboards/bpiphany/frosty_flake/keymaps/QFR_JM/rules.mk | 2 +- keyboards/bpiphany/frosty_flake/keymaps/default/rules.mk | 2 +- keyboards/bpiphany/frosty_flake/keymaps/nikchi/rules.mk | 2 +- keyboards/bpiphany/frosty_flake/keymaps/tkl/rules.mk | 2 +- keyboards/bpiphany/pegasushoof/keymaps/blowrak/rules.mk | 2 +- keyboards/bpiphany/pegasushoof/keymaps/citadel/rules.mk | 2 +- keyboards/bpiphany/pegasushoof/keymaps/default/rules.mk | 2 +- keyboards/bpiphany/pegasushoof/rules.mk | 2 +- keyboards/bpiphany/tiger_lily/keymaps/default/rules.mk | 2 +- keyboards/bpiphany/tiger_lily/keymaps/default_ansi/rules.mk | 2 +- keyboards/clueboard/66/keymaps/xyverz/rules.mk | 2 +- keyboards/comet46/keymaps/satt/rules.mk | 2 +- keyboards/contra/keymaps/losinggeneration/rules.mk | 2 +- keyboards/converter/ibm_terminal/keymaps/default/rules.mk | 2 +- keyboards/converter/ibm_terminal/keymaps/priyadi/rules.mk | 2 +- keyboards/converter/ibm_terminal/rules.mk | 2 +- keyboards/converter/sun_usb/rules.mk | 2 +- keyboards/crkbd/keymaps/default/rules.mk | 2 +- keyboards/crkbd/keymaps/drashna/rules.mk | 2 +- keyboards/crkbd/keymaps/like_jis/rules.mk | 2 +- keyboards/crkbd/rules.mk | 2 +- keyboards/daisy/rules.mk | 2 +- keyboards/deltasplit75/keymaps/itsaferbie/rules.mk | 2 +- keyboards/deltasplit75/rules.mk | 6 +++--- keyboards/diverge3/rules.mk | 2 +- keyboards/divergetm2/rules.mk | 2 +- keyboards/do60/rules.mk | 2 +- keyboards/eco/keymaps/default/rules.mk | 2 +- keyboards/eco/keymaps/hexwire/rules.mk | 2 +- keyboards/eco/keymaps/that_canadian/rules.mk | 2 +- keyboards/eco/keymaps/xyverz/rules.mk | 2 +- keyboards/ergo42/rules.mk | 2 +- keyboards/ergodash/rules.mk | 2 +- keyboards/ergodox_infinity/keymaps/narze/rules.mk | 2 +- keyboards/ergoinu/keymaps/default/rules.mk | 2 +- keyboards/ergoinu/keymaps/default_jis/rules.mk | 2 +- keyboards/ergoinu/rules.mk | 2 +- keyboards/ergotravel/rules.mk | 2 +- keyboards/fortitude60/rules.mk | 2 +- keyboards/fourier/rules.mk | 2 +- keyboards/gherkin/keymaps/mjt/rules.mk | 2 +- keyboards/gonnerd/keymaps/default/rules.mk | 2 +- keyboards/gonnerd/keymaps/gam3cat/rules.mk | 2 +- keyboards/gonnerd/keymaps/mauin/rules.mk | 2 +- keyboards/gonnerd/keymaps/tkl/rules.mk | 2 +- keyboards/hadron/keymaps/default/rules.mk | 2 +- keyboards/hadron/keymaps/side_numpad/rules.mk | 2 +- keyboards/handwired/MS_sculpt_mobile/keymaps/default/rules.mk | 2 +- keyboards/handwired/MS_sculpt_mobile/keymaps/milestogo/rules.mk | 2 +- keyboards/handwired/arrow_pad/keymaps/pad_21/rules.mk | 2 +- keyboards/handwired/arrow_pad/keymaps/pad_24/rules.mk | 2 +- keyboards/handwired/atreus50/rules.mk | 2 +- keyboards/handwired/dactyl_manuform/4x5/rules.mk | 3 +-- keyboards/handwired/dactyl_manuform/4x6/rules.mk | 3 +-- keyboards/handwired/dactyl_manuform/5x6/rules.mk | 3 +-- keyboards/handwired/dactyl_manuform/5x7/rules.mk | 2 +- keyboards/handwired/dactyl_manuform/6x6/rules.mk | 3 +-- keyboards/handwired/dactyl_manuform/rules.mk | 2 +- keyboards/handwired/kbod/keymaps/default/rules.mk | 2 +- keyboards/handwired/minorca/keymaps/default/rules.mk | 2 +- keyboards/handwired/minorca/keymaps/rgb/rules.mk | 2 +- keyboards/handwired/minorca/rules.mk | 2 +- keyboards/handwired/not_so_minidox/rules.mk | 2 +- keyboards/handwired/pilcrow/keymaps/default/rules.mk | 2 +- keyboards/handwired/promethium/keymaps/default/rules.mk | 2 +- keyboards/handwired/promethium/keymaps/priyadi/rules.mk | 2 +- keyboards/handwired/promethium/rules.mk | 2 +- keyboards/handwired/qc60/rules.mk | 2 +- keyboards/handwired/terminus_mini/keymaps/default/rules.mk | 2 +- keyboards/handwired/terminus_mini/rules.mk | 2 +- keyboards/handwired/woodpad/keymaps/default/rules.mk | 2 +- keyboards/handwired/xealous/rules.mk | 2 +- keyboards/helix/pico/keymaps/biacco/rules.mk | 2 +- keyboards/helix/pico/keymaps/default/rules.mk | 2 +- keyboards/helix/rev1/keymaps/OLED_sample/rules.mk | 2 +- keyboards/helix/rev2/keymaps/default/rules.mk | 2 +- keyboards/helix/rev2/keymaps/edvorakjp/rules.mk | 2 +- keyboards/helix/rev2/keymaps/five_rows/rules.mk | 2 +- keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk | 2 +- keyboards/helix/rev2/keymaps/froggy/rules.mk | 2 +- keyboards/helix/rev2/keymaps/led_test/rules.mk | 2 +- keyboards/helix/rev2/keymaps/yshrsmz/rules.mk | 2 +- keyboards/helix/rules.mk | 2 +- keyboards/hhkb/keymaps/cinaeco/rules.mk | 2 +- keyboards/iris/keymaps/edvorakjp/rules.mk | 2 +- keyboards/iris/rules.mk | 2 +- keyboards/jd45/keymaps/mjt/rules.mk | 2 +- keyboards/jd45/keymaps/mjt6u/rules.mk | 2 +- keyboards/kinesis/keymaps/carpalx/rules.mk | 2 +- keyboards/kinesis/keymaps/default/rules.mk | 2 +- keyboards/kinesis/keymaps/default_pretty/rules.mk | 2 +- keyboards/kinesis/keymaps/dvorak/rules.mk | 2 +- keyboards/kinesis/keymaps/insertsnideremarks/rules.mk | 2 +- keyboards/kinesis/keymaps/milestogo/rules.mk | 2 +- keyboards/kinesis/keymaps/xyverz/rules.mk | 2 +- keyboards/launchpad/keymaps/default/rules.mk | 2 +- keyboards/lets_split/keymaps/OLED_sample/rules.mk | 2 +- keyboards/lets_split/keymaps/heartrobotninja/rules.mk | 3 +-- keyboards/lets_split/keymaps/mjt/rules.mk | 2 +- keyboards/lets_split/keymaps/piemod/rules.mk | 2 +- keyboards/lets_split/keymaps/xk/rules.mk | 2 +- keyboards/lets_split/rules.mk | 2 +- keyboards/levinson/keymaps/losinggeneration/rules.mk | 2 +- keyboards/levinson/rules.mk | 2 +- keyboards/lfkeyboards/lfk78/keymaps/default/rules.mk | 2 +- keyboards/lfkeyboards/lfk78/keymaps/iso/rules.mk | 2 +- keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/rules.mk | 2 +- keyboards/lfkeyboards/lfkpad/keymaps/default/rules.mk | 2 +- keyboards/lily58/rules.mk | 2 +- keyboards/meira/rules.mk | 2 +- keyboards/minidox/keymaps/alairock/rules.mk | 2 +- keyboards/minidox/keymaps/that_canadian/rules.mk | 2 +- keyboards/minidox/keymaps/xyverz/rules.mk | 2 +- keyboards/minidox/rules.mk | 2 +- keyboards/mint60/rules.mk | 2 +- keyboards/miuni32/keymaps/adam-lee/rules.mk | 2 +- keyboards/miuni32/keymaps/default/rules.mk | 2 +- keyboards/miuni32/keymaps/ht_156/rules.mk | 2 +- keyboards/miuni32/keymaps/ki/rules.mk | 2 +- keyboards/mt40/rules.mk | 2 +- keyboards/niu_mini/keymaps/spacebarracecar/rules.mk | 2 +- keyboards/nyquist/keymaps/DivergeJM/rules.mk | 2 +- keyboards/nyquist/keymaps/danielhklein/rules.mk | 2 +- keyboards/nyquist/keymaps/losinggeneration/rules.mk | 2 +- keyboards/nyquist/rules.mk | 2 +- keyboards/org60/rules.mk | 2 +- keyboards/orthodox/rules.mk | 2 +- keyboards/planck/keymaps/ab/rules.mk | 2 +- keyboards/planck/keymaps/alexey/rules.mk | 2 +- keyboards/planck/keymaps/angerthosenear/rules.mk | 2 +- keyboards/planck/keymaps/austin/rules.mk | 2 +- keyboards/planck/keymaps/basic/rules.mk | 2 +- keyboards/planck/keymaps/bone2planck/rules.mk | 2 +- keyboards/planck/keymaps/callum/rules.mk | 2 +- keyboards/planck/keymaps/cbbrowne/rules.mk | 2 +- keyboards/planck/keymaps/chance/rules.mk | 2 +- keyboards/planck/keymaps/charlie/rules.mk | 2 +- keyboards/planck/keymaps/circuit/rules.mk | 2 +- keyboards/planck/keymaps/daniel/rules.mk | 2 +- keyboards/planck/keymaps/danielhklein/rules.mk | 2 +- keyboards/planck/keymaps/david/rules.mk | 2 +- keyboards/planck/keymaps/dc/rules.mk | 2 +- keyboards/planck/keymaps/dlaroe/rules.mk | 2 +- keyboards/planck/keymaps/dr_notsokind/rules.mk | 2 +- keyboards/planck/keymaps/dzobert/rules.mk | 2 +- keyboards/planck/keymaps/espynn/rules.mk | 2 +- keyboards/planck/keymaps/experimental/rules.mk | 2 +- keyboards/planck/keymaps/gabriel/rules.mk | 2 +- keyboards/planck/keymaps/gunp/rules.mk | 2 +- keyboards/planck/keymaps/impossible/rules.mk | 2 +- keyboards/planck/keymaps/jacob/rules.mk | 2 +- keyboards/planck/keymaps/jeebak/rules.mk | 2 +- keyboards/planck/keymaps/jhenahan/rules.mk | 2 +- keyboards/planck/keymaps/joe/rules.mk | 2 +- keyboards/planck/keymaps/johannes/rules.mk | 2 +- keyboards/planck/keymaps/kyle/rules.mk | 2 +- keyboards/planck/keymaps/lae3/rules.mk | 2 +- keyboards/planck/keymaps/leo/rules.mk | 2 +- keyboards/planck/keymaps/lucas/rules.mk | 2 +- keyboards/planck/keymaps/lukas/rules.mk | 2 +- keyboards/planck/keymaps/luke/rules.mk | 2 +- keyboards/planck/keymaps/max/rules.mk | 2 +- keyboards/planck/keymaps/mollat/rules.mk | 2 +- keyboards/planck/keymaps/myoung34/rules.mk | 2 +- keyboards/planck/keymaps/narze/rules.mk | 2 +- keyboards/planck/keymaps/neo2planck/rules.mk | 2 +- keyboards/planck/keymaps/nico/rules.mk | 2 +- keyboards/planck/keymaps/not-quite-neo/rules.mk | 2 +- keyboards/planck/keymaps/pickle_jr/rules.mk | 2 +- keyboards/planck/keymaps/premek/rules.mk | 2 +- keyboards/planck/keymaps/priyadi/rules.mk | 2 +- keyboards/planck/keymaps/pvc/rules.mk | 2 +- keyboards/planck/keymaps/rai-suta/rules.mk | 2 +- keyboards/planck/keymaps/sgoodwin/rules.mk | 2 +- keyboards/planck/keymaps/spacebarracecar/rules.mk | 3 +-- keyboards/planck/keymaps/tak3over/rules.mk | 2 +- keyboards/planck/keymaps/thermal_printer/rules.mk | 2 +- keyboards/planck/keymaps/tong92/rules.mk | 2 +- keyboards/planck/keymaps/vifon/rules.mk | 2 +- keyboards/planck/keymaps/yale/rules.mk | 2 +- keyboards/planck/keymaps/yang/rules.mk | 2 +- keyboards/planck/keymaps/zach/rules.mk | 2 +- keyboards/planck/keymaps/zrichard/rules.mk | 2 +- keyboards/preonic/keymaps/bucktooth/rules.mk | 2 +- keyboards/preonic/keymaps/dlaroe/rules.mk | 2 +- keyboards/preonic/keymaps/jacwib/rules.mk | 2 +- keyboards/preonic/keymaps/kinesis/rules.mk | 2 +- keyboards/preonic/keymaps/seph/rules.mk | 2 +- keyboards/preonic/keymaps/zach/rules.mk | 2 +- keyboards/quefrency/rules.mk | 2 +- keyboards/qwertyydox/rules.mk | 2 +- keyboards/rama/m60_a/rules.mk | 3 +-- keyboards/redox/rules.mk | 2 +- keyboards/rorschach/keymaps/insertsnideremarks/rules.mk | 4 +--- keyboards/rorschach/rules.mk | 2 +- keyboards/s60_x/keymaps/ansi_qwertz/rules.mk | 2 +- keyboards/s60_x/keymaps/bluebear/rules.mk | 2 +- keyboards/satan/keymaps/addcninblue/rules.mk | 2 +- keyboards/satan/keymaps/admiralStrokers/rules.mk | 2 +- keyboards/satan/keymaps/ben_iso/rules.mk | 2 +- keyboards/satan/keymaps/chaser/rules.mk | 2 +- keyboards/satan/keymaps/colemak/rules.mk | 2 +- keyboards/satan/keymaps/default/rules.mk | 2 +- keyboards/satan/keymaps/dende_iso/rules.mk | 2 +- keyboards/satan/keymaps/dkrieger/rules.mk | 2 +- keyboards/satan/keymaps/isoHHKB/rules.mk | 2 +- keyboards/satan/keymaps/lepa/rules.mk | 2 +- keyboards/satan/keymaps/midi/rules.mk | 2 +- keyboards/satan/keymaps/olligranlund_iso/rules.mk | 2 +- keyboards/satan/keymaps/sethbc/rules.mk | 2 +- keyboards/satan/keymaps/smt/rules.mk | 2 +- keyboards/satan/keymaps/unxmaal/rules.mk | 2 +- keyboards/tada68/keymaps/ardakilic/rules.mk | 2 +- keyboards/tada68/keymaps/bazooka/rules.mk | 2 +- keyboards/tada68/keymaps/cheese/rules.mk | 3 +-- keyboards/tada68/keymaps/default/rules.mk | 2 +- keyboards/tada68/keymaps/fakb/rules.mk | 2 +- keyboards/tada68/keymaps/fezzant/rules.mk | 2 +- keyboards/tada68/keymaps/iso-nor/rules.mk | 2 +- keyboards/tada68/keymaps/iso-uk/rules.mk | 2 +- keyboards/tada68/keymaps/isoish/rules.mk | 2 +- keyboards/tada68/keymaps/mattdicarlo/rules.mk | 2 +- keyboards/tada68/keymaps/mlechner/rules.mk | 2 +- keyboards/tada68/keymaps/mtdjr/rules.mk | 2 +- keyboards/tada68/keymaps/pascamel/rules.mk | 2 +- keyboards/tada68/keymaps/raylas/rules.mk | 2 +- keyboards/tada68/keymaps/rbong/rules.mk | 2 +- keyboards/tada68/keymaps/rgb/rules.mk | 2 +- keyboards/tada68/keymaps/rys/rules.mk | 2 +- keyboards/tada68/keymaps/shalzz/rules.mk | 2 +- keyboards/tada68/keymaps/sm0g/rules.mk | 2 +- keyboards/tada68/keymaps/stephengrier/rules.mk | 2 +- keyboards/tada68/keymaps/trashcat/rules.mk | 2 +- keyboards/tada68/keymaps/tshack/rules.mk | 2 +- keyboards/tada68/keymaps/unix/rules.mk | 2 +- keyboards/tada68/keymaps/wamsm_tada/rules.mk | 2 +- keyboards/the_ruler/keymaps/default/rules.mk | 2 +- keyboards/the_ruler/rules.mk | 2 +- keyboards/thevankeyboards/bananasplit/keymaps/0010/rules.mk | 2 +- keyboards/thevankeyboards/bananasplit/keymaps/coloneljesus/rules.mk | 2 +- keyboards/thevankeyboards/bananasplit/keymaps/default/rules.mk | 2 +- keyboards/thevankeyboards/bananasplit/keymaps/kamon/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/default/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk | 2 +- keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/default/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/flipphone/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/khord/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/mjt/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/singles/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/singlesBrent/rules.mk | 2 +- keyboards/thevankeyboards/roadkit/keymaps/wavebeem-gamepad/rules.mk | 2 +- keyboards/vision_division/keymaps/default/rules.mk | 2 +- keyboards/vitamins_included/rules.mk | 2 +- keyboards/viterbi/rules.mk | 2 +- keyboards/wavelet/rules.mk | 2 +- keyboards/xd60/rules.mk | 2 +- keyboards/xd75/keymaps/fabian/rules.mk | 2 +- keyboards/xd75/keymaps/germanized/rules.mk | 2 +- keyboards/xd75/rules.mk | 2 +- keyboards/zeal60/rules.mk | 2 +- keyboards/zeal65/rules.mk | 3 +-- keyboards/zen/rules.mk | 2 +- layouts/community/ergodox/alphadox/rules.mk | 4 +--- 277 files changed, 280 insertions(+), 293 deletions(-) (limited to 'layouts') diff --git a/keyboards/amj40/keymaps/default/rules.mk b/keyboards/amj40/keymaps/default/rules.mk index 034e697bc2..41a1982248 100644 --- a/keyboards/amj40/keymaps/default/rules.mk +++ b/keyboards/amj40/keymaps/default/rules.mk @@ -1,5 +1,5 @@ # Build Options -# change to "no" to disable the options, or define them in the Makefile in +# change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/amj40/keymaps/fabian/rules.mk b/keyboards/amj40/keymaps/fabian/rules.mk index a914e4c0ce..7e0634e09e 100644 --- a/keyboards/amj40/keymaps/fabian/rules.mk +++ b/keyboards/amj40/keymaps/fabian/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/amj40/keymaps/jetpacktuxedo/rules.mk b/keyboards/amj40/keymaps/jetpacktuxedo/rules.mk index d7f3e76054..6ad9236688 100644 --- a/keyboards/amj40/keymaps/jetpacktuxedo/rules.mk +++ b/keyboards/amj40/keymaps/jetpacktuxedo/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. It uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/amj40/keymaps/myee/rules.mk b/keyboards/amj40/keymaps/myee/rules.mk index 034e697bc2..c35191cef2 100644 --- a/keyboards/amj40/keymaps/myee/rules.mk +++ b/keyboards/amj40/keymaps/myee/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/amj60/keymaps/iso_split_rshift/rules.mk b/keyboards/amj60/keymaps/iso_split_rshift/rules.mk index 2969ed8aec..931affcd56 100644 --- a/keyboards/amj60/keymaps/iso_split_rshift/rules.mk +++ b/keyboards/amj60/keymaps/iso_split_rshift/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/atomic/keymaps/pvc/rules.mk b/keyboards/atomic/keymaps/pvc/rules.mk index c7c04485fc..8414b40fb6 100644 --- a/keyboards/atomic/keymaps/pvc/rules.mk +++ b/keyboards/atomic/keymaps/pvc/rules.mk @@ -9,7 +9,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/atomic/rules.mk b/keyboards/atomic/rules.mk index 3bd04a00a7..eee6c2530a 100644 --- a/keyboards/atomic/rules.mk +++ b/keyboards/atomic/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/atreus/keymaps/xk/rules.mk b/keyboards/atreus/keymaps/xk/rules.mk index fe431f28a7..2e76f9da5d 100644 --- a/keyboards/atreus/keymaps/xk/rules.mk +++ b/keyboards/atreus/keymaps/xk/rules.mk @@ -10,7 +10,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) ifndef QUANTUM_DIR diff --git a/keyboards/bfo9000/rules.mk b/keyboards/bfo9000/rules.mk index 8a7e56f462..d11f9a54e7 100644 --- a/keyboards/bfo9000/rules.mk +++ b/keyboards/bfo9000/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/bpiphany/frosty_flake/keymaps/QFR_JM/rules.mk b/keyboards/bpiphany/frosty_flake/keymaps/QFR_JM/rules.mk index 0ae0b96462..856481d031 100644 --- a/keyboards/bpiphany/frosty_flake/keymaps/QFR_JM/rules.mk +++ b/keyboards/bpiphany/frosty_flake/keymaps/QFR_JM/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/bpiphany/frosty_flake/keymaps/default/rules.mk b/keyboards/bpiphany/frosty_flake/keymaps/default/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/bpiphany/frosty_flake/keymaps/default/rules.mk +++ b/keyboards/bpiphany/frosty_flake/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/bpiphany/frosty_flake/keymaps/nikchi/rules.mk b/keyboards/bpiphany/frosty_flake/keymaps/nikchi/rules.mk index b21eb64044..fc5761c053 100644 --- a/keyboards/bpiphany/frosty_flake/keymaps/nikchi/rules.mk +++ b/keyboards/bpiphany/frosty_flake/keymaps/nikchi/rules.mk @@ -14,7 +14,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes # unicodemap BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes LEADER_ENABLE = yes diff --git a/keyboards/bpiphany/frosty_flake/keymaps/tkl/rules.mk b/keyboards/bpiphany/frosty_flake/keymaps/tkl/rules.mk index f29756f223..c76a5a80e4 100644 --- a/keyboards/bpiphany/frosty_flake/keymaps/tkl/rules.mk +++ b/keyboards/bpiphany/frosty_flake/keymaps/tkl/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/bpiphany/pegasushoof/keymaps/blowrak/rules.mk b/keyboards/bpiphany/pegasushoof/keymaps/blowrak/rules.mk index 168fb625b2..7a616ee5f3 100644 --- a/keyboards/bpiphany/pegasushoof/keymaps/blowrak/rules.mk +++ b/keyboards/bpiphany/pegasushoof/keymaps/blowrak/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR diff --git a/keyboards/bpiphany/pegasushoof/keymaps/citadel/rules.mk b/keyboards/bpiphany/pegasushoof/keymaps/citadel/rules.mk index 0dd8a79f4e..4cec29477a 100644 --- a/keyboards/bpiphany/pegasushoof/keymaps/citadel/rules.mk +++ b/keyboards/bpiphany/pegasushoof/keymaps/citadel/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. TAP_DANCE_ENABLE = yes # see https://docs.qmk.fm/#/feature_tap_dance (+1000) diff --git a/keyboards/bpiphany/pegasushoof/keymaps/default/rules.mk b/keyboards/bpiphany/pegasushoof/keymaps/default/rules.mk index 168fb625b2..7a616ee5f3 100644 --- a/keyboards/bpiphany/pegasushoof/keymaps/default/rules.mk +++ b/keyboards/bpiphany/pegasushoof/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR diff --git a/keyboards/bpiphany/pegasushoof/rules.mk b/keyboards/bpiphany/pegasushoof/rules.mk index c5a35428ca..0cfe115aab 100644 --- a/keyboards/bpiphany/pegasushoof/rules.mk +++ b/keyboards/bpiphany/pegasushoof/rules.mk @@ -60,7 +60,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. CUSTOM_MATRIX = yes diff --git a/keyboards/bpiphany/tiger_lily/keymaps/default/rules.mk b/keyboards/bpiphany/tiger_lily/keymaps/default/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/bpiphany/tiger_lily/keymaps/default/rules.mk +++ b/keyboards/bpiphany/tiger_lily/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/bpiphany/tiger_lily/keymaps/default_ansi/rules.mk b/keyboards/bpiphany/tiger_lily/keymaps/default_ansi/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/bpiphany/tiger_lily/keymaps/default_ansi/rules.mk +++ b/keyboards/bpiphany/tiger_lily/keymaps/default_ansi/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/clueboard/66/keymaps/xyverz/rules.mk b/keyboards/clueboard/66/keymaps/xyverz/rules.mk index 950dadf841..fc02ecb7ef 100644 --- a/keyboards/clueboard/66/keymaps/xyverz/rules.mk +++ b/keyboards/clueboard/66/keymaps/xyverz/rules.mk @@ -42,7 +42,7 @@ # change to "no" to disable the options, or define them in the makefile.mk in # the appropriate keymap folder that will get included automatically # -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/comet46/keymaps/satt/rules.mk b/keyboards/comet46/keymaps/satt/rules.mk index 08af2e70a4..dc4355c78f 100644 --- a/keyboards/comet46/keymaps/satt/rules.mk +++ b/keyboards/comet46/keymaps/satt/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. ONEHAND_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/contra/keymaps/losinggeneration/rules.mk b/keyboards/contra/keymaps/losinggeneration/rules.mk index 1728afd85c..ea2b7165d9 100644 --- a/keyboards/contra/keymaps/losinggeneration/rules.mk +++ b/keyboards/contra/keymaps/losinggeneration/rules.mk @@ -10,7 +10,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration CONSOLE_ENABLE = no # Console for debug(+400) MIDI_ENABLE = no # MIDI controls NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/converter/ibm_terminal/keymaps/default/rules.mk b/keyboards/converter/ibm_terminal/keymaps/default/rules.mk index 19eb5972e3..76d349920f 100644 --- a/keyboards/converter/ibm_terminal/keymaps/default/rules.mk +++ b/keyboards/converter/ibm_terminal/keymaps/default/rules.mk @@ -14,7 +14,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_USE_USART = yes API_SYSEX_ENABLE = no diff --git a/keyboards/converter/ibm_terminal/keymaps/priyadi/rules.mk b/keyboards/converter/ibm_terminal/keymaps/priyadi/rules.mk index 19eb5972e3..76d349920f 100644 --- a/keyboards/converter/ibm_terminal/keymaps/priyadi/rules.mk +++ b/keyboards/converter/ibm_terminal/keymaps/priyadi/rules.mk @@ -14,7 +14,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_USE_USART = yes API_SYSEX_ENABLE = no diff --git a/keyboards/converter/ibm_terminal/rules.mk b/keyboards/converter/ibm_terminal/rules.mk index 9401cf199c..77b3a6f3f7 100644 --- a/keyboards/converter/ibm_terminal/rules.mk +++ b/keyboards/converter/ibm_terminal/rules.mk @@ -61,7 +61,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_USE_USART = yes API_SYSEX_ENABLE = n CUSTOM_MATRIX = yes diff --git a/keyboards/converter/sun_usb/rules.mk b/keyboards/converter/sun_usb/rules.mk index 6e36a19050..3cf503b1d2 100644 --- a/keyboards/converter/sun_usb/rules.mk +++ b/keyboards/converter/sun_usb/rules.mk @@ -24,7 +24,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. CUSTOM_MATRIX = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/crkbd/keymaps/default/rules.mk b/keyboards/crkbd/keymaps/default/rules.mk index 5ee01e89e1..16deaf45d1 100644 --- a/keyboards/crkbd/keymaps/default/rules.mk +++ b/keyboards/crkbd/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/crkbd/keymaps/drashna/rules.mk b/keyboards/crkbd/keymaps/drashna/rules.mk index 8fca704489..8f69cba72f 100644 --- a/keyboards/crkbd/keymaps/drashna/rules.mk +++ b/keyboards/crkbd/keymaps/drashna/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/crkbd/keymaps/like_jis/rules.mk b/keyboards/crkbd/keymaps/like_jis/rules.mk index 5ee01e89e1..16deaf45d1 100644 --- a/keyboards/crkbd/keymaps/like_jis/rules.mk +++ b/keyboards/crkbd/keymaps/like_jis/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/crkbd/rules.mk b/keyboards/crkbd/rules.mk index 6396b115de..426ed0c03f 100644 --- a/keyboards/crkbd/rules.mk +++ b/keyboards/crkbd/rules.mk @@ -65,7 +65,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = no USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/daisy/rules.mk b/keyboards/daisy/rules.mk index f24df2fd6c..8157b168e5 100644 --- a/keyboards/daisy/rules.mk +++ b/keyboards/daisy/rules.mk @@ -62,5 +62,5 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/deltasplit75/keymaps/itsaferbie/rules.mk b/keyboards/deltasplit75/keymaps/itsaferbie/rules.mk index bab3b4c564..75db99ebec 100644 --- a/keyboards/deltasplit75/keymaps/itsaferbie/rules.mk +++ b/keyboards/deltasplit75/keymaps/itsaferbie/rules.mk @@ -1,4 +1,4 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. AUDIO_ENABLE = no # Audio disabled while using RGB underlight. EXTRAKEY_ENABLE = yes diff --git a/keyboards/deltasplit75/rules.mk b/keyboards/deltasplit75/rules.mk index 2a13dbdfc6..5c7571b9db 100644 --- a/keyboards/deltasplit75/rules.mk +++ b/keyboards/deltasplit75/rules.mk @@ -41,7 +41,7 @@ F_USB = $(F_CPU) # Bootloader # This definition is optional, and if your keyboard supports multiple bootloaders of -# different sizes, comment this out, and the correct address will be loaded +# different sizes, comment this out, and the correct address will be loaded # automatically (+60). See bootloader.mk for all options. BOOTLOADER = caterina @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE @@ -71,4 +71,4 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend CUSTOM_MATRIX = yes -DEFAULT_FOLDER = deltasplit75/v2 \ No newline at end of file +DEFAULT_FOLDER = deltasplit75/v2 diff --git a/keyboards/diverge3/rules.mk b/keyboards/diverge3/rules.mk index aa74530543..38f3ee4e6a 100644 --- a/keyboards/diverge3/rules.mk +++ b/keyboards/diverge3/rules.mk @@ -66,7 +66,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/divergetm2/rules.mk b/keyboards/divergetm2/rules.mk index 2be853a2a6..084a3bf63e 100644 --- a/keyboards/divergetm2/rules.mk +++ b/keyboards/divergetm2/rules.mk @@ -64,7 +64,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/do60/rules.mk b/keyboards/do60/rules.mk index e7314caf9e..8003914fa7 100644 --- a/keyboards/do60/rules.mk +++ b/keyboards/do60/rules.mk @@ -59,7 +59,7 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450) MIDI_ENABLE = no # MIDI controls MOUSEKEY_ENABLE = yes # Mouse keys(+4700) NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend UNICODE_ENABLE = no # Unicode diff --git a/keyboards/eco/keymaps/default/rules.mk b/keyboards/eco/keymaps/default/rules.mk index 7dab979426..0996602325 100644 --- a/keyboards/eco/keymaps/default/rules.mk +++ b/keyboards/eco/keymaps/default/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/eco/keymaps/hexwire/rules.mk b/keyboards/eco/keymaps/hexwire/rules.mk index 7dab979426..0996602325 100644 --- a/keyboards/eco/keymaps/hexwire/rules.mk +++ b/keyboards/eco/keymaps/hexwire/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/eco/keymaps/that_canadian/rules.mk b/keyboards/eco/keymaps/that_canadian/rules.mk index 7dab979426..0996602325 100644 --- a/keyboards/eco/keymaps/that_canadian/rules.mk +++ b/keyboards/eco/keymaps/that_canadian/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/eco/keymaps/xyverz/rules.mk b/keyboards/eco/keymaps/xyverz/rules.mk index 9a3059e715..9e7b9c2024 100644 --- a/keyboards/eco/keymaps/xyverz/rules.mk +++ b/keyboards/eco/keymaps/xyverz/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/ergo42/rules.mk b/keyboards/ergo42/rules.mk index 252411cab4..cdc9da9084 100644 --- a/keyboards/ergo42/rules.mk +++ b/keyboards/ergo42/rules.mk @@ -67,7 +67,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/ergodash/rules.mk b/keyboards/ergodash/rules.mk index bf0df4040f..e25346dacd 100644 --- a/keyboards/ergodash/rules.mk +++ b/keyboards/ergodash/rules.mk @@ -64,7 +64,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/ergodox_infinity/keymaps/narze/rules.mk b/keyboards/ergodox_infinity/keymaps/narze/rules.mk index 7d2e00d0e9..bd89bb9d98 100644 --- a/keyboards/ergodox_infinity/keymaps/narze/rules.mk +++ b/keyboards/ergodox_infinity/keymaps/narze/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/ergoinu/keymaps/default/rules.mk b/keyboards/ergoinu/keymaps/default/rules.mk index 7d7a475d17..92dde90ff1 100644 --- a/keyboards/ergoinu/keymaps/default/rules.mk +++ b/keyboards/ergoinu/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/ergoinu/keymaps/default_jis/rules.mk b/keyboards/ergoinu/keymaps/default_jis/rules.mk index 7d7a475d17..92dde90ff1 100644 --- a/keyboards/ergoinu/keymaps/default_jis/rules.mk +++ b/keyboards/ergoinu/keymaps/default_jis/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/ergoinu/rules.mk b/keyboards/ergoinu/rules.mk index a00cc16de2..de4bcad526 100644 --- a/keyboards/ergoinu/rules.mk +++ b/keyboards/ergoinu/rules.mk @@ -60,7 +60,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = no USE_I2C = no # i2c is not supported # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/ergotravel/rules.mk b/keyboards/ergotravel/rules.mk index d2da788067..55155b5a3e 100644 --- a/keyboards/ergotravel/rules.mk +++ b/keyboards/ergotravel/rules.mk @@ -59,7 +59,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/fortitude60/rules.mk b/keyboards/fortitude60/rules.mk index 7b2557b701..3d1745c6f7 100644 --- a/keyboards/fortitude60/rules.mk +++ b/keyboards/fortitude60/rules.mk @@ -62,7 +62,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. USE_SERIAL = yes # Serial support only on fortitude60 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend diff --git a/keyboards/fourier/rules.mk b/keyboards/fourier/rules.mk index 151339bc9d..9ec05e8740 100644 --- a/keyboards/fourier/rules.mk +++ b/keyboards/fourier/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/gherkin/keymaps/mjt/rules.mk b/keyboards/gherkin/keymaps/mjt/rules.mk index b397f86d04..afb93b674c 100644 --- a/keyboards/gherkin/keymaps/mjt/rules.mk +++ b/keyboards/gherkin/keymaps/mjt/rules.mk @@ -20,7 +20,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE=yes diff --git a/keyboards/gonnerd/keymaps/default/rules.mk b/keyboards/gonnerd/keymaps/default/rules.mk index 772d7aee3b..e34aba6927 100644 --- a/keyboards/gonnerd/keymaps/default/rules.mk +++ b/keyboards/gonnerd/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/gonnerd/keymaps/gam3cat/rules.mk b/keyboards/gonnerd/keymaps/gam3cat/rules.mk index a32d22e41e..a226838424 100644 --- a/keyboards/gonnerd/keymaps/gam3cat/rules.mk +++ b/keyboards/gonnerd/keymaps/gam3cat/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/gonnerd/keymaps/mauin/rules.mk b/keyboards/gonnerd/keymaps/mauin/rules.mk index 772d7aee3b..e34aba6927 100644 --- a/keyboards/gonnerd/keymaps/mauin/rules.mk +++ b/keyboards/gonnerd/keymaps/mauin/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/gonnerd/keymaps/tkl/rules.mk b/keyboards/gonnerd/keymaps/tkl/rules.mk index 5854366f9d..b96663efe6 100644 --- a/keyboards/gonnerd/keymaps/tkl/rules.mk +++ b/keyboards/gonnerd/keymaps/tkl/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/hadron/keymaps/default/rules.mk b/keyboards/hadron/keymaps/default/rules.mk index 545ffa75c1..4c6d04f1e5 100644 --- a/keyboards/hadron/keymaps/default/rules.mk +++ b/keyboards/hadron/keymaps/default/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/hadron/keymaps/side_numpad/rules.mk b/keyboards/hadron/keymaps/side_numpad/rules.mk index d9fabc1acc..687c285bdb 100644 --- a/keyboards/hadron/keymaps/side_numpad/rules.mk +++ b/keyboards/hadron/keymaps/side_numpad/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = yes # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/handwired/MS_sculpt_mobile/keymaps/default/rules.mk b/keyboards/handwired/MS_sculpt_mobile/keymaps/default/rules.mk index b3c01678f3..3955a3ff42 100644 --- a/keyboards/handwired/MS_sculpt_mobile/keymaps/default/rules.mk +++ b/keyboards/handwired/MS_sculpt_mobile/keymaps/default/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/MS_sculpt_mobile/keymaps/milestogo/rules.mk b/keyboards/handwired/MS_sculpt_mobile/keymaps/milestogo/rules.mk index 4f62657b3f..ddfea82556 100644 --- a/keyboards/handwired/MS_sculpt_mobile/keymaps/milestogo/rules.mk +++ b/keyboards/handwired/MS_sculpt_mobile/keymaps/milestogo/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/arrow_pad/keymaps/pad_21/rules.mk b/keyboards/handwired/arrow_pad/keymaps/pad_21/rules.mk index af51976a89..d2403c9ecb 100644 --- a/keyboards/handwired/arrow_pad/keymaps/pad_21/rules.mk +++ b/keyboards/handwired/arrow_pad/keymaps/pad_21/rules.mk @@ -9,7 +9,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/arrow_pad/keymaps/pad_24/rules.mk b/keyboards/handwired/arrow_pad/keymaps/pad_24/rules.mk index e31bfe1af2..b305f8482a 100644 --- a/keyboards/handwired/arrow_pad/keymaps/pad_24/rules.mk +++ b/keyboards/handwired/arrow_pad/keymaps/pad_24/rules.mk @@ -9,7 +9,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/atreus50/rules.mk b/keyboards/handwired/atreus50/rules.mk index 2e2d48f6ab..21c4704e0d 100644 --- a/keyboards/handwired/atreus50/rules.mk +++ b/keyboards/handwired/atreus50/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/dactyl_manuform/4x5/rules.mk b/keyboards/handwired/dactyl_manuform/4x5/rules.mk index 14b6e1e4e3..7508070515 100644 --- a/keyboards/handwired/dactyl_manuform/4x5/rules.mk +++ b/keyboards/handwired/dactyl_manuform/4x5/rules.mk @@ -14,8 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/handwired/dactyl_manuform/4x6/rules.mk b/keyboards/handwired/dactyl_manuform/4x6/rules.mk index 14b6e1e4e3..7508070515 100644 --- a/keyboards/handwired/dactyl_manuform/4x6/rules.mk +++ b/keyboards/handwired/dactyl_manuform/4x6/rules.mk @@ -14,8 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/handwired/dactyl_manuform/5x6/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/rules.mk index 14b6e1e4e3..7508070515 100644 --- a/keyboards/handwired/dactyl_manuform/5x6/rules.mk +++ b/keyboards/handwired/dactyl_manuform/5x6/rules.mk @@ -14,8 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/handwired/dactyl_manuform/5x7/rules.mk b/keyboards/handwired/dactyl_manuform/5x7/rules.mk index fc9cbcccd4..7508070515 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/rules.mk +++ b/keyboards/handwired/dactyl_manuform/5x7/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/dactyl_manuform/6x6/rules.mk b/keyboards/handwired/dactyl_manuform/6x6/rules.mk index 14b6e1e4e3..7508070515 100644 --- a/keyboards/handwired/dactyl_manuform/6x6/rules.mk +++ b/keyboards/handwired/dactyl_manuform/6x6/rules.mk @@ -14,8 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/handwired/dactyl_manuform/rules.mk b/keyboards/handwired/dactyl_manuform/rules.mk index adb058c8af..a93de36858 100644 --- a/keyboards/handwired/dactyl_manuform/rules.mk +++ b/keyboards/handwired/dactyl_manuform/rules.mk @@ -58,7 +58,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/kbod/keymaps/default/rules.mk b/keyboards/handwired/kbod/keymaps/default/rules.mk index eb6bf940ae..5b9ff0bfdc 100644 --- a/keyboards/handwired/kbod/keymaps/default/rules.mk +++ b/keyboards/handwired/kbod/keymaps/default/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/minorca/keymaps/default/rules.mk b/keyboards/handwired/minorca/keymaps/default/rules.mk index 0ea7a69353..584798d1a1 100644 --- a/keyboards/handwired/minorca/keymaps/default/rules.mk +++ b/keyboards/handwired/minorca/keymaps/default/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/minorca/keymaps/rgb/rules.mk b/keyboards/handwired/minorca/keymaps/rgb/rules.mk index da44256f99..6e430d59e2 100644 --- a/keyboards/handwired/minorca/keymaps/rgb/rules.mk +++ b/keyboards/handwired/minorca/keymaps/rgb/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/minorca/rules.mk b/keyboards/handwired/minorca/rules.mk index ce502b8204..3e408e2b93 100644 --- a/keyboards/handwired/minorca/rules.mk +++ b/keyboards/handwired/minorca/rules.mk @@ -61,7 +61,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/handwired/not_so_minidox/rules.mk b/keyboards/handwired/not_so_minidox/rules.mk index fe4cc014e7..833dd4b79e 100644 --- a/keyboards/handwired/not_so_minidox/rules.mk +++ b/keyboards/handwired/not_so_minidox/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE ?= no # MIDI controls AUDIO_ENABLE ?= no # Audio output on port C6 UNICODE_ENABLE ?= no # Unicode BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE ?= no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE ?= no # Enable WS2812 RGB underlight. USE_I2C ?= no # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/pilcrow/keymaps/default/rules.mk b/keyboards/handwired/pilcrow/keymaps/default/rules.mk index b3c01678f3..3955a3ff42 100644 --- a/keyboards/handwired/pilcrow/keymaps/default/rules.mk +++ b/keyboards/handwired/pilcrow/keymaps/default/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/handwired/promethium/keymaps/default/rules.mk b/keyboards/handwired/promethium/keymaps/default/rules.mk index a0d4261fa1..5761be5170 100644 --- a/keyboards/handwired/promethium/keymaps/default/rules.mk +++ b/keyboards/handwired/promethium/keymaps/default/rules.mk @@ -16,7 +16,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_MOUSE_ENABLE = yes PS2_USE_INT = yes FAUXCLICKY_ENABLE = yes diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rules.mk b/keyboards/handwired/promethium/keymaps/priyadi/rules.mk index a0d4261fa1..5761be5170 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/rules.mk +++ b/keyboards/handwired/promethium/keymaps/priyadi/rules.mk @@ -16,7 +16,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_MOUSE_ENABLE = yes PS2_USE_INT = yes FAUXCLICKY_ENABLE = yes diff --git a/keyboards/handwired/promethium/rules.mk b/keyboards/handwired/promethium/rules.mk index 69903dcebe..21328b7f8e 100644 --- a/keyboards/handwired/promethium/rules.mk +++ b/keyboards/handwired/promethium/rules.mk @@ -62,7 +62,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PS2_MOUSE_ENABLE = yes PS2_USE_INT = yes API_SYSEX_ENABLE = no diff --git a/keyboards/handwired/qc60/rules.mk b/keyboards/handwired/qc60/rules.mk index 1be83d5f8d..e61b18b00c 100644 --- a/keyboards/handwired/qc60/rules.mk +++ b/keyboards/handwired/qc60/rules.mk @@ -58,7 +58,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SPLIT_KEYBOARD = yes diff --git a/keyboards/handwired/terminus_mini/keymaps/default/rules.mk b/keyboards/handwired/terminus_mini/keymaps/default/rules.mk index 1485c08320..42ab51f150 100644 --- a/keyboards/handwired/terminus_mini/keymaps/default/rules.mk +++ b/keyboards/handwired/terminus_mini/keymaps/default/rules.mk @@ -29,6 +29,6 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable Tap Dance diff --git a/keyboards/handwired/terminus_mini/rules.mk b/keyboards/handwired/terminus_mini/rules.mk index d7acbf7d52..9ecba25d80 100644 --- a/keyboards/handwired/terminus_mini/rules.mk +++ b/keyboards/handwired/terminus_mini/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable tap dance diff --git a/keyboards/handwired/woodpad/keymaps/default/rules.mk b/keyboards/handwired/woodpad/keymaps/default/rules.mk index b8879076bd..f060db79c0 100644 --- a/keyboards/handwired/woodpad/keymaps/default/rules.mk +++ b/keyboards/handwired/woodpad/keymaps/default/rules.mk @@ -29,7 +29,7 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/handwired/xealous/rules.mk b/keyboards/handwired/xealous/rules.mk index 7178959606..eebd11d86e 100644 --- a/keyboards/handwired/xealous/rules.mk +++ b/keyboards/handwired/xealous/rules.mk @@ -59,7 +59,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SPLIT_KEYBOARD = yes # Use shared split_common code SUBPROJECT_rev1 = yes diff --git a/keyboards/helix/pico/keymaps/biacco/rules.mk b/keyboards/helix/pico/keymaps/biacco/rules.mk index 4f264fa952..d6b36580e1 100644 --- a/keyboards/helix/pico/keymaps/biacco/rules.mk +++ b/keyboards/helix/pico/keymaps/biacco/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port B5 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/pico/keymaps/default/rules.mk b/keyboards/helix/pico/keymaps/default/rules.mk index b1e219537f..c5ee8acb2a 100644 --- a/keyboards/helix/pico/keymaps/default/rules.mk +++ b/keyboards/helix/pico/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port B5 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev1/keymaps/OLED_sample/rules.mk b/keyboards/helix/rev1/keymaps/OLED_sample/rules.mk index 3f8fd5dc67..c56d6f37e0 100644 --- a/keyboards/helix/rev1/keymaps/OLED_sample/rules.mk +++ b/keyboards/helix/rev1/keymaps/OLED_sample/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/helix/rev2/keymaps/default/rules.mk b/keyboards/helix/rev2/keymaps/default/rules.mk index 14c353d507..3f84b895aa 100644 --- a/keyboards/helix/rev2/keymaps/default/rules.mk +++ b/keyboards/helix/rev2/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk index 9bd46fabcf..4257d004da 100644 --- a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk +++ b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk index f771c94c9c..bd7130cfc6 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk @@ -18,7 +18,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk index 14c353d507..3f84b895aa 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/froggy/rules.mk b/keyboards/helix/rev2/keymaps/froggy/rules.mk index e52e4a3736..f460170711 100644 --- a/keyboards/helix/rev2/keymaps/froggy/rules.mk +++ b/keyboards/helix/rev2/keymaps/froggy/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/led_test/rules.mk b/keyboards/helix/rev2/keymaps/led_test/rules.mk index f599cd4f38..a9cd251bc5 100644 --- a/keyboards/helix/rev2/keymaps/led_test/rules.mk +++ b/keyboards/helix/rev2/keymaps/led_test/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk b/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk index 8331a2e1d8..3f390b48f8 100644 --- a/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk +++ b/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing define HELIX_CUSTOMISE_MSG diff --git a/keyboards/helix/rules.mk b/keyboards/helix/rules.mk index 7c1d56527a..be234e60ec 100644 --- a/keyboards/helix/rules.mk +++ b/keyboards/helix/rules.mk @@ -62,7 +62,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = no USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/hhkb/keymaps/cinaeco/rules.mk b/keyboards/hhkb/keymaps/cinaeco/rules.mk index 05b724051e..efed95492f 100644 --- a/keyboards/hhkb/keymaps/cinaeco/rules.mk +++ b/keyboards/hhkb/keymaps/cinaeco/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/iris/keymaps/edvorakjp/rules.mk b/keyboards/iris/keymaps/edvorakjp/rules.mk index 1c88fbc7bc..58d244c389 100644 --- a/keyboards/iris/keymaps/edvorakjp/rules.mk +++ b/keyboards/iris/keymaps/edvorakjp/rules.mk @@ -13,4 +13,4 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. diff --git a/keyboards/iris/rules.mk b/keyboards/iris/rules.mk index 88dd66c18e..e93d7dae80 100644 --- a/keyboards/iris/rules.mk +++ b/keyboards/iris/rules.mk @@ -61,7 +61,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/jd45/keymaps/mjt/rules.mk b/keyboards/jd45/keymaps/mjt/rules.mk index 1f4b391d55..a22e71b0d9 100644 --- a/keyboards/jd45/keymaps/mjt/rules.mk +++ b/keyboards/jd45/keymaps/mjt/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/jd45/keymaps/mjt6u/rules.mk b/keyboards/jd45/keymaps/mjt6u/rules.mk index f9cec3b84a..1df8b9754b 100644 --- a/keyboards/jd45/keymaps/mjt6u/rules.mk +++ b/keyboards/jd45/keymaps/mjt6u/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend DEBUG_ENABLE = yes diff --git a/keyboards/kinesis/keymaps/carpalx/rules.mk b/keyboards/kinesis/keymaps/carpalx/rules.mk index 1854d35df2..c7753fae05 100644 --- a/keyboards/kinesis/keymaps/carpalx/rules.mk +++ b/keyboards/kinesis/keymaps/carpalx/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/kinesis/keymaps/default/rules.mk b/keyboards/kinesis/keymaps/default/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/kinesis/keymaps/default/rules.mk +++ b/keyboards/kinesis/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/kinesis/keymaps/default_pretty/rules.mk b/keyboards/kinesis/keymaps/default_pretty/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/kinesis/keymaps/default_pretty/rules.mk +++ b/keyboards/kinesis/keymaps/default_pretty/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/kinesis/keymaps/dvorak/rules.mk b/keyboards/kinesis/keymaps/dvorak/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/kinesis/keymaps/dvorak/rules.mk +++ b/keyboards/kinesis/keymaps/dvorak/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/kinesis/keymaps/insertsnideremarks/rules.mk b/keyboards/kinesis/keymaps/insertsnideremarks/rules.mk index 8e4a8ffada..24b16ba9b7 100644 --- a/keyboards/kinesis/keymaps/insertsnideremarks/rules.mk +++ b/keyboards/kinesis/keymaps/insertsnideremarks/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Enable Tap Dancing function diff --git a/keyboards/kinesis/keymaps/milestogo/rules.mk b/keyboards/kinesis/keymaps/milestogo/rules.mk index 9d3df5964f..93f927c7d0 100644 --- a/keyboards/kinesis/keymaps/milestogo/rules.mk +++ b/keyboards/kinesis/keymaps/milestogo/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/kinesis/keymaps/xyverz/rules.mk b/keyboards/kinesis/keymaps/xyverz/rules.mk index c21f8aea67..94dc4cdfea 100644 --- a/keyboards/kinesis/keymaps/xyverz/rules.mk +++ b/keyboards/kinesis/keymaps/xyverz/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/launchpad/keymaps/default/rules.mk b/keyboards/launchpad/keymaps/default/rules.mk index 260b9d8fad..9bf35a59d0 100644 --- a/keyboards/launchpad/keymaps/default/rules.mk +++ b/keyboards/launchpad/keymaps/default/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/lets_split/keymaps/OLED_sample/rules.mk b/keyboards/lets_split/keymaps/OLED_sample/rules.mk index 874d09eab5..a14e84d4e5 100644 --- a/keyboards/lets_split/keymaps/OLED_sample/rules.mk +++ b/keyboards/lets_split/keymaps/OLED_sample/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/lets_split/keymaps/heartrobotninja/rules.mk b/keyboards/lets_split/keymaps/heartrobotninja/rules.mk index 2261a848aa..36f5e5b6d5 100644 --- a/keyboards/lets_split/keymaps/heartrobotninja/rules.mk +++ b/keyboards/lets_split/keymaps/heartrobotninja/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE @@ -23,4 +23,3 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR include ../../../../Makefile endif - diff --git a/keyboards/lets_split/keymaps/mjt/rules.mk b/keyboards/lets_split/keymaps/mjt/rules.mk index 874d09eab5..a14e84d4e5 100644 --- a/keyboards/lets_split/keymaps/mjt/rules.mk +++ b/keyboards/lets_split/keymaps/mjt/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/lets_split/keymaps/piemod/rules.mk b/keyboards/lets_split/keymaps/piemod/rules.mk index 027ea977e7..e2bb583cd9 100644 --- a/keyboards/lets_split/keymaps/piemod/rules.mk +++ b/keyboards/lets_split/keymaps/piemod/rules.mk @@ -9,5 +9,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = no diff --git a/keyboards/lets_split/keymaps/xk/rules.mk b/keyboards/lets_split/keymaps/xk/rules.mk index 84bf8e1f59..195f015778 100644 --- a/keyboards/lets_split/keymaps/xk/rules.mk +++ b/keyboards/lets_split/keymaps/xk/rules.mk @@ -11,7 +11,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) ifndef QUANTUM_DIR diff --git a/keyboards/lets_split/rules.mk b/keyboards/lets_split/rules.mk index 951723edc5..4cd972786f 100644 --- a/keyboards/lets_split/rules.mk +++ b/keyboards/lets_split/rules.mk @@ -64,7 +64,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/levinson/keymaps/losinggeneration/rules.mk b/keyboards/levinson/keymaps/losinggeneration/rules.mk index f3e47b4c2e..c8eef2cb3f 100644 --- a/keyboards/levinson/keymaps/losinggeneration/rules.mk +++ b/keyboards/levinson/keymaps/losinggeneration/rules.mk @@ -10,7 +10,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration CONSOLE_ENABLE = no # Console for debug(+400) MIDI_ENABLE = no # MIDI controls NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/levinson/rules.mk b/keyboards/levinson/rules.mk index 4805ed99ee..8f1fa130fa 100644 --- a/keyboards/levinson/rules.mk +++ b/keyboards/levinson/rules.mk @@ -22,7 +22,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/lfkeyboards/lfk78/keymaps/default/rules.mk b/keyboards/lfkeyboards/lfk78/keymaps/default/rules.mk index 20030f17d0..555ad97230 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/default/rules.mk +++ b/keyboards/lfkeyboards/lfk78/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. RGBLIGHT_CUSTOM_DRIVER = yes # RGB code is implemented in lefkeyboards, not qmk base SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no diff --git a/keyboards/lfkeyboards/lfk78/keymaps/iso/rules.mk b/keyboards/lfkeyboards/lfk78/keymaps/iso/rules.mk index ab20ac0db2..147e95bc87 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/iso/rules.mk +++ b/keyboards/lfkeyboards/lfk78/keymaps/iso/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. RGBLIGHT_CUSTOM_DRIVER = yes # RGB code is implemented in lefkeyboards, not qmk base SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no diff --git a/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/rules.mk b/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/rules.mk index 20030f17d0..555ad97230 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/rules.mk +++ b/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. RGBLIGHT_CUSTOM_DRIVER = yes # RGB code is implemented in lefkeyboards, not qmk base SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no diff --git a/keyboards/lfkeyboards/lfkpad/keymaps/default/rules.mk b/keyboards/lfkeyboards/lfkpad/keymaps/default/rules.mk index d2ddd15783..1653f4e302 100644 --- a/keyboards/lfkeyboards/lfkpad/keymaps/default/rules.mk +++ b/keyboards/lfkeyboards/lfkpad/keymaps/default/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. RGBLIGHT_CUSTOM_DRIVER = yes # RGB code is implemented in lefkeyboards, not qmk base SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no diff --git a/keyboards/lily58/rules.mk b/keyboards/lily58/rules.mk index 72964fca1b..ad8ad585e9 100644 --- a/keyboards/lily58/rules.mk +++ b/keyboards/lily58/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = no USE_I2C = no # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/meira/rules.mk b/keyboards/meira/rules.mk index d3e45fc8d0..6c2472f433 100644 --- a/keyboards/meira/rules.mk +++ b/keyboards/meira/rules.mk @@ -59,7 +59,7 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches BACKLIGHT_CUSTOM_DRIVER = yes BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality, also set ISSI_ENABLE below for Miera diff --git a/keyboards/minidox/keymaps/alairock/rules.mk b/keyboards/minidox/keymaps/alairock/rules.mk index cd7ab91c22..ebada165ae 100644 --- a/keyboards/minidox/keymaps/alairock/rules.mk +++ b/keyboards/minidox/keymaps/alairock/rules.mk @@ -1,2 +1,2 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. EXTRAKEY_ENABLE = yes diff --git a/keyboards/minidox/keymaps/that_canadian/rules.mk b/keyboards/minidox/keymaps/that_canadian/rules.mk index 52ef1ad3e4..7637dfc09a 100644 --- a/keyboards/minidox/keymaps/that_canadian/rules.mk +++ b/keyboards/minidox/keymaps/that_canadian/rules.mk @@ -1,4 +1,4 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/minidox/keymaps/xyverz/rules.mk b/keyboards/minidox/keymaps/xyverz/rules.mk index d34df5b19b..c777cb1b9f 100644 --- a/keyboards/minidox/keymaps/xyverz/rules.mk +++ b/keyboards/minidox/keymaps/xyverz/rules.mk @@ -1 +1 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. diff --git a/keyboards/minidox/rules.mk b/keyboards/minidox/rules.mk index 0c3a03bd73..861976e15b 100644 --- a/keyboards/minidox/rules.mk +++ b/keyboards/minidox/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE ?= no # MIDI controls AUDIO_ENABLE ?= no # Audio output on port C6 UNICODE_ENABLE ?= no # Unicode BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE ?= no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE ?= no # Enable WS2812 RGB underlight. USE_I2C ?= no # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend diff --git a/keyboards/mint60/rules.mk b/keyboards/mint60/rules.mk index b4d4bddd33..b4472153bc 100644 --- a/keyboards/mint60/rules.mk +++ b/keyboards/mint60/rules.mk @@ -75,4 +75,4 @@ HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) CUSTOM_MATRIX = yes USE_I2C = yes -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. diff --git a/keyboards/miuni32/keymaps/adam-lee/rules.mk b/keyboards/miuni32/keymaps/adam-lee/rules.mk index 88a3aea741..3138ab57f7 100644 --- a/keyboards/miuni32/keymaps/adam-lee/rules.mk +++ b/keyboards/miuni32/keymaps/adam-lee/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/miuni32/keymaps/default/rules.mk b/keyboards/miuni32/keymaps/default/rules.mk index 88a3aea741..3138ab57f7 100644 --- a/keyboards/miuni32/keymaps/default/rules.mk +++ b/keyboards/miuni32/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/miuni32/keymaps/ht_156/rules.mk b/keyboards/miuni32/keymaps/ht_156/rules.mk index 88a3aea741..3138ab57f7 100644 --- a/keyboards/miuni32/keymaps/ht_156/rules.mk +++ b/keyboards/miuni32/keymaps/ht_156/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/miuni32/keymaps/ki/rules.mk b/keyboards/miuni32/keymaps/ki/rules.mk index 8a72a6e4e7..7639c2b3f1 100644 --- a/keyboards/miuni32/keymaps/ki/rules.mk +++ b/keyboards/miuni32/keymaps/ki/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/mt40/rules.mk b/keyboards/mt40/rules.mk index 64e7413f5c..db6ec93f5e 100644 --- a/keyboards/mt40/rules.mk +++ b/keyboards/mt40/rules.mk @@ -27,7 +27,7 @@ MIDI_ENABLE ?= no # MIDI controls AUDIO_ENABLE ?= no # Audio output on port C6 UNICODE_ENABLE ?= no # Unicode BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE ?= yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE ?= yes # Enable WS2812 RGB underlight. RGBLIGHT_CUSTOM_DRIVER = yes TAP_DANCE_ENABLE = no diff --git a/keyboards/niu_mini/keymaps/spacebarracecar/rules.mk b/keyboards/niu_mini/keymaps/spacebarracecar/rules.mk index b1d7055da7..124de79deb 100644 --- a/keyboards/niu_mini/keymaps/spacebarracecar/rules.mk +++ b/keyboards/niu_mini/keymaps/spacebarracecar/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/nyquist/keymaps/DivergeJM/rules.mk b/keyboards/nyquist/keymaps/DivergeJM/rules.mk index 654e82a10f..2c26b47ea1 100644 --- a/keyboards/nyquist/keymaps/DivergeJM/rules.mk +++ b/keyboards/nyquist/keymaps/DivergeJM/rules.mk @@ -29,6 +29,6 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable Tap Dance diff --git a/keyboards/nyquist/keymaps/danielhklein/rules.mk b/keyboards/nyquist/keymaps/danielhklein/rules.mk index 0b540a4712..12ad2fec59 100644 --- a/keyboards/nyquist/keymaps/danielhklein/rules.mk +++ b/keyboards/nyquist/keymaps/danielhklein/rules.mk @@ -29,6 +29,6 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable Tap Dance diff --git a/keyboards/nyquist/keymaps/losinggeneration/rules.mk b/keyboards/nyquist/keymaps/losinggeneration/rules.mk index 1728afd85c..ea2b7165d9 100644 --- a/keyboards/nyquist/keymaps/losinggeneration/rules.mk +++ b/keyboards/nyquist/keymaps/losinggeneration/rules.mk @@ -10,7 +10,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration CONSOLE_ENABLE = no # Console for debug(+400) MIDI_ENABLE = no # MIDI controls NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. ifndef QUANTUM_DIR include ../../../../Makefile diff --git a/keyboards/nyquist/rules.mk b/keyboards/nyquist/rules.mk index e8f1840418..74d5625f85 100644 --- a/keyboards/nyquist/rules.mk +++ b/keyboards/nyquist/rules.mk @@ -64,7 +64,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID USE_I2C = yes -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/org60/rules.mk b/keyboards/org60/rules.mk index c79e6e2704..53e9a28fe8 100644 --- a/keyboards/org60/rules.mk +++ b/keyboards/org60/rules.mk @@ -59,7 +59,7 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450) MIDI_ENABLE = no # MIDI controls MOUSEKEY_ENABLE = yes # Mouse keys(+4700) NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend UNICODE_ENABLE = no # Unicode diff --git a/keyboards/orthodox/rules.mk b/keyboards/orthodox/rules.mk index 7132a915bf..715f25c3a0 100644 --- a/keyboards/orthodox/rules.mk +++ b/keyboards/orthodox/rules.mk @@ -61,7 +61,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/ab/rules.mk b/keyboards/planck/keymaps/ab/rules.mk index 44a030ba38..0b025a2313 100644 --- a/keyboards/planck/keymaps/ab/rules.mk +++ b/keyboards/planck/keymaps/ab/rules.mk @@ -53,7 +53,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/alexey/rules.mk b/keyboards/planck/keymaps/alexey/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/alexey/rules.mk +++ b/keyboards/planck/keymaps/alexey/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/angerthosenear/rules.mk b/keyboards/planck/keymaps/angerthosenear/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/angerthosenear/rules.mk +++ b/keyboards/planck/keymaps/angerthosenear/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/austin/rules.mk b/keyboards/planck/keymaps/austin/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/austin/rules.mk +++ b/keyboards/planck/keymaps/austin/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/basic/rules.mk b/keyboards/planck/keymaps/basic/rules.mk index 0c0632da09..6f88a28d50 100644 --- a/keyboards/planck/keymaps/basic/rules.mk +++ b/keyboards/planck/keymaps/basic/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/bone2planck/rules.mk b/keyboards/planck/keymaps/bone2planck/rules.mk index 39635192e5..699726948d 100644 --- a/keyboards/planck/keymaps/bone2planck/rules.mk +++ b/keyboards/planck/keymaps/bone2planck/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/callum/rules.mk b/keyboards/planck/keymaps/callum/rules.mk index 8ee9a45ab7..67fe8d284d 100644 --- a/keyboards/planck/keymaps/callum/rules.mk +++ b/keyboards/planck/keymaps/callum/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/cbbrowne/rules.mk b/keyboards/planck/keymaps/cbbrowne/rules.mk index d5026e2d9b..c7cef55a9a 100644 --- a/keyboards/planck/keymaps/cbbrowne/rules.mk +++ b/keyboards/planck/keymaps/cbbrowne/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. API_SYSEX_ENABLE = no # Enable SYSEX API (+5390) # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/chance/rules.mk b/keyboards/planck/keymaps/chance/rules.mk index 00d09e974a..5c9798a572 100644 --- a/keyboards/planck/keymaps/chance/rules.mk +++ b/keyboards/planck/keymaps/chance/rules.mk @@ -1,4 +1,4 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. AUDIO_ENABLE = no ifndef QUANTUM_DIR diff --git a/keyboards/planck/keymaps/charlie/rules.mk b/keyboards/planck/keymaps/charlie/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/charlie/rules.mk +++ b/keyboards/planck/keymaps/charlie/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/circuit/rules.mk b/keyboards/planck/keymaps/circuit/rules.mk index 1ed0ff9568..e9a02e31e2 100644 --- a/keyboards/planck/keymaps/circuit/rules.mk +++ b/keyboards/planck/keymaps/circuit/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. TAP_DANCE_ENABLE = yes # Enables the double-tap functionality of keys # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/daniel/rules.mk b/keyboards/planck/keymaps/daniel/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/daniel/rules.mk +++ b/keyboards/planck/keymaps/daniel/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/danielhklein/rules.mk b/keyboards/planck/keymaps/danielhklein/rules.mk index a73d851833..72386fae7d 100644 --- a/keyboards/planck/keymaps/danielhklein/rules.mk +++ b/keyboards/planck/keymaps/danielhklein/rules.mk @@ -9,6 +9,6 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable Tap Dance \ No newline at end of file diff --git a/keyboards/planck/keymaps/david/rules.mk b/keyboards/planck/keymaps/david/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/david/rules.mk +++ b/keyboards/planck/keymaps/david/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/dc/rules.mk b/keyboards/planck/keymaps/dc/rules.mk index 6106b40e14..ea4341b4fd 100644 --- a/keyboards/planck/keymaps/dc/rules.mk +++ b/keyboards/planck/keymaps/dc/rules.mk @@ -17,7 +17,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. TAP_DANCE_ENABLE = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/dlaroe/rules.mk b/keyboards/planck/keymaps/dlaroe/rules.mk index 22a08c668b..0064f622b7 100644 --- a/keyboards/planck/keymaps/dlaroe/rules.mk +++ b/keyboards/planck/keymaps/dlaroe/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/dr_notsokind/rules.mk b/keyboards/planck/keymaps/dr_notsokind/rules.mk index 7f691ebe43..eea90f8e6a 100644 --- a/keyboards/planck/keymaps/dr_notsokind/rules.mk +++ b/keyboards/planck/keymaps/dr_notsokind/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. TAP_DANCE_ENABLE = yes # Enables the double-tap functionality of keys # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/dzobert/rules.mk b/keyboards/planck/keymaps/dzobert/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/dzobert/rules.mk +++ b/keyboards/planck/keymaps/dzobert/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/espynn/rules.mk b/keyboards/planck/keymaps/espynn/rules.mk index 44a030ba38..0b025a2313 100644 --- a/keyboards/planck/keymaps/espynn/rules.mk +++ b/keyboards/planck/keymaps/espynn/rules.mk @@ -53,7 +53,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/experimental/rules.mk b/keyboards/planck/keymaps/experimental/rules.mk index 168d3cb9f0..721e887b98 100644 --- a/keyboards/planck/keymaps/experimental/rules.mk +++ b/keyboards/planck/keymaps/experimental/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = yes # Enable one-hand typing STENO_ENABLE = yes # Enable TX Bolt protocol for Stenography, requires VIRTSER and may not work with mouse keys LEADER_ENABLE = yes diff --git a/keyboards/planck/keymaps/gabriel/rules.mk b/keyboards/planck/keymaps/gabriel/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/gabriel/rules.mk +++ b/keyboards/planck/keymaps/gabriel/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/gunp/rules.mk b/keyboards/planck/keymaps/gunp/rules.mk index 1ad30423be..7d03482abc 100644 --- a/keyboards/planck/keymaps/gunp/rules.mk +++ b/keyboards/planck/keymaps/gunp/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/impossible/rules.mk b/keyboards/planck/keymaps/impossible/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/impossible/rules.mk +++ b/keyboards/planck/keymaps/impossible/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/jacob/rules.mk b/keyboards/planck/keymaps/jacob/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/jacob/rules.mk +++ b/keyboards/planck/keymaps/jacob/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/jeebak/rules.mk b/keyboards/planck/keymaps/jeebak/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/jeebak/rules.mk +++ b/keyboards/planck/keymaps/jeebak/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/jhenahan/rules.mk b/keyboards/planck/keymaps/jhenahan/rules.mk index bb12dd865c..f8d1f0d8f3 100644 --- a/keyboards/planck/keymaps/jhenahan/rules.mk +++ b/keyboards/planck/keymaps/jhenahan/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/joe/rules.mk b/keyboards/planck/keymaps/joe/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/joe/rules.mk +++ b/keyboards/planck/keymaps/joe/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/johannes/rules.mk b/keyboards/planck/keymaps/johannes/rules.mk index 0c0632da09..6f88a28d50 100644 --- a/keyboards/planck/keymaps/johannes/rules.mk +++ b/keyboards/planck/keymaps/johannes/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/kyle/rules.mk b/keyboards/planck/keymaps/kyle/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/kyle/rules.mk +++ b/keyboards/planck/keymaps/kyle/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/lae3/rules.mk b/keyboards/planck/keymaps/lae3/rules.mk index 595803e322..89b147f819 100644 --- a/keyboards/planck/keymaps/lae3/rules.mk +++ b/keyboards/planck/keymaps/lae3/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/leo/rules.mk b/keyboards/planck/keymaps/leo/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/leo/rules.mk +++ b/keyboards/planck/keymaps/leo/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/lucas/rules.mk b/keyboards/planck/keymaps/lucas/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/lucas/rules.mk +++ b/keyboards/planck/keymaps/lucas/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/lukas/rules.mk b/keyboards/planck/keymaps/lukas/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/lukas/rules.mk +++ b/keyboards/planck/keymaps/lukas/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/luke/rules.mk b/keyboards/planck/keymaps/luke/rules.mk index 847686873d..76ed281c11 100644 --- a/keyboards/planck/keymaps/luke/rules.mk +++ b/keyboards/planck/keymaps/luke/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/max/rules.mk b/keyboards/planck/keymaps/max/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/max/rules.mk +++ b/keyboards/planck/keymaps/max/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/mollat/rules.mk b/keyboards/planck/keymaps/mollat/rules.mk index be3f692802..249f422a55 100644 --- a/keyboards/planck/keymaps/mollat/rules.mk +++ b/keyboards/planck/keymaps/mollat/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/myoung34/rules.mk b/keyboards/planck/keymaps/myoung34/rules.mk index c47418104a..b1aaafd3a4 100644 --- a/keyboards/planck/keymaps/myoung34/rules.mk +++ b/keyboards/planck/keymaps/myoung34/rules.mk @@ -7,5 +7,5 @@ CONSOLE_ENABLE = no # Console for debug(+400) MIDI_ENABLE = no # MIDI controls MOUSEKEY_ENABLE = no # Mouse keys(+4700) NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. BACKLIGHT_ENABLE = yes diff --git a/keyboards/planck/keymaps/narze/rules.mk b/keyboards/planck/keymaps/narze/rules.mk index 05c2ce455f..286a2ffdc1 100644 --- a/keyboards/planck/keymaps/narze/rules.mk +++ b/keyboards/planck/keymaps/narze/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/neo2planck/rules.mk b/keyboards/planck/keymaps/neo2planck/rules.mk index 2122dd349b..cedf3095e6 100644 --- a/keyboards/planck/keymaps/neo2planck/rules.mk +++ b/keyboards/planck/keymaps/neo2planck/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/nico/rules.mk b/keyboards/planck/keymaps/nico/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/nico/rules.mk +++ b/keyboards/planck/keymaps/nico/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/not-quite-neo/rules.mk b/keyboards/planck/keymaps/not-quite-neo/rules.mk index 316a3ea7bb..90e6353f65 100644 --- a/keyboards/planck/keymaps/not-quite-neo/rules.mk +++ b/keyboards/planck/keymaps/not-quite-neo/rules.mk @@ -20,7 +20,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode (can't be used with unicodemap) UNICODEMAP_ENABLE = no # Enable extended unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/pickle_jr/rules.mk b/keyboards/planck/keymaps/pickle_jr/rules.mk index d452c706d0..43e0b843f0 100644 --- a/keyboards/planck/keymaps/pickle_jr/rules.mk +++ b/keyboards/planck/keymaps/pickle_jr/rules.mk @@ -12,7 +12,7 @@ BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/premek/rules.mk b/keyboards/planck/keymaps/premek/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/premek/rules.mk +++ b/keyboards/planck/keymaps/premek/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/priyadi/rules.mk b/keyboards/planck/keymaps/priyadi/rules.mk index 27c2638e2f..282c047eec 100644 --- a/keyboards/planck/keymaps/priyadi/rules.mk +++ b/keyboards/planck/keymaps/priyadi/rules.mk @@ -14,7 +14,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes # Unicode map BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. API_SYSEX_ENABLE = no FAUXCLICKY_ENABLE = yes diff --git a/keyboards/planck/keymaps/pvc/rules.mk b/keyboards/planck/keymaps/pvc/rules.mk index 8a73eab584..3fb98eca86 100644 --- a/keyboards/planck/keymaps/pvc/rules.mk +++ b/keyboards/planck/keymaps/pvc/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/rai-suta/rules.mk b/keyboards/planck/keymaps/rai-suta/rules.mk index 38efe374cf..ce13befd90 100644 --- a/keyboards/planck/keymaps/rai-suta/rules.mk +++ b/keyboards/planck/keymaps/rai-suta/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/sgoodwin/rules.mk b/keyboards/planck/keymaps/sgoodwin/rules.mk index 279e16eb72..cdcb4a887d 100644 --- a/keyboards/planck/keymaps/sgoodwin/rules.mk +++ b/keyboards/planck/keymaps/sgoodwin/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. API_SYSEX_ENABLE = no # Disable extra stuff for ergodoxen # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/spacebarracecar/rules.mk b/keyboards/planck/keymaps/spacebarracecar/rules.mk index fbdd1217c0..bc817a1403 100644 --- a/keyboards/planck/keymaps/spacebarracecar/rules.mk +++ b/keyboards/planck/keymaps/spacebarracecar/rules.mk @@ -13,11 +13,10 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # Userspace defines GERMAN_ENABLE = yes # Enable Custom US Ansi Keycodes for PC with German set as input language - diff --git a/keyboards/planck/keymaps/tak3over/rules.mk b/keyboards/planck/keymaps/tak3over/rules.mk index 247a1fd2ae..1e877943d9 100644 --- a/keyboards/planck/keymaps/tak3over/rules.mk +++ b/keyboards/planck/keymaps/tak3over/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/planck/keymaps/thermal_printer/rules.mk b/keyboards/planck/keymaps/thermal_printer/rules.mk index 7c50d87a0f..3c0e340d1f 100644 --- a/keyboards/planck/keymaps/thermal_printer/rules.mk +++ b/keyboards/planck/keymaps/thermal_printer/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. PRINTING_ENABLE = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/planck/keymaps/tong92/rules.mk b/keyboards/planck/keymaps/tong92/rules.mk index e6608e74c5..df9e7918ca 100644 --- a/keyboards/planck/keymaps/tong92/rules.mk +++ b/keyboards/planck/keymaps/tong92/rules.mk @@ -52,7 +52,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/vifon/rules.mk b/keyboards/planck/keymaps/vifon/rules.mk index da83096d6b..5caec1afa8 100644 --- a/keyboards/planck/keymaps/vifon/rules.mk +++ b/keyboards/planck/keymaps/vifon/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. API_SYSEX_ENABLE = no # https://www.reddit.com/r/olkb/comments/5swhij/_/ddie6zq/ KEY_LOCK_ENABLE = yes diff --git a/keyboards/planck/keymaps/yale/rules.mk b/keyboards/planck/keymaps/yale/rules.mk index 581e08cd02..caff043c58 100644 --- a/keyboards/planck/keymaps/yale/rules.mk +++ b/keyboards/planck/keymaps/yale/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/yang/rules.mk b/keyboards/planck/keymaps/yang/rules.mk index 6b18762fa7..173fe29893 100644 --- a/keyboards/planck/keymaps/yang/rules.mk +++ b/keyboards/planck/keymaps/yang/rules.mk @@ -2,7 +2,7 @@ # change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. AUDIO_ENABLE = no ifndef QUANTUM_DIR diff --git a/keyboards/planck/keymaps/zach/rules.mk b/keyboards/planck/keymaps/zach/rules.mk index 9d86fc81fc..ca24b47929 100644 --- a/keyboards/planck/keymaps/zach/rules.mk +++ b/keyboards/planck/keymaps/zach/rules.mk @@ -20,7 +20,7 @@ AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode (can't be used with unicodemap) UNICODEMAP_ENABLE = yes # Enable extended unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/zrichard/rules.mk b/keyboards/planck/keymaps/zrichard/rules.mk index 0b87bc9882..7b17f58ce1 100755 --- a/keyboards/planck/keymaps/zrichard/rules.mk +++ b/keyboards/planck/keymaps/zrichard/rules.mk @@ -20,7 +20,7 @@ MIDI_ENABLE = yes # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. TAP_DANCE_ENABLE = no # Enable double or n tap macros # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/bucktooth/rules.mk b/keyboards/preonic/keymaps/bucktooth/rules.mk index 3e87d41d36..9dbdfcbd3b 100644 --- a/keyboards/preonic/keymaps/bucktooth/rules.mk +++ b/keyboards/preonic/keymaps/bucktooth/rules.mk @@ -11,7 +11,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/dlaroe/rules.mk b/keyboards/preonic/keymaps/dlaroe/rules.mk index b356244713..eea3168497 100644 --- a/keyboards/preonic/keymaps/dlaroe/rules.mk +++ b/keyboards/preonic/keymaps/dlaroe/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/jacwib/rules.mk b/keyboards/preonic/keymaps/jacwib/rules.mk index 3e87d41d36..9dbdfcbd3b 100644 --- a/keyboards/preonic/keymaps/jacwib/rules.mk +++ b/keyboards/preonic/keymaps/jacwib/rules.mk @@ -11,7 +11,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/kinesis/rules.mk b/keyboards/preonic/keymaps/kinesis/rules.mk index 6c8d2897cd..f37fe43389 100644 --- a/keyboards/preonic/keymaps/kinesis/rules.mk +++ b/keyboards/preonic/keymaps/kinesis/rules.mk @@ -15,7 +15,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/seph/rules.mk b/keyboards/preonic/keymaps/seph/rules.mk index 4333bf4553..dd26cd906d 100644 --- a/keyboards/preonic/keymaps/seph/rules.mk +++ b/keyboards/preonic/keymaps/seph/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/preonic/keymaps/zach/rules.mk b/keyboards/preonic/keymaps/zach/rules.mk index eebf413495..f00af43961 100644 --- a/keyboards/preonic/keymaps/zach/rules.mk +++ b/keyboards/preonic/keymaps/zach/rules.mk @@ -20,7 +20,7 @@ AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes # Enable extended unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/quefrency/rules.mk b/keyboards/quefrency/rules.mk index b78dc5df7b..3ec04fbf1f 100644 --- a/keyboards/quefrency/rules.mk +++ b/keyboards/quefrency/rules.mk @@ -22,7 +22,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/qwertyydox/rules.mk b/keyboards/qwertyydox/rules.mk index d8a287bbc8..d04a4b9f30 100644 --- a/keyboards/qwertyydox/rules.mk +++ b/keyboards/qwertyydox/rules.mk @@ -58,7 +58,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # I2C is used between the sides # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/rama/m60_a/rules.mk b/keyboards/rama/m60_a/rules.mk index 02617cf1c7..7ab1b7d3ba 100644 --- a/keyboards/rama/m60_a/rules.mk +++ b/keyboards/rama/m60_a/rules.mk @@ -68,7 +68,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend @@ -76,4 +76,3 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend RAW_ENABLE = yes DYNAMIC_KEYMAP_ENABLE = yes CIE1931_CURVE = yes - diff --git a/keyboards/redox/rules.mk b/keyboards/redox/rules.mk index c74a3bda2c..748d89dcfb 100644 --- a/keyboards/redox/rules.mk +++ b/keyboards/redox/rules.mk @@ -66,7 +66,7 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes diff --git a/keyboards/rorschach/keymaps/insertsnideremarks/rules.mk b/keyboards/rorschach/keymaps/insertsnideremarks/rules.mk index 6beaae7aee..b9e39c0539 100644 --- a/keyboards/rorschach/keymaps/insertsnideremarks/rules.mk +++ b/keyboards/rorschach/keymaps/insertsnideremarks/rules.mk @@ -14,8 +14,6 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Enable Tap Dancing function - - diff --git a/keyboards/rorschach/rules.mk b/keyboards/rorschach/rules.mk index 9de068d2f2..3201253487 100644 --- a/keyboards/rorschach/rules.mk +++ b/keyboards/rorschach/rules.mk @@ -17,7 +17,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/s60_x/keymaps/ansi_qwertz/rules.mk b/keyboards/s60_x/keymaps/ansi_qwertz/rules.mk index 6a078bcc3f..cf50122526 100644 --- a/keyboards/s60_x/keymaps/ansi_qwertz/rules.mk +++ b/keyboards/s60_x/keymaps/ansi_qwertz/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/s60_x/keymaps/bluebear/rules.mk b/keyboards/s60_x/keymaps/bluebear/rules.mk index 78d770d262..b7c9a04790 100644 --- a/keyboards/s60_x/keymaps/bluebear/rules.mk +++ b/keyboards/s60_x/keymaps/bluebear/rules.mk @@ -9,6 +9,6 @@ MIDI_ENABLE = yes # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable tap dancing keys \ No newline at end of file diff --git a/keyboards/satan/keymaps/addcninblue/rules.mk b/keyboards/satan/keymaps/addcninblue/rules.mk index c2937fd57f..fd7f34300b 100644 --- a/keyboards/satan/keymaps/addcninblue/rules.mk +++ b/keyboards/satan/keymaps/addcninblue/rules.mk @@ -16,6 +16,6 @@ UNICODEMAP_ENABLE = no # This allows sending unicode symbols using X() UNICODE_ENABLE =no # Unicode UCIS_ENABLE = no # Keep in mind that not all will work (See WinCompose for details on Windows). BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no# Breathing sleep LED during USB suspend API_SYSEX_ENABLE = no # This enables using the Quantum SYSEX API to send strings ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/ben_iso/rules.mk b/keyboards/satan/keymaps/ben_iso/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/ben_iso/rules.mk +++ b/keyboards/satan/keymaps/ben_iso/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/chaser/rules.mk b/keyboards/satan/keymaps/chaser/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/chaser/rules.mk +++ b/keyboards/satan/keymaps/chaser/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/colemak/rules.mk b/keyboards/satan/keymaps/colemak/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/colemak/rules.mk +++ b/keyboards/satan/keymaps/colemak/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/default/rules.mk b/keyboards/satan/keymaps/default/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/default/rules.mk +++ b/keyboards/satan/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/dende_iso/rules.mk b/keyboards/satan/keymaps/dende_iso/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/dende_iso/rules.mk +++ b/keyboards/satan/keymaps/dende_iso/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/dkrieger/rules.mk b/keyboards/satan/keymaps/dkrieger/rules.mk index 4c280ceb04..f2434d30e5 100644 --- a/keyboards/satan/keymaps/dkrieger/rules.mk +++ b/keyboards/satan/keymaps/dkrieger/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes diff --git a/keyboards/satan/keymaps/isoHHKB/rules.mk b/keyboards/satan/keymaps/isoHHKB/rules.mk index 026b33c7d8..80ce560588 100644 --- a/keyboards/satan/keymaps/isoHHKB/rules.mk +++ b/keyboards/satan/keymaps/isoHHKB/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/lepa/rules.mk b/keyboards/satan/keymaps/lepa/rules.mk index 636dd1b1d3..72ca006465 100644 --- a/keyboards/satan/keymaps/lepa/rules.mk +++ b/keyboards/satan/keymaps/lepa/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes diff --git a/keyboards/satan/keymaps/midi/rules.mk b/keyboards/satan/keymaps/midi/rules.mk index 89c34b3946..d144314de7 100644 --- a/keyboards/satan/keymaps/midi/rules.mk +++ b/keyboards/satan/keymaps/midi/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = yes # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/olligranlund_iso/rules.mk b/keyboards/satan/keymaps/olligranlund_iso/rules.mk index c96deccaa9..73106b6749 100644 --- a/keyboards/satan/keymaps/olligranlund_iso/rules.mk +++ b/keyboards/satan/keymaps/olligranlund_iso/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/satan/keymaps/sethbc/rules.mk b/keyboards/satan/keymaps/sethbc/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/satan/keymaps/sethbc/rules.mk +++ b/keyboards/satan/keymaps/sethbc/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/smt/rules.mk b/keyboards/satan/keymaps/smt/rules.mk index 0c9ae824f6..806c2cb84b 100644 --- a/keyboards/satan/keymaps/smt/rules.mk +++ b/keyboards/satan/keymaps/smt/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/satan/keymaps/unxmaal/rules.mk b/keyboards/satan/keymaps/unxmaal/rules.mk index ee94a67b4e..470d621b10 100644 --- a/keyboards/satan/keymaps/unxmaal/rules.mk +++ b/keyboards/satan/keymaps/unxmaal/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/ardakilic/rules.mk b/keyboards/tada68/keymaps/ardakilic/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/ardakilic/rules.mk +++ b/keyboards/tada68/keymaps/ardakilic/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/bazooka/rules.mk b/keyboards/tada68/keymaps/bazooka/rules.mk index 1915481bf9..b2789a78a7 100644 --- a/keyboards/tada68/keymaps/bazooka/rules.mk +++ b/keyboards/tada68/keymaps/bazooka/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/tada68/keymaps/cheese/rules.mk b/keyboards/tada68/keymaps/cheese/rules.mk index fdbd25ea80..b2789a78a7 100644 --- a/keyboards/tada68/keymaps/cheese/rules.mk +++ b/keyboards/tada68/keymaps/cheese/rules.mk @@ -13,6 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/tada68/keymaps/default/rules.mk b/keyboards/tada68/keymaps/default/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/default/rules.mk +++ b/keyboards/tada68/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/fakb/rules.mk b/keyboards/tada68/keymaps/fakb/rules.mk index 54b79fc9d4..642e16de59 100644 --- a/keyboards/tada68/keymaps/fakb/rules.mk +++ b/keyboards/tada68/keymaps/fakb/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/fezzant/rules.mk b/keyboards/tada68/keymaps/fezzant/rules.mk index f2439cc7d1..8df84ae954 100644 --- a/keyboards/tada68/keymaps/fezzant/rules.mk +++ b/keyboards/tada68/keymaps/fezzant/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = yes # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/iso-nor/rules.mk b/keyboards/tada68/keymaps/iso-nor/rules.mk index 4deca710b8..baaca071cf 100644 --- a/keyboards/tada68/keymaps/iso-nor/rules.mk +++ b/keyboards/tada68/keymaps/iso-nor/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/iso-uk/rules.mk b/keyboards/tada68/keymaps/iso-uk/rules.mk index 4deca710b8..baaca071cf 100644 --- a/keyboards/tada68/keymaps/iso-uk/rules.mk +++ b/keyboards/tada68/keymaps/iso-uk/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/isoish/rules.mk b/keyboards/tada68/keymaps/isoish/rules.mk index 4deca710b8..baaca071cf 100644 --- a/keyboards/tada68/keymaps/isoish/rules.mk +++ b/keyboards/tada68/keymaps/isoish/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/mattdicarlo/rules.mk b/keyboards/tada68/keymaps/mattdicarlo/rules.mk index c920006650..ac92f99f48 100644 --- a/keyboards/tada68/keymaps/mattdicarlo/rules.mk +++ b/keyboards/tada68/keymaps/mattdicarlo/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/mlechner/rules.mk b/keyboards/tada68/keymaps/mlechner/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/mlechner/rules.mk +++ b/keyboards/tada68/keymaps/mlechner/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/mtdjr/rules.mk b/keyboards/tada68/keymaps/mtdjr/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/mtdjr/rules.mk +++ b/keyboards/tada68/keymaps/mtdjr/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/pascamel/rules.mk b/keyboards/tada68/keymaps/pascamel/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/pascamel/rules.mk +++ b/keyboards/tada68/keymaps/pascamel/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/raylas/rules.mk b/keyboards/tada68/keymaps/raylas/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/raylas/rules.mk +++ b/keyboards/tada68/keymaps/raylas/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/rbong/rules.mk b/keyboards/tada68/keymaps/rbong/rules.mk index 1915481bf9..b2789a78a7 100644 --- a/keyboards/tada68/keymaps/rbong/rules.mk +++ b/keyboards/tada68/keymaps/rbong/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/tada68/keymaps/rgb/rules.mk b/keyboards/tada68/keymaps/rgb/rules.mk index ee94a67b4e..470d621b10 100644 --- a/keyboards/tada68/keymaps/rgb/rules.mk +++ b/keyboards/tada68/keymaps/rgb/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/rys/rules.mk b/keyboards/tada68/keymaps/rys/rules.mk index 1915481bf9..b2789a78a7 100644 --- a/keyboards/tada68/keymaps/rys/rules.mk +++ b/keyboards/tada68/keymaps/rys/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/tada68/keymaps/shalzz/rules.mk b/keyboards/tada68/keymaps/shalzz/rules.mk index 1df3af955d..4595aa8c24 100644 --- a/keyboards/tada68/keymaps/shalzz/rules.mk +++ b/keyboards/tada68/keymaps/shalzz/rules.mk @@ -8,5 +8,5 @@ COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality AUDIO_ENABLE = no # Audio output on port C6 -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend diff --git a/keyboards/tada68/keymaps/sm0g/rules.mk b/keyboards/tada68/keymaps/sm0g/rules.mk index bd4bb32491..0826db7554 100644 --- a/keyboards/tada68/keymaps/sm0g/rules.mk +++ b/keyboards/tada68/keymaps/sm0g/rules.mk @@ -13,6 +13,6 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Tappa Dance \ No newline at end of file diff --git a/keyboards/tada68/keymaps/stephengrier/rules.mk b/keyboards/tada68/keymaps/stephengrier/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/stephengrier/rules.mk +++ b/keyboards/tada68/keymaps/stephengrier/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/trashcat/rules.mk b/keyboards/tada68/keymaps/trashcat/rules.mk index 644b6a814b..6fb4969193 100644 --- a/keyboards/tada68/keymaps/trashcat/rules.mk +++ b/keyboards/tada68/keymaps/trashcat/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Tappa Dance Bitch ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/tshack/rules.mk b/keyboards/tada68/keymaps/tshack/rules.mk index 061907d3a2..86d22dd3fd 100644 --- a/keyboards/tada68/keymaps/tshack/rules.mk +++ b/keyboards/tada68/keymaps/tshack/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/unix/rules.mk b/keyboards/tada68/keymaps/unix/rules.mk index 46f0b65a9c..aade51459b 100644 --- a/keyboards/tada68/keymaps/unix/rules.mk +++ b/keyboards/tada68/keymaps/unix/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/tada68/keymaps/wamsm_tada/rules.mk b/keyboards/tada68/keymaps/wamsm_tada/rules.mk index 2a7ff27793..bb535beb34 100644 --- a/keyboards/tada68/keymaps/wamsm_tada/rules.mk +++ b/keyboards/tada68/keymaps/wamsm_tada/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/the_ruler/keymaps/default/rules.mk b/keyboards/the_ruler/keymaps/default/rules.mk index fac9327db3..b491f5b3f3 100644 --- a/keyboards/the_ruler/keymaps/default/rules.mk +++ b/keyboards/the_ruler/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/the_ruler/rules.mk b/keyboards/the_ruler/rules.mk index 30d76a3c92..6362176fea 100644 --- a/keyboards/the_ruler/rules.mk +++ b/keyboards/the_ruler/rules.mk @@ -65,4 +65,4 @@ MIDI_ENABLE = no # MIDI controls UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/0010/rules.mk b/keyboards/thevankeyboards/bananasplit/keymaps/0010/rules.mk index 7d09c322e5..159fd7dc6c 100644 --- a/keyboards/thevankeyboards/bananasplit/keymaps/0010/rules.mk +++ b/keyboards/thevankeyboards/bananasplit/keymaps/0010/rules.mk @@ -29,7 +29,7 @@ # AUDIO_ENABLE = no # Audio output on port C6 # UNICODE_ENABLE = no # Unicode # BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/coloneljesus/rules.mk b/keyboards/thevankeyboards/bananasplit/keymaps/coloneljesus/rules.mk index 7d09c322e5..159fd7dc6c 100644 --- a/keyboards/thevankeyboards/bananasplit/keymaps/coloneljesus/rules.mk +++ b/keyboards/thevankeyboards/bananasplit/keymaps/coloneljesus/rules.mk @@ -29,7 +29,7 @@ # AUDIO_ENABLE = no # Audio output on port C6 # UNICODE_ENABLE = no # Unicode # BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/default/rules.mk b/keyboards/thevankeyboards/bananasplit/keymaps/default/rules.mk index 7d09c322e5..159fd7dc6c 100644 --- a/keyboards/thevankeyboards/bananasplit/keymaps/default/rules.mk +++ b/keyboards/thevankeyboards/bananasplit/keymaps/default/rules.mk @@ -29,7 +29,7 @@ # AUDIO_ENABLE = no # Audio output on port C6 # UNICODE_ENABLE = no # Unicode # BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/kamon/rules.mk b/keyboards/thevankeyboards/bananasplit/keymaps/kamon/rules.mk index 7d09c322e5..159fd7dc6c 100644 --- a/keyboards/thevankeyboards/bananasplit/keymaps/kamon/rules.mk +++ b/keyboards/thevankeyboards/bananasplit/keymaps/kamon/rules.mk @@ -29,7 +29,7 @@ # AUDIO_ENABLE = no # Audio output on port C6 # UNICODE_ENABLE = no # Unicode # BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +# RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk index ebc9f810f9..d7ca73ac58 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk index 41afd9a551..b2c421c4dc 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk index e60e3c5c5a..1e006e9472 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk +++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/roadkit/keymaps/default/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/default/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/default/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/roadkit/keymaps/flipphone/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/flipphone/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/flipphone/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/flipphone/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/roadkit/keymaps/khord/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/khord/rules.mk index 9f3c958bd8..ba4b4fec0c 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/khord/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/khord/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = no # Enable Tap Dance functionality diff --git a/keyboards/thevankeyboards/roadkit/keymaps/mjt/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/mjt/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/mjt/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/mjt/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/roadkit/keymaps/singles/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/singles/rules.mk index f4671a9d11..3ff1477251 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/singles/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/singles/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/thevankeyboards/roadkit/keymaps/singlesBrent/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/singlesBrent/rules.mk index b61d6cca2c..030d27f2a6 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/singlesBrent/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/singlesBrent/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Enable Tap Dance functionality diff --git a/keyboards/thevankeyboards/roadkit/keymaps/wavebeem-gamepad/rules.mk b/keyboards/thevankeyboards/roadkit/keymaps/wavebeem-gamepad/rules.mk index 72fd3d30ba..d8284e6bd5 100644 --- a/keyboards/thevankeyboards/roadkit/keymaps/wavebeem-gamepad/rules.mk +++ b/keyboards/thevankeyboards/roadkit/keymaps/wavebeem-gamepad/rules.mk @@ -13,5 +13,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/vision_division/keymaps/default/rules.mk b/keyboards/vision_division/keymaps/default/rules.mk index 28060947af..342f37453c 100644 --- a/keyboards/vision_division/keymaps/default/rules.mk +++ b/keyboards/vision_division/keymaps/default/rules.mk @@ -13,7 +13,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/vitamins_included/rules.mk b/keyboards/vitamins_included/rules.mk index 4f6d497a6b..34f423f59d 100644 --- a/keyboards/vitamins_included/rules.mk +++ b/keyboards/vitamins_included/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/viterbi/rules.mk b/keyboards/viterbi/rules.mk index af24c15f53..ee043cca3b 100644 --- a/keyboards/viterbi/rules.mk +++ b/keyboards/viterbi/rules.mk @@ -63,7 +63,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = yes # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/keyboards/wavelet/rules.mk b/keyboards/wavelet/rules.mk index 86149c5622..cfff50a41d 100644 --- a/keyboards/wavelet/rules.mk +++ b/keyboards/wavelet/rules.mk @@ -22,7 +22,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/xd60/rules.mk b/keyboards/xd60/rules.mk index 50fba97e5f..8a60252dcf 100644 --- a/keyboards/xd60/rules.mk +++ b/keyboards/xd60/rules.mk @@ -61,7 +61,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend LAYOUTS = 60_ansi \ No newline at end of file diff --git a/keyboards/xd75/keymaps/fabian/rules.mk b/keyboards/xd75/keymaps/fabian/rules.mk index 6e8941fdfd..f1ae8d44a1 100644 --- a/keyboards/xd75/keymaps/fabian/rules.mk +++ b/keyboards/xd75/keymaps/fabian/rules.mk @@ -29,7 +29,7 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR diff --git a/keyboards/xd75/keymaps/germanized/rules.mk b/keyboards/xd75/keymaps/germanized/rules.mk index d72bcf575d..f57fb8c54e 100644 --- a/keyboards/xd75/keymaps/germanized/rules.mk +++ b/keyboards/xd75/keymaps/germanized/rules.mk @@ -29,7 +29,7 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Enable Tap Dancing diff --git a/keyboards/xd75/rules.mk b/keyboards/xd75/rules.mk index 5f6e856486..e992729432 100644 --- a/keyboards/xd75/rules.mk +++ b/keyboards/xd75/rules.mk @@ -62,7 +62,7 @@ MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend LAYOUTS = ortho_5x15 \ No newline at end of file diff --git a/keyboards/zeal60/rules.mk b/keyboards/zeal60/rules.mk index f099ea9fdd..1327d88210 100644 --- a/keyboards/zeal60/rules.mk +++ b/keyboards/zeal60/rules.mk @@ -67,7 +67,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend diff --git a/keyboards/zeal65/rules.mk b/keyboards/zeal65/rules.mk index 02617cf1c7..7ab1b7d3ba 100644 --- a/keyboards/zeal65/rules.mk +++ b/keyboards/zeal65/rules.mk @@ -68,7 +68,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend @@ -76,4 +76,3 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend RAW_ENABLE = yes DYNAMIC_KEYMAP_ENABLE = yes CIE1931_CURVE = yes - diff --git a/keyboards/zen/rules.mk b/keyboards/zen/rules.mk index 32d3dc51c8..4e82689111 100644 --- a/keyboards/zen/rules.mk +++ b/keyboards/zen/rules.mk @@ -62,7 +62,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SUBPROJECT_rev1 = yes USE_I2C = no # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE diff --git a/layouts/community/ergodox/alphadox/rules.mk b/layouts/community/ergodox/alphadox/rules.mk index f93ff3bb68..57c62a5e63 100644 --- a/layouts/community/ergodox/alphadox/rules.mk +++ b/layouts/community/ergodox/alphadox/rules.mk @@ -9,7 +9,5 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - - -- cgit v1.2.3 From bf57587e6203e3bcabbc161c1d45b9a6cc7abfaa Mon Sep 17 00:00:00 2001 From: noroadsleft <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 22 Oct 2018 12:35:09 -0700 Subject: Keyboard: Zlant refactor and Configurator support (#3678) * Matrix/keymap refactor White space and readability updates * Configurator support Added info.json file. * Readme update Markdown formatting * Add support for ortho_4x12 keymaps * Added planck_mit layout support * Disable SWAP_HANDS_ENABLE for zlant:wanleg keymap * Disable BACKLIGHT_ENABLE for zlant:bakingpy keymap --- keyboards/zlant/info.json | 17 ++++++++++ keyboards/zlant/keymaps/default/keymap.c | 22 +++++++------ keyboards/zlant/readme.md | 6 ++-- keyboards/zlant/rules.mk | 2 ++ keyboards/zlant/zlant.h | 44 ++++++++++++++++++++------ layouts/community/ortho_4x12/bakingpy/rules.mk | 6 +++- layouts/community/ortho_4x12/wanleg/rules.mk | 4 +++ 7 files changed, 77 insertions(+), 24 deletions(-) create mode 100644 keyboards/zlant/info.json (limited to 'layouts') diff --git a/keyboards/zlant/info.json b/keyboards/zlant/info.json new file mode 100644 index 0000000000..b1f20555c0 --- /dev/null +++ b/keyboards/zlant/info.json @@ -0,0 +1,17 @@ +{ + "keyboard_name": "Zlant", + "url": "", + "maintainer": "qmk", + "width": 12.75, + "height": 4, + "layouts": { + "LAYOUT_ortho_4x12": { + "key_count": 48, + "layout": [{"label":"K000", "x":0, "y":0}, {"label":"K001", "x":1, "y":0}, {"label":"K002", "x":2, "y":0}, {"label":"K003", "x":3, "y":0}, {"label":"K004", "x":4, "y":0}, {"label":"K005", "x":5, "y":0}, {"label":"K006", "x":6, "y":0}, {"label":"K007", "x":7, "y":0}, {"label":"K008", "x":8, "y":0}, {"label":"K009", "x":9, "y":0}, {"label":"K010", "x":10, "y":0}, {"label":"K011", "x":11, "y":0}, {"label":"K100", "x":0.25, "y":1}, {"label":"K101", "x":1.25, "y":1}, {"label":"K102", "x":2.25, "y":1}, {"label":"K103", "x":3.25, "y":1}, {"label":"K104", "x":4.25, "y":1}, {"label":"K105", "x":5.25, "y":1}, {"label":"K106", "x":6.25, "y":1}, {"label":"K107", "x":7.25, "y":1}, {"label":"K108", "x":8.25, "y":1}, {"label":"K109", "x":9.25, "y":1}, {"label":"K110", "x":10.25, "y":1}, {"label":"K111", "x":11.25, "y":1}, {"label":"K200", "x":0.5, "y":2}, {"label":"K201", "x":1.5, "y":2}, {"label":"K202", "x":2.5, "y":2}, {"label":"K203", "x":3.5, "y":2}, {"label":"K204", "x":4.5, "y":2}, {"label":"K205", "x":5.5, "y":2}, {"label":"K206", "x":6.5, "y":2}, {"label":"K207", "x":7.5, "y":2}, {"label":"K208", "x":8.5, "y":2}, {"label":"K209", "x":9.5, "y":2}, {"label":"K210", "x":10.5, "y":2}, {"label":"K211", "x":11.5, "y":2}, {"label":"K300", "x":0.75, "y":3}, {"label":"K301", "x":1.75, "y":3}, {"label":"K302", "x":2.75, "y":3}, {"label":"K303", "x":3.75, "y":3}, {"label":"K304", "x":4.75, "y":3}, {"label":"K305", "x":5.75, "y":3}, {"label":"K306", "x":6.75, "y":3}, {"label":"K307", "x":7.75, "y":3}, {"label":"K308", "x":8.75, "y":3}, {"label":"K309", "x":9.75, "y":3}, {"label":"K310", "x":10.75, "y":3}, {"label":"K311", "x":11.75, "y":3}] + }, + "LAYOUT_planck_mit": { + "key_count": 47, + "layout": [{"label":"K000", "x":0, "y":0}, {"label":"K001", "x":1, "y":0}, {"label":"K002", "x":2, "y":0}, {"label":"K003", "x":3, "y":0}, {"label":"K004", "x":4, "y":0}, {"label":"K005", "x":5, "y":0}, {"label":"K006", "x":6, "y":0}, {"label":"K007", "x":7, "y":0}, {"label":"K008", "x":8, "y":0}, {"label":"K009", "x":9, "y":0}, {"label":"K010", "x":10, "y":0}, {"label":"K011", "x":11, "y":0}, {"label":"K100", "x":0.25, "y":1}, {"label":"K101", "x":1.25, "y":1}, {"label":"K102", "x":2.25, "y":1}, {"label":"K103", "x":3.25, "y":1}, {"label":"K104", "x":4.25, "y":1}, {"label":"K105", "x":5.25, "y":1}, {"label":"K106", "x":6.25, "y":1}, {"label":"K107", "x":7.25, "y":1}, {"label":"K108", "x":8.25, "y":1}, {"label":"K109", "x":9.25, "y":1}, {"label":"K110", "x":10.25, "y":1}, {"label":"K111", "x":11.25, "y":1}, {"label":"K200", "x":0.5, "y":2}, {"label":"K201", "x":1.5, "y":2}, {"label":"K202", "x":2.5, "y":2}, {"label":"K203", "x":3.5, "y":2}, {"label":"K204", "x":4.5, "y":2}, {"label":"K205", "x":5.5, "y":2}, {"label":"K206", "x":6.5, "y":2}, {"label":"K207", "x":7.5, "y":2}, {"label":"K208", "x":8.5, "y":2}, {"label":"K209", "x":9.5, "y":2}, {"label":"K210", "x":10.5, "y":2}, {"label":"K211", "x":11.5, "y":2}, {"label":"K300", "x":0.75, "y":3}, {"label":"K301", "x":1.75, "y":3}, {"label":"K302", "x":2.75, "y":3}, {"label":"K303", "x":3.75, "y":3}, {"label":"K304", "x":4.75, "y":3, "w":1.25}, {"label":"K305", "x":6, "y":3, "w":1.5}, {"label":"K307", "x":7.5, "y":3, "w":1.25}, {"label":"K308", "x":8.75, "y":3}, {"label":"K309", "x":9.75, "y":3}, {"label":"K310", "x":10.75, "y":3}, {"label":"K311", "x":11.75, "y":3}] + } + } +} diff --git a/keyboards/zlant/keymaps/default/keymap.c b/keyboards/zlant/keymaps/default/keymap.c index d586c841d8..a701a7965a 100755 --- a/keyboards/zlant/keymaps/default/keymap.c +++ b/keyboards/zlant/keymaps/default/keymap.c @@ -5,16 +5,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT( - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - 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_ESC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, - RGB_HUI, RGB_HUD, KC_LGUI, KC_LALT, KC_LSFT, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [BASE] = LAYOUT( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ + 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_ESC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, \ + RGB_HUI, RGB_HUD, KC_LGUI, KC_LALT, KC_LSFT, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + ), - [FN] = LAYOUT( - KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_PGUP, KC_HOME, KC_TRNS, KC_TRNS, - RGB_VAI, RGB_VAD, RESET, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_END, KC_TRNS, KC_DEL) + [FN] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \ + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_PGUP, KC_HOME, _______, _______, \ + RGB_VAI, RGB_VAD, RESET, KC_PSCR, _______, _______, _______, _______, KC_PGDN, KC_END, _______, KC_DEL \ + ) }; diff --git a/keyboards/zlant/readme.md b/keyboards/zlant/readme.md index 0780cedeb1..8f50e6d4c7 100644 --- a/keyboards/zlant/readme.md +++ b/keyboards/zlant/readme.md @@ -4,10 +4,8 @@ A compact 40% inspired by the Plank with a staggered layout instead. -Keyboard Maintainer: [Felipe Coury](https://github.com/fcoury) - -Hardware Supported: Zlant Prototype PCB - +Keyboard Maintainer: [Felipe Coury](https://github.com/fcoury) +Hardware Supported: Zlant Prototype PCB Hardware Availability: Group buy soon Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/zlant/rules.mk b/keyboards/zlant/rules.mk index 482f99b223..0bc5c8aaed 100755 --- a/keyboards/zlant/rules.mk +++ b/keyboards/zlant/rules.mk @@ -54,3 +54,5 @@ NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https:/ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality AUDIO_ENABLE = no RGBLIGHT_ENABLE = yes + +LAYOUTS = ortho_4x12 planck_mit diff --git a/keyboards/zlant/zlant.h b/keyboards/zlant/zlant.h index 48c7b3f409..6310a14e35 100755 --- a/keyboards/zlant/zlant.h +++ b/keyboards/zlant/zlant.h @@ -3,16 +3,42 @@ #include "quantum.h" -#define LAYOUT( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \ - K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, \ - K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 \ +#define LAYOUT_ortho_4x12( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111 }, \ - { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211 }, \ - { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 } \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 } \ } +#define LAYOUT_planck_mit( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, \ + K300, K301, K302, K303, K304, K305, K307, K308, K309, K310, K311 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211 }, \ + { K300, K301, K302, K303, K304, K305, K305, K307, K308, K309, K310, K311 } \ +} + +#define LAYOUT_kc_ortho_4x12( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 \ +) LAYOUT( \ + KC_##K000, KC_##K001, KC_##K002, KC_##K003, KC_##K004, KC_##K005, KC_##K006, KC_##K007, KC_##K008, KC_##K009, KC_##K010, KC_##K011, \ + KC_##K100, KC_##K101, KC_##K102, KC_##K103, KC_##K104, KC_##K105, KC_##K106, KC_##K107, KC_##K108, KC_##K109, KC_##K110, KC_##K111, \ + KC_##K200, KC_##K201, KC_##K202, KC_##K203, KC_##K204, KC_##K205, KC_##K206, KC_##K207, KC_##K208, KC_##K209, KC_##K210, KC_##K211, \ + KC_##K300, KC_##K301, KC_##K302, KC_##K303, KC_##K304, KC_##K305, KC_##K306, KC_##K307, KC_##K308, KC_##K309, KC_##K310, KC_##K311 \ +) + +#define LAYOUT LAYOUT_ortho_4x12 + #endif diff --git a/layouts/community/ortho_4x12/bakingpy/rules.mk b/layouts/community/ortho_4x12/bakingpy/rules.mk index 0d568c401a..490ebbf779 100644 --- a/layouts/community/ortho_4x12/bakingpy/rules.mk +++ b/layouts/community/ortho_4x12/bakingpy/rules.mk @@ -3,4 +3,8 @@ ifeq ($(LAYOUTS_HAS_RGB),yes) RGBLIGHT_ENABLE = yes endif AUDIO_ENABLE = no -BACKLIGHT_ENABLE = yes +ifeq ($(strip $(KEYBOARD)), zlant) + BACKLIGHT_ENABLE = no +else + BACKLIGHT_ENABLE = yes +endif diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk index 69f377a015..fa433a6b0d 100644 --- a/layouts/community/ortho_4x12/wanleg/rules.mk +++ b/layouts/community/ortho_4x12/wanleg/rules.mk @@ -7,4 +7,8 @@ endif ifeq ($(strip $(KEYBOARD)), 4x4) SWAP_HANDS_ENABLE = no +endif + +ifeq ($(strip $(KEYBOARD)), zlant) + SWAP_HANDS_ENABLE = no endif \ No newline at end of file -- cgit v1.2.3 From e26a7b0ed8af7b6b4e99fee718ca265fcc8961f1 Mon Sep 17 00:00:00 2001 From: fougner Date: Mon, 22 Oct 2018 23:01:45 +0200 Subject: Keyboard: initial support for XD87 (#4182) * Keyboard: initial support for XD87 * Add row/col pin configuration for XD87 PCB * Add default ISO layout * Fix incorrect KC in default_tkl_iso The KC_NUBS is duplicated in the TKL ISO layout. Compare with the fullsize ISO which has a KC_NUHS in the corresponding place. * Add support for community layouts * Add TKL ANSI layout * Enable TKL ISO/ANSI community layout * Fix LAYOUT_all * Configure backlighting for XD87 * Various documentation changes --- keyboards/xd87/config.h | 227 +++++++++++++++++++++++ keyboards/xd87/info.json | 0 keyboards/xd87/keymaps/default/config.h | 19 ++ keyboards/xd87/keymaps/default/keymap.c | 68 +++++++ keyboards/xd87/keymaps/default/readme.md | 1 + keyboards/xd87/readme.md | 26 +++ keyboards/xd87/rules.mk | 84 +++++++++ keyboards/xd87/xd87.c | 43 +++++ keyboards/xd87/xd87.h | 70 +++++++ layouts/default/tkl_iso/default_tkl_iso/keymap.c | 2 +- 10 files changed, 539 insertions(+), 1 deletion(-) create mode 100644 keyboards/xd87/config.h create mode 100644 keyboards/xd87/info.json create mode 100644 keyboards/xd87/keymaps/default/config.h create mode 100644 keyboards/xd87/keymaps/default/keymap.c create mode 100644 keyboards/xd87/keymaps/default/readme.md create mode 100644 keyboards/xd87/readme.md create mode 100644 keyboards/xd87/rules.mk create mode 100644 keyboards/xd87/xd87.c create mode 100644 keyboards/xd87/xd87.h (limited to 'layouts') diff --git a/keyboards/xd87/config.h b/keyboards/xd87/config.h new file mode 100644 index 0000000000..3682af7409 --- /dev/null +++ b/keyboards/xd87/config.h @@ -0,0 +1,227 @@ +/* +Copyright 2018 Alexander Fougner + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER KP Republic +#define PRODUCT XD87 TKL +#define DESCRIPTION KP Republic XD87 + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ + + +#define MATRIX_ROW_PINS { D1, B0, B1, C7, D3, D5 } + +#define MATRIX_COL_PINS { E6, F0, F1, F4, F5, F6, F7, B5, B6, C6, D4, D6, D7, B4, B2, B3, D2 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL, or CUSTOM_MATRIX */ +#define DIODE_DIRECTION COL2ROW + +#define BACKLIGHT_PIN D0 +// #define BACKLIGHT_BREATHING +#define BACKLIGHT_LEVELS 3 + +// #define RGB_DI_PIN E2 +// #ifdef RGB_DI_PIN +// #define RGBLIGHT_ANIMATIONS +// #define RGBLED_NUM 16 +// #define RGBLIGHT_HUE_STEP 8 +// #define RGBLIGHT_SAT_STEP 8 +// #define RGBLIGHT_VAL_STEP 8 +// #endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is userful for the Windows task manager shortcut (ctrl+shift+esc). + */ +// #define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * Magic Key Options + * + * Magic keys are hotkey commands that allow control over firmware functions of + * the keyboard. They are best used in combination with the HID Listen program, + * found here: https://www.pjrc.com/teensy/hid_listen.html + * + * The options below allow the magic key functionality to be changed. This is + * useful if your keyboard/keypad is missing keys and you want magic key support. + * + */ + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* control how magic key switches layers */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false + +/* override magic key keymap */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM +//#define MAGIC_KEY_HELP1 H +//#define MAGIC_KEY_HELP2 SLASH +//#define MAGIC_KEY_DEBUG D +//#define MAGIC_KEY_DEBUG_MATRIX X +//#define MAGIC_KEY_DEBUG_KBD K +//#define MAGIC_KEY_DEBUG_MOUSE M +//#define MAGIC_KEY_VERSION V +//#define MAGIC_KEY_STATUS S +//#define MAGIC_KEY_CONSOLE C +//#define MAGIC_KEY_LAYER0_ALT1 ESC +//#define MAGIC_KEY_LAYER0_ALT2 GRAVE +//#define MAGIC_KEY_LAYER0 0 +//#define MAGIC_KEY_LAYER1 1 +//#define MAGIC_KEY_LAYER2 2 +//#define MAGIC_KEY_LAYER3 3 +//#define MAGIC_KEY_LAYER4 4 +//#define MAGIC_KEY_LAYER5 5 +//#define MAGIC_KEY_LAYER6 6 +//#define MAGIC_KEY_LAYER7 7 +//#define MAGIC_KEY_LAYER8 8 +//#define MAGIC_KEY_LAYER9 9 +//#define MAGIC_KEY_BOOTLOADER PAUSE +//#define MAGIC_KEY_LOCK CAPS +//#define MAGIC_KEY_EEPROM E +//#define MAGIC_KEY_NKRO N +//#define MAGIC_KEY_SLEEP_LED Z + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +/* + * MIDI options + */ + +/* Prevent use of disabled MIDI features in the keymap */ +//#define MIDI_ENABLE_STRICT 1 + +/* enable basic MIDI features: + - MIDI notes can be sent when in Music mode is on +*/ +//#define MIDI_BASIC + +/* enable advanced MIDI features: + - MIDI notes can be added to the keymap + - Octave shift and transpose + - Virtual sustain, portamento, and modulation wheel + - etc. +*/ +//#define MIDI_ADVANCED + +/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ +//#define MIDI_TONE_KEYCODE_OCTAVES 1 + +/* + * HD44780 LCD Display Configuration + */ +/* +#define LCD_LINES 2 //< number of visible lines of the display +#define LCD_DISP_LENGTH 16 //< visibles characters per line of the display + +#define LCD_IO_MODE 1 //< 0: memory mapped mode, 1: IO port mode + +#if LCD_IO_MODE +#define LCD_PORT PORTB //< port for the LCD lines +#define LCD_DATA0_PORT LCD_PORT //< port for 4bit data bit 0 +#define LCD_DATA1_PORT LCD_PORT //< port for 4bit data bit 1 +#define LCD_DATA2_PORT LCD_PORT //< port for 4bit data bit 2 +#define LCD_DATA3_PORT LCD_PORT //< port for 4bit data bit 3 +#define LCD_DATA0_PIN 4 //< pin for 4bit data bit 0 +#define LCD_DATA1_PIN 5 //< pin for 4bit data bit 1 +#define LCD_DATA2_PIN 6 //< pin for 4bit data bit 2 +#define LCD_DATA3_PIN 7 //< pin for 4bit data bit 3 +#define LCD_RS_PORT LCD_PORT //< port for RS line +#define LCD_RS_PIN 3 //< pin for RS line +#define LCD_RW_PORT LCD_PORT //< port for RW line +#define LCD_RW_PIN 2 //< pin for RW line +#define LCD_E_PORT LCD_PORT //< port for Enable line +#define LCD_E_PIN 1 //< pin for Enable line +#endif +*/ + diff --git a/keyboards/xd87/info.json b/keyboards/xd87/info.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/xd87/keymaps/default/config.h b/keyboards/xd87/keymaps/default/config.h new file mode 100644 index 0000000000..ed56340c39 --- /dev/null +++ b/keyboards/xd87/keymaps/default/config.h @@ -0,0 +1,19 @@ +/* Copyright 2018 Alexander Fougner + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +// place overrides here diff --git a/keyboards/xd87/keymaps/default/keymap.c b/keyboards/xd87/keymaps/default/keymap.c new file mode 100644 index 0000000000..b31db9b577 --- /dev/null +++ b/keyboards/xd87/keymaps/default/keymap.c @@ -0,0 +1,68 @@ +/* Copyright 2018 Alexander Fougner + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +// Defines the keycodes used by our macros in process_record_user +enum custom_keycodes { + QMKBEST = SAFE_RANGE, + QMKURL +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_tkl_iso(\ + 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, \ + 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, \ + 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_DEL, KC_END, KC_PGDN, \ + 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_NUHS, KC_ENT, \ + 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, \ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ) +}; + + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QMKBEST: + if (record->event.pressed) { + // when keycode QMKBEST is pressed + SEND_STRING("QMK is the best thing ever!"); + } else { + // when keycode QMKBEST is released + } + break; + case QMKURL: + if (record->event.pressed) { + // when keycode QMKURL is pressed + SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); + } else { + // when keycode QMKURL is released + } + break; + } + return true; +} + +void matrix_init_user(void) { + +} + +void matrix_scan_user(void) { + +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/keyboards/xd87/keymaps/default/readme.md b/keyboards/xd87/keymaps/default/readme.md new file mode 100644 index 0000000000..41baff9435 --- /dev/null +++ b/keyboards/xd87/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for xd87 \ No newline at end of file diff --git a/keyboards/xd87/readme.md b/keyboards/xd87/readme.md new file mode 100644 index 0000000000..0b9389740d --- /dev/null +++ b/keyboards/xd87/readme.md @@ -0,0 +1,26 @@ +# XD87 + +![XD87](https://i.imgur.com/qVyOies.jpg) + + +- Keyboard Maintainer: [Alexander Fougner](https://github.com/fougner) +- Hardware Supported: XD87 PCB v1.1 +- Hardware Availability: + - [KPrepublic.com](https://kprepublic.com/products/xd87-xd87-xd80-custom-mechanical-keyboard-kit80-supports-tkg-tools-support-underglow-rgb-pcb-programmed-gh80-kle) + - [AliExpress](https://www.aliexpress.com/item/xd87-XD87-XD80-Custom-Mechanical-Keyboard-Kit80-Supports-TKG-TOOLS-Support-Underglow-RGB-PCB-programmed-gh80/32892540743.html) + +Make example for this keyboard (after setting up your build environment): + + make xd87:default + +It also supports the tkl_ansi and tkl_iso community layouts: + + # Build firmware with ANSI layout + make xd87:default_tkl_ansi + # Build firmware with ISO layout + make xd87:default_tkl_iso + + +The keyboard can be reset to bootloader by using bootmagic (space+b by default) or short out the small connector between the Delete and End keys. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/xd87/rules.mk b/keyboards/xd87/rules.mk new file mode 100644 index 0000000000..39540e701d --- /dev/null +++ b/keyboards/xd87/rules.mk @@ -0,0 +1,84 @@ +# MCU name +#MCU = at90usb1286 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# atmega32a bootloadHID +BOOTLOADER = atmel-dfu + + +# If you don't know the bootloader type, then you can specify the +# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +# OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = yes # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config) +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) + +# Supported layouts +LAYOUTS = tkl_ansi tkl_iso diff --git a/keyboards/xd87/xd87.c b/keyboards/xd87/xd87.c new file mode 100644 index 0000000000..da07c71d88 --- /dev/null +++ b/keyboards/xd87/xd87.c @@ -0,0 +1,43 @@ +/* Copyright 2018 Alexander Fougner + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "xd87.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + led_set_user(usb_led); +} diff --git a/keyboards/xd87/xd87.h b/keyboards/xd87/xd87.h new file mode 100644 index 0000000000..c4df290a3b --- /dev/null +++ b/keyboards/xd87/xd87.h @@ -0,0 +1,70 @@ +/* Copyright 2018 Alexander Fougner + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#ifndef XD87_H +#define XD87_H + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K3E, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4E, K4F, K4G, \ + K50, K51, K52, K55, K58, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ +/* 0 1 2 3 4 5 6 7 8 9 A B C D E F G */ \ +/* 0 */ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ +/* 1 */ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ +/* 2 */ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ +/* 3 */ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ +/* 4 */ { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4E, K4F, K4G }, \ +/* 5 */ { K50, K51, K52, KC_NO, KC_NO, K55, KC_NO, KC_NO, K58, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G } \ +} + +#define LAYOUT_tkl_ansi( \ + K00, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K01, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4F, \ + K50, K51, K52, K58, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) LAYOUT_all( \ + K00, KC_NO, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, KC_NO, K1D, KC_NO, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, \ + K40, KC_NO, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, KC_NO, KC_NO, K4F, KC_NO, \ + K50, K51, K52, KC_NO, K58, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) + +#define LAYOUT_tkl_iso( \ + K00, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4F, \ + K50, K51, K52, K58, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) LAYOUT_all( \ + K00, KC_NO, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, KC_NO, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, KC_NO, KC_NO, K4F, KC_NO, \ + K50, K51, K52, KC_NO, K58, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) + +#endif \ No newline at end of file diff --git a/layouts/default/tkl_iso/default_tkl_iso/keymap.c b/layouts/default/tkl_iso/default_tkl_iso/keymap.c index f29ef2267f..eb4c48d657 100644 --- a/layouts/default/tkl_iso/default_tkl_iso/keymap.c +++ b/layouts/default/tkl_iso/default_tkl_iso/keymap.c @@ -5,7 +5,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, 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, 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_DEL, KC_END, KC_PGDN, - 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_NUBS, KC_ENT, + 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_NUHS, KC_ENT, 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, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ) \ -- cgit v1.2.3 From b11a776cef1d5e26e435ed6b4a12711c965abeb6 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Fri, 26 Oct 2018 17:14:50 -0700 Subject: Keymap: Update userspace (I want my Hacktoberfest shirt!) (#4252) * use ctl_t * spruce up readme and add a changelog * add comment about using CTL_T * add more description * use RSFT_T so I can still have a right shift key even on the _AL layer * add config.h for rgblight_sleep * update readme to talk about rgblight_sleep * update changelog with new changes --- layouts/community/60_ansi/mechmerlin-ansi/keymap.c | 2 +- .../mechmerlin-split/keymap.c | 2 +- users/mechmerlin/changelog.md | 14 ++++++++ users/mechmerlin/config.h | 5 +++ users/mechmerlin/mechmerlin.h | 4 +-- users/mechmerlin/readme.md | 41 ++++++++++++++++++++-- 6 files changed, 62 insertions(+), 6 deletions(-) create mode 100644 users/mechmerlin/changelog.md create mode 100644 users/mechmerlin/config.h (limited to 'layouts') diff --git a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c index e48fddea46..4128c4cf2d 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c +++ b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, 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_UP, \ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT_T(KC_UP), \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c index 5ec005162f..2464dcaa70 100644 --- a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c +++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_NO, 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, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT_T(KC_UP), KC_TRNS, \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; diff --git a/users/mechmerlin/changelog.md b/users/mechmerlin/changelog.md new file mode 100644 index 0000000000..11b3ba708f --- /dev/null +++ b/users/mechmerlin/changelog.md @@ -0,0 +1,14 @@ +# Changelog +All notable changes to my userspace will be documented in this file. + +## [0.1.1] - 2018-10-26 +### Added +- Added a changelog, aka THIS VERY FILE! +- Added `config.h` to userspace for `RGBLIGHT_SLEEP` feature. + +### Changed +- Spruced up the readme file to better explain the things I use in my keymap for would be keymap snoopers. Also useful as an example when people ask. +- Use `CTL_T` instead of `MT` for my custom `KC_CTCP` keycode as it was causing issues on some boards. + +## [0.1.0] - 2018-08-31 +Initial usage of userspaces! diff --git a/users/mechmerlin/config.h b/users/mechmerlin/config.h new file mode 100644 index 0000000000..3d58c230af --- /dev/null +++ b/users/mechmerlin/config.h @@ -0,0 +1,5 @@ +#pragma once + +#ifdef RGBLIGHT_ENABLE +#define RGBLIGHT_SLEEP +#endif // RGBLIGHT_ENABLE diff --git a/users/mechmerlin/mechmerlin.h b/users/mechmerlin/mechmerlin.h index c140ac70c9..6b4d50edc8 100644 --- a/users/mechmerlin/mechmerlin.h +++ b/users/mechmerlin/mechmerlin.h @@ -10,8 +10,8 @@ enum userspace_layers { // Enum of custom keycodes defined in process_record_user enum keycodes { - KC_FNX, // Hold for FN layer, tap to toggle ARROWS layer. + KC_FNX, // Hold for FN layer, tap to toggle ARROWS layer. }; // Custom #defined keycodes -#define KC_CTCP MT(KC_LCTL, KC_CAPS) +#define KC_CTCP CTL_T(KC_CAPS) diff --git a/users/mechmerlin/readme.md b/users/mechmerlin/readme.md index 6a76dd2a9d..1e86a64107 100644 --- a/users/mechmerlin/readme.md +++ b/users/mechmerlin/readme.md @@ -1,3 +1,40 @@ -# MechMerlin's Userspace +# MechMerlin's Userspace v0.1.1 -This is a collection of my most commonly used QMK functions +This is a collection of my most commonly used QMK features. + +A majority of my keyboards are smaller than 75%, ANSI, and staggered. + +## Layers +---- + +### _BL (Base Layer) +Typical standard QWERTY keymap. + +### _FL (Function Layer) +This layer is commonly accessed via `MO(_FL)` on the base layer. It consists of your typical function key F1 through F12 and some RGB and Backlight controls. + +### _AL (Arrow Layer) +This layer is only present on my 60% boards. I habitually use the bottom right modifiers as arrows. + +### _CL (Control Layer) +This is not defined in here as it's present only on `LAYOUT_66` boards, or to be specific, my clueboard. It currently uses the default clueboard controls. + +## Custom Keycodes +---- + +### KC_FNX (Fn Extended) + +`KC_FNX` functions as a hold for `MO(X)` and tap for `TG(Y)`. Layer X and Y are different layers. + +It is used primarily on my `LAYOUT_60_ansi` boards as my regular toggle (the 1u key to the right of right shift), is not present there. + +### KC_CTCP (Control Caps) + +This is just a wrapper for `CTL_T(KC_CAPS)`. This is a hold for control and tap for caps lock. + +## QMK Features +---- + +### RGBLIGHT_SLEEP + +Ensures that when my computer is in sleep mode, the keyboard underglow lights will also be off. -- cgit v1.2.3 From 2abb29402a85675617d07111cbdf5502fd384572 Mon Sep 17 00:00:00 2001 From: Guido Bartolucci Date: Sun, 28 Oct 2018 11:29:37 -0400 Subject: Keymap: Updates to guidoism layout (#4262) * Initial commit of guidoism * created movement layer * movement layer works! * removed unnecessary layers * moved enter key up and recreated caps lock * cleaned up * num pad * checkpoint * checkpoint * checkpoint * Added num pad * changed max power draw so i can use this on ipad * move around quotes * added tri layer for a homed numpad * moved layout to new style * Update readme.md * Update readme.md * Update readme.md * Update readme.md * added keys to unicode conversion * removed adjust layer since its not used anymore * moved esc to seperate key * tweaked python * checkpoint * new code put into function * new code put into function * cleanup * cleanup * new code works perfect * removed old code * removed old code * generate_c.py now replaces code within keymap.c * added function layer * updated readme * updated readme * updated readme * updates readme * updates readme * updates readme * Tweaks based on CR * Remove old guidoism * Use MO(_FUNCTION) directly --- keyboards/planck/keymaps/guidoism/config.h | 42 ---- keyboards/planck/keymaps/guidoism/keymap.c | 253 --------------------- keyboards/planck/keymaps/guidoism/readme.md | 2 - keyboards/planck/keymaps/guidoism/rules.mk | 0 layouts/community/ortho_4x12/guidoism/config.h | 22 +- .../community/ortho_4x12/guidoism/generate_c.py | 104 +++++---- .../community/ortho_4x12/guidoism/guidoism.json | 2 +- layouts/community/ortho_4x12/guidoism/keymap.c | 149 +++++++++--- layouts/community/ortho_4x12/guidoism/keys.json | 29 +-- layouts/community/ortho_4x12/guidoism/readme.md | 63 +++-- 10 files changed, 242 insertions(+), 424 deletions(-) delete mode 100644 keyboards/planck/keymaps/guidoism/config.h delete mode 100644 keyboards/planck/keymaps/guidoism/keymap.c delete mode 100644 keyboards/planck/keymaps/guidoism/readme.md delete mode 100644 keyboards/planck/keymaps/guidoism/rules.mk (limited to 'layouts') diff --git a/keyboards/planck/keymaps/guidoism/config.h b/keyboards/planck/keymaps/guidoism/config.h deleted file mode 100644 index a1635f2bab..0000000000 --- a/keyboards/planck/keymaps/guidoism/config.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "config_common.h" - -#ifdef AUDIO_ENABLE - #define STARTUP_SONG SONG(PLANCK_SOUND) - // #define STARTUP_SONG SONG(NO_SOUND) - - #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ - SONG(COLEMAK_SOUND), \ - SONG(DVORAK_SOUND) \ - } -#endif - -#define MUSIC_MASK (keycode != KC_NO) - -/* - * MIDI options - */ - -/* Prevent use of disabled MIDI features in the keymap */ -//#define MIDI_ENABLE_STRICT 1 - -/* enable basic MIDI features: - - MIDI notes can be sent when in Music mode is on -*/ - -#define MIDI_BASIC - -/* enable advanced MIDI features: - - MIDI notes can be added to the keymap - - Octave shift and transpose - - Virtual sustain, portamento, and modulation wheel - - etc. -*/ -//#define MIDI_ADVANCED - -/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ -//#define MIDI_TONE_KEYCODE_OCTAVES 2 - -#endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/guidoism/keymap.c b/keyboards/planck/keymaps/guidoism/keymap.c deleted file mode 100644 index d644ac9709..0000000000 --- a/keyboards/planck/keymaps/guidoism/keymap.c +++ /dev/null @@ -1,253 +0,0 @@ -/* Copyright 2015-2017 Jack Humbert - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#pragma message "You may need to add LAYOUT_planck_grid to your keymap layers - see default for an example" -#include "planck.h" -#include "action_layer.h" - -extern keymap_config_t keymap_config; - -enum planck_layers { - _QWERTY, - _LOWER, - _RAISE, - _MOVEMENT, - _NUMPAD, - _CODE, - _ADJUST -}; - -enum planck_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - MOVEMENT, - NUMPAD, - CODE, - BACKLIT -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * ,-----------------------------------------------------------------------------------. - * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | S | D | F | G | H | J | K | L | ; | " | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Move |Numpad| Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_QWERTY] = { - {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, - // {KC_ESC, LT(MOVEMENT, KC_A), KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT}, - // {KC_ESC, MEH_T(KC_A), KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT}, - {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT}, - {LSFT_T(KC_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT}, - {MOVEMENT, NUMPAD, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LPRN, KC_RPRN, KC_LCBR, KC_RCBR} -}, - -/* Lower - * ,-----------------------------------------------------------------------------------. - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_LOWER] = { - {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, - {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, - {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, - -/* Raise - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_RAISE] = { - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, - {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, - -/* Movement - * ,-----------------------------------------------------------------------------------. - * | | | | | | | Home | PgUp | Up | PgDn | End | | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | | | | | | Left | Down | Right| | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_MOVEMENT] = { - {_______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_UP, KC_PGDN, KC_END, _______}, - {_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} -}, - -/* Numpad - * ,-----------------------------------------------------------------------------------. - * | | | | | | | | | 7 | 8 | 9 | / | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | | | | | | | 4 | 5 | 6 | * | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | 1 | 2 | 3 | - | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | 0 | = | + | - * `-----------------------------------------------------------------------------------' -[_NUMPAD] = { - {_______, _______, _______, _______, _______, _______, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH}, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_ASTERISK}, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_MINUS}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_0, KC_KP_EQUAL, KC_KP_PLUS} -}, - */ - -/* Numpad - */ -[_NUMPAD] = { - {_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_0, KC_DOT} -}, - -/* Code - * ,-----------------------------------------------------------------------------------. - * | | | | | | | | | | | | | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_CODE] = { - {_______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, KC_LPRN, KC_RPRN, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} -}, - -/* Adjust (Lower + Raise) - * ,-----------------------------------------------------------------------------------. - * | | Reset| | | | | | | | | | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty| | | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_ADJUST] = { - {_______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL }, - {_______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______}, - {_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, } - -} - -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - print("mode just switched to qwerty and this is a huge string\n"); - set_single_persistent_default_layer(_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case MOVEMENT: - if (record->event.pressed) { - layer_on(_MOVEMENT); - } else { - layer_off(_MOVEMENT); - } - return false; - break; - case NUMPAD: - if (record->event.pressed) { - layer_on(_NUMPAD); - } else { - layer_off(_NUMPAD); - } - return false; - break; - case CODE: - if (record->event.pressed) { - layer_on(_CODE); - } else { - layer_off(_CODE); - } - return false; - break; - case BACKLIT: - if (record->event.pressed) { - register_code(KC_RSFT); - #ifdef BACKLIGHT_ENABLE - backlight_step(); - #endif - PORTE &= ~(1<<6); - } else { - unregister_code(KC_RSFT); - PORTE |= (1<<6); - } - return false; - break; - } - return true; -} diff --git a/keyboards/planck/keymaps/guidoism/readme.md b/keyboards/planck/keymaps/guidoism/readme.md deleted file mode 100644 index de9680b498..0000000000 --- a/keyboards/planck/keymaps/guidoism/readme.md +++ /dev/null @@ -1,2 +0,0 @@ -# The Default Planck Layout - diff --git a/keyboards/planck/keymaps/guidoism/rules.mk b/keyboards/planck/keymaps/guidoism/rules.mk deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/layouts/community/ortho_4x12/guidoism/config.h b/layouts/community/ortho_4x12/guidoism/config.h index 19b71b07ee..e22f298035 100644 --- a/layouts/community/ortho_4x12/guidoism/config.h +++ b/layouts/community/ortho_4x12/guidoism/config.h @@ -18,27 +18,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include QMK_KEYBOARD_CONFIG_H +#pragma once #define IGNORE_MOD_TAP_INTERRUPT #define USB_MAX_POWER_CONSUMPTION 50 - -#ifndef LAYOUT_planck_mit -#define LAYOUT_planck_mit( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ -) \ - LAYOUT_ortho_4x12( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b \ - ) -#endif - -#endif diff --git a/layouts/community/ortho_4x12/guidoism/generate_c.py b/layouts/community/ortho_4x12/guidoism/generate_c.py index 7876bee68b..5bee576084 100644 --- a/layouts/community/ortho_4x12/guidoism/generate_c.py +++ b/layouts/community/ortho_4x12/guidoism/generate_c.py @@ -1,38 +1,29 @@ import itertools import json -from pprint import pprint as pp +import os.path +import re -layers = dict(enumerate(['_QWERTY', '_LOWER', '_RAISE', '_MOVEMENT', '_NUMPAD'])) -key_names = {('MO(%d)' % i): layers.get(i).strip('_') for i in layers.keys()} +KEYMAP_C = """/* {0} +{1} +*/ +[{2}] = {3}( + {4}) +""" -unicodes = { - "": "next", - "": "vol-", - "": "vol+", - "": "play", -} +README_MD = """## {0} +``` +{1} +``` +""" -d = json.load(open('layouts/community/ortho_4x12/guidoism/guidoism.json')) +base = os.path.dirname(__file__) -def grouper(iterable, n): - args = [iter(iterable)] * n - return itertools.zip_longest(*args, fillvalue='') +layer_names = dict(enumerate(['_QWERTY', '_LOWER', '_RAISE', '_MOVEMENT', '_NUMPAD', '_FUNCTION'])) +layer_name = {('MO(%d)' % i): layer_names.get(i).strip('_') for i in layer_names.keys()} -def truthy(s): - return [a for a in s if a] +keys = json.load(open(os.path.join(base, 'keys.json'))) -def just(s, n): - return [a.center(n*2+1 if len(s) == 11 and i == 5 else n) for i, a in enumerate(s)] - -def replace(s): - return [key_names.get(a, a) for a in s] - -def layer(i, l): - n = max(len(s) for s in l) - rows = [', '.join(replace(truthy(row))) for row in grouper(l, 12)] - return '[%s] = %s(\n%s)' % (layers[i], d['layout'], ',\n'.join(rows)) - -print(',\n\n'.join(layer(i, l) for i, l in enumerate(d['layers']))) +d = json.load(open(os.path.join(base, 'guidoism.json'))) def surround(s, a, b, c): return a + b.join(s) + c @@ -40,20 +31,45 @@ def surround(s, a, b, c): def pattern(cell, table): return ['─'*cell for i in range(table)] -keys = json.load(open('layouts/community/ortho_4x12/guidoism/keys.json')) - -def layer2(i, l): - def replace(s): - s = [keys.get(a, a) for a in s] - return [unicodes.get(a, a) for a in s] - n = max(len(s) for s in l) - return [surround(just(replace(truthy(row)), 5), '│', '│', '│') for row in grouper(l, 12)] - -for i, l in enumerate(d['layers']): - print(surround(pattern(5, 12), '┌', '┬', '┐')) - for n, row in enumerate(layer2(i, l)): - print(row) - if n < 3: - print(surround(pattern(5, 12), '├', '┼', '┤')) - else: - print(surround(pattern(5, 12), '└', '┴', '┘')) +top = surround(pattern(5, 12), '┌', '┬', '┐') +mid = surround(pattern(5, 12), '├', '┼', '┤') +bottom = surround(pattern(5, 12), '└', '┴', '┘') + +from more_itertools import chunked, intersperse, interleave_longest + +def uni(k): + return keys.get(k, k).lower().center(5) + +def c_layout(i, definition, template): + c_name = layer_names[i] + pretty_name = c_name.strip('_').capitalize() + layout = d['layout'] + + surround = lambda s: ''.join(interleave_longest(['│']*(len(s)+1), s)) + layer = list(map(uni, definition)) + layer[41] = layer[41].center(11) + layer = chunked(layer, 12) + rows = intersperse(mid, map(surround, layer)) + pretty = '\n'.join(itertools.chain([top], rows, [bottom])) + + surround = lambda s: ', '.join(s) + layer = list(map(lambda k: layer_name.get(k, k), definition)) + layer = chunked(layer, 12) + rows = map(surround, layer) + c_layer = ',\n '.join(itertools.chain([], rows, [])) + + return template.format(pretty_name, pretty, c_name, layout, c_layer) + +start = '// START_REPLACEMENT\n' +end = '// END_REPLACEMENT\n' +replacement = start + ',\n\n'.join(c_layout(i, l, KEYMAP_C) for i, l in enumerate(d['layers'])) + end +keymap = os.path.join(base, 'keymap.c') +existing = open(keymap).read() +r = re.compile(r'// START_REPLACEMENT.*// END_REPLACEMENT', re.DOTALL) +open(keymap, 'w').write(r.sub(replacement, existing)) + +replacement = '## Current Configuration\n\n' + '\n\n'.join(c_layout(i, l, README_MD) for i, l in enumerate(d['layers'])) +keymap = os.path.join(base, 'readme.md') +existing = open(keymap).read() +r = re.compile(r'## Current Configuration.*', re.DOTALL) +open(keymap, 'w').write(r.sub(replacement, existing)) diff --git a/layouts/community/ortho_4x12/guidoism/guidoism.json b/layouts/community/ortho_4x12/guidoism/guidoism.json index fd287cf60e..6a4364c6be 100644 --- a/layouts/community/ortho_4x12/guidoism/guidoism.json +++ b/layouts/community/ortho_4x12/guidoism/guidoism.json @@ -1 +1 @@ -{"keyboard":"planck/rev4","keymap":"guidoism","layout":"LAYOUT_planck_mit","layers":[["KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSPC","LCTL_T(KC_ESC)","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_COLN","KC_ENT","LSFT_T(KC_CAPS)","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_NO","MO(3)","KC_NO","KC_LALT","KC_LGUI","MO(1)","LSFT_T(KC_SPC)","MO(2)","KC_RGUI","KC_RALT","KC_SCLN","KC_NO"],["KC_TILD","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_CIRC","KC_AMPR","KC_ASTR","KC_NO","KC_NO","KC_UNDO","KC_TRNS","KC_NO","KC_CUT","KC_COPY","KC_PSTE","KC_NO","KC_NO","KC_UNDS","KC_PLUS","KC_DQUO","KC_QUOT","KC_PIPE","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_MNXT","KC_VOLD","KC_VOLU","KC_MPLY"],["KC_GRV","KC_P1","KC_P2","KC_P3","KC_P4","KC_P5","KC_P6","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_LBRC","KC_RBRC","KC_LPRN","KC_RPRN","KC_NO","KC_NO","KC_PMNS","KC_PEQL","KC_NO","KC_NO","KC_BSLS","KC_TRNS","KC_LT","KC_GT","KC_LCBR","KC_RCBR","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["RESET","DEBUG","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PGUP","KC_UP","KC_PGDN","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_HOME","KC_NO","KC_END","KC_NO","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_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P7","KC_P8","KC_P9","KC_PSLS","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P4","KC_P5","KC_P6","KC_PAST","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P1","KC_P2","KC_P3","KC_PMNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_PCMM","KC_P0","KC_PDOT","KC_PPLS","KC_TRNS"]]} +{"keyboard":"planck/rev4","keymap":"guidoism","layout":"LAYOUT_planck_mit","layers":[["KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSPC","KC_LCTL","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_COLN","KC_ENT","KC_LSFT","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_NO","MO(3)","KC_ESC","KC_LALT","KC_LGUI","MO(1)","LSFT_T(KC_SPC)","MO(2)","KC_RGUI","KC_RALT","KC_SCLN","MO(5)"],["KC_TILD","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_CIRC","KC_AMPR","KC_ASTR","KC_NO","KC_NO","KC_UNDO","KC_TRNS","KC_NO","KC_CUT","KC_COPY","KC_PSTE","KC_NO","KC_NO","KC_UNDS","KC_PLUS","KC_DQUO","KC_QUOT","KC_PIPE","KC_CAPS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_MNXT","KC_VOLD","KC_VOLU","KC_MPLY"],["KC_GRV","KC_P1","KC_P2","KC_P3","KC_P4","KC_P5","KC_P6","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_LBRC","KC_RBRC","KC_LPRN","KC_RPRN","KC_NO","KC_NO","KC_PMNS","KC_PEQL","KC_NO","KC_NO","KC_BSLS","KC_TRNS","KC_LT","KC_GT","KC_LCBR","KC_RCBR","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["RESET","DEBUG","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PGUP","KC_UP","KC_PGDN","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_HOME","KC_NO","KC_END","KC_NO","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_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PERC","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_DLR","KC_P4","KC_P5","KC_P6","KC_PDOT","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P0","KC_P1","KC_P2","KC_P3","KC_PCMM","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_NO","KC_P0","KC_NO","KC_NO","KC_TRNS"],["KC_NO","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS"]]} \ No newline at end of file diff --git a/layouts/community/ortho_4x12/guidoism/keymap.c b/layouts/community/ortho_4x12/guidoism/keymap.c index 093fe140b0..2027e2bfa4 100644 --- a/layouts/community/ortho_4x12/guidoism/keymap.c +++ b/layouts/community/ortho_4x12/guidoism/keymap.c @@ -1,6 +1,4 @@ #include QMK_KEYBOARD_H -#include "action_layer.h" -#include "eeconfig.h" extern keymap_config_t keymap_config; @@ -10,6 +8,7 @@ enum planck_layers { _RAISE, _MOVEMENT, _NUMPAD, + _FUNCTION, }; enum planck_keycodes { @@ -20,37 +19,125 @@ enum planck_keycodes { NUMPAD, }; +#define FUNCTION MO(_FUNCTION) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT_planck_mit( -KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, -LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_ENT, -LSFT_T(KC_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, -MOVEMENT, KC_NO, KC_LALT, KC_LGUI, LOWER, LSFT_T(KC_SPC), RAISE, KC_RGUI, KC_RALT, KC_SCLN, KC_NO), - - [_LOWER] = LAYOUT_planck_mit( -KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_NO, KC_NO, KC_UNDO, -KC_TRNS, KC_NO, KC_CUT, KC_COPY, KC_PSTE, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_DQUO, KC_QUOT, KC_PIPE, -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, -KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), - - [_RAISE] = LAYOUT_planck_mit( -KC_GRV, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, -KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_PMNS, KC_PEQL, KC_NO, KC_NO, KC_BSLS, -KC_TRNS, KC_LT, KC_GT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, -KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [_MOVEMENT] = LAYOUT_planck_mit( -RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_TRNS, -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS, -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_TRNS, -KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [_NUMPAD] = LAYOUT_planck_mit( -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_TRNS, -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P4, KC_P5, KC_P6, KC_PAST, KC_TRNS, -KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_PMNS, KC_TRNS, -KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PCMM, KC_P0, KC_PDOT, KC_PPLS, KC_TRNS) +// START_REPLACEMENT +/* Qwerty +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_QWERTY] = LAYOUT_planck_mit( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, + MOVEMENT, KC_ESC, KC_LALT, KC_LGUI, LOWER, LSFT_T(KC_SPC), RAISE, KC_RGUI, KC_RALT, KC_SCLN, FUNCTION) +, + +/* Lower +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ caps│ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_LOWER] = LAYOUT_planck_mit( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_NO, KC_NO, KC_UNDO, + KC_TRNS, KC_NO, KC_CUT, KC_COPY, KC_PSTE, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_DQUO, KC_QUOT, KC_PIPE, + KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY) +, + +/* Raise +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ < │ > │ { │ } │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_RAISE] = LAYOUT_planck_mit( + KC_GRV, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, + KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_PMNS, KC_PEQL, KC_NO, KC_NO, KC_BSLS, + KC_TRNS, KC_LT, KC_GT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +, + +/* Movement +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ home│ │ end │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_MOVEMENT] = LAYOUT_planck_mit( + RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +, + +/* Numpad +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ 0 │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_NUMPAD] = LAYOUT_planck_mit( + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PERC, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DLR, KC_P4, KC_P5, KC_P6, KC_PDOT, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P0, KC_P1, KC_P2, KC_P3, KC_PCMM, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_P0, KC_NO, KC_NO, KC_TRNS) +, + +/* Function +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_FUNCTION] = LAYOUT_planck_mit( + KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS) +// END_REPLACEMENT + + + + + + + }; diff --git a/layouts/community/ortho_4x12/guidoism/keys.json b/layouts/community/ortho_4x12/guidoism/keys.json index 762deb7062..791119b4f2 100644 --- a/layouts/community/ortho_4x12/guidoism/keys.json +++ b/layouts/community/ortho_4x12/guidoism/keys.json @@ -102,8 +102,8 @@ "KC_SLASH": "/", "KC_NUBS": "/", "KC_NUHS": "#", - "KC_CAPSLOCK": "Caps Lock", - "KC_CAPS": "Caps Lock", + "KC_CAPSLOCK": "Caps", + "KC_CAPS": "Caps", "KC_LCTRL": "Ctrl", "KC_LCTL": "Ctrl", "KC_LSHIFT": "\u21e7", @@ -181,26 +181,26 @@ "KC_WAKE": "System Wake", "KC_STOP": "Stop", "KC__MUTE": "Mute (macOS)", - "KC__VOLUP": "", - "KC__VOLDOWN": "", + "KC__VOLUP": "vol+", + "KC__VOLDOWN": "vol-", "KC_AUDIO_MUTE": "Mute", "KC_MUTE": "Mute", - "KC_AUDIO_VOL_UP": "", - "KC_VOLU": "", - "KC_AUDIO_VOL_DOWN": "", - "KC_VOLD": "", - "KC_MEDIA_NEXT_TRACK": "", - "KC_MNXT": "", + "KC_AUDIO_VOL_UP": "vol+", + "KC_VOLU": "vol+", + "KC_AUDIO_VOL_DOWN": "vol-", + "KC_VOLD": "vol-", + "KC_MEDIA_NEXT_TRACK": "next", + "KC_MNXT": "next", "KC_MEDIA_PREV_TRACK": "Previous Track (Windows)", "KC_MPRV": "Previous Track (Windows)", - "KC_MEDIA_FAST_FORWARD": "", - "KC_MFFD": "", + "KC_MEDIA_FAST_FORWARD": "next", + "KC_MFFD": "next", "KC_MEDIA_REWIND": "Previous Track (macOS)", "KC_MRWD": "Previous Track (macOS)", "KC_MEDIA_STOP": "Stop Track", "KC_MSTP": "Stop Track", - "KC_MEDIA_PLAY_PAUSE": "", - "KC_MPLY": "", + "KC_MEDIA_PLAY_PAUSE": "play", + "KC_MPLY": "play", "KC_NUMLOCK": "Keypad Num Lock and Clear", "KC_NLCK": "Keypad Num Lock and Clear", "KC_SLSH": "/", @@ -295,6 +295,7 @@ "MO(3)": "mov", "MO(1)": "lower", "MO(2)": "raise", + "MO(5)": "fn", "LSFT_T(KC_SPC)": "sp/sh", "KC_TRNS": "", "KC_PSTE": "Paste", diff --git a/layouts/community/ortho_4x12/guidoism/readme.md b/layouts/community/ortho_4x12/guidoism/readme.md index 7137ffd141..540db64e85 100644 --- a/layouts/community/ortho_4x12/guidoism/readme.md +++ b/layouts/community/ortho_4x12/guidoism/readme.md @@ -1,37 +1,56 @@ # Guido's Planck Keyboard Layout +I've written a script to convert the json file from the +[QMK Configurator](https://config.qmk.fm) to the C macros +and a pretty form the comments. + +First import the json file in this directory into the configurator, +make any changes, export the file and then run this: + + mv ~/Downloads/guidoism.json layouts/community/ortho_4x12/guidoism/ && python3 layouts/community/ortho_4x12/guidoism/generate_c.py && make planck:guidoism:dfu + +TODO: Move running of generate_c.py to makefile so I just need to run `make planck:guidoism:dfu` + +Note that the pretty forms of the keys are defined in another json +file and are made for my specific board. You made need to update this +file to get the pretty forms to look right. + * Left palm to the `mov` key gets you the `Move` layer * Right thumb on the `raise` key gets you the various programming brackets and parens on your left hand * Left palm on `mov` key and left thumb on `lower` key gets you a numpad on your right hand * Shift with the spacebar * Left pinky is control on hold and escape on tap -* Left shift is caps lock on double-tap +## Current Configuration + +## Qwerty ``` ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ │ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ c/e │ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ +│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ │ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ mov │ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ │ +│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ ``` + ## Lower ``` ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ Undo│ +│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ Cut │ Copy│Paste│ │ │ _ │ + │ " │ ' │ | │ +│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ │ +│ caps│ │ │ │ │ │ │ │ │ │ │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ │ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ ``` + ## Raise ``` ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ @@ -45,32 +64,44 @@ └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ ``` -## Move + +## Movement ``` ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│RESET│DEBUG│ │ │ │ │ │ PgUp│ ↑ │ PgDn│ │ │ +│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ │ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ Home│ │ End │ │ │ +│ │ │ │ │ │ │ │ home│ │ end │ │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ │ │ │ │ │ │ │ │ │ │ │ │ └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ ``` + ## Numpad ``` ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ │ │ │ │ │ │ │ 7 │ 8 │ 9 │ / │ │ +│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ 4 │ 5 │ 6 │ * │ │ +│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ 1 │ 2 │ 3 │ - │ │ +│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ ├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ , │ 0 │ . │ + │ │ +│ │ │ │ │ │ │ │ 0 │ │ │ │ └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ ``` -Use the [QMK Configurator](https://config.qmk.fm/#/planck/rev4/LAYOUT_planck_mit) -to edit the guidoism.json file. Then update it and run `python3 layouts/community/ortho_4x12/guidoism/generate_c.py` -to get the update C structs and Markdown for this file. + +## Function +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` -- cgit v1.2.3 From 4df74f6058043cf37d997e8e93fc3526b29a13b3 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Wed, 24 Oct 2018 13:45:39 -0700 Subject: Minor updates to keymaps --- keyboards/crkbd/keymaps/drashna/keymap.c | 4 ++-- keyboards/crkbd/keymaps/drashna/rules.mk | 4 ++-- keyboards/iris/keymaps/drashna/keymap.c | 3 +-- keyboards/orthodox/keymaps/drashna/keymap.c | 2 +- layouts/community/ergodox/drashna/keymap.c | 3 +-- 5 files changed, 7 insertions(+), 9 deletions(-) (limited to 'layouts') diff --git a/keyboards/crkbd/keymaps/drashna/keymap.c b/keyboards/crkbd/keymaps/drashna/keymap.c index 49db492c4e..99dcdb4e17 100644 --- a/keyboards/crkbd/keymaps/drashna/keymap.c +++ b/keyboards/crkbd/keymaps/drashna/keymap.c @@ -28,8 +28,8 @@ enum crkbd_keycodes { LAYOUT_wrapper( \ KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ - KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ - LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE \ + OS_LSFT, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, CTL_T(K2A), OS_RSFT, \ + LT(_LOWER,KC_GRV), KC_SPC, LALT_T(KC_BSPC), KC_DEL, KC_ENT, RAISE \ ) #define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__) diff --git a/keyboards/crkbd/keymaps/drashna/rules.mk b/keyboards/crkbd/keymaps/drashna/rules.mk index a4e1deba86..ccf8e2b7c8 100644 --- a/keyboards/crkbd/keymaps/drashna/rules.mk +++ b/keyboards/crkbd/keymaps/drashna/rules.mk @@ -14,7 +14,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE @@ -23,9 +23,9 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # If you want to change the display of OLED, you need to change here SRC += ./lib/glcdfont.c \ ./lib/rgb_state_reader.c \ - ./lib/layer_state_reader.c \ ./lib/logo_reader.c \ ./lib/keylogger.c \ ./lib/host_led_state_reader.c \ + # ./lib/layer_state_reader.c \ # ./lib/mode_icon_reader.c \ # ./lib/timelogger.c \ diff --git a/keyboards/iris/keymaps/drashna/keymap.c b/keyboards/iris/keymaps/drashna/keymap.c index 60f41f9d98..21e3151c0f 100644 --- a/keyboards/iris/keymaps/drashna/keymap.c +++ b/keyboards/iris/keymaps/drashna/keymap.c @@ -12,7 +12,7 @@ KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, \ KC_TAB , K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSLS, \ KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ - KC_MLSF, CTL_T(K21), K22, K23, K24, K25, ALT_APP, OS_RGUI, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ + OS_LSFT, CTL_T(K21), K22, K23, K24, K25, OS_LALT, OS_RGUI, K26, K27, K28, K29, CTL_T(K2A), OS_RSFT, \ LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE \ ) #define LAYOUT_iris_base_wrapper(...) LAYOUT_iris_base(__VA_ARGS__) @@ -95,4 +95,3 @@ void matrix_init_keymap(void) { DDRB &= ~(1<<0); PORTB &= ~(1<<0); } - diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c index 25296ca4fd..545ad25dcd 100644 --- a/keyboards/orthodox/keymaps/drashna/keymap.c +++ b/keyboards/orthodox/keymaps/drashna/keymap.c @@ -38,7 +38,7 @@ uint8_t last_osm; ) \ LAYOUT_wrapper( \ KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ - KC_TAB, K11, K12, K13, K14, K15, ALT_APP, OS_LGUI, KC_LALT, OS_RGUI, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_TAB, K11, K12, K13, K14, K15, OS_LALT, OS_LGUI, OS_RALT, OS_RGUI, K16, K17, K18, K19, K1A, KC_QUOT, \ KC_MLSF, CTL_T(K21), K22, K23, K24, K25, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, K26, K27, K28, K29, CTL_T(K2A), KC_MRSF \ ) #define LAYOUT_orthodox_base_wrapper(...) LAYOUT_orthodox_base(__VA_ARGS__) diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index b9a2eb7a8f..518eaf0348 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -41,7 +41,7 @@ bool skip_leds = false; KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ KC_MLSF, CTL_T(K21), K22, K23, K24, K25, TG(_GAMEPAD), TG(_GAMEPAD), K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ KC_GRV, OSM(MOD_MEH),OSM(MOD_LGUI),KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_IRNY, \ - ALT_T(KC_APP), OSM(MOD_LGUI), OSM(MOD_RGUI), CTL_T(KC_ESCAPE), \ + OS_LALT, OS_LGUI, OS_RGUI, CTL_T(KC_ESCAPE), \ KC_HOME, KC_PGUP, \ LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) \ ) @@ -335,4 +335,3 @@ bool indicator_is_this_led_used_keyboard(uint8_t index) { return false; } } - -- cgit v1.2.3 From 80c04b29194a0023b8e47f3ac49ea248c8ec953d Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Sat, 3 Nov 2018 10:39:40 -0700 Subject: 5x5bt (#4333) * got bluetooth working * get rid of description on bluetooth * get rid of commented code used for testing * Update config.h --- layouts/community/ortho_4x12/wanleg/config.h | 7 ++----- layouts/community/ortho_5x15/wanleg/config.h | 20 ++++++++++++++------ layouts/community/ortho_5x15/wanleg/keymap.c | 25 +++++++++++++++++-------- layouts/community/ortho_5x15/wanleg/rules.mk | 9 ++++++++- users/wanleg/rules.mk | 6 ++++++ 5 files changed, 47 insertions(+), 20 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h index 2444b8b976..2b2072db22 100644 --- a/layouts/community/ortho_4x12/wanleg/config.h +++ b/layouts/community/ortho_4x12/wanleg/config.h @@ -1,5 +1,4 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#pragma once //QMK DFU settings (ProMicro boards with QMK bootloader) // set top left key as bootloader mode escape key on Lets Split rev2 @@ -30,8 +29,6 @@ #undef MATRIX_ROW_PINS #undef MATRIX_COL_PINS #define MATRIX_ROW_PINS { D1, D0, D4, C6 } -//last 4 elements of the column array are are not broken out on a ProMicro (included only to preserve array structure) +//last 4 elements of the column array are not broken out on a ProMicro (included only to preserve array structure) #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, B5, B4, E6, D7, F0, B7, D6, F1 } #endif - -#endif diff --git a/layouts/community/ortho_5x15/wanleg/config.h b/layouts/community/ortho_5x15/wanleg/config.h index 1043986f7a..1aeda2db4e 100644 --- a/layouts/community/ortho_5x15/wanleg/config.h +++ b/layouts/community/ortho_5x15/wanleg/config.h @@ -1,8 +1,16 @@ #pragma once -// set top left key as bootloader mode escape key on 5x5 75key layout -#if defined(KEYBOARD_5x5) && !defined(PRO_MICRO) -#define QMK_LED B0 -#define QMK_ESC_OUTPUT D7 // usually COL -#define QMK_ESC_INPUT B2 // usually ROW -#endif \ No newline at end of file +//5x5 powered by Adafruit Feather 32u4 Bluefruit LE +#if defined(KEYBOARD_5x5) && defined(BLUEFRUIT) + +//need to undefine standard 5x5 array before defining alternate Bluefruit array +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS +#define MATRIX_ROW_PINS { F7, F6, F5, D1, D0 } +//last 5 elements not tested +#define MATRIX_COL_PINS { C6, D7, B5, B6, B7, D6, C7, F0, F1, F4, B1, B2, B3, D2, D3 } + +//get rid of description - too long to show properly in Windows +#undef DESCRIPTION +#define DESCRIPTION +#endif diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c index df74241157..66b3ce018d 100644 --- a/layouts/community/ortho_5x15/wanleg/keymap.c +++ b/layouts/community/ortho_5x15/wanleg/keymap.c @@ -15,14 +15,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TD(RST_TAP_DANCE), GHERKIN50, KC_LALT, NUMPAD, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT ), -[PAD] = LAYOUT_ortho_5x5_wrapper( - _______, _______, _______, _______, _______, - _______________NUMPAD_Row__0_______________, _______, - _______________NUMPAD_Row__1_______________, _______, - _______________NUMPAD_Row__2_______________, _______, - KC_KP_0, TD(LYR50_TAP_DANCE), KC_KP_DOT, KC_PMNS, _______ -), - [GK50] = LAYOUT_ortho_5x10_wrapper( KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSPC, _______________Gherkin_Row_0_______________, @@ -31,6 +23,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TD(RST_TAP_DANCE), GHERKIN75, NUMPAD, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, KC_RALT, KC_RGUI ), +#if defined(BLUEFRUIT) +[PAD] = LAYOUT_ortho_5x5_wrapper( + _______, _______, _______, OUT_BT, OUT_USB, + _______________NUMPAD_Row__0_______________, _______, + _______________NUMPAD_Row__1_______________, _______, + _______________NUMPAD_Row__2_______________, _______, + KC_KP_0, TD(LYR50_TAP_DANCE), KC_KP_DOT, KC_PMNS, _______ +), +#else + [PAD] = LAYOUT_ortho_5x5_wrapper( + _______, _______, _______, _______, _______, + _______________NUMPAD_Row__0_______________, _______, + _______________NUMPAD_Row__1_______________, _______, + _______________NUMPAD_Row__2_______________, _______, + KC_KP_0, TD(LYR50_TAP_DANCE), KC_KP_DOT, KC_PMNS, _______ +), +#endif #else /* Gherkin 75 * .--------------------------------------------------------------------------------------------------------------------------------------. diff --git a/layouts/community/ortho_5x15/wanleg/rules.mk b/layouts/community/ortho_5x15/wanleg/rules.mk index e36226fb2e..bfc4c69d99 100644 --- a/layouts/community/ortho_5x15/wanleg/rules.mk +++ b/layouts/community/ortho_5x15/wanleg/rules.mk @@ -1 +1,8 @@ -SWAP_HANDS_ENABLE = no \ No newline at end of file +ifeq (,$(findstring yes,$(BLUEFRUIT))) + BLUETOOTH = AdafruitBLE + BLUETOOTH_ENABLE = yes + F_CPU = 8000000 + CONSOLE_ENABLE = no # Console for debug(+400) + COMMAND_ENABLE = no # Commands for debug and configuration + RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +endif \ No newline at end of file diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index 2a2a65cfea..e3e802b4a7 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -14,3 +14,9 @@ endif ifeq ($(strip $(PM)), yes) OPT_DEFS += -DPRO_MICRO endif + +#use alternate settings for boards using "Adafruit Feather 32u4 Bluefruit LE" instead of Micro +#example usage: make 5x5:wanleg BT=yes +ifeq ($(strip $(BT)), yes) + OPT_DEFS += -DBLUEFRUIT +endif \ No newline at end of file -- cgit v1.2.3 From f2101cfb6a2270345fe6235d4c36e2e0d49db528 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 5 Nov 2018 21:36:26 -0800 Subject: Update to drashna keymaps (#4365) * Consistency fixes and more eeprom defaults * Handle setting Unicode mode on eeprom reset better * Unicode EEPROM hack * Re-enable permissive hold and ignore mod tap * Set unicode input mode * More unicode stuff * more haaaaaacks * Attempted RGB Cleanup * Fix compiler issue * Add GitLab CI config for personal compiling * Add avr gcc version to GitLab CI script * Add rgblight init to matrix init --- layouts/community/ergodox/drashna/keymap.c | 2 +- layouts/community/ortho_4x12/drashna/config.h | 2 +- layouts/community/ortho_4x12/drashna/keymap.c | 52 +++++++++++++++++---------- users/drashna/.gitlab-ci.yml | 26 ++++++++++++++ users/drashna/config.h | 4 +-- users/drashna/drashna.c | 40 +++++++++++++-------- users/drashna/rgb_stuff.c | 35 +++++------------- 7 files changed, 98 insertions(+), 63 deletions(-) create mode 100644 users/drashna/.gitlab-ci.yml (limited to 'layouts') diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 518eaf0348..360a2d9c6d 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -40,7 +40,7 @@ bool skip_leds = false; KC_TAB, K01, K02, K03, K04, K05, TG(_DIABLO), TG(_DIABLO), K06, K07, K08, K09, K0A, KC_BSLS, \ KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ KC_MLSF, CTL_T(K21), K22, K23, K24, K25, TG(_GAMEPAD), TG(_GAMEPAD), K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ - KC_GRV, OSM(MOD_MEH),OSM(MOD_LGUI),KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_IRNY, \ + KC_GRV, OSM(MOD_MEH),OSM(MOD_LGUI),KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_SHRG, \ OS_LALT, OS_LGUI, OS_RGUI, CTL_T(KC_ESCAPE), \ KC_HOME, KC_PGUP, \ LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) \ diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h index b4c780cc11..f279651b63 100644 --- a/layouts/community/ortho_4x12/drashna/config.h +++ b/layouts/community/ortho_4x12/drashna/config.h @@ -18,7 +18,7 @@ #define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) // #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened) // #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -#define RGB_DISABLE_WHEN_USB_SUSPENDED false // turn off effects when suspended +// #define RGB_DISABLE_WHEN_USB_SUSPENDED false // turn off effects when suspended // #define RGB_MATRIX_SKIP_FRAMES 1 // number of frames to skip when displaying animations (0 is full effect) if not defined defaults to 1 // #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 // #define EECONFIG_RGB_MATRIX (uint32_t *)16 diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c index 108df69315..2a9e32cc88 100644 --- a/layouts/community/ortho_4x12/drashna/keymap.c +++ b/layouts/community/ortho_4x12/drashna/keymap.c @@ -17,6 +17,10 @@ #include QMK_KEYBOARD_H #include "drashna.h" +#ifdef RGB_MATRIX_ENABLE +extern bool g_suspend_state; +#endif + #ifdef BACKLIGHT_ENABLE enum planck_keycodes { BACKLIT = NEW_SAFE_RANGE, @@ -135,6 +139,15 @@ bool music_mask_user(uint16_t keycode) { #ifdef RGB_MATRIX_ENABLE +void suspend_power_down_keymap(void) +{ + rgb_matrix_set_suspend_state(true); +} + +void suspend_wakeup_init_keymap(void) +{ + rgb_matrix_set_suspend_state(false); +} void rgb_matrix_layer_helper (uint8_t red, uint8_t green, uint8_t blue, bool default_layer) { rgb_led led; @@ -152,25 +165,26 @@ void rgb_matrix_indicators_user(void) { uint8_t this_mod = get_mods(); uint8_t this_led = host_keyboard_leds(); uint8_t this_osm = get_oneshot_mods(); - - switch (biton32(layer_state)) { - case _RAISE: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, false); break; - case _LOWER: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, false); break; - case _ADJUST: - rgb_matrix_layer_helper(0xFF, 0x00, 0x00, false); break; - default: - switch (biton32(default_layer_state)) { - case _QWERTY: - rgb_matrix_layer_helper(0x00, 0xFF, 0xFF, true); break; - case _COLEMAK: - rgb_matrix_layer_helper(0xFF, 0x00, 0xFF, true); break; - case _DVORAK: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, true); break; - case _WORKMAN: - rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, true); break; - } + if (!g_suspend_state) { + switch (biton32(layer_state)) { + case _RAISE: + rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, false); break; + case _LOWER: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00, false); break; + case _ADJUST: + rgb_matrix_layer_helper(0xFF, 0x00, 0x00, false); break; + default: + switch (biton32(default_layer_state)) { + case _QWERTY: + rgb_matrix_layer_helper(0x00, 0xFF, 0xFF, true); break; + case _COLEMAK: + rgb_matrix_layer_helper(0xFF, 0x00, 0xFF, true); break; + case _DVORAK: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00, true); break; + case _WORKMAN: + rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, true); break; + } + } } switch (biton32(default_layer_state)) { diff --git a/users/drashna/.gitlab-ci.yml b/users/drashna/.gitlab-ci.yml new file mode 100644 index 0000000000..3c95ad8507 --- /dev/null +++ b/users/drashna/.gitlab-ci.yml @@ -0,0 +1,26 @@ +stages: + - build + +qmk_firmware: + stage: build + variables: + GIT_SUBMODULE_STRATEGY: recursive + tags: + - linux + image: ubuntu + before_script: + - apt-get update -qy + - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util diffutils gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip + - avr-gcc --version + script: + - make iris/rev2:drashna iris/rev2:drashna_old ergodox_ez:drashna viterbi/rev1:drashna orthodox/rev1:drashna orthodox/rev3:drashna crkbd:drashna planck/light:drashna + artifacts: + name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" + paths: + - ./*.hex + - ./*.bin + only: + - master + - drashna_keymaps + - merge-requests + - branches diff --git a/users/drashna/config.h b/users/drashna/config.h index 9d7d20add0..7e6a7d1c81 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -44,8 +44,8 @@ // and when this option isn't enabled, z rapidly followed by x // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT -#undef PERMISSIVE_HOLD -// #define TAPPING_FORCE_HOLD +#define PERMISSIVE_HOLD +//#define TAPPING_FORCE_HOLD //#define RETRO_TAPPING #define FORCE_NKRO diff --git a/users/drashna/drashna.c b/users/drashna/drashna.c index b2219e9aa7..4111d29314 100644 --- a/users/drashna/drashna.c +++ b/users/drashna/drashna.c @@ -20,6 +20,12 @@ along with this program. If not, see . #include "rgb_stuff.h" userspace_config_t userspace_config; +#if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + #define DRASHNA_UNICODE_MODE UC_WIN +#else + // set to 2 for UC_WIN, set to 4 for UC_WINC + #define DRASHNA_UNICODE_MODE 2 +#endif uint16_t copy_paste_timer; // Helper Functions @@ -154,19 +160,18 @@ void matrix_init_user(void) { userspace_config.raw = eeconfig_read_user(); -#ifdef BOOTLOADER_CATERINA - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); + #ifdef BOOTLOADER_CATERINA + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); -#endif + DDRB &= ~(1<<0); + PORTB &= ~(1<<0); + #endif -#if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) - if (eeprom_read_byte(EECONFIG_UNICODEMODE) != UC_WIN) { - set_unicode_input_mode(UC_WIN); - } -#endif //UNICODE_ENABLE + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(DRASHNA_UNICODE_MODE); + get_unicode_input_mode(); + #endif //UNICODE_ENABLE matrix_init_keymap(); } @@ -266,9 +271,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader if (!record->event.pressed) { uint8_t temp_mod = get_mods(); - clear_mods(); + uint8_t temp_osm = get_oneshot_mods(); + clear_mods(); clear_oneshot_mods(); send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); - if (temp_mod & MODS_SHIFT_MASK) { + if (temp_mod & MODS_SHIFT_MASK || temp_osm & MODS_SHIFT_MASK) { #if defined(__ARM__) send_string_with_delay_P(PSTR(":dfu-util"), 10); #elif defined(BOOTLOADER_DFU) @@ -282,7 +288,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #if defined(KEYBOARD_viterbi) send_string_with_delay_P(PSTR(":dfu"), 10); #endif - if (temp_mod & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } + if (temp_mod & MODS_CTRL_MASK || temp_osm & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); set_mods(temp_mod); } @@ -422,4 +428,10 @@ void eeconfig_init_user(void) { userspace_config.raw = 0; userspace_config.rgb_layer_change = true; eeconfig_update_user(userspace_config.raw); + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(DRASHNA_UNICODE_MODE); + get_unicode_input_mode(); + #else + eeprom_update_byte(EECONFIG_UNICODEMODE, DRASHNA_UNICODE_MODE); + #endif } diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index 9ad94c0c3d..b6de4d39e5 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -12,14 +12,6 @@ void rgblight_sethsv_default_helper(uint8_t index) { #endif // RGBLIGHT_ENABLE #ifdef INDICATOR_LIGHTS -uint8_t last_mod; -uint8_t last_led; -uint8_t last_osm; -uint8_t current_mod; -uint8_t current_led; -uint8_t current_osm; - - void set_rgb_indicators(uint8_t this_mod, uint8_t this_led, uint8_t this_osm) { if (userspace_config.rgb_layer_change && biton32(layer_state) == 0) { if (this_mod & MODS_SHIFT_MASK || this_led & (1< Date: Mon, 12 Nov 2018 15:04:12 -0500 Subject: Add rules.mk to ortho_4x12/buswerks keymap (#4405) * Added buswerks keymap * cleaned up comments on buswerks keymap * Added buswerks keymap readme.md * Fixed spelling in buswerks readme.md * Removed unnecessary includes, changed process_record_user to now use set_single_persistent_default_layer(), removed deprecated functions, and moved the audio ifdef block to config.h * Changed buswerks ortho_4x12 layout to accommodate 'MIT' layout * Updated README.md to reflect layout changes * update buswerks keymap * add buswerks tragicforce68 keymap --- keyboards/tragicforce68/keymaps/buswerks/keymap.c | 60 +++++++++++++++++++++++ layouts/community/ortho_4x12/buswerks/keymap.c | 56 +++++++++++++++------ layouts/community/ortho_4x12/buswerks/rules.mk | 9 ++++ 3 files changed, 109 insertions(+), 16 deletions(-) create mode 100644 keyboards/tragicforce68/keymaps/buswerks/keymap.c create mode 100644 layouts/community/ortho_4x12/buswerks/rules.mk (limited to 'layouts') diff --git a/keyboards/tragicforce68/keymaps/buswerks/keymap.c b/keyboards/tragicforce68/keymaps/buswerks/keymap.c new file mode 100644 index 0000000000..d74c0186d6 --- /dev/null +++ b/keyboards/tragicforce68/keymaps/buswerks/keymap.c @@ -0,0 +1,60 @@ +#include QMK_KEYBOARD_H + +#define _QWERTY 0 +#define _COLEMAK 1 +#define _FN1 2 + +#define WORD_L LALT(KC_LEFT) +#define WORD_R LALT(KC_RGHT) +#define LINE_L LGUI(KC_LEFT) +#define LINE_R LGUI(KC_RGHT) + +#define DESK_L LCTL(KC_LEFT) +#define DESK_R LCTL(KC_RGHT) +#define MSN_CTL LCTL(KC_UP) + +#define LT_FN LT(_FN1, KC_ESC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐ + 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_BSPC, KC_INS, KC_PGUP, + //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤ + 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_PGDN, + //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘ + LT_FN, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER, + //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐ + KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, KC_UP, + //├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_CAPS, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + //└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘ + ), + + [_COLEMAK] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐ + 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_BSPC, KC_INS, KC_PGUP, + //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤ + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_PGDN, + //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘ + LT_FN, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENTER, + //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐ + KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, KC_UP, + //├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_CAPS, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + //└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘ + ), + + [_FN1] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐ + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RESET, KC_HOME, + //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, + //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘ + _______, DESK_L, MSN_CTL, DESK_R, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, + //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐ + _______, _______, _______, _______, _______, _______, LINE_L, WORD_L, WORD_R, LINE_R, _______, _______, BL_INC, + //├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐ + _______, _______, _______, KC_BSPC, _______, _______, KC_MENU, BL_BRTG, BL_DEC, BL_TOGG + //└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘ + ) +}; \ No newline at end of file diff --git a/layouts/community/ortho_4x12/buswerks/keymap.c b/layouts/community/ortho_4x12/buswerks/keymap.c index c05c264183..72c592a0c3 100644 --- a/layouts/community/ortho_4x12/buswerks/keymap.c +++ b/layouts/community/ortho_4x12/buswerks/keymap.c @@ -7,6 +7,7 @@ extern keymap_config_t keymap_config; #define _DVORAK 2 #define _LOWER 3 #define _RAISE 4 +#define _MOUSE 5 #define _ADJUST 16 enum custom_keycodes { @@ -15,7 +16,7 @@ enum custom_keycodes { DVORAK, LOWER, RAISE, - NAV, + MOUSE, ADJUST, }; @@ -29,15 +30,26 @@ enum custom_keycodes { #define KC_LOWR LOWER #define KC_RASE RAISE #define KC_ADJ ADJUST +#define MOUSE TG(_MOUSE) #define DESK_L LCTL(KC_LEFT) #define DESK_R LCTL(KC_RGHT) #define MSN_CTL LCTL(KC_UP) #define APP_WND LCTL(KC_DOWN) +#define SWITCHR LGUI(KC_TAB) + +#define WORD_L LALT(KC_LEFT) +#define WORD_R LALT(KC_RGHT) +#define LINE_L LGUI(KC_LEFT) +#define LINE_R LGUI(KC_RGHT) + +#define COPY LGUI(KC_C) +#define CUT LGUI(KC_X) +#define PASTE LGUI(KC_V) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT_ortho_4x12( \ +[_QWERTY] = LAYOUT_ortho_4x12( // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I, KC_O , KC_P , KC_BSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -45,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + KC_LCTL, KC_HYPR, MOUSE , KC_LALT, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), @@ -57,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + KC_LCTL, KC_HYPR, MOUSE , KC_LALT, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), @@ -69,38 +81,50 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ + KC_LCTL, KC_HYPR, MOUSE , KC_LALT, LOWER , KC_SPC , KC_SPC , RSE_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), [_LOWER] = LAYOUT_ortho_4x12( \ // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. - KC_TILD, _______, KC_VOLD, MSN_CTL, KC_VOLU, _______, _______, KC_7, KC_8, KC_9, KC_MINS, KC_BSPC, \ + SWITCHR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_7, KC_8, KC_9, KC_MINS, _______, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, DESK_L , APP_WND, DESK_R , _______, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_PIPE, \ + KC_TILD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_4, KC_5, KC_6, KC_PLUS, KC_PIPE, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - KC_LBRC, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, KC_SLSH, KC_RBRC, \ + _______, _______, _______, KC_UNDS, KC_EQL, _______, _______, KC_1, KC_2, KC_3, _______, _______, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______ \ + _______, _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, KC_COMM, _______, _______ \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), [_RAISE] = LAYOUT_ortho_4x12( \ // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ + KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_UNDS, KC_EQL, KC_DEL, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, KC_LBRC, KC_LCBR, KC_RCBR, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_BSLS, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, LINE_L, WORD_L, WORD_R, LINE_R, _______, _______, \ + // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT \ + // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' +), + +[_MOUSE] = LAYOUT_ortho_4x12( \ + // .--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------. + SWITCHR, _______, _______, KC_MS_U, _______, _______, _______, KC_ACL0, KC_ACL1, KC_ACL2, _______, _______, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, KC_BSLS, \ + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3, _______, _______, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - KC_LCBR, KC_CIRC, KC_ASTR, KC_UNDS, KC_EQL, KC_AMPR, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, KC_RCBR, \ + _______, _______, _______, KC_WH_U, KC_WH_D, COPY, PASTE, KC_BTN4, KC_BTN5, _______, _______, _______, \ // |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + _______, _______, MOUSE , _______, _______, KC_SPC, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT \ // '--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' ), [_ADJUST] = LAYOUT_ortho_4x12( \ - KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \ - _______, _______, RESET, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, QWERTY, COLEMAK, DVORAK, RESET, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, \ + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, AU_OFF , AU_ON , _______, \ + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ ) diff --git a/layouts/community/ortho_4x12/buswerks/rules.mk b/layouts/community/ortho_4x12/buswerks/rules.mk new file mode 100644 index 0000000000..72f8257322 --- /dev/null +++ b/layouts/community/ortho_4x12/buswerks/rules.mk @@ -0,0 +1,9 @@ +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +TAP_DANCE_ENABLE = no +AUDIO_ENABLE = yes + +MACROS_ENABLED = no \ No newline at end of file -- cgit v1.2.3 From e0690096f8b5199cd6f602bc3a11c234b4309fb2 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Sun, 18 Nov 2018 15:20:21 -0800 Subject: Fix my community layouts (#4449) * fix formatting of keymap * update readme with boards I currently own * made the wrong assumption that every board would use the same space for backspace * update readme with boards I currently own --- layouts/community/60_ansi/mechmerlin-ansi/keymap.c | 26 +++++++++++----------- .../community/60_ansi/mechmerlin-ansi/readme.md | 7 +++--- .../mechmerlin-split/keymap.c | 24 ++++++++++---------- .../mechmerlin-split/readme.md | 3 ++- 4 files changed, 31 insertions(+), 29 deletions(-) (limited to 'layouts') diff --git a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c index 4128c4cf2d..12ed686802 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c +++ b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c @@ -3,24 +3,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BL] = LAYOUT_60_ansi( - KC_GESC, 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_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_BSLASH, \ - KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ - 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_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_FNX, KC_RALT, KC_RGUI, KC_RCTL), + KC_GESC, 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_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_BSLASH, \ + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ + 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_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_FNX, KC_RALT, KC_RGUI, KC_RCTL), [_FL] = LAYOUT_60_ansi( - KC_GRV, 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_DEL, \ - RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + KC_GRV, 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_DEL, \ + RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_AL] = LAYOUT_60_ansi( 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, 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, RSFT_T(KC_UP), \ + 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, KC_TRNS, RSFT_T(KC_UP), \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; diff --git a/layouts/community/60_ansi/mechmerlin-ansi/readme.md b/layouts/community/60_ansi/mechmerlin-ansi/readme.md index 1c40def2a2..aefd6a9929 100644 --- a/layouts/community/60_ansi/mechmerlin-ansi/readme.md +++ b/layouts/community/60_ansi/mechmerlin-ansi/readme.md @@ -5,9 +5,10 @@ This is the 60% layout used by u/merlin36, host of the [MechMerlin](www.youtube. YouTube channel. It is used on his -[Duck Eagle V2](https://github.com/qmk/qmk_firmware/tree/master/keyboards/eagle_viper/v2) -[KBP V60 Type R Polestar](https://github.com/qmk/qmk_firmware/tree/master/keyboards/v60_type_r) -[NPKC KC60](https://github.com/qmk/qmk_firmware/tree/master/keyboards/kc60) +[Duck Eagle V2](https://github.com/qmk/qmk_firmware/tree/master/keyboards/eagle_viper/v2) +[NPKC KC60](https://github.com/qmk/qmk_firmware/tree/master/keyboards/kc60) +[1up60HSE](https://github.com/qmk/qmk_firmware/tree/master/keyboards/1upkeyboards/1up60hse) +[HS60 V1](https://github.com/qmk/qmk_firmware/tree/master/keyboards/hs60/v1) ## Keymap Notes - Arrow toggle switch is tapping the `FN` key once. diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c index 2464dcaa70..96c3a32f26 100644 --- a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c +++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c @@ -3,24 +3,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BL] = LAYOUT_60_ansi_split_bs_rshift( - KC_GESC, 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_NO, KC_BSPC, \ - 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_BSLASH, \ - KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(2), \ + KC_GESC, 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_BSPC, \ + 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_BSLASH, \ + KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(2), \ KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL), [_FL] = LAYOUT_60_ansi_split_bs_rshift( - KC_GRV, 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_NO, KC_DEL, \ - RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_GRV, 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_DEL, KC_DEL, \ + RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_AL] = LAYOUT_60_ansi_split_bs_rshift( - 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_NO, 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, KC_TRNS, KC_TRNS, RSFT_T(KC_UP), 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, 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, RSFT_T(KC_UP), KC_TRNS, \ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT) }; diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/readme.md b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/readme.md index 9f7cef347c..855fd5ac9e 100644 --- a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/readme.md +++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/readme.md @@ -6,7 +6,8 @@ host of the [MechMerlin](www.youtube.com/mechmerlin) YouTube channel. It is used on his [Sentraq S60-X RGB](https://github.com/qmk/qmk_firmware/tree/master/keyboards/s60_x) -[MechanicalKeyboards.com FaceW](https://github.com/qmk/qmk_firmware/tree/master/keyboards/bfake) +[Zeal60 Rev4](https://github.com/qmk/qmk_firmware/tree/master/keyboards/zeal60) +[DO60](https://github.com/qmk/qmk_firmware/tree/master/keyboards/do60) ## Keymap Notes - Highly influenced by the KBP V60 and WKL B.Face standard layouts -- cgit v1.2.3 From 2f34252278280c34b6958066240e38a2ee6a7237 Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Wed, 21 Nov 2018 13:18:18 -0800 Subject: Keymap: Update keymap to match latest changes to Wilba's firmware. (#4432) * Fix firmware to work with latest Wilba changes (i.e. dynamic keymap) and M60a. * Get back RGB Backlight codes. * More tweaks. * Update users/talljoe/rules.mk Co-Authored-By: Talljoe --- keyboards/rama/m60_a/rules.mk | 6 +- .../minivan/keymaps/talljoe-minivan/config.h | 53 ++++++++++++ .../minivan/keymaps/talljoe-minivan/keymap.c | 1 + .../minivan/keymaps/talljoe-minivan/rules.mk | 3 + keyboards/tv44/keymaps/talljoe-minivan/config.h | 53 ------------ keyboards/tv44/keymaps/talljoe-minivan/keymap.c | 1 - keyboards/tv44/keymaps/talljoe-minivan/rules.mk | 3 - .../60_ansi_split_bs_rshift/talljoe/config.h | 2 +- .../60_ansi_split_bs_rshift/talljoe/keymap.c | 95 +--------------------- layouts/community/60_hhkb/talljoe-hhkb/config.h | 3 + layouts/community/tkl_ansi/talljoe-tkl/keymap.c | 90 +------------------- users/talljoe/config.h | 4 + users/talljoe/rules.mk | 2 + users/talljoe/talljoe.c | 34 +++++++- 14 files changed, 104 insertions(+), 246 deletions(-) create mode 100644 keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h create mode 100644 keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c create mode 100644 keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk delete mode 100644 keyboards/tv44/keymaps/talljoe-minivan/config.h delete mode 100644 keyboards/tv44/keymaps/talljoe-minivan/keymap.c delete mode 100644 keyboards/tv44/keymaps/talljoe-minivan/rules.mk (limited to 'layouts') diff --git a/keyboards/rama/m60_a/rules.mk b/keyboards/rama/m60_a/rules.mk index 7ab1b7d3ba..9c1a2d9df7 100644 --- a/keyboards/rama/m60_a/rules.mk +++ b/keyboards/rama/m60_a/rules.mk @@ -54,7 +54,7 @@ BOOTLOADER = atmel-dfu OPT_DEFS += -DNO_SUSPEND_POWER_DOWN # Build Options -# change to "no" to disable the options, or define them in the Makefile in +# change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) @@ -68,7 +68,7 @@ MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output on port C6 UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend @@ -76,3 +76,5 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend RAW_ENABLE = yes DYNAMIC_KEYMAP_ENABLE = yes CIE1931_CURVE = yes + +LAYOUTS = 60_hhkb diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h new file mode 100644 index 0000000000..26d5e207e8 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h @@ -0,0 +1,53 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include QMK_KEYBOARD_CONFIG_H + +#define SPACE_COUNT 2 + +#define TEMPLATE( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) LAYOUT_arrow( \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K0D, \ + K41, K49, K42, K44, K45, K3C, K0B, K00, K3D \ +) + +#define TEMPLATE_ALT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) LAYOUT_arrow( \ + K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ + K41, K49, K42, K44, K45, K48, K49, K4B, K4C \ +) + +#define TEMPLATE_ADJUST( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ +) LAYOUT_arrow( \ + K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K2D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ + K40, K41, K42, K44, K45, K48, K0B, K0C, K4C \ +) + +#define TEMPLATE_RESET LAYOUT_arrow( \ + RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET) + +#endif diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c new file mode 100644 index 0000000000..7812add812 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c @@ -0,0 +1 @@ +// This space intentionally left blank diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk new file mode 100644 index 0000000000..a4e40d0ba6 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk @@ -0,0 +1,3 @@ +USER_NAME := talljoe + +COMMAND_ENABLE = no # Commands for debug and configuration diff --git a/keyboards/tv44/keymaps/talljoe-minivan/config.h b/keyboards/tv44/keymaps/talljoe-minivan/config.h deleted file mode 100644 index fa1f43adce..0000000000 --- a/keyboards/tv44/keymaps/talljoe-minivan/config.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include QMK_KEYBOARD_CONFIG_H - -#define SPACE_COUNT 2 - -#define TEMPLATE( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ - K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ -) KEYMAP_ARROW( \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K0D, \ - K41, K49, K42, K44, K45, K3C, K0B, K00, K3D \ -) - -#define TEMPLATE_ALT( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ - K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ -) KEYMAP_ARROW( \ - K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ - K41, K49, K42, K44, K45, K48, K49, K4B, K4C \ -) - -#define TEMPLATE_ADJUST( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ - K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \ -) KEYMAP_ARROW( \ - K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K2D, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ - K40, K49, K42, K44, K45, K48, K0B, K0C, K4C \ -) - -#define TEMPLATE_RESET KEYMAP_ARROW( \ - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, \ - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET) - -#endif diff --git a/keyboards/tv44/keymaps/talljoe-minivan/keymap.c b/keyboards/tv44/keymaps/talljoe-minivan/keymap.c deleted file mode 100644 index 7812add812..0000000000 --- a/keyboards/tv44/keymaps/talljoe-minivan/keymap.c +++ /dev/null @@ -1 +0,0 @@ -// This space intentionally left blank diff --git a/keyboards/tv44/keymaps/talljoe-minivan/rules.mk b/keyboards/tv44/keymaps/talljoe-minivan/rules.mk deleted file mode 100644 index a4e40d0ba6..0000000000 --- a/keyboards/tv44/keymaps/talljoe-minivan/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -USER_NAME := talljoe - -COMMAND_ENABLE = no # Commands for debug and configuration 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 bf18fd9f7d..65568d3abf 100644 --- a/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/config.h @@ -34,7 +34,7 @@ { K40, K41, K42, {}, {}, {}, {}, K47, {}, {}, K4A, K4B, K4C, K4D } \ } -#ifdef KEYBOARD_zeal60 +#if defined (RGB_BACKLIGHT_ZEAL60) || defined (RGB_BACKLIGHT_M60_A) #define ZEAL_RGB diff --git a/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c b/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c index cfad9da8a3..7812add812 100644 --- a/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c +++ b/layouts/community/60_ansi_split_bs_rshift/talljoe/keymap.c @@ -1,94 +1 @@ -#ifdef KEYBOARD_zeal60 -#include "config.h" -#include "zeal60.h" -#include "rgb_backlight.h" -#include "action_layer.h" -#include "solarized.h" -#include "talljoe.h" - -// from zeal_backlight.c -// we want to be able to set indicators for the spacebar stabs -// but they are not represented by a row/index. -extern backlight_config g_config; -void map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led ); - -void set_backlight_defaults(void) { - uint8_t space; - uint8_t caps_lock; - map_row_column_to_led(3, 12, &caps_lock); - map_row_column_to_led(4, 7, &space); - backlight_config default_values = { - .use_split_backspace = USE_SPLIT_BACKSPACE, - .use_split_left_shift = USE_SPLIT_LEFT_SHIFT, - .use_split_right_shift = USE_SPLIT_RIGHT_SHIFT, - .use_7u_spacebar = USE_7U_SPACEBAR, - .use_iso_enter = USE_ISO_ENTER, - .disable_when_usb_suspended = 1, - .disable_after_timeout = 0, - .brightness = 255, - .effect = 10, - .color_1 = solarized.base2, - .color_2 = solarized.base02, - .caps_lock_indicator = { .index = caps_lock, .color = solarized.red }, - .layer_1_indicator = { .index = space, .color = solarized.blue }, - .layer_2_indicator = { .index = space, .color = solarized.yellow }, - .layer_3_indicator = { .index = 254, .color = solarized.red }, - .alphas_mods = { - RGB_BACKLIGHT_ALPHAS_MODS_ROW_0, - RGB_BACKLIGHT_ALPHAS_MODS_ROW_1, - RGB_BACKLIGHT_ALPHAS_MODS_ROW_2, - RGB_BACKLIGHT_ALPHAS_MODS_ROW_3, - RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 } - }; - memcpy(&g_config, &default_values, sizeof(backlight_config)); - backlight_config_save(); - -#undef CUSTOM_RGB_LAYOUTS -#ifdef CUSTOM_RGB_LAYOUTS - solarized_t* S = &solarized; - HSV alphas = S->base2; - HSV custom_color_map[MATRIX_ROWS][MATRIX_COLS] = CM( - S->red, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->red, - S->orange, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->orange, - S->green, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->green, - S->blue, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->blue, S->blue, - S->violet, S->magenta, S->yellow, alphas, S->yellow, S->magenta, S->violet, S->green - ); - for (uint8_t row = 0; row < MATRIX_ROWS; ++row) { - for (uint8_t col = 0; col < MATRIX_COLS; ++col) { - uint8_t index; - map_row_column_to_led( row, col, &index ); - set_key_color(index, custom_color_map[row][col]); - } - } -#endif // CUSTOM_RGB_LAYOUTS -} - -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - static uint8_t last_effect; - switch (keycode) { - case DFAULTS: - if (IS_PRESSED(record->event)) set_backlight_defaults(); - return false; - case BL_TOGG: - if (IS_PRESSED(record->event)) { - if (g_config.effect) { - last_effect = g_config.effect; - g_config.effect = 0; - } else { - g_config.effect = last_effect; - } - } - return false; - case EFFECT...EFFECT_END: - if (IS_PRESSED(record->event)) { - uint8_t effect = keycode - EFFECT; - g_config.effect = effect; - backlight_config_save(); - } - return false; - } - - return true; -} -#endif +// This space intentionally left blank diff --git a/layouts/community/60_hhkb/talljoe-hhkb/config.h b/layouts/community/60_hhkb/talljoe-hhkb/config.h index 9e907feeb5..54756a940b 100644 --- a/layouts/community/60_hhkb/talljoe-hhkb/config.h +++ b/layouts/community/60_hhkb/talljoe-hhkb/config.h @@ -19,4 +19,7 @@ K41, K42, K45, K48, K4C \ ) +#ifdef RGB_BACKLIGHT_M60_A + #define ZEAL_RGB +#endif #endif //CONFIG_USER_H diff --git a/layouts/community/tkl_ansi/talljoe-tkl/keymap.c b/layouts/community/tkl_ansi/talljoe-tkl/keymap.c index b5dc544927..7812add812 100644 --- a/layouts/community/tkl_ansi/talljoe-tkl/keymap.c +++ b/layouts/community/tkl_ansi/talljoe-tkl/keymap.c @@ -1,89 +1 @@ -#ifdef KEYBOARD_zeal60 -#include "config.h" -#include "zeal60.h" -#include "zeal_backlight.h" -#include "action_layer.h" -#include "solarized.h" -#include "talljoe.h" - -// from zeal_backlight.c -// we want to be able to set indicators for the spacebar stabs -// but they are not represented by a row/index. -extern zeal_backlight_config g_config; -void map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led ); - -void set_backlight_defaults(void) { - uint8_t space; - uint8_t caps_lock; - map_row_column_to_led(3, 12, &caps_lock); - map_row_column_to_led(4, 7, &space); - zeal_backlight_config default_values = { - .use_split_backspace = USE_SPLIT_BACKSPACE, - .use_split_left_shift = USE_SPLIT_LEFT_SHIFT, - .use_split_right_shift = USE_SPLIT_RIGHT_SHIFT, - .use_7u_spacebar = USE_7U_SPACEBAR, - .use_iso_enter = USE_ISO_ENTER, - .disable_when_usb_suspended = 1, - .disable_after_timeout = 0, - .brightness = 255, - .effect = 10, - .color_1 = solarized.base2, - .color_2 = solarized.base02, - .caps_lock_indicator = { .index = caps_lock, .color = solarized.red }, - .layer_1_indicator = { .index = space, .color = solarized.blue }, - .layer_2_indicator = { .index = space, .color = solarized.yellow }, - .layer_3_indicator = { .index = 254, .color = solarized.red }, - .alphas_mods = { - BACKLIGHT_ALPHAS_MODS_ROW_0, - BACKLIGHT_ALPHAS_MODS_ROW_1, - BACKLIGHT_ALPHAS_MODS_ROW_2, - BACKLIGHT_ALPHAS_MODS_ROW_3, - BACKLIGHT_ALPHAS_MODS_ROW_4 } - }; - memcpy(&g_config, &default_values, sizeof(zeal_backlight_config)); - backlight_config_save(); - - solarized_t* S = &solarized; - HSV alphas = S->base2; - HSV custom_color_map[MATRIX_ROWS][MATRIX_COLS] = CM( - S->red, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->red, - S->orange, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->orange, - S->green, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->green, - S->blue, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, alphas, S->blue, S->blue, - S->violet, S->magenta, S->yellow, alphas, S->yellow, S->magenta, S->violet, S->green - ); - for (uint8_t row = 0; row < MATRIX_ROWS; ++row) { - for (uint8_t col = 0; col < MATRIX_COLS; ++col) { - backlight_set_key_color(row, col, custom_color_map[row][col]); - } - } -} - -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - static uint8_t last_effect; - switch (keycode) { - case DFAULTS: - if (IS_PRESSED(record->event)) set_backlight_defaults(); - return false; - case BL_TOGG: - if (IS_PRESSED(record->event)) { - if (g_config.effect) { - last_effect = g_config.effect; - g_config.effect = 0; - } else { - g_config.effect = last_effect; - } - } - return false; - case EFFECT...EFFECT_END: - if (IS_PRESSED(record->event)) { - uint8_t effect = keycode - EFFECT; - g_config.effect = effect; - backlight_config_save(); - } - return false; - } - - return true; -} -#endif +// This space intentionally left blank diff --git a/users/talljoe/config.h b/users/talljoe/config.h index 0d06a0b12d..33374014df 100644 --- a/users/talljoe/config.h +++ b/users/talljoe/config.h @@ -5,4 +5,8 @@ #define RESET_LAYER 15 +#define BOOTMAGIC_KEY_SALT KC_ESC +#define BOOTMAGIC_KEY_SKIP KC_I +#define BOOTMAGIC_KEY_EEPROM_CLEAR KC_E + #endif // !USERSPACE_CONFIG_H diff --git a/users/talljoe/rules.mk b/users/talljoe/rules.mk index 0f1f6f26a6..e0a71561f4 100644 --- a/users/talljoe/rules.mk +++ b/users/talljoe/rules.mk @@ -5,3 +5,5 @@ EXTRAFLAGS+=-flto TAP_DANCE_ENABLE=yes CONSOLE_ENABLE=no COMMAND_ENABLE=no +DYNAMIC_KEYMAP_ENABLE=no +BOOTMAGIC_ENABLE=full diff --git a/users/talljoe/talljoe.c b/users/talljoe/talljoe.c index 7a343e7768..e72dc6c3e0 100644 --- a/users/talljoe/talljoe.c +++ b/users/talljoe/talljoe.c @@ -1,13 +1,16 @@ #include QMK_KEYBOARD_H #include "talljoe.h" +#ifdef ZEAL_RGB +#include "../../../keyboards/zeal60/rgb_backlight.h" +#endif const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = TEMPLATE_TKL( 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 , US_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 , US_BSLS, KC_INS , KC_HOME, KC_PGUP, US_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, - CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G , KC_H, KC_J, KC_K, KC_L, US_SCLN, US_QUOT, US_ENT , + CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G , KC_H, KC_J, KC_K, KC_L, US_SCLN, KC_QUOT, US_ENT , SH_LBRC, KC_Z, KC_X, KC_C, KC_V, KC_B , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SH_RBRC, KC_UP , 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), [_WORKMAN] = TEMPLATE( @@ -52,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_PTT , KC_PGDN, KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_APP , KC_RCTL, KC_PTT ), #endif [_NAV] = TEMPLATE_NAV( - KC_GRV , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , XXXXXXX, XXXXXXX, US_TAB , KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_INS , KC_PGUP, KC_UP , KC_PGDN, KC_BTN1, KC_BTN3, KC_BTN2, KC_DEL , CTL_ESC, KC_LCBR, KC_RCBR, KC_LPRN, KC_RPRN, KC_AMPR, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END , US_QUOT, TG_ADJ , KC_LSFT, KC_EQL, KC_PLUS, KC_MINS, KC_UNDS, KC_ASTR, KC_CALC, US_GRV , KC_WBAK, KC_WFWD, KC_WREF, KC_RSFT, KC_APP , @@ -65,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, NM_SPC2, NM_SPC1, NM_SPC3, KC_PDOT, KC_PCMM, KC_RCTL, KC_PTT ), // Adjust layer is on the split-shift key; or NAV+Enter (for non-split keyboards) [_ADJUST] = TEMPLATE_ADJUST( - MO_RST , FX(1) , FX(2) , FX(3) , FX(4) , FX(5) , FX(8) , FX(9) , FX(10) , FX(20) , FX(0) , BR_DEC , BR_INC , XXXXXXX, MO_RST , + 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 , MO_RST , H1_INC , S1_INC , H2_INC , S2_INC , EF_INC , RGB_HUI, RGB_SAI, RGB_MOD, RGB_M_P, DFAULTS, RGB_VAD, RGB_VAI, MO_RST , 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 , TG_NKRO, LY_QWER, LY_WORK, LY_NRMN, LY_DVRK, LY_CLMK, XXXXXXX, LY_MALT, XXXXXXX, XXXXXXX, KC_MAKE, KC_CAPS, XXXXXXX, @@ -101,7 +104,11 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; } +#ifdef ZEAL_RGB +extern backlight_config g_config; +#endif bool process_record_user(uint16_t keycode, keyrecord_t *record) { + static uint8_t last_effect; #ifdef RGBLIGHT_ENABLE static uint32_t savedRgbMode; @@ -144,6 +151,27 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; +#ifdef ZEAL_RGB + case BL_TOGG: + if (IS_PRESSED(record->event)) { + if (g_config.effect) { + last_effect = g_config.effect; + g_config.effect = 0; + } else { + g_config.effect = last_effect; + } + } + return false; + case EFFECT...EFFECT_END: + if (IS_PRESSED(record->event)) { + uint8_t effect = keycode - EFFECT; + if(effect == g_config.effect) + effect = 0; // Toggle effect on second press + g_config.effect = effect; + backlight_config_save(); + } + return false; +#endif } return process_record_keymap(keycode, record); } -- cgit v1.2.3 From 3dd6d53942bd3fafb57d170ecdaccf57e459a62c Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Thu, 22 Nov 2018 21:53:01 +0100 Subject: ergodox: update algernon's layout to v1.12 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is the final version of my layout. Overall changes =============== * Updated to work with QMK master. Miscellaneous ============= * The `😂` symbol can be entered with UCIS. * `LEAD r` now inputs `Right Alt`. Signed-off-by: Gergely Nagy --- layouts/community/ergodox/algernon/NEWS.md | 13 +++++++++++++ .../community/ergodox/algernon/images/adore-layer.png | Bin 0 -> 105611 bytes .../community/ergodox/algernon/images/base-layer.png | Bin 0 -> 106956 bytes layouts/community/ergodox/algernon/images/heatmap.png | Bin 0 -> 139351 bytes .../community/ergodox/algernon/images/steno-layer.png | Bin 0 -> 64086 bytes layouts/community/ergodox/algernon/keymap.c | 8 +++++++- layouts/community/ergodox/algernon/readme.md | 12 +++++++++--- layouts/community/ergodox/algernon/rules.mk | 3 ++- 8 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 layouts/community/ergodox/algernon/images/adore-layer.png create mode 100644 layouts/community/ergodox/algernon/images/base-layer.png create mode 100644 layouts/community/ergodox/algernon/images/heatmap.png create mode 100644 layouts/community/ergodox/algernon/images/steno-layer.png (limited to 'layouts') diff --git a/layouts/community/ergodox/algernon/NEWS.md b/layouts/community/ergodox/algernon/NEWS.md index 1bc2b5dc6a..a6ce9813ba 100644 --- a/layouts/community/ergodox/algernon/NEWS.md +++ b/layouts/community/ergodox/algernon/NEWS.md @@ -1,5 +1,18 @@ +## v1.12 + +*2018-11-22* + +### Overall changes + +* Updated to work with QMK master. + +### Miscellaneous + +* The `😂` symbol can be entered with UCIS. +* `LEAD r` now inputs `Right Alt`. + ## v1.11 *2017-10-01* diff --git a/layouts/community/ergodox/algernon/images/adore-layer.png b/layouts/community/ergodox/algernon/images/adore-layer.png new file mode 100644 index 0000000000..75d2ca4f08 Binary files /dev/null and b/layouts/community/ergodox/algernon/images/adore-layer.png differ diff --git a/layouts/community/ergodox/algernon/images/base-layer.png b/layouts/community/ergodox/algernon/images/base-layer.png new file mode 100644 index 0000000000..2ca7a273be Binary files /dev/null and b/layouts/community/ergodox/algernon/images/base-layer.png differ diff --git a/layouts/community/ergodox/algernon/images/heatmap.png b/layouts/community/ergodox/algernon/images/heatmap.png new file mode 100644 index 0000000000..4f55c5adff Binary files /dev/null and b/layouts/community/ergodox/algernon/images/heatmap.png differ diff --git a/layouts/community/ergodox/algernon/images/steno-layer.png b/layouts/community/ergodox/algernon/images/steno-layer.png new file mode 100644 index 0000000000..9a2ba55eff Binary files /dev/null and b/layouts/community/ergodox/algernon/images/steno-layer.png differ diff --git a/layouts/community/ergodox/algernon/keymap.c b/layouts/community/ergodox/algernon/keymap.c index ebdc4ab4e4..fb6de1b721 100644 --- a/layouts/community/ergodox/algernon/keymap.c +++ b/layouts/community/ergodox/algernon/keymap.c @@ -13,6 +13,7 @@ #include "eeconfig.h" #include "wait.h" #include "version.h" +#include "print.h" /* Layers */ @@ -1033,6 +1034,10 @@ void matrix_scan_user(void) { } #endif + SEQ_ONE_KEY (KC_R) { + ang_tap(KC_RALT, 0); + } + SEQ_ONE_KEY (KC_T) { time_travel = !time_travel; } @@ -1126,7 +1131,8 @@ const qk_ucis_symbol_t ucis_symbol_table[] = UCIS_TABLE UCIS_SYM("micro", 0x00b5), UCIS_SYM("tm", 0x2122), UCIS_SYM("child", 0x1f476), - UCIS_SYM("family", 0x1F46A) + UCIS_SYM("family", 0x1F46A), + UCIS_SYM("joy", 0x1F602) ); bool process_record_user (uint16_t keycode, keyrecord_t *record) { diff --git a/layouts/community/ergodox/algernon/readme.md b/layouts/community/ergodox/algernon/readme.md index 03b094edb2..a25018a7bc 100644 --- a/layouts/community/ergodox/algernon/readme.md +++ b/layouts/community/ergodox/algernon/readme.md @@ -3,7 +3,12 @@ algernon's layout ======================= -This is an unconventional layout for the [ErgoDox EZ][ez]. For more details about the history of the layout, see my [blog posts about my ErgoDox journey][blog-ergodox]. +This is the layout I used to use on my [ErgoDox EZ][ez], while I was using [QMK][qmk]. I no longer do so, and this repository is obsolete, and not updated anymore. My current firmware is based on [Kaleidoscope][kaleidoscope], and is located [elsewhere][ergodox-sketch]. I'm keeping the repo around for historical and educational purposes. + + [kaleidoscope]: https://github.com/keyboardio/Kaleidoscope + [ergodox-sketch]: https://git.madhouse-project.org/algernon/ErgoDox-sketch + +Nevertheless, this is an unconventional layout for the [ErgoDox EZ][ez]. For more details about the history of the layout, see my [blog posts about my ErgoDox journey][blog-ergodox]. [ez]: https://ergodox-ez.com/ [blog-ergodox]: https://asylum.madhouse-project.org/blog/tags/ergodox/ @@ -57,6 +62,7 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest - `LEAD d` toggles logging keypress positions to the HID console. - `LEAD t` toggles time travel. Figuring out the current `date` is left as an exercise to the reader. - `LEAD u` enters the [Unicode symbol input](#unicode-symbol-input) mode. + - `LEAD r` inputs `Right Alt`, which is the `Compose` key of my choice. The symbols on the front in the image above have the same color as the key that activates them, with the exception of the **Arrow** layer, which is just black on the front. @@ -128,13 +134,13 @@ $ git clone https://github.com/qmk/qmk_firmware.git $ cd qmk_firmware $ git clone https://github.com/algernon/ergodox-layout.git \ layouts/community/ergodox/algernon_master -$ make ergodox_ez-algernon_master +$ make ergodox_ez:algernon_master ``` From time to time, updates may be submitted back to the QMK repository. If you are reading it there, you can build the firmware like any other firmware included with it (assuming you are in the root directory of the firmware): ``` -$ make ergodox_ez-algernon +$ make ergodox_ez:algernon ``` ## Using on Windows diff --git a/layouts/community/ergodox/algernon/rules.mk b/layouts/community/ergodox/algernon/rules.mk index 53dec5153a..1b4c0995f6 100644 --- a/layouts/community/ergodox/algernon/rules.mk +++ b/layouts/community/ergodox/algernon/rules.mk @@ -9,8 +9,9 @@ KEYLOGGER_ENABLE ?= yes UCIS_ENABLE = yes MOUSEKEY_ENABLE = no LEADER_ENABLE = yes +RGBLIGHT_ENABLE = no -AUTOLOG_ENABLE ?= no +AUTOLOG_ENABLE ?= yes ifeq (${FORCE_NKRO},yes) OPT_DEFS += -DFORCE_NKRO -- cgit v1.2.3 From 0031e461913d23e37a9aebd1da5daf1c93a149ee Mon Sep 17 00:00:00 2001 From: zvecr Date: Mon, 26 Nov 2018 17:27:07 +0000 Subject: Keyboard: 40percentclub - enable 4x4 and 5x5 community keymaps (#4437) * Enable 4x4 and 5x5 community keymap support * Pull 4x4 community keymap fixes from @noroadsleft * Build fixes for guidoism keymap - move keymap to layouts/community/planck_mit as it uses the LAYOUT_planck_mit macro --- keyboards/40percentclub/4x4/4x4.h | 13 + keyboards/40percentclub/4x4/rules.mk | 3 +- keyboards/40percentclub/5x5/rules.mk | 3 +- layouts/community/ortho_4x12/bakingpy/rules.mk | 2 + layouts/community/ortho_4x12/guidoism/config.h | 24 -- .../community/ortho_4x12/guidoism/generate_c.py | 75 ----- .../community/ortho_4x12/guidoism/guidoism.json | 1 - layouts/community/ortho_4x12/guidoism/keymap.c | 183 ------------ layouts/community/ortho_4x12/guidoism/keys.json | 317 --------------------- layouts/community/ortho_4x12/guidoism/readme.md | 107 ------- layouts/community/ortho_4x12/wanleg/rules.mk | 4 +- layouts/community/ortho_4x12/xyverz/rules.mk | 2 + layouts/community/planck_mit/guidoism/config.h | 24 ++ .../community/planck_mit/guidoism/generate_c.py | 75 +++++ .../community/planck_mit/guidoism/guidoism.json | 1 + layouts/community/planck_mit/guidoism/keymap.c | 183 ++++++++++++ layouts/community/planck_mit/guidoism/keys.json | 317 +++++++++++++++++++++ layouts/community/planck_mit/guidoism/readme.md | 107 +++++++ 18 files changed, 728 insertions(+), 713 deletions(-) delete mode 100644 layouts/community/ortho_4x12/guidoism/config.h delete mode 100644 layouts/community/ortho_4x12/guidoism/generate_c.py delete mode 100644 layouts/community/ortho_4x12/guidoism/guidoism.json delete mode 100644 layouts/community/ortho_4x12/guidoism/keymap.c delete mode 100644 layouts/community/ortho_4x12/guidoism/keys.json delete mode 100644 layouts/community/ortho_4x12/guidoism/readme.md create mode 100644 layouts/community/planck_mit/guidoism/config.h create mode 100644 layouts/community/planck_mit/guidoism/generate_c.py create mode 100644 layouts/community/planck_mit/guidoism/guidoism.json create mode 100644 layouts/community/planck_mit/guidoism/keymap.c create mode 100644 layouts/community/planck_mit/guidoism/keys.json create mode 100644 layouts/community/planck_mit/guidoism/readme.md (limited to 'layouts') diff --git a/keyboards/40percentclub/4x4/4x4.h b/keyboards/40percentclub/4x4/4x4.h index 8cc5a150aa..359cdc80a1 100644 --- a/keyboards/40percentclub/4x4/4x4.h +++ b/keyboards/40percentclub/4x4/4x4.h @@ -56,3 +56,16 @@ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, K2f }, \ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e, K3f } \ } + +#define LAYOUT_kc_ortho_4x12( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b \ +) \ +{ \ + { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0a, KC_##K0b, ___, ___, ___, ___}, \ + { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1a, KC_##K1b, ___, ___, ___, ___}, \ + { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2a, KC_##K2b, ___, ___, ___, ___}, \ + { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37, KC_##K38, KC_##K39, KC_##K3a, KC_##K3b, ___, ___, ___, ___} \ +} diff --git a/keyboards/40percentclub/4x4/rules.mk b/keyboards/40percentclub/4x4/rules.mk index a513357988..4ab5e7431c 100644 --- a/keyboards/40percentclub/4x4/rules.mk +++ b/keyboards/40percentclub/4x4/rules.mk @@ -76,5 +76,4 @@ AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) -#FIXME: Community keymap build are currently failing due to missing functionality -#LAYOUTS = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16 +LAYOUTS = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16 diff --git a/keyboards/40percentclub/5x5/rules.mk b/keyboards/40percentclub/5x5/rules.mk index ae04141269..237de64977 100644 --- a/keyboards/40percentclub/5x5/rules.mk +++ b/keyboards/40percentclub/5x5/rules.mk @@ -77,5 +77,4 @@ AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) -#FIXME: Community keymap build are currently failing due to missing functionality -#LAYOUTS = ortho_5x5 ortho_5x10 ortho_5x15 +LAYOUTS = ortho_5x5 ortho_5x10 ortho_5x15 diff --git a/layouts/community/ortho_4x12/bakingpy/rules.mk b/layouts/community/ortho_4x12/bakingpy/rules.mk index 490ebbf779..9be2f01d4d 100644 --- a/layouts/community/ortho_4x12/bakingpy/rules.mk +++ b/layouts/community/ortho_4x12/bakingpy/rules.mk @@ -5,6 +5,8 @@ endif AUDIO_ENABLE = no ifeq ($(strip $(KEYBOARD)), zlant) BACKLIGHT_ENABLE = no +else ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4) + BACKLIGHT_ENABLE = no else BACKLIGHT_ENABLE = yes endif diff --git a/layouts/community/ortho_4x12/guidoism/config.h b/layouts/community/ortho_4x12/guidoism/config.h deleted file mode 100644 index e22f298035..0000000000 --- a/layouts/community/ortho_4x12/guidoism/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -This is the c configuration file for the keymap - -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once - -#define IGNORE_MOD_TAP_INTERRUPT -#define USB_MAX_POWER_CONSUMPTION 50 diff --git a/layouts/community/ortho_4x12/guidoism/generate_c.py b/layouts/community/ortho_4x12/guidoism/generate_c.py deleted file mode 100644 index 5bee576084..0000000000 --- a/layouts/community/ortho_4x12/guidoism/generate_c.py +++ /dev/null @@ -1,75 +0,0 @@ -import itertools -import json -import os.path -import re - -KEYMAP_C = """/* {0} -{1} -*/ -[{2}] = {3}( - {4}) -""" - -README_MD = """## {0} -``` -{1} -``` -""" - -base = os.path.dirname(__file__) - -layer_names = dict(enumerate(['_QWERTY', '_LOWER', '_RAISE', '_MOVEMENT', '_NUMPAD', '_FUNCTION'])) -layer_name = {('MO(%d)' % i): layer_names.get(i).strip('_') for i in layer_names.keys()} - -keys = json.load(open(os.path.join(base, 'keys.json'))) - -d = json.load(open(os.path.join(base, 'guidoism.json'))) - -def surround(s, a, b, c): - return a + b.join(s) + c - -def pattern(cell, table): - return ['─'*cell for i in range(table)] - -top = surround(pattern(5, 12), '┌', '┬', '┐') -mid = surround(pattern(5, 12), '├', '┼', '┤') -bottom = surround(pattern(5, 12), '└', '┴', '┘') - -from more_itertools import chunked, intersperse, interleave_longest - -def uni(k): - return keys.get(k, k).lower().center(5) - -def c_layout(i, definition, template): - c_name = layer_names[i] - pretty_name = c_name.strip('_').capitalize() - layout = d['layout'] - - surround = lambda s: ''.join(interleave_longest(['│']*(len(s)+1), s)) - layer = list(map(uni, definition)) - layer[41] = layer[41].center(11) - layer = chunked(layer, 12) - rows = intersperse(mid, map(surround, layer)) - pretty = '\n'.join(itertools.chain([top], rows, [bottom])) - - surround = lambda s: ', '.join(s) - layer = list(map(lambda k: layer_name.get(k, k), definition)) - layer = chunked(layer, 12) - rows = map(surround, layer) - c_layer = ',\n '.join(itertools.chain([], rows, [])) - - return template.format(pretty_name, pretty, c_name, layout, c_layer) - -start = '// START_REPLACEMENT\n' -end = '// END_REPLACEMENT\n' -replacement = start + ',\n\n'.join(c_layout(i, l, KEYMAP_C) for i, l in enumerate(d['layers'])) + end -keymap = os.path.join(base, 'keymap.c') -existing = open(keymap).read() -r = re.compile(r'// START_REPLACEMENT.*// END_REPLACEMENT', re.DOTALL) -open(keymap, 'w').write(r.sub(replacement, existing)) - -replacement = '## Current Configuration\n\n' + '\n\n'.join(c_layout(i, l, README_MD) for i, l in enumerate(d['layers'])) -keymap = os.path.join(base, 'readme.md') -existing = open(keymap).read() -r = re.compile(r'## Current Configuration.*', re.DOTALL) -open(keymap, 'w').write(r.sub(replacement, existing)) diff --git a/layouts/community/ortho_4x12/guidoism/guidoism.json b/layouts/community/ortho_4x12/guidoism/guidoism.json deleted file mode 100644 index 6a4364c6be..0000000000 --- a/layouts/community/ortho_4x12/guidoism/guidoism.json +++ /dev/null @@ -1 +0,0 @@ -{"keyboard":"planck/rev4","keymap":"guidoism","layout":"LAYOUT_planck_mit","layers":[["KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSPC","KC_LCTL","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_COLN","KC_ENT","KC_LSFT","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_NO","MO(3)","KC_ESC","KC_LALT","KC_LGUI","MO(1)","LSFT_T(KC_SPC)","MO(2)","KC_RGUI","KC_RALT","KC_SCLN","MO(5)"],["KC_TILD","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_CIRC","KC_AMPR","KC_ASTR","KC_NO","KC_NO","KC_UNDO","KC_TRNS","KC_NO","KC_CUT","KC_COPY","KC_PSTE","KC_NO","KC_NO","KC_UNDS","KC_PLUS","KC_DQUO","KC_QUOT","KC_PIPE","KC_CAPS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_MNXT","KC_VOLD","KC_VOLU","KC_MPLY"],["KC_GRV","KC_P1","KC_P2","KC_P3","KC_P4","KC_P5","KC_P6","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_LBRC","KC_RBRC","KC_LPRN","KC_RPRN","KC_NO","KC_NO","KC_PMNS","KC_PEQL","KC_NO","KC_NO","KC_BSLS","KC_TRNS","KC_LT","KC_GT","KC_LCBR","KC_RCBR","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["RESET","DEBUG","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PGUP","KC_UP","KC_PGDN","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_HOME","KC_NO","KC_END","KC_NO","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_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PERC","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_DLR","KC_P4","KC_P5","KC_P6","KC_PDOT","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P0","KC_P1","KC_P2","KC_P3","KC_PCMM","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_NO","KC_P0","KC_NO","KC_NO","KC_TRNS"],["KC_NO","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS"]]} \ No newline at end of file diff --git a/layouts/community/ortho_4x12/guidoism/keymap.c b/layouts/community/ortho_4x12/guidoism/keymap.c deleted file mode 100644 index 2027e2bfa4..0000000000 --- a/layouts/community/ortho_4x12/guidoism/keymap.c +++ /dev/null @@ -1,183 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -enum planck_layers { - _QWERTY, - _LOWER, - _RAISE, - _MOVEMENT, - _NUMPAD, - _FUNCTION, -}; - -enum planck_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - MOVEMENT, - NUMPAD, -}; - -#define FUNCTION MO(_FUNCTION) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// START_REPLACEMENT -/* Qwerty -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_QWERTY] = LAYOUT_planck_mit( - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_ENT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, - MOVEMENT, KC_ESC, KC_LALT, KC_LGUI, LOWER, LSFT_T(KC_SPC), RAISE, KC_RGUI, KC_RALT, KC_SCLN, FUNCTION) -, - -/* Lower -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ caps│ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_LOWER] = LAYOUT_planck_mit( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_NO, KC_NO, KC_UNDO, - KC_TRNS, KC_NO, KC_CUT, KC_COPY, KC_PSTE, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_DQUO, KC_QUOT, KC_PIPE, - KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY) -, - -/* Raise -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ < │ > │ { │ } │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_RAISE] = LAYOUT_planck_mit( - KC_GRV, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, - KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_PMNS, KC_PEQL, KC_NO, KC_NO, KC_BSLS, - KC_TRNS, KC_LT, KC_GT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -, - -/* Movement -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ home│ │ end │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_MOVEMENT] = LAYOUT_planck_mit( - RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_TRNS, - KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS, - KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -, - -/* Numpad -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ 0 │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_NUMPAD] = LAYOUT_planck_mit( - KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PERC, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, - KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DLR, KC_P4, KC_P5, KC_P6, KC_PDOT, KC_TRNS, - KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P0, KC_P1, KC_P2, KC_P3, KC_PCMM, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_P0, KC_NO, KC_NO, KC_TRNS) -, - -/* Function -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -*/ -[_FUNCTION] = LAYOUT_planck_mit( - KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS) -// END_REPLACEMENT - - - - - - - - -}; - - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - } else { - layer_off(_RAISE); - } - return false; - break; - case MOVEMENT: - if (record->event.pressed) { - layer_on(_MOVEMENT); - update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); - } else { - layer_off(_MOVEMENT); - update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); - } - return false; - break; - } - return true; -} diff --git a/layouts/community/ortho_4x12/guidoism/keys.json b/layouts/community/ortho_4x12/guidoism/keys.json deleted file mode 100644 index 791119b4f2..0000000000 --- a/layouts/community/ortho_4x12/guidoism/keys.json +++ /dev/null @@ -1,317 +0,0 @@ -{ - "KC_1": "1", - "SHIFTED_KC_1": "!", - "KC_2": "2", - "SHIFTED_KC_2": "@", - "KC_3": "3", - "SHIFTED_KC_3": "#", - "KC_4": "4", - "SHIFTED_KC_4": "$", - "KC_5": "5", - "SHIFTED_KC_5": "%", - "KC_6": "6", - "SHIFTED_KC_6": "^", - "KC_7": "7", - "SHIFTED_KC_7": "&", - "KC_8": "8", - "SHIFTED_KC_8": "*", - "KC_9": "9", - "SHIFTED_KC_9": "(", - "KC_0": "0", - "SHIFTED_KC_0": ")", - "KC_A": "a", - "SHIFTED_KC_A": "A", - "KC_B": "b", - "SHIFTED_KC_B": "B", - "KC_C": "c", - "SHIFTED_KC_C": "C", - "KC_D": "d", - "SHIFTED_KC_D": "D", - "KC_E": "e", - "SHIFTED_KC_E": "E", - "KC_F": "f", - "SHIFTED_KC_F": "F", - "KC_G": "g", - "SHIFTED_KC_G": "G", - "KC_H": "h", - "SHIFTED_KC_H": "H", - "KC_I": "i", - "SHIFTED_KC_I": "I", - "KC_J": "j", - "SHIFTED_KC_J": "J", - "KC_K": "k", - "SHIFTED_KC_K": "K", - "KC_L": "l", - "SHIFTED_KC_L": "L", - "KC_M": "m", - "SHIFTED_KC_M": "M", - "KC_N": "n", - "SHIFTED_KC_N": "N", - "KC_O": "o", - "SHIFTED_KC_O": "O", - "KC_P": "p", - "SHIFTED_KC_P": "P", - "KC_Q": "q", - "SHIFTED_KC_Q": "Q", - "KC_R": "r", - "SHIFTED_KC_R": "R", - "KC_S": "s", - "SHIFTED_KC_S": "S", - "KC_T": "t", - "SHIFTED_KC_T": "T", - "KC_U": "u", - "SHIFTED_KC_U": "U", - "KC_V": "v", - "SHIFTED_KC_V": "V", - "KC_W": "w", - "SHIFTED_KC_W": "W", - "KC_X": "x", - "SHIFTED_KC_X": "X", - "KC_Y": "y", - "SHIFTED_KC_Y": "Y", - "KC_Z": "z", - "SHIFTED_KC_Z": "Z", - "KC_ENTER": "\u23ce", - "KC_ENT": "\u23ce", - "KC_ESCAPE": "\u238b", - "KC_ESC": "\u238b", - "KC_BSPACE": "\u232b", - "KC_BSPC": "\u232b", - "KC_TAB": "\u21e5", - "KC_SPACE": "", - "KC_SPC": "", - "KC_MINUS": "-", - "KC_MINS": "-", - "KC_EQUAL": "+", - "KC_EQL": "=", - "KC_LBRACKET": "{", - "KC_LBRC": "[", - "KC_RBRACKET": "}", - "KC_RBRC": "]", - "KC_BSLS": "\\", - "KC_BSLASH": "\\", - "KC_SCOLON": ":", - "KC_SCLN": ";", - "KC_QUOTE": "\"", - "KC_QUOT": "'", - "KC_GRAVE": "`", - "KC_GRV": "`", - "KC_COMMA": ",", - "KC_COMM": ",", - "KC_DOT": ".", - "KC_SLASH": "/", - "KC_NUBS": "/", - "KC_NUHS": "#", - "KC_CAPSLOCK": "Caps", - "KC_CAPS": "Caps", - "KC_LCTRL": "Ctrl", - "KC_LCTL": "Ctrl", - "KC_LSHIFT": "\u21e7", - "KC_LSFT": "\u21e7", - "KC_LALT": "\u2325", - "KC_LGUI": "\u2318", - "KC_LCMD": "\u2318", - "KC_RCTRL": "Right Control", - "KC_RCTL": "Right Control", - "KC_RSHIFT": "\u21e7", - "KC_RSFT": "\u21e7", - "KC_RALT": "\u2325", - "KC_RGUI": "\u2318", - "KC_RCMD": "\u2318", - "KC_LOCKING_CAPS": "Locking Caps Lock", - "KC_LCAP": "Locking Caps Lock", - "KC_LOCKING_NUM": "Locking Num Lock", - "KC_LNUM": "Locking Num Lock", - "KC_LOCKING_SCROLL": "Locking Scroll Lock", - "KC_LSCR": "Locking Scroll Lock", - "KC_INT4": "JIS Henkan", - "KC_HENK": "JIS Henkan", - "KC_INT5": "JIS Muhenkan", - "KC_MHEN": "JIS Muhenkan", - "KC_PSCREEN": "Print Screen", - "KC_PSCR": "Print Screen", - "KC_SCROLLLOCK": "Scroll Lock", - "KC_SLCK": "Scroll Lock", - "KC_PAUSE": "Pause", - "KC_PAUS": "Pause", - "KC_INSERT": "Insert", - "KC_INS": "Insert", - "KC_HOME": "Home", - "KC_PGUP": "PgUp", - "KC_DELETE": "\u2326", - "KC_DEL": "\u2326", - "KC_END": "End", - "KC_PGDOWN": "PgDn", - "KC_PGDN": "PgDn", - "KC_RIGHT": "→", - "KC_RGHT": "→", - "KC_LEFT": "←", - "KC_DOWN": "↓", - "KC_UP": "↑", - "KC_APPLICATION": "Application (Windows Menu Key)", - "KC_APP": "Application (Windows Menu Key)", - "KC_POWER": "Deprecated by MS in favor of KC_SYSTEM_POWER.", - "KC_EXECUTE": "Execute", - "KC_HELP": "Help", - "KC_MENU": "Menu", - "KC_SELECT": "Select", - "KC_AGAIN": "Again", - "KC_UNDO": "Undo", - "KC_CUT": "Cut", - "KC_COPY": "Copy", - "KC_PASTE": "Paste", - "KC_FIND": "Find", - "KC_ALT_ERASE": "Alternate Erase", - "KC_SYSREQ": "SysReq/Attention", - "KC_CANCEL": "Cancel", - "KC_CLEAR": "Clear", - "KC_PRIOR": "Prior", - "KC_RETURN": "Return", - "KC_SEPARATOR": "Separator", - "KC_OUT": "Out", - "KC_OPER": "Oper", - "KC_CLEAR_AGAIN": "Clear/Again", - "KC_CRSEL": "CrSel/Props", - "KC_EXSEL": "ExSel", - "KC_SYSTEM_POWER": "System Power Down.", - "KC_PWR": "System Power Down.", - "KC_SYSTEM_SLEEP": "System Sleep", - "KC_SLEP": "System Sleep", - "KC_SYSTEM_WAKE": "System Wake", - "KC_WAKE": "System Wake", - "KC_STOP": "Stop", - "KC__MUTE": "Mute (macOS)", - "KC__VOLUP": "vol+", - "KC__VOLDOWN": "vol-", - "KC_AUDIO_MUTE": "Mute", - "KC_MUTE": "Mute", - "KC_AUDIO_VOL_UP": "vol+", - "KC_VOLU": "vol+", - "KC_AUDIO_VOL_DOWN": "vol-", - "KC_VOLD": "vol-", - "KC_MEDIA_NEXT_TRACK": "next", - "KC_MNXT": "next", - "KC_MEDIA_PREV_TRACK": "Previous Track (Windows)", - "KC_MPRV": "Previous Track (Windows)", - "KC_MEDIA_FAST_FORWARD": "next", - "KC_MFFD": "next", - "KC_MEDIA_REWIND": "Previous Track (macOS)", - "KC_MRWD": "Previous Track (macOS)", - "KC_MEDIA_STOP": "Stop Track", - "KC_MSTP": "Stop Track", - "KC_MEDIA_PLAY_PAUSE": "play", - "KC_MPLY": "play", - "KC_NUMLOCK": "Keypad Num Lock and Clear", - "KC_NLCK": "Keypad Num Lock and Clear", - "KC_SLSH": "/", - "KC_KP_SLASH": "/", - "KC_PSLS": "/", - "KC_KP_ASTERISK": "*", - "KC_PAST": "*", - "KC_KP_MINUS": "-", - "KC_PMNS": "-", - "KC_PPLS": "+", - "KC_KP_ENTER": "Enter", - "KC_PENT": "Enter", - "KC_KP_1": "1", - "KC_KP_2": "2", - "KC_KP_3": "3", - "KC_KP_4": "4", - "KC_KP_5": "5", - "KC_KP_6": "6", - "KC_KP_7": "7", - "KC_KP_8": "8", - "KC_KP_9": "9", - "KC_KP_0": "0", - "KC_F1": "F1", - "KC_F2": "F2", - "KC_F3": "F3", - "KC_F4": "F4", - "KC_F5": "F5", - "KC_F6": "F6", - "KC_F7": "F7", - "KC_F8": "F8", - "KC_F9": "F9", - "KC_F10": "F10", - "KC_F11": "F11", - "KC_F12": "F12", - "_______": "", - "KC_TILDE": "~", - "KC_TILD": "~", - "KC_EXCLAIM": "!", - "KC_EXLM": "!", - "KC_AT": "@", - "KC_HASH": "#", - "KC_DOLLAR": "$", - "KC_DLR": "$", - "KC_PERCENT": "%", - "KC_PERC": "%", - "KC_CIRCUMFLEX": "^", - "KC_CIRC": "^", - "KC_AMPERSAND": "&", - "KC_AMPR": "&", - "KC_ASTERISK": "*", - "KC_ASTR": "*", - "KC_LEFT_PAREN": "(", - "KC_LPRN": "(", - "KC_RIGHT_PAREN": ")", - "KC_RPRN": ")", - "KC_UNDERSCORE": "_", - "KC_UNDS": "_", - "KC_PLUS": "+", - "KC_LEFT_CURLY_BRACE": "{", - "KC_LCBR": "{", - "KC_RIGHT_CURLY_BRACE": "}", - "KC_RCBR": "}", - "KC_PIPE": "|", - "KC_COLON": ":", - "KC_COLN": ":", - "KC_DOUBLE_QUOTE": "\"", - "KC_DQUO": "\"", - "KC_DQT": "\"", - "KC_LEFT_ANGLE_BRACKET": "<", - "KC_LABK": "<", - "KC_LT": "<", - "KC_RIGHT_ANGLE_BRACKET": ">", - "KC_RABK": ">", - "KC_GT": ">", - "KC_QUESTION": "?", - "KC_QUES": "?", - "KC_KP_PLUS": "+", - "LSFT_T(KC_CAPS)": "\u21e7", - - "LGUI(KC_X)": "", - "LGUI(KC_C)": "", - "LGUI(S(LALT(KC_V)))": "", - - "S(KC_NUHS)": "#", - "S(KC_NUBS)": "/", - "MOVEMENT": "\u0394", - "RAISE": "\u2350", - "LOWER": "\u2357", - "LCTL_T(KC_ESC)": "c/e", - "KC_NO": " ", - - "MO(3)": "mov", - "MO(1)": "lower", - "MO(2)": "raise", - "MO(5)": "fn", - "LSFT_T(KC_SPC)": "sp/sh", - "KC_TRNS": "", - "KC_PSTE": "Paste", - - "KC_P1": "1", - "KC_P2": "2", - "KC_P3": "3", - "KC_P4": "4", - "KC_P5": "5", - "KC_P6": "6", - "KC_P7": "7", - "KC_P8": "8", - "KC_P9": "9", - "KC_P0": "0", - - "KC_PCMM": ",", - "KC_PDOT": ".", - "KC_PEQL": "=" -} diff --git a/layouts/community/ortho_4x12/guidoism/readme.md b/layouts/community/ortho_4x12/guidoism/readme.md deleted file mode 100644 index 540db64e85..0000000000 --- a/layouts/community/ortho_4x12/guidoism/readme.md +++ /dev/null @@ -1,107 +0,0 @@ -# Guido's Planck Keyboard Layout - -I've written a script to convert the json file from the -[QMK Configurator](https://config.qmk.fm) to the C macros -and a pretty form the comments. - -First import the json file in this directory into the configurator, -make any changes, export the file and then run this: - - mv ~/Downloads/guidoism.json layouts/community/ortho_4x12/guidoism/ && python3 layouts/community/ortho_4x12/guidoism/generate_c.py && make planck:guidoism:dfu - -TODO: Move running of generate_c.py to makefile so I just need to run `make planck:guidoism:dfu` - -Note that the pretty forms of the keys are defined in another json -file and are made for my specific board. You made need to update this -file to get the pretty forms to look right. - -* Left palm to the `mov` key gets you the `Move` layer -* Right thumb on the `raise` key gets you the various programming brackets and parens on your left hand -* Left palm on `mov` key and left thumb on `lower` key gets you a numpad on your right hand -* Shift with the spacebar -* Left pinky is control on hold and escape on tap - -## Current Configuration - -## Qwerty -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` - - -## Lower -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ caps│ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` - - -## Raise -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ < │ > │ { │ } │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` - - -## Movement -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ home│ │ end │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` - - -## Numpad -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ 0 │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` - - -## Function -``` -┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ -│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ │ -├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ -│ │ │ │ │ │ │ │ │ │ │ │ -└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ -``` diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk index fa433a6b0d..835022f4bf 100644 --- a/layouts/community/ortho_4x12/wanleg/rules.mk +++ b/layouts/community/ortho_4x12/wanleg/rules.mk @@ -5,10 +5,10 @@ ifeq ($(strip $(KEYBOARD)), jj40) SWAP_HANDS_ENABLE = no endif -ifeq ($(strip $(KEYBOARD)), 4x4) +ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4) SWAP_HANDS_ENABLE = no endif ifeq ($(strip $(KEYBOARD)), zlant) SWAP_HANDS_ENABLE = no -endif \ No newline at end of file +endif diff --git a/layouts/community/ortho_4x12/xyverz/rules.mk b/layouts/community/ortho_4x12/xyverz/rules.mk index 852e38f24e..c181e11072 100644 --- a/layouts/community/ortho_4x12/xyverz/rules.mk +++ b/layouts/community/ortho_4x12/xyverz/rules.mk @@ -3,6 +3,8 @@ AUDIO_ENABLE = no # Audio output on port C6 ifeq ("$(KEYBOARD)","vitamins_included") RGBLIGHT_ENABLE = no +else ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4) + RGBLIGHT_ENABLE = no else RGBLIGHT_ENABLE = yes endif diff --git a/layouts/community/planck_mit/guidoism/config.h b/layouts/community/planck_mit/guidoism/config.h new file mode 100644 index 0000000000..e22f298035 --- /dev/null +++ b/layouts/community/planck_mit/guidoism/config.h @@ -0,0 +1,24 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#define IGNORE_MOD_TAP_INTERRUPT +#define USB_MAX_POWER_CONSUMPTION 50 diff --git a/layouts/community/planck_mit/guidoism/generate_c.py b/layouts/community/planck_mit/guidoism/generate_c.py new file mode 100644 index 0000000000..5bee576084 --- /dev/null +++ b/layouts/community/planck_mit/guidoism/generate_c.py @@ -0,0 +1,75 @@ +import itertools +import json +import os.path +import re + +KEYMAP_C = """/* {0} +{1} +*/ +[{2}] = {3}( + {4}) +""" + +README_MD = """## {0} +``` +{1} +``` +""" + +base = os.path.dirname(__file__) + +layer_names = dict(enumerate(['_QWERTY', '_LOWER', '_RAISE', '_MOVEMENT', '_NUMPAD', '_FUNCTION'])) +layer_name = {('MO(%d)' % i): layer_names.get(i).strip('_') for i in layer_names.keys()} + +keys = json.load(open(os.path.join(base, 'keys.json'))) + +d = json.load(open(os.path.join(base, 'guidoism.json'))) + +def surround(s, a, b, c): + return a + b.join(s) + c + +def pattern(cell, table): + return ['─'*cell for i in range(table)] + +top = surround(pattern(5, 12), '┌', '┬', '┐') +mid = surround(pattern(5, 12), '├', '┼', '┤') +bottom = surround(pattern(5, 12), '└', '┴', '┘') + +from more_itertools import chunked, intersperse, interleave_longest + +def uni(k): + return keys.get(k, k).lower().center(5) + +def c_layout(i, definition, template): + c_name = layer_names[i] + pretty_name = c_name.strip('_').capitalize() + layout = d['layout'] + + surround = lambda s: ''.join(interleave_longest(['│']*(len(s)+1), s)) + layer = list(map(uni, definition)) + layer[41] = layer[41].center(11) + layer = chunked(layer, 12) + rows = intersperse(mid, map(surround, layer)) + pretty = '\n'.join(itertools.chain([top], rows, [bottom])) + + surround = lambda s: ', '.join(s) + layer = list(map(lambda k: layer_name.get(k, k), definition)) + layer = chunked(layer, 12) + rows = map(surround, layer) + c_layer = ',\n '.join(itertools.chain([], rows, [])) + + return template.format(pretty_name, pretty, c_name, layout, c_layer) + +start = '// START_REPLACEMENT\n' +end = '// END_REPLACEMENT\n' +replacement = start + ',\n\n'.join(c_layout(i, l, KEYMAP_C) for i, l in enumerate(d['layers'])) + end +keymap = os.path.join(base, 'keymap.c') +existing = open(keymap).read() +r = re.compile(r'// START_REPLACEMENT.*// END_REPLACEMENT', re.DOTALL) +open(keymap, 'w').write(r.sub(replacement, existing)) + +replacement = '## Current Configuration\n\n' + '\n\n'.join(c_layout(i, l, README_MD) for i, l in enumerate(d['layers'])) +keymap = os.path.join(base, 'readme.md') +existing = open(keymap).read() +r = re.compile(r'## Current Configuration.*', re.DOTALL) +open(keymap, 'w').write(r.sub(replacement, existing)) diff --git a/layouts/community/planck_mit/guidoism/guidoism.json b/layouts/community/planck_mit/guidoism/guidoism.json new file mode 100644 index 0000000000..6a4364c6be --- /dev/null +++ b/layouts/community/planck_mit/guidoism/guidoism.json @@ -0,0 +1 @@ +{"keyboard":"planck/rev4","keymap":"guidoism","layout":"LAYOUT_planck_mit","layers":[["KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSPC","KC_LCTL","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_COLN","KC_ENT","KC_LSFT","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_NO","MO(3)","KC_ESC","KC_LALT","KC_LGUI","MO(1)","LSFT_T(KC_SPC)","MO(2)","KC_RGUI","KC_RALT","KC_SCLN","MO(5)"],["KC_TILD","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_CIRC","KC_AMPR","KC_ASTR","KC_NO","KC_NO","KC_UNDO","KC_TRNS","KC_NO","KC_CUT","KC_COPY","KC_PSTE","KC_NO","KC_NO","KC_UNDS","KC_PLUS","KC_DQUO","KC_QUOT","KC_PIPE","KC_CAPS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_MNXT","KC_VOLD","KC_VOLU","KC_MPLY"],["KC_GRV","KC_P1","KC_P2","KC_P3","KC_P4","KC_P5","KC_P6","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_LBRC","KC_RBRC","KC_LPRN","KC_RPRN","KC_NO","KC_NO","KC_PMNS","KC_PEQL","KC_NO","KC_NO","KC_BSLS","KC_TRNS","KC_LT","KC_GT","KC_LCBR","KC_RCBR","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["RESET","DEBUG","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PGUP","KC_UP","KC_PGDN","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_HOME","KC_NO","KC_END","KC_NO","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_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PERC","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_DLR","KC_P4","KC_P5","KC_P6","KC_PDOT","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P0","KC_P1","KC_P2","KC_P3","KC_PCMM","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_NO","KC_P0","KC_NO","KC_NO","KC_TRNS"],["KC_NO","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS"]]} \ No newline at end of file diff --git a/layouts/community/planck_mit/guidoism/keymap.c b/layouts/community/planck_mit/guidoism/keymap.c new file mode 100644 index 0000000000..2027e2bfa4 --- /dev/null +++ b/layouts/community/planck_mit/guidoism/keymap.c @@ -0,0 +1,183 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +enum planck_layers { + _QWERTY, + _LOWER, + _RAISE, + _MOVEMENT, + _NUMPAD, + _FUNCTION, +}; + +enum planck_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + MOVEMENT, + NUMPAD, +}; + +#define FUNCTION MO(_FUNCTION) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// START_REPLACEMENT +/* Qwerty +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_QWERTY] = LAYOUT_planck_mit( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, + MOVEMENT, KC_ESC, KC_LALT, KC_LGUI, LOWER, LSFT_T(KC_SPC), RAISE, KC_RGUI, KC_RALT, KC_SCLN, FUNCTION) +, + +/* Lower +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ caps│ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_LOWER] = LAYOUT_planck_mit( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_NO, KC_NO, KC_UNDO, + KC_TRNS, KC_NO, KC_CUT, KC_COPY, KC_PSTE, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_DQUO, KC_QUOT, KC_PIPE, + KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY) +, + +/* Raise +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ < │ > │ { │ } │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_RAISE] = LAYOUT_planck_mit( + KC_GRV, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, + KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_PMNS, KC_PEQL, KC_NO, KC_NO, KC_BSLS, + KC_TRNS, KC_LT, KC_GT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +, + +/* Movement +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ home│ │ end │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_MOVEMENT] = LAYOUT_planck_mit( + RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +, + +/* Numpad +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ 0 │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_NUMPAD] = LAYOUT_planck_mit( + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PERC, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DLR, KC_P4, KC_P5, KC_P6, KC_PDOT, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P0, KC_P1, KC_P2, KC_P3, KC_PCMM, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_P0, KC_NO, KC_NO, KC_TRNS) +, + +/* Function +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +*/ +[_FUNCTION] = LAYOUT_planck_mit( + KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS) +// END_REPLACEMENT + + + + + + + + +}; + + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + } else { + layer_off(_RAISE); + } + return false; + break; + case MOVEMENT: + if (record->event.pressed) { + layer_on(_MOVEMENT); + update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); + } else { + layer_off(_MOVEMENT); + update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD); + } + return false; + break; + } + return true; +} diff --git a/layouts/community/planck_mit/guidoism/keys.json b/layouts/community/planck_mit/guidoism/keys.json new file mode 100644 index 0000000000..791119b4f2 --- /dev/null +++ b/layouts/community/planck_mit/guidoism/keys.json @@ -0,0 +1,317 @@ +{ + "KC_1": "1", + "SHIFTED_KC_1": "!", + "KC_2": "2", + "SHIFTED_KC_2": "@", + "KC_3": "3", + "SHIFTED_KC_3": "#", + "KC_4": "4", + "SHIFTED_KC_4": "$", + "KC_5": "5", + "SHIFTED_KC_5": "%", + "KC_6": "6", + "SHIFTED_KC_6": "^", + "KC_7": "7", + "SHIFTED_KC_7": "&", + "KC_8": "8", + "SHIFTED_KC_8": "*", + "KC_9": "9", + "SHIFTED_KC_9": "(", + "KC_0": "0", + "SHIFTED_KC_0": ")", + "KC_A": "a", + "SHIFTED_KC_A": "A", + "KC_B": "b", + "SHIFTED_KC_B": "B", + "KC_C": "c", + "SHIFTED_KC_C": "C", + "KC_D": "d", + "SHIFTED_KC_D": "D", + "KC_E": "e", + "SHIFTED_KC_E": "E", + "KC_F": "f", + "SHIFTED_KC_F": "F", + "KC_G": "g", + "SHIFTED_KC_G": "G", + "KC_H": "h", + "SHIFTED_KC_H": "H", + "KC_I": "i", + "SHIFTED_KC_I": "I", + "KC_J": "j", + "SHIFTED_KC_J": "J", + "KC_K": "k", + "SHIFTED_KC_K": "K", + "KC_L": "l", + "SHIFTED_KC_L": "L", + "KC_M": "m", + "SHIFTED_KC_M": "M", + "KC_N": "n", + "SHIFTED_KC_N": "N", + "KC_O": "o", + "SHIFTED_KC_O": "O", + "KC_P": "p", + "SHIFTED_KC_P": "P", + "KC_Q": "q", + "SHIFTED_KC_Q": "Q", + "KC_R": "r", + "SHIFTED_KC_R": "R", + "KC_S": "s", + "SHIFTED_KC_S": "S", + "KC_T": "t", + "SHIFTED_KC_T": "T", + "KC_U": "u", + "SHIFTED_KC_U": "U", + "KC_V": "v", + "SHIFTED_KC_V": "V", + "KC_W": "w", + "SHIFTED_KC_W": "W", + "KC_X": "x", + "SHIFTED_KC_X": "X", + "KC_Y": "y", + "SHIFTED_KC_Y": "Y", + "KC_Z": "z", + "SHIFTED_KC_Z": "Z", + "KC_ENTER": "\u23ce", + "KC_ENT": "\u23ce", + "KC_ESCAPE": "\u238b", + "KC_ESC": "\u238b", + "KC_BSPACE": "\u232b", + "KC_BSPC": "\u232b", + "KC_TAB": "\u21e5", + "KC_SPACE": "", + "KC_SPC": "", + "KC_MINUS": "-", + "KC_MINS": "-", + "KC_EQUAL": "+", + "KC_EQL": "=", + "KC_LBRACKET": "{", + "KC_LBRC": "[", + "KC_RBRACKET": "}", + "KC_RBRC": "]", + "KC_BSLS": "\\", + "KC_BSLASH": "\\", + "KC_SCOLON": ":", + "KC_SCLN": ";", + "KC_QUOTE": "\"", + "KC_QUOT": "'", + "KC_GRAVE": "`", + "KC_GRV": "`", + "KC_COMMA": ",", + "KC_COMM": ",", + "KC_DOT": ".", + "KC_SLASH": "/", + "KC_NUBS": "/", + "KC_NUHS": "#", + "KC_CAPSLOCK": "Caps", + "KC_CAPS": "Caps", + "KC_LCTRL": "Ctrl", + "KC_LCTL": "Ctrl", + "KC_LSHIFT": "\u21e7", + "KC_LSFT": "\u21e7", + "KC_LALT": "\u2325", + "KC_LGUI": "\u2318", + "KC_LCMD": "\u2318", + "KC_RCTRL": "Right Control", + "KC_RCTL": "Right Control", + "KC_RSHIFT": "\u21e7", + "KC_RSFT": "\u21e7", + "KC_RALT": "\u2325", + "KC_RGUI": "\u2318", + "KC_RCMD": "\u2318", + "KC_LOCKING_CAPS": "Locking Caps Lock", + "KC_LCAP": "Locking Caps Lock", + "KC_LOCKING_NUM": "Locking Num Lock", + "KC_LNUM": "Locking Num Lock", + "KC_LOCKING_SCROLL": "Locking Scroll Lock", + "KC_LSCR": "Locking Scroll Lock", + "KC_INT4": "JIS Henkan", + "KC_HENK": "JIS Henkan", + "KC_INT5": "JIS Muhenkan", + "KC_MHEN": "JIS Muhenkan", + "KC_PSCREEN": "Print Screen", + "KC_PSCR": "Print Screen", + "KC_SCROLLLOCK": "Scroll Lock", + "KC_SLCK": "Scroll Lock", + "KC_PAUSE": "Pause", + "KC_PAUS": "Pause", + "KC_INSERT": "Insert", + "KC_INS": "Insert", + "KC_HOME": "Home", + "KC_PGUP": "PgUp", + "KC_DELETE": "\u2326", + "KC_DEL": "\u2326", + "KC_END": "End", + "KC_PGDOWN": "PgDn", + "KC_PGDN": "PgDn", + "KC_RIGHT": "→", + "KC_RGHT": "→", + "KC_LEFT": "←", + "KC_DOWN": "↓", + "KC_UP": "↑", + "KC_APPLICATION": "Application (Windows Menu Key)", + "KC_APP": "Application (Windows Menu Key)", + "KC_POWER": "Deprecated by MS in favor of KC_SYSTEM_POWER.", + "KC_EXECUTE": "Execute", + "KC_HELP": "Help", + "KC_MENU": "Menu", + "KC_SELECT": "Select", + "KC_AGAIN": "Again", + "KC_UNDO": "Undo", + "KC_CUT": "Cut", + "KC_COPY": "Copy", + "KC_PASTE": "Paste", + "KC_FIND": "Find", + "KC_ALT_ERASE": "Alternate Erase", + "KC_SYSREQ": "SysReq/Attention", + "KC_CANCEL": "Cancel", + "KC_CLEAR": "Clear", + "KC_PRIOR": "Prior", + "KC_RETURN": "Return", + "KC_SEPARATOR": "Separator", + "KC_OUT": "Out", + "KC_OPER": "Oper", + "KC_CLEAR_AGAIN": "Clear/Again", + "KC_CRSEL": "CrSel/Props", + "KC_EXSEL": "ExSel", + "KC_SYSTEM_POWER": "System Power Down.", + "KC_PWR": "System Power Down.", + "KC_SYSTEM_SLEEP": "System Sleep", + "KC_SLEP": "System Sleep", + "KC_SYSTEM_WAKE": "System Wake", + "KC_WAKE": "System Wake", + "KC_STOP": "Stop", + "KC__MUTE": "Mute (macOS)", + "KC__VOLUP": "vol+", + "KC__VOLDOWN": "vol-", + "KC_AUDIO_MUTE": "Mute", + "KC_MUTE": "Mute", + "KC_AUDIO_VOL_UP": "vol+", + "KC_VOLU": "vol+", + "KC_AUDIO_VOL_DOWN": "vol-", + "KC_VOLD": "vol-", + "KC_MEDIA_NEXT_TRACK": "next", + "KC_MNXT": "next", + "KC_MEDIA_PREV_TRACK": "Previous Track (Windows)", + "KC_MPRV": "Previous Track (Windows)", + "KC_MEDIA_FAST_FORWARD": "next", + "KC_MFFD": "next", + "KC_MEDIA_REWIND": "Previous Track (macOS)", + "KC_MRWD": "Previous Track (macOS)", + "KC_MEDIA_STOP": "Stop Track", + "KC_MSTP": "Stop Track", + "KC_MEDIA_PLAY_PAUSE": "play", + "KC_MPLY": "play", + "KC_NUMLOCK": "Keypad Num Lock and Clear", + "KC_NLCK": "Keypad Num Lock and Clear", + "KC_SLSH": "/", + "KC_KP_SLASH": "/", + "KC_PSLS": "/", + "KC_KP_ASTERISK": "*", + "KC_PAST": "*", + "KC_KP_MINUS": "-", + "KC_PMNS": "-", + "KC_PPLS": "+", + "KC_KP_ENTER": "Enter", + "KC_PENT": "Enter", + "KC_KP_1": "1", + "KC_KP_2": "2", + "KC_KP_3": "3", + "KC_KP_4": "4", + "KC_KP_5": "5", + "KC_KP_6": "6", + "KC_KP_7": "7", + "KC_KP_8": "8", + "KC_KP_9": "9", + "KC_KP_0": "0", + "KC_F1": "F1", + "KC_F2": "F2", + "KC_F3": "F3", + "KC_F4": "F4", + "KC_F5": "F5", + "KC_F6": "F6", + "KC_F7": "F7", + "KC_F8": "F8", + "KC_F9": "F9", + "KC_F10": "F10", + "KC_F11": "F11", + "KC_F12": "F12", + "_______": "", + "KC_TILDE": "~", + "KC_TILD": "~", + "KC_EXCLAIM": "!", + "KC_EXLM": "!", + "KC_AT": "@", + "KC_HASH": "#", + "KC_DOLLAR": "$", + "KC_DLR": "$", + "KC_PERCENT": "%", + "KC_PERC": "%", + "KC_CIRCUMFLEX": "^", + "KC_CIRC": "^", + "KC_AMPERSAND": "&", + "KC_AMPR": "&", + "KC_ASTERISK": "*", + "KC_ASTR": "*", + "KC_LEFT_PAREN": "(", + "KC_LPRN": "(", + "KC_RIGHT_PAREN": ")", + "KC_RPRN": ")", + "KC_UNDERSCORE": "_", + "KC_UNDS": "_", + "KC_PLUS": "+", + "KC_LEFT_CURLY_BRACE": "{", + "KC_LCBR": "{", + "KC_RIGHT_CURLY_BRACE": "}", + "KC_RCBR": "}", + "KC_PIPE": "|", + "KC_COLON": ":", + "KC_COLN": ":", + "KC_DOUBLE_QUOTE": "\"", + "KC_DQUO": "\"", + "KC_DQT": "\"", + "KC_LEFT_ANGLE_BRACKET": "<", + "KC_LABK": "<", + "KC_LT": "<", + "KC_RIGHT_ANGLE_BRACKET": ">", + "KC_RABK": ">", + "KC_GT": ">", + "KC_QUESTION": "?", + "KC_QUES": "?", + "KC_KP_PLUS": "+", + "LSFT_T(KC_CAPS)": "\u21e7", + + "LGUI(KC_X)": "", + "LGUI(KC_C)": "", + "LGUI(S(LALT(KC_V)))": "", + + "S(KC_NUHS)": "#", + "S(KC_NUBS)": "/", + "MOVEMENT": "\u0394", + "RAISE": "\u2350", + "LOWER": "\u2357", + "LCTL_T(KC_ESC)": "c/e", + "KC_NO": " ", + + "MO(3)": "mov", + "MO(1)": "lower", + "MO(2)": "raise", + "MO(5)": "fn", + "LSFT_T(KC_SPC)": "sp/sh", + "KC_TRNS": "", + "KC_PSTE": "Paste", + + "KC_P1": "1", + "KC_P2": "2", + "KC_P3": "3", + "KC_P4": "4", + "KC_P5": "5", + "KC_P6": "6", + "KC_P7": "7", + "KC_P8": "8", + "KC_P9": "9", + "KC_P0": "0", + + "KC_PCMM": ",", + "KC_PDOT": ".", + "KC_PEQL": "=" +} diff --git a/layouts/community/planck_mit/guidoism/readme.md b/layouts/community/planck_mit/guidoism/readme.md new file mode 100644 index 0000000000..540db64e85 --- /dev/null +++ b/layouts/community/planck_mit/guidoism/readme.md @@ -0,0 +1,107 @@ +# Guido's Planck Keyboard Layout + +I've written a script to convert the json file from the +[QMK Configurator](https://config.qmk.fm) to the C macros +and a pretty form the comments. + +First import the json file in this directory into the configurator, +make any changes, export the file and then run this: + + mv ~/Downloads/guidoism.json layouts/community/ortho_4x12/guidoism/ && python3 layouts/community/ortho_4x12/guidoism/generate_c.py && make planck:guidoism:dfu + +TODO: Move running of generate_c.py to makefile so I just need to run `make planck:guidoism:dfu` + +Note that the pretty forms of the keys are defined in another json +file and are made for my specific board. You made need to update this +file to get the pretty forms to look right. + +* Left palm to the `mov` key gets you the `Move` layer +* Right thumb on the `raise` key gets you the various programming brackets and parens on your left hand +* Left palm on `mov` key and left thumb on `lower` key gets you a numpad on your right hand +* Shift with the spacebar +* Left pinky is control on hold and escape on tap + +## Current Configuration + +## Qwerty +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` + + +## Lower +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ caps│ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` + + +## Raise +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ < │ > │ { │ } │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` + + +## Movement +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ home│ │ end │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` + + +## Numpad +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ 0 │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` + + +## Function +``` +┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ +│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤ +│ │ │ │ │ │ │ │ │ │ │ │ +└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘ +``` -- cgit v1.2.3 From ecd21b44a8efd5c7241ebf48c65fc7b30134865f Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 26 Nov 2018 16:45:24 -0800 Subject: Update to drashna userspace and keymaps (#4459) * Fix reversed bool check in layer_state_set * Add Quefrency 65 for a friend * Add Ergodox EZ Glow keymap * Add RGB Matrix Code * Further changes to rgb matrix ErgoDox EZ * Update bjohnson keymaps * Fix CRKBD display * Overhaul to corne keyboard * Narrow scope for keylogger * Minor layout tweaks to Corne Keyboard * additional CRKBD tweaks * Minor tweaks to CRKBD * Add all characters for keylogger * Ergodox EZ Glow overhaul * Fix Ergodox EZ Glow layer colors * Increase Tapping Term for Corne Keyboard * Fix unicode-ish * Revert some changes * Add layer specific lighting effects * Some minor tweaks to ergodox glow config * revert changes to ergodox files * Update Glow readme * Add more tapping term defines * Fix changes * Fix ergodox keymap * Hopefully fix sleeping * Disable layer indications if rgb matrix is disabled * Add support for sleeping and rgb layer change toggle to ergodox ez glow * Make RGB Layer Indication Great Again * Make Unicode Great Again * Remove placeholder define Co-Authored-By: drashna * Remove placeholder define Co-Authored-By: drashna * Remove old EEPROM Reset keycode --- keyboards/crkbd/keymaps/drashna/config.h | 7 +- keyboards/crkbd/keymaps/drashna/keymap.c | 153 ++++++++++++++++------- keyboards/crkbd/keymaps/drashna/rules.mk | 8 +- keyboards/iris/keymaps/drashna/keymap.c | 2 +- keyboards/iris/keymaps/drashna/rules.mk | 2 +- keyboards/orthodox/keymaps/drashna/keymap.c | 2 +- keyboards/quefrency/keymaps/bjohnson/config.h | 41 ++++++ keyboards/quefrency/keymaps/bjohnson/keymap.c | 33 +++++ keyboards/quefrency/keymaps/bjohnson/rules.mk | 22 ++++ keyboards/viterbi/keymaps/drashna/keymap.c | 4 +- layouts/community/ergodox/drashna/keymap.c | 120 ++++++++++++++++-- layouts/community/ergodox/drashna_glow/README.md | 1 + layouts/community/ergodox/drashna_glow/config.h | 11 ++ layouts/community/ergodox/drashna_glow/keymap.c | 67 ++++++++++ layouts/community/ergodox/drashna_glow/rules.mk | 9 ++ layouts/community/ortho_4x12/drashna/keymap.c | 2 +- users/drashna/config.h | 4 +- users/drashna/drashna.c | 22 ++-- users/drashna/drashna.h | 8 +- users/drashna/rgb_stuff.c | 86 +++++++++---- users/drashna/rgb_stuff.h | 2 +- users/drashna/rules.mk | 17 +++ users/drashna/send_unicode.c | 54 ++++++++ users/drashna/template.c | 7 -- users/drashna/template.h | 4 +- 25 files changed, 576 insertions(+), 112 deletions(-) create mode 100644 keyboards/quefrency/keymaps/bjohnson/config.h create mode 100644 keyboards/quefrency/keymaps/bjohnson/keymap.c create mode 100644 keyboards/quefrency/keymaps/bjohnson/rules.mk create mode 100644 layouts/community/ergodox/drashna_glow/README.md create mode 100644 layouts/community/ergodox/drashna_glow/config.h create mode 100644 layouts/community/ergodox/drashna_glow/keymap.c create mode 100644 layouts/community/ergodox/drashna_glow/rules.mk (limited to 'layouts') diff --git a/keyboards/crkbd/keymaps/drashna/config.h b/keyboards/crkbd/keymaps/drashna/config.h index adfd79044d..cbc3feeb61 100644 --- a/keyboards/crkbd/keymaps/drashna/config.h +++ b/keyboards/crkbd/keymaps/drashna/config.h @@ -41,5 +41,10 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 -#define RGBLIGHT_LIMIT_VAL 120 +#define RGBLIGHT_LIMIT_VAL 100 +#endif + +#ifdef AUDIO_ENABLE +#define B6_AUDIO +// #define NO_MUSIC_MODE #endif diff --git a/keyboards/crkbd/keymaps/drashna/keymap.c b/keyboards/crkbd/keymaps/drashna/keymap.c index 99dcdb4e17..282ee25725 100644 --- a/keyboards/crkbd/keymaps/drashna/keymap.c +++ b/keyboards/crkbd/keymaps/drashna/keymap.c @@ -26,10 +26,10 @@ enum crkbd_keycodes { K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ ) \ LAYOUT_wrapper( \ - KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ - KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \ + KC_TAB, ALT_T(K11), K12, K13, K14, K15, K16, K17, K18, K19, K1A, RGUI_T(KC_QUOT), \ OS_LSFT, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, CTL_T(K2A), OS_RSFT, \ - LT(_LOWER,KC_GRV), KC_SPC, LALT_T(KC_BSPC), KC_DEL, KC_ENT, RAISE \ + LT(_LOWER,KC_GRV), KC_SPC, KC_BSPC, KC_DEL, KC_ENT, RAISE \ ) #define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__) @@ -66,14 +66,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LOWER] = LAYOUT_wrapper( - KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_BSPC, - KC_F11, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE, - KC_F12, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, + KC_F11, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11, + KC_F12, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE, + _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, _______, _______, _______, _______, _______, _______ ), [_RAISE] = LAYOUT_wrapper( \ - KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_BSPC, + _______, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, _______, _______, _______, _______, _______, _______ @@ -81,18 +81,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_wrapper( \ KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET, - VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EPRM, - TG_MODS, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY, - _______, _______, _______, _______, _______, _______ + VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EEP_RST, + _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY, + _______, _______, _______, KC_NUKE, TG_MODS, _______ ) }; -int RGB_current_mode; - void matrix_init_keymap(void) { - #ifdef RGBLIGHT_ENABLE - RGB_current_mode = rgblight_config.mode; - #endif //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h #ifdef SSD1306OLED iota_gfx_init(!has_usb()); // turns on the display @@ -102,53 +97,118 @@ void matrix_init_keymap(void) { PORTD &= ~(1<<5); DDRB &= ~(1<<0); - PORTB &= ~(1<<0);} + PORTB &= ~(1<<0); +} //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h #ifdef SSD1306OLED // When add source files to SRC in rules.mk, you can use functions. -const char *read_layer_state(void); const char *read_logo(void); -void set_keylog(uint16_t keycode, keyrecord_t *record); -const char *read_keylog(void); -const char *read_keylogs(void); char layer_state_str[24]; +char modifier_state_str[24]; +char host_led_state_str[24]; +char keylog_str[24] = {}; +char keylogs_str[21] = {}; +int keylogs_str_idx = 0; + // const char *read_mode_icon(bool swap); -const char *read_host_led_state(void); // void set_timelog(void); // const char *read_timelog(void); +const char code_to_name[60] = { + ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', + 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', + 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', + '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', + 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', + '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; + +void set_keylog(uint16_t keycode, keyrecord_t *record) { + char name = ' '; + if (keycode < 60) { + name = code_to_name[keycode]; + } + + // update keylog + snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c", + record->event.key.row, record->event.key.col, + keycode, name); + + // update keylogs + if (keylogs_str_idx == sizeof(keylogs_str) - 1) { + keylogs_str_idx = 0; + for (int i = 0; i < sizeof(keylogs_str) - 1; i++) { + keylogs_str[i] = ' '; + } + } + + keylogs_str[keylogs_str_idx] = name; + keylogs_str_idx++; +} + +const char *read_keylog(void) { + return keylog_str; +} + +const char *read_keylogs(void) { + return keylogs_str; +} + + +const char* read_modifier_state(void) { + uint8_t modifiers = get_mods(); + uint8_t one_shot = get_oneshot_mods(); + + snprintf(modifier_state_str, sizeof(modifier_state_str), "Mods:%s %s %s %s", + (modifiers & MODS_CTRL_MASK || one_shot & MODS_CTRL_MASK) ? "CTL" : " ", + (modifiers & MODS_GUI_MASK || one_shot & MODS_GUI_MASK) ? "GUI" : " ", + (modifiers & MODS_ALT_MASK || one_shot & MODS_ALT_MASK) ? "ALT" : " ", + (modifiers & MODS_SHIFT_MASK || one_shot & MODS_SHIFT_MASK) ? "SFT" : " " + ); + + return modifier_state_str; +} + +const char *read_host_led_state(void) { + uint8_t leds = host_keyboard_leds(); + + snprintf(host_led_state_str, sizeof(host_led_state_str), "NL:%s CL:%s SL:%s", + (leds & (1 << USB_LED_NUM_LOCK)) ? "on" : "- ", + (leds & (1 << USB_LED_CAPS_LOCK)) ? "on" : "- ", + (leds & (1 << USB_LED_SCROLL_LOCK)) ? "on" : "- " + ); + + return host_led_state_str; +} const char* read_layer_state(void) { - switch (layer_state) { - case _QWERTY: - switch (default_layer_state) { + switch (biton32(layer_state)) { + case _RAISE: + snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise "); + break; + case _LOWER: + snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower "); + break; + case _ADJUST: + snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust "); + break; + default: + switch (biton32(default_layer_state)) { case _QWERTY: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: QWERTY"); + snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Qwerty "); break; case _COLEMAK: snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Colemak"); break; case _DVORAK: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Dvorak"); + snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Dvorak "); break; case _WORKMAN: snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Workman"); break; } break; - case _RAISE: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise"); - break; - case _LOWER: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower"); - break; - case _ADJUST: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust"); - break; - default: - snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state); } return layer_state_str; @@ -160,12 +220,13 @@ void matrix_scan_keymap(void) { void matrix_render_user(struct CharacterMatrix *matrix) { if (is_master) { - // If you want to change the display of OLED, you need to change here + //If you want to change the display of OLED, you need to change here matrix_write_ln(matrix, read_layer_state()); - matrix_write_ln(matrix, read_keylog()); + matrix_write_ln(matrix, read_modifier_state()); + // matrix_write_ln(matrix, read_keylog()); matrix_write_ln(matrix, read_keylogs()); - //matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui)); - matrix_write_ln(matrix, read_host_led_state()); + // matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui)); + matrix_write(matrix, read_host_led_state()); //matrix_write_ln(matrix, read_timelog()); } else { matrix_write(matrix, read_logo()); @@ -187,8 +248,14 @@ void iota_gfx_task_user(void) { } bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - if (record->event.pressed) { - set_keylog(keycode, record); + switch (keycode) { + case KC_A ... KC_SLASH: + case KC_F1 ... KC_F12: + case KC_INSERT ... KC_UP: + case KC_KP_SLASH ... KC_KP_DOT: + case KC_F13 ... KC_F24: + if (record->event.pressed) { set_keylog(keycode, record); } + break; // set_timelog(); } return true; diff --git a/keyboards/crkbd/keymaps/drashna/rules.mk b/keyboards/crkbd/keymaps/drashna/rules.mk index ccf8e2b7c8..4b70f66f7b 100644 --- a/keyboards/crkbd/keymaps/drashna/rules.mk +++ b/keyboards/crkbd/keymaps/drashna/rules.mk @@ -20,12 +20,14 @@ SWAP_HANDS_ENABLE = no # Enable one-hand typing # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +BOOTLOADER = qmk-dfu + # If you want to change the display of OLED, you need to change here SRC += ./lib/glcdfont.c \ ./lib/rgb_state_reader.c \ ./lib/logo_reader.c \ - ./lib/keylogger.c \ - ./lib/host_led_state_reader.c \ - # ./lib/layer_state_reader.c \ + # ./lib/keylogger.c \ + # ./lib/host_led_state_reader.c \ # ./lib/mode_icon_reader.c \ + # ./lib/layer_state_reader.c \ # ./lib/timelogger.c \ diff --git a/keyboards/iris/keymaps/drashna/keymap.c b/keyboards/iris/keymaps/drashna/keymap.c index 21e3151c0f..ba6f18edde 100644 --- a/keyboards/iris/keymaps/drashna/keymap.c +++ b/keyboards/iris/keymaps/drashna/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_wrapper( KC_MAKE, _______, _______, _______, _______, _______, _________________ADJUST_R1_________________, KC_RST, - VRSN, _________________ADJUST_L1_________________, KC_NUKE, _______, _______, _______, _______, EPRM, + VRSN, _________________ADJUST_L1_________________, KC_NUKE, _______, _______, _______, _______, EEP_RST, _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS, _______, _________________ADJUST_L3_________________, TG_GAME, _______, _________________ADJUST_R3_________________, KC_MPLY, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/iris/keymaps/drashna/rules.mk b/keyboards/iris/keymaps/drashna/rules.mk index 89e568f399..ccc33c06f3 100644 --- a/keyboards/iris/keymaps/drashna/rules.mk +++ b/keyboards/iris/keymaps/drashna/rules.mk @@ -8,7 +8,7 @@ RGBLIGHT_ENABLE = yes AUDIO_ENABLE = yes NKRO_ENABLE = yes BACKLIGHT_ENABLE = no -SWAP_HANDS_ENABLE = yes +SWAP_HANDS_ENABLE = no INDICATOR_LIGHTS = yes MACROS_ENABLED = no diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c index 545ad25dcd..346ca4f123 100644 --- a/keyboards/orthodox/keymaps/drashna/keymap.c +++ b/keyboards/orthodox/keymaps/drashna/keymap.c @@ -91,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_wrapper(\ KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET, - VRSN, _________________ADJUST_L2_________________, _______, _______, _______, KC_NUKE, _________________ADJUST_R2_________________, EPRM, + VRSN, _________________ADJUST_L2_________________, _______, _______, _______, KC_NUKE, _________________ADJUST_R2_________________, EEP_RST, TG_MODS, _________________ADJUST_L3_________________, _______, _______, _______, _______, _______, _______, _________________ADJUST_R3_________________, KC_MPLY ) }; diff --git a/keyboards/quefrency/keymaps/bjohnson/config.h b/keyboards/quefrency/keymaps/bjohnson/config.h new file mode 100644 index 0000000000..37c6d6672d --- /dev/null +++ b/keyboards/quefrency/keymaps/bjohnson/config.h @@ -0,0 +1,41 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +#define TAPPING_TERM 500 + +#define IGNORE_MOD_TAP_INTERRUPT +#define PERMISSIVE_HOLD +#define FORCE_NKRO +#define RETRO_TAPPING + +#define TAPPING_TOGGLE 1 + +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +#define RGBLIGHT_SLEEP diff --git a/keyboards/quefrency/keymaps/bjohnson/keymap.c b/keyboards/quefrency/keymaps/bjohnson/keymap.c new file mode 100644 index 0000000000..434a0a3058 --- /dev/null +++ b/keyboards/quefrency/keymaps/bjohnson/keymap.c @@ -0,0 +1,33 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _BASE 0 +#define _FN1 1 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_65( + 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, XXXXXXX, KC_BSPC, KC_HOME, \ + 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_END, \ + 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, KC_DEL, \ + 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, KC_INS, \ + KC_LCTL, KC_LGUI, KC_LALT, LT(_FN1,KC_SPC),KC_SPC, KC_SPC, XXXXXXX, KC_RALT, KC_RGUI, XXXXXXX, KC_APP, KC_RCTL, TT(_FN1) + ), + + [_FN1] = LAYOUT_65( + KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_BSPC, KC_PGUP, \ + _______, _______, KC_UP, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, KC_PGDN, \ + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, \ + _______, RGB_MOD, RGB_HUI, RGB_HUD, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, KC_P0, XXXXXXX, _______, _______, XXXXXXX, _______, _______, _______ + ) +}; diff --git a/keyboards/quefrency/keymaps/bjohnson/rules.mk b/keyboards/quefrency/keymaps/bjohnson/rules.mk new file mode 100644 index 0000000000..70fa711009 --- /dev/null +++ b/keyboards/quefrency/keymaps/bjohnson/rules.mk @@ -0,0 +1,22 @@ +BOOTLOADER = atmel-dfu + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = yes # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +SPLIT_KEYBOARD = yes diff --git a/keyboards/viterbi/keymaps/drashna/keymap.c b/keyboards/viterbi/keymaps/drashna/keymap.c index acda8a0d25..a343205197 100644 --- a/keyboards/viterbi/keymaps/drashna/keymap.c +++ b/keyboards/viterbi/keymaps/drashna/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_MEDIA] = LAYOUT_ortho_5x7( KC_MAKE, KC_RESET,MU_TOG, AU_ON, AU_OFF, CK_TOGG, RGB_SAD, - MEDIA, EPRM, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI, + MEDIA, EEP_RST, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_SW,RGB_M_SN,RGB_M_K, RGB_HUD, KC_MPLY, KC_MPRV, KC_MNXT, RGB_M_X, RGB_M_G, RGB_M_P, RGB_HUI, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI @@ -94,5 +94,3 @@ void matrix_init_keymap(void) { DDRB &= ~(1<<0); PORTB &= ~(1<<0); } - - diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 360a2d9c6d..df9be62b77 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -20,8 +20,13 @@ along with this program. If not, see . #ifdef UNICODEMAP_ENABLE #include "drashna_unicode.h" #endif // UNICODEMAP_ENABLE +extern uint8_t input_mode; - +#ifdef RGB_MATRIX_ENABLE +extern bool g_suspend_state; +extern rgb_config_t rgb_matrix_config; +#endif +extern userspace_config_t userspace_config; //enum more_custom_keycodes { // KC_P00 = NEW_SAFE_RANGE @@ -40,7 +45,7 @@ bool skip_leds = false; KC_TAB, K01, K02, K03, K04, K05, TG(_DIABLO), TG(_DIABLO), K06, K07, K08, K09, K0A, KC_BSLS, \ KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ KC_MLSF, CTL_T(K21), K22, K23, K24, K25, TG(_GAMEPAD), TG(_GAMEPAD), K26, K27, K28, K29, CTL_T(K2A), KC_MRSF, \ - KC_GRV, OSM(MOD_MEH),OSM(MOD_LGUI),KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_SHRG, \ + KC_GRV, OS_MEH, OS_HYPR, KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC(0x2E2E), \ OS_LALT, OS_LGUI, OS_RGUI, CTL_T(KC_ESCAPE), \ KC_HOME, KC_PGUP, \ LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER) \ @@ -198,7 +203,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_GAMEPAD] = LAYOUT_ergodox_pretty_wrapper( KC_ESC, KC_NO, KC_1, KC_2, KC_3, HYPR(KC_Q), HYPR(KC_GRV), KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, - KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, KC_T, UC_SHRG, UC_DISA, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, KC_T, UC_SHRG, UC_DISA, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, KC_I, KC_O, KC_NO, KC_NO, KC_NO, KC_NO, KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_TRNS, TG(_GAMEPAD), KC_N, KC_M, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_U, KC_I, KC_Y, KC_T, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, @@ -263,7 +268,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ergodox_pretty_wrapper( KC_MAKE, _______, _______, _______, _______, _______, _______, KC_NUKE, _________________ADJUST_R1_________________, KC_RST, - VRSN, _________________ADJUST_L1_________________, _______, _______, _______, _______, _______, _______, _______, EPRM, + VRSN, _________________ADJUST_L1_________________, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG(_MODS), _______, _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -290,10 +295,6 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; } -void matrix_init_keymap(void) { // Runs boot tasks for keyboard -}; - - void matrix_scan_keymap(void) { // runs frequently to update info uint8_t modifiers = get_mods(); uint8_t led_usb_state = host_keyboard_leds(); @@ -335,3 +336,106 @@ bool indicator_is_this_led_used_keyboard(uint8_t index) { return false; } } + + +#ifdef RGB_MATRIX_ENABLE + +void suspend_power_down_keymap(void) { + rgb_matrix_set_suspend_state(true); + rgb_matrix_config.enable = false; +} + +void suspend_wakeup_init_keymap(void) { + rgb_matrix_config.enable = true; + rgb_matrix_set_suspend_state(false); +} + +void rgb_matrix_layer_helper (uint8_t red, uint8_t green, uint8_t blue) { + rgb_led led; + for (int i = 0; i < DRIVER_LED_TOTAL; i++) { + led = g_rgb_leds[i]; + if (led.matrix_co.raw < 0xFF) { + if (led.modifier) { + rgb_matrix_set_color( i, red, green, blue ); + } + } + } +} + +void rgb_matrix_indicators_user(void) { + if (g_suspend_state || !rgb_matrix_config.enable || !userspace_config.rgb_layer_change) return; + + switch (biton32(layer_state)) { + case _MODS: + rgb_matrix_layer_helper(0xFF, 0xFF, 0x00); break; + case _GAMEPAD: + rgb_matrix_layer_helper(0xFF, 0x80, 0x00); + rgb_matrix_set_color(32, 0x00, 0xFF, 0x00); // Q + rgb_matrix_set_color(31, 0x00, 0xFF, 0xFF); // W + rgb_matrix_set_color(30, 0xFF, 0x00, 0x00); // E + rgb_matrix_set_color(29, 0xFF, 0x80, 0x00); // R + rgb_matrix_set_color(37, 0x00, 0xFF, 0xFF); // A + rgb_matrix_set_color(36, 0x00, 0xFF, 0xFF); // S + rgb_matrix_set_color(35, 0x00, 0xFF, 0xFF); // D + rgb_matrix_set_color(34, 0x7A, 0x00, 0xFF); // F + + rgb_matrix_set_color(27, 0xFF, 0xFF, 0xFF); // 1 + rgb_matrix_set_color(26, 0x00, 0xFF, 0x00); // 2 + rgb_matrix_set_color(25, 0x7A, 0x00, 0xFF); // 3 + + break; + case _DIABLO: + rgb_matrix_layer_helper(0xFF, 0x00, 0x00); break; + case _RAISE: + rgb_matrix_layer_helper(0xFF, 0xFF, 0x00); break; + case _LOWER: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00); break; + case _ADJUST: + rgb_matrix_layer_helper(0xFF, 0x00, 0x00); break; + default: + switch (biton32(default_layer_state)) { + case _QWERTY: + rgb_matrix_layer_helper(0x00, 0xFF, 0xFF); break; + case _COLEMAK: + rgb_matrix_layer_helper(0xFF, 0x00, 0xFF); break; + case _DVORAK: + rgb_matrix_layer_helper(0x00, 0xFF, 0x00); break; + case _WORKMAN: + rgb_matrix_layer_helper(0xD9, 0xA5, 0x21); break; + } + } +#if 0 + if (this_mod & MODS_SHIFT_MASK || this_led & (1<event.pressed) { - eeconfig_init(); - } - break; case VRSN: // Prints firmware version if (record->event.pressed) { send_string_with_delay_P(PSTR(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE), MACRO_TIMER); @@ -392,7 +390,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #endif } return process_record_keymap(keycode, record) && -#ifdef RGBLIGHT_ENABLE +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) process_record_user_rgb(keycode, record) && #endif // RGBLIGHT_ENABLE process_record_secrets(keycode, record); @@ -413,7 +411,11 @@ uint32_t layer_state_set_user(uint32_t state) { uint32_t default_layer_state_set_user(uint32_t state) { - return default_layer_state_set_keymap(state); + state = default_layer_state_set_keymap(state); +#ifdef RGBLIGHT_ENABLE + state = default_layer_state_set_rgb(state); +#endif // RGBLIGHT_ENABLE + return state; } diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 573cb26fd0..06e726714c 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -73,6 +73,8 @@ typedef union { }; } userspace_config_t; +extern userspace_config_t userspace_config; + #if defined(KEYMAP_SAFE_RANGE) #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE #else @@ -80,8 +82,7 @@ typedef union { #endif enum userspace_custom_keycodes { - EPRM = PLACEHOLDER_SAFE_RANGE, // Resets EEPROM do defaults (as in eeconfig_init) - VRSN, // Prints QMK Firmware and board info + VRSN = PLACEHOLDER_SAFE_RANGE, // Prints QMK Firmware and board info KC_QWERTY, // Sets default layer to QWERTY KC_COLEMAK, // Sets default layer to COLEMAK KC_DVORAK, // Sets default layer to DVORAK @@ -159,6 +160,9 @@ enum userspace_custom_keycodes { #define OS_RCTL OSM(MOD_RCTL) #define OS_LALT OSM(MOD_LALT) #define OS_RALT OSM(MOD_RALT) +#define OS_MEH OSM(MOD_MEH) +#define OS_HYPR OSM(MOD_HYPR) + #define ALT_APP ALT_T(KC_APP) #define MG_NKRO MAGIC_TOGGLE_NKRO diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index b6de4d39e5..d238c20651 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -2,8 +2,11 @@ #include "rgb_stuff.h" #include "eeprom.h" +#if defined(RGBLIGHT_ENABLE) extern rgblight_config_t rgblight_config; -extern userspace_config_t userspace_config; +#elif defined(RGB_MATRIX_ENABLE) +extern rgb_config_t rgb_matrix_config; +#endif #ifdef RGBLIGHT_ENABLE void rgblight_sethsv_default_helper(uint8_t index) { @@ -209,7 +212,7 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { return true; break; #endif // RGBLIGHT_TWINKLE case KC_RGB_T: // This allows me to use underglow as layer indication, or as normal -#ifdef RGBLIGHT_ENABLE +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) if (record->event.pressed) { userspace_config.rgb_layer_change ^= 1; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); @@ -237,24 +240,25 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { -void matrix_init_rgb(void) { + void matrix_init_rgb(void) { - if (userspace_config.rgb_layer_change) { - rgblight_init(); - rgblight_enable_noeeprom(); - switch (biton32(eeconfig_read_default_layer())) { - case _COLEMAK: - rgblight_sethsv_noeeprom_magenta(); break; - case _DVORAK: - rgblight_sethsv_noeeprom_springgreen(); break; - case _WORKMAN: - rgblight_sethsv_noeeprom_goldenrod(); break; - default: - rgblight_sethsv_noeeprom_cyan(); break; - } - rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); - } -} +// #ifdef RGBLIGHT_ENABLE +// if (userspace_config.rgb_layer_change) { +// rgblight_enable_noeeprom(); +// switch (biton32(eeconfig_read_default_layer())) { +// case _COLEMAK: +// rgblight_sethsv_noeeprom_magenta(); break; +// case _DVORAK: +// rgblight_sethsv_noeeprom_springgreen(); break; +// case _WORKMAN: +// rgblight_sethsv_noeeprom_goldenrod(); break; +// default: +// rgblight_sethsv_noeeprom_cyan(); break; +// } +// rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); +// } +// #endif + } void matrix_scan_rgb(void) { #ifdef RGBLIGHT_TWINKLE @@ -270,7 +274,6 @@ void matrix_scan_rgb(void) { uint32_t layer_state_set_rgb(uint32_t state) { #ifdef RGBLIGHT_ENABLE - static bool has_ran; if (userspace_config.rgb_layer_change) { switch (biton32(state)) { case _MACROS: @@ -312,12 +315,7 @@ uint32_t layer_state_set_rgb(uint32_t state) { default: rgblight_sethsv_noeeprom_cyan(); break; } - if (has_ran) { - biton32(state) == _MODS ? rgblight_mode(RGBLIGHT_MODE_BREATHING) : rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); // if _MODS layer is on, then breath to denote it - } else { - biton32(state) == _MODS ? rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING) : rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); // if _MODS layer is on, then breath to denote it - has_ran = true; - } + biton32(state) == _MODS ? rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING) : rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); // if _MODS layer is on, then breath to denote it break; } // layer_state_set_indicator(); // Runs every scan, so need to call this here .... since I can't get it working "right" anyhow @@ -326,3 +324,39 @@ uint32_t layer_state_set_rgb(uint32_t state) { return state; } + +uint32_t default_layer_state_set_rgb(uint32_t state) { +#ifdef RGBLIGHT_ENABLE + if (userspace_config.rgb_layer_change) { + rgblight_config_t temp_rgblight_config = rgblight_config; + switch (biton32(state)) { + case _COLEMAK: + temp_rgblight_config.hue = 300; + temp_rgblight_config.val = 255; + temp_rgblight_config.sat = 255; + temp_rgblight_config.mode = 1; + break; + case _DVORAK: + temp_rgblight_config.hue = 150; + temp_rgblight_config.val = 255; + temp_rgblight_config.sat = 255; + temp_rgblight_config.mode = 1; + case _WORKMAN: + temp_rgblight_config.hue = 43; + temp_rgblight_config.val = 218; + temp_rgblight_config.sat = 218; + temp_rgblight_config.mode = 1; + default: + temp_rgblight_config.hue = 180; + temp_rgblight_config.val = 255; + temp_rgblight_config.sat = 255; + temp_rgblight_config.mode = 1; + } + if (temp_rgblight_config.raw != eeconfig_read_rgblight()) { + xprintf("rgblight set default layer hsv [EEPROM]: %u,%u,%u,%u\n", temp_rgblight_config.hue, temp_rgblight_config.sat, temp_rgblight_config.val, temp_rgblight_config.mode); + eeconfig_update_rgblight(temp_rgblight_config.raw); + } + } +#endif // RGBLIGHT_ENABLE + return state; +} diff --git a/users/drashna/rgb_stuff.h b/users/drashna/rgb_stuff.h index 50c75c8c3c..3db068a31d 100644 --- a/users/drashna/rgb_stuff.h +++ b/users/drashna/rgb_stuff.h @@ -12,4 +12,4 @@ void scan_rgblight_fadeout(void); void matrix_init_rgb(void); void matrix_scan_rgb(void); uint32_t layer_state_set_rgb(uint32_t state); - +uint32_t default_layer_state_set_rgb(uint32_t state); diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 964c96c522..49b1ddae97 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -27,6 +27,11 @@ ifeq ($(strip $(RGBLIGHT_ENABLE)), yes) endif endif +ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes) + SRC += rgb_stuff.c +endif + + ifeq ($(strip $(MACROS_ENABLED)), yes) OPT_DEFS += -DMACROS_ENABLED endif @@ -37,3 +42,15 @@ ifdef CONSOLE_ENABLE endif endif + +ifeq ($(strip $(UCIS_ENABLE)), yes) + SRC += send_unicode.c +endif + +ifeq ($(strip $(UNICODEMAP_ENABLE)), yes) + SRC += send_unicode.c +endif + +ifeq ($(strip $(UNICODE_ENABLE)), yes) + SRC += send_unicode.c +endif diff --git a/users/drashna/send_unicode.c b/users/drashna/send_unicode.c index cacfe1dc85..ff35368da7 100644 --- a/users/drashna/send_unicode.c +++ b/users/drashna/send_unicode.c @@ -56,3 +56,57 @@ void send_unicode_hex_string(const char* str) { // If you need a good converter: https://r12a.github.io/app-conversion/ +uint8_t saved_mods; + +void unicode_input_start (void) { + // save current mods + saved_mods = get_mods(); // Save current mods + clear_mods(); // Unregister mods to start from a clean state + + switch(get_unicode_input_mode()) { + case UC_OSX: + register_code(KC_LALT); + break; + case UC_OSX_RALT: + register_code(KC_RALT); + break; + case UC_LNX: + register_code(KC_LCTL); + register_code(KC_LSFT); + register_code(KC_U); + unregister_code(KC_U); + unregister_code(KC_LSFT); + unregister_code(KC_LCTL); + break; + case UC_WIN: + register_code(KC_LALT); + register_code(KC_PPLS); + unregister_code(KC_PPLS); + break; + case UC_WINC: + register_code(KC_RALT); + unregister_code(KC_RALT); + register_code(KC_U); + unregister_code(KC_U); + break; + } + wait_ms(UNICODE_TYPE_DELAY); +} + +void unicode_input_finish (void) { + switch(get_unicode_input_mode()) { + case UC_OSX: + case UC_WIN: + unregister_code(KC_LALT); + break; + case UC_OSX_RALT: + unregister_code(KC_RALT); + break; + case UC_LNX: + register_code(KC_SPC); + unregister_code(KC_SPC); + break; + } + + set_mods(saved_mods); // Reregister previously set mods +} diff --git a/users/drashna/template.c b/users/drashna/template.c index e6b50c961b..0e188f3a5e 100644 --- a/users/drashna/template.c +++ b/users/drashna/template.c @@ -50,12 +50,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; - case EPRM: - if (record->event.pressed) { - eeconfig_init(); - } - return false; - break; case VRSN: if (record->event.pressed) { SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); @@ -128,4 +122,3 @@ void shutdown_keymap(void) {} void shutdown_user (void) { shutdown_keymap(); } - diff --git a/users/drashna/template.h b/users/drashna/template.h index 5b3a93de5f..dd1c487604 100644 --- a/users/drashna/template.h +++ b/users/drashna/template.h @@ -9,9 +9,7 @@ #define BASE 0 enum custom_keycodes { - PLACEHOLDER = SAFE_RANGE, // can always be here - EPRM, - VRSN, + VRSN = SAFE_RANGE, // can always be here KC_MAKE, KC_RESET, NEWPLACEHOLDER //use "NEWPLACEHOLDER for keymap specific codes -- cgit v1.2.3 From 87e6d0137484fdc8e076eb79dbbed47836eba2c5 Mon Sep 17 00:00:00 2001 From: GO <44800276+GoTakigawa@users.noreply.github.com> Date: Thu, 29 Nov 2018 02:20:46 +0900 Subject: Keyboard: add newgame (#4466) * Add files via upload * Add files via upload * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/newgame40.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/keymaps/default/keymap.c Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/config.h Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/rules.mk Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/rules.mk Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Add readme (newgame40) * Update keyboards/newgame40/readme.md Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keyboards/newgame40/readme.md Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Update keymap.c * Update keyboards/newgame40/rules.mk Co-Authored-By: GoTakigawa <44800276+GoTakigawa@users.noreply.github.com> * Add files via upload * remove community/ortho_4x10 --- keyboards/newgame40/config.h | 75 ++++++++ keyboards/newgame40/info.json | 13 ++ keyboards/newgame40/keymaps/default/config.h | 5 + keyboards/newgame40/keymaps/default/keymap.c | 208 +++++++++++++++++++++ keyboards/newgame40/newgame40.c | 5 + keyboards/newgame40/newgame40.h | 19 ++ keyboards/newgame40/readme.md | 17 ++ keyboards/newgame40/rules.mk | 74 ++++++++ .../default/ortho_4x10/default_ortho_4x10/keymap.c | 10 + layouts/default/ortho_4x10/layout.json | 4 + layouts/default/ortho_4x10/readme.md | 3 + 11 files changed, 433 insertions(+) create mode 100644 keyboards/newgame40/config.h create mode 100644 keyboards/newgame40/info.json create mode 100644 keyboards/newgame40/keymaps/default/config.h create mode 100644 keyboards/newgame40/keymaps/default/keymap.c create mode 100644 keyboards/newgame40/newgame40.c create mode 100644 keyboards/newgame40/newgame40.h create mode 100644 keyboards/newgame40/readme.md create mode 100644 keyboards/newgame40/rules.mk create mode 100644 layouts/default/ortho_4x10/default_ortho_4x10/keymap.c create mode 100644 layouts/default/ortho_4x10/layout.json create mode 100644 layouts/default/ortho_4x10/readme.md (limited to 'layouts') diff --git a/keyboards/newgame40/config.h b/keyboards/newgame40/config.h new file mode 100644 index 0000000000..01c9142f77 --- /dev/null +++ b/keyboards/newgame40/config.h @@ -0,0 +1,75 @@ +/* +Copyright 2018 Go Takigawa + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER GoTakigawa +#define PRODUCT NEWGAME40 +#define DESCRIPTION 4x10key keyboard + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 10 + +/* pin-out */ +#define MATRIX_ROW_PINS { F7, B1, B3, B2 } +#define MATRIX_COL_PINS { D3, D2, D1, D0, D4, C6, D7, E6, B4, B5 } +#define UNUSED_PINS + +/* ws2812 RGB LED */ +#define RGB_DI_PIN F6 +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 25 // Number of LEDs +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 + +#ifndef IOS_DEVICE_ENABLE + #if RGBLED_NUM <= 6 + #define RGBLIGHT_LIMIT_VAL 255 + #else + #define RGBLIGHT_LIMIT_VAL 130 + #endif + #define RGBLIGHT_VAL_STEP 17 +#else + #if RGBLED_NUM <= 6 + #define RGBLIGHT_LIMIT_VAL 90 + #else + #define RGBLIGHT_LIMIT_VAL 45 + #endif + #define RGBLIGHT_VAL_STEP 4 +#endif +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 + +#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE) + #define USB_MAX_POWER_CONSUMPTION 400 +#else + // fix iPhone and iPad power adapter issue + // iOS device need lessthan 100 + #define USB_MAX_POWER_CONSUMPTION 100 +#endif +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define TAPPING_TERM 200 + diff --git a/keyboards/newgame40/info.json b/keyboards/newgame40/info.json new file mode 100644 index 0000000000..0239614082 --- /dev/null +++ b/keyboards/newgame40/info.json @@ -0,0 +1,13 @@ +{ + "keyboard_name": "NEWGAME40", + "url": "", + "maintainer": "qmk", + "width": 10, + "height": 4, + "layouts": { + "LAYOUT_ortho_4x10": { + "key_count": 40, + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}] + } + } +} diff --git a/keyboards/newgame40/keymaps/default/config.h b/keyboards/newgame40/keymaps/default/config.h new file mode 100644 index 0000000000..d533d806c9 --- /dev/null +++ b/keyboards/newgame40/keymaps/default/config.h @@ -0,0 +1,5 @@ + + +#pragma once + +// place overrides here diff --git a/keyboards/newgame40/keymaps/default/keymap.c b/keyboards/newgame40/keymaps/default/keymap.c new file mode 100644 index 0000000000..b42fef00fe --- /dev/null +++ b/keyboards/newgame40/keymaps/default/keymap.c @@ -0,0 +1,208 @@ +/* Copyright 2018 GoTakigawa + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + #include QMK_KEYBOARD_H + + extern keymap_config_t keymap_config; + +enum layers { + _QWERTY, + _COLEMAK, + _DVORAK, + _EUCALYN, + _LOWER, + _RAISE, + _ADJUST, +}; + + enum custom_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + LOWER, + RAISE, + EUCALYN, + ADJUST, + }; + + // Fillers to make layering more clear + #define LOWER MO(_LOWER) + #define RAISE MO(_RAISE) + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Qwerty + * ,---------------------------------------------------------------------. + * | Q | W | E | R | T | Y | U | I | O | P | + * |------+------+------+------+------+------|------+------+------+------| + * | A | S | D | F | G | H | J | K | L | - | + * |------+------+------+------+------+------+-------------+------+------| + * | Z | X | C | V | B | N | M | , | . | / | + * |-------------+------+------+------+------+------+------+------+------' + * |Shift | GUI |Lower | Ctrl |Space | Bksp |Enter |Raise | Left |Right | + * `---------------------------------------------------------------------' + */ + [_QWERTY] = LAYOUT_ortho_4x10( \ + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_MINS, \ + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ + KC_LSFT, KC_LGUI, LT(_LOWER,KC_LANG2), KC_LCTL, KC_SPC, KC_BSPC, KC_ENT, LT(_RAISE,KC_LANG1), KC_LEFT, KC_RGHT\ + ), + + /* Colemak + * ,---------------------------------------------------------------------. + * | Q | W | F | P | G | J | L | U | Y | - | + * |------+------+------+------+------+------|------+------+------+------| + * | A | R | S | T | D | H | N | E | I | O | + * |------+------+------+------+------+------+-------------+------+------| + * | Z | X | C | V | B | K | M | , | . | / | + * |-------------+------+------+------+------+------+------+------+------' + * |Shift | GUI |Lower | Ctrl |Space | Bksp |Enter |Raise | Left |Right | + * `---------------------------------------------------------------------' + */ + [_COLEMAK] = LAYOUT_ortho_4x10( \ + KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_MINS, \ + KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, \ + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ + KC_LSFT, KC_LGUI, LT(_LOWER,KC_LANG2), KC_LCTL, KC_SPC, KC_BSPC, KC_ENT, LT(_RAISE,KC_LANG1), KC_LEFT, KC_RGHT\ + ), + + /* Dvorak + * ,---------------------------------------------------------------------. + * | " | , | . | P | Y | F | G | C | R | L | + * |------+------+------+------+------+------|------+------+------+------| + * | A | O | E | U | I | D | H | T | N | S | + * |------+------+------+------+------+------+-------------+------+------| + * | ; | Q | J | K | X | B | M | W | V | Z | + * |-------------+------+------+------+------+------+------+------+------' + * |Shift | GUI |Lower | Ctrl |Space | Bksp |Enter |Raise | Left |Right | + * `---------------------------------------------------------------------' + */ + [_DVORAK] = LAYOUT_ortho_4x10( \ + KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \ + KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \ + KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, \ + KC_LSFT, KC_LGUI, LT(_LOWER,KC_LANG2), KC_LCTL, KC_SPC, KC_BSPC, KC_ENT, LT(_RAISE,KC_LANG1), KC_LEFT, KC_RGHT\ + ), + + /* Lower + * ,---------------------------------------------------------------------. + * | Esc | | | | | | | | | | + * |------+------+------+------+------+------|------+------+------+------| + * | | | | | | | | | | | + * |------+------+------+------+------+------+-------------+------+------| + * | F13 | F14 | F15 | F16 | F17 | F18 | F19 | F20 | F21 | F22 | + * |-------------+------+------+------+------+------+------+------+------' + * | F1 | F2 | | F3 | F4 | F5 | F6 | | F7 | F8 | + * `---------------------------------------------------------------------' + */ + [_LOWER] = LAYOUT_ortho_4x10( \ + KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, \ + KC_F1, KC_F2, _______, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F7, KC_F8 \ + ), + + /* Raise + * ,---------------------------------------------------------------------. + * | 1 | 2 |  3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + * |------+------+------+------+------+------|------+------+------+------| + * | ! | " | # | $ | % | & | ' | (  | ) | _ | + * |------+------+------+------+------+------+-------------+------+------| + * | = | ¥ | { | } | * | ~ | | | < | > | ? | + * |-------------+------+------+------+------+------+------+------+------' + * | F1 | Alt | | [ | ] | ; | : | | \ | / | + * `---------------------------------------------------------------------' + */ + [_RAISE] = LAYOUT_ortho_4x10( \ + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ + KC_EXLM, KC_DQT, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_UNDS, \ + KC_EQL, KC_JYEN, KC_LCBR, KC_RCBR, KC_ASTR, KC_TILD, KC_PIPE, KC_LABK, KC_RABK, KC_QUES, \ + KC_F1, KC_LALT, _______, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, _______, KC_BSLS, KC_SLSH \ + ), + + /* EUCALYN + * ,---------------------------------------------------------------------. + * | Q | W | , | . | ; | M | R | D | Y | P | + * |------+------+------+------+------+------|------+------+------+------| + * | A | O | E | I | U | G | T | K | S | N | + * |------+------+------+------+------+------+-------------+------+------| + * | Z | X | C | V | F | B | H | J | L | / | + * `-------------+------+------+------+------+------+------+-------------' + * |Shift | GUI |Lower | Ctrl |Space | Bksp |Enter |Raise | Left |Right | + * `---------------------------------------------------------------------' + */ + [_EUCALYN] = LAYOUT_ortho_4x10( \ + KC_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN, KC_M, KC_R, KC_D, KC_Y, KC_P, \ + KC_A, KC_O, KC_E, KC_I, KC_U, KC_G, KC_T, KC_K, KC_S, KC_N, \ + KC_Z, KC_X, KC_C, KC_V, KC_F, KC_B, KC_H, KC_J, KC_L, KC_SLSH, \ + KC_LSFT, KC_LGUI, LT(_LOWER,KC_LANG2), KC_LCTL, KC_SPC, KC_BSPC, KC_ENT, LT(_RAISE,KC_LANG1), KC_LEFT, KC_RGHT\ + ), + + /* Adjust (Lower + Raise) + * ,---------------------------------------------------------------------. + * | |RGB Tg|RGB Md|Hue Up|Hue Dn|Sat Up|Sat Dn|Val Up|Val Dn| | + * |------+------+------+------+------+------.------+------+------+------| + * | | | |Aud on|Audoff|AGnorm|AGswap| |BL TOG|BL STP| + * |------+------+------+------+------+------+------+------+------+------| + * |Qwerty|Colemk|Dvorak|Eucalyn| | | | | | | + * |------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | + * `---------------------------------------------------------------------' + */ + [_ADJUST] = LAYOUT_ortho_4x10( \ + _______, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, \ + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, BL_TOGG, BL_STEP, \ + QWERTY, COLEMAK, DVORAK, EUCALYN, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + ) + + + }; + + uint32_t layer_state_set_user(uint32_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); + } + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + return false; + break; + case EUCALYN: + if (record->event.pressed) { + set_single_persistent_default_layer(_EUCALYN); + } + return false; + break; + } + return true; + } diff --git a/keyboards/newgame40/newgame40.c b/keyboards/newgame40/newgame40.c new file mode 100644 index 0000000000..e55b25b3d0 --- /dev/null +++ b/keyboards/newgame40/newgame40.c @@ -0,0 +1,5 @@ +#include "newgame40.h" + +void matrix_init_kb(void) { + matrix_init_user(); +} diff --git a/keyboards/newgame40/newgame40.h b/keyboards/newgame40/newgame40.h new file mode 100644 index 0000000000..6044f37657 --- /dev/null +++ b/keyboards/newgame40/newgame40.h @@ -0,0 +1,19 @@ +#ifndef NEWGAME40_H +#define NEWGAME40_H + +#include "quantum.h" + +#define LAYOUT_ortho_4x10( \ + k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, \ + k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, \ + k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, \ + k401, k402, k403, k404, k405, k406, k407, k408, k409, k410 \ +) \ +{ \ + {k101, k102, k103, k104, k105, k106, k107, k108, k109, k110}, \ + {k201, k202, k203, k204, k205, k206, k207, k208, k209, k210}, \ + {k301, k302, k303, k304, k305, k306, k307, k308, k309, k310}, \ + {k401, k402, k403, k404, k405, k406, k407, k408, k409, k410} \ +} + +#endif diff --git a/keyboards/newgame40/readme.md b/keyboards/newgame40/readme.md new file mode 100644 index 0000000000..2aa568cfb0 --- /dev/null +++ b/keyboards/newgame40/readme.md @@ -0,0 +1,17 @@ +# NEWGAME40 + +![NEWGAME40](https://i.imgur.com/HtujXda.jpg) + +40% (4x10) ortholinear keyboard. + +Keyboard Maintainer: +[GoTakigawa](https://github.com/GoTakigawa) +[@Go_Drums](https://twitter.com/Go_Drums) +Hardware Supported: The NEWGAME40 PCBs, ProMicro supported +Hardware Availability: Group buy soon + +Make example for this keyboard (after setting up your build environment): + + make newgame40:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/newgame40/rules.mk b/keyboards/newgame40/rules.mk new file mode 100644 index 0000000000..cca40ce8e2 --- /dev/null +++ b/keyboards/newgame40/rules.mk @@ -0,0 +1,74 @@ +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +BOOTLOADER = caterina + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = yes # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. +IOS_DEVICE_ENABLE = no # connect to IOS Device + + ifeq ($(strip $(IOS_DEVICE_ENABLE )), yes) + OPT_DEFS += -DIOS_DEVICE_ENABLE + endif + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +LAYOUTS = ortho_4x10 diff --git a/layouts/default/ortho_4x10/default_ortho_4x10/keymap.c b/layouts/default/ortho_4x10/default_ortho_4x10/keymap.c new file mode 100644 index 0000000000..3f6285e2dd --- /dev/null +++ b/layouts/default/ortho_4x10/default_ortho_4x10/keymap.c @@ -0,0 +1,10 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x10( + KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, KC_G, KC_H, KC_I, KC_J, + KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, KC_G, KC_H, KC_I, KC_J, + KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, KC_G, KC_H, KC_I, KC_J, + KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, KC_G, KC_H, KC_I, KC_J + ) +}; diff --git a/layouts/default/ortho_4x10/layout.json b/layouts/default/ortho_4x10/layout.json new file mode 100644 index 0000000000..86f098e27e --- /dev/null +++ b/layouts/default/ortho_4x10/layout.json @@ -0,0 +1,4 @@ +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""], +["","","","","","","","","",""] diff --git a/layouts/default/ortho_4x10/readme.md b/layouts/default/ortho_4x10/readme.md new file mode 100644 index 0000000000..c5c29251c8 --- /dev/null +++ b/layouts/default/ortho_4x10/readme.md @@ -0,0 +1,3 @@ +# ortho_4x10 + + LAYOUT_ortho_4x10 -- cgit v1.2.3 From 5803012eda70d2ad85434e53820f2c93c310f92e Mon Sep 17 00:00:00 2001 From: Jason Thigpen Date: Sat, 1 Dec 2018 08:17:50 -0800 Subject: Add a layout to support tsangan bottom row with split bs and rshift (#4521) * Add a layout to support tsangan bottom row with split bs and rshift * Move the new layout to defaults * Rename layout to be more accurately representative * Rename files to match renamed layout def --- .../keymap.c | 21 +++++++++++++++++++++ .../60_ansi_tsangan_split_bs_rshift/layout.json | 5 +++++ .../60_ansi_tsangan_split_bs_rshift/readme.md | 3 +++ 3 files changed, 29 insertions(+) create mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c create mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json create mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md (limited to 'layouts') diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c b/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..17b47eecf9 --- /dev/null +++ b/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c @@ -0,0 +1,21 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_ansi_tsangan_split_bs_rshift( + 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_BSPC, + 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_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 , + 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_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ) +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +}; diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json b/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json new file mode 100644 index 0000000000..117d26d419 --- /dev/null +++ b/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json @@ -0,0 +1,5 @@ +[{a:7},"","","","","","","","","","","","","","",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"",{w:1},""], +[{w:1.5},"",{w:1},"",{w:1.5},"",{w:7},"",{w:1.5},"",{w:1},"",{w:1.5},""] diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md b/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md new file mode 100644 index 0000000000..ad1c598b34 --- /dev/null +++ b/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md @@ -0,0 +1,3 @@ +# 60_ansi_tsangan_split_bs_rshift + + LAYOUT_60_ansi_tsangan_split_bs_rshift \ No newline at end of file -- cgit v1.2.3 From 6d0dc910d92bc381d3cce9ea712aa47ae40ddf15 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Tue, 4 Dec 2018 13:27:41 -0800 Subject: Rework drashna userspace to be more modular (#4544) * Break up files to make more readable * Add comments to ortho 4x12 layout rules.mk * Small tweaks * Update GitLab CI scripts * Make ortho boards smaller --- layouts/community/ortho_4x12/drashna/config.h | 4 +- layouts/community/ortho_4x12/drashna/rules.mk | 5 +- users/drashna/.gitlab-ci.yml | 2 +- users/drashna/config.h | 4 +- users/drashna/drashna.c | 271 +++-------------------- users/drashna/drashna.h | 301 ++------------------------ users/drashna/process_records.c | 175 +++++++++++++++ users/drashna/process_records.h | 101 +++++++++ users/drashna/rgb_stuff.h | 6 + users/drashna/rules.mk | 3 +- users/drashna/tap_dances.c | 1 - users/drashna/tap_dances.h | 12 + users/drashna/wrappers.h | 170 +++++++++++++++ 13 files changed, 526 insertions(+), 529 deletions(-) create mode 100644 users/drashna/process_records.c create mode 100644 users/drashna/process_records.h create mode 100644 users/drashna/wrappers.h (limited to 'layouts') diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h index f279651b63..8658802d83 100644 --- a/layouts/community/ortho_4x12/drashna/config.h +++ b/layouts/community/ortho_4x12/drashna/config.h @@ -31,11 +31,11 @@ #define EE_HANDS #endif -#if defined(KEYBOARD_planck_rev5) +#if !defined(KEYBOARD_planck_light) #ifdef RGBLIGHT_ENABLE #define NO_MUSIC_MODE #endif // RGBLIGHT_ENABLE -#endif // KEYBOARD_planck_rev5 +#endif // KEYBOARD_planck_light /* diff --git a/layouts/community/ortho_4x12/drashna/rules.mk b/layouts/community/ortho_4x12/drashna/rules.mk index 5e46cf112e..a5429b8ffb 100644 --- a/layouts/community/ortho_4x12/drashna/rules.mk +++ b/layouts/community/ortho_4x12/drashna/rules.mk @@ -5,12 +5,12 @@ CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = no # Commands for debug and configuration TAP_DANCE_ENABLE = no AUDIO_ENABLE = yes -ifeq (,$(findstring planck/rev6,$(KEYBOARD))) +ifeq (,$(findstring planck/rev6,$(KEYBOARD))) # Make sure it's NOT the Planck Rev6 RGBLIGHT_ENABLE = yes INDICATOR_LIGHTS = yes RGBLIGHT_TWINKLE = yes endif -ifneq (,$(findstring planck/light,$(KEYBOARD))) +ifneq (,$(findstring planck/light,$(KEYBOARD))) # Make sure it IS the Planck Light RGB_MATRIX_ENABLE = yes RGBLIGHT_ENABLE = no endif @@ -23,4 +23,3 @@ endif MACROS_ENABLED = no - diff --git a/users/drashna/.gitlab-ci.yml b/users/drashna/.gitlab-ci.yml index 3c95ad8507..bd693babc3 100644 --- a/users/drashna/.gitlab-ci.yml +++ b/users/drashna/.gitlab-ci.yml @@ -13,7 +13,7 @@ qmk_firmware: - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util diffutils gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip - avr-gcc --version script: - - make iris/rev2:drashna iris/rev2:drashna_old ergodox_ez:drashna viterbi/rev1:drashna orthodox/rev1:drashna orthodox/rev3:drashna crkbd:drashna planck/light:drashna + - make iris/rev2:drashna:production iris/rev2:drashna_old:production ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna:production orthodox/rev1:drashna:production orthodox/rev3:drashna:production crkbd:drashna:production planck/light:drashna:production artifacts: name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: diff --git a/users/drashna/config.h b/users/drashna/config.h index 06cae86ab9..a338512300 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -3,7 +3,7 @@ #ifdef AUDIO_ENABLE #define AUDIO_CLICKY -#define STARTUP_SONG SONG(E1M1_DOOM) +#define STARTUP_SONG SONG(RICK_ROLL) #define GOODBYE_SONG SONG(SONIC_RING) #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ SONG(COLEMAK_SOUND), \ @@ -44,7 +44,7 @@ // and when this option isn't enabled, z rapidly followed by x // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT -#define PERMISSIVE_HOLD +#undef PERMISSIVE_HOLD //#define TAPPING_FORCE_HOLD //#define RETRO_TAPPING diff --git a/users/drashna/drashna.c b/users/drashna/drashna.c index 8f10a530e2..2228248379 100644 --- a/users/drashna/drashna.c +++ b/users/drashna/drashna.c @@ -16,8 +16,6 @@ along with this program. If not, see . */ #include "drashna.h" -#include "tap_dances.h" -#include "rgb_stuff.h" userspace_config_t userspace_config; #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) @@ -27,9 +25,6 @@ userspace_config_t userspace_config; #define DRASHNA_UNICODE_MODE 2 #endif -uint16_t copy_paste_timer; -// Helper Functions - // This block is for all of the gaming macros, as they were all doing // the same thing, but with differring text sent. @@ -109,55 +104,9 @@ void bootmagic_lite(void) { __attribute__ ((weak)) void matrix_init_keymap(void) {} -__attribute__ ((weak)) -void startup_keymap(void) {} - -__attribute__ ((weak)) -void shutdown_keymap(void) {} - -__attribute__ ((weak)) -void suspend_power_down_keymap(void) {} - -__attribute__ ((weak)) -void suspend_wakeup_init_keymap(void) {} - -__attribute__ ((weak)) -void matrix_scan_keymap(void) {} - -__attribute__ ((weak)) -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - return true; -} - -__attribute__ ((weak)) -bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { - return true; -} - - -__attribute__ ((weak)) -uint32_t layer_state_set_keymap (uint32_t state) { - return state; -} - -__attribute__ ((weak)) -uint32_t default_layer_state_set_keymap (uint32_t state) { - return state; -} - -__attribute__ ((weak)) -void led_set_keymap(uint8_t usb_led) {} - -__attribute__ ((weak)) -void eeconfig_init_keymap(void) {} - // Call user matrix init, set default RGB colors and then // call the keymap's init function void matrix_init_user(void) { - #if !defined(BOOTMAGIC_LITE) && !defined(BOOTMAGIC_ENABLE) - bootmagic_lite(); - #endif - userspace_config.raw = eeconfig_read_user(); #ifdef BOOTLOADER_CATERINA @@ -178,40 +127,42 @@ void matrix_init_user(void) { #endif //RGBLIGHT_ENABLE } -void startup_user (void) { - // #ifdef RGBLIGHT_ENABLE - // matrix_init_rgb(); - // #endif //RGBLIGHT_ENABLE - startup_keymap(); -} + +__attribute__ ((weak)) +void shutdown_keymap(void) {} void shutdown_user (void) { -#ifdef RGBLIGHT_ENABLE - rgblight_enable_noeeprom(); - rgblight_mode_noeeprom(1); - rgblight_setrgb_red(); -#endif // RGBLIGHT_ENABLE -#ifdef RGB_MATRIX_ENABLE - rgb_led led; - for (int i = 0; i < DRIVER_LED_TOTAL; i++) { - led = g_rgb_leds[i]; - if (led.matrix_co.raw < 0xFF) { - rgb_matrix_set_color( i, 0xFF, 0x00, 0x00 ); - } - } -#endif //RGB_MATRIX_ENABLE + #ifdef RGBLIGHT_ENABLE + rgblight_enable_noeeprom(); + rgblight_mode_noeeprom(1); + rgblight_setrgb_red(); + #endif // RGBLIGHT_ENABLE + #ifdef RGB_MATRIX_ENABLE + uint16_t timer_start = timer_read(); + rgb_matrix_set_color_all( 0xFF, 0x00, 0x00 ); + while(timer_elapsed(timer_start) < 250) { wait_ms(1); } + #endif //RGB_MATRIX_ENABLE shutdown_keymap(); } +__attribute__ ((weak)) +void suspend_power_down_keymap(void) {} + void suspend_power_down_user(void) { suspend_power_down_keymap(); } +__attribute__ ((weak)) +void suspend_wakeup_init_keymap(void) {} + void suspend_wakeup_init_user(void) { suspend_wakeup_init_keymap(); } +__attribute__ ((weak)) +void matrix_scan_keymap(void) {} + // No global matrix scan code, so just run keymap's matrix // scan function void matrix_scan_user(void) { @@ -233,172 +184,11 @@ void matrix_scan_user(void) { } - - -// Defines actions tor my global custom keycodes. Defined in drashna.h file -// Then runs the _keymap's record handier if not processed here -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - - // If console is enabled, it will print the matrix position and status of each key pressed -#ifdef KEYLOGGER_ENABLE - #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2) - xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); - #else - xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); - #endif -#endif //KEYLOGGER_ENABLE - - switch (keycode) { - case KC_QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - break; - case KC_COLEMAK: - if (record->event.pressed) { - set_single_persistent_default_layer(_COLEMAK); - } - break; - case KC_DVORAK: - if (record->event.pressed) { - set_single_persistent_default_layer(_DVORAK); - } - break; - case KC_WORKMAN: - if (record->event.pressed) { - set_single_persistent_default_layer(_WORKMAN); - } - break; - - - case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader - if (!record->event.pressed) { - uint8_t temp_mod = get_mods(); - uint8_t temp_osm = get_oneshot_mods(); - clear_mods(); clear_oneshot_mods(); - send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); - if (temp_mod & MODS_SHIFT_MASK || temp_osm & MODS_SHIFT_MASK) { - #if defined(__ARM__) - send_string_with_delay_P(PSTR(":dfu-util"), 10); - #elif defined(BOOTLOADER_DFU) - send_string_with_delay_P(PSTR(":dfu"), 10); - #elif defined(BOOTLOADER_HALFKAY) - send_string_with_delay_P(PSTR(":teensy"), 10); - #elif defined(BOOTLOADER_CATERINA) - send_string_with_delay_P(PSTR(":avrdude"), 10); - #endif // bootloader options - } - #if defined(KEYBOARD_viterbi) - send_string_with_delay_P(PSTR(":dfu"), 10); - #endif - if (temp_mod & MODS_CTRL_MASK || temp_osm & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } - send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); - set_mods(temp_mod); - } - break; - - case VRSN: // Prints firmware version - if (record->event.pressed) { - send_string_with_delay_P(PSTR(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE), MACRO_TIMER); - } - break; - -// These are a serious of gaming macros. -// Only enables for the viterbi, basically, -// to save on firmware space, since it's limited. -#ifdef MACROS_ENABLED - case KC_OVERWATCH: // Toggle's if we hit "ENTER" or "BACKSPACE" to input macros - if (record->event.pressed) { userspace_config.is_overwatch ^= 1; eeconfig_update_user(userspace_config.raw); } -#ifdef RGBLIGHT_ENABLE - userspace_config.is_overwatch ? rgblight_mode_noeeprom(17) : rgblight_mode_noeeprom(18); -#endif //RGBLIGHT_ENABLE - break; - case KC_SALT: - return send_game_macro("Salt, salt, salt...", record, false); - case KC_MORESALT: - return send_game_macro("Please sir, can I have some more salt?!", record, false); - case KC_SALTHARD: - return send_game_macro("Your salt only makes me harder, and even more aggressive!", record, false); - case KC_GOODGAME: - return send_game_macro("Good game, everyone!", record, false); - case KC_GLHF: - return send_game_macro("Good luck, have fun!!!", record, false); - case KC_SYMM: - return send_game_macro("Left click to win!", record, false); - case KC_JUSTGAME: - return send_game_macro("It may be a game, but if you don't want to actually try, please go play AI, so that people that actually want to take the game seriously and \"get good\" have a place to do so without trolls like you throwing games.", record, false); - case KC_TORB: - return send_game_macro("That was positively riveting!", record, false); - case KC_AIM: - send_game_macro("That aim is absolutely amazing. It's almost like you're a machine!", record, true); - return send_game_macro("Wait! That aim is TOO good! You're clearly using an aim hack! CHEATER!", record, false); - case KC_C9: - return send_game_macro("OMG!!! C9!!!", record, false); - case KC_GGEZ: - return send_game_macro("That was a fantastic game, though it was a bit easy. Try harder next time!", record, false); -#endif // MACROS_ENABLED - - - case KC_DIABLO_CLEAR: // reset all Diablo timers, disabling them -#ifdef TAP_DANCE_ENABLE - if (record->event.pressed) { - uint8_t dtime; - for (dtime = 0; dtime < 4; dtime++) { - diablo_key_time[dtime] = diablo_times[0]; - } - } -#endif // TAP_DANCE_ENABLE - break; - - - case KC_CCCV: // One key copy/paste - if(record->event.pressed){ - copy_paste_timer = timer_read(); - } else { - if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy - register_code(KC_LCTL); - tap_code(KC_C); - unregister_code(KC_LCTL); - } else { // Tap, paste - register_code(KC_LCTL); - tap_code(KC_V); - unregister_code(KC_LCTL); - } - } - break; -#ifdef UNICODE_ENABLE - case UC_FLIP: // (ノಠ痊ಠ)ノ彡┻━┻ - if (record->event.pressed) { - send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); - } - break; - case UC_TABL: // ┬─┬ノ( º _ ºノ) - if (record->event.pressed) { - send_unicode_hex_string("252C 2500 252C 30CE 0028 0020 00BA 0020 005F 0020 00BA 30CE 0029"); - } - break; - case UC_SHRG: // ¯\_(ツ)_/¯ - if (record->event.pressed) { - send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); - } - break; - case UC_DISA: // ಠ_ಠ - if (record->event.pressed) { - send_unicode_hex_string("0CA0 005F 0CA0"); - } - break; -#endif - } - return process_record_keymap(keycode, record) && -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) - process_record_user_rgb(keycode, record) && -#endif // RGBLIGHT_ENABLE - process_record_secrets(keycode, record); +__attribute__ ((weak)) +uint32_t layer_state_set_keymap (uint32_t state) { + return state; } - - -// Runs state check and changes underglow color and animation // on layer change, no matter where the change was initiated // Then runs keymap's layer change check uint32_t layer_state_set_user(uint32_t state) { @@ -410,6 +200,12 @@ uint32_t layer_state_set_user(uint32_t state) { } +__attribute__ ((weak)) +uint32_t default_layer_state_set_keymap (uint32_t state) { + return state; +} + +// Runs state check and changes underglow color and animation uint32_t default_layer_state_set_user(uint32_t state) { state = default_layer_state_set_keymap(state); #ifdef RGBLIGHT_ENABLE @@ -418,6 +214,8 @@ uint32_t default_layer_state_set_user(uint32_t state) { return state; } +__attribute__ ((weak)) +void led_set_keymap(uint8_t usb_led) {} // Any custom LED code goes here. // So far, I only have keyboard specific code, @@ -426,6 +224,9 @@ void led_set_user(uint8_t usb_led) { led_set_keymap(usb_led); } +__attribute__ ((weak)) +void eeconfig_init_keymap(void) {} + void eeconfig_init_user(void) { userspace_config.raw = 0; userspace_config.rgb_layer_change = true; diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 06e726714c..0a3d0f6327 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -19,9 +19,13 @@ along with this program. If not, see . #include "quantum.h" #include "version.h" #include "eeprom.h" - -#ifdef RGB_MATRIX_ENABLE -#include "rgb_matrix.h" +#include "wrappers.h" +#include "process_records.h" +#ifdef TAP_DANCE_ENABLE + #include "tap_dances.h" +#endif // TAP_DANCE_ENABLE +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + #include "rgb_stuff.h" #endif @@ -51,17 +55,19 @@ define modifiers here, since MOD_* doesn't seem to work for these #define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) -/* -RGB color codes are no longer located here anymore. Instead, you will want to -head to https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight_list.h -*/ - -#ifdef RGBLIGHT_ENABLE -void rgblight_sethsv_default_helper(uint8_t index); -#endif // RGBLIGHT_ENABLE bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed); bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t this_timer); +bool send_game_macro(const char *str, keyrecord_t *record, bool override); +void matrix_init_keymap(void); +void shutdown_keymap(void); +void suspend_power_down_keymap(void); +void suspend_wakeup_init_keymap(void); +void matrix_scan_keymap(void); +uint32_t layer_state_set_keymap (uint32_t state); +uint32_t default_layer_state_set_keymap (uint32_t state); +void led_set_keymap(uint8_t usb_led); +void eeconfig_init_keymap(void); typedef union { uint32_t raw; @@ -75,110 +81,6 @@ typedef union { extern userspace_config_t userspace_config; -#if defined(KEYMAP_SAFE_RANGE) - #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE -#else - #define PLACEHOLDER_SAFE_RANGE SAFE_RANGE -#endif - -enum userspace_custom_keycodes { - VRSN = PLACEHOLDER_SAFE_RANGE, // Prints QMK Firmware and board info - KC_QWERTY, // Sets default layer to QWERTY - KC_COLEMAK, // Sets default layer to COLEMAK - KC_DVORAK, // Sets default layer to DVORAK - KC_WORKMAN, // Sets default layer to WORKMAN - KC_DIABLO_CLEAR, // Clears all Diablo Timers - KC_OVERWATCH, // Toggles game macro input mode (so in OW, it defaults to game chat) - KC_SALT, // See drashna.c for details - KC_MORESALT, - KC_SALTHARD, - KC_GOODGAME, - KC_SYMM, - KC_JUSTGAME, - KC_GLHF, - KC_TORB, - KC_AIM, - KC_C9, - KC_GGEZ, - KC_MAKE, // Run keyboard's customized make command - KC_RGB_T, // Toggles RGB Layer Indication mode - KC_SECRET_1, // test1 - KC_SECRET_2, // test2 - KC_SECRET_3, // test3 - KC_SECRET_4, // test4 - KC_SECRET_5, // test5 - KC_CCCV, // Hold to copy, tap to paste - KC_NUKE, // NUCLEAR LAUNCH DETECTED!!! - UC_FLIP, // (ಠ痊ಠ)┻━┻ - UC_TABL, // ┬─┬ノ( º _ ºノ) - UC_SHRG, // ¯\_(ツ)_/¯ - UC_DISA, // ಠ_ಠ - NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes -}; - - -#define LOWER MO(_LOWER) -#define RAISE MO(_RAISE) -#define ADJUST MO(_ADJUST) -#define TG_MODS TG(_MODS) -#define TG_GAME TG(_GAMEPAD) - -#define KC_SEC1 KC_SECRET_1 -#define KC_SEC2 KC_SECRET_2 -#define KC_SEC3 KC_SECRET_3 -#define KC_SEC4 KC_SECRET_4 -#define KC_SEC5 KC_SECRET_5 - -#define QWERTY KC_QWERTY -#define DVORAK KC_DVORAK -#define COLEMAK KC_COLEMAK -#define WORKMAN KC_WORKMAN - -#define KC_RESET RESET -#define KC_RST KC_RESET - -#ifdef SWAP_HANDS_ENABLE -#define KC_C1R3 SH_TT -#else // SWAP_HANDS_ENABLE -#define KC_C1R3 KC_BSPC -#endif // SWAP_HANDS_ENABLE - -#define BK_LWER LT(_LOWER, KC_BSPC) -#define SP_LWER LT(_LOWER, KC_SPC) -#define DL_RAIS LT(_RAISE, KC_DEL) -#define ET_RAIS LT(_RAISE, KC_ENTER) - -/* OSM keycodes, to keep things clean and easy to change */ -#define KC_MLSF OSM(MOD_LSFT) -#define KC_MRSF OSM(MOD_RSFT) - -#define OS_LGUI OSM(MOD_LGUI) -#define OS_RGUI OSM(MOD_RGUI) -#define OS_LSFT OSM(MOD_LSFT) -#define OS_RSFT OSM(MOD_RSFT) -#define OS_LCTL OSM(MOD_LCTL) -#define OS_RCTL OSM(MOD_RCTL) -#define OS_LALT OSM(MOD_LALT) -#define OS_RALT OSM(MOD_RALT) -#define OS_MEH OSM(MOD_MEH) -#define OS_HYPR OSM(MOD_HYPR) - -#define ALT_APP ALT_T(KC_APP) - -#define MG_NKRO MAGIC_TOGGLE_NKRO - -#define UC_IRNY UC(0x2E2E) -#define UC_CLUE UC(0x203D) - -#ifdef TAP_DANCE_ENABLE -enum { - TD_D3_1 = 0, - TD_D3_2, - TD_D3_3, - TD_D3_4 -}; -#endif // TAP_DANCE_ENABLE - /* Custom Keycodes for Diablo 3 layer @@ -196,172 +98,3 @@ We use custom codes here, so we can substitute the right stuff #define KC_D3_3 KC_3 #define KC_D3_4 KC_4 #endif // TAP_DANCE_ENABLE - -/* -Since our quirky block definitions are basically a list of comma separated -arguments, we need a wrapper in order for these definitions to be -expanded before being used as arguments to the LAYOUT_xxx macro. -*/ -#if (!defined(LAYOUT) && defined(KEYMAP)) -#define LAYOUT KEYMAP -#endif - -#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) -#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) -#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) -#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) -#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) - -/* -Blocks for each of the four major keyboard layouts -Organized so we can quickly adapt and modify all of them -at once, rather than for each keyboard, one at a time. -And this allows for much cleaner blocks in the keymaps. -For instance Tap/Hold for Control on all of the layouts - -NOTE: These are all the same length. If you do a search/replace - then you need to add/remove underscores to keep the - lengths consistent. -*/ - -#define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T -#define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G -#define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B - -#define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P -#define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN -#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH - - -#define _________________COLEMAK_L1________________ KC_Q, KC_W, KC_F, KC_P, KC_G -#define _________________COLEMAK_L2________________ KC_A, KC_R, KC_S, KC_T, KC_D -#define _________________COLEMAK_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_B - -#define _________________COLEMAK_R1________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN -#define _________________COLEMAK_R2________________ KC_H, KC_N, KC_E, KC_I, KC_O -#define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, KC_SLASH - -#define ______________COLEMAK_MOD_DH_L1____________ KC_Q, KC_W, KC_F, KC_P, KC_B -#define ______________COLEMAK_MOD_DH_L2____________ KC_A, KC_R, KC_S, KC_T, KC_G -#define ______________COLEMAK_MOD_DH_L3____________ KC_Z, KC_X, KC_C, KC_D, KC_V - -#define ______________COLEMAK_MOD_DH_R1____________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN -#define ______________COLEMAK_MOD_DH_R2____________ KC_M, KC_N, KC_E, KC_I, KC_O -#define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH - - -#define _________________DVORAK_L1_________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y -#define _________________DVORAK_L2_________________ KC_A, KC_O, KC_E, KC_U, KC_I -#define _________________DVORAK_L3_________________ KC_SCLN, KC_Q, KC_J, KC_K, KC_X - -#define _________________DVORAK_R1_________________ KC_F, KC_G, KC_C, KC_R, KC_L -#define _________________DVORAK_R2_________________ KC_D, KC_H, KC_T, KC_N, KC_S -#define _________________DVORAK_R3_________________ KC_B, KC_M, KC_W, KC_V, KC_Z - - -#define ________________DVORAK_AU_L1_______________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y -#define ________________DVORAK_AU_L2_______________ KC_O, KC_A, KC_E, KC_I, KC_U -#define ________________DVORAK_AU_L3_______________ KC_SCLN, KC_Q, KC_J, KC_K, KC_X - -#define ________________DVORAK_AU_R1_______________ KC_F, KC_G, KC_C, KC_R, KC_L -#define ________________DVORAK_AU_R2_______________ KC_D, KC_H, KC_T, KC_N, KC_S -#define ________________DVORAK_AU_R3_______________ KC_B, KC_M, KC_W, KC_V, KC_Z - -#define _________________WORKMAN_L1________________ KC_Q, KC_D, KC_R, KC_W, KC_B -#define _________________WORKMAN_L2________________ KC_A, KC_S, KC_H, KC_T, KC_G -#define _________________WORKMAN_L3________________ KC_Z, KC_X, KC_M, KC_C, KC_V - -#define _________________WORKMAN_R1________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN -#define _________________WORKMAN_R2________________ KC_Y, KC_N, KC_E, KC_O, KC_I -#define _________________WORKMAN_R3________________ KC_K, KC_L, KC_COMM, KC_DOT, KC_SLASH - - -#define _________________NORMAN_L1_________________ KC_Q, KC_W, KC_D, KC_F, KC_K -#define _________________NORMAN_L2_________________ KC_A, KC_S, KC_E, KC_T, KC_G -#define _________________NORMAN_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B - -#define _________________NORMAN_R1_________________ KC_J, KC_U, KC_R, KC_L, KC_SCLN -#define _________________NORMAN_R2_________________ KC_Y, KC_N, KC_I, KC_O, KC_U -#define _________________NORMAN_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, KC_SLASH - - -#define _________________MALTRON_L1________________ KC_Q, KC_P, KC_Y, KC_C, KC_B -#define _________________MALTRON_L2________________ KC_A, KC_N, KC_I, KC_S, KC_F -#define _________________MALTRON_L3________________ KC_SCLN, KC_SLSH, KC_J KC_G, KC_COMM - -#define _________________MALTRON_R1________________ KC_V, KC_M, KC_U, KC_Z, KC_L -#define _________________MALTRON_R2________________ KC_D, KC_T, KC_D, KC_O, KC_R -#define _________________MALTRON_R3________________ KC_DOT, KC_W, KC_K, KC_MINS, KC_X - - -#define _________________EUCALYN_L1________________ KC_SLSH, KC_COMM, KC_DOT, KC_F, KC_Q -#define _________________EUCALYN_L2________________ KC_A, KC_O, KC_E, KC_I, KC_U -#define _________________EUCALYN_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_W - -#define _________________EUCALYN_R1________________ KC_M, KC_R, KC_D, KC_Y, KC_P -#define _________________EUCALYN_R2________________ KC_G, KC_T, KC_K, KC_S, KC_N -#define _________________EUCALYN_R3________________ KC_B, KC_H, KC_J, KC_L, KC_SCLN - - -#define _____________CARPLAX_QFMLWY_L1_____________ KC_Q, KC_F, KC_M, KC_L, KC_W -#define _____________CARPLAX_QFMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QFMLWY_L3_____________ KC_Z, KC_V, KC_G, KC_C, KC_X - -#define _____________CARPLAX_QFMLWY_R1_____________ KC_Y, KC_U, KC_O, KC_B, KC_J -#define _____________CARPLAX_QFMLWY_R2_____________ KC_I, KC_A, KC_E, KC_H, KC_SCLN -#define _____________CARPLAX_QFMLWY_R3_____________ KC_P, KC_K, KC_COMM, KC_DOT, KC_SLSH - - -#define _____________CARPLAX_QGMLWB_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W -#define _____________CARPLAX_QGMLWB_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QGMLWB_L3_____________ KC_Z, KC_X, KC_C, KC_F, KC_J - -#define _____________CARPLAX_QGMLWB_R1_____________ KC_B, KC_Y, KC_U, KC_V, KC_SCLN -#define _____________CARPLAX_QGMLWB_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H -#define _____________CARPLAX_QGMLWB_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH - - -#define _____________CARPLAX_QGMLWY_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W -#define _____________CARPLAX_QGMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R -#define _____________CARPLAX_QGMLWY_L3_____________ KC_Z, KC_X, KC_C, KC_V, KC_J - -#define _____________CARPLAX_QGMLWY_R1_____________ KC_Y, KC_F, KC_U, KC_B, KC_SCLN -#define _____________CARPLAX_QGMLWY_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H -#define _____________CARPLAX_QGMLWY_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH - - -#define ________________NUMBER_LEFT________________ KC_1, KC_2, KC_3, KC_4, KC_5 -#define ________________NUMBER_RIGHT_______________ KC_6, KC_7, KC_8, KC_9, KC_0 -#define _________________FUNC_LEFT_________________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 -#define _________________FUNC_RIGHT________________ KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 - -#define ___________________BLANK___________________ _______, _______, _______, _______, _______ - - -#define _________________LOWER_L1__________________ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC -#define _________________LOWER_L2__________________ _________________FUNC_LEFT_________________ -#define _________________LOWER_L3__________________ _________________FUNC_RIGHT________________ - -#define _________________LOWER_R1__________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN -#define _________________LOWER_R2__________________ _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR -#define _________________LOWER_R3__________________ _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT - - - -#define _________________RAISE_L1__________________ ________________NUMBER_LEFT________________ -#define _________________RAISE_L2__________________ ___________________BLANK___________________ -#define _________________RAISE_L3__________________ ___________________BLANK___________________ - -#define _________________RAISE_R1__________________ ________________NUMBER_RIGHT_______________ -#define _________________RAISE_R2__________________ _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC -#define _________________RAISE_R3__________________ _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END - - - -#define _________________ADJUST_L1_________________ RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG -#define _________________ADJUST_L2_________________ MU_TOG , CK_TOGG, AU_ON, AU_OFF, AG_NORM -#define _________________ADJUST_L3_________________ RGB_RMOD,RGB_HUD,RGB_SAD, RGB_VAD, KC_RGB_T - -#define _________________ADJUST_R1_________________ KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5 -#define _________________ADJUST_R2_________________ AG_SWAP, QWERTY, COLEMAK, DVORAK, WORKMAN -#define _________________ADJUST_R3_________________ MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT diff --git a/users/drashna/process_records.c b/users/drashna/process_records.c new file mode 100644 index 0000000000..5e311e60e8 --- /dev/null +++ b/users/drashna/process_records.c @@ -0,0 +1,175 @@ +#include "drashna.h" + +uint16_t copy_paste_timer; + +__attribute__ ((weak)) +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + return true; +} + +__attribute__ ((weak)) +bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { + return true; +} + + +// Defines actions tor my global custom keycodes. Defined in drashna.h file +// Then runs the _keymap's record handier if not processed here +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + // If console is enabled, it will print the matrix position and status of each key pressed +#ifdef KEYLOGGER_ENABLE + #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2) + xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); + #else + xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); + #endif +#endif //KEYLOGGER_ENABLE + + switch (keycode) { + case KC_QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + break; + case KC_COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + break; + case KC_DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + break; + case KC_WORKMAN: + if (record->event.pressed) { + set_single_persistent_default_layer(_WORKMAN); + } + break; + + + case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader + if (!record->event.pressed) { + uint8_t temp_mod = get_mods(); + uint8_t temp_osm = get_oneshot_mods(); + clear_mods(); clear_oneshot_mods(); + send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); + if (temp_mod & MODS_SHIFT_MASK || temp_osm & MODS_SHIFT_MASK) { + #if defined(__ARM__) + send_string_with_delay_P(PSTR(":dfu-util"), 10); + #elif defined(BOOTLOADER_DFU) + send_string_with_delay_P(PSTR(":dfu"), 10); + #elif defined(BOOTLOADER_HALFKAY) + send_string_with_delay_P(PSTR(":teensy"), 10); + #elif defined(BOOTLOADER_CATERINA) + send_string_with_delay_P(PSTR(":avrdude"), 10); + #endif // bootloader options + } + #if defined(KEYBOARD_viterbi) + send_string_with_delay_P(PSTR(":dfu"), 10); + #endif + if (temp_mod & MODS_CTRL_MASK || temp_osm & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } + send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); + set_mods(temp_mod); + } + break; + + case VRSN: // Prints firmware version + if (record->event.pressed) { + send_string_with_delay_P(PSTR(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE), MACRO_TIMER); + } + break; + +// These are a serious of gaming macros. +// Only enables for the viterbi, basically, +// to save on firmware space, since it's limited. +#ifdef MACROS_ENABLED + case KC_OVERWATCH: // Toggle's if we hit "ENTER" or "BACKSPACE" to input macros + if (record->event.pressed) { userspace_config.is_overwatch ^= 1; eeconfig_update_user(userspace_config.raw); } +#ifdef RGBLIGHT_ENABLE + userspace_config.is_overwatch ? rgblight_mode_noeeprom(17) : rgblight_mode_noeeprom(18); +#endif //RGBLIGHT_ENABLE + break; + case KC_SALT: + return send_game_macro("Salt, salt, salt...", record, false); + case KC_MORESALT: + return send_game_macro("Please sir, can I have some more salt?!", record, false); + case KC_SALTHARD: + return send_game_macro("Your salt only makes me harder, and even more aggressive!", record, false); + case KC_GOODGAME: + return send_game_macro("Good game, everyone!", record, false); + case KC_GLHF: + return send_game_macro("Good luck, have fun!!!", record, false); + case KC_SYMM: + return send_game_macro("Left click to win!", record, false); + case KC_JUSTGAME: + return send_game_macro("It may be a game, but if you don't want to actually try, please go play AI, so that people that actually want to take the game seriously and \"get good\" have a place to do so without trolls like you throwing games.", record, false); + case KC_TORB: + return send_game_macro("That was positively riveting!", record, false); + case KC_AIM: + send_game_macro("That aim is absolutely amazing. It's almost like you're a machine!", record, true); + return send_game_macro("Wait! That aim is TOO good! You're clearly using an aim hack! CHEATER!", record, false); + case KC_C9: + return send_game_macro("OMG!!! C9!!!", record, false); + case KC_GGEZ: + return send_game_macro("That was a fantastic game, though it was a bit easy. Try harder next time!", record, false); +#endif // MACROS_ENABLED + + + case KC_DIABLO_CLEAR: // reset all Diablo timers, disabling them +#ifdef TAP_DANCE_ENABLE + if (record->event.pressed) { + uint8_t dtime; + for (dtime = 0; dtime < 4; dtime++) { + diablo_key_time[dtime] = diablo_times[0]; + } + } +#endif // TAP_DANCE_ENABLE + break; + + + case KC_CCCV: // One key copy/paste + if(record->event.pressed){ + copy_paste_timer = timer_read(); + } else { + if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy + register_code(KC_LCTL); + tap_code(KC_C); + unregister_code(KC_LCTL); + } else { // Tap, paste + register_code(KC_LCTL); + tap_code(KC_V); + unregister_code(KC_LCTL); + } + } + break; +#ifdef UNICODE_ENABLE + case UC_FLIP: // (ノಠ痊ಠ)ノ彡┻━┻ + if (record->event.pressed) { + send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); + } + break; + case UC_TABL: // ┬─┬ノ( º _ ºノ) + if (record->event.pressed) { + send_unicode_hex_string("252C 2500 252C 30CE 0028 0020 00BA 0020 005F 0020 00BA 30CE 0029"); + } + break; + case UC_SHRG: // ¯\_(ツ)_/¯ + if (record->event.pressed) { + send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); + } + break; + case UC_DISA: // ಠ_ಠ + if (record->event.pressed) { + send_unicode_hex_string("0CA0 005F 0CA0"); + } + break; +#endif + } + return process_record_keymap(keycode, record) && +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + process_record_user_rgb(keycode, record) && +#endif // RGBLIGHT_ENABLE + process_record_secrets(keycode, record); +} diff --git a/users/drashna/process_records.h b/users/drashna/process_records.h new file mode 100644 index 0000000000..620997addf --- /dev/null +++ b/users/drashna/process_records.h @@ -0,0 +1,101 @@ +#pragma once +#include "drashna.h" + +#if defined(KEYMAP_SAFE_RANGE) + #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE +#else + #define PLACEHOLDER_SAFE_RANGE SAFE_RANGE +#endif + +enum userspace_custom_keycodes { + VRSN = PLACEHOLDER_SAFE_RANGE, // Prints QMK Firmware and board info + KC_QWERTY, // Sets default layer to QWERTY + KC_COLEMAK, // Sets default layer to COLEMAK + KC_DVORAK, // Sets default layer to DVORAK + KC_WORKMAN, // Sets default layer to WORKMAN + KC_DIABLO_CLEAR, // Clears all Diablo Timers + KC_OVERWATCH, // Toggles game macro input mode (so in OW, it defaults to game chat) + KC_SALT, // See drashna.c for details + KC_MORESALT, + KC_SALTHARD, + KC_GOODGAME, + KC_SYMM, + KC_JUSTGAME, + KC_GLHF, + KC_TORB, + KC_AIM, + KC_C9, + KC_GGEZ, + KC_MAKE, // Run keyboard's customized make command + KC_RGB_T, // Toggles RGB Layer Indication mode + KC_SECRET_1, // test1 + KC_SECRET_2, // test2 + KC_SECRET_3, // test3 + KC_SECRET_4, // test4 + KC_SECRET_5, // test5 + KC_CCCV, // Hold to copy, tap to paste + KC_NUKE, // NUCLEAR LAUNCH DETECTED!!! + UC_FLIP, // (ಠ痊ಠ)┻━┻ + UC_TABL, // ┬─┬ノ( º _ ºノ) + UC_SHRG, // ¯\_(ツ)_/¯ + UC_DISA, // ಠ_ಠ + NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes +}; + +bool process_record_secrets(uint16_t keycode, keyrecord_t *record); +bool process_record_keymap(uint16_t keycode, keyrecord_t *record); + + + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) +#define TG_MODS TG(_MODS) +#define TG_GAME TG(_GAMEPAD) + +#define KC_SEC1 KC_SECRET_1 +#define KC_SEC2 KC_SECRET_2 +#define KC_SEC3 KC_SECRET_3 +#define KC_SEC4 KC_SECRET_4 +#define KC_SEC5 KC_SECRET_5 + +#define QWERTY KC_QWERTY +#define DVORAK KC_DVORAK +#define COLEMAK KC_COLEMAK +#define WORKMAN KC_WORKMAN + +#define KC_RESET RESET +#define KC_RST KC_RESET + +#ifdef SWAP_HANDS_ENABLE +#define KC_C1R3 SH_TT +#else // SWAP_HANDS_ENABLE +#define KC_C1R3 KC_BSPC +#endif // SWAP_HANDS_ENABLE + +#define BK_LWER LT(_LOWER, KC_BSPC) +#define SP_LWER LT(_LOWER, KC_SPC) +#define DL_RAIS LT(_RAISE, KC_DEL) +#define ET_RAIS LT(_RAISE, KC_ENTER) + +/* OSM keycodes, to keep things clean and easy to change */ +#define KC_MLSF OSM(MOD_LSFT) +#define KC_MRSF OSM(MOD_RSFT) + +#define OS_LGUI OSM(MOD_LGUI) +#define OS_RGUI OSM(MOD_RGUI) +#define OS_LSFT OSM(MOD_LSFT) +#define OS_RSFT OSM(MOD_RSFT) +#define OS_LCTL OSM(MOD_LCTL) +#define OS_RCTL OSM(MOD_RCTL) +#define OS_LALT OSM(MOD_LALT) +#define OS_RALT OSM(MOD_RALT) +#define OS_MEH OSM(MOD_MEH) +#define OS_HYPR OSM(MOD_HYPR) + +#define ALT_APP ALT_T(KC_APP) + +#define MG_NKRO MAGIC_TOGGLE_NKRO + +#define UC_IRNY UC(0x2E2E) +#define UC_CLUE UC(0x203D) diff --git a/users/drashna/rgb_stuff.h b/users/drashna/rgb_stuff.h index 3db068a31d..065bda9f9e 100644 --- a/users/drashna/rgb_stuff.h +++ b/users/drashna/rgb_stuff.h @@ -1,4 +1,8 @@ +#pragma once #include "quantum.h" +#ifdef RGB_MATRIX_ENABLE + #include "rgb_matrix.h" +#endif typedef struct { bool enabled; @@ -13,3 +17,5 @@ void matrix_init_rgb(void); void matrix_scan_rgb(void); uint32_t layer_state_set_rgb(uint32_t state); uint32_t default_layer_state_set_rgb(uint32_t state); +void rgblight_sethsv_default_helper(uint8_t index); +void rgb_matrix_set_color_all( uint8_t red, uint8_t green, uint8_t blue ); diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 49b1ddae97..5f243b0076 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -1,4 +1,5 @@ -SRC += drashna.c +SRC += drashna.c \ + process_records.c ifneq ("$(wildcard $(USER_PATH)/secrets.c)","") SRC += secrets.c diff --git a/users/drashna/tap_dances.c b/users/drashna/tap_dances.c index 3466758530..cbb3cf54ef 100644 --- a/users/drashna/tap_dances.c +++ b/users/drashna/tap_dances.c @@ -1,4 +1,3 @@ -#include "drashna.h" #include "tap_dances.h" diff --git a/users/drashna/tap_dances.h b/users/drashna/tap_dances.h index 8935753f6c..41d2bacb7b 100644 --- a/users/drashna/tap_dances.h +++ b/users/drashna/tap_dances.h @@ -1,3 +1,6 @@ +#pragma once +#include "drashna.h" + //define diablo macro timer variables extern uint16_t diablo_timer[4]; extern uint8_t diablo_times[]; @@ -5,3 +8,12 @@ extern uint8_t diablo_key_time[4]; void run_diablo_macro_check(void); + +#ifdef TAP_DANCE_ENABLE +enum { + TD_D3_1 = 0, + TD_D3_2, + TD_D3_3, + TD_D3_4 +}; +#endif // TAP_DANCE_ENABLE diff --git a/users/drashna/wrappers.h b/users/drashna/wrappers.h new file mode 100644 index 0000000000..b45359f676 --- /dev/null +++ b/users/drashna/wrappers.h @@ -0,0 +1,170 @@ +#pragma once +#include "drashna.h" +/* +Since our quirky block definitions are basically a list of comma separated +arguments, we need a wrapper in order for these definitions to be +expanded before being used as arguments to the LAYOUT_xxx macro. +*/ +#if (!defined(LAYOUT) && defined(KEYMAP)) +#define LAYOUT KEYMAP +#endif + +#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) +#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) +#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) + +/* +Blocks for each of the four major keyboard layouts +Organized so we can quickly adapt and modify all of them +at once, rather than for each keyboard, one at a time. +And this allows for much cleaner blocks in the keymaps. +For instance Tap/Hold for Control on all of the layouts + +NOTE: These are all the same length. If you do a search/replace + then you need to add/remove underscores to keep the + lengths consistent. +*/ + +#define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T +#define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G +#define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B + +#define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P +#define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN +#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH + + +#define _________________COLEMAK_L1________________ KC_Q, KC_W, KC_F, KC_P, KC_G +#define _________________COLEMAK_L2________________ KC_A, KC_R, KC_S, KC_T, KC_D +#define _________________COLEMAK_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_B + +#define _________________COLEMAK_R1________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN +#define _________________COLEMAK_R2________________ KC_H, KC_N, KC_E, KC_I, KC_O +#define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, KC_SLASH + +#define ______________COLEMAK_MOD_DH_L1____________ KC_Q, KC_W, KC_F, KC_P, KC_B +#define ______________COLEMAK_MOD_DH_L2____________ KC_A, KC_R, KC_S, KC_T, KC_G +#define ______________COLEMAK_MOD_DH_L3____________ KC_Z, KC_X, KC_C, KC_D, KC_V + +#define ______________COLEMAK_MOD_DH_R1____________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN +#define ______________COLEMAK_MOD_DH_R2____________ KC_M, KC_N, KC_E, KC_I, KC_O +#define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH + + +#define _________________DVORAK_L1_________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y +#define _________________DVORAK_L2_________________ KC_A, KC_O, KC_E, KC_U, KC_I +#define _________________DVORAK_L3_________________ KC_SCLN, KC_Q, KC_J, KC_K, KC_X + +#define _________________DVORAK_R1_________________ KC_F, KC_G, KC_C, KC_R, KC_L +#define _________________DVORAK_R2_________________ KC_D, KC_H, KC_T, KC_N, KC_S +#define _________________DVORAK_R3_________________ KC_B, KC_M, KC_W, KC_V, KC_Z + + +#define ________________DVORAK_AU_L1_______________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y +#define ________________DVORAK_AU_L2_______________ KC_O, KC_A, KC_E, KC_I, KC_U +#define ________________DVORAK_AU_L3_______________ KC_SCLN, KC_Q, KC_J, KC_K, KC_X + +#define ________________DVORAK_AU_R1_______________ KC_F, KC_G, KC_C, KC_R, KC_L +#define ________________DVORAK_AU_R2_______________ KC_D, KC_H, KC_T, KC_N, KC_S +#define ________________DVORAK_AU_R3_______________ KC_B, KC_M, KC_W, KC_V, KC_Z + +#define _________________WORKMAN_L1________________ KC_Q, KC_D, KC_R, KC_W, KC_B +#define _________________WORKMAN_L2________________ KC_A, KC_S, KC_H, KC_T, KC_G +#define _________________WORKMAN_L3________________ KC_Z, KC_X, KC_M, KC_C, KC_V + +#define _________________WORKMAN_R1________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN +#define _________________WORKMAN_R2________________ KC_Y, KC_N, KC_E, KC_O, KC_I +#define _________________WORKMAN_R3________________ KC_K, KC_L, KC_COMM, KC_DOT, KC_SLASH + + +#define _________________NORMAN_L1_________________ KC_Q, KC_W, KC_D, KC_F, KC_K +#define _________________NORMAN_L2_________________ KC_A, KC_S, KC_E, KC_T, KC_G +#define _________________NORMAN_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B + +#define _________________NORMAN_R1_________________ KC_J, KC_U, KC_R, KC_L, KC_SCLN +#define _________________NORMAN_R2_________________ KC_Y, KC_N, KC_I, KC_O, KC_U +#define _________________NORMAN_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, KC_SLASH + + +#define _________________MALTRON_L1________________ KC_Q, KC_P, KC_Y, KC_C, KC_B +#define _________________MALTRON_L2________________ KC_A, KC_N, KC_I, KC_S, KC_F +#define _________________MALTRON_L3________________ KC_SCLN, KC_SLSH, KC_J KC_G, KC_COMM + +#define _________________MALTRON_R1________________ KC_V, KC_M, KC_U, KC_Z, KC_L +#define _________________MALTRON_R2________________ KC_D, KC_T, KC_D, KC_O, KC_R +#define _________________MALTRON_R3________________ KC_DOT, KC_W, KC_K, KC_MINS, KC_X + + +#define _________________EUCALYN_L1________________ KC_SLSH, KC_COMM, KC_DOT, KC_F, KC_Q +#define _________________EUCALYN_L2________________ KC_A, KC_O, KC_E, KC_I, KC_U +#define _________________EUCALYN_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_W + +#define _________________EUCALYN_R1________________ KC_M, KC_R, KC_D, KC_Y, KC_P +#define _________________EUCALYN_R2________________ KC_G, KC_T, KC_K, KC_S, KC_N +#define _________________EUCALYN_R3________________ KC_B, KC_H, KC_J, KC_L, KC_SCLN + + +#define _____________CARPLAX_QFMLWY_L1_____________ KC_Q, KC_F, KC_M, KC_L, KC_W +#define _____________CARPLAX_QFMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R +#define _____________CARPLAX_QFMLWY_L3_____________ KC_Z, KC_V, KC_G, KC_C, KC_X + +#define _____________CARPLAX_QFMLWY_R1_____________ KC_Y, KC_U, KC_O, KC_B, KC_J +#define _____________CARPLAX_QFMLWY_R2_____________ KC_I, KC_A, KC_E, KC_H, KC_SCLN +#define _____________CARPLAX_QFMLWY_R3_____________ KC_P, KC_K, KC_COMM, KC_DOT, KC_SLSH + + +#define _____________CARPLAX_QGMLWB_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W +#define _____________CARPLAX_QGMLWB_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R +#define _____________CARPLAX_QGMLWB_L3_____________ KC_Z, KC_X, KC_C, KC_F, KC_J + +#define _____________CARPLAX_QGMLWB_R1_____________ KC_B, KC_Y, KC_U, KC_V, KC_SCLN +#define _____________CARPLAX_QGMLWB_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H +#define _____________CARPLAX_QGMLWB_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH + + +#define _____________CARPLAX_QGMLWY_L1_____________ KC_Q, KC_G, KC_M, KC_L, KC_W +#define _____________CARPLAX_QGMLWY_L2_____________ KC_D, KC_S, KC_T, KC_N, KC_R +#define _____________CARPLAX_QGMLWY_L3_____________ KC_Z, KC_X, KC_C, KC_V, KC_J + +#define _____________CARPLAX_QGMLWY_R1_____________ KC_Y, KC_F, KC_U, KC_B, KC_SCLN +#define _____________CARPLAX_QGMLWY_R2_____________ KC_I, KC_A, KC_E, KC_O, KC_H +#define _____________CARPLAX_QGMLWY_R3_____________ KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH + + +#define ________________NUMBER_LEFT________________ KC_1, KC_2, KC_3, KC_4, KC_5 +#define ________________NUMBER_RIGHT_______________ KC_6, KC_7, KC_8, KC_9, KC_0 +#define _________________FUNC_LEFT_________________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 +#define _________________FUNC_RIGHT________________ KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 + +#define ___________________BLANK___________________ _______, _______, _______, _______, _______ + + +#define _________________LOWER_L1__________________ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC +#define _________________LOWER_L2__________________ _________________FUNC_LEFT_________________ +#define _________________LOWER_L3__________________ _________________FUNC_RIGHT________________ + +#define _________________LOWER_R1__________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN +#define _________________LOWER_R2__________________ _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR +#define _________________LOWER_R3__________________ _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + + + +#define _________________RAISE_L1__________________ ________________NUMBER_LEFT________________ +#define _________________RAISE_L2__________________ ___________________BLANK___________________ +#define _________________RAISE_L3__________________ ___________________BLANK___________________ + +#define _________________RAISE_R1__________________ ________________NUMBER_RIGHT_______________ +#define _________________RAISE_R2__________________ _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC +#define _________________RAISE_R3__________________ _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END + + + +#define _________________ADJUST_L1_________________ RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG +#define _________________ADJUST_L2_________________ MU_TOG , CK_TOGG, AU_ON, AU_OFF, AG_NORM +#define _________________ADJUST_L3_________________ RGB_RMOD,RGB_HUD,RGB_SAD, RGB_VAD, KC_RGB_T + +#define _________________ADJUST_R1_________________ KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5 +#define _________________ADJUST_R2_________________ AG_SWAP, QWERTY, COLEMAK, DVORAK, WORKMAN +#define _________________ADJUST_R3_________________ MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT -- cgit v1.2.3 From 0677e64655f230722eaa35160acaefacf3684a43 Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Wed, 5 Dec 2018 08:42:50 -0800 Subject: Keymap: Wanleg layout updates (#4550) * config fixes (including for issue #3678) * put back audio * jj40 backlighting setup * jj40 backlighting setup * rules.mk fix * jj40 backlighting settings * iris setup * iris setup * iris setup * iris setup * iris setup - onehand * remove commented-out section * edits due to #4403 * xd75 testing * fix 5x15 layout issues with 5x5 bluetooth & xd75 * commenting out unused placeholders * change iris to more wanleg-like 4x12 layout * formatting changes * onehand layout cleanup/fix * revert temp change --- keyboards/iris/keymaps/wanleg/config.h | 33 ++++++++++++ keyboards/iris/keymaps/wanleg/keymap.c | 76 ++++++++++++++++++++++++++++ keyboards/iris/keymaps/wanleg/rules.mk | 5 ++ layouts/community/ortho_4x12/wanleg/config.h | 13 ++++- layouts/community/ortho_4x12/wanleg/keymap.c | 17 ++++++- layouts/community/ortho_4x12/wanleg/rules.mk | 16 +++--- layouts/community/ortho_5x15/wanleg/config.h | 2 +- layouts/community/ortho_5x15/wanleg/keymap.c | 49 +++++++++--------- layouts/community/ortho_5x15/wanleg/rules.mk | 19 ++++--- users/wanleg/config.h | 12 ++--- users/wanleg/rules.mk | 10 +++- users/wanleg/tapdances.c | 4 +- users/wanleg/wanleg.h | 18 +++---- 13 files changed, 208 insertions(+), 66 deletions(-) create mode 100644 keyboards/iris/keymaps/wanleg/config.h create mode 100644 keyboards/iris/keymaps/wanleg/keymap.c create mode 100644 keyboards/iris/keymaps/wanleg/rules.mk (limited to 'layouts') diff --git a/keyboards/iris/keymaps/wanleg/config.h b/keyboards/iris/keymaps/wanleg/config.h new file mode 100644 index 0000000000..9b90007688 --- /dev/null +++ b/keyboards/iris/keymaps/wanleg/config.h @@ -0,0 +1,33 @@ +/* +Copyright 2017 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +#undef USE_I2C + +/* Select hand configuration */ + +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS + +#define QMK_ESC_OUTPUT F6 // usually COL +#define QMK_ESC_INPUT D7 // usually ROW +#define QMK_LED B0 diff --git a/keyboards/iris/keymaps/wanleg/keymap.c b/keyboards/iris/keymaps/wanleg/keymap.c new file mode 100644 index 0000000000..6f8ff90661 --- /dev/null +++ b/keyboards/iris/keymaps/wanleg/keymap.c @@ -0,0 +1,76 @@ + +#include QMK_KEYBOARD_H +#include "wanleg.h" + + +#define LAYOUT_iris_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C \ + ) \ + LAYOUT_wrapper( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K31, K32, K33, K34, K35, K36, _______, _______, K37, K38, K39, K3A, K3B, K3C, \ + _______, _______, _______, _______, _______, _______ \ + ) +#define LAYOUT_iris_base_wrapper(...) LAYOUT_iris_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_GK] = LAYOUT_iris_base_wrapper( + _______________GherkinLike_0_______________, + _______________GherkinLike_1_______________, + _______________GherkinLike_2_______________, + _______________GherkinLike_3_OneHand_______ + ), + [ONE] = LAYOUT_wrapper( + _______________Qwerty_Row__0_______________, + _______________Qwerty_Row__1_______________, + _______________Qwerty_Row__2_______________, + KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), _______, _______, SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL, + _______, _______, _______, _______, _______, _______ + ), + [SUP] = LAYOUT_iris_base_wrapper( + ________________SUPRA_Row_0________________, + ________________SUPRA_Row_1________________, + ________________SUPRA_Row_2________________, + ________________SUPRA_Row_3________________ + ), + [SUB] = LAYOUT_iris_base_wrapper( + _______________SUBTER_Row__0_______________, + _______________SUBTER_Row__1_______________, + _______________SUBTER_Row__2_______________, + _______________SUBTER_Row__3_______________ + ), + [NUM] = LAYOUT_iris_base_wrapper( + _______________NUMBERS_Row_0_______________, + _______________NUMBERS_Row_1_______________, + _______________NUMBERS_Row_2_______________, + _______________NUMBERS_Row_3_______________ + ), + [DIR] = LAYOUT_iris_base_wrapper( + _____________DIRECTIONS_Row__0_____________, + _____________DIRECTIONS_Row__1_____________, + _____________DIRECTIONS_Row__2_____________, + _______, _______, ONEHAND, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [ETC] = LAYOUT_iris_base_wrapper( + ______________ETCETERA_Row__0______________, + ______________ETCETERA_Row__1______________, + ______________ETCETERA_Row__2______________, + ______________ETCETERA_Row__3______________ + ) + +}; + + +void matrix_init_keymap(void) { + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); + + DDRB &= ~(1<<0); + PORTB &= ~(1<<0); +} diff --git a/keyboards/iris/keymaps/wanleg/rules.mk b/keyboards/iris/keymaps/wanleg/rules.mk new file mode 100644 index 0000000000..bbb05a5b48 --- /dev/null +++ b/keyboards/iris/keymaps/wanleg/rules.mk @@ -0,0 +1,5 @@ +RGBLIGHT_ENABLE = no +BACKLIGHT_ENABLE = no + +SWAP_HANDS_ENABLE = yes +BOOTLOADER = qmk-dfu diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h index 2b2072db22..f7650ddd3a 100644 --- a/layouts/community/ortho_4x12/wanleg/config.h +++ b/layouts/community/ortho_4x12/wanleg/config.h @@ -1,5 +1,14 @@ #pragma once +#if defined(KEYBOARD_jj40) +#undef BACKLIGHT_BREATHING +#undef BACKLIGHT_LEVELS +#undef BREATHING_PERIOD +#define BACKLIGHT_BREATHING +#define BACKLIGHT_LEVELS 3 +#define BREATHING_PERIOD 15 +#endif + //QMK DFU settings (ProMicro boards with QMK bootloader) // set top left key as bootloader mode escape key on Lets Split rev2 #if defined(KEYBOARD_lets_split_rev2) @@ -12,7 +21,7 @@ #endif // set top left key as bootloader mode escape key on 4x4 48key layout -#if defined(KEYBOARD_4x4) && !defined(PRO_MICRO) +#if defined(KEYBOARD_40percentclub_4x4) && !defined(PRO_MICRO) #define QMK_LED B0 #define QMK_ESC_OUTPUT C6 // usually COL #define QMK_ESC_INPUT B2 // usually ROW @@ -20,7 +29,7 @@ // use alternate settings for 4x4 board using ProMicro instead of Micro // usage: make 4x4:wanleg PM=yes -#if defined(KEYBOARD_4x4) && defined(PRO_MICRO) +#if defined(KEYBOARD_40percentclub_4x4) && defined(PRO_MICRO) #define QMK_ESC_OUTPUT F4 // usually COL #define QMK_ESC_INPUT D1 // usually ROW #define QMK_LED B0 diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c index 6fe8446f6d..23e794dc41 100644 --- a/layouts/community/ortho_4x12/wanleg/keymap.c +++ b/layouts/community/ortho_4x12/wanleg/keymap.c @@ -15,8 +15,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______________Qwerty_Row__2_______________, KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL ), - -#elif defined(KEYBOARD_4x4) +[DIR] = LAYOUT_ortho_4x12_wrapper( + _____________DIRECTIONS_Row__0_____________, + _____________DIRECTIONS_Row__1_____________, + _____________DIRECTIONS_Row__2_____________, + _______, _______, ONEHAND, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), +#elif defined(KEYBOARD_40percentclub_4x4) [_GK] = LAYOUT_ortho_4x12_wrapper( _______________GherkinLike_0_______________, _______________GherkinLike_1_______________, @@ -31,6 +36,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______________NUMPAD_Row__3_______________ ), +#elif defined(KEYBOARD_jj40) +[_GK] = LAYOUT_ortho_4x12_wrapper( + _______________GherkinLike_0_______________, + _______________GherkinLike_1_______________, + _______________GherkinLike_2_______________, + TD(RST_TAP_DANCE), BL_TOGG, BL_STEP, BL_BRTG, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL +), + #else [_GK] = LAYOUT_ortho_4x12_wrapper( _______________GherkinLike_0_______________, diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk index 835022f4bf..e8277610b6 100644 --- a/layouts/community/ortho_4x12/wanleg/rules.mk +++ b/layouts/community/ortho_4x12/wanleg/rules.mk @@ -1,14 +1,10 @@ AUDIO_ENABLE = no -SWAP_HANDS_ENABLE = yes +SWAP_HANDS_ENABLE = no -ifeq ($(strip $(KEYBOARD)), jj40) - SWAP_HANDS_ENABLE = no +ifeq ($(strip $(KEYBOARD)), lets_split/rev2) + SWAP_HANDS_ENABLE = yes endif -ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4) - SWAP_HANDS_ENABLE = no -endif - -ifeq ($(strip $(KEYBOARD)), zlant) - SWAP_HANDS_ENABLE = no -endif +ifeq ($(strip $(KEYBOARD)), planck/rev6) + AUDIO_ENABLE = yes +endif \ No newline at end of file diff --git a/layouts/community/ortho_5x15/wanleg/config.h b/layouts/community/ortho_5x15/wanleg/config.h index 1aeda2db4e..d2b3d67193 100644 --- a/layouts/community/ortho_5x15/wanleg/config.h +++ b/layouts/community/ortho_5x15/wanleg/config.h @@ -1,7 +1,7 @@ #pragma once //5x5 powered by Adafruit Feather 32u4 Bluefruit LE -#if defined(KEYBOARD_5x5) && defined(BLUEFRUIT) +#if defined(KEYBOARD_40percentclub_5x5) && defined(BLUEFRUIT) //need to undefine standard 5x5 array before defining alternate Bluefruit array #undef MATRIX_ROW_PINS diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c index 66b3ce018d..51b020fcde 100644 --- a/layouts/community/ortho_5x15/wanleg/keymap.c +++ b/layouts/community/ortho_5x15/wanleg/keymap.c @@ -6,7 +6,7 @@ #define _________________Num_Row_75________________ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -#if defined(KEYBOARD_5x5) +#if defined(KEYBOARD_40percentclub_5x5) [GK75] = LAYOUT_ortho_5x15_wrapper( _________________Num_Row_75________________, QWERTY75, XXXXXXX, FUNCTION75, _______________GherkinLike_0_______________, KC_KP_7, KC_KP_8, KC_KP_9, @@ -23,6 +23,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TD(RST_TAP_DANCE), GHERKIN75, NUMPAD, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, KC_RALT, KC_RGUI ), +[gNUM] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_NUM_0_______________, + _______________Gherkin_NUM_1_______________, + _______________Gherkin_NUM_2_______________, + _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______ +), + +[gDIR] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_DIR_0_______________, + _______________Gherkin_DIR_1_______________, + _______________Gherkin_DIR_2_______________, + _________________BLANK_50__________________ +), + +[gETC] = LAYOUT_ortho_5x10_wrapper( + _________________BLANK_50__________________, + _______________Gherkin_ETC_0_______________, + _______________Gherkin_ETC_1_______________, + _______________Gherkin_ETC_2_______________, + _______, KC_CAPS, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______ +), + #if defined(BLUEFRUIT) [PAD] = LAYOUT_ortho_5x5_wrapper( _______, _______, _______, OUT_BT, OUT_USB, @@ -210,27 +234,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R ), -[gNUM] = LAYOUT_ortho_5x10_wrapper( - _________________BLANK_50__________________, - _______________Gherkin_NUM_0_______________, - _______________Gherkin_NUM_1_______________, - _______________Gherkin_NUM_2_______________, - _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______ -), - -[gDIR] = LAYOUT_ortho_5x10_wrapper( - _________________BLANK_50__________________, - _______________Gherkin_DIR_0_______________, - _______________Gherkin_DIR_1_______________, - _______________Gherkin_DIR_2_______________, - _________________BLANK_50__________________ -), - -[gETC] = LAYOUT_ortho_5x10_wrapper( - _________________BLANK_50__________________, - _______________Gherkin_ETC_0_______________, - _______________Gherkin_ETC_1_______________, - _______________Gherkin_ETC_2_______________, - _______, KC_CAPS, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______ -), }; diff --git a/layouts/community/ortho_5x15/wanleg/rules.mk b/layouts/community/ortho_5x15/wanleg/rules.mk index bfc4c69d99..96bbaa458e 100644 --- a/layouts/community/ortho_5x15/wanleg/rules.mk +++ b/layouts/community/ortho_5x15/wanleg/rules.mk @@ -1,8 +1,11 @@ -ifeq (,$(findstring yes,$(BLUEFRUIT))) - BLUETOOTH = AdafruitBLE - BLUETOOTH_ENABLE = yes - F_CPU = 8000000 - CONSOLE_ENABLE = no # Console for debug(+400) - COMMAND_ENABLE = no # Commands for debug and configuration - RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -endif \ No newline at end of file +#ifeq ($(strip $(KEYBOARD)), xd75) +#or +#ifeq (,$(findstring xd75,$(KEYBOARD))) +#something +#endif + +#ifeq ($(strip $(KEYBOARD)), 40percentclub/5x5) +#or +#ifeq (,$(findstring 40percentclub/5x5,$(KEYBOARD))) +#something +#endif \ No newline at end of file diff --git a/users/wanleg/config.h b/users/wanleg/config.h index f2e785659f..0c8b048af7 100644 --- a/users/wanleg/config.h +++ b/users/wanleg/config.h @@ -1,10 +1,12 @@ -#ifndef USERSPACE_CONFIG_H -#define USERSPACE_CONFIG_H +#pragma once //TAPPING_TERM //tapping term short (<100): on multi-purpose keys, slow taps may not register, but "holds" register easier. multi-tap keys may be difficult to activate. //tapping term long (>200): holds don't register as easily - noticeable when typing quickly (e.g. shift doesn't want to engage.) -#if defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_lets_split_rev2) + + +//MIGHT HAVE TO SPLIT THIS INTO TWO CONDITIONS +#if defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_lets_split_rev2) || defined(KEYBOARD_iris_rev2) //Kailh Coppers activate quickly and don't need a long tapping term #define TAPPING_TERM 100 @@ -39,6 +41,4 @@ // Disable mod tap interrrupt #ifndef IGNORE_MOD_TAP_INTERRUPT #define IGNORE_MOD_TAP_INTERRUPT -#endif // !mod tap interrrupt - -#endif // !USERSPACE_CONFIG_H +#endif // !mod tap interrrupt \ No newline at end of file diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index e3e802b4a7..c6569594b3 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -18,5 +18,13 @@ endif #use alternate settings for boards using "Adafruit Feather 32u4 Bluefruit LE" instead of Micro #example usage: make 5x5:wanleg BT=yes ifeq ($(strip $(BT)), yes) - OPT_DEFS += -DBLUEFRUIT + #opt_defs for alternate pin usage + OPT_DEFS += -DBLUEFRUIT + #Adafruit Bluefruit controller settings + BLUETOOTH = AdafruitBLE + BLUETOOTH_ENABLE = yes + F_CPU = 8000000 + CONSOLE_ENABLE = no # Console for debug(+400) + COMMAND_ENABLE = no # Commands for debug and configuration + RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow endif \ No newline at end of file diff --git a/users/wanleg/tapdances.c b/users/wanleg/tapdances.c index 3878e6d31c..e5051f9ee6 100644 --- a/users/wanleg/tapdances.c +++ b/users/wanleg/tapdances.c @@ -73,9 +73,9 @@ void CAD_finished (qk_tap_dance_state_t *state, void *user_data) { //register_code(KC_NO); //take a screenshot of a single window, open Paint and paste SEND_STRING(SS_LALT(SS_TAP(X_PSCREEN)) SS_LGUI("r")); - _delay_ms(500); + wait_ms(500); SEND_STRING("mspaint" SS_TAP(X_ENTER)); - _delay_ms(700); + wait_ms(700); SEND_STRING(SS_LCTRL("v")); break; //register this keycode when button is held case DOUBLE_TAP: diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h index 9e0cf3ee5d..c2644cd6c4 100644 --- a/users/wanleg/wanleg.h +++ b/users/wanleg/wanleg.h @@ -1,5 +1,4 @@ -#ifndef USERSPACE -#define USERSPACE +#pragma once #include "quantum.h" @@ -32,7 +31,6 @@ enum userspace_layers { #elif KEYBOARD_xd75 enum userspace_layers { GK75 = 0, - PAD, QW75, SUB75, SUP75, @@ -43,6 +41,7 @@ enum userspace_layers { gGK, _GK, _QW, + PAD, ONE, SUB, SUP, @@ -54,7 +53,7 @@ enum userspace_layers { gETC, GK50, }; -#elif KEYBOARD_5x5 +#elif KEYBOARD_40percentclub_5x5 enum userspace_layers { GK50 = 0, gNUM, @@ -82,8 +81,8 @@ enum userspace_layers { #else enum userspace_layers { _GK = 0, - PAD, _QW, + PAD, ONE, SUB, SUP, @@ -156,11 +155,11 @@ enum { #define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_ortho_3x10_wrapper(...) LAYOUT_ortho_3x10(__VA_ARGS__) -#define LAYOUT_ortho_5x10_wrapper(...) LAYOUT_ortho_5x10(__VA_ARGS__) -#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) -#define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) #define LAYOUT_ortho_4x4_wrapper(...) LAYOUT_ortho_4x4(__VA_ARGS__) +#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) #define LAYOUT_ortho_5x5_wrapper(...) LAYOUT_ortho_5x5(__VA_ARGS__) +#define LAYOUT_ortho_5x10_wrapper(...) LAYOUT_ortho_5x10(__VA_ARGS__) +#define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__) // Blocks for each of the major keyboard layouts // Organized so we can quickly adapt and modify all of them @@ -229,7 +228,7 @@ enum { /* Gherkin-Like * .-----------------------------------------------------------------------------------------------------------. - * | ESC | Q//ESC | W | E | R | T | Y | U | I | O | P | BSPC | + * | ESC | Q//ESC | W | E | R | T | Y | U | I | O | P | BSPC | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | TAB | A | S | D | F | G | H | J | K | L | SPACE | ' | * | | | | | | | | | | |SFThold | | @@ -361,4 +360,3 @@ enum { #define _______________NUMPAD_Row__1_______________ KC_KP_4, KC_KP_5, KC_KP_6, KC_SPC #define _______________NUMPAD_Row__2_______________ KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT #define _______________NUMPAD_Row__3_______________ KC_KP_0, TD(LYR_TAP_DANCE), KC_KP_DOT, KC_PMNS -#endif // !USERSPACE -- cgit v1.2.3 From d115abfd8d1e2a7e34cc7809165e413efc1eb9ce Mon Sep 17 00:00:00 2001 From: Jason Thigpen Date: Wed, 5 Dec 2018 09:02:26 -0800 Subject: Keyboard: Add dz60 tsangan hhkb (#4529) * Add tsangan bottom row hhkb layout for dz60 * Add crd's tsangan hhkb layout for dz60 * Resort to native key aliases when they exist * Update crd's dz60 ansi keymap to match updates for hhkb fn layer * Add tsangan hhkb layout to dz60 info.json for KLE * Fix JSON nesting in dz60 layouts block * Minor adjustments to crd layouts to make them more consistent * Update layout naming to 60_tsangan_hhkb --- keyboards/dz60/dz60.h | 26 +++++++++++++ keyboards/dz60/info.json | 4 ++ keyboards/dz60/keymaps/crd_ansi/keymap.c | 43 ++++++++++++---------- keyboards/dz60/keymaps/crd_tsangan/keymap.c | 30 +++++++++++++++ .../keymap.c | 21 ----------- .../60_ansi_tsangan_split_bs_rshift/layout.json | 5 --- .../60_ansi_tsangan_split_bs_rshift/readme.md | 3 -- .../default_60_tsangan_hhkb/keymap.c | 21 +++++++++++ layouts/default/60_tsangan_hhkb/layout.json | 5 +++ layouts/default/60_tsangan_hhkb/readme.md | 3 ++ 10 files changed, 113 insertions(+), 48 deletions(-) create mode 100644 keyboards/dz60/keymaps/crd_tsangan/keymap.c delete mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c delete mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json delete mode 100644 layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md create mode 100644 layouts/default/60_tsangan_hhkb/default_60_tsangan_hhkb/keymap.c create mode 100644 layouts/default/60_tsangan_hhkb/layout.json create mode 100644 layouts/default/60_tsangan_hhkb/readme.md (limited to 'layouts') diff --git a/keyboards/dz60/dz60.h b/keyboards/dz60/dz60.h index 62f6338cd4..50e80bed8f 100644 --- a/keyboards/dz60/dz60.h +++ b/keyboards/dz60/dz60.h @@ -332,5 +332,31 @@ { k40, k41, KC_NO, k43, k44, KC_NO, k46, KC_NO, k48, KC_NO, k4a, k4b, k4c, k4d, k4e } \ } +/* LAYOUT_60_tsangan_hhkb + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤ + * │40 │41 │43 │46 (7u) │4b │4d │4e │ + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ +*/ +#define LAYOUT_60_tsangan_hhkb( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k3e, \ + k40, k41, k43, k46, k4b, k4d, k4e \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO }, \ + { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, KC_NO, k3d, k3e }, \ + { k40, k41, KC_NO, k43, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, KC_NO, k4b, KC_NO, k4d, k4e } \ +} #endif diff --git a/keyboards/dz60/info.json b/keyboards/dz60/info.json index 9ec7274531..d1139fd1fe 100644 --- a/keyboards/dz60/info.json +++ b/keyboards/dz60/info.json @@ -52,6 +52,10 @@ "LAYOUT_60_b_iso": { "key_count": 67, "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"1", "x":1, "y":0}, {"label":"2", "x":2, "y":0}, {"label":"3", "x":3, "y":0}, {"label":"4", "x":4, "y":0}, {"label":"5", "x":5, "y":0}, {"label":"6", "x":6, "y":0}, {"label":"7", "x":7, "y":0}, {"label":"8", "x":8, "y":0}, {"label":"9", "x":9, "y":0}, {"label":"0", "x":10, "y":0}, {"label":"-", "x":11, "y":0}, {"label":"=", "x":12, "y":0}, {"x":13, "y":0}, {"label":"Back Space", "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":"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":"#", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"\\", "x":1.25, "y":3}, {"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":"Shift", "x":11.25, "y":3, "w":1.75}, {"label":"Up", "x":13, "y":3}, {"label":"Del", "x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"GUI", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"label":"Space", "x":3.75, "y":4, "w":2.25}, {"label":"Space", "x":6, "y":4, "w":1.25}, {"label":"Space", "x":7.25, "y":4, "w":2.75}, {"label":"AltGr", "x":10, "y":4}, {"label":"Fn", "x":11, "y":4}, {"label":"Left", "x":12, "y":4}, {"label":"Down", "x":13, "y":4}, {"label":"Right", "x":14, "y":4}] + }, + "LAYOUT_60_tsangan_hhkb": { + "key_count": 62, + "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":"Backspace", "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}, {"label":"Fn", "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":7}, {"label":"Win", "x":11, "y":4, "w":1.5}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}] } } } diff --git a/keyboards/dz60/keymaps/crd_ansi/keymap.c b/keyboards/dz60/keymaps/crd_ansi/keymap.c index eac0f1e84c..52d1756be2 100644 --- a/keyboards/dz60/keymaps/crd_ansi/keymap.c +++ b/keyboards/dz60/keymaps/crd_ansi/keymap.c @@ -1,25 +1,30 @@ #include QMK_KEYBOARD_H +enum keyboard_layers { + _BL = 0, // Base Layer + _FL // Function Layer +}; + +// Custom #defined keycodes (shorter macros for readability) +#define KC_CTES CTL_T(KC_ESC) +#define KC_RSUP RSFT_T(KC_UP) +#define KC_FNLT LT(_FL, KC_LEFT) +#define KC_RADN RALT_T(KC_DOWN) +#define KC_RCRT RCTL_T(KC_RIGHT) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - LAYOUT_60_ansi( - 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_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, - CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_UP), - MO(1), KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, RGUI_T(KC_LEFT), RALT_T(KC_DOWN), LT(2, KC_RIGHT) - ), - LAYOUT_60_ansi( - 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_DEL, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, - _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_END, KC_PGDN, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [_BL] = LAYOUT_60_ansi( + 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_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_CTES, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSUP, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_FNLT, KC_RADN, KC_RCRT ), - LAYOUT_60_ansi( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCROLLLOCK, KC_PAUSE, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [_FL] =LAYOUT_60_ansi( + 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_DEL, + _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGDN, KC_PGUP, RESET, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_SLCK, KC_VOLD, KC_VOLU, KC_PAUS, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/dz60/keymaps/crd_tsangan/keymap.c b/keyboards/dz60/keymaps/crd_tsangan/keymap.c new file mode 100644 index 0000000000..320de07a17 --- /dev/null +++ b/keyboards/dz60/keymaps/crd_tsangan/keymap.c @@ -0,0 +1,30 @@ +#include QMK_KEYBOARD_H + +enum keyboard_layers { + _BL = 0, // Base Layer + _FL // Function Layer +}; + +// Custom #defined keycodes (shorter macros for readability) +#define KC_CTES CTL_T(KC_ESC) +#define KC_RSUP RSFT_T(KC_UP) +#define KC_RGLT RGUI_T(KC_LEFT) +#define KC_RADN RALT_T(KC_DOWN) +#define KC_RCRT RCTL_T(KC_RIGHT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BL] = LAYOUT_60_tsangan_hhkb( + 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, + 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_CTES, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSUP, MO(_FL), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGLT, KC_RADN, KC_RCRT + ), + [_FL] = LAYOUT_60_tsangan_hhkb( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RESET, + _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGDN, KC_PGUP, KC_DEL, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_SLCK, KC_VOLD, KC_VOLU, KC_PAUS, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c b/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c deleted file mode 100644 index 17b47eecf9..0000000000 --- a/layouts/default/60_ansi_tsangan_split_bs_rshift/default_60_ansi_tsangan_split_bs_rshift/keymap.c +++ /dev/null @@ -1,21 +0,0 @@ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_60_ansi_tsangan_split_bs_rshift( - 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_BSPC, - 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_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 , - 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_RSFT, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL - ) -}; - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - -}; diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json b/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json deleted file mode 100644 index 117d26d419..0000000000 --- a/layouts/default/60_ansi_tsangan_split_bs_rshift/layout.json +++ /dev/null @@ -1,5 +0,0 @@ -[{a:7},"","","","","","","","","","","","","","",""], -[{w:1.5},"","","","","","","","","","","","","",{w:1.5},""], -[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], -[{w:2.25},"","","","","","","","","","","",{w:1.75},"",{w:1},""], -[{w:1.5},"",{w:1},"",{w:1.5},"",{w:7},"",{w:1.5},"",{w:1},"",{w:1.5},""] diff --git a/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md b/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md deleted file mode 100644 index ad1c598b34..0000000000 --- a/layouts/default/60_ansi_tsangan_split_bs_rshift/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -# 60_ansi_tsangan_split_bs_rshift - - LAYOUT_60_ansi_tsangan_split_bs_rshift \ No newline at end of file diff --git a/layouts/default/60_tsangan_hhkb/default_60_tsangan_hhkb/keymap.c b/layouts/default/60_tsangan_hhkb/default_60_tsangan_hhkb/keymap.c new file mode 100644 index 0000000000..c9c8313298 --- /dev/null +++ b/layouts/default/60_tsangan_hhkb/default_60_tsangan_hhkb/keymap.c @@ -0,0 +1,21 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_tsangan_hhkb( + 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_BSPC, + 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_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 , + 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_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ) +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +}; diff --git a/layouts/default/60_tsangan_hhkb/layout.json b/layouts/default/60_tsangan_hhkb/layout.json new file mode 100644 index 0000000000..117d26d419 --- /dev/null +++ b/layouts/default/60_tsangan_hhkb/layout.json @@ -0,0 +1,5 @@ +[{a:7},"","","","","","","","","","","","","","",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"",{w:1},""], +[{w:1.5},"",{w:1},"",{w:1.5},"",{w:7},"",{w:1.5},"",{w:1},"",{w:1.5},""] diff --git a/layouts/default/60_tsangan_hhkb/readme.md b/layouts/default/60_tsangan_hhkb/readme.md new file mode 100644 index 0000000000..f1e955f1e7 --- /dev/null +++ b/layouts/default/60_tsangan_hhkb/readme.md @@ -0,0 +1,3 @@ +# 60_tsangan_hhkb + + LAYOUT_60_tsangan_hhkb \ No newline at end of file -- cgit v1.2.3 From e8f730595c37a508ad86cc46fa39c7fae4d36800 Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Tue, 30 Oct 2018 01:09:22 -0700 Subject: Dactyl_manuform map and updates to my ergodox layout for moving to a different location. --- .../dactyl_manuform/5x6/keymaps/333fred/config.h | 9 + .../dactyl_manuform/5x6/keymaps/333fred/keymap.c | 80 +++++ .../dactyl_manuform/5x6/keymaps/333fred/rules.mk | 7 + layouts/community/ergodox/333fred/keymap.c | 350 +++++++++------------ layouts/community/ergodox/333fred/visualizer.c | 14 +- users/333fred/333fred.h | 11 +- 6 files changed, 269 insertions(+), 202 deletions(-) create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk (limited to 'layouts') diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h new file mode 100644 index 0000000000..10b9693267 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h @@ -0,0 +1,9 @@ +#pragma once + +#include "333fred_config.h" + +#define USE_SERIAL +#define EE_HANDS + +#undef TAPPING_TERM +#define TAPPING_TERM 200 diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c new file mode 100644 index 0000000000..c37009f24d --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c @@ -0,0 +1,80 @@ +#include QMK_KEYBOARD_H +#include "333fred.h" + +enum custom_macros { + DLEFT, + DRIGHT, + PSCREEN_APP +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = LAYOUT_5x6( + 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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT), + KC_F4, KC_F5, TG(CODEFLOW), KC_EQL, + KC_LALT, KC_BSPC, KC_SPC, OSL(VIM), + KC_TAB, TD(TD_SYM_VIM), KC_ENT, KC_RGUI, + KC_LCTL, KC_DEL, KC_UP, KC_DOWN + ), + + [CODEFLOW] = LAYOUT_5x6( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_F7, KC_F8, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + + [SYMB] = LAYOUT_5x6( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_7, KC_8, KC_9, _______, KC_F12, + _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, _______, KC_4, KC_5, KC_6, _______, _______, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, KC_1, KC_2, KC_3, _______, _______, + KC_F7, KC_F8, KC_0, KC_ENT, + _______, _______, KC_MPLY, KC_MNXT, + _______, _______, KC_MPRV, _______, + _______, _______, KC_VOLU, KC_VOLD + ), + + [VIM] = LAYOUT_5x6( + _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______, + _______, M(DLEFT), M(DRIGHT), KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + switch(id) { + case DLEFT: + if (record->event.pressed) { // Windows move desktop left + return MACRO(D(LCTL), D(LGUI), T(LEFT), U(LGUI), U(LCTL), END); + } + break; + case DRIGHT: + if (record->event.pressed) { // Windows move desktop right + return MACRO(D(LCTL), D(LGUI), T(RIGHT), U(LGUI), U(LCTL), END); + } + break; + case PSCREEN_APP: if (record->event.pressed) { + return MACRO(D(LALT), T(PSCR), U(LALT), END); + } + break; + } + return MACRO_NONE; +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + tap_dance_process_record(keycode); + return true; +} diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk new file mode 100644 index 0000000000..79ef33e7c3 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk @@ -0,0 +1,7 @@ + +NKRO_ENABLE = yes +KEY_LOCK_ENABLE = yes +TAP_DANCE_ENABLE = yes +CONSOLE_ENABLE = no +PERMISSIVE_HOLD = yes +EXTRAFLAGS += -flto diff --git a/layouts/community/ergodox/333fred/keymap.c b/layouts/community/ergodox/333fred/keymap.c index d7728a5bd4..b203f42c62 100644 --- a/layouts/community/ergodox/333fred/keymap.c +++ b/layouts/community/ergodox/333fred/keymap.c @@ -11,28 +11,19 @@ enum custom_keycodes { }; enum custom_macros { - VERSION, - EEPROM, - // Windows macros DLEFT, DRIGHT, PSCREEN_APP, LSFT_TAB, - // VS Macros - REFACTOR, - TEST, - DEBUG_TEST, - FORMAT, - BUILD, - GO_TO_IMPL, - FIND_ALL_REF, - REMOVE_SORT_USINGS, - // KeePass macros KEEPASS_OPEN, KEEPASS_TYPE, + + // Terminal Copy/Paste + TERM_CP, + TERM_PT }; // NOTE: Cells marked with ACCESS must remain transparent, they're the keys that actually get to that layer @@ -41,131 +32,111 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | = | | L1 | 6 | 7 | 8 | 9 | 0 | - | + * | ` | 1 | 2 | 3 | 4 | 5 | F5 | | F6 | 6 | 7 | 8 | 9 | 0 | - | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | Q | W | E | R | T | L1 | | L2 | Y | U | I | O | P | \ | + * | TAB | Q | W | E | R | T | GAME | |GAMEA | Y | U | I | O | P | \ | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | Esc | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | - * |--------+------+------+------+------+------| L2 | |MO(3) |------+------+------+------+------+--------| + * |--------+------+------+------+------+------| SYMB | |MEDIA |------+------+------+------+------+--------| * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | Up | Right| RGUI | + * |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | = | Right| RGUI | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | Copy | Paste| | Copy | Paste | * ,------|------|------| |------+--------+------. - * | | | PgUp | | PgDn | | | + * | | | PgUp | | Up | | | * | Bcksp|OSL(2)|------| |------| Ent |Space | - * | | VIM | Del | | RCtrl| | | + * | | VIM | Del | | Down | | | * `--------------------' `----------------------' */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* -[BASE] = LAYOUT_ergodox( // layer 0 : default +[BASE] = LAYOUT_ergodox_pretty( // layer 0 : default // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(CODE), - KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, - OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(SYMB), - OSM(MOD_LCTL), KC_F4, KC_F5, KC_LGUI,KC_LALT, - LCTL(KC_C), LCTL(KC_V), - KC_PGUP, - KC_BSPC,TD(TD_SYM_VIM), KC_DEL, - // right hand - TG(CODE), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, - KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - MO(MDIA), KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), OSM(MOD_RSFT), - KC_LEFT,KC_DOWN,KC_UP, KC_RIGHT, KC_RGUI, - LCTL(KC_C), LCTL(KC_V), - KC_PGDN, - KC_RCTL, KC_ENT, KC_SPC + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F5, KC_F6, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(GAME), TG(GAME_ARROW), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(SYMB), MO(MDIA), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), OSM(MOD_RSFT), + OSM(MOD_LCTL), KC_F4, KC_F5, KC_LGUI, KC_LALT, KC_LEFT, KC_DOWN, KC_EQL, KC_RIGHT, KC_RGUI, + LCTL(KC_C), LCTL(KC_V), LCTL(KC_C), LCTL(KC_V), + KC_PGUP, KC_UP, + KC_BSPC, TD(TD_SYM_VIM), KC_DEL, KC_DOWN, KC_ENT, KC_SPC ), -/* Keymap 1: Code Layer + +/* Keymap 2: Codeflow Layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | |ACCESS| | | | | | | + * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | F10 | | F11 | | | | | | | + * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | |------| |------| | | | | | | - * |--------+------+------+------+------+------| L2 | | |------+------+------+------+------+--------| + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | F12 |GoToIm| FAR | | | + * | | | | | | | F7 | F8 | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,---------------. - * |Format|Build | | Copy | Paste | + * | |ACCESS| | | | * ,------|------|------| |------+--------+------. - * | | |Refact| | Up | | | - * | |ACCESS|------| |------| | | - * | | | | | Down | | | + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | * `--------------------' `----------------------' */ // If it accepts an argument (i.e, is a function), it doesn't need KC_. // Otherwise, it needs KC_* -[CODE] = LAYOUT_ergodox( // layer 1 : code +[CODEFLOW] = LAYOUT_ergodox( // layer 1 : code // left hand 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_F10, + 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, TG(SYMB), + 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(FORMAT),M(BUILD), - M(REFACTOR), - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right han - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_F11, 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_F12, M(GO_TO_IMPL),M(FIND_ALL_REF),KC_TRNS, KC_TRNS, - LCTL(KC_C), LCTL(KC_V), - KC_UP, - KC_DOWN, 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_F7, KC_F8, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS ), -/* Keymap 2: Symbol Layer +/* Keymap 3: Symbol Layer * * ,---------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| - * | | ! | @ | ( | ) | | |ACCESS| |ACCESS| Up | 7 | 8 | 9 | * | F12 | + * | | ! | @ | ( | ) | | | | | | Up | 7 | 8 | 9 | * | F12 | * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | # | $ | { | } | ` |------| |------| Down | 4 | 5 | 6 | + | | * |---------+------+------+------+------+------|ACCESS| | |------+------+------+------+------+--------| * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | EPRM | | | | | | 0 | 0 | . | = | | + * | | | | | | | 0 | 0 | . | = | | * `-----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | Caps | | | | + * | | | | | | * ,------|------|------| |------+------+------. * | | |APScr | | | | | * | |ACCESS|------| |------| | | - * | | | PScr | |ACCESS| | | + * | | | PScr | | | | | * `--------------------' `--------------------' */ -// SYMBOLS -[SYMB] = LAYOUT_ergodox( +[SYMB] = LAYOUT_ergodox_pretty( // left hand - VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,KC_EXLM,KC_AT, KC_LPRN,KC_RPRN,KC_PIPE,KC_TRNS, - KC_TRNS,KC_HASH,KC_DLR, KC_LCBR,KC_RCBR,KC_GRV, - KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, - EPRM,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_CAPS, - M(PSCREEN_APP), - KC_TRNS,KC_TRNS,KC_PSCR, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, - KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, - KC_0, KC_0, KC_DOT, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, KC_TRNS, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_TRNS, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_0, KC_DOT, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + M(PSCREEN_APP), KC_TRNS, + KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 3: Media and mouse keys * @@ -188,32 +159,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | Back | | | * `--------------------' `--------------------' */ -// MEDIA AND MOUSE -[MDIA] = LAYOUT_ergodox( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - BL_INC, BL_DEC, - BL_TOGG, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - 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_VOLU, KC_TRNS, - KC_VOLD, - KC_MPRV, KC_MPLY, KC_MNXT +[MDIA] = LAYOUT_ergodox_pretty( + 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_MS_U, 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_MS_L, KC_MS_D, KC_MS_R, 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_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + BL_INC, BL_DEC, KC_VOLU, KC_TRNS, + BL_TOGG, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT ), /* Keymap 4: Movement * * ,--------------------------------------------------. ,--------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | |KOpen |KType |LSHFT | | | | | | Copy | | | | Paste| | + * | |KOpen |KType |TERMCP|TERMPT| | | | | Copy | | | | Paste| | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | |DLeft |DRight|LCTRL | LGUI | |------| |------| Left | Down | Up | Right| | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -230,26 +191,84 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // MEDIA AND MOUSE -[VIM] = LAYOUT_ergodox( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, M(KEEPASS_OPEN),M(KEEPASS_TYPE),KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, M(DLEFT), M(DRIGHT), KC_LCTL, KC_LGUI, KC_TRNS, - KC_TRNS, M(LSFT_TAB), KC_TAB, 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, - // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, LCTL(KC_C),KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_V),KC_TRNS, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,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_END, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS - -) +[VIM] = LAYOUT_ergodox_pretty( + 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(KEEPASS_OPEN), M(KEEPASS_TYPE), TERM_CP, TERM_PT, KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_C), KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_V), KC_TRNS, + KC_TRNS, M(DLEFT), M(DRIGHT), KC_LCTL, KC_LGUI, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, + KC_TRNS, M(LSFT_TAB), KC_TAB, 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_HOME, KC_END, + KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 1: Game Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | |ACCESS| | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CTRL | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | SHIFT | Z | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |ENTER | | | LOCK | BSPC | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | F5 | F6 | | | | + * ,------|------|------| |------+--------+------. + * | | | | | | | | + * | ALT | SPC |------| |------| | | + * | | | SYMB | | | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[GAME] = LAYOUT_ergodox_pretty( // layer 1 : code + // left hand + KC_ESC, 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_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LSFT, KC_Z, 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_ENT, KC_TRNS, KC_TRNS, KC_LOCK, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_F5, KC_F6, LCTL(KC_C), LCTL(KC_V), + KC_TRNS, KC_UP, + KC_LALT, KC_SPC, OSM(SYMB), KC_DOWN, KC_TRNS, KC_TRNS + ), +/* Keymap 1: Game Arrow Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Up | | | | | |ACCESS| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CTRL | Left | Down |Right | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | SHIFT | Z | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |ENTER | | | LOCK | BSPC | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | F5 | F6 | | | | + * ,------|------|------| |------+--------+------. + * | | | | | | | | + * | ALT | SPC |------| |------| | | + * | | | SYMB | | | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[GAME_ARROW] = LAYOUT_ergodox_pretty( // layer 1 : code + // left hand + KC_ESC, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LSFT, KC_Z, 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_ENT, KC_TRNS, KC_TRNS, KC_LOCK, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_F5, KC_F6, LCTL(KC_C), LCTL(KC_V), + KC_TRNS, KC_UP, + KC_LALT, KC_SPC, OSM(SYMB), KC_DOWN, KC_TRNS, KC_TRNS + ) }; const uint16_t PROGMEM fn_actions[] = { @@ -260,16 +279,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { // MACRODOWN only works in this function switch(id) { - case VERSION: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case EEPROM: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; case DLEFT: if (record->event.pressed) { // Windows move desktop left return MACRO(D(LCTL), D(LGUI), T(LEFT), U(LGUI), U(LCTL), END); @@ -289,46 +298,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) if (record->event.pressed) { return MACRO(D(LSFT), T(TAB), U(LSFT), END); } - case REFACTOR: - if (record->event.pressed) { // VS Refactor CTRL+R, R - return MACRO(D(LCTL), T(R), U(LCTL), T(R), END); - } - break; - case TEST: - if (record->event.pressed) { // VS Run Tests CTRL+R, T - return MACRO(D(LCTL), T(R), U(LCTL), T(T), END); - } - break; - case DEBUG_TEST: - if (record->event.pressed) { // VS Debug Tests CTRL+R, CTRL+T - return MACRO(D(LCTL), T(R), T(T), U(LCTL), END); - } - break; - case FORMAT: - if (record->event.pressed) { // VS Format Document, CTRL+K, CTRL+D - return MACRO(D(LCTL), T(K), T(D), U(LCTL), END); - } - break; - case BUILD: - if (record->event.pressed) { // VS Build. Sends CTRL+SHFT+B - return MACRO(D(LCTL), D(LSFT), T(B), U(LSFT), U(LCTL), END); - } - break; - case GO_TO_IMPL: - if (record->event.pressed) { // VS Go To Implementation. Sends CTRL+F12 - return MACRO(D(LCTL), T(F12), U(LCTL), END); - } - break; - case FIND_ALL_REF: - if (record->event.pressed) { // VS Find All References. Sends CTRL+K, R - return MACRO(D(LCTL), T(K), U(LCTL), T(R), END); - } - break; - case REMOVE_SORT_USINGS: - if (record->event.pressed) { - return MACRO(D(LCTL), T(R), T(G), U(LCTL), END); - } - break; case KEEPASS_OPEN: if (record->event.pressed) { // Keepass open application return MACRO(D(LCTL), D(LALT), T(K), U(LALT), U(LCTL), END); @@ -339,27 +308,22 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO(D(LCTL), D(LALT), T(A), U(LALT), U(LCTL), END); } break; + case TERM_CP: + if (record->event.pressed) { // Terminal Copy + return MACRO(D(LCTL), T(INSERT), U(LCTL), END); + } + break; + case TERM_PT: + if (record->event.pressed) { // Terminal Paste + return MACRO(D(LSFT), T(INSERT), U(LSFT), END); + } + break; } return MACRO_NONE; }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { tap_dance_process_record(keycode); - switch (keycode) { - // dynamically generate these. - case EPRM: - if (record->event.pressed) { - eeconfig_init(); - } - return false; - break; - case VRSN: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - return false; - break; - } return true; } diff --git a/layouts/community/ergodox/333fred/visualizer.c b/layouts/community/ergodox/333fred/visualizer.c index 2a30562ae7..d13b3cd794 100644 --- a/layouts/community/ergodox/333fred/visualizer.c +++ b/layouts/community/ergodox/333fred/visualizer.c @@ -14,16 +14,22 @@ static void get_visualizer_layer_and_color(visualizer_state_t* state) { if (state->status.leds & (1u << USB_LED_CAPS_LOCK)) { saturation = 255; } - if (state->status.layer & 0x10) { + if (state->status.layer & 0x80) { + state->target_lcd_color = LCD_COLOR(0, 255, 60); + state->layer_text = "Game Arrow"; + } else if (state->status.layer & 0x40) { + state->target_lcd_color = LCD_COLOR(0, 255, 60); + state->layer_text = "Game"; + } else if (state->status.layer & 0x20) { state->target_lcd_color = LCD_COLOR(140, 100, 60); state->layer_text = "Movement"; - } else if (state->status.layer & 0x8) { + } else if (state->status.layer & 0x10) { state->target_lcd_color = LCD_COLOR(0, saturation, 0xFF); state->layer_text = "Media"; - } else if (state->status.layer & 0x4) { + } else if (state->status.layer & 0x8) { state->target_lcd_color = LCD_COLOR(168, saturation, 0xFF); state->layer_text = "Symbol"; - } else if (state->status.layer & 0x2) { + } else if (state->status.layer & 0x2 || state->status.layer & 0x4) { state->target_lcd_color = LCD_COLOR(216, 90, 0xFF); state->layer_text = "Code"; } else { diff --git a/users/333fred/333fred.h b/users/333fred/333fred.h index 3b6f21133b..443930a6b1 100644 --- a/users/333fred/333fred.h +++ b/users/333fred/333fred.h @@ -4,11 +4,12 @@ #define BASE 0 #define CODE 1 // code layer -#define SYMB 2 -#define MDIA 3 // media keys -#define VIM 4 -#define GAME 5 -#define GAME_ARROW 6 +#define CODEFLOW 2 +#define SYMB 3 +#define MDIA 4 // media keys +#define VIM 5 +#define GAME 6 +#define GAME_ARROW 7 // Tap dance config shared between my keyboards enum tap_dance_declarations { -- cgit v1.2.3 From c043edd13871b9ec96cf495b9423da8df7f36965 Mon Sep 17 00:00:00 2001 From: wanleg <32079073+wanleg@users.noreply.github.com> Date: Sun, 30 Dec 2018 07:53:02 -0800 Subject: Keymap: Wanleg 5x5 Keymap changes (#4738) * config fixes (including for issue #3678) * put back audio * jj40 backlighting setup * jj40 backlighting setup * rules.mk fix * jj40 backlighting settings * iris setup * iris setup * iris setup * iris setup * iris setup - onehand * remove commented-out section * edits due to #4403 * xd75 testing * fix 5x15 layout issues with 5x5 bluetooth & xd75 * commenting out unused placeholders * change iris to more wanleg-like 4x12 layout * formatting changes * onehand layout cleanup/fix * revert temp change * create centre numpad option * 1st working version * change keypad numbers to regular numbers - doesn't work otherwise * adding comparison files, no change to core * fixed 5x5 with cleave * fixed 5x5 with cleave * switch mouse scroll buttons * clean up left/right/centre pad placement in 5x15 layouts * minor comment change * Update layouts/community/ortho_5x15/wanleg/keymap.c Co-Authored-By: wanleg <32079073+wanleg@users.noreply.github.com> * Update layouts/community/ortho_5x15/wanleg/keymap.c Co-Authored-By: wanleg <32079073+wanleg@users.noreply.github.com> * Update layouts/community/ortho_5x15/wanleg/keymap.c Co-Authored-By: wanleg <32079073+wanleg@users.noreply.github.com> * revert to original --- layouts/community/ortho_5x15/wanleg/keymap.c | 137 +++++++++++++++++---------- users/wanleg/rules.mk | 9 ++ users/wanleg/tapdances.c | 4 +- users/wanleg/wanleg.c | 58 +----------- users/wanleg/wanleg.h | 69 ++------------ 5 files changed, 109 insertions(+), 168 deletions(-) (limited to 'layouts') diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c index 51b020fcde..a98f61988c 100644 --- a/layouts/community/ortho_5x15/wanleg/keymap.c +++ b/layouts/community/ortho_5x15/wanleg/keymap.c @@ -1,26 +1,71 @@ #include QMK_KEYBOARD_H #include "wanleg.h" -#define _________________BLANK_75__________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ #define _________________BLANK_50__________________ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -#define _________________Num_Row_75________________ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK + +#if defined(PADC) +#define LAYOUT_75_base( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \ + ) \ + LAYOUT_ortho_5x15_wrapper( \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, QWERTY, GHERKIN, FUNCTION, \ + K00, K01, K02, K03, K04, K05, K0c, K0d, K0e, K06, K07, K08, K09, K0a, K0b, \ + K10, K11, K12, K13, K14, K15, K1c, K1d, K1e, K16, K17, K18, K19, K1a, K1b, \ + K20, K21, K22, K23, K24, K25, K2c, K2d, K2e, K26, K27, K28, K29, K2a, K2b, \ + K30, K31, K32, K33, K34, K35, K3c, K3d, K3e, K36, K37, K38, K39, K3a, K3b \ + ) + +#elif defined(PADL) +#define LAYOUT_75_base( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \ + ) \ + LAYOUT_ortho_5x15_wrapper( \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, QWERTY, GHERKIN, FUNCTION, \ + K0c, K0d, K0e, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \ + K1c, K1d, K1e, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \ + K2c, K2d, K2e, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \ + K3c, K3d, K3e, K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b \ + ) + +#else +#define LAYOUT_75_base( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \ + ) \ + LAYOUT_ortho_5x15_wrapper( \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, QWERTY, GHERKIN, FUNCTION, \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, K0c, K0d, K0e, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, K1c, K1d, K1e, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \ + ) +#endif + +#define LAYOUT_75_base_wrapper(...) LAYOUT_75_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #if defined(KEYBOARD_40percentclub_5x5) -[GK75] = LAYOUT_ortho_5x15_wrapper( - _________________Num_Row_75________________, QWERTY75, XXXXXXX, FUNCTION75, - _______________GherkinLike_0_______________, KC_KP_7, KC_KP_8, KC_KP_9, - _______________GherkinLike_1_______________, KC_KP_4, KC_KP_5, KC_KP_6, - TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM75, KC_V), LT(ETC75, KC_B), KC_N, LT(DIR75, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_KP_1, KC_KP_2, KC_KP_3, - TD(RST_TAP_DANCE), GHERKIN50, KC_LALT, NUMPAD, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +[_GK] = LAYOUT_75_base_wrapper( + _______________GherkinLike_0_______________, KC_7, KC_8, KC_9, + _______________GherkinLike_1_______________, KC_4, KC_5, KC_6, + TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V), LT(ETC, KC_B), KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_1, KC_2, KC_3, + TD(RST_TAP_DANCE), GHERKIN50, KC_LALT, NUMPAD, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_0, KC_0, KC_DOT ), [GK50] = LAYOUT_ortho_5x10_wrapper( - KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSPC, + KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSPC, _______________Gherkin_Row_0_______________, _______________Gherkin_Row_1_______________, _______________Gherkin_Row_2_______________, - TD(RST_TAP_DANCE), GHERKIN75, NUMPAD, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, KC_RALT, KC_RGUI + TD(RST_TAP_DANCE), GHERKIN, NUMPAD, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, KC_RALT, KC_RGUI ), [gNUM] = LAYOUT_ortho_5x10_wrapper( @@ -65,9 +110,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), #endif #else - /* Gherkin 75 + /* Gherkin * .--------------------------------------------------------------------------------------------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | | FN | + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | gherkin| FN | * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| * | | 7 | 8 | 9 | * | |--------+--------+--------| @@ -78,17 +123,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | 0 | 0 | . | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[GK75] = LAYOUT_ortho_5x15_wrapper( - _________________Num_Row_75________________, QWERTY75, XXXXXXX, FUNCTION75, - _______________GherkinLike_0_______________, KC_KP_7, KC_KP_8, KC_KP_9, - _______________GherkinLike_1_______________, KC_KP_4, KC_KP_5, KC_KP_6, - TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM75, KC_V), LT(ETC75, KC_B), KC_N, LT(DIR75, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT), KC_KP_1, KC_KP_2, KC_KP_3, - KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER75, ETCETERA75, KC_SPC,DIRECTION75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +[_GK] = LAYOUT_75_base_wrapper( + _______________GherkinLike_0_______________, KC_7, KC_8, KC_9, + _______________GherkinLike_1_______________, KC_4, KC_5, KC_6, + _______________GherkinLike_2_______________, KC_1, KC_2, KC_3, + _______________GherkinLike_3_______________, KC_0, KC_0, KC_DOT ), #endif - /* QWERTY 75 +/* QWERTY * .--------------------------------------------------------------------------------------------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| gherkin| | FN | + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | gherkin| FN | * |-----------------------------------------------------------------------------------------------------------+--------+--------+--------| * | | 7 | 8 | 9 | * | |--------+--------+--------| @@ -99,17 +143,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | 0 | 0 | . | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[QW75] = LAYOUT_ortho_5x15_wrapper( - _________________Num_Row_75________________, GHERKIN75, XXXXXXX, FUNCTION75, - _______________Qwerty_Row__0_______________, KC_KP_7, KC_KP_8, KC_KP_9, - _______________Qwerty_Row__1_______________, KC_KP_4, KC_KP_5, KC_KP_6, - _______________Qwerty_Row__2_______________, KC_KP_1, KC_KP_2, KC_KP_3, - KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, SUBTER75, KC_LSFT, KC_SPC, SUPRA75, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL, KC_KP_0, KC_KP_0, KC_KP_DOT +[_QW] = LAYOUT_75_base_wrapper( + _______________Qwerty_Row__0_______________, KC_7, KC_8, KC_9, + _______________Qwerty_Row__1_______________, KC_4, KC_5, KC_6, + _______________Qwerty_Row__2_______________, KC_1, KC_2, KC_3, + _______________Qwerty_Row__3_______________, KC_0, KC_0, KC_DOT ), - /* SUBTER75 + /* SUBTER * .--------------------------------------------------------------------------------------------------------------------------------------. - * | SUBTER ROW 0 LAYOUT | | | | + * | | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------------------------+--------+-----------------| * | | / | * | - | * | |--------+--------+--------| @@ -120,15 +163,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[SUB75] = LAYOUT_ortho_5x15_wrapper( - _______________SUBTER_Row__0_______________, _______, _______, _______, +[SUB] = LAYOUT_75_base_wrapper( _______________SUBTER_Row__0_______________, KC_PSLS, KC_PAST, KC_PMNS, - _______________SUBTER_Row__1_______________, _______, _______, KC_PPLS, + _______________SUBTER_Row__1_______________, _______, _______, KC_PPLS, _______________SUBTER_Row__2_______________, _______, _______, KC_PENT, - _______, _______, GHERKIN75, _______, _______, _______, KC_ENT, KC_LSFT, _______, _______, _______, _______, _______, _______, _______ + _______________SUBTER_Row__3_______________, _______, _______, _______ ), -/* SUPRA75 +/* SUPRA * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| @@ -141,15 +183,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[SUP75] = LAYOUT_ortho_5x15_wrapper( - _________________BLANK_75__________________, +[SUP] = LAYOUT_75_base_wrapper( ________________SUPRA_Row_0________________, _______, _______, _______, ________________SUPRA_Row_1________________, _______, _______, _______, ________________SUPRA_Row_2________________, _______, _______, _______, - _________________BLANK_75__________________ + ________________SUPRA_Row_3________________, _______, _______, _______ ), -/* Gherkin 75 Numbers +/* Gherkin Numbers * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| @@ -162,15 +203,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[NUM75] = LAYOUT_ortho_5x15_wrapper( - _________________BLANK_75__________________, +[NUM] = LAYOUT_75_base_wrapper( _______________NUMBERS_Row_0_______________, KC_PSLS, KC_PAST, KC_PMNS, _______________NUMBERS_Row_1_______________, _______, _______, KC_PPLS, _______________NUMBERS_Row_2_______________, _______, _______, KC_PENT, _______________NUMBERS_Row_3_______________, _______, _______, _______ ), -/* Gherkin 75 Et Cetera +/* Gherkin Et Cetera * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| @@ -183,15 +223,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[ETC75] = LAYOUT_ortho_5x15_wrapper( - _________________BLANK_75__________________, +[ETC] = LAYOUT_75_base_wrapper( ______________ETCETERA_Row__0______________, _______, _______, _______, ______________ETCETERA_Row__1______________, _______, _______, _______, ______________ETCETERA_Row__2______________, _______, _______, _______, ______________ETCETERA_Row__3______________, _______, _______, _______ ), -/* Gherkin 75 Directional Keys +/* Gherkin Directional Keys * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------------------------|--------+-----------------| @@ -204,16 +243,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[DIR75] = LAYOUT_ortho_5x15_wrapper( - _________________BLANK_75__________________, +[DIR] = LAYOUT_75_base_wrapper( _____________DIRECTIONS_Row__0_____________, _______, _______, _______, _____________DIRECTIONS_Row__1_____________, _______, _______, _______, _____________DIRECTIONS_Row__2_____________, _______, _______, _______, - _______, _______, QWERTY75, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + _____________DIRECTIONS_Row__3_____________, _______, _______, _______ ), -/* FUNCTION 75 +/* FUNCTION * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| @@ -226,9 +264,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | MS BT1 | | | | | | MOUS L | MOUS D | MOUS R | * '--------------------------------------------------------------------------------------------------------------------------------------' */ -[FN75] = LAYOUT_ortho_5x15_wrapper( - _________________BLANK_75__________________, - _________________BLANK_75__________________, +[_FN] = LAYOUT_75_base_wrapper( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, KC_WH_U, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_INC, BL_DEC, _______, _______, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk index c6569594b3..b069cd8d38 100644 --- a/users/wanleg/rules.mk +++ b/users/wanleg/rules.mk @@ -27,4 +27,13 @@ ifeq ($(strip $(BT)), yes) CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = no # Commands for debug and configuration RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +endif + +#move numpad to Left/Centre/Right(default) on 5x15 boards +#example usage: make 4x4:wanleg padc=yes +ifeq ($(strip $(padc)), yes) + OPT_DEFS += -DPADC +endif +ifeq ($(strip $(padl)), yes) + OPT_DEFS += -DPADL endif \ No newline at end of file diff --git a/users/wanleg/tapdances.c b/users/wanleg/tapdances.c index e5051f9ee6..1be5636dc7 100644 --- a/users/wanleg/tapdances.c +++ b/users/wanleg/tapdances.c @@ -168,7 +168,7 @@ void LYR75_finished (qk_tap_dance_state_t *state, void *user_data) { LYR75tap_state.state = cur_dance(state); switch (LYR75tap_state.state) { case SINGLE_TAP: register_code(KC_PSLS); break; - case DOUBLE_TAP: set_single_persistent_default_layer(GK75); break; + case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; case DOUBLE_SINGLE_TAP: register_code(KC_PSLS); unregister_code(KC_PSLS); register_code(KC_PSLS); } } @@ -176,7 +176,7 @@ void LYR75_finished (qk_tap_dance_state_t *state, void *user_data) { void LYR75_reset (qk_tap_dance_state_t *state, void *user_data) { switch (LYR75tap_state.state) { case SINGLE_TAP: unregister_code(KC_PSLS); break; - case DOUBLE_TAP: set_single_persistent_default_layer(GK75); break; + case DOUBLE_TAP: set_single_persistent_default_layer(_GK); break; case DOUBLE_SINGLE_TAP: unregister_code(KC_PSLS); } LYR75tap_state.state = 0; diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c index 4e60c422fa..274c74f728 100644 --- a/users/wanleg/wanleg.c +++ b/users/wanleg/wanleg.c @@ -29,18 +29,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case QWERTY75: - if (record->event.pressed) { - set_single_persistent_default_layer(QW75); - } - return false; - break; - case GHERKIN75: - if (record->event.pressed) { - set_single_persistent_default_layer(GK75); - } - return false; - break; case NUMPAD: if (record->event.pressed) { set_single_persistent_default_layer(PAD); @@ -117,51 +105,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case SUBTER75: - if (record->event.pressed) { - layer_on(SUB75); - } else { - layer_off(SUB75); - } - return false; - break; - case SUPRA75: - if (record->event.pressed) { - layer_on(SUP75); - } else { - layer_off(SUP75); - } - return false; - break; - case NUMBER75: - if (record->event.pressed) { - layer_on(NUM75); - } else { - layer_off(NUM75); - } - return false; - break; - case DIRECTION75: - if (record->event.pressed) { - layer_on(DIR75); - } else { - layer_off(DIR75); - } - return false; - break; - case ETCETERA75: - if (record->event.pressed) { - layer_on(ETC75); - } else { - layer_off(ETC75); - } - return false; - break; - case FUNCTION75: + case FUNCTION: if (record->event.pressed) { - layer_on(FN75); + layer_on(_FN); } else { - layer_off(FN75); + layer_off(_FN); } return false; break; diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h index c2644cd6c4..9d07760a7b 100644 --- a/users/wanleg/wanleg.h +++ b/users/wanleg/wanleg.h @@ -11,72 +11,33 @@ enum userspace_layers { gETC, _GK, _QW, - QW75, - GK75, ONE, SUB, SUP, NUM, DIR, ETC, - SUB75, - SUP75, - NUM75, - DIR75, - ETC75, - FN75, + _FN, PAD, GK50, }; -#elif KEYBOARD_xd75 +#elif KEYBOARD_40percentclub_5x5 enum userspace_layers { - GK75 = 0, - QW75, - SUB75, - SUP75, - NUM75, - DIR75, - ETC75, - FN75, - gGK, + GK50 = 0, _GK, _QW, PAD, - ONE, - SUB, - SUP, - NUM, - DIR, - ETC, - gNUM, - gDIR, - gETC, - GK50, -}; -#elif KEYBOARD_40percentclub_5x5 -enum userspace_layers { - GK50 = 0, gNUM, gDIR, gETC, - GK75, - QW75, - SUB75, - SUP75, - NUM75, - DIR75, - ETC75, - FN75, - PAD, gGK, - _GK, - _QW, ONE, SUB, SUP, NUM, DIR, ETC, + _FN, }; #else enum userspace_layers { @@ -93,14 +54,7 @@ enum userspace_layers { gNUM, gDIR, gETC, - QW75, - GK75, - SUB75, - SUP75, - NUM75, - DIR75, - ETC75, - FN75, + _FN, GK50, }; #endif @@ -109,8 +63,6 @@ enum userspace_custom_keycodes { gGHERKIN = SAFE_RANGE, GHERKIN, QWERTY, - QWERTY75, - GHERKIN75, ONEHAND, SUBTER, SUPRA, @@ -120,12 +72,7 @@ enum userspace_custom_keycodes { gNUMBER, gDIRECTION, gETCETERA, - SUBTER75, - SUPRA75, - NUMBER75, - DIRECTION75, - ETCETERA75, - FUNCTION75, + FUNCTION, NUMPAD, GHERKIN50, @@ -215,14 +162,14 @@ enum { /* Et Cetera * .-----------------------------------------------------------------------------------------. - * | ` | mUP | | | RESET | SHIFT | mScrUp | mScrDn | | \ | + * | ` | mUP | | | RESET | SHIFT | mScrDn | mScrUp | | \ | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | Sft//Cp| CAPS | | | | C-A-D | mScrL | mScrR | ALT | DEL | * '-----------------------------------------------------------------------------------------' */ -#define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,_______, RESET, KC_RSFT, KC_WH_U, KC_WH_D, _______, KC_BSLS +#define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,_______, RESET, KC_RSFT, KC_WH_D, KC_WH_U, _______, KC_BSLS #define _______________Gherkin_ETC_1_______________ KC_MS_L, KC_MS_D, KC_MS_R,_______, KC_LSFT, KC_BTN3, KC_BTN1, KC_BTN2, KC_SCLN, KC_QUOT #define _______________Gherkin_ETC_2_______________ TD(TD_SFT_CAPS),KC_CAPS, _______,_______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL -- cgit v1.2.3 From 40383089d035f69101851831f756508271fff103 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 31 Dec 2018 14:29:56 -0800 Subject: Keymap: Update for Drashna code - Proton C Prep Edition (#4708) * Make CRKBD keylogger output actually show tap keys * check MT/LT for twinkling * Add ortho 5x12 support for fractal keyboard * Use newer interface for setting pins/ports * Remove custom unicode methods * Reomve unicode input info * Odd rules issue * Redefine REST note to be more pleasing * Properly disable PM LEDs with GPIO commands * Update gitlab CI yaml file * Remove extra mod tap check * Remove initial state on ergodox glow * Rev6 Cleanup * Fix KC_MAKE macro * Update GitLab CI yaml file * More GitLab CI changes * One final GitLab CI change * Remove unneeded unicode support * Optimize KC_MAKE --- keyboards/crkbd/keymaps/drashna/keymap.c | 24 ++-- keyboards/iris/keymaps/drashna/keymap.c | 10 +- keyboards/orthodox/keymaps/drashna/keymap.c | 10 +- keyboards/viterbi/keymaps/drashna/keymap.c | 11 +- layouts/community/ergodox/drashna/keymap.c | 10 +- layouts/community/ergodox/drashna/rules.mk | 2 +- layouts/community/ergodox/drashna_glow/rules.mk | 2 + layouts/community/ortho_4x12/drashna/config.h | 5 +- layouts/community/ortho_4x12/drashna/keymap.c | 13 +- layouts/community/ortho_5x12/drashna/config.h | 16 +++ layouts/community/ortho_5x12/drashna/keymap.c | 156 ++++++++++++++++++++++++ layouts/community/ortho_5x12/drashna/rules.mk | 23 ++++ users/drashna/.gitlab-ci.yml | 70 +++++++++-- users/drashna/config.h | 8 +- users/drashna/process_records.c | 41 ++++--- users/drashna/rgb_stuff.c | 5 +- users/drashna/rules.mk | 13 -- users/drashna/send_unicode.c | 112 ----------------- users/drashna/wrappers.h | 1 + 19 files changed, 339 insertions(+), 193 deletions(-) create mode 100644 layouts/community/ortho_5x12/drashna/config.h create mode 100644 layouts/community/ortho_5x12/drashna/keymap.c create mode 100644 layouts/community/ortho_5x12/drashna/rules.mk delete mode 100644 users/drashna/send_unicode.c (limited to 'layouts') diff --git a/keyboards/crkbd/keymaps/drashna/keymap.c b/keyboards/crkbd/keymaps/drashna/keymap.c index 282ee25725..678fd33b57 100644 --- a/keyboards/crkbd/keymaps/drashna/keymap.c +++ b/keyboards/crkbd/keymaps/drashna/keymap.c @@ -88,16 +88,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; void matrix_init_keymap(void) { - //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h - #ifdef SSD1306OLED - iota_gfx_init(!has_usb()); // turns on the display - #endif - - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); - - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h + #ifdef SSD1306OLED + iota_gfx_init(!has_usb()); // turns on the display + #endif + + #ifndef CONVERT_TO_PROTON_C + setPinOutput(D5); + writePinHigh(D5); + + setPinOutput(B0); + writePinHigh(B0); + #endif } //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h @@ -126,10 +128,10 @@ const char code_to_name[60] = { void set_keylog(uint16_t keycode, keyrecord_t *record) { char name = ' '; + if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { keycode = keycode & 0xFF; } if (keycode < 60) { name = code_to_name[keycode]; } - // update keylog snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c", record->event.key.row, record->event.key.col, diff --git a/keyboards/iris/keymaps/drashna/keymap.c b/keyboards/iris/keymaps/drashna/keymap.c index ba6f18edde..d89656b7ea 100644 --- a/keyboards/iris/keymaps/drashna/keymap.c +++ b/keyboards/iris/keymaps/drashna/keymap.c @@ -89,9 +89,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_keymap(void) { - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); + #ifndef CONVERT_TO_PROTON_C + setPinOutput(D5); + writePinHigh(D5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + setPinOutput(B0); + writePinHigh(B0); + #endif } diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c index 346ca4f123..9373d851dc 100644 --- a/keyboards/orthodox/keymaps/drashna/keymap.c +++ b/keyboards/orthodox/keymaps/drashna/keymap.c @@ -97,9 +97,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; void matrix_init_keymap(void) { - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); + #ifndef CONVERT_TO_PROTON_C + setPinOutput(D5); + writePinHigh(D5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + setPinOutput(B0); + writePinHigh(B0); + #endif } diff --git a/keyboards/viterbi/keymaps/drashna/keymap.c b/keyboards/viterbi/keymaps/drashna/keymap.c index a343205197..9ca14961be 100644 --- a/keyboards/viterbi/keymaps/drashna/keymap.c +++ b/keyboards/viterbi/keymaps/drashna/keymap.c @@ -87,10 +87,13 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + void matrix_init_keymap(void) { - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); + #ifndef CONVERT_TO_PROTON_C + setPinOutput(D5); + writePinHigh(D5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + setPinOutput(B0); + writePinHigh(B0); + #endif } diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index df9be62b77..45860b8740 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -20,7 +20,6 @@ along with this program. If not, see . #ifdef UNICODEMAP_ENABLE #include "drashna_unicode.h" #endif // UNICODEMAP_ENABLE -extern uint8_t input_mode; #ifdef RGB_MATRIX_ENABLE extern bool g_suspend_state; @@ -425,17 +424,12 @@ void rgb_matrix_indicators_user(void) { } void matrix_init_keymap(void) { +#if 0 #ifdef RGB_MATRIX_KEYPRESSES rgblight_mode(RGB_MATRIX_MULTISPLASH); #else rgblight_mode(RGB_MATRIX_RAINBOW_MOVING_CHEVRON); #endif - - input_mode = 2; -} - -#else -void matrix_init_keymap(void) { - input_mode = 2; +#endif } #endif //RGB_MATRIX_INIT diff --git a/layouts/community/ergodox/drashna/rules.mk b/layouts/community/ergodox/drashna/rules.mk index 8bf53950e4..31488108b9 100644 --- a/layouts/community/ergodox/drashna/rules.mk +++ b/layouts/community/ergodox/drashna/rules.mk @@ -1,6 +1,6 @@ TAP_DANCE_ENABLE = yes SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -COMMAND_ENABLE = yes # Commands for debug and configuration +COMMAND_ENABLE = no # Commands for debug and configuration ifneq (,$(findstring ergodox_ez,$(KEYBOARD))) RGBLIGHT_ENABLE = yes RGB_MATRIX_ENABLE = no diff --git a/layouts/community/ergodox/drashna_glow/rules.mk b/layouts/community/ergodox/drashna_glow/rules.mk index 3b317224a6..c8941391ea 100644 --- a/layouts/community/ergodox/drashna_glow/rules.mk +++ b/layouts/community/ergodox/drashna_glow/rules.mk @@ -7,3 +7,5 @@ ifneq (,$(findstring ergodox_ez,$(KEYBOARD))) RGBLIGHT_ENABLE = no RGB_MATRIX_ENABLE = yes endif + +COMMAND_ENABLE = no diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h index 8658802d83..0b0110dfa9 100644 --- a/layouts/community/ortho_4x12/drashna/config.h +++ b/layouts/community/ortho_4x12/drashna/config.h @@ -1,5 +1,4 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#pragma once #if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM) @@ -61,5 +60,3 @@ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ //#define MIDI_TONE_KEYCODE_OCTAVES 2 - -#endif diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c index 205d12d8c3..5d32189342 100644 --- a/layouts/community/ortho_4x12/drashna/keymap.c +++ b/layouts/community/ortho_4x12/drashna/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RST, VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EEP_RST, _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUKE ) @@ -219,4 +219,15 @@ void rgb_matrix_indicators_user(void) { void matrix_init_keymap(void) { rgblight_mode(RGB_MATRIX_MULTISPLASH); } +#else //RGB_MATRIX_INIT + +void matrix_init_keymap(void) { + #ifndef CONVERT_TO_PROTON_C + setPinOutput(D5); + writePinHigh(D5); + + setPinOutput(B0); + writePinHigh(B0); + #endif +} #endif //RGB_MATRIX_INIT diff --git a/layouts/community/ortho_5x12/drashna/config.h b/layouts/community/ortho_5x12/drashna/config.h new file mode 100644 index 0000000000..e41dadc601 --- /dev/null +++ b/layouts/community/ortho_5x12/drashna/config.h @@ -0,0 +1,16 @@ +#pragma once + + +/* ws2812 RGB LED */ +#if defined(KEYBOARD_fractal) + #define RGB_DI_PIN D2 + #undef RGBLED_NUM + #define RGBLIGHT_ANIMATIONS + #define RGBLED_NUM 29 // Number of LEDs + #undef RGBLIGHT_HUE_STEP + #define RGBLIGHT_HUE_STEP 8 + #undef RGBLIGHT_SAT_STEP + #define RGBLIGHT_SAT_STEP 8 + #undef RGBLIGHT_VAL_STEP + #define RGBLIGHT_VAL_STEP 8 +#endif diff --git a/layouts/community/ortho_5x12/drashna/keymap.c b/layouts/community/ortho_5x12/drashna/keymap.c new file mode 100644 index 0000000000..bf0907a513 --- /dev/null +++ b/layouts/community/ortho_5x12/drashna/keymap.c @@ -0,0 +1,156 @@ +/* Copyright 2015-2017 Jack Humbert + * Modified by KeyPCB for the Fractal keyboard + * Backlight isn't on the Fractal, so I've removed the keycode from the keymaps + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H +#include "drashna.h" + +#define LAYOUT_ortho_5x12_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A \ + ) \ + LAYOUT_ortho_5x12_wrapper( \ + KC_GRV, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ + KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_BSPC, \ + KC_ESC, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_QUOT, \ + KC_MLSF, CTL_T(K31), K32, K33, K34, K35, K36, K37, K38, K39, CTL_T(K3A), KC_ENT, \ + KC_NO, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + ) +#define LAYOUT_ortho_5x12_base_wrapper(...) LAYOUT_ortho_5x12_base(__VA_ARGS__) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_ortho_5x12_base_wrapper( + ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ +), + +[_COLEMAK] = LAYOUT_ortho_5x12_base_wrapper( + ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ +), + +[_DVORAK] = LAYOUT_ortho_5x12_base_wrapper( + ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ +), + +[_WORKMAN] = LAYOUT_ortho_5x12_base_wrapper( + ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, + _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, + _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, + _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ +), + +[_MODS] = LAYOUT_ortho_5x12_wrapper( + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + KC_LSFT, ___________________BLANK___________________, ___________________BLANK___________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_5x12_wrapper( \ + _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, + KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_PIPE, + KC_DEL, _________________LOWER_L2__________________, _________________LOWER_R2__________________, _______, + _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_5x12_wrapper( \ + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ + KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, + KC_DEL, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, + _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _________________RAISE_R3__________________ +), + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_ortho_5x12_wrapper( \ + KC_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RST, + VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EEP_RST, + _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, _______, + _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + + +}; + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + } + return true; +}; + +void matrix_init_keymap(void) { +#ifdef KEYBOARD_fractal + setPinOutput(D5); + writePinHigh(D5); + + setPinOutput(B0); + writePinHigh(B0); +#endif +} diff --git a/layouts/community/ortho_5x12/drashna/rules.mk b/layouts/community/ortho_5x12/drashna/rules.mk new file mode 100644 index 0000000000..160419fcce --- /dev/null +++ b/layouts/community/ortho_5x12/drashna/rules.mk @@ -0,0 +1,23 @@ +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +TAP_DANCE_ENABLE = no +AUDIO_ENABLE = yes +ifneq (,$(findstring fractal,$(KEYBOARD))) # Make sure it IS the Planck Light + RGB_MATRIX_ENABLE = no + AUDIO_ENABLE = no + RGBLIGHT_ENABLE = yes + RGBLIGHT_TWINKLE = yes + BOOTLOADER = qmk-dfu +endif + +ifeq ($(strip $(PROTOCOL)), VUSB) +NKRO_ENABLE = no +else +NKRO_ENABLE = yes +endif + + +MACROS_ENABLED = no diff --git a/users/drashna/.gitlab-ci.yml b/users/drashna/.gitlab-ci.yml index bd693babc3..9b18d44fb3 100644 --- a/users/drashna/.gitlab-ci.yml +++ b/users/drashna/.gitlab-ci.yml @@ -1,26 +1,78 @@ stages: + - test - build + - deploy -qmk_firmware: +Tests: + stage: test + variables: + GIT_SUBMODULE_STRATEGY: recursive + tags: + - linux + image: ubuntu:18.10 + before_script: + - apt-get update -qy + - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip + - avr-gcc --version + - uname -a + script: + - make test:all + - make planck/rev6:default + +QMK Firmware Defaults: + stage: deploy + variables: + GIT_SUBMODULE_STRATEGY: recursive + tags: + - linux + image: ubuntu:18.10 + before_script: + - apt-get update -qy + - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip + - avr-gcc --version + - uname -a + script: + - make test:all + - make all:default -j16 + +Drashna Firmware: stage: build variables: GIT_SUBMODULE_STRATEGY: recursive tags: - linux - image: ubuntu + image: ubuntu:18.10 + before_script: + - apt-get update -qy + - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip + - avr-gcc --version + script: + - make iris/rev2:drashna iris/rev2:drashna_old ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna orthodox/rev1:drashna orthodox/rev3:drashna crkbd:drashna planck/light:drashna planck/rev6:drashna fractal:drashna + artifacts: + name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" + paths: + - ./*.hex + - ./*.bin + expire_in: 1 month + +Firmware Deploy: + stage: deploy + dependencies: + - Drashna Firmware + variables: + GIT_SUBMODULE_STRATEGY: recursive + tags: + - linux + image: ubuntu:18.10 before_script: - apt-get update -qy - - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util diffutils gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip + - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip - avr-gcc --version script: - - make iris/rev2:drashna:production iris/rev2:drashna_old:production ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna:production orthodox/rev1:drashna:production orthodox/rev3:drashna:production crkbd:drashna:production planck/light:drashna:production + - make iris/rev2:drashna:production iris/rev2:drashna_old:production ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna:production orthodox/rev1:drashna:production orthodox/rev3:drashna:production crkbd:drashna:production planck/light:drashna planck/rev6:drashna fractal:drashna:production artifacts: name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: - ./*.hex - ./*.bin - only: - - master - - drashna_keymaps - - merge-requests - - branches + expire_in: 1 month diff --git a/users/drashna/config.h b/users/drashna/config.h index a338512300..827b1b8ace 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -14,8 +14,12 @@ #define AUDIO_CLICKY_FREQ_RANDOMNESS 1.5f // #ifdef RGBLIGHT_ENABLE // #define NO_MUSIC_MODE -// #endif //RGBLIGHT_ENABLE -#endif +// #endif //RGBLIGHT_ENABLE/ +#ifndef __arm__ +#undef NOTE_REST +#define NOTE_REST 1.00f +#endif // !__arm__ +#endif // !AUDIO_ENABLE #ifdef RGBLIGHT_ENABLE #define RGBLIGHT_SLEEP diff --git a/users/drashna/process_records.c b/users/drashna/process_records.c index 5e311e60e8..17d7dc01c5 100644 --- a/users/drashna/process_records.c +++ b/users/drashna/process_records.c @@ -51,27 +51,30 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader if (!record->event.pressed) { - uint8_t temp_mod = get_mods(); - uint8_t temp_osm = get_oneshot_mods(); - clear_mods(); clear_oneshot_mods(); - send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); - if (temp_mod & MODS_SHIFT_MASK || temp_osm & MODS_SHIFT_MASK) { - #if defined(__ARM__) - send_string_with_delay_P(PSTR(":dfu-util"), 10); - #elif defined(BOOTLOADER_DFU) - send_string_with_delay_P(PSTR(":dfu"), 10); - #elif defined(BOOTLOADER_HALFKAY) - send_string_with_delay_P(PSTR(":teensy"), 10); - #elif defined(BOOTLOADER_CATERINA) - send_string_with_delay_P(PSTR(":avrdude"), 10); - #endif // bootloader options - } + #if !defined(KEYBOARD_viterbi) + uint8_t temp_mod = get_mods(); + uint8_t temp_osm = get_oneshot_mods(); + clear_mods(); clear_oneshot_mods(); + #endif + send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), MACRO_TIMER); #if defined(KEYBOARD_viterbi) - send_string_with_delay_P(PSTR(":dfu"), 10); + send_string_with_delay_P(PSTR(":dfu" SS_TAP(X_ENTER)), MACRO_TIMER); + #else + if (temp_mod & MODS_SHIFT_MASK || temp_osm & MODS_SHIFT_MASK) { + #if defined(__arm__) + send_string_with_delay_P(PSTR(":dfu-util"), MACRO_TIMER); + #elif defined(BOOTLOADER_DFU) + send_string_with_delay_P(PSTR(":dfu"), MACRO_TIMER); + #elif defined(BOOTLOADER_HALFKAY) + send_string_with_delay_P(PSTR(":teensy"), MACRO_TIMER); + #elif defined(BOOTLOADER_CATERINA) + send_string_with_delay_P(PSTR(":avrdude"), MACRO_TIMER); + #endif // bootloader options + } + if (temp_mod & MODS_CTRL_MASK || temp_osm & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), MACRO_TIMER); } + send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), MACRO_TIMER); + set_mods(temp_mod); #endif - if (temp_mod & MODS_CTRL_MASK || temp_osm & MODS_CTRL_MASK) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); } - send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); - set_mods(temp_mod); } break; diff --git a/users/drashna/rgb_stuff.c b/users/drashna/rgb_stuff.c index d238c20651..7d00604b4e 100644 --- a/users/drashna/rgb_stuff.c +++ b/users/drashna/rgb_stuff.c @@ -200,7 +200,10 @@ void start_rgb_light(void) { bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { + if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { + keycode = keycode & 0xFF; + } + switch (keycode) { #ifdef RGBLIGHT_TWINKLE case KC_A ... KC_SLASH: case KC_F1 ... KC_F12: diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 5f243b0076..6d8612e71a 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -42,16 +42,3 @@ ifdef CONSOLE_ENABLE OPT_DEFS += -DKEYLOGGER_ENABLE endif endif - - -ifeq ($(strip $(UCIS_ENABLE)), yes) - SRC += send_unicode.c -endif - -ifeq ($(strip $(UNICODEMAP_ENABLE)), yes) - SRC += send_unicode.c -endif - -ifeq ($(strip $(UNICODE_ENABLE)), yes) - SRC += send_unicode.c -endif diff --git a/users/drashna/send_unicode.c b/users/drashna/send_unicode.c deleted file mode 100644 index ff35368da7..0000000000 --- a/users/drashna/send_unicode.c +++ /dev/null @@ -1,112 +0,0 @@ -// Written by konstantin: vomindoraan -#include "send_unicode.h" -#include -#include - -__attribute__((weak)) -void send_unicode_hex_string(const char* str) { - if (!str) { return; } // Safety net - - while (*str) { - // Find the next code point (token) in the string - for (; *str == ' '; str++); - size_t n = strcspn(str, " "); // Length of the current token - char code_point[n+1]; - strncpy(code_point, str, n); - code_point[n] = '\0'; // Make sure it's null-terminated - - // Normalize the code point: make all hex digits lowercase - for (char *p = code_point; *p; p++) { - *p = tolower((unsigned char)*p); - } - - // Send the code point as a Unicode input string - unicode_input_start(); - send_string(code_point); - unicode_input_finish(); - - str += n; // Move to the first ' ' (or '\0') after the current token - } -} - -// (ノಠ痊ಠ)ノ彡┻━┻ -// send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); - -//Old code -// (╯°□°)╯ ︵ ┻━┻ - #if 0 - register_code(KC_RSFT); - tap(KC_9); - unregister_code(KC_RSFT); - process_unicode((0x256F | QK_UNICODE), record); // Arm - process_unicode((0x00B0 | QK_UNICODE), record); // Eye - process_unicode((0x25A1 | QK_UNICODE), record); // Mouth - process_unicode((0x00B0 | QK_UNICODE), record); // Eye - register_code(KC_RSFT); - tap(KC_0); - unregister_code(KC_RSFT); - process_unicode((0x256F | QK_UNICODE), record); // Arm - tap(KC_SPC); - process_unicode((0x0361 | QK_UNICODE), record); // Flippy - tap(KC_SPC); - process_unicode((0x253B | QK_UNICODE), record); // Table - process_unicode((0x2501 | QK_UNICODE), record); // Table - process_unicode((0x253B | QK_UNICODE), record); // Table - #endif - - -// If you need a good converter: https://r12a.github.io/app-conversion/ -uint8_t saved_mods; - -void unicode_input_start (void) { - // save current mods - saved_mods = get_mods(); // Save current mods - clear_mods(); // Unregister mods to start from a clean state - - switch(get_unicode_input_mode()) { - case UC_OSX: - register_code(KC_LALT); - break; - case UC_OSX_RALT: - register_code(KC_RALT); - break; - case UC_LNX: - register_code(KC_LCTL); - register_code(KC_LSFT); - register_code(KC_U); - unregister_code(KC_U); - unregister_code(KC_LSFT); - unregister_code(KC_LCTL); - break; - case UC_WIN: - register_code(KC_LALT); - register_code(KC_PPLS); - unregister_code(KC_PPLS); - break; - case UC_WINC: - register_code(KC_RALT); - unregister_code(KC_RALT); - register_code(KC_U); - unregister_code(KC_U); - break; - } - wait_ms(UNICODE_TYPE_DELAY); -} - -void unicode_input_finish (void) { - switch(get_unicode_input_mode()) { - case UC_OSX: - case UC_WIN: - unregister_code(KC_LALT); - break; - case UC_OSX_RALT: - unregister_code(KC_RALT); - break; - case UC_LNX: - register_code(KC_SPC); - unregister_code(KC_SPC); - break; - } - - set_mods(saved_mods); // Reregister previously set mods -} diff --git a/users/drashna/wrappers.h b/users/drashna/wrappers.h index b45359f676..070a5a0a4a 100644 --- a/users/drashna/wrappers.h +++ b/users/drashna/wrappers.h @@ -14,6 +14,7 @@ expanded before being used as arguments to the LAYOUT_xxx macro. #define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) #define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__) +#define LAYOUT_ortho_5x12_wrapper(...) LAYOUT_ortho_5x12(__VA_ARGS__) /* Blocks for each of the four major keyboard layouts -- cgit v1.2.3 From a7b1b146d12cce1858db59c1d99ce84fb37fc59e Mon Sep 17 00:00:00 2001 From: Jacob Jerrell Date: Wed, 2 Jan 2019 11:23:42 -0600 Subject: Keymap: Bocaj Layout and Userspace Refactor (#4753) * Bocaj Layout Revamp * Pull in Upstream (#1) * Various tweaks for some Input:Club build processes * change KEYMAP to LAYOUT for all new keyboards made using this script * Add support for rev3 of the Atom47 (#2672) * Added support for rev3 of the Atom47 * Updated Atom47 readme's * Fix redefine error on rev2 and add maartenwut's keymap * Fix redefine error on LEdiodes keymap * Add Nyquist keymap (#2692) * nyquist * danielhklein nyquist setup * shift left controls * remove readme * cleanup before pr * ready for pr * Adds Phantom TKL support (#2696) * Add an info.json to phantom keyboard * Add layouts - KEYMAP_WINKEYLESS - KEYMAP_7BIT - KEYMAP_ISO - KEYMAP_ISO_WINKEYLESS * Add key_counts * Add 2 missing F-Row keys * Add TKC1800 info.json Created an info.json for the tkc1800. * Clueboard 60 info.json - adds - LAYOUT_60_ansi - LAYOUT_60_iso - KEYMAP_AEK - KEYMAP - LAYOUT_60_ansi_split_bs_rshift * Add the Speedo keyboard * Fix KC60 info.json file (#2707) * change KEYMAP to LAYOUT in all the KC60 files * Redo the info.json file * Small fixes to TKC1800 - adjust F-row to use 0.25 spacing - split left shift - add key_count * Fix some Configurator Warnings regarding LAYOUT vs KEYMAP (#2708) * change diverge 3 KC_KEYMAP to LAYOUT * Change KEYMAP to LAYOUT for handwired arrow pad * change M10A to LAYOUT for m10-a * Change KC_KEYMAP to LAYOUT_kc and KEYMAP to LAYOUT for mf68 * change KC_KEYMAP to LAYOUT for nano * Refactor to LAYOUT * refactor to LAYOUT-ansi and LAYOUT_iso for s65 * LAYOUT conversions for lfkkeyboards * missed a few renames * mini1800 for lfkeyobards support of LAYOUT * Improve state/chord handling and clean up namespace Some values that can never, ever, change were held in local variables, rather than in PROGMEM. Fixed. Change "pressed" to a signed int so the test for < 0 makes sense, and to avoid possible weird failure modes in the case where a key release comes in when pressed is already zero. (Shouldn't happen, sure, but computers are weird.) A lot of things in process_steno had external linkage for no particular reason. They've been marked static. Stuff still builds. Distinguish between currently-held keys and keys that have been held, and expose these values through a nicely-named API so other code could, say, check on the current set of steno chording in order to make displays. Also in passing fix up the "state" value having external linkage so it could clash with other people's variable declarations. The API also provides hooks for key processing and steno chord events, so you can monitor those events without having to run in matrix_scan_user and recheck the values directly. Also document these. There is no path through processing a key that doesn't end with a return false, so the nested return foo() are gone and we just return false. * Pull information from config.h and rules.mk (#2711) * Pull information from config.h and rules.mk * Readd the kbd75 maintainer * Remove obsolete info.json entries (#2712) * Clean up some long-standing errors when populating the API (#2715) * More Configurator Warning Fixes (#2716) * mf68_ble did not have the correct .c and .h files * Fix JC65 KEYMAP to LAYOUT * Change KEYMAP to LAYOUT for s60_x * Convert KEYMAP to LAYOUT for lets_split boards * Convert KEYMAP to LAYOUT * more fixes to keymap for iris * convert KEYMAP to LAYOUT for levinson keyboard * change losinggeneration's KEYMAP to LAYOUT * convert KEYMAP to LAYOUT * convert KEYMAP to LAYOUT for nyquist * convert KEYMAP to LAYOUT * convert KEYMAP to LAYOUT for viterbi * convert KEYMAP to LAYOUT * convert KEYMAP and its subsidiries to the LAYOUT standard * convert KEYMAP and its subsidiries to the new LAYOUT standard * Normacos keymap for let's split keyboard (#2691) * Cheers let's split keymap * fixed typo on norman layer of cheers keymap for let's split * fixed right handed mappings for home row * cheers keymap for let's split redefinition * updated Cheers keymap for let's split * cheers keymap for let's split updated with some terminal macros * renamed cheers let's split keymap to a more appropriate normacos * updated normacos keymap doc / removed non functional keys * reset let's split rules to default values * added more spotlight search macros * normalized keymap comments * Moved numpad on lower layer * hhkb jp personal keymap (#2698) * Add JJ40 Cockpit personal keymap (#2713) * Add JJ40 Cockpit keymap * Fix lower layer symbols * Add readme for "major" keyboards to eliminate more QMK Configurator errors (#2718) * add readme to ktype keyboard * add readme to m10a * add readme to mini1800 * add readme to parent directory * Revert "Pull in Upstream (#1)" This reverts commit eeba0cec17ccb636e4225eed88aeae72b99f5e45. * Updates to Bocaj Files - Gave up on Tap Dance for ' -> ' + Added another 'Secret' + Add ' -> ' to the Swap Hands key + Add Swap Hands to the ' -> ' key + Made Hand Swapping a momentary toggle - Removed Auto Shift + Added Layer Toggle to KC_QUOTE for the _TOOLS layer - Disabled Tap Dance * Merge remote-tracking branch 'upstream/master' * Updates to Bocaj Added Game Layers, Removed Unused Macros * Removed 'secrets.h' * Updates to Bocaj Remove 'secrets'. Remove 'sendstring_workman.h' and set related layer back to qwerty due to macro compatibility issues * Total revisioning of keymap and layout structure * Missed readme.md file * Bocaj - Permissive Hold setting enabled * Switching from ErgoDox EZ centric configuration to the layout/user approach * Bocaj - Create Userspace and Ergodox layout * Update settings.json * Pushing local updates * Reverting .vscode/settings.json * Adds pretty_osx and _win wrappers * Utilize Windows and Mac Wrappers * Update layouts/community/ergodox/bocaj/keymap.c * Updates to Bocaj keymap.c - Extended pretty_osx and pretty_win wrappers to allow modification of the bottom rows and thumb clusters. - Fixed already wrapped layouts to align with the change - Wrapped _NUMS and _CLICKY layers with the _osx wrapper because I main with a Mac * Updates to Bocaj Small documentation updates, added KC_MAKE from Drashna's layout, added KC_LOCK back to the diablo layer. * Add LShift to _Adjust layer * Minor changes to bocaj Put wrappers in userspace and added RESET keycode to the Adjust layer * Updates to Bocaj config & keymap; Fixed problem with process_leader.c - Made lots of changes to the bocaj layout and userspace - Pulled in latest upstream/master - Attempted to compile with latest and found an unneccessary `break` in process_leader.c * Bocaj - Updates to Layout and Userspace * Adjust LEADER_TIMEOUT to 350 * Put KC_GRAVE on _ADJUST layer * Eliminate _LOWER layer and associated definitions * Adjusted layer indicating LEDs to match changes * Fixed Diablo leader sequence * Added build info leader sequence * Got rid of obsoleted IGNORE_MOD_TAP_INTERRUPT/PERMISSIVE_HOLD/PREVENT_STUCK_MODIFIERS (may add STRICT_LAYER_RELEASE in the future) * Remove type_traits Not sure what in my VSCode config always brings this one in * refactor stage 1 * Bocaj Refactor Phase II * Made LED_2 brighter if both CTRL & GUI are being held * Enabled unicode because I got it to work in Mac OS * Finalized Build Info leader combination after testing in Mac OS * Not sure why KC_D3_1 was set to ASDF if !TAP_DANCE_ENABLE. So I changed that back * Experienced issues with `EXTRAFLAGS += -flto` using Docker in MacOS. Not sure what it does, but I don't seem to be missing anything * Wrote obligatory readme.md files and mentioned Drashna too many times... I don't think I can actually take credit for much of anything here. * Updates to Bocaj Made LED changes, added LM_DFLT which is similar to the grave macro, enabled retro tapping, working on a unicode idea -- currently fails to build. * Bocaj Refactor Phase 3 Part 2 - Continuation of implementing unicode switching based on default layer - Slight adjustments to _DIABLO and base wrapper because LM_DFLT macro didn't function as I'd hoped * Slight adjustment to KC_MAKE --- layouts/community/ergodox/bocaj/config.h | 4 +- layouts/community/ergodox/bocaj/keymap.c | 292 +++++++++++++----------------- layouts/community/ergodox/bocaj/readme.md | 37 ++++ layouts/community/ergodox/bocaj/rules.mk | 5 + users/bocaj/bocaj.c | 200 ++++++++++---------- users/bocaj/bocaj.h | 190 +++++++------------ users/bocaj/config.h | 5 +- users/bocaj/process_records.c | 149 +++++++++++++++ users/bocaj/process_records.h | 52 ++++++ users/bocaj/readme.md | 110 +++++++++-- users/bocaj/rules.mk | 30 ++- users/bocaj/send_unicode.c | 106 +++++++++++ users/bocaj/send_unicode.h | 71 ++++++++ users/bocaj/tap_dances.c | 1 - users/bocaj/tap_dances.h | 12 ++ users/bocaj/wrappers.h | 37 ++++ 16 files changed, 896 insertions(+), 405 deletions(-) create mode 100644 layouts/community/ergodox/bocaj/readme.md create mode 100644 users/bocaj/process_records.c create mode 100644 users/bocaj/process_records.h create mode 100644 users/bocaj/send_unicode.c create mode 100644 users/bocaj/send_unicode.h create mode 100644 users/bocaj/wrappers.h (limited to 'layouts') diff --git a/layouts/community/ergodox/bocaj/config.h b/layouts/community/ergodox/bocaj/config.h index 78350f6033..bc1d20a626 100644 --- a/layouts/community/ergodox/bocaj/config.h +++ b/layouts/community/ergodox/bocaj/config.h @@ -2,5 +2,5 @@ #include QMK_KEYBOARD_CONFIG_H -#undef PRODUCT -#define PRODUCT BocajEZ - Frankensteined ErgoDox EZ +#define LEADER_TIMEOUT 250 +#define LEADER_PER_KEY_TIMING diff --git a/layouts/community/ergodox/bocaj/keymap.c b/layouts/community/ergodox/bocaj/keymap.c index fbe0fca653..cb78e7aae7 100644 --- a/layouts/community/ergodox/bocaj/keymap.c +++ b/layouts/community/ergodox/bocaj/keymap.c @@ -1,5 +1,5 @@ /* -Copyright 2018 Jacob Jerrell jacob.jerrell@gmail.com @JacobJerrell +Copyright 2018 Jacob Jerrell @JacobJerrell This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,97 +14,99 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ + #include QMK_KEYBOARD_H #include "bocaj.h" +#define LAYOUT_ergodox_pretty_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_ergodox_pretty_wrapper( \ + KC_ESC, __________________NUMBER_LEFT_______________, JJ_ARRW, KC_MINS, __________________NUMBER_RIGHT______________, KC_EQUAL, \ + KC_DEL, K01, K02, K03, K04, K05, KC_LPRN, KC_RPRN, K06, K07, K08, K09, K0A, KC_BSLASH, \ + KC_NUMS, K11, SFT_T(K12), K13, ALT_T(K14), K15, K16, ALT_T(K17), K18, SFT_T(K19), K1A, KC_QUOT, \ + OS_LSFT, CTL_T(K21), K22, K23, K24, K25, HYP_LBK, MEH_RBK, K26, K27, K28, K29, CTL_T(K2A), KC_RSFT, \ + KC_GAME,KC_NUMS, TT(_LOWER), KC_UP, KC_LEFT, KC_RIGHT, KC_DOWN, UC_DISA,KC_GAME, KC_ADJS, \ + KC_APP,KC_HOME, KC_END,KC_ESC, \ + UC_FLIP, UC_TABL, \ + KC_SPACE,KC_BSPACE,KC_LEAD, UC_SHRG,KC_TAB,KC_LWEN \ +) + +#define LAYOUT_ergodox_pretty_base_wrapper(...) LAYOUT_ergodox_pretty_base(__VA_ARGS__) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Hardware Workman - http://www.keyboard-layout-editor.com/#/gists/7a07cb982ec3597ba3e3d947554225f1 - .---------------------------------------------. .---------------------------------------------. - | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | DEL | Q | D | R | W | B | ( | ! ) | J | F | U | P | ; | \ | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | NUMS | A | S | H | T | G |-------! !-------! Y | N | E | O | I | ' | - !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! - | SHIFT | Z | X | M | C | V | [ | ! ] | K | L | , | . | / | SHIFT | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | - '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | END | ! PGDN | ! ENTER ! - ! SPACE ! BSPCE !-------! !-------! TAB ! / ! - | | | COPY | ! PASTE | | LOWER | - '-----------------------' '-----------------------' + /* Workman - http://www.keyboard-layout-editor.com/#/gists/7a07cb982ec3597ba3e3d947554225f1 + .---------------------------------------------. .---------------------------------------------. + | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | DEL | Q | D | R | W | B | ( | ! ) | J | F | U | P | ; | \ | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | NUMS | A | S | H | T | G |-------! !-------! Y | N | E | O | I | ' | + !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! + | SHIFT | Z | X | M | C | V | [ | ! ] | K | L | , | . | / | SHIFT | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | |GAME | ADJ | + '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | END | ! PGDN | ! ENTER ! + ! SPACE ! BSPCE !-------! !-------! TAB ! / ! + | | | COPY | ! PASTE | | LOWER | + '-----------------------' '-----------------------' */ - [_HWRKMN] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC, _______________________NUMBER_LEFT_______________________, JJ_ARRW, KC_MINUS,_______________________NUMBER_RIGHT______________________, KC_EQUAL, - KC_DEL, _______________________HWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________HWORKMAN_R1_______________________, KC_BSLS, - KC_NUMS,_______________________HWORKMAN_L2_______________________, _______________________HWORKMAN_R2_______________________, KC_QUOTE, - KC_LSFT,_______________________HWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________HWORKMAN_R3_______________________, KC_RSFT, - ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, - ______________________ERGODOX_THUMBS_____________________ + [_WORKMAN] = LAYOUT_ergodox_pretty_base_wrapper( + _________________WORKMAN_L1_________________, _________________WORKMAN_R1_________________, + _________________WORKMAN_L2_________________, _________________WORKMAN_R2_________________, + _________________WORKMAN_L3_________________, _________________WORKMAN_R3_________________ ), -/* Software Workman / QWERTY - http://www.keyboard-layout-editor.com/#/gists/b6c016a22a9d31381a276a603a42fe5f - .---------------------------------------------. .---------------------------------------------. - | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | DEL | Q | W | E | R | T | ( | ! ) | Y | U | I | O | P | \ | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | NUMS | A | S | D | F | G |-------! !-------! H | J | K | L | ; | ' | - !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! - | SHIFT | Z | X | C | V | B | [ | ! ] | N | M | , | . | / | SHIFT | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | - '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | END | ! PGDN | ! ENTER ! - ! SPACE ! BSPCE !-------! !-------! TAB ! / ! - | | | COPY | ! PASTE | | LOWER | - '-----------------------' '-----------------------' -*/ - [_SWRKMN] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC, _______________________NUMBER_LEFT_______________________, JJ_ARRW, KC_MINUS,_______________________NUMBER_RIGHT______________________, KC_EQUAL, - KC_DEL, _______________________SWORKMAN_L1_______________________, KC_LPRN, KC_RPRN, _______________________SWORKMAN_R1_______________________, KC_BSLS, - KC_NUMS,_______________________SWORKMAN_L2_______________________, _______________________SWORKMAN_R2_______________________, KC_QUOTE, - KC_LSFT,_______________________SWORKMAN_L3_______________________, HYP_LBK, MEH_RBK, _______________________SWORKMAN_R3_______________________, KC_RSFT, - ___________________ERGODOX_BOTTOM_LEFT___________________, ___________________ERGODOX_BOTTOM_RIGHT__________________, - ______________________ERGODOX_THUMBS_____________________ + [_WINWORKMAN] = LAYOUT_ergodox_pretty_base_wrapper( + _________________WORKMAN_L1_________________, _________________WORKMAN_R1_________________, + ________________WWORKMAN_L2_________________, ________________WWORKMAN_R2_________________, + _________________WORKMAN_L3_________________, _________________WORKMAN_R3_________________ ), -/* Lower - http://www.keyboard-layout-editor.com/#/gists/f1d745a88d1c48ab55e095efd9e7a43a - .---------------------------------------------. .---------------------------------------------. - | ESC | | | | | | -> | ! - | | | | | | = | - !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! - | DEL | ! | @ | # | $ | % | ( | ! ) | ^ | & | * | ( | ) | \ | - !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | ` | 1 | 2 | 3 | 4 | 5 |-------! !-------! 6 | 7 | 8 | 9 | 0 | ' | - !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! - | SHIFT | | | | | | [ | ! ] | | | | | | SHIFT | - '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | - '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | END | ! PGDN | ! ENTER ! - ! SPACE ! BSPCE !-------! !-------! TAB ! / ! - | | | COPY | ! PASTE | | LOWER | - '-----------------------' '-----------------------' +/* QWERTY - http://www.keyboard-layout-editor.com/#/gists/b6c016a22a9d31381a276a603a42fe5f + .---------------------------------------------. .---------------------------------------------. + | ESC | 1 | 2 | 3 | 4 | 5 | -> | ! - | 6 | 7 | 8 | 9 | 0 | = | + !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! + | DEL | Q | W | E | R | T | ( | ! ) | Y | U | I | O | P | \ | + !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! + | NUMS | A | S | D | F | G |-------! !-------! H | J | K | L | ; | ' | + !-------+-----+-----+-----x-----x-----! HYP ! ! MEH !-----x-----x-----+-----+-----+-------! + | SHIFT | Z | X | C | V | B | [ | ! ] | N | M | , | . | / | SHIFT | + '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | GAME | NUM | LWR | UP | LFT | .---------------. .---------------. ! RGT | DWN | | | ADJ | + '------------------------------' | APP | HOME | ! PGUP | ESC | '------------------------------' + .-------+-------+-------! !-------+-------+-------. + ! ! | END | ! PGDN | ! ENTER ! + ! SPACE ! BSPCE !-------! !-------! TAB ! / ! + | | | COPY | ! PASTE | | LOWER | + '-----------------------' '-----------------------' */ + [_QWERTY] = LAYOUT_ergodox_pretty_base_wrapper( + _________________QWERTY_L1__________________, _________________QWERTY_R1__________________, + _________________QWERTY_L2__________________, _________________QWERTY_R2__________________, + _________________QWERTY_L3__________________, _________________QWERTY_R3__________________ + ), [_LOWER] = LAYOUT_ergodox_pretty_wrapper( - _______,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, _______, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, - _______,_______________________SPECIAL_LEFT______________________, _______, _______, _______________________SPECIAL_RIGHT_____________________, _______, - KC_GRV ,_______________________NUMBER_LEFT_______________________, _______________________NUMBER_RIGHT______________________, _______, - _______,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, _______, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, _______, - _________________________________________________________, _________________________________________________________, - ______________________ERGODOX_THUMBS_____________________ + KC_F11 ,__________________FUNCTION_LEFT_____________, _______, _______, __________________FUNCTION_RIGHT____________, KC_F12, + _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_PAST, _______, + LM_GRAVE, _______, KC_LEFT, KC_DOWN,KC_RIGHT, _______, _______, KC_4, KC_5, KC_6, KC_PPLS, _______, + OS_LSFT,____________________BLANK___________________, _______, _______, _______, KC_1, KC_2, KC_3, KC_PMNS, _______, + ____________________BLANK___________________, KC_0, KC_PDOT, KC_COMM,KC_PEQL, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ ), - /* Adjust - http://www.keyboard-layout-editor.com/#/gists/dedeae17b35a5d5f745a42aaea78f007 +/* Adjust - http://www.keyboard-layout-editor.com/#/gists/dedeae17b35a5d5f745a42aaea78f007 .---------------------------------------------. .---------------------------------------------. - | | | | | | | EPRM | ! EPRM | | | | | | | + | MAKE | | | | | | RESET | ! EPRM | | | | | | | !-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! | | | | | | | | ! | | | | | | | !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | 🔇 | 🔉 | 🔊 | LCK | |-------! !-------! | | | | | SWRKM | + | | 🔇 | 🔉 | 🔊 | LCK | |-------! !-------! | | | | | QWRTY | !-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! - | | | | | | | | ! | | | | | | HWRKM | + | | | | | | | | ! | | | | | WIN | WRKMN | '-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' | | | | | | .---------------. .---------------. ! | | | | | '------------------------------' | | | ! | | '------------------------------' @@ -115,101 +117,66 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { '-----------------------' '-----------------------' */ [_ADJUST] = LAYOUT_ergodox_pretty_wrapper( - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, KC_EPRM, KC_EPRM, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX,KC__MUTE, KC__VOLDOWN, KC__VOLUP, MC_LOCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SWRK, - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HWRK, - XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, - ______________________ERGODOX_THUMBS_____________________ - ), - [_NUMS] = LAYOUT_ergodox_pretty_wrapper( - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, - XXXXXXX,XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_PAST, XXXXXXX, - _______,XXXXXXX, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, XXXXXXX, - LM_SHFT,XXXXXXX, XXXXXXX, XXXXXXX, JJ_COPY, JJ_PSTE, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_PMNS, XXXXXXX, - XXXXXXX,_______,XXXXXXX,XXXXXXX,XXXXXXX, KC_KP_0, KC_PDOT, KC_COMM, KC_PEQL, XXXXXXX, - _______, _______, _______,_______, - _______, _______, - KC_LALT,KC_LGUI,_______, _______,_______,_______ - ), - [_NMOD] = LAYOUT_ergodox_pretty_wrapper( - XXXXXXX,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, - XXXXXXX,XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, - XXXXXXX,XXXXXXX, _______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, - LM_SHFT,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, - XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, _______, _______, _______, _______, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, - XXXXXXX, XXXXXXX, - KC_LALT,KC_LGUI,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX + KC_MAKE, ____________________BLANK___________________, KC_RST, KC_EPRM, ____________________BLANK___________________, XXXXXXX, + _______, ____________________BLANK___________________, _______, _______, ____________________BLANK___________________, XXXXXXX, + _______,KC__MUTE,KC__VOLDOWN,KC__VOLUP,MC_LOCK,_______, ____________________BLANK___________________, KC_MQWR, + _______, ____________________BLANK___________________, _______, _______, _______, _______, _______, _______, KC_WWRK, KC_MWRK, + ____________________BLANK___________________, ____________________BLANK___________________, + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ ), -// Diablo - http://www.keyboard-layout-editor.com/#/gists/28476e4237e77d4835ac8a9d7e5f9b2c [_DIABLO] = LAYOUT_ergodox_pretty_wrapper( - KC_ESC , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_TAB , KC_Q ,ALT_T(KC_S), KC_I , KC_F , KC_J ,KC_MINS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_LOCK, KC_1 , KC_2 , KC_3 , KC_4 ,KC_DCLR , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_LSFT, KC_D3_1 , KC_D3_2 , KC_D3_3 , KC_D3_4 , KC_T ,KC_MINS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, XXXXXXX , XXXXXXX , XXXXXXX , KC_M , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, - XXXXXXX, XXXXXXX, - KC_BTN1,KC_BTN2,KC_ENTER, XXXXXXX,XXXXXXX,XXXXXXX + KC_ESC, KC_V, KC_D, KC_LALT, KC_NO, KC_NO, KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, + KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_ENTER, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_Q, KC_1, KC_2, KC_3, KC_4, KC_P, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, KC_LOCK, KC_NO, KC_N, KC_M, KC_NO, KC_NO, KC_NO, KC_NO, + _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, + KC_L, KC_J, KC_NO, KC_NO, + KC_F, KC_NO, + SFT_T(KC_SPACE), ALT_T(KC_Q), KC_DCLR, KC_PGDN, KC_DEL, KC_ENT ) }; bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - uint8_t default_layer = 0; - default_layer = eeconfig_read_default_layer(); - switch (keycode) { - case KC_SWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_SWRKMN); - layer_move(default_layer); - ergodox_blink_all_leds(); - ergodox_blink_all_leds(); - } - return false; - break; - case KC_HWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_HWRKMN); - layer_move(default_layer); - ergodox_blink_all_leds(); - ergodox_blink_all_leds(); - } - return false; - break; - case KC_EPRM: - if (!record->event.pressed) { - ergodox_blink_all_leds(); - eeconfig_init(); - } - return false; - break; - case MC_LOCK: - if (!record->event.pressed) { - layer_move(default_layer); - SEND_STRING(SS_LCTRL(SS_LGUI("q"))); - } - return false; - break; - } return true; } void matrix_init_keymap(void) {}; void matrix_scan_keymap(void) { + uint8_t modifiers = get_mods(); + uint8_t led_usb_state = host_keyboard_leds(); + uint8_t one_shot = get_oneshot_mods(); uint8_t layer = biton32(layer_state); + ergodox_board_led_off(); ergodox_right_led_1_off(); ergodox_right_led_2_off(); ergodox_right_led_3_off(); + switch (layer) { - /* - Lights are treated as binary here for easy identification. - LED1 = 4; LED2 = 2; LED1 = 1 - This allows for up to 8 identified layers (default layers being no lights on) - Which is way more than I should ever need - */ + case _WORKMAN: + case _QWERTY: + case _WINWORKMAN: + if (modifiers & MODS_SHIFT_MASK || led_usb_state & (1< @JacobJerrell + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + #include "bocaj.h" -#include "eeprom.h" -#include "version.h" -#include "tap_dances.h" -static uint16_t copy_paste_timer; userspace_config_t userspace_config; +#if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + #define BOCAJ_UNICODE_MODE UC_OSX +#else + // set to 2 for UC_WIN, set to 4 for UC_WINC + #define BOCAJ_UNICODE_MODE 2 +#endif -/* *** *** *** *** * - * Helper Functions * - * *** *** *** *** */ void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; // Add reconfigurable functions here, for keymap customization @@ -36,10 +52,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { } __attribute__ ((weak)) -bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { - return true; -} - +void matrix_scan_secrets(void) {} __attribute__ ((weak)) uint32_t layer_state_set_keymap (uint32_t state) { @@ -57,7 +70,14 @@ void led_set_keymap(uint8_t usb_led) {} // Call user matrix init, set default RGB colors and then // call the keymap's init function void matrix_init_user(void) { - userspace_config.raw = eeprom_read_byte(EECONFIG_USERSPACE); + userspace_config.raw = eeconfig_read_user(); + + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(BOCAJ_UNICODE_MODE); + get_unicode_input_mode(); + #endif //UNICODE_ENABLE + + matrix_init_keymap(); } @@ -78,6 +98,18 @@ void suspend_wakeup_init_user(void) #endif } +void eeconfig_init_user(void) { + userspace_config.raw = 0; + eeconfig_update_user(userspace_config.raw); + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(BOCAJ_UNICODE_MODE); + get_unicode_input_mode(); + #else + eeprom_update_byte(EECONFIG_UNICODEMODE, BOCAJ_UNICODE_MODE); + #endif +} + +LEADER_EXTERNS(); // No global matrix scan code, so just run keymap's matrix // scan function void matrix_scan_user(void) { @@ -86,6 +118,68 @@ void matrix_scan_user(void) { has_ran_yet = true; startup_user(); } + LEADER_DICTIONARY() { + leading = false; + leader_end(); + + // Mac Save (Leader -> s) + SEQ_ONE_KEY(KC_S) { + SEND_STRING(SS_LGUI("s")); + } + + // Mac copy line down (Leader -> d, d) + SEQ_TWO_KEYS(KC_D, KC_D) { + register_code(KC_LSHIFT); + register_code(KC_HOME); + unregister_code(KC_HOME); + unregister_code(KC_LSHIFT); + SEND_STRING(SS_LGUI("c")); + tap(KC_END); + tap(KC_ENTER); + SEND_STRING(SS_LGUI("v")); + } + + // Mac copy line up (Leader -> u, u) + SEQ_TWO_KEYS(KC_U, KC_U) { + register_code(KC_LSHIFT); + register_code(KC_HOME); + unregister_code(KC_HOME); + unregister_code(KC_LSHIFT); + SEND_STRING(SS_LGUI("c")); + tap(KC_UP); + tap(KC_END); + tap(KC_ENTER); + SEND_STRING(SS_LGUI("v")); + } + + // Mac VS Debug + SEQ_ONE_KEY(KC_D) { + tap(KC_F5); + } + + // Mac VS Stop Debug + SEQ_TWO_KEYS(KC_S, KC_D) { + register_code(KC_LSHIFT); + tap(KC_F5); + unregister_code(KC_LSHIFT); + } + + // Start Diablo 3 + SEQ_ONE_KEY(KC_3) { + SEND_STRING(SS_LCTRL(" ")); + SEND_STRING("Diablo"); + tap(KC_ENTER); + } + + SEQ_ONE_KEY(KC_B) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION " "); + tap(KC_ENTER); + SEND_STRING ("Built at: " QMK_BUILDDATE); + } +#ifndef NO_SECRETS + matrix_scan_secrets(); +#endif // !NO_SECRETS + } #ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code. run_diablo_macro_check(); @@ -93,85 +187,3 @@ void matrix_scan_user(void) { matrix_scan_keymap(); } - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - /* uint8_t default_layer = 0; - default_layer = eeconfig_read_default_layer(); */ - switch (keycode) { - case JJ_COPY: - if (!record->event.pressed) { - SEND_STRING(SS_LGUI("c")); - } - return false; - break; - case JJ_PSTE: - if (!record->event.pressed) { - SEND_STRING(SS_LGUI("v")); - } - return false; - break; - case JJ_ARRW: - if (!record->event.pressed) { - SEND_STRING("->"); - } - return false; - break; /* - case KC_SWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_SWRKMN); - layer_move(default_layer); - //ergodox_blink_all_leds(); - //ergodox_blink_all_leds(); - } - return false; - break; - case KC_HWRK: - if (!record->event.pressed) { - set_single_persistent_default_layer(_HWRKMN); - layer_move(default_layer); - //ergodox_blink_all_leds(); - //ergodox_blink_all_leds(); - } - return false; - break; - case KC_EPRM: - if (!record->event.pressed) { - //ergodox_blink_all_leds(); - eeconfig_init(); - } - return false; - break; - case MC_LOCK: - if (!record->event.pressed) { - layer_move(default_layer); - SEND_STRING(SS_LCTRL(SS_LGUI("q"))); - } - return false; - break; */ - case KC_DCLR: -#ifdef TAP_DANCE_ENABLE - if (record->event.pressed) { - uint8_t dtime; - for (dtime = 0; dtime < 4; dtime++) { - diablo_key_time[dtime] = diablo_times[0]; - } - } -#endif // !TAP_DANCE_ENABLE - return false; - break; - case KC_CCCV: - if (record->event.pressed) { - copy_paste_timer = timer_read(); - } else { - if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy - SEND_STRING(SS_LGUI("c")); - } else { - SEND_STRING(SS_LGUI("v")); - } - } - return false; - break; - } - return process_record_keymap(keycode, record); -} - diff --git a/users/bocaj/bocaj.h b/users/bocaj/bocaj.h index 7b537397f0..04991a0150 100644 --- a/users/bocaj/bocaj.h +++ b/users/bocaj/bocaj.h @@ -1,141 +1,85 @@ -#ifndef USERSPACE -#define USERSPACE +/* +Copyright 2018 Jacob Jerrell @JacobJerrell +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once #include "quantum.h" +#include "version.h" +#include "eeprom.h" +#include "wrappers.h" +#include "process_records.h" +#ifdef TAP_DANCE_ENABLE + #include "tap_dances.h" +#endif // TAP_DANCE_ENABLE -/* *** *** *** *** *** * - * Define layer names * - * *** *** *** *** *** */ +/* Layer Names */ enum userspace_layers { - _HWRKMN = 0, - _SWRKMN, + _WORKMAN = 0, + _WINWORKMAN, + _QWERTY, _LOWER, _ADJUST, - _NUMS, - _NMOD, - _DIABLO + _DIABLO, }; -#define EECONFIG_USERSPACE (uint8_t *)19 +#if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + #define BOCAJ_UNICODE_MODE UC_OSX +#else + // set to 2 for UC_WIN, set to 4 for UC_WINC + #define BOCAJ_UNICODE_MODE 2 +#endif + +/* +define modifiers here, since MOD_* doesn't seem to work for these + */ +#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) +#define MODS_CTRL_MASK (MOD_BIT(KC_LCTL)|MOD_BIT(KC_RCTRL)) +#define MODS_ALT_MASK (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) +#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) + +bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed); +bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t this_timer); +bool send_game_macro(const char *str, keyrecord_t *record, bool override); +void matrix_init_keymap(void); +void shutdown_keymap(void); +void suspend_power_down_keymap(void); +void suspend_wakeup_init_keymap(void); +void matrix_scan_keymap(void); +uint32_t layer_state_set_keymap (uint32_t state); +uint32_t default_layer_state_set_keymap (uint32_t state); +void led_set_keymap(uint8_t usb_led); +void eeconfig_init_keymap(void); +void tap(uint16_t keycode); + typedef union { uint8_t raw; } userspace_config_t; -/* *** *** *** *** *** *** * - * Define Custom Keycodes * - * *** *** *** *** *** *** */ -enum userspace_custom_keycodes { - KC_EPRM = SAFE_RANGE, // can always be here - KC_SWRK, - KC_HWRK, - KC_VRSN, - JJ_COPY, - JJ_PSTE, - JJ_ARRW, - KC_CCCV, - MC_LOCK, - KC_DCLR, - NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes -}; - -// Space Cadet Hyper/Meh and [/] -#define HYP_LBK ALL_T(KC_LBRACKET) -#define MEH_RBK MEH_T(KC_RBRACKET) - -// Layout beauti-/simpli-fication -#define KC_LWEN LT(_LOWER, KC_ENTER) -#define KC_ADJS TT(_ADJUST) -#define KC_NUMS TT(_NUMS) -#define LM_SHFT LM(_NMOD, MOD_LSFT) -#define XXXXXXX KC_NO -#define _______ KC_TRNS - -void tap(uint16_t keycode); - -/* *** *** *** *** *** *** * - * Diablo 3 Macro Handling * - * *** *** *** *** *** *** */ +extern userspace_config_t userspace_config; // If Tap Dancing is enabled, we manage that here. // If it is not, then we define the KC_D3_# codes gracefully #ifdef TAP_DANCE_ENABLE -enum { - TD_D3_1 = 0, - TD_D3_2, - TD_D3_3, - TD_D3_4, -}; - -#define KC_D3_1 TD(TD_D3_1) -#define KC_D3_2 TD(TD_D3_2) -#define KC_D3_3 TD(TD_D3_3) -#define KC_D3_4 TD(TD_D3_4) + #define KC_D3_1 TD(TD_D3_1) + #define KC_D3_2 TD(TD_D3_2) + #define KC_D3_3 TD(TD_D3_3) + #define KC_D3_4 TD(TD_D3_4) #else // !TAP_DANCE_ENABLE -#define KC_D3_1 KC_1 -#define KC_D3_2 KC_2 -#define KC_D3_3 KC_3 -#define KC_D3_4 KC_4 + #define KC_D3_1 KC_1 + #define KC_D3_2 KC_2 + #define KC_D3_3 KC_3 + #define KC_D3_4 KC_4 #endif // TAP_DANCE_ENABLE - -// Wrapper for handling of keymap 'blocks' -// not 100% sure what this first part does. Credit to Drashna -#if (!defined(LAYOUT) && defined(KEYMAP)) -#define LAYOUT KEYMAP -#endif - -#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) -/* Pretty Layout -.---------------------------------------------. .---------------------------------------------. -| 1 | 2 | 3 | 4 | 5 | 6 | 7 | ! 8 | 9 | 10 | 11 | 12 | 13 | 14 | -!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! -| 15 | 16 | 17 | 18 | 19 | 20 | 21 | ! 22 | 23 | 24 | 25 | 26 | 27 | 28 | -!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! -| 29 | 30 | 31 | 32 | 33 | 34 |-------! !-------! 35 | 36 | 37 | 38 | 39 | 40 | -!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! -| 41 | 42 | 43 | 44 | 45 | 46 | 47 | ! 48 | 49 | 50 | 51 | 52 | 53 | 54 | -'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' - | 55 | 56 | 57 | 58 | 59 | .---------------. .---------------. ! 60 | 61 | 62 | 63 | 64 | - '------------------------------' | 65 | 66 | ! 67 | 68 | '------------------------------' - .-------+-------+-------! !-------+-------+-------. - ! ! | 69 | ! 70 | ! ! - ! ! !-------! !-------! ! ! - | 71 | 72 | 73 | ! 74 | 75 | 76 | - '-----------------------' '-----------------------' -*/ - -#define _______________________SWORKMAN_L1_______________________ KC_Q, KC_W, KC_E, KC_R, KC_T -#define _______________________SWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_D), ALT_T(KC_F), KC_G -#define _______________________SWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B - -#define _______________________SWORKMAN_R1_______________________ KC_Y, KC_U, KC_I, KC_O, KC_P -#define _______________________SWORKMAN_R2_______________________ KC_H, ALT_T(KC_J), GUI_T(KC_K), SFT_T(KC_L), KC_SCLN -#define _______________________SWORKMAN_R3_______________________ KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) - -// Hardware Driven Workman -#define _______________________HWORKMAN_L1_______________________ KC_Q, KC_D, KC_R, KC_W, KC_B -#define _______________________HWORKMAN_L2_______________________ KC_A, SFT_T(KC_S), GUI_T(KC_H), ALT_T(KC_T), KC_G -#define _______________________HWORKMAN_L3_______________________ CTL_T(KC_Z), KC_X, KC_M, KC_C, KC_V - -#define _______________________HWORKMAN_R1_______________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN -#define _______________________HWORKMAN_R2_______________________ KC_Y, ALT_T(KC_N), GUI_T(KC_E), SFT_T(KC_O), KC_I -#define _______________________HWORKMAN_R3_______________________ KC_K, KC_L, KC_COMM, KC_DOT, CTL_T(KC_SLASH) - -#define ___________________ERGODOX_BOTTOM_LEFT___________________ TT(_DIABLO), KC_NUMS, TT(_LOWER), KC_UP, KC_LEFT -#define ___________________ERGODOX_BOTTOM_RIGHT__________________ KC_RIGHT, KC_DOWN, XXXXXXX, XXXXXXX, TT(_ADJUST) - -#define _______________________NUMBER_LEFT_______________________ KC_1, KC_2, KC_3, KC_4, KC_5 -#define _______________________NUMBER_RIGHT______________________ KC_6, KC_7, KC_8, KC_9, KC_0 - -#define _______________________SPECIAL_LEFT______________________ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC -#define _______________________SPECIAL_RIGHT_____________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN - -#define _________________________________________________________ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS -#define XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX KC_NO, KC_NO, KC_NO, KC_NO, KC_NO - -// LEFT | RIGHT -#define ______________________ERGODOX_THUMBS_____________________ KC_APP,KC_HOME, KC_PGUP,KC_ESC, \ - KC_END, KC_PGDOWN, \ - KC_SPACE,KC_BSPACE,JJ_COPY, JJ_PSTE,KC_TAB,KC_LWEN - - -#endif // !USERSPACE diff --git a/users/bocaj/config.h b/users/bocaj/config.h index 0e726598cd..1956ea6d96 100644 --- a/users/bocaj/config.h +++ b/users/bocaj/config.h @@ -10,12 +10,15 @@ // actually sends Ctrl-x. That's bad.) #define IGNORE_MOD_TAP_INTERRUPT #undef PERMISSIVE_HOLD +#define PREVENT_STUCK_MODIFIERS #ifdef TAPPING_TERM #undef TAPPING_TERM #endif // TAPPING_TERM #define TAPPING_TERM 175 +#define RETRO_TAPPING + // Disable action_get_macro and fn_actions, since we don't use these // and it saves on space in the firmware. #ifndef NO_DEBUG @@ -27,6 +30,4 @@ #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION -#define DISABLE_LEADER - #define MACRO_TIMER 5 diff --git a/users/bocaj/process_records.c b/users/bocaj/process_records.c new file mode 100644 index 0000000000..c36683f8ba --- /dev/null +++ b/users/bocaj/process_records.c @@ -0,0 +1,149 @@ +#include "bocaj.h" +#include QMK_KEYBOARD_H + +uint16_t copy_paste_timer; +uint16_t grave_layer_timer; +uint16_t heal_layer_timer; + +__attribute__ ((weak)) +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + return true; +} + +// Defines actions tor my global custom keycodes. Defined in bocaj.h file +// Then runs the _keymap's record handler if not processed here +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_MWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_WORKMAN); + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(0); + #endif + layer_move(0); + ergodox_blink_all_leds(); + } + break; + case KC_WWRK: + if (!record->event.pressed) { + set_single_persistent_default_layer(_WINWORKMAN); + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(4); + #endif + layer_move(0); + ergodox_blink_all_leds(); + } + break; + case KC_MQWR: + if (!record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + #if (defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE)) + set_unicode_input_mode(0); + #endif + layer_move(0); + ergodox_blink_all_leds(); + } + break; + case MC_LOCK: + if (!record->event.pressed) { + layer_move(0); + SEND_STRING(SS_LCTRL(SS_LGUI("q"))); + } + break; + case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader + if (!record->event.pressed) { + uint8_t temp_mod = get_mods(); + uint8_t temp_osm = get_oneshot_mods(); + clear_mods(); + clear_oneshot_mods(); + if (biton32(default_layer_state) == _WINWORKMAN) { + send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), 10); + } else { + send_string_with_delay_P(PSTR("util/docker_build.sh " QMK_KEYBOARD ":" QMK_KEYMAP), 10); + } + if (temp_mod & MODS_SHIFT_MASK) { + send_string_with_delay_P(PSTR(":teensy"), 10); + } + if (temp_mod & MODS_CTRL_MASK) { + send_string_with_delay_P(PSTR(" -j8 --output-sync"), 10); + } + send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), 10); + set_mods(temp_mod); + layer_move(0); + } + break; + case KC_DCLR: // reset all Diablo timers, disabling them +#ifdef TAP_DANCE_ENABLE + if (record->event.pressed) { + uint8_t dtime; + for (dtime = 0; dtime < 4; dtime++) { + diablo_key_time[dtime] = diablo_times[0]; + } + } +#endif // TAP_DANCE_ENABLE + break; + case JJ_ARRW: + if (!record->event.pressed) { + SEND_STRING("->"); + } + return false; + break; + case LM_GRAVE: + if (record->event.pressed) { + grave_layer_timer = timer_read(); + } else { + if (timer_elapsed(grave_layer_timer) < TAPPING_TERM) { + uint8_t temp_mod = get_mods(); + uint8_t one_shot = get_oneshot_mods(); + clear_mods(); + if (temp_mod & MODS_SHIFT_MASK || one_shot & MODS_SHIFT_MASK) { + register_code(KC_LSFT); + tap(KC_GRAVE); + unregister_code(KC_LSFT); + } else { + tap(KC_GRAVE); + } + set_mods(temp_mod); + } else { + layer_move(0); + } + } + return false; + break; + case KC_CCCV: + if (record->event.pressed) { + copy_paste_timer = timer_read(); + } else { + if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy + SEND_STRING(SS_LGUI("c")); + } else { + SEND_STRING(SS_LGUI("v")); + } + } + return false; + break; +#ifdef UNICODE_ENABLE + case UC_FLIP: // (ノಠ痊ಠ)ノ彡┻━┻ + if (record->event.pressed) { + send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); + } + break; + case UC_TABL: // ┬─┬ノ( º _ ºノ) + if (record->event.pressed) { + send_unicode_hex_string("252C 2500 252C 30CE 0028 0020 00BA 0020 005F 0020 00BA 30CE 0029"); + } + break; + case UC_SHRG: // ¯\_(ツ)_/¯ + if (record->event.pressed) { + send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); + } + break; + case UC_DISA: // ಠ_ಠ + if (record->event.pressed) { + send_unicode_hex_string("0CA0 005F 0CA0"); + } + break; +#endif + } + return process_record_keymap(keycode, record); +} diff --git a/users/bocaj/process_records.h b/users/bocaj/process_records.h new file mode 100644 index 0000000000..248df13e1b --- /dev/null +++ b/users/bocaj/process_records.h @@ -0,0 +1,52 @@ +#pragma once +#include "bocaj.h" + +#if defined(KEYMAP_SAFE_RANGE) + #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE +#else + #define PLACEHOLDER_SAFE_RANGE SAFE_RANGE +#endif + +enum userspace_custom_keycodes { + KC_EPRM = PLACEHOLDER_SAFE_RANGE, // can always be here + KC_MWRK, + KC_WWRK, + KC_MQWR, + KC_VRSN, + LM_GRAVE, // Shift if held, layer change if tapped + JJ_COPY, + JJ_PSTE, + JJ_ARRW, + KC_CCCV, + MC_LOCK, + KC_DCLR, + KC_MAKE, + UC_FLIP, // (ಠ痊ಠ)┻━┻ + UC_TABL, // ┬─┬ノ( º _ ºノ) + UC_SHRG, // ¯\_(ツ)_/¯ + UC_DISA, // ಠ_ಠ + NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes +}; + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record); + +// One Shot +#define OS_LSFT OSM(MOD_LSFT) + +// Space Cadet Hyper/Meh and [/] +#define HYP_LBK ALL_T(KC_LBRACKET) +#define MEH_RBK MEH_T(KC_RBRACKET) + +#define GUI_CTR(os, kc) MT( (os == 0) ? (MOD_LGUI) : (MOD_LCTL), kc ) + +// Layout beauti-/simpli-fication +#define KC_LWEN LT(_LOWER, KC_ENTER) +#define KC_ADJS TT(_ADJUST) +#define KC_NUMS TT(_LOWER) +#define KC_GAME TT(_DIABLO) +#define XXXXXXX KC_NO +#define _______ KC_TRNS + +// Other Keycodes +#define KC_RST RESET +#define KC_BS KC_BSLASH diff --git a/users/bocaj/readme.md b/users/bocaj/readme.md index bab6d7337f..669299cb0d 100644 --- a/users/bocaj/readme.md +++ b/users/bocaj/readme.md @@ -1,14 +1,102 @@ -Copyright 2018 Jacob Jerrell jacob.jerrell@gmail.com @JacobJerrell +# Overview -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. +My personal QMK userspace. First, I must say that the credit for a majority of the code found here belongs to Drashna and/or the people he derived his code from. My Ergodox layout is briefly described in its respective folder. As for explaining this userspace, you could honestly go to Drashna's userspace and read his well put together readme. Regardless, I am mostly writing this as an excercise for myself to better understand what is going on, and where applicable, describe things that I innovated on my own. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. +## Bocaj.c -You should have received a copy of the GNU General Public License -along with this program. If not, see . +### Unicode + +I've always had difficulty implementing unicode in QMK, all of this code is literally copy/pasted from Drashna's userspace and lies dormant here until I can take the time to figure it out. + +Update: Got it to work in Mac OS which is more important to me than Windows (probably pretty easy to figure out at this point). So I'm a happy table flipping person now! + +(ノಠ痊ಠ)ノ彡┻━┻ + +┬─┬ノ( º _ ºノ) + +### Tap Macro + +Not sure why this doesn't exist in QMK already (maybe it does?) + +```c +void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); }; +``` + +### *_keymap functions + +We're running *_user functions in the userspace, that way we can add to or reconfigure at the keyboard level. Any *_user functions should call the equivalent *_keymap function at the end. If the *_keymap function isn't defined in the keymap, the `__attribute__ ((weak))` will prevent build problems. + +### Startup/Suspend/Shutdown Functions + +I have no idea what these do. Non-Ergodox keyboard functions? + +### Matrix Scan User + +Leader key defines, Diablo macro ancillary function, run matrix_scan_keymap. + +#### Leader Key + +I've always been interested in this feature, but I've had 0 experience with applications that have similar behavior. My implementation seeks to implement features that I feel VS2017 lacks + +## Secrets + +Hacked Drashna's secret macro implementation to work with the leader key instead. +TODO: Finish documentation + +## Bocaj.h + +Layer defines, some macro ancillary defines, setup Diablo macros and failsafe + +## Process_Records.c/.h + +Again, taking ideas from Drashna to make maintenance simpler. A couple of things that I'm proud of here, but nothing really ground breaking. + +* Features + * Change default layer + * KC_MWRK, KC_WWRK, KC_MQWR + * MacOS Lock Screen Macro + * Make macro (Credit: Drashna) + * Need to reconfigure so it runs the docker command if one of the Mac OS layers are default because the AVR install fails on the corporate laptop + * Arrow macro (->) because I find myself telling people how to get to something quite frequently and typing this manually requires moving the right hand to the top-left of the ergodox and then to the bottom right, which feels unnatural. + * LM_GRAVE + * While combining _NUMS and _LOWER, I also needed a place to put F1-12 keys. This required me to relocate the grave key. The most comfortable place to put it was over a key that I frequently use to toggle the numpad. I do have other ways to get to/from this layer but my mind has been wired to use them for different workflows, so I would sit here frozen for a moment trying to tell my fingers where to go + * How it works + * A timer starts when pressed down + * If the timer at release was less than the TAPPING_TERM define + * Get mods + * If Shift was held or one-shot shift was active + * Send `~` + * Else + * Send ` + * Else (timer at released was greater than the TAPPING_TERM define) + * Move to the default layer + * KC_CCCV + * Another neat idea I found in Drashna's userspace... highly underutilized in my layout but the inspiration for LM_GRAVE was obviously derived from this code + * Unicode stuff + * All I've ever wanted was a table-flip macro... I managed to get about half of it to work before I gave up and disabled it + +## Send_Unicode.c/.h + +I have some basic understanding of this, Drashna may already have it documented in his userspace. I'll put it in my own words when I get around to making it work and understanding it better. + +## Tap_Dances.c/h + +Again, building on Drashna's userspace organization to simplify maintenance of a heavily configured layout. This is all the stuff for the Diablo 3 macros that spam a given skill (1-4) every ~1 second + +## Wrappers.h + +Traditionally, you would put all of this into the \.h file. But I liked the idea of separating it to simplify modification in the future. + +### GUI_CTR(os, kc) + +A notable mention in this file is the GUI_CTR(os, kc) custom keycode defined in process_records.h as: + +```c +#define GUI_CTR(os, kc) MT( (os == 0) ? (MOD_LGUI) : (MOD_LCTL), kc ) +``` + +I tried several things before coming to this one-liner conclusion. I believe it is quite elegant and it definitely solves the problem I had (separate wrappers for Windows/MacOS layers). But I would love to make this into something more intuitive, like a macro that detects which layer you're on and sends the applicable hotkey when held, or keycode when tapped. Ultimately, I was too tired of thinking about it to come up with a solution like that at this time. + +Anyhow, if you set `os == 1`, it sends the Windows CTRL hotkey when held. If you set `os == 0`, it sends the Mac OS GUI hotkey when held. If tapped, it sends the keycode. + +This is effectively a slightly more advanced `MOD_T(kc)` keycode. diff --git a/users/bocaj/rules.mk b/users/bocaj/rules.mk index 17d2772a7c..9ed8c250a3 100644 --- a/users/bocaj/rules.mk +++ b/users/bocaj/rules.mk @@ -1,5 +1,33 @@ -SRC += bocaj.c +SRC += bocaj.c \ + process_records.c + +ifneq ("$(wildcard $(USER_PATH)/secrets.c)","") + SRC += secrets.c +endif ifeq ($(strip $(TAP_DANCE_ENABLE)), yes) SRC += tap_dances.c endif + +# Caused problems when building via docker on Mac OS +# EXTRAFLAGS += -flto + +ifeq ($(strip $(NO_SECRETS)), yes) + OPT_DEFS += -DNO_SECRETS +endif + +ifeq ($(strip $(MACROS_ENABLED)), yes) + OPT_DEFS += -DMACROS_ENABLED +endif + +ifeq ($(strip $(UCIS_ENABLE)), yes) + SRC += send_unicode.c +endif + +ifeq ($(strip $(UNICODEMAP_ENABLE)), yes) + SRC += send_unicode.c +endif + +ifeq ($(strip $(UNICODE_ENABLE)), yes) + SRC += send_unicode.c +endif diff --git a/users/bocaj/send_unicode.c b/users/bocaj/send_unicode.c new file mode 100644 index 0000000000..b1290f6319 --- /dev/null +++ b/users/bocaj/send_unicode.c @@ -0,0 +1,106 @@ +// Written by konstantin: vomindoraan +#include "send_unicode.h" +#include +#include + +__attribute__((weak)) +void send_unicode_hex_string(const char* str) { + if (!str) { return; } // Safety net + + while (*str) { + // Find the next code point (token) in the string + for (; *str == ' '; str++); + size_t n = strcspn(str, " "); // Length of the current token + char code_point[n+1]; + strncpy(code_point, str, n); + code_point[n] = '\0'; // Make sure it's null-terminated + + // Normalize the code point: make all hex digits lowercase + for (char *p = code_point; *p; p++) { + *p = tolower((unsigned char)*p); + } + + // Send the code point as a Unicode input string + unicode_input_start(); + send_string(code_point); + unicode_input_finish(); + + str += n; // Move to the first ' ' (or '\0') after the current token + } +} + +// (ノಠ痊ಠ)ノ彡┻━┻ +// send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); + +//Old code +// (╯°□°)╯ ︵ ┻━┻ + #if 0 + register_code(KC_RSFT); + tap(KC_9); + unregister_code(KC_RSFT); + process_unicode((0x256F | QK_UNICODE), record); // Arm + process_unicode((0x00B0 | QK_UNICODE), record); // Eye + process_unicode((0x25A1 | QK_UNICODE), record); // Mouth + process_unicode((0x00B0 | QK_UNICODE), record); // Eye + register_code(KC_RSFT); + tap(KC_0); + unregister_code(KC_RSFT); + process_unicode((0x256F | QK_UNICODE), record); // Arm + tap(KC_SPC); + process_unicode((0x0361 | QK_UNICODE), record); // Flippy + tap(KC_SPC); + process_unicode((0x253B | QK_UNICODE), record); // Table + process_unicode((0x2501 | QK_UNICODE), record); // Table + process_unicode((0x253B | QK_UNICODE), record); // Table + #endif + + +// If you need a good converter: https://r12a.github.io/app-conversion/ +uint8_t saved_mods; + +void unicode_input_start (void) { + // save current mods + saved_mods = get_mods(); // Save current mods + clear_mods(); // Unregister mods to start from a clean state + + switch(get_unicode_input_mode()) { + case UC_OSX: + register_code(KC_LALT); + break; + case UC_LNX: + register_code(KC_LCTL); + register_code(KC_LSFT); + register_code(KC_U); + unregister_code(KC_U); + unregister_code(KC_LSFT); + unregister_code(KC_LCTL); + break; + case UC_WIN: + register_code(KC_LALT); + register_code(KC_PPLS); + unregister_code(KC_PPLS); + break; + case UC_WINC: + register_code(KC_RALT); + unregister_code(KC_RALT); + register_code(KC_U); + unregister_code(KC_U); + break; + } + wait_ms(UNICODE_TYPE_DELAY); +} + +void unicode_input_finish (void) { + switch(get_unicode_input_mode()) { + case UC_OSX: + case UC_WIN: + unregister_code(KC_LALT); + break; + case UC_LNX: + register_code(KC_SPC); + unregister_code(KC_SPC); + break; + } + + set_mods(saved_mods); // Reregister previously set mods +} diff --git a/users/bocaj/send_unicode.h b/users/bocaj/send_unicode.h new file mode 100644 index 0000000000..818b6e571b --- /dev/null +++ b/users/bocaj/send_unicode.h @@ -0,0 +1,71 @@ +#pragma once + +#include "quantum.h" + +void send_unicode_hex_string(const char* str); + +/* use X(n) to call the */ +#ifdef UNICODEMAP_ENABLE +enum unicode_name { + THINK, // thinking face 🤔 + GRIN, // grinning face 😊 + SMRK, // smirk 😏 + WEARY, // good shit 😩 + UNAMU, // unamused 😒 + + SNEK, // snke 🐍 + PENGUIN, // 🐧 + DRAGON, // 🐉 + MONKEY, // 🐒 + CHICK, // 🐥 + BOAR, // 🐗 + + OKOK, // 👌 + EFFU, // 🖕 + INUP, // 👆 + THUP, // 👍 + THDN, // 👎 + + BBB, // dat B 🅱 + POO, // poop 💩 + HUNDR, // 100 💯 + EGGPL, // EGGPLANT 🍆 + WATER, // wet 💦 + TUMBLER, // 🥃 + + LIT, // fire 🔥 + BANG, // ‽ + IRONY, // ⸮ + DEGREE // ° +}; + + +const uint32_t PROGMEM unicode_map[] = { + [THINK] = 0x1F914, + [GRIN] = 0x1F600, + [BBB] = 0x1F171, + [POO] = 0x1F4A9, + [HUNDR] = 0x1F4AF, + [SMRK] = 0x1F60F, + [WEARY] = 0x1F629, + [EGGPL] = 0x1F346, + [WATER] = 0x1F4A6, + [LIT] = 0x1F525, + [UNAMU] = 0x1F612, + [SNEK] = 0x1F40D, + [PENGUIN] = 0x1F427, + [BOAR] = 0x1F417, + [MONKEY] = 0x1F412, + [CHICK] = 0x1F425, + [DRAGON] = 0x1F409, + [OKOK] = 0x1F44C, + [EFFU] = 0x1F595, + [INUP] = 0x1F446, + [THDN] = 0x1F44E, + [THUP] = 0x1F44D, + [TUMBLER] = 0x1F943, + [BANG] = 0x0203D, + [IRONY] = 0x02E2E, + [DEGREE] = 0x000B0 + }; +#endif // UNICODEMAP_ENABLE diff --git a/users/bocaj/tap_dances.c b/users/bocaj/tap_dances.c index 10767db453..a9628a345d 100644 --- a/users/bocaj/tap_dances.c +++ b/users/bocaj/tap_dances.c @@ -1,4 +1,3 @@ -#include "bocaj.h" #include "tap_dances.h" diff --git a/users/bocaj/tap_dances.h b/users/bocaj/tap_dances.h index 8935753f6c..5b1277ec58 100644 --- a/users/bocaj/tap_dances.h +++ b/users/bocaj/tap_dances.h @@ -1,3 +1,6 @@ +#pragma once +#include "bocaj.h" + //define diablo macro timer variables extern uint16_t diablo_timer[4]; extern uint8_t diablo_times[]; @@ -5,3 +8,12 @@ extern uint8_t diablo_key_time[4]; void run_diablo_macro_check(void); + +#ifdef TAP_DANCE_ENABLE +enum { + TD_D3_1 = 0, + TD_D3_2, + TD_D3_3, + TD_D3_4 +}; +#endif // TAP_DANCE_ENABLE diff --git a/users/bocaj/wrappers.h b/users/bocaj/wrappers.h new file mode 100644 index 0000000000..379edaad29 --- /dev/null +++ b/users/bocaj/wrappers.h @@ -0,0 +1,37 @@ +#pragma once +#include "bocaj.h" + +#if (!defined(LAYOUT) && defined(KEYMAP)) +#define LAYOUT KEYMAP +#endif + +#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) +#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) + +#define _________________QWERTY_L1__________________ KC_Q, KC_W, KC_E, KC_R, KC_T +#define _________________QWERTY_L2__________________ KC_A, KC_S, GUI_CTR(0, KC_D), KC_F, KC_G +#define _________________QWERTY_L3__________________ KC_Z, KC_X, KC_C, KC_V, KC_B + +#define _________________QWERTY_R1__________________ KC_Y, KC_U, KC_I, KC_O, KC_P +#define _________________QWERTY_R2__________________ KC_H, KC_J, GUI_CTR(0, KC_K), KC_L, KC_SCLN +#define _________________QWERTY_R3__________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH + +// Hardware Driven Workman +#define _________________WORKMAN_L1_________________ KC_Q, KC_D, KC_R, KC_W, KC_B +#define _________________WORKMAN_L2_________________ KC_A, KC_S, GUI_CTR(0, KC_H), KC_T, KC_G // GUI_CTR(0, kc) behaves as GUI_T(kc) +#define ________________WWORKMAN_L2_________________ KC_A, KC_S, GUI_CTR(1, KC_H), KC_T, KC_G // GUI_CTR(1, kc) behaves as CTR_T(kc) +#define _________________WORKMAN_L3_________________ KC_Z, KC_X, KC_M, KC_C, KC_V + +#define _________________WORKMAN_R1_________________ KC_J, KC_F, KC_U, KC_P, KC_SCLN +#define _________________WORKMAN_R2_________________ KC_Y, KC_N, GUI_CTR(0, KC_E), KC_O, KC_I // GUI_CTR(0, kc) behaves as GUI_T(kc) +#define ________________WWORKMAN_R2_________________ KC_Y, KC_N, GUI_CTR(1, KC_E), KC_O, KC_I // GUI_CTR(1, kc) behaves as CTR_T(kc) +#define _________________WORKMAN_R3_________________ KC_K, KC_L, KC_COMM, KC_DOT, KC_SLASH + + +#define __________________NUMBER_LEFT_______________ KC_1, KC_2, KC_3, KC_4, KC_5 +#define __________________NUMBER_RIGHT______________ KC_6, KC_7, KC_8, KC_9, KC_0 + +#define __________________FUNCTION_LEFT_____________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 +#define __________________FUNCTION_RIGHT____________ KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 + +#define ____________________BLANK___________________ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS -- cgit v1.2.3 From e76bf17d36c3e23d4c780ab7dd0a10b5883889a2 Mon Sep 17 00:00:00 2001 From: Konstantin Đorđević Date: Thu, 3 Jan 2019 17:13:55 +0100 Subject: Remove redundant, language-specific aliases for KC_ALGR (#4720) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Use standard KC_ALGR, remove language-specific redefinitions * Use ALGR instead of ALTGR in BÉPO and Canadian multilingual keymaps * Remove BE_LALT, BE_LGUI aliases --- keyboards/contra/keymaps/maxr1998/keymap.c | 4 +- keyboards/ergodox_ez/keymaps/skug/keymap.c | 2 +- .../handwired/reddot/keymaps/default/keymap.c | 4 +- keyboards/lets_split/keymaps/DE_simple/keymap.c | 2 +- keyboards/planck/keymaps/skug/keymap.c | 2 +- keyboards/preonic/keymaps/jacwib/keymap.c | 4 +- keyboards/satan/keymaps/dende_iso/keymap.c | 2 +- keyboards/xd75/keymaps/germanized/config.h | 3 - layouts/community/ergodox/bepo/keymap.c | 2 +- layouts/community/ergodox/bepo_csa/keymap.c | 12 +- .../community/ergodox/dvorak_svorak_a5/keymap.c | 2 +- layouts/community/ergodox/swedish-lindhe/keymap.c | 2 +- layouts/community/ergodox/swedish/keymap.c | 2 +- quantum/keymap_extras/keymap_belgian.h | 6 - quantum/keymap_extras/keymap_bepo.h | 150 ++++++++++----------- .../keymap_extras/keymap_canadian_multilingual.h | 46 +++---- quantum/keymap_extras/keymap_fr_ch.h | 3 - quantum/keymap_extras/keymap_french.h | 3 - quantum/keymap_extras/keymap_german.h | 3 - quantum/keymap_extras/keymap_german_ch.h | 3 - quantum/keymap_extras/keymap_hungarian.h | 3 - quantum/keymap_extras/keymap_italian.h | 6 - quantum/keymap_extras/keymap_neo2.h | 2 +- quantum/keymap_extras/keymap_nordic.h | 3 - quantum/keymap_extras/keymap_slovenian.h | 3 - quantum/keymap_extras/keymap_spanish.h | 3 - quantum/keymap_extras/keymap_uk.h | 3 - users/spacebarracecar/spacebarracecar.c | 4 +- users/spacebarracecar/spacebarracecar.h | 4 +- 29 files changed, 116 insertions(+), 172 deletions(-) (limited to 'layouts') diff --git a/keyboards/contra/keymaps/maxr1998/keymap.c b/keyboards/contra/keymaps/maxr1998/keymap.c index 87bf338948..4d731c08b4 100644 --- a/keyboards/contra/keymaps/maxr1998/keymap.c +++ b/keyboards/contra/keymaps/maxr1998/keymap.c @@ -127,11 +127,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; case NR_L3: if (record->event.pressed) { - register_code(DE_ALGR); + register_code(KC_ALGR); layer_on(_NUMROW_L3); } else { layer_off(_NUMROW_L3); - unregister_code(DE_ALGR); + unregister_code(KC_ALGR); } return false; default: diff --git a/keyboards/ergodox_ez/keymaps/skug/keymap.c b/keyboards/ergodox_ez/keymaps/skug/keymap.c index d17990481e..b3696f3a98 100644 --- a/keyboards/ergodox_ez/keymaps/skug/keymap.c +++ b/keyboards/ergodox_ez/keymaps/skug/keymap.c @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AA, KC_H, KC_J, KC_K, KC_L, LT(MDIA, NO_OSLH), LT(SYMB, NO_AE), KC_WFWD, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, KC_RSPC, - KC_SPC, KC_BSPC, NO_ALGR, NO_ASTR, CTL_T(NO_TILD), + KC_SPC, KC_BSPC, KC_ALGR, NO_ASTR, CTL_T(NO_TILD), KC_HOME, NO_CIRC, KC_PGUP, KC_UP, KC_DOWN, KC_LGUI, ALT_T(KC_ESC), CTL_T(KC_ENT) diff --git a/keyboards/handwired/reddot/keymaps/default/keymap.c b/keyboards/handwired/reddot/keymaps/default/keymap.c index c67cc0e4c5..73aeff2252 100755 --- a/keyboards/handwired/reddot/keymaps/default/keymap.c +++ b/keyboards/handwired/reddot/keymaps/default/keymap.c @@ -8,14 +8,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPACE, KC_DELETE, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_INSERT, KC_HOME, KC_PGUP,\ KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_DELETE, KC_END, KC_PGDOWN, KC_KP_PLUS,\ KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_ENT, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_KP_1, KC_UP, KC_KP_3,\ - FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, FR_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER), + FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER), [1] = KEYMAP( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_FN0, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS,\ KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPACE, KC_DELETE, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_7, KC_8, KC_9,\ KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_4, KC_5, KC_6, KC_KP_PLUS,\ KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_ENT, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_1, KC_2, KC_3,\ - FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, FR_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER), + FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER), }; diff --git a/keyboards/lets_split/keymaps/DE_simple/keymap.c b/keyboards/lets_split/keymaps/DE_simple/keymap.c index d329bea4c0..e801c241e1 100644 --- a/keyboards/lets_split/keymaps/DE_simple/keymap.c +++ b/keyboards/lets_split/keymaps/DE_simple/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, DE_Q, DE_W, DE_E, DE_R, DE_T, DE_Z, DE_U, DE_I, DE_O, DE_P, KC_BSPC, \ KC_TAB, DE_A, DE_S, DE_D, DE_F, DE_G, DE_H, DE_J, DE_K, DE_L, DE_PLUS, DE_HASH, \ KC_LSFT, DE_Y, DE_X, DE_C, DE_V, DE_B, DE_N, DE_M, DE_COMM, DE_DOT, DE_MINS, KC_ENT , \ - KC_LCTL, KC_LALT, DE_ALGR, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + KC_LCTL, KC_LALT, KC_ALGR, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ ), /* Lower diff --git a/keyboards/planck/keymaps/skug/keymap.c b/keyboards/planck/keymaps/skug/keymap.c index 29324a09e4..86a1de767b 100644 --- a/keyboards/planck/keymaps/skug/keymap.c +++ b/keyboards/planck/keymaps/skug/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NO_AA , UTILITY, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , NO_OSLH, NO_AE , KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , NO_MINS, KC_RSPC, - LFT_CTR, KC_LALT, KC_LGUI, NO_AT , ESC_LOW, KC_ENT , KC_SPC , BSP_RAI, _______, NO_ALGR, NO_ASTR, RGT_CTR + LFT_CTR, KC_LALT, KC_LGUI, NO_AT , ESC_LOW, KC_ENT , KC_SPC , BSP_RAI, _______, KC_ALGR, NO_ASTR, RGT_CTR ), /* Raise diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c index 0b63abce17..ffd5889455 100644 --- a/keyboards/preonic/keymaps/jacwib/keymap.c +++ b/keyboards/preonic/keymaps/jacwib/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AM, \ KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_AE, NO_OSLH, \ KC_LSFT, NO_LESS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, NO_MINS, \ - KC_LCTL, KC_LALT, KC_LGUI, NO_ALGR, LOWER, KC_SPC, KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + KC_LCTL, KC_LALT, KC_LGUI, KC_ALGR, LOWER, KC_SPC, KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ ), /* Lower @@ -109,7 +109,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AM, \ KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_AE, NO_OSLH, \ KC_LSFT, NO_LESS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, NO_MINS, \ - KC_LCTL, KC_LALT, KC_LGUI, NO_ALGR, MLOWER, KC_SPC, KC_ENT, MRAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + KC_LCTL, KC_LALT, KC_LGUI, KC_ALGR, MLOWER, KC_SPC, KC_ENT, MRAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ ), /* Mac Lower diff --git a/keyboards/satan/keymaps/dende_iso/keymap.c b/keyboards/satan/keymaps/dende_iso/keymap.c index 205e9cb77d..be1bfd23aa 100644 --- a/keyboards/satan/keymaps/dende_iso/keymap.c +++ b/keyboards/satan/keymaps/dende_iso/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, DE_Z, KC_U, KC_I, KC_O, KC_P, DE_UE, DE_PLUS, \ FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, DE_OE, DE_AE, DE_HASH, KC_ENT, \ KC_LSFT, DE_LESS, DE_Y, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, DE_MINS, KC_RSFT, KC_DELETE, \ - KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, DE_ALGR, KC_RGUI, KC_APP, KC_RCTL), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_ALGR, KC_RGUI, KC_APP, KC_RCTL), /* Keymap _FNK: Function Keys diff --git a/keyboards/xd75/keymaps/germanized/config.h b/keyboards/xd75/keymaps/germanized/config.h index 379b954714..dd3f32275b 100644 --- a/keyboards/xd75/keymaps/germanized/config.h +++ b/keyboards/xd75/keymaps/germanized/config.h @@ -27,9 +27,6 @@ //Tap Dancing #define TAPPING_TERM 200 -// Alt gr -#define DE_ALGR KC_RALT - // normal characters #define DE_Z KC_Y #define DE_Y KC_Z diff --git a/layouts/community/ergodox/bepo/keymap.c b/layouts/community/ergodox/bepo/keymap.c index c33c3c2550..6ea8cba681 100644 --- a/layouts/community/ergodox/bepo/keymap.c +++ b/layouts/community/ergodox/bepo/keymap.c @@ -50,7 +50,7 @@ KC_ESC, KC_INS, KC_LGUI, KC_LCTL, KC_LALT, KC_CAPSLOCK, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z, BP_C, BP_T, BP_S, BP_R, BP_N, BP_M, KC_NUMLOCK, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED, - BP_ALGR, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE, + KC_ALGR, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE, DF(AZ_B), DF(BEPO), MO(NUMK), MO(FNAV), KC_RSHIFT, KC_ENTER), diff --git a/layouts/community/ergodox/bepo_csa/keymap.c b/layouts/community/ergodox/bepo_csa/keymap.c index 9526ea3f77..125301d443 100644 --- a/layouts/community/ergodox/bepo_csa/keymap.c +++ b/layouts/community/ergodox/bepo_csa/keymap.c @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z, BP_C, BP_T, BP_S, BP_R, BP_N, BP_M, KC_ENT, BP_APOS, BP_Q, BP_G, BP_H, BP_F, KC_RSFT, - BP_ALGR, BP_PERC, KC_APP, BP_CCED, KC_RCTL, + KC_ALGR, BP_PERC, KC_APP, BP_CCED, KC_RCTL, KC_LEFT, KC_RGHT, KC_UP, @@ -449,14 +449,14 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) register_code(KC_1 + (id - M_1)); break; case M_DEGR: - return MACRO(DOWN(CSA_ALTGR), D(SCLN), END); + return MACRO(DOWN(KC_ALGR), D(SCLN), END); case M_SCLN: return MACRO(D(SCLN), END); case M_GRV: - return MACRO(I(75), DOWN(CSA_ALTGR), TYPE(CSA_DCRC), UP(CSA_ALTGR), T(SPACE), END); + return MACRO(I(75), DOWN(KC_ALGR), TYPE(CSA_DCRC), UP(KC_ALGR), T(SPACE), END); case M_NBSP: // use weak mod such that pressing another key will not be affected - add_weak_mods(MOD_BIT(CSA_ALTGR)); + add_weak_mods(MOD_BIT(KC_ALGR)); return MACRO(D(SPACE), END); } } else { @@ -466,11 +466,11 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) unregister_code(KC_1 + (id - M_1)); break; case M_DEGR: - return MACRO(UP(CSA_ALTGR), U(SCLN), END); + return MACRO(UP(KC_ALGR), U(SCLN), END); case M_SCLN: return MACRO(U(SCLN), END); case M_NBSP: - del_weak_mods(MOD_BIT(CSA_ALTGR)); + del_weak_mods(MOD_BIT(KC_ALGR)); return MACRO(U(SPACE), END); } } diff --git a/layouts/community/ergodox/dvorak_svorak_a5/keymap.c b/layouts/community/ergodox/dvorak_svorak_a5/keymap.c index 2668fce866..98df732893 100644 --- a/layouts/community/ergodox/dvorak_svorak_a5/keymap.c +++ b/layouts/community/ergodox/dvorak_svorak_a5/keymap.c @@ -171,7 +171,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AA, KC_H, KC_J, KC_K, KC_L, NO_OSLH, NO_AE, KC_DELT, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, KC_RSFT, - NO_ALGR, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, + KC_ALGR, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_ENT, KC_SPACE diff --git a/layouts/community/ergodox/swedish-lindhe/keymap.c b/layouts/community/ergodox/swedish-lindhe/keymap.c index e977ab9948..a46408793a 100644 --- a/layouts/community/ergodox/swedish-lindhe/keymap.c +++ b/layouts/community/ergodox/swedish-lindhe/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AA, KC_H, KC_J, KC_K, KC_L, NO_OSLH, NO_AE, KC_DELT, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, KC_RSFT, - NO_ALGR, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, + KC_ALGR, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_TAB, LT(MDIA, KC_ENT) diff --git a/layouts/community/ergodox/swedish/keymap.c b/layouts/community/ergodox/swedish/keymap.c index d2b9b40d1f..0cda8511f7 100644 --- a/layouts/community/ergodox/swedish/keymap.c +++ b/layouts/community/ergodox/swedish/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_H, KC_J, KC_K, KC_L, LT(MDIA, NO_OSLH), GUI_T(NO_AE), MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(NO_MINS), KC_RSFT, KC_UP, KC_DOWN, NO_CIRC, NO_ASTR, KC_FN1, - NO_ALGR, CTL_T(KC_ESC), + KC_ALGR, CTL_T(KC_ESC), KC_PGUP, KC_PGDN,KC_TAB, KC_ENT ), diff --git a/quantum/keymap_extras/keymap_belgian.h b/quantum/keymap_extras/keymap_belgian.h index 573fa2e8a4..ab89fbabfe 100644 --- a/quantum/keymap_extras/keymap_belgian.h +++ b/quantum/keymap_extras/keymap_belgian.h @@ -18,12 +18,6 @@ #include "keymap.h" -#define BE_LGUI KC_LALT -#define BE_LALT KC_LGUI - -// Alt gr -#define BE_ALGR KC_RALT - // Normal characters // Line 1 #define BE_SUP2 KC_GRV diff --git a/quantum/keymap_extras/keymap_bepo.h b/quantum/keymap_extras/keymap_bepo.h index e6545a7a83..8d7b36ca3d 100644 --- a/quantum/keymap_extras/keymap_bepo.h +++ b/quantum/keymap_extras/keymap_bepo.h @@ -19,12 +19,6 @@ #include "keymap.h" -// Alt gr -#ifndef ALTGR -#define ALTGR(kc) ALGR(kc) -#endif -#define BP_ALGR KC_RALT - // Normal characters // First row (on usual keyboards) #define BP_DOLLAR KC_GRAVE // $ @@ -139,138 +133,138 @@ // AltGr-ed characters // First row -#define BP_EN_DASH ALTGR(BP_DOLLAR) // – +#define BP_EN_DASH ALGR(BP_DOLLAR) // – #define BP_NDSH BP_EN_DASH -#define BP_EM_DASH ALTGR(KC_1) // — +#define BP_EM_DASH ALGR(KC_1) // — #define BP_MDSH BP_EM_DASH -#define BP_LESS ALTGR(KC_2) // < -#define BP_GREATER ALTGR(KC_3) // > +#define BP_LESS ALGR(KC_2) // < +#define BP_GREATER ALGR(KC_3) // > #define BP_GRTR BP_GREATER -#define BP_LBRACKET ALTGR(KC_4) // [ +#define BP_LBRACKET ALGR(KC_4) // [ #define BP_LBRC BP_LBRACKET -#define BP_RBRACKET ALTGR(KC_5) // ] +#define BP_RBRACKET ALGR(KC_5) // ] #define BP_RBRC BP_RBRACKET -#define BP_CIRCUMFLEX ALTGR(KC_6) // ^ +#define BP_CIRCUMFLEX ALGR(KC_6) // ^ #define BP_CIRC BP_CIRCUMFLEX -#define BP_PLUS_MINUS ALTGR(KC_7) // ± +#define BP_PLUS_MINUS ALGR(KC_7) // ± #define BP_PSMS BP_PLUS_MINUS -#define BP_MATH_MINUS ALTGR(KC_8) // − +#define BP_MATH_MINUS ALGR(KC_8) // − #define BP_MMNS BP_MATH_MINUS -#define BP_OBELUS ALTGR(KC_9) // ÷ +#define BP_OBELUS ALGR(KC_9) // ÷ #define BP_OBEL BP_OBELUS // more conventional name of the symbol #define BP_DIVISION_SIGN BP_OBELUS #define BP_DVSN BP_DIVISION_SIGN -#define BP_TIMES ALTGR(KC_0) // × +#define BP_TIMES ALGR(KC_0) // × #define BP_TIMS BP_TIMES -#define BP_DIFFERENT ALTGR(BP_EQUAL) // ≠ +#define BP_DIFFERENT ALGR(BP_EQUAL) // ≠ #define BP_DIFF BP_DIFFERENT -#define BP_PERMILLE ALTGR(BP_PERCENT) // ‰ +#define BP_PERMILLE ALGR(BP_PERCENT) // ‰ #define BP_PMIL BP_PERMILLE // Second row -#define BP_PIPE ALTGR(BP_B) // | -#define BP_DEAD_ACUTE ALTGR(BP_E_ACUTE) // dead ´ +#define BP_PIPE ALGR(BP_B) // | +#define BP_DEAD_ACUTE ALGR(BP_E_ACUTE) // dead ´ #define BP_DACT BP_DEAD_ACUTE -#define BP_AMPERSAND ALTGR(BP_P) // & +#define BP_AMPERSAND ALGR(BP_P) // & #define BP_AMPR BP_AMPERSAND -#define BP_OE_LIGATURE ALTGR(BP_O) // œ +#define BP_OE_LIGATURE ALGR(BP_O) // œ #define BP_OE BP_OE_LIGATURE -#define BP_DEAD_GRAVE ALTGR(BP_E_GRAVE) // ` +#define BP_DEAD_GRAVE ALGR(BP_E_GRAVE) // ` #define BP_DGRV BP_DEAD_GRAVE -#define BP_INVERTED_EXCLAIM ALTGR(BP_DEAD_CIRCUMFLEX) // ¡ +#define BP_INVERTED_EXCLAIM ALGR(BP_DEAD_CIRCUMFLEX) // ¡ #define BP_IXLM BP_INVERTED_EXCLAIM -#define BP_DEAD_CARON ALTGR(BP_V) // dead ˇ +#define BP_DEAD_CARON ALGR(BP_V) // dead ˇ #define BP_DCAR BP_DEAD_CARON -#define BP_ETH ALTGR(BP_D) // ð -#define BP_DEAD_SLASH ALTGR(BP_L) // dead / +#define BP_ETH ALGR(BP_D) // ð +#define BP_DEAD_SLASH ALGR(BP_L) // dead / #define BP_DSLH BP_DEAD_SLASH -#define BP_IJ_LIGATURE ALTGR(BP_J) // ij +#define BP_IJ_LIGATURE ALGR(BP_J) // ij #define BP_IJ BP_IJ_LIGATURE -#define BP_SCHWA ALTGR(BP_Z) // ə +#define BP_SCHWA ALGR(BP_Z) // ə #define BP_SCWA BP_SCHWA -#define BP_DEAD_BREVE ALTGR(BP_W) // dead ˘ +#define BP_DEAD_BREVE ALGR(BP_W) // dead ˘ #define BP_DBRV BP_DEAD_BREVE // Third row -#define BP_AE_LIGATURE ALTGR(BP_A) // æ +#define BP_AE_LIGATURE ALGR(BP_A) // æ #define BP_AE BP_AE_LIGATURE -#define BP_U_GRAVE ALTGR(BP_U) // ù +#define BP_U_GRAVE ALGR(BP_U) // ù #define BP_UGRV BP_U_GRAVE -#define BP_DEAD_TREMA ALTGR(BP_I) // dead ¨ (trema/umlaut/diaresis) +#define BP_DEAD_TREMA ALGR(BP_I) // dead ¨ (trema/umlaut/diaresis) #define BP_DTRM BP_DEAD_TREMA -#define BP_EURO ALTGR(BP_E) // € -#define BP_TYPOGRAPHICAL_APOSTROPHE ALTGR(BP_COMMA) // ’ +#define BP_EURO ALGR(BP_E) // € +#define BP_TYPOGRAPHICAL_APOSTROPHE ALGR(BP_COMMA) // ’ #define BP_TAPO BP_TYPOGRAPHICAL_APOSTROPHE -#define BP_COPYRIGHT ALTGR(BP_C) // © +#define BP_COPYRIGHT ALGR(BP_C) // © #define BP_CPRT BP_COPYRIGHT -#define BP_THORN ALTGR(BP_T) // þ +#define BP_THORN ALGR(BP_T) // þ #define BP_THRN BP_THORN -#define BP_SHARP_S ALTGR(BP_S) // ß +#define BP_SHARP_S ALGR(BP_S) // ß #define BP_SRPS BP_SHARP_S -#define BP_REGISTERED_TRADEMARK ALTGR(BP_R) // ® +#define BP_REGISTERED_TRADEMARK ALGR(BP_R) // ® #define BP_RTM BP_REGISTERED_TRADEMARK -#define BP_DEAD_TILDE ALTGR(BP_N) // dead ~ +#define BP_DEAD_TILDE ALGR(BP_N) // dead ~ #define BP_DTLD BP_DEAD_TILDE -#define BP_DEAD_MACRON ALTGR(BP_M) // dead ¯ +#define BP_DEAD_MACRON ALGR(BP_M) // dead ¯ #define BP_DMCR BP_DEAD_MACRON -#define BP_DEAD_CEDILLA ALTGR(BP_C_CEDILLA) // dead ¸ +#define BP_DEAD_CEDILLA ALGR(BP_C_CEDILLA) // dead ¸ #define BP_DCED BP_DEAD_CEDILLA // Fourth row -#define BP_NONUS_SLASH ALTGR(BP_E_CIRCUMFLEX) // / on non-us backslash key (102nd key, ê in bépo) +#define BP_NONUS_SLASH ALGR(BP_E_CIRCUMFLEX) // / on non-us backslash key (102nd key, ê in bépo) #define BP_NUSL BP_NONUS_SLASH -#define BP_BACKSLASH ALTGR(BP_A_GRAVE) /* \ */ +#define BP_BACKSLASH ALGR(BP_A_GRAVE) /* \ */ #define BP_BSLS BP_BACKSLASH -#define BP_LEFT_CURLY_BRACE ALTGR(BP_Y) // { +#define BP_LEFT_CURLY_BRACE ALGR(BP_Y) // { #define BP_LCBR BP_LEFT_CURLY_BRACE -#define BP_RIGHT_CURLY_BRACE ALTGR(BP_X) // } +#define BP_RIGHT_CURLY_BRACE ALGR(BP_X) // } #define BP_RCBR BP_RIGHT_CURLY_BRACE -#define BP_ELLIPSIS ALTGR(BP_DOT) // … +#define BP_ELLIPSIS ALGR(BP_DOT) // … #define BP_ELPS BP_ELLIPSIS -#define BP_TILDE ALTGR(BP_K) // ~ +#define BP_TILDE ALGR(BP_K) // ~ #define BP_TILD BP_TILDE -#define BP_INVERTED_QUESTION ALTGR(BP_QUESTION) // ¿ +#define BP_INVERTED_QUESTION ALGR(BP_QUESTION) // ¿ #define BP_IQST BP_INVERTED_QUESTION -#define BP_DEAD_RING ALTGR(BP_Q) // dead ° +#define BP_DEAD_RING ALGR(BP_Q) // dead ° #define BP_DRNG BP_DEAD_RING -#define BP_DEAD_GREEK ALTGR(BP_G) // dead Greek key (following key will make a Greek letter) +#define BP_DEAD_GREEK ALGR(BP_G) // dead Greek key (following key will make a Greek letter) #define BP_DGRK BP_DEAD_GREEK -#define BP_DAGGER ALTGR(BP_H) // † +#define BP_DAGGER ALGR(BP_H) // † #define BP_DAGR BP_DAGGER -#define BP_DEAD_OGONEK ALTGR(BP_F) // dead ˛ +#define BP_DEAD_OGONEK ALGR(BP_F) // dead ˛ #define BP_DOGO BP_DEAD_OGONEK // Space bar -#define BP_UNDERSCORE ALTGR(KC_SPACE) // _ +#define BP_UNDERSCORE ALGR(KC_SPACE) // _ #define BP_UNDS BP_UNDERSCORE // AltGr-Shifted characters (different from capitalised AltGr-ed characters) // First row -#define BP_PARAGRAPH ALTGR(BP_HASH) // ¶ +#define BP_PARAGRAPH ALGR(BP_HASH) // ¶ #define BP_PARG BP_PARAGRAPH -#define BP_LOW_DOUBLE_QUOTE ALTGR(BP_1) // „ +#define BP_LOW_DOUBLE_QUOTE ALGR(BP_1) // „ #define BP_LWQT BP_LOW_DOUBLE_QUOTE -#define BP_LEFT_DOUBLE_QUOTE ALTGR(BP_2) // “ +#define BP_LEFT_DOUBLE_QUOTE ALGR(BP_2) // “ #define BP_LDQT BP_LEFT_DOUBLE_QUOTE -#define BP_RIGHT_DOUBLE_QUOTE ALTGR(BP_3) // ” +#define BP_RIGHT_DOUBLE_QUOTE ALGR(BP_3) // ” #define BP_RDQT BP_RIGHT_DOUBLE_QUOTE -#define BP_LESS_OR_EQUAL ALTGR(BP_4) // ≤ +#define BP_LESS_OR_EQUAL ALGR(BP_4) // ≤ #define BP_LEQL BP_LESS_OR_EQUAL -#define BP_GREATER_OR_EQUAL ALTGR(BP_5) // ≥ +#define BP_GREATER_OR_EQUAL ALGR(BP_5) // ≥ #define BP_GEQL BP_GREATER_OR_EQUAL -// nothing on ALTGR(BP_6) -#define BP_NEGATION ALTGR(BP_7) // ¬ +// nothing on ALGR(BP_6) +#define BP_NEGATION ALGR(BP_7) // ¬ #define BP_NEGT BP_NEGATION -#define BP_ONE_QUARTER ALTGR(BP_8) // ¼ +#define BP_ONE_QUARTER ALGR(BP_8) // ¼ #define BP_1QRT BP_ONE_QUARTER -#define BP_ONE_HALF ALTGR(BP_9) // ½ +#define BP_ONE_HALF ALGR(BP_9) // ½ #define BP_1HLF BP_ONE_HALF -#define BP_THREE_QUARTERS ALTGR(BP_0) // ¾ +#define BP_THREE_QUARTERS ALGR(BP_0) // ¾ #define BP_3QRT BP_THREE_QUARTERS -#define BP_MINUTES ALTGR(BP_DEGREE) // ′ +#define BP_MINUTES ALGR(BP_DEGREE) // ′ #define BP_MNUT BP_MINUTES -#define BP_SECONDS ALTGR(BP_GRAVE) // ″ +#define BP_SECONDS ALGR(BP_GRAVE) // ″ #define BP_SCND BP_SECONDS // Second row @@ -278,7 +272,7 @@ #define BP_BPIP BP_BROKEN_PIPE #define BP_DEAD_DOUBLE_ACUTE LSFT(BP_DEAD_ACUTE) // ˝ #define BP_DDCT BP_DEAD_DOUBLE_ACUTE -#define BP_SECTION ALTGR(LSFT(BP_P)) // § +#define BP_SECTION ALGR(LSFT(BP_P)) // § #define BP_SECT BP_SECTION // LSFT(BP_DEAD_GRAVE) is actually the same character as LSFT(BP_PERCENT) #define BP_GRAVE_BIS LSFT(BP_DEAD_GRAVE) // ` @@ -289,35 +283,35 @@ #define BP_DDTA BP_DEAD_DOT_ABOVE #define BP_DEAD_CURRENCY LSFT(BP_EURO) // dead ¤ (next key will generate a currency code like ¥ or £) #define BP_DCUR BP_DEAD_CURRENCY -#define BP_DEAD_HORN LSFT(ALTGR(BP_COMMA)) // dead ̛ +#define BP_DEAD_HORN LSFT(ALGR(BP_COMMA)) // dead ̛ #define BP_DHRN BP_DEAD_HORN -#define BP_LONG_S LSFT(ALTGR(BP_C)) // ſ +#define BP_LONG_S LSFT(ALGR(BP_C)) // ſ #define BP_LNGS BP_LONG_S #define BP_TRADEMARK LSFT(BP_REGISTERED_TRADEMARK) // ™ #define BP_TM BP_TRADEMARK -#define BP_ORDINAL_INDICATOR_O LSFT(ALTGR(BP_M)) // º +#define BP_ORDINAL_INDICATOR_O LSFT(ALGR(BP_M)) // º #define BP_ORDO BP_ORDINAL_INDICATOR_O #define BP_DEAD_COMMA LSFT(BP_DEAD_CEDILLA) // dead ˛ #define BP_DCOM BP_DEAD_COMMA // Fourth row -#define BP_LEFT_QUOTE LSFT(ALTGR(BP_Y)) // ‘ +#define BP_LEFT_QUOTE LSFT(ALGR(BP_Y)) // ‘ #define BP_LQOT BP_LEFT_QUOTE -#define BP_RIGHT_QUOTE LSFT(ALTGR(BP_X)) // ’ +#define BP_RIGHT_QUOTE LSFT(ALGR(BP_X)) // ’ #define BP_RQOT BP_RIGHT_QUOTE -#define BP_INTERPUNCT LSFT(ALTGR(BP_DOT)) // · +#define BP_INTERPUNCT LSFT(ALGR(BP_DOT)) // · #define BP_IPCT BP_INTERPUNCT -#define BP_DEAD_HOOK_ABOVE LSFT(ALTGR(BP_QUESTION)) // dead ̉ +#define BP_DEAD_HOOK_ABOVE LSFT(ALGR(BP_QUESTION)) // dead ̉ #define BP_DHKA BP_DEAD_HOOK_ABOVE #define BP_DEAD_UNDERDOT LSFT(BP_DEAD_RING) // dead ̣ #define BP_DUDT BP_DEAD_UNDERDOT #define BP_DOUBLE_DAGGER LSFT(BP_DAGGER) // ‡ #define BP_DDGR BP_DOUBLE_DAGGER -#define BP_ORDINAL_INDICATOR_A LSFT(ALTGR(BP_F)) // ª +#define BP_ORDINAL_INDICATOR_A LSFT(ALGR(BP_F)) // ª #define BP_ORDA BP_ORDINAL_INDICATOR_A // Space bar -#define BP_NARROW_NON_BREAKING_SPACE ALTGR(BP_NON_BREAKING_SPACE) +#define BP_NARROW_NON_BREAKING_SPACE ALGR(BP_NON_BREAKING_SPACE) #define BP_NNBS BP_NARROW_NON_BREAKING_SPACE #endif diff --git a/quantum/keymap_extras/keymap_canadian_multilingual.h b/quantum/keymap_extras/keymap_canadian_multilingual.h index fbeef21874..2b5b95d6fa 100644 --- a/quantum/keymap_extras/keymap_canadian_multilingual.h +++ b/quantum/keymap_extras/keymap_canadian_multilingual.h @@ -13,19 +13,11 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -#ifndef KEYMAP_CANADIAN_MULTILINGUAG_H -#define KEYMAP_CANADIAN_MULTILINGUAG_H +#ifndef KEYMAP_CANADIAN_MULTILINGUAL_H +#define KEYMAP_CANADIAN_MULTILINGUAL_H #include "keymap.h" -// Alt gr -#ifndef ALTGR -#define ALTGR(kc) ALGR(kc) -#endif - -#define CSA_ALTGR KC_RALT -#define CSA_ALGR CSA_ALTGR - #ifndef GR2A #define GR2A(kc) RCTL(kc) #endif @@ -75,43 +67,43 @@ // Alt Gr-ed characters // First row -#define CSA_PIPE ALTGR(CSA_SLASH) // | -#define CSA_CURRENCY ALTGR(KC_4) // ¤ +#define CSA_PIPE ALGR(CSA_SLASH) // | +#define CSA_CURRENCY ALGR(KC_4) // ¤ #define CSA_CURR CSA_CURRENCY -#define CSA_LEFT_CURLY_BRACE ALTGR(KC_7) // { +#define CSA_LEFT_CURLY_BRACE ALGR(KC_7) // { #define CSA_LCBR CSA_LEFT_CURLY_BRACE -#define CSA_RIGHT_CURLY_BRACE ALTGR(KC_8) // } +#define CSA_RIGHT_CURLY_BRACE ALGR(KC_8) // } #define CSA_RCBR CSA_RIGHT_CURLY_BRACE -#define CSA_LBRACKET ALTGR(KC_9) // [ +#define CSA_LBRACKET ALGR(KC_9) // [ #define CSA_LBRC CSA_LBRACKET -#define CSA_RBRACKET ALTGR(KC_0) // ] +#define CSA_RBRACKET ALGR(KC_0) // ] #define CSA_RBRC CSA_RBRACKET -#define CSA_NEGATION ALTGR(KC_EQUAL) // ¬ +#define CSA_NEGATION ALGR(KC_EQUAL) // ¬ #define CSA_NEGT CSA_NEGATION // Second row // euro symbol not available on Linux? (X.org) -#define CSA_EURO ALTGR(KC_E) // € -#define CSA_DEAD_GRAVE ALTGR(CSA_DEAD_CIRCUMFLEX) +#define CSA_EURO ALGR(KC_E) // € +#define CSA_DEAD_GRAVE ALGR(CSA_DEAD_CIRCUMFLEX) #define CSA_DGRV CSA_DEAD_GRAVE // dead ` -#define CSA_DEAD_TILDE ALTGR(CSA_C_CEDILLA) // ~ +#define CSA_DEAD_TILDE ALGR(CSA_C_CEDILLA) // ~ #define CSA_DTLD CSA_DEAD_TILDE // Third row -#define CSA_DEGREE ALTGR(KC_SCOLON) // ° +#define CSA_DEGREE ALGR(KC_SCOLON) // ° #define CSA_DEGR CSA_DEGREE // Fourth row -#define CSA_LEFT_GUILLEMET ALTGR(KC_Z) // « +#define CSA_LEFT_GUILLEMET ALGR(KC_Z) // « #define CSA_LGIL CSA_LEFT_GUILLEMET -#define CSA_RIGHT_GUILLEMET ALTGR(KC_X) // » +#define CSA_RIGHT_GUILLEMET ALGR(KC_X) // » #define CSA_RGIL CSA_RIGHT_GUILLEMET -#define CSA_LESS ALTGR(KC_COMMA) // < -#define CSA_GREATER ALTGR(KC_DOT) // > +#define CSA_LESS ALGR(KC_COMMA) // < +#define CSA_GREATER ALGR(KC_DOT) // > #define CSA_GRTR CSA_GREATER // Space bar -#define CSA_NON_BREAKING_SPACE ALTGR(KC_SPACE) +#define CSA_NON_BREAKING_SPACE ALGR(KC_SPACE) #define CSA_NBSP CSA_NON_BREAKING_SPACE // GR2A-ed characters @@ -198,7 +190,7 @@ // nothing on 2 #define CSA_POUND GR2A(LSFT(KC_3)) // £ #define CSA_GBP CSA_POUND_SIGN -// already on ALTGR(KC_E) +// already on ALGR(KC_E) #define CSA_EURO_BIS GR2A(LSFT(KC_4)) // € #define CSA_EURB CSA_EURO_BIS #define CSA_THREE_EIGHTHS GR2A(LSFT(KC_5)) // ⅜ diff --git a/quantum/keymap_extras/keymap_fr_ch.h b/quantum/keymap_extras/keymap_fr_ch.h index 4eeca7209f..69f9547bb9 100644 --- a/quantum/keymap_extras/keymap_fr_ch.h +++ b/quantum/keymap_extras/keymap_fr_ch.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define FR_CH_ALGR KC_RALT - // normal characters #define FR_CH_Z KC_Y #define FR_CH_Y KC_Z diff --git a/quantum/keymap_extras/keymap_french.h b/quantum/keymap_extras/keymap_french.h index d2de859ee7..bef7754707 100644 --- a/quantum/keymap_extras/keymap_french.h +++ b/quantum/keymap_extras/keymap_french.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define FR_ALGR KC_RALT - // Normal characters #define FR_SUP2 KC_GRV #define FR_AMP KC_1 diff --git a/quantum/keymap_extras/keymap_german.h b/quantum/keymap_extras/keymap_german.h index a215570fd3..0ba3570df7 100644 --- a/quantum/keymap_extras/keymap_german.h +++ b/quantum/keymap_extras/keymap_german.h @@ -19,9 +19,6 @@ #include "keymap.h" -// Alt gr -#define DE_ALGR KC_RALT - // normal characters #define DE_Z KC_Y #define DE_Y KC_Z diff --git a/quantum/keymap_extras/keymap_german_ch.h b/quantum/keymap_extras/keymap_german_ch.h index f0376a17c0..bd1ef89a19 100644 --- a/quantum/keymap_extras/keymap_german_ch.h +++ b/quantum/keymap_extras/keymap_german_ch.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define CH_ALGR KC_RALT - // normal characters #define CH_Z KC_Y #define CH_Y KC_Z diff --git a/quantum/keymap_extras/keymap_hungarian.h b/quantum/keymap_extras/keymap_hungarian.h index cd2dc94cfe..ff43535f38 100644 --- a/quantum/keymap_extras/keymap_hungarian.h +++ b/quantum/keymap_extras/keymap_hungarian.h @@ -19,9 +19,6 @@ #include "keymap.h" -// Alt gr -#define HU_ALGR KC_RALT - // basic letters #define HU_Z KC_Y #define HU_Y KC_Z diff --git a/quantum/keymap_extras/keymap_italian.h b/quantum/keymap_extras/keymap_italian.h index f629081507..fe0f5eb847 100644 --- a/quantum/keymap_extras/keymap_italian.h +++ b/quantum/keymap_extras/keymap_italian.h @@ -19,13 +19,7 @@ #include "keymap.h" -// Alt gr -#define IT_ALGR KC_RALT - // normal characters - - - #define IT_A KC_A #define IT_B KC_B #define IT_C KC_C diff --git a/quantum/keymap_extras/keymap_neo2.h b/quantum/keymap_extras/keymap_neo2.h index 174f4a6eec..818a739c76 100644 --- a/quantum/keymap_extras/keymap_neo2.h +++ b/quantum/keymap_extras/keymap_neo2.h @@ -73,6 +73,6 @@ #define NEO_L1_R DE_HASH #define NEO_L2_L DE_LESS -#define NEO_L2_R DE_ALGR +#define NEO_L2_R KC_ALGR #endif diff --git a/quantum/keymap_extras/keymap_nordic.h b/quantum/keymap_extras/keymap_nordic.h index 4210d37145..551a4212b2 100644 --- a/quantum/keymap_extras/keymap_nordic.h +++ b/quantum/keymap_extras/keymap_nordic.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define NO_ALGR KC_RALT - // Normal characters #define NO_HALF KC_GRV #define NO_PLUS KC_MINS diff --git a/quantum/keymap_extras/keymap_slovenian.h b/quantum/keymap_extras/keymap_slovenian.h index 47f5bceed2..892283e702 100644 --- a/quantum/keymap_extras/keymap_slovenian.h +++ b/quantum/keymap_extras/keymap_slovenian.h @@ -20,9 +20,6 @@ #include "keymap.h" -// Alt gr -#define SI_ALGR KC_RALT - //Swapped Z and Y #define SI_Z KC_Y #define SI_Y KC_Z diff --git a/quantum/keymap_extras/keymap_spanish.h b/quantum/keymap_extras/keymap_spanish.h index 19d12551a6..1f183327f9 100644 --- a/quantum/keymap_extras/keymap_spanish.h +++ b/quantum/keymap_extras/keymap_spanish.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define ES_ALGR KC_RALT - // Normal characters #define ES_OVRR KC_GRV #define ES_APOS KC_MINS diff --git a/quantum/keymap_extras/keymap_uk.h b/quantum/keymap_extras/keymap_uk.h index a7bcd697e0..cc3d0039e2 100644 --- a/quantum/keymap_extras/keymap_uk.h +++ b/quantum/keymap_extras/keymap_uk.h @@ -18,9 +18,6 @@ #include "keymap.h" -// Alt gr -#define UK_ALGR KC_RALT - // Normal characters #define UK_HASH KC_NUHS #define UK_BSLS KC_NUBS diff --git a/users/spacebarracecar/spacebarracecar.c b/users/spacebarracecar/spacebarracecar.c index f7048869ed..130d7dc2d4 100644 --- a/users/spacebarracecar/spacebarracecar.c +++ b/users/spacebarracecar/spacebarracecar.c @@ -211,11 +211,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { timer_timeout(); if (lshift || rshift){ unregister_code(KC_LSFT); - register_code(DE_ALGR); + register_code(KC_ALGR); unregister_code(DE_PLUS); register_code(DE_PLUS); unregister_code(DE_PLUS); - unregister_code(DE_ALGR); + unregister_code(KC_ALGR); register_code(KC_LSFT); } else { register_code(KC_LSFT); diff --git a/users/spacebarracecar/spacebarracecar.h b/users/spacebarracecar/spacebarracecar.h index 035c1ac790..d0259b73cc 100644 --- a/users/spacebarracecar/spacebarracecar.h +++ b/users/spacebarracecar/spacebarracecar.h @@ -192,7 +192,7 @@ return false; if (record->event.pressed) { \ timer_timeout(); \ unregister_code(KC_LSFT); \ - register_code(DE_ALGR); \ + register_code(KC_ALGR); \ if (lshift || rshift) { \ unregister_code(kc2); \ register_code(kc2); \ @@ -203,7 +203,7 @@ if (record->event.pressed) { \ register_code(kc1); \ unregister_code(kc1); \ } \ - unregister_code(DE_ALGR); \ + unregister_code(KC_ALGR); \ } \ return false; -- cgit v1.2.3