diff options
| author | 194h <38110558+194h@users.noreply.github.com> | 2018-10-25 19:04:48 +0200 |
|---|---|---|
| committer | Drashna Jaelre <drashna@live.com> | 2018-10-25 10:04:48 -0700 |
| commit | ffb2557a3aac1e5c943b1e6242c3a693da68d8ee (patch) | |
| tree | 47b2e2de8bf76907e19f4bcfd65024f5aec44676 /keyboards/atreus62 | |
| parent | a5b10e5da24cb52c04dddc9168d5e7590fb749d2 (diff) | |
| download | qmk_firmware-ffb2557a3aac1e5c943b1e6242c3a693da68d8ee.tar.gz qmk_firmware-ffb2557a3aac1e5c943b1e6242c3a693da68d8ee.zip | |
Keymap: Updated my(194h) keymap to make it more clean and useful (#4236)
* Added my(194h) atreus62 keymap
* Fixed what noroadsleft remarked in my pull request, hopefully got it all.
* Followed drashna's suggestion.
* Removed unused functionality from my keymap, added tap dance æøå and changed Layer 1 and Layer 2
* Removed unused functionality from my keymap, added tap dance æøå and changed Layer 1 and Layer 2
Diffstat (limited to 'keyboards/atreus62')
| -rw-r--r-- | keyboards/atreus62/keymaps/194h/keymap.c | 109 | ||||
| -rw-r--r-- | keyboards/atreus62/keymaps/194h/rules.mk | 5 |
2 files changed, 51 insertions, 63 deletions
diff --git a/keyboards/atreus62/keymaps/194h/keymap.c b/keyboards/atreus62/keymaps/194h/keymap.c index 9b397fce4..1d069e9d4 100644 --- a/keyboards/atreus62/keymaps/194h/keymap.c +++ b/keyboards/atreus62/keymaps/194h/keymap.c | |||
| @@ -39,6 +39,7 @@ | |||
| 39 | //Norwegian layout - dependant on previous definitions | 39 | //Norwegian layout - dependant on previous definitions |
| 40 | #define NO_UNDS LSFT(NO_MINS) // _ | 40 | #define NO_UNDS LSFT(NO_MINS) // _ |
| 41 | #define NO_QUES LSFT(NO_PLUS) // ? | 41 | #define NO_QUES LSFT(NO_PLUS) // ? |
| 42 | #define NO_ACUT RALT(NO_BSLS) // Acute | ||
| 42 | #define NO_GRAV LSFT(NO_BSLS) // ` | 43 | #define NO_GRAV LSFT(NO_BSLS) // ` |
| 43 | #define NO_GT LSFT(NO_LT) // > | 44 | #define NO_GT LSFT(NO_LT) // > |
| 44 | #define NO_HALF RALT(NO_LT) // ½ | 45 | #define NO_HALF RALT(NO_LT) // ½ |
| @@ -56,6 +57,9 @@ | |||
| 56 | #define OSM_RSFT OSM(MOD_RSFT) | 57 | #define OSM_RSFT OSM(MOD_RSFT) |
| 57 | #define OSM_RGUI OSM(MOD_RGUI) | 58 | #define OSM_RGUI OSM(MOD_RGUI) |
| 58 | 59 | ||
| 60 | //CTRL on hold, ESC on tap | ||
| 61 | #define CTL_ESC CTL_T(KC_ESC) | ||
| 62 | |||
| 59 | //Layers | 63 | //Layers |
| 60 | #define L1 0 | 64 | #define L1 0 |
| 61 | #define L2 1 | 65 | #define L2 1 |
| @@ -63,23 +67,51 @@ | |||
| 63 | #define L4 3 | 67 | #define L4 3 |
| 64 | #define L5 4 | 68 | #define L5 4 |
| 65 | 69 | ||
| 70 | // Momentary switch to layer | ||
| 71 | #define MO_L2 MO(L2) | ||
| 72 | #define MO_L4 MO(L4) | ||
| 73 | #define MO_L5 MO(L5) | ||
| 66 | // Momentary switch to layer - One Shot Layer | 74 | // Momentary switch to layer - One Shot Layer |
| 75 | #define OSL_L2 OSL(L2) | ||
| 67 | #define OSL_L3 OSL(L3) | 76 | #define OSL_L3 OSL(L3) |
| 68 | #define OSL_L4 OSL(L4) | 77 | #define OSL_L4 OSL(L4) |
| 69 | 78 | ||
| 79 | //Tap Dance Declarations | ||
| 80 | enum { | ||
| 81 | SCLN_OE = 0, | ||
| 82 | QUOT_AE, | ||
| 83 | DQT_AO | ||
| 84 | }; | ||
| 85 | |||
| 86 | //Tap Dance Definitions | ||
| 87 | qk_tap_dance_action_t tap_dance_actions[] = { | ||
| 88 | //Tap once for semicolon, twice for ø | ||
| 89 | [SCLN_OE] = ACTION_TAP_DANCE_DOUBLE(NO_SCLN, NO_OE), | ||
| 90 | //Tap once for single quote, twice for æ | ||
| 91 | [QUOT_AE] = ACTION_TAP_DANCE_DOUBLE(NO_QUOT, NO_AE), | ||
| 92 | //Tap once for double quote, twice for å | ||
| 93 | [DQT_AO] = ACTION_TAP_DANCE_DOUBLE(NO_DQT, NO_AO), | ||
| 94 | // Other declarations would go here, separated by commas, if you have them | ||
| 95 | }; | ||
| 96 | |||
| 97 | //Tap Dance keys | ||
| 98 | #define TD_SCLN_OE TD(SCLN_OE) | ||
| 99 | #define TD_QUOT_AE TD(QUOT_AE) | ||
| 100 | #define TD_DQT_AO TD(DQT_AO) | ||
| 101 | |||
| 70 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 102 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 71 | 103 | ||
| 72 | [L1] = LAYOUT( | 104 | [L1] = LAYOUT( |
| 73 | KC_LGUI, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RGUI, | 105 | KC_LGUI, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RGUI, |
| 74 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_DQT, | 106 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_DQT_AO, |
| 75 | KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_SCLN, NO_QUOT, | 107 | KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_SCLN_OE, TD_QUOT_AE, |
| 76 | OSM_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, OSM_RSFT, | 108 | OSM_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, NO_MINS, OSM_RSFT, |
| 77 | CTL_T(KC_ESC), MO(L5), KC_LEAD, OSM_LALT, MO(L4), OSL_L3, KC_SPC, KC_ENT, OSL_L3, MO(L4), OSM_RALT, NO_EQL, NO_PLUS, KC_RCTL | 109 | CTL_ESC, MO_L5, KC_TAB, OSM_LALT, MO_L4, OSL_L3, KC_SPC, KC_ENT, OSL_L3, MO_L4, OSM_LALT, NO_EQL, NO_PLUS, KC_RCTL |
| 78 | ), | 110 | ), |
| 79 | [L2] = LAYOUT( | 111 | [L2] = LAYOUT( |
| 80 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 112 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 81 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NO_AO, | 113 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NO_DQT, |
| 82 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NO_OE, NO_AE, | 114 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NO_SCLN, NO_QUOT, |
| 83 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 115 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 84 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 116 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 85 | ), | 117 | ), |
| @@ -95,66 +127,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 95 | XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, XXXXXXX, | 127 | XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, XXXXXXX, |
| 96 | _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, KC_DEL, | 128 | _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, KC_DEL, |
| 97 | XXXXXXX, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, XXXXXXX, KC_APP, XXXXXXX, XXXXXXX, KC_VOLD, XXXXXXX, | 129 | XXXXXXX, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, XXXXXXX, KC_APP, XXXXXXX, XXXXXXX, KC_VOLD, XXXXXXX, |
| 98 | OSM_LCTL, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MUTE, KC_VOLU, OSM_RCTL | 130 | OSM_LCTL, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, OSM_RALT, KC_MUTE, KC_VOLU, OSM_RCTL |
| 99 | ), | 131 | ), |
| 100 | [L5] = LAYOUT( | 132 | [L5] = LAYOUT( |
| 101 | XXXXXXX, TO(L1), TO(L2), TO(L3), TO(L4), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 133 | XXXXXXX, TO(L1), TO(L2), TO(L3), TO(L4), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 102 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NO_AO, | 134 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 103 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NO_OE, NO_AE, | 135 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 104 | XXXXXXX, XXXXXXX, XXXXXXX, KC_CAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 136 | XXXXXXX, XXXXXXX, XXXXXXX, KC_CAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 105 | XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX | 137 | XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX |
| 106 | ) | 138 | ) |
| 107 | }; | 139 | }; |
| 108 | 140 | ||
| 109 | 141 | //TODO: Is there productivity gain in the use of unicode? | |
| 110 | // Unicode Linux | 142 | // - Won't work in xterm. |
| 111 | void matrix_init_user(void) { | 143 | // Create a layer for macros and/or unicode? |
| 112 | set_unicode_input_mode(UC_LNX); | 144 | // Are macros useful? |
| 113 | }; | 145 | // - Found no gain in having sendstring for commands. |
| 114 | 146 | // - Find repeated tasks that cannot be done easily on the OS. | |
| 115 | 147 | // - Most other keymaps have macros for game/fun stuff, hard to find "serious" onces. | |
| 116 | #define TAP_ONCE(code) \ | 148 | // Screw Norwegian layout, switch to US with unicode æøå or US/English International? |
| 117 | register_code (code); \ | 149 | // - Will be different from laptop keyboard, requiring a switch on the OS side when only using the laptop. |
| 118 | unregister_code (code) | ||
| 119 | |||
| 120 | |||
| 121 | LEADER_EXTERNS(); | ||
| 122 | |||
| 123 | // Runs constantly in the background, in a loop. Only supports basic keycodes. | ||
| 124 | void matrix_scan_user(void) { | ||
| 125 | LEADER_DICTIONARY() { | ||
| 126 | leading = false; | ||
| 127 | leader_end(); | ||
| 128 | |||
| 129 | //probably useless in practice, but cool | ||
| 130 | SEQ_ONE_KEY (KC_P) { | ||
| 131 | tap_random_base64(); | ||
| 132 | tap_random_base64(); | ||
| 133 | tap_random_base64(); | ||
| 134 | tap_random_base64(); | ||
| 135 | tap_random_base64(); | ||
| 136 | tap_random_base64(); | ||
| 137 | tap_random_base64(); | ||
| 138 | tap_random_base64(); | ||
| 139 | } | ||
| 140 | |||
| 141 | SEQ_ONE_KEY (KC_G) { | ||
| 142 | SEND_STRING("grep something !"); | ||
| 143 | register_code(KC_RALT); | ||
| 144 | TAP_ONCE(KC_4); | ||
| 145 | unregister_code(KC_RALT); | ||
| 146 | } | ||
| 147 | SEQ_ONE_KEY (KC_T) { | ||
| 148 | SEND_STRING("tail "); | ||
| 149 | TAP_ONCE(KC_SLSH); | ||
| 150 | SEND_STRING("f !"); | ||
| 151 | register_code(KC_RALT); | ||
| 152 | TAP_ONCE(KC_4); | ||
| 153 | unregister_code(KC_RALT); | ||
| 154 | } | ||
| 155 | SEQ_ONE_KEY (KC_S) { | ||
| 156 | SEND_STRING("sudo !!"); | ||
| 157 | TAP_ONCE(KC_ENT); | ||
| 158 | } | ||
| 159 | } | ||
| 160 | } | ||
diff --git a/keyboards/atreus62/keymaps/194h/rules.mk b/keyboards/atreus62/keymaps/194h/rules.mk index 5246909a3..2c97aee09 100644 --- a/keyboards/atreus62/keymaps/194h/rules.mk +++ b/keyboards/atreus62/keymaps/194h/rules.mk | |||
| @@ -1,8 +1,7 @@ | |||
| 1 | TAP_DANCE_ENABLE = no | 1 | TAP_DANCE_ENABLE = yes |
| 2 | NKRO_ENABLE = true | 2 | NKRO_ENABLE = true |
| 3 | MOUSEKEY_ENABLE = no | 3 | MOUSEKEY_ENABLE = no |
| 4 | EXTRAKEY_ENABLE = yes | 4 | EXTRAKEY_ENABLE = yes |
| 5 | CONSOLE_ENABLE = no | 5 | CONSOLE_ENABLE = no |
| 6 | KEY_LOCK_ENABLE = no | 6 | KEY_LOCK_ENABLE = no |
| 7 | AUTO_SHIFT_ENABLE = no | 7 | LEADER_ENABLE = no |
| 8 | LEADER_ENABLE = yes | ||
