diff options
| author | Erez Zukerman <bulk@ezuk.org> | 2017-02-01 20:11:37 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-02-01 20:11:37 -0500 |
| commit | a5d10e8c2e5d314083a2529460683210b00bf98a (patch) | |
| tree | dd7348679e3c39dad3ca9ee3be68d7caa1c29e67 | |
| parent | 748316fc43e645baa12464c23f5ce703e92bf3e3 (diff) | |
| parent | 02a95ee08c005cd7b823cab9e0791973d680b0d8 (diff) | |
| download | qmk_firmware-a5d10e8c2e5d314083a2529460683210b00bf98a.tar.gz qmk_firmware-a5d10e8c2e5d314083a2529460683210b00bf98a.zip | |
Merge pull request #1054 from deadcyclo/master
Adds support for ergodox shine and unicode and emoji support to the deadcyclo layout
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/Makefile | 1 | ||||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png | bin | 79741 -> 79488 bytes | |||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png | bin | 55349 -> 79904 bytes | |||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png | bin | 50926 -> 62258 bytes | |||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png | bin | 43551 -> 58886 bytes | |||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/keymap.c | 426 | ||||
| -rw-r--r-- | keyboards/ergodox/keymaps/deadcyclo/readme.md | 60 |
7 files changed, 384 insertions, 103 deletions
diff --git a/keyboards/ergodox/keymaps/deadcyclo/Makefile b/keyboards/ergodox/keymaps/deadcyclo/Makefile new file mode 100644 index 000000000..039f07c8e --- /dev/null +++ b/keyboards/ergodox/keymaps/deadcyclo/Makefile | |||
| @@ -0,0 +1 @@ | |||
| UNICODE_ENABLE = yes | |||
diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png index 4208c5189..2c03af581 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png +++ b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png index ccda70e39..5adb7ac77 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png +++ b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png index 481e63e32..a267ff23d 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png +++ b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png index 9ebba6734..c8c90cf5c 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png +++ b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png | |||
| Binary files differ | |||
diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index d75c805bf..5774511cc 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c | |||
| @@ -8,15 +8,86 @@ | |||
| 8 | #define MDIA 2 // media keys | 8 | #define MDIA 2 // media keys |
| 9 | #define NAVG 3 // navigation | 9 | #define NAVG 3 // navigation |
| 10 | 10 | ||
| 11 | enum custom_keycodes { | 11 | enum macros { |
| 12 | PLACEHOLDER = SAFE_RANGE, // can always be here | 12 | RUN |
| 13 | }; | ||
| 14 | |||
| 15 | enum function_ids { | ||
| 16 | EMOJI, | ||
| 17 | EMOJI2, | ||
| 13 | EPRM, | 18 | EPRM, |
| 14 | VRSN, | 19 | VRSN, |
| 15 | RGB_SLD | 20 | RGB_SLD, |
| 21 | GO_GROUP | ||
| 16 | }; | 22 | }; |
| 17 | 23 | ||
| 18 | // TODO: Get rid of of keys I don't want. Make others that I do. Set up lots of makros (Using hyper (and meh)) keys (where to put them?) | 24 | /* opt can only be 0-15 */ |
| 25 | enum emojis { | ||
| 26 | SHRUG, | ||
| 27 | YAY, | ||
| 28 | HUG, | ||
| 29 | SMILE, | ||
| 30 | SMILE2, | ||
| 31 | HMM1, | ||
| 32 | HMM2, | ||
| 33 | BEAR1, | ||
| 34 | BEAR2, | ||
| 35 | FUU, | ||
| 36 | EGGY1, | ||
| 37 | EGGY2, | ||
| 38 | FACE1, | ||
| 39 | FACE2, | ||
| 40 | UHU, | ||
| 41 | SMRK1 | ||
| 42 | }; | ||
| 43 | |||
| 44 | enum emojis2 { | ||
| 45 | SMRK2, | ||
| 46 | LOVE | ||
| 47 | }; | ||
| 48 | |||
| 49 | enum progmem_ids { | ||
| 50 | EMOJI_SHRUG, | ||
| 51 | EMOJI_YAY, | ||
| 52 | EMOJI_HUG, | ||
| 53 | EMOJI_SMILE, | ||
| 54 | EMOJI_SMILE2, | ||
| 55 | EMOJI_HMM1, | ||
| 56 | EMOJI_HMM2, | ||
| 57 | EMOJI_BEAR1, | ||
| 58 | EMOJI_BEAR2, | ||
| 59 | EMOJI_FUU, | ||
| 60 | EMOJI_EGGY1, | ||
| 61 | EMOJI_EGGY2, | ||
| 62 | EMOJI_FACE1, | ||
| 63 | EMOJI_FACE2, | ||
| 64 | EMOJI_UHU, | ||
| 65 | EMOJI_SMRK1, | ||
| 66 | EMOJI_SMRK2, | ||
| 67 | EMOJI_LOVE, | ||
| 68 | F_EPRM, | ||
| 69 | F_VRSN, | ||
| 70 | F_RGB_SLD, | ||
| 71 | I3_GO_GROUP_10, | ||
| 72 | I3_GO_GROUP_1, | ||
| 73 | I3_GO_GROUP_2, | ||
| 74 | I3_GO_GROUP_3, | ||
| 75 | I3_GO_GROUP_4, | ||
| 76 | I3_GO_GROUP_5, | ||
| 77 | I3_GO_GROUP_6, | ||
| 78 | I3_GO_GROUP_7, | ||
| 79 | I3_GO_GROUP_8, | ||
| 80 | I3_GO_GROUP_9, | ||
| 81 | }; | ||
| 82 | |||
| 83 | // TODO: Finish the macros for i3 (Macros should potentially be own function instead to make things easier? some of them at least, f. ex. the ones that use 1-0 keys so we can have a single switch) | ||
| 84 | |||
| 85 | // TODO: Do stuff with hyper and meh keys | ||
| 86 | // TODO: Add macros for lots of stuff. (Lastpass cli, pushbullet cli, other push service cli, linode cli, more?) | ||
| 87 | // TODO: Make macros for gnu screen and i3wm | ||
| 19 | // TODO: Need to change hotkeys for lastpass, and potentially make my own keys for them on one of my layers | 88 | // TODO: Need to change hotkeys for lastpass, and potentially make my own keys for them on one of my layers |
| 89 | // TODO: Look into using tap dance | ||
| 90 | // TODO: Use leader key for stuff. See https://github.com/qmk/qmk_firmware/wiki | ||
| 20 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 91 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 21 | /* Keymap 0: Basic layer | 92 | /* Keymap 0: Basic layer |
| 22 | * | 93 | * |
| @@ -29,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 29 | * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| | 100 | * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| |
| 30 | * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | | 101 | * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | |
| 31 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | 102 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' |
| 32 | * |Grv/L1| '" |AltShf| Lalt | Ralt | | Lalt | Ralt | [ | ] | ~/L1 | | 103 | * |Grv/L1| UNI |AltShf| Lalt | Ralt | | Lalt | Ralt | LEAD | UNI | ~/L1 | |
| 33 | * `----------------------------------' `----------------------------------' | 104 | * `----------------------------------' `----------------------------------' |
| 34 | * ,-------------. ,-------------. | 105 | * ,-------------. ,-------------. |
| 35 | * | App | Home | | PgUp | Ins | | 106 | * | App | Home | | PgUp | Ins | |
| @@ -43,11 +114,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 43 | // Otherwise, it needs KC_* | 114 | // Otherwise, it needs KC_* |
| 44 | [BASE] = KEYMAP( // layer 0 : default | 115 | [BASE] = KEYMAP( // layer 0 : default |
| 45 | // left hand | 116 | // left hand |
| 46 | LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, | 117 | LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, |
| 47 | LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), | 118 | LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), |
| 48 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, | 119 | KC_LCTL, LT(MDIA, KC_A), KC_S, KC_D, KC_F, KC_G, |
| 49 | KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), | 120 | KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), |
| 50 | LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_RALT,KC_LALT, | 121 | LT(SYMB,KC_GRV),LCTL(LSFT(KC_U)), LALT(KC_LSFT), KC_RALT,KC_LALT, |
| 51 | ALT_T(KC_APP), KC_HOME, | 122 | ALT_T(KC_APP), KC_HOME, |
| 52 | KC_END, | 123 | KC_END, |
| 53 | KC_SPC,KC_TAB,KC_LBRC, | 124 | KC_SPC,KC_TAB,KC_LBRC, |
| @@ -56,12 +127,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 56 | TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), | 127 | TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), |
| 57 | KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), | 128 | KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), |
| 58 | MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, | 129 | MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, |
| 59 | KC_LALT, KC_RALT,KC_LBRC,KC_RBRC, LT(SYMB,KC_TILD), | 130 | KC_LALT, KC_RALT,KC_LEAD,LCTL(LSFT(KC_U)), LT(SYMB,KC_TILD), |
| 60 | KC_PGUP, KC_INS, | 131 | KC_PGUP, KC_INS, |
| 61 | KC_PGDN, | 132 | KC_PGDN, |
| 62 | KC_RBRC,KC_BSPC, KC_ENT | 133 | KC_RBRC,KC_BSPC, KC_ENT |
| 63 | ), | 134 | ), |
| 64 | /* Keymap 1: Symbol Layer | 135 | /* Keymap 1: Symbol Layer LCTL(LSFT(KC_U)) |
| 65 | * | 136 | * |
| 66 | * ,--------------------------------------------------. ,--------------------------------------------------. | 137 | * ,--------------------------------------------------. ,--------------------------------------------------. |
| 67 | * | | F1 | F2 | F3 | F4 | F5 | F6 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | 138 | * | | F1 | F2 | F3 | F4 | F5 | F6 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | |
| @@ -75,11 +146,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 75 | * | | | | | | | | . | 0 | = | | | 146 | * | | | | | | | | . | 0 | = | | |
| 76 | * `----------------------------------' `----------------------------------' | 147 | * `----------------------------------' `----------------------------------' |
| 77 | * ,-------------. ,-------------. | 148 | * ,-------------. ,-------------. |
| 78 | * | | | | | | | 149 | * |Toggle|Animat| | Hue+ | Hue- | |
| 79 | * ,------|------|------| |------+------+------. | 150 | * ,------|------|------| |------+------+------. |
| 80 | * | | | | | | | | | 151 | * |Bright|Bright|Solid | | | | | |
| 81 | * | | |------| |------| DEL | | | 152 | * |ness- |ness+ |------| |------| DEL | | |
| 82 | * | | | | | | | | | 153 | * | | | | | EPRM | | | |
| 83 | * `--------------------' `--------------------' | 154 | * `--------------------' `--------------------' |
| 84 | */ | 155 | */ |
| 85 | // SYMBOLS | 156 | // SYMBOLS |
| @@ -90,27 +161,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 90 | KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, | 161 | KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, |
| 91 | KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, | 162 | KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, |
| 92 | KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 163 | KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, |
| 93 | KC_TRNS,KC_TRNS, | 164 | RGB_TOG,RGB_MOD, |
| 94 | KC_TRNS, | 165 | F(F_RGB_SLD), |
| 95 | KC_TRNS,KC_TRNS,KC_TRNS, | 166 | RGB_VAD,RGB_VAI,KC_TRNS, |
| 96 | // right hand | 167 | // right hand |
| 97 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, | 168 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, |
| 98 | KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, | 169 | KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, |
| 99 | KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, | 170 | KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, |
| 100 | KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, | 171 | KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, |
| 101 | KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, | 172 | KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, |
| 102 | KC_TRNS, KC_TRNS, | 173 | RGB_HUD, RGB_HUI, |
| 103 | KC_TRNS, | 174 | KC_TRNS, |
| 104 | KC_TRNS, KC_DEL, KC_TRNS | 175 | F(F_EPRM), KC_DEL, KC_TRNS |
| 105 | ), | 176 | ), |
| 106 | /* Keymap 2: Media and mouse keys | 177 | /* Keymap 2: Media, mouse and navigation |
| 107 | * | 178 | * |
| 108 | * ,--------------------------------------------------. ,--------------------------------------------------. | 179 | * ,--------------------------------------------------. ,--------------------------------------------------. |
| 109 | * | | | | | | | | | | | | | | | | | 180 | * | | gg(1)| | | | | | | | | | | | | | |
| 110 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | 181 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| |
| 111 | * | | | | MsUp | | | | | | | | | | | | | 182 | * | | | | MsUp | RUN | | | | | | | Up | | | | |
| 112 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | 183 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| |
| 113 | * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | | 184 | * | | |MsLeft|MsDown|MsRght| |------| |------| | Left | Down | Right| | Play | |
| 114 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | 185 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| |
| 115 | * | | | | | | | | | | | | Prev | Next | | | | 186 | * | | | | | | | | | | | | Prev | Next | | | |
| 116 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | 187 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' |
| @@ -124,10 +195,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 124 | * | | | | | | | | | 195 | * | | | | | | | | |
| 125 | * `--------------------' `--------------------' | 196 | * `--------------------' `--------------------' |
| 126 | */ | 197 | */ |
| 127 | // MEDIA AND MOUSE | 198 | // MEDIA , MOUSE and NAVIGATION |
| 128 | [MDIA] = KEYMAP( | 199 | [MDIA] = KEYMAP( |
| 129 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 200 | KC_TRNS, F(I3_GO_GROUP_1), F(I3_GO_GROUP_2), F(I3_GO_GROUP_3), F(I3_GO_GROUP_4), F(I3_GO_GROUP_5), F(I3_GO_GROUP_6), |
| 130 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, | 201 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, |
| 131 | KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, | 202 | KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, |
| 132 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 203 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 133 | KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, | 204 | KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, |
| @@ -135,116 +206,280 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 135 | KC_TRNS, | 206 | KC_TRNS, |
| 136 | KC_TRNS, KC_TRNS, KC_TRNS, | 207 | KC_TRNS, KC_TRNS, KC_TRNS, |
| 137 | // right hand | 208 | // right hand |
| 138 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 209 | F(I3_GO_GROUP_6), F(I3_GO_GROUP_7), F(I3_GO_GROUP_8), F(I3_GO_GROUP_9), F(I3_GO_GROUP_10), KC_TRNS, KC_TRNS, |
| 139 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 210 | KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, |
| 140 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, | 211 | KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, |
| 141 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, | 212 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, |
| 142 | KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, | 213 | KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, |
| 143 | KC_TRNS, KC_TRNS, | 214 | KC_TRNS, KC_TRNS, |
| 144 | KC_TRNS, | 215 | KC_TRNS, |
| 145 | KC_TRNS, KC_TRNS, KC_WBAK | 216 | KC_TRNS, KC_TRNS, KC_WBAK |
| 146 | ), | 217 | ), |
| 147 | 218 | ||
| 148 | /* Keymap 3: Navigation TODO: Printscreen, pg up down, home, end, others? Insert for example | 219 | /* Keymap 3: Unicode |
| 149 | * | 220 | * |
| 150 | * ,--------------------------------------------------. ,--------------------------------------------------. | 221 | * ,--------------------------------------------------. ,--------------------------------------------------. |
| 151 | * | | VER | | | | | | | | | | | | | | | 222 | * | | ┌ | ┐ | └ | ┘ | │ | ─ | | ╔ | ╗ | ╚ | ╝ | ║ | ═ | | |
| 152 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | 223 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| |
| 153 | * | | | | up | | | | | | | | | | | | | 224 | * | | shrug| yay | hug | smile|smile2| | | | ■ | λ | → | ➙ | ▻ | █ | |
| 154 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | 225 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| |
| 155 | * | | | left | down | right| |------| |------| | | | | | | | 226 | * | | hmm1 | hmm2 | bear1| bear2| fuu |------| |------| ☺ | ☻ | ☹ | ♡ | ♥ | ░ | |
| 156 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | 227 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| |
| 157 | * | | | | | | | | | | | | | | | | | 228 | * | | eggy1| eggy2| face1| face2| uhu | | | | ❤ | ☐ | ☑ | ☒ | ✓ | ▄ | |
| 158 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | 229 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' |
| 159 | * | | | | | | | | | | | | | 230 | * | | smrk1| smrk2| love | VER | | ✔ | ✗ | ✘ | ● | ▀ | |
| 160 | * `----------------------------------' `----------------------------------' | 231 | * `----------------------------------' `----------------------------------' |
| 161 | * ,-------------. ,-------------. | 232 | * ,-------------. ,-------------. |
| 162 | * | | | | | | | 233 | * | | | | ▒ | ▓ | |
| 163 | * ,------|------|------| |------+------+------. | 234 | * ,------|------|------| |------+------+------. |
| 164 | * | | | | | | | | | 235 | * | | | | | | | | |
| 165 | * | | |------| |------| | | | 236 | * | | |------| |------| | | |
| 166 | * | | | | | | | | | 237 | * | | | | | | | | |
| 167 | * `--------------------' `--------------------' | 238 | * `--------------------' `--------------------' |
| 168 | */ | 239 | */ |
| 169 | // NAVIGATION | 240 | // Unicode |
| 170 | [NAVG] = KEYMAP( | 241 | [NAVG] = KEYMAP( |
| 171 | KC_TRNS, VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 242 | KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), |
| 172 | KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, | 243 | KC_TRNS, F(EMOJI_SHRUG), F(EMOJI_YAY), F(EMOJI_HUG), F(EMOJI_SMILE), F(EMOJI_SMILE2), KC_TRNS, |
| 173 | KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, | 244 | KC_TRNS, F(EMOJI_HMM1), F(EMOJI_HMM2), F(EMOJI_BEAR1), F(EMOJI_BEAR2), F(EMOJI_FUU), |
| 174 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 245 | KC_TRNS, F(EMOJI_EGGY1), F(EMOJI_EGGY2), F(EMOJI_FACE1), F(EMOJI_FACE2), F(EMOJI_UHU), KC_TRNS, |
| 175 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 246 | KC_TRNS, F(EMOJI_SMRK1), F(EMOJI_SMRK2), F(EMOJI_LOVE), F(F_VRSN), |
| 176 | KC_TRNS, KC_TRNS, | 247 | KC_TRNS, KC_TRNS, |
| 177 | KC_TRNS, | 248 | KC_TRNS, |
| 178 | KC_TRNS, KC_TRNS, KC_TRNS, | 249 | KC_TRNS, KC_TRNS, KC_TRNS, |
| 179 | // right hand | 250 | // right hand |
| 180 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 251 | UC(0x2554), UC(0x2557), UC(0x255a), UC(0x255d), UC(0x2551), UC(0x2550), KC_TRNS, |
| 181 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 252 | KC_TRNS, UC(0x25a0), UC(0x03bb), UC(0x2192), UC(0x2799), UC(0x25bb), UC(0x2588), |
| 182 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 253 | UC(0x263a), UC(0x263b), UC(0x2639), UC(0x2661), UC(0x2665), UC(0x2591), |
| 183 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, | 254 | KC_TRNS, UC(0x2764), UC(0x2610), UC(0x2611), UC(0x2612), UC(0x2713), UC(0x2584), |
| 184 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 255 | UC(0x2714), UC(0x2717), UC(0x2718), UC(0x25cf), UC(0x2580), |
| 185 | KC_TRNS, KC_TRNS, | 256 | UC(0x2592), UC(0x2593), |
| 186 | KC_TRNS, | 257 | KC_TRNS, |
| 187 | KC_TRNS, KC_TRNS, KC_TRNS | 258 | KC_TRNS, KC_TRNS, KC_TRNS |
| 188 | ), | 259 | ), |
| 189 | }; | 260 | }; |
| 190 | 261 | ||
| 191 | const uint16_t PROGMEM fn_actions[] = { | 262 | const uint16_t PROGMEM fn_actions[] = { |
| 192 | [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) | 263 | [EMOJI_SHRUG] = ACTION_FUNCTION_OPT(EMOJI, SHRUG), |
| 264 | [EMOJI_YAY] = ACTION_FUNCTION_OPT(EMOJI, YAY), | ||
| 265 | [EMOJI_HUG] = ACTION_FUNCTION_OPT(EMOJI,HUG), | ||
| 266 | [EMOJI_SMILE] = ACTION_FUNCTION_OPT(EMOJI,SMILE), | ||
| 267 | [EMOJI_SMILE2] = ACTION_FUNCTION_OPT(EMOJI,SMILE2), | ||
| 268 | [EMOJI_HMM1] = ACTION_FUNCTION_OPT(EMOJI,HMM1), | ||
| 269 | [EMOJI_HMM2] = ACTION_FUNCTION_OPT(EMOJI,HMM2), | ||
| 270 | [EMOJI_BEAR1] = ACTION_FUNCTION_OPT(EMOJI,BEAR1), | ||
| 271 | [EMOJI_BEAR2] = ACTION_FUNCTION_OPT(EMOJI,BEAR2), | ||
| 272 | [EMOJI_FUU] = ACTION_FUNCTION_OPT(EMOJI,FUU), | ||
| 273 | [EMOJI_EGGY1] = ACTION_FUNCTION_OPT(EMOJI,EGGY1), | ||
| 274 | [EMOJI_EGGY2] = ACTION_FUNCTION_OPT(EMOJI,EGGY2), | ||
| 275 | [EMOJI_FACE1] = ACTION_FUNCTION_OPT(EMOJI,FACE1), | ||
| 276 | [EMOJI_FACE2] = ACTION_FUNCTION_OPT(EMOJI,FACE2), | ||
| 277 | [EMOJI_UHU] = ACTION_FUNCTION_OPT(EMOJI,UHU), | ||
| 278 | [EMOJI_SMRK1] = ACTION_FUNCTION_OPT(EMOJI,SMRK1), | ||
| 279 | [EMOJI_SMRK2] = ACTION_FUNCTION_OPT(EMOJI2,SMRK2), | ||
| 280 | [EMOJI_LOVE] = ACTION_FUNCTION_OPT(EMOJI2,LOVE), | ||
| 281 | [F_EPRM] = ACTION_FUNCTION(EPRM), | ||
| 282 | [F_VRSN] = ACTION_FUNCTION(VRSN), | ||
| 283 | [F_RGB_SLD] = ACTION_FUNCTION(RGB_SLD), | ||
| 284 | [I3_GO_GROUP_10]= ACTION_FUNCTION_OPT(GO_GROUP,0), | ||
| 285 | [I3_GO_GROUP_1] = ACTION_FUNCTION_OPT(GO_GROUP,1), | ||
| 286 | [I3_GO_GROUP_2] = ACTION_FUNCTION_OPT(GO_GROUP,2), | ||
| 287 | [I3_GO_GROUP_3] = ACTION_FUNCTION_OPT(GO_GROUP,3), | ||
| 288 | [I3_GO_GROUP_4] = ACTION_FUNCTION_OPT(GO_GROUP,4), | ||
| 289 | [I3_GO_GROUP_5] = ACTION_FUNCTION_OPT(GO_GROUP,5), | ||
| 290 | [I3_GO_GROUP_6] = ACTION_FUNCTION_OPT(GO_GROUP,6), | ||
| 291 | [I3_GO_GROUP_7] = ACTION_FUNCTION_OPT(GO_GROUP,7), | ||
| 292 | [I3_GO_GROUP_8] = ACTION_FUNCTION_OPT(GO_GROUP,8), | ||
| 293 | [I3_GO_GROUP_9] = ACTION_FUNCTION_OPT(GO_GROUP,9), | ||
| 193 | }; | 294 | }; |
| 194 | 295 | ||
| 195 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 296 | #define TAP_ONCE(code) \ |
| 196 | { | 297 | register_code (code); \ |
| 197 | // MACRODOWN only works in this function | 298 | unregister_code (code) |
| 198 | switch(id) { | ||
| 199 | case 0: | ||
| 200 | if (record->event.pressed) { | ||
| 201 | SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
| 202 | } | ||
| 203 | break; | ||
| 204 | case 1: | ||
| 205 | if (record->event.pressed) { // For resetting EEPROM | ||
| 206 | eeconfig_init(); | ||
| 207 | } | ||
| 208 | break; | ||
| 209 | } | ||
| 210 | return MACRO_NONE; | ||
| 211 | }; | ||
| 212 | 299 | ||
| 213 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 300 | void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { |
| 214 | switch (keycode) { | 301 | if (record->event.pressed) { |
| 215 | // dynamically generate these. | 302 | switch(id) { |
| 216 | case EPRM: | 303 | case EPRM: |
| 217 | if (record->event.pressed) { | 304 | eeconfig_init(); |
| 218 | eeconfig_init(); | ||
| 219 | } | ||
| 220 | return false; | ||
| 221 | break; | 305 | break; |
| 222 | case VRSN: | 306 | case VRSN: |
| 223 | if (record->event.pressed) { | 307 | SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); |
| 224 | SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
| 225 | } | ||
| 226 | return false; | ||
| 227 | break; | 308 | break; |
| 228 | case RGB_SLD: | 309 | case RGB_SLD: |
| 229 | if (record->event.pressed) { | 310 | #ifdef RGBLIGHT_ENABLE |
| 230 | #ifdef RGBLIGHT_ENABLE | 311 | rgblight_mode(1); |
| 231 | rgblight_mode(1); | 312 | #endif |
| 232 | #endif | 313 | break; |
| 314 | case GO_GROUP: | ||
| 315 | register_code(KC_LCTL); TAP_ONCE(KC_I); unregister_code(KC_LCTL); | ||
| 316 | TAP_ONCE(KC_G); | ||
| 317 | if (opt == 0) { | ||
| 318 | TAP_ONCE(39); | ||
| 319 | } else { | ||
| 320 | TAP_ONCE(29+opt); | ||
| 321 | } | ||
| 322 | break; | ||
| 323 | case EMOJI: | ||
| 324 | switch(opt) { | ||
| 325 | case SHRUG: | ||
| 326 | unicode_input_start(); register_hex(0xaf); unicode_input_finish(); | ||
| 327 | TAP_ONCE (KC_BSLS); | ||
| 328 | register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); | ||
| 329 | unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); | ||
| 330 | register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); | ||
| 331 | TAP_ONCE (KC_SLSH); | ||
| 332 | unicode_input_start (); register_hex(0xaf); unicode_input_finish(); | ||
| 333 | break; | ||
| 334 | case YAY: | ||
| 335 | SEND_STRING ("\\o/"); | ||
| 336 | break; | ||
| 337 | case HUG: | ||
| 338 | unicode_input_start(); register_hex(0x0f3c); unicode_input_finish(); | ||
| 339 | TAP_ONCE (KC_SPC); | ||
| 340 | unicode_input_start(); register_hex(0x3064); unicode_input_finish(); | ||
| 341 | TAP_ONCE (KC_SPC); | ||
| 342 | unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); | ||
| 343 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 344 | unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); | ||
| 345 | TAP_ONCE (KC_SPC); | ||
| 346 | unicode_input_start(); register_hex(0x0f3d); unicode_input_finish(); | ||
| 347 | unicode_input_start(); register_hex(0x3064); unicode_input_finish(); | ||
| 348 | break; | ||
| 349 | case SMILE: | ||
| 350 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
| 351 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
| 352 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
| 353 | break; | ||
| 354 | case SMILE2: | ||
| 355 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 356 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
| 357 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
| 358 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
| 359 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 360 | break; | ||
| 361 | case HMM1: | ||
| 362 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
| 363 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 364 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
| 365 | break; | ||
| 366 | case HMM2: | ||
| 367 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 368 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
| 369 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 370 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
| 371 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 372 | break; | ||
| 373 | case BEAR1: | ||
| 374 | unicode_input_start(); register_hex(0x0295); unicode_input_finish(); | ||
| 375 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
| 376 | unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); | ||
| 377 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
| 378 | unicode_input_start(); register_hex(0x0294); unicode_input_finish(); | ||
| 379 | break; | ||
| 380 | case BEAR2: | ||
| 381 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 382 | unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); | ||
| 383 | unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); | ||
| 384 | unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); | ||
| 385 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 386 | break; | ||
| 387 | case FUU: | ||
| 388 | unicode_input_start(); register_hex(0x256d); unicode_input_finish(); | ||
| 389 | unicode_input_start(); register_hex(0x2229); unicode_input_finish(); | ||
| 390 | unicode_input_start(); register_hex(0x256e); unicode_input_finish(); | ||
| 391 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 392 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
| 393 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 394 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
| 395 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 396 | unicode_input_start(); register_hex(0x256d); unicode_input_finish(); | ||
| 397 | unicode_input_start(); register_hex(0x2229); unicode_input_finish(); | ||
| 398 | unicode_input_start(); register_hex(0x256e); unicode_input_finish(); | ||
| 399 | break; | ||
| 400 | case EGGY1: | ||
| 401 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 402 | unicode_input_start(); register_hex(0x256f); unicode_input_finish(); | ||
| 403 | unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); | ||
| 404 | unicode_input_start(); register_hex(0x25a1); unicode_input_finish(); | ||
| 405 | unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); | ||
| 406 | unicode_input_start(); register_hex(0xff09); unicode_input_finish(); | ||
| 407 | unicode_input_start(); register_hex(0x256f); unicode_input_finish(); | ||
| 408 | break; | ||
| 409 | case EGGY2: | ||
| 410 | unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); | ||
| 411 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 412 | unicode_input_start(); register_hex(0x0020); unicode_input_finish(); | ||
| 413 | unicode_input_start(); register_hex(0x309c); unicode_input_finish(); | ||
| 414 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
| 415 | unicode_input_start(); register_hex(0x309c); unicode_input_finish(); | ||
| 416 | unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); | ||
| 417 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 418 | break; | ||
| 419 | case FACE1: | ||
| 420 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 421 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
| 422 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 423 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
| 424 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 425 | break; | ||
| 426 | case FACE2: | ||
| 427 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 428 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
| 429 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
| 430 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
| 431 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 432 | break; | ||
| 433 | case UHU: | ||
| 434 | unicode_input_start(); register_hex(0x2299); unicode_input_finish(); | ||
| 435 | unicode_input_start(); register_hex(0xfe4f); unicode_input_finish(); | ||
| 436 | unicode_input_start(); register_hex(0x2299); unicode_input_finish(); | ||
| 437 | break; | ||
| 438 | case SMRK1: | ||
| 439 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
| 440 | unicode_input_start(); register_hex(0x032e); unicode_input_finish(); | ||
| 441 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
| 442 | break; | ||
| 233 | } | 443 | } |
| 234 | return false; | ||
| 235 | break; | 444 | break; |
| 445 | case EMOJI2: | ||
| 446 | switch(opt) { | ||
| 447 | case SMRK2: | ||
| 448 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
| 449 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
| 450 | unicode_input_start(); register_hex(0x032e); unicode_input_finish(); | ||
| 451 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
| 452 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
| 453 | break; | ||
| 454 | case LOVE: | ||
| 455 | unicode_input_start(); register_hex(0x2665); unicode_input_finish(); | ||
| 456 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
| 457 | unicode_input_start(); register_hex(0x2665); unicode_input_finish(); | ||
| 458 | break; | ||
| 459 | } | ||
| 460 | break; | ||
| 461 | } | ||
| 236 | } | 462 | } |
| 237 | return true; | ||
| 238 | } | 463 | } |
| 239 | 464 | ||
| 465 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | ||
| 466 | if (record->event.pressed) { | ||
| 467 | switch(id) { | ||
| 468 | case RUN: | ||
| 469 | return MACRO( D(LCTL), T(I), U(LCTL), T(R), END ); | ||
| 470 | break; | ||
| 471 | } | ||
| 472 | } | ||
| 473 | return MACRO_NONE; | ||
| 474 | }; | ||
| 475 | |||
| 240 | // Runs just one time when the keyboard initializes. | 476 | // Runs just one time when the keyboard initializes. |
| 241 | void matrix_init_user(void) { | 477 | void matrix_init_user(void) { |
| 242 | 478 | set_unicode_input_mode(UC_LNX); | |
| 243 | }; | 479 | }; |
| 244 | 480 | ||
| 245 | // Runs constantly in the background, in a loop. | 481 | // Runs constantly in the background, in a loop. |
| 246 | void matrix_scan_user(void) { | 482 | void matrix_scan_user(void) { |
| 247 | |||
| 248 | uint8_t layer = biton32(layer_state); | 483 | uint8_t layer = biton32(layer_state); |
| 249 | 484 | ||
| 250 | ergodox_board_led_off(); | 485 | ergodox_board_led_off(); |
| @@ -254,12 +489,21 @@ void matrix_scan_user(void) { | |||
| 254 | switch (layer) { | 489 | switch (layer) { |
| 255 | case 1: | 490 | case 1: |
| 256 | ergodox_right_led_1_on(); | 491 | ergodox_right_led_1_on(); |
| 492 | #ifdef RGBLIGHT_ENABLE | ||
| 493 | rgblight_setrgb(0xff,0x00,0x00); | ||
| 494 | #endif | ||
| 257 | break; | 495 | break; |
| 258 | case 2: | 496 | case 2: |
| 259 | ergodox_right_led_2_on(); | 497 | ergodox_right_led_2_on(); |
| 498 | #ifdef RGBLIGHT_ENABLE | ||
| 499 | rgblight_setrgb(0x00,0xff,0x00); | ||
| 500 | #endif | ||
| 260 | break; | 501 | break; |
| 261 | case 3: | 502 | case 3: |
| 262 | ergodox_right_led_3_on(); | 503 | ergodox_right_led_3_on(); |
| 504 | #ifdef RGBLIGHT_ENABLE | ||
| 505 | rgblight_setrgb(0x00,0x00,0xff); | ||
| 506 | #endif | ||
| 263 | break; | 507 | break; |
| 264 | case 4: | 508 | case 4: |
| 265 | ergodox_right_led_1_on(); // TODO: Make a fourth layer | 509 | ergodox_right_led_1_on(); // TODO: Make a fourth layer |
diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 809dd6eb5..fa41f0ec1 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md | |||
| @@ -1,9 +1,11 @@ | |||
| 1 | # ErgoDox EZ 1337 configuration | 1 | # ErgoDox EZ 1337 configuration |
| 2 | 2 | ||
| 3 | Custom layout based on the default layout. Intended for interational users of us intl-altgr layout. Note that | 3 | Custom layout based on the default layout. Intended for interational |
| 4 | some common keys might be missing, as this layout is intented to be used on *nix systems by users familiar | 4 | users of us intl-altgr layout. Note that some common keys might be |
| 5 | with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are | 5 | missing, as this layout is intented to be used on *nix systems by |
| 6 | unfamiliar with tiling window managers) as much as possibly. | 6 | users familiar with their system. The layout is geared towards |
| 7 | avoiding using the rat (mouse for those of you who are unfamiliar with | ||
| 8 | tiling window managers) as much as possibly. | ||
| 7 | 9 | ||
| 8 | # Layouts | 10 | # Layouts |
| 9 | 11 | ||
| @@ -13,24 +15,58 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo | |||
| 13 | 15 | ||
| 14 | [](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) | 16 | [](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) |
| 15 | 17 | ||
| 16 | ## Layer 1 - Symbols | 18 | The base layer here is marked with the us international alt-gr layout, |
| 19 | including characters bound to what on an iso keyboard would be alt-gr | ||
| 20 | and on an ansi keyboard right alt. | ||
| 17 | 21 | ||
| 18 | [](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) | 22 | Regular (and irregular) modifier keys are marked with a yellowish |
| 23 | gray. Layer moderators are marked with blue, red and green, which are | ||
| 24 | the same colors each layer displays on the LEDs when active. | ||
| 19 | 25 | ||
| 20 | ## Layer 2 - Media and Mouse | 26 | All of the layer switch keys, except for the two center keys marked L1 |
| 27 | TOG, are dual purpose. Hence for example the top left key produces ESC | ||
| 28 | if tapped, and temporarilly toggles L3 when hold down. The two center | ||
| 29 | L1 TOG keys toggle L1 on and off for more permanent layer toggling. | ||
| 21 | 30 | ||
| 22 | [](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) | 31 | The UNI keys enter the linux ibus unicode composer mode |
| 32 | (ie. Ctrl+Shift+u). Use this to enter unicode characters. Hit the key, | ||
| 33 | type in the unicode hex value, and hit enter. | ||
| 23 | 34 | ||
| 24 | ## Layer 3 - Navigation | 35 | ## Layer 1 - Symbols and RGB |
| 25 | 36 | ||
| 26 | [](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) | 37 | [](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) |
| 38 | |||
| 39 | The Symbols and RGB layer contains function keys, commonly used | ||
| 40 | symbols, a numpad and if you have the new Ergodox Ez shine keys for | ||
| 41 | controlling various RGB-led functions. In addition, it provides an up | ||
| 42 | and a down key for easy scrolling. RGB controller keys are yellow. | ||
| 43 | |||
| 44 | ## Layer 2 - Media, Mouse and Navigation | ||
| 45 | |||
| 46 | [](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) | ||
| 47 | |||
| 48 | The Media, Mouse and unicode layer contains special keys for moving | ||
| 49 | the mouse and clicking on it with the keyboard. In addition it | ||
| 50 | provides standard media control keys, and default arrow keys. | ||
| 51 | |||
| 52 | ## Layer 3 - Unicode | ||
| 53 | |||
| 54 | [](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) | ||
| 55 | |||
| 56 | The unicode layer provides keys for directly typing unicode (utf-8) | ||
| 27 | 57 | ||
| 28 | # Changelog | 58 | # Changelog |
| 29 | 59 | ||
| 30 | - 02.01.2017 Added delete key on second layer | 60 | - 02.01.2017 Added delete key on second layer |
| 31 | - 10.01.2017 Added layer images to readme | 61 | - 10.01.2017 Added layer images to readme |
| 62 | - 24.01.2017 Added support for Ergodox Shine. Added secondary L2 switch key on left hand | ||
| 63 | - 24.01.2017 Added unicode keys. Added shrug hug and yay. Moved Navigation to layer 2 | ||
| 64 | - 25.01.2017 Added lots of new emojis and some unicode keys | ||
| 65 | - 27.01.2017 Added new unicode keys and shortcut for ibus unicode composer key (CTRL+SHIFT+U) | ||
| 32 | 66 | ||
| 33 | # TODO | 67 | # TODO |
| 34 | 68 | ||
| 35 | - Add unicode support (direct input and indirect? see algernon layout for examples) | 69 | - Add macros for lots of stuff. (Lastpass cli, pushbullet cli, other push service cli, linode cli, more?) |
| 36 | - Add descriptions below each layer image of any special functions/keys | 70 | - Make macros for gnu screen and i3wm |
| 71 | - Look into the app launch macros in algernon keymap | ||
| 72 | |||
