diff options
10 files changed, 1835 insertions, 0 deletions
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/config.h b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/config.h new file mode 100644 index 0000000000..c147d5e67f --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/config.h | |||
| @@ -0,0 +1,75 @@ | |||
| 1 | /* Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | * | ||
| 3 | * This program is free software: you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License as published by | ||
| 5 | * the Free Software Foundation, either version 2 of the License, or | ||
| 6 | * (at your option) any later version. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | * GNU General Public License for more details. | ||
| 12 | * | ||
| 13 | * You should have received a copy of the GNU General Public License | ||
| 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 15 | */ | ||
| 16 | |||
| 17 | #pragma once | ||
| 18 | |||
| 19 | /* Flash */ | ||
| 20 | #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior | ||
| 21 | #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur. | ||
| 22 | |||
| 23 | /* OLED */ | ||
| 24 | #undef OLED_FONT_H | ||
| 25 | #define OLED_FONT_H "./oled/glcdfont.c" | ||
| 26 | |||
| 27 | #define OLED_TIMEOUT 25000 | ||
| 28 | #define OLED_BRIGHTNESS 60 // Protect my eyesss | ||
| 29 | #define SPLIT_LAYER_STATE_ENABLE | ||
| 30 | #define SPLIT_MODS_ENABLE | ||
| 31 | #define SPLIT_OLED_ENABLE | ||
| 32 | |||
| 33 | /* Auto shift ♥ */ | ||
| 34 | #define AUTO_SHIFT_TIMEOUT 115 | ||
| 35 | |||
| 36 | /* Redefine CTRL + space (See space cadet shift) */ | ||
| 37 | #define LCPO_KEYS KC_LCTL, KC_TRNS, KC_SPC | ||
| 38 | |||
| 39 | /* Unicode */ | ||
| 40 | // #define UNICODE_SELECTED_MODES UC_LNX | ||
| 41 | #define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX | ||
| 42 | |||
| 43 | /* leader */ | ||
| 44 | #define LEADER_PER_KEY_TIMING | ||
| 45 | #define LEADER_TIMEOUT 280 | ||
| 46 | #define LEADER_NO_TIMEOUT | ||
| 47 | |||
| 48 | /* Mouse */ | ||
| 49 | #define MK_3_SPEED | ||
| 50 | #define MK_MOMENTARY_ACCEL | ||
| 51 | |||
| 52 | #define MK_C_OFFSET_0 1 | ||
| 53 | #define MK_C_INTERVAL_0 12 | ||
| 54 | |||
| 55 | #define MK_C_OFFSET_1 4 | ||
| 56 | #define MK_C_INTERVAL_1 18 | ||
| 57 | |||
| 58 | #define MK_C_OFFSET_UNMOD 13 | ||
| 59 | #define MK_C_INTERVAL_UNMOD 15 | ||
| 60 | |||
| 61 | #define MK_C_OFFSET_2 25 | ||
| 62 | #define MK_C_INTERVAL_2 10 | ||
| 63 | |||
| 64 | |||
| 65 | #define MK_W_OFFSET_0 1 | ||
| 66 | #define MK_W_INTERVAL_0 160 | ||
| 67 | |||
| 68 | #define MK_W_OFFSET_1 2 | ||
| 69 | #define MK_W_INTERVAL_1 120 | ||
| 70 | |||
| 71 | #define MK_W_OFFSET_UNMOD 4 | ||
| 72 | #define MK_W_INTERVAL_UNMOD 70 | ||
| 73 | |||
| 74 | #define MK_W_OFFSET_2 10 | ||
| 75 | #define MK_W_INTERVAL_2 30 | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/auto_shift.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/auto_shift.c new file mode 100644 index 0000000000..d6bd3818b4 --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/auto_shift.c | |||
| @@ -0,0 +1,199 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_H | ||
| 5 | #include "keycodes.h" | ||
| 6 | |||
| 7 | /* Only for basis letters | ||
| 8 | Exceptions like Tab or Enter */ | ||
| 9 | bool get_auto_shifted_key(uint16_t keycode, keyrecord_t *record) { | ||
| 10 | |||
| 11 | switch (keycode) { | ||
| 12 | |||
| 13 | case KC_TAB: | ||
| 14 | case KC_ENT: | ||
| 15 | |||
| 16 | // -- | ||
| 17 | case KC_A: | ||
| 18 | case KC_B: | ||
| 19 | case KC_C: | ||
| 20 | case KC_D: | ||
| 21 | case KC_E: | ||
| 22 | case KC_F: | ||
| 23 | case KC_G: | ||
| 24 | case KC_H: | ||
| 25 | case KC_I: | ||
| 26 | case KC_J: | ||
| 27 | case KC_K: | ||
| 28 | case KC_L: | ||
| 29 | case KC_M: | ||
| 30 | case KC_N: | ||
| 31 | case KC_O: | ||
| 32 | case KC_P: | ||
| 33 | case KC_Q: | ||
| 34 | case KC_R: | ||
| 35 | case KC_S: | ||
| 36 | case KC_T: | ||
| 37 | case KC_U: | ||
| 38 | case KC_V: | ||
| 39 | case KC_W: | ||
| 40 | case KC_X: | ||
| 41 | case KC_Y: | ||
| 42 | case KC_Z: | ||
| 43 | |||
| 44 | return true; | ||
| 45 | } | ||
| 46 | |||
| 47 | return get_custom_auto_shifted_key(keycode, record); | ||
| 48 | } | ||
| 49 | |||
| 50 | |||
| 51 | /* Custom auto shift | ||
| 52 | I use this instead of tap dance because double tap is horrible | ||
| 53 | Add here the letter or the custom enum, then add in press_user and press_release the actions */ | ||
| 54 | bool get_custom_auto_shifted_key(uint16_t keycode, keyrecord_t *record) { | ||
| 55 | switch(keycode) { | ||
| 56 | |||
| 57 | case KC_BSPC: | ||
| 58 | case KC_LABK: // Easy indent with vim | ||
| 59 | case KC_RABK: | ||
| 60 | |||
| 61 | /* French */ | ||
| 62 | case CS_E_ACUTE: | ||
| 63 | |||
| 64 | case CS_A_GRAVE: | ||
| 65 | case CS_E_GRAVE: | ||
| 66 | case CS_I_GRAVE: | ||
| 67 | case CS_O_GRAVE: | ||
| 68 | case CS_U_GRAVE: | ||
| 69 | |||
| 70 | case CS_A_CIRCUMFLEX: | ||
| 71 | case CS_E_CIRCUMFLEX: | ||
| 72 | case CS_I_CIRCUMFLEX: | ||
| 73 | case CS_O_CIRCUMFLEX: | ||
| 74 | case CS_U_CIRCUMFLEX: | ||
| 75 | |||
| 76 | case CS_A_DIAERESIS: | ||
| 77 | case CS_E_DIAERESIS: | ||
| 78 | case CS_I_DIAERESIS: | ||
| 79 | case CS_O_DIAERESIS: | ||
| 80 | case CS_U_DIAERESIS: | ||
| 81 | case CS_Y_DIAERESIS: | ||
| 82 | |||
| 83 | case CS_C_CEDILLA: | ||
| 84 | case CS_AE: | ||
| 85 | case CS_OE: | ||
| 86 | |||
| 87 | return true; | ||
| 88 | |||
| 89 | default: | ||
| 90 | return false; | ||
| 91 | } | ||
| 92 | } | ||
| 93 | |||
| 94 | void autoshift_press_user(uint16_t keycode, bool shifted, keyrecord_t *record) { | ||
| 95 | switch(keycode) { | ||
| 96 | |||
| 97 | case KC_BSPC: | ||
| 98 | register_code16((!shifted) ? KC_BSPC : KC_DEL); | ||
| 99 | break; | ||
| 100 | |||
| 101 | case KC_LABK: | ||
| 102 | if (shifted) { send_unicode_string("<<"); } | ||
| 103 | else { send_unicode_string("<"); } break; | ||
| 104 | |||
| 105 | case KC_RABK: | ||
| 106 | if (shifted) { send_unicode_string(">>"); } | ||
| 107 | else { send_unicode_string(">"); } break; | ||
| 108 | |||
| 109 | /* French | ||
| 110 | Release is not necessary with 'send_unicode_string()' */ | ||
| 111 | case CS_E_ACUTE: | ||
| 112 | if (shifted) { send_unicode_string("É"); } | ||
| 113 | else { send_unicode_string("é"); } break; | ||
| 114 | |||
| 115 | case CS_A_GRAVE: | ||
| 116 | if (shifted) { send_unicode_string("À"); } | ||
| 117 | else { send_unicode_string("à"); } break; | ||
| 118 | case CS_E_GRAVE: | ||
| 119 | if (shifted) { send_unicode_string("È"); } | ||
| 120 | else { send_unicode_string("è"); } break; | ||
| 121 | case CS_I_GRAVE: | ||
| 122 | if (shifted) { send_unicode_string("Ì"); } | ||
| 123 | else { send_unicode_string("ì"); } break; | ||
| 124 | case CS_O_GRAVE: | ||
| 125 | if (shifted) { send_unicode_string("Ò"); } | ||
| 126 | else { send_unicode_string("ò"); } break; | ||
| 127 | case CS_U_GRAVE: | ||
| 128 | if (shifted) { send_unicode_string("Ù"); } | ||
| 129 | else { send_unicode_string("ù"); } break; | ||
| 130 | |||
| 131 | case CS_A_CIRCUMFLEX: | ||
| 132 | if (shifted) { send_unicode_string("Â"); } | ||
| 133 | else { send_unicode_string("â"); } break; | ||
| 134 | case CS_E_CIRCUMFLEX: | ||
| 135 | if (shifted) { send_unicode_string("Ê"); } | ||
| 136 | else { send_unicode_string("ê"); } break; | ||
| 137 | case CS_I_CIRCUMFLEX: | ||
| 138 | if (shifted) { send_unicode_string("Î"); } | ||
| 139 | else { send_unicode_string("î"); } break; | ||
| 140 | case CS_O_CIRCUMFLEX: | ||
| 141 | if (shifted) { send_unicode_string("Ô"); } | ||
| 142 | else { send_unicode_string("ô"); } break; | ||
| 143 | case CS_U_CIRCUMFLEX: | ||
| 144 | if (shifted) { send_unicode_string("Û"); } | ||
| 145 | else { send_unicode_string("û"); } break; | ||
| 146 | |||
| 147 | case CS_A_DIAERESIS: | ||
| 148 | if (shifted) { send_unicode_string("Ä"); } | ||
| 149 | else { send_unicode_string("ä"); } break; | ||
| 150 | case CS_E_DIAERESIS: | ||
| 151 | if (shifted) { send_unicode_string("Ë"); } | ||
| 152 | else { send_unicode_string("ë"); } break; | ||
| 153 | case CS_I_DIAERESIS: | ||
| 154 | if (shifted) { send_unicode_string("Ï"); } | ||
| 155 | else { send_unicode_string("ï"); } break; | ||
| 156 | case CS_O_DIAERESIS: | ||
| 157 | if (shifted) { send_unicode_string("Ö"); } | ||
| 158 | else { send_unicode_string("ö"); } break; | ||
| 159 | case CS_U_DIAERESIS: | ||
| 160 | if (shifted) { send_unicode_string("Ü"); } | ||
| 161 | else { send_unicode_string("ü"); } break; | ||
| 162 | case CS_Y_DIAERESIS: | ||
| 163 | if (shifted) { send_unicode_string("Ÿ"); } | ||
| 164 | else { send_unicode_string("ÿ"); } break; | ||
| 165 | |||
| 166 | case CS_C_CEDILLA: | ||
| 167 | if (shifted) { send_unicode_string("Ç"); } | ||
| 168 | else { send_unicode_string("ç"); } break; | ||
| 169 | case CS_AE: | ||
| 170 | if (shifted) { send_unicode_string("Æ"); } | ||
| 171 | else { send_unicode_string("æ"); } break; | ||
| 172 | case CS_OE: | ||
| 173 | if (shifted) { send_unicode_string("Œ"); } | ||
| 174 | else { send_unicode_string("œ"); } break; | ||
| 175 | |||
| 176 | |||
| 177 | default: | ||
| 178 | if (shifted) { | ||
| 179 | add_weak_mods(MOD_BIT(KC_LSFT)); | ||
| 180 | } | ||
| 181 | /* & 0xFF gets the Tap key for Tap Holds, required when using Retro Shift */ | ||
| 182 | register_code16((IS_RETRO(keycode)) ? keycode & 0xFF : keycode); | ||
| 183 | } | ||
| 184 | } | ||
| 185 | |||
| 186 | void autoshift_release_user(uint16_t keycode, bool shifted, keyrecord_t *record) { | ||
| 187 | switch(keycode) { | ||
| 188 | |||
| 189 | case KC_BSPC: | ||
| 190 | unregister_code16((!shifted) ? KC_BSPC : KC_DEL); | ||
| 191 | break; | ||
| 192 | |||
| 193 | default: | ||
| 194 | /* & 0xFF gets the Tap key for Tap Holds, required when using Retro Shift | ||
| 195 | The IS_RETRO check isn't really necessary here, always using | ||
| 196 | keycode & 0xFF would be fine. */ | ||
| 197 | unregister_code16((IS_RETRO(keycode)) ? keycode & 0xFF : keycode); | ||
| 198 | } | ||
| 199 | } | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/combo.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/combo.c new file mode 100644 index 0000000000..e5b897dc62 --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/combo.c | |||
| @@ -0,0 +1,275 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_H | ||
| 5 | #include "keycodes.h" | ||
| 6 | |||
| 7 | /* How to : | ||
| 8 | - Add an entry in the enum | ||
| 9 | - Create a new sequence of keys | ||
| 10 | - Link the enum to this sequence in the key_combos table | ||
| 11 | |||
| 12 | For macros : | ||
| 13 | - Same steps | ||
| 14 | - And add the macro in the process_combo_event() function | ||
| 15 | */ | ||
| 16 | |||
| 17 | enum combos { | ||
| 18 | LEADER, | ||
| 19 | BOOTLOADER, | ||
| 20 | |||
| 21 | LAYER_ADJUST, | ||
| 22 | LAYER_FN, | ||
| 23 | LAYER_LEFT_HAND, | ||
| 24 | |||
| 25 | /* French */ | ||
| 26 | E_ACUTE, | ||
| 27 | C_CEDILLA, | ||
| 28 | E_A, | ||
| 29 | E_O, | ||
| 30 | |||
| 31 | A_GRAVE, | ||
| 32 | E_GRAVE, | ||
| 33 | I_GRAVE, | ||
| 34 | O_GRAVE, | ||
| 35 | U_GRAVE, | ||
| 36 | |||
| 37 | A_CIRCUMFLEX, | ||
| 38 | E_CIRCUMFLEX, | ||
| 39 | I_CIRCUMFLEX, | ||
| 40 | O_CIRCUMFLEX, | ||
| 41 | U_CIRCUMFLEX, | ||
| 42 | |||
| 43 | A_DIAERESIS, | ||
| 44 | E_DIAERESIS, | ||
| 45 | I_DIAERESIS, | ||
| 46 | O_DIAERESIS, | ||
| 47 | U_DIAERESIS, | ||
| 48 | Y_DIAERESIS, | ||
| 49 | |||
| 50 | /* -- */ | ||
| 51 | AMPERSAND, | ||
| 52 | AT_SIGN, | ||
| 53 | BACKSLASH, | ||
| 54 | CIRCUMFLEX, | ||
| 55 | COLON, | ||
| 56 | DOLLAR, | ||
| 57 | EQUAL, | ||
| 58 | EXCLAMATION_MARK, | ||
| 59 | GRAVE, | ||
| 60 | HASH, | ||
| 61 | MINUS, | ||
| 62 | PERCENT, | ||
| 63 | PIPE, | ||
| 64 | PLUS, | ||
| 65 | QUESTION_MARK, | ||
| 66 | QUOTE, | ||
| 67 | QUOTE_DOUBLE, | ||
| 68 | SEMICOLON, | ||
| 69 | SLASH, | ||
| 70 | STAR, | ||
| 71 | TILDE, | ||
| 72 | UNDERSCORE, | ||
| 73 | |||
| 74 | ANGLE_BRACKET_LEFT, | ||
| 75 | ANGLE_BRACKET_RIGHT, | ||
| 76 | |||
| 77 | BRACKET_LEFT, | ||
| 78 | BRACKET_RIGHT, | ||
| 79 | CURLY_BRACKET_LEFT, | ||
| 80 | CURLY_BRACKET_RIGHT, | ||
| 81 | PARENTHESIS_LEFT, | ||
| 82 | PARENTHESIS_RIGHT, | ||
| 83 | |||
| 84 | /* -- */ | ||
| 85 | ALT_SHIFT, | ||
| 86 | CONTROL_SHIFT, | ||
| 87 | CONTROL_ALT, | ||
| 88 | CONTROL_SHIFT_ALT, | ||
| 89 | RIGHT_ALT, | ||
| 90 | |||
| 91 | /* One hand special */ | ||
| 92 | CONTROL_RIGHT, | ||
| 93 | CONTROL_SHIFT_RIGHT, | ||
| 94 | |||
| 95 | // DEL_LEFT, | ||
| 96 | SHIFT_LEFT, | ||
| 97 | ALTGR_LEFT, | ||
| 98 | CONTROL_SHIFT_LEFT, | ||
| 99 | |||
| 100 | /* Just to replace the define in config.h */ | ||
| 101 | COMBO_LENGTH, | ||
| 102 | }; | ||
| 103 | uint16_t COMBO_LEN = COMBO_LENGTH; | ||
| 104 | |||
| 105 | |||
| 106 | /* Sequences fo keys */ | ||
| 107 | const uint16_t PROGMEM combo_leader[] = {LT(_MOUSE, KC_COMM), LT(_ARROWS, KC_DOT), COMBO_END}; | ||
| 108 | const uint16_t PROGMEM combo_bootloader[] = {KC_K, KC_TAB, KC_Z, KC_BSPC, KC_V, KC_J, COMBO_END}; | ||
| 109 | |||
| 110 | const uint16_t PROGMEM combo_adjust[] = {KC_LCPO, LT(_NUMERIC, KC_ENT), COMBO_END}; | ||
| 111 | const uint16_t PROGMEM combo_fn[] = {LT(_NUMERIC, KC_ENT), KC_N, COMBO_END}; | ||
| 112 | const uint16_t PROGMEM combo_left_hand[] = {KC_LCPO, GUI_T(KC_ESC), COMBO_END}; | ||
| 113 | |||
| 114 | /* -- */ | ||
| 115 | // const uint16_t PROGMEM combo_enter_shifted[] = {LT(_NUMERIC, KC_ENT), KC_S, COMBO_END}; | ||
| 116 | const uint16_t PROGMEM combo_control_shift[] = {KC_LCPO, KC_S, COMBO_END}; | ||
| 117 | const uint16_t PROGMEM combo_control_alt[] = {KC_LCPO, KC_LALT, COMBO_END}; | ||
| 118 | const uint16_t PROGMEM combo_control_shift_alt[] = {KC_LCPO, KC_S, KC_A, COMBO_END}; | ||
| 119 | const uint16_t PROGMEM combo_right_alt[] = {KC_LAPO, KC_G, COMBO_END}; | ||
| 120 | const uint16_t PROGMEM combo_alt_shift[] = {KC_LALT, KC_S, COMBO_END}; | ||
| 121 | |||
| 122 | /* -- */ | ||
| 123 | const uint16_t PROGMEM combo_e_acute[] = {KC_LCPO, KC_E, COMBO_END}; | ||
| 124 | const uint16_t PROGMEM combo_c_cedilla[] = {KC_LCPO, KC_I, COMBO_END}; | ||
| 125 | const uint16_t PROGMEM combo_ea[] = {KC_LCPO, KC_A, COMBO_END}; | ||
| 126 | const uint16_t PROGMEM combo_eo[] = {KC_LCPO, KC_O, COMBO_END}; | ||
| 127 | |||
| 128 | const uint16_t PROGMEM combo_a_grave[] = {LT(_MOUSE, KC_COMM), KC_A, COMBO_END}; | ||
| 129 | const uint16_t PROGMEM combo_e_grave[] = {LT(_MOUSE, KC_COMM), KC_E, COMBO_END}; | ||
| 130 | const uint16_t PROGMEM combo_i_grave[] = {LT(_MOUSE, KC_COMM), KC_I, COMBO_END}; | ||
| 131 | const uint16_t PROGMEM combo_o_grave[] = {LT(_MOUSE, KC_COMM), KC_O, COMBO_END}; | ||
| 132 | const uint16_t PROGMEM combo_u_grave[] = {LT(_MOUSE, KC_COMM), KC_U, COMBO_END}; | ||
| 133 | |||
| 134 | const uint16_t PROGMEM combo_a_circumflex[] = {KC_C, KC_A, COMBO_END}; | ||
| 135 | const uint16_t PROGMEM combo_e_circumflex[] = {KC_C, KC_E, COMBO_END}; | ||
| 136 | const uint16_t PROGMEM combo_i_circumflex[] = {KC_C, KC_I, COMBO_END}; | ||
| 137 | const uint16_t PROGMEM combo_o_circumflex[] = {KC_C, KC_O, COMBO_END}; | ||
| 138 | const uint16_t PROGMEM combo_u_circumflex[] = {KC_C, KC_U, COMBO_END}; | ||
| 139 | |||
| 140 | const uint16_t PROGMEM combo_a_diaeresis[] = {KC_T, KC_A, COMBO_END}; | ||
| 141 | const uint16_t PROGMEM combo_e_diaeresis[] = {KC_T, KC_E, COMBO_END}; | ||
| 142 | const uint16_t PROGMEM combo_i_diaeresis[] = {KC_T, KC_I, COMBO_END}; | ||
| 143 | const uint16_t PROGMEM combo_o_diaeresis[] = {KC_T, KC_O, COMBO_END}; | ||
| 144 | const uint16_t PROGMEM combo_u_diaeresis[] = {KC_T, KC_U, COMBO_END}; | ||
| 145 | const uint16_t PROGMEM combo_y_diaeresis[] = {KC_T, KC_Y, COMBO_END}; | ||
| 146 | |||
| 147 | /* -- */ | ||
| 148 | const uint16_t PROGMEM combo_ampersand[] = {KC_I, KC_E, COMBO_END}; | ||
| 149 | const uint16_t PROGMEM combo_at_sign[] = {KC_Q, KC_Y, COMBO_END}; | ||
| 150 | const uint16_t PROGMEM combo_backslash[] = {KC_D, KC_R, COMBO_END}; | ||
| 151 | const uint16_t PROGMEM combo_circumflex[] = {KC_T, KC_D, COMBO_END}; | ||
| 152 | const uint16_t PROGMEM combo_colon[] = {KC_C, KC_G, COMBO_END}; | ||
| 153 | const uint16_t PROGMEM combo_dollar[] = {KC_D, KC_L, COMBO_END}; | ||
| 154 | const uint16_t PROGMEM combo_equal[] = {KC_T, KC_H, COMBO_END}; | ||
| 155 | const uint16_t PROGMEM combo_exclamation_mark[] = {KC_O, KC_W, COMBO_END}; | ||
| 156 | const uint16_t PROGMEM combo_grave[] = {KC_T, KC_G, COMBO_END}; | ||
| 157 | const uint16_t PROGMEM combo_hash[] = {KC_I, KC_O, COMBO_END}; | ||
| 158 | const uint16_t PROGMEM combo_minus[] = {KC_T, KC_R, COMBO_END}; | ||
| 159 | const uint16_t PROGMEM combo_percent[] = {KC_O, KC_U, COMBO_END}; | ||
| 160 | const uint16_t PROGMEM combo_pipe[] = {KC_E, KC_U, COMBO_END}; | ||
| 161 | const uint16_t PROGMEM combo_plus[] = {KC_T, KC_L, COMBO_END}; | ||
| 162 | const uint16_t PROGMEM combo_question_mark[] = {KC_B, KC_O, COMBO_END}; | ||
| 163 | const uint16_t PROGMEM combo_quote[] = {KC_T, KC_N, COMBO_END}; | ||
| 164 | const uint16_t PROGMEM combo_quote_double[] = {KC_A, KC_U, COMBO_END}; | ||
| 165 | const uint16_t PROGMEM combo_semicolon[] = {KC_G, KC_H, COMBO_END}; | ||
| 166 | const uint16_t PROGMEM combo_slash[] = {KC_S, KC_L, COMBO_END}; | ||
| 167 | const uint16_t PROGMEM combo_star[] = {KC_S, KC_T, COMBO_END}; | ||
| 168 | const uint16_t PROGMEM combo_tilde[] = {KC_I, KC_U, COMBO_END}; | ||
| 169 | const uint16_t PROGMEM combo_underscore[] = {KC_S, KC_R, COMBO_END}; | ||
| 170 | |||
| 171 | const uint16_t PROGMEM combo_angle_bracket_left[] = {KC_C, KC_S, COMBO_END}; | ||
| 172 | const uint16_t PROGMEM combo_angle_bracket_right[] = {KC_S, KC_H, COMBO_END}; | ||
| 173 | |||
| 174 | const uint16_t PROGMEM combo_bracket_left[] = {KC_Q, KC_U, COMBO_END}; | ||
| 175 | const uint16_t PROGMEM combo_bracket_right[] = {KC_E, KC_Y, COMBO_END}; | ||
| 176 | const uint16_t PROGMEM combo_curly_bracket_left[] = {KC_X, KC_E, COMBO_END}; | ||
| 177 | const uint16_t PROGMEM combo_curly_bracket_right[] = {KC_I, KC_Q, COMBO_END}; | ||
| 178 | const uint16_t PROGMEM combo_parenthesis_left[] = {KC_X, KC_U, COMBO_END}; | ||
| 179 | const uint16_t PROGMEM combo_parenthesis_right[] = {KC_I, KC_Y, COMBO_END}; | ||
| 180 | |||
| 181 | /* One hand special */ | ||
| 182 | const uint16_t PROGMEM combo_control_right[] = {LT(_NUMERIC, KC_ENT), KC_R, COMBO_END}; | ||
| 183 | const uint16_t PROGMEM combo_control_shift_right[] = {LT(_NUMERIC, KC_ENT), KC_S, COMBO_END}; | ||
| 184 | |||
| 185 | const uint16_t PROGMEM combo_shift_left[] = {KC_LCPO, KC_LALT, COMBO_END}; | ||
| 186 | // const uint16_t PROGMEM combo_altgr_left[] = {LT(_MOUSE, KC_COMM), KC_LALT, COMBO_END}; | ||
| 187 | // const uint16_t PROGMEM combo_del_left[] = {GUI_T(KC_ESC), KC_K, COMBO_END}; | ||
| 188 | const uint16_t PROGMEM combo_control_shift_left[] = {LT(_MOUSE, KC_COMM), KC_LALT, COMBO_END}; | ||
| 189 | |||
| 190 | |||
| 191 | /* Sequences fo keys */ | ||
| 192 | combo_t key_combos[] = { | ||
| 193 | [LEADER] = COMBO(combo_leader, KC_LEAD), | ||
| 194 | [BOOTLOADER] = COMBO(combo_bootloader, QK_BOOTLOADER), | ||
| 195 | |||
| 196 | [LAYER_ADJUST] = COMBO(combo_adjust, OSL(_ADJUST)), | ||
| 197 | [LAYER_FN] = COMBO(combo_fn, OSL(_FN)), | ||
| 198 | [LAYER_LEFT_HAND] = COMBO(combo_left_hand, OSL(_LEFT_HAND)), | ||
| 199 | |||
| 200 | /* -- */ | ||
| 201 | // [ENTER_SHIFTED] = COMBO(combo_enter_shifted, S(KC_ENT)), | ||
| 202 | [ALT_SHIFT] = COMBO(combo_alt_shift, A(S(XXXXXXX))), | ||
| 203 | [CONTROL_SHIFT] = COMBO(combo_control_shift, C(S(XXXXXXX))), | ||
| 204 | [CONTROL_ALT] = COMBO(combo_control_alt, C(A(XXXXXXX))), | ||
| 205 | [CONTROL_SHIFT_ALT] = COMBO(combo_control_shift_alt, C(S(A(XXXXXXX)))), | ||
| 206 | [RIGHT_ALT] = COMBO(combo_right_alt, KC_RALT), | ||
| 207 | |||
| 208 | /* French */ | ||
| 209 | [E_ACUTE] = COMBO(combo_e_acute, CS_E_ACUTE), | ||
| 210 | [C_CEDILLA] = COMBO(combo_c_cedilla, CS_C_CEDILLA), | ||
| 211 | [E_A] = COMBO(combo_ea, CS_AE), | ||
| 212 | [E_O] = COMBO(combo_eo, CS_OE), | ||
| 213 | |||
| 214 | [A_GRAVE] = COMBO(combo_a_grave, CS_A_GRAVE), | ||
| 215 | [E_GRAVE] = COMBO(combo_e_grave, CS_E_GRAVE), | ||
| 216 | [I_GRAVE] = COMBO(combo_i_grave, CS_I_GRAVE), | ||
| 217 | [O_GRAVE] = COMBO(combo_o_grave, CS_O_GRAVE), | ||
| 218 | [U_GRAVE] = COMBO(combo_u_grave, CS_U_GRAVE), | ||
| 219 | |||
| 220 | [A_CIRCUMFLEX] = COMBO(combo_a_circumflex, CS_A_CIRCUMFLEX), | ||
| 221 | [E_CIRCUMFLEX] = COMBO(combo_e_circumflex, CS_E_CIRCUMFLEX), | ||
| 222 | [I_CIRCUMFLEX] = COMBO(combo_i_circumflex, CS_I_CIRCUMFLEX), | ||
| 223 | [O_CIRCUMFLEX] = COMBO(combo_o_circumflex, CS_O_CIRCUMFLEX), | ||
| 224 | [U_CIRCUMFLEX] = COMBO(combo_u_circumflex, CS_U_CIRCUMFLEX), | ||
| 225 | |||
| 226 | [A_DIAERESIS] = COMBO(combo_a_diaeresis, CS_A_DIAERESIS), | ||
| 227 | [E_DIAERESIS] = COMBO(combo_e_diaeresis, CS_E_DIAERESIS), | ||
| 228 | [I_DIAERESIS] = COMBO(combo_i_diaeresis, CS_I_DIAERESIS), | ||
| 229 | [O_DIAERESIS] = COMBO(combo_o_diaeresis, CS_O_DIAERESIS), | ||
| 230 | [U_DIAERESIS] = COMBO(combo_u_diaeresis, CS_U_DIAERESIS), | ||
| 231 | [Y_DIAERESIS] = COMBO(combo_y_diaeresis, CS_Y_DIAERESIS), | ||
| 232 | |||
| 233 | /* -- */ | ||
| 234 | [AMPERSAND] = COMBO(combo_ampersand, KC_AMPR), | ||
| 235 | [AT_SIGN] = COMBO(combo_at_sign, KC_AT), | ||
| 236 | [BACKSLASH] = COMBO(combo_backslash, KC_BSLS), | ||
| 237 | [CIRCUMFLEX] = COMBO(combo_circumflex, KC_CIRC), | ||
| 238 | [COLON] = COMBO(combo_colon, KC_COLON), | ||
| 239 | [DOLLAR] = COMBO(combo_dollar, KC_DLR), | ||
| 240 | [EQUAL] = COMBO(combo_equal, KC_EQL), | ||
| 241 | [EXCLAMATION_MARK] = COMBO(combo_exclamation_mark, KC_EXCLAIM), | ||
| 242 | [GRAVE] = COMBO(combo_grave, KC_GRV), | ||
| 243 | [HASH] = COMBO(combo_hash, KC_HASH), | ||
| 244 | [MINUS] = COMBO(combo_minus, KC_MINS), | ||
| 245 | [PERCENT] = COMBO(combo_percent, KC_PERC), | ||
| 246 | [PIPE] = COMBO(combo_pipe, KC_PIPE), | ||
| 247 | [PLUS] = COMBO(combo_plus, KC_PLUS), | ||
| 248 | [QUESTION_MARK] = COMBO(combo_question_mark, KC_QUESTION), | ||
| 249 | [QUOTE] = COMBO(combo_quote, KC_QUOTE), | ||
| 250 | [QUOTE_DOUBLE] = COMBO(combo_quote_double, KC_DOUBLE_QUOTE), | ||
| 251 | [SEMICOLON] = COMBO(combo_semicolon, KC_SEMICOLON), | ||
| 252 | [SLASH] = COMBO(combo_slash, KC_SLSH), | ||
| 253 | [STAR] = COMBO(combo_star, KC_ASTR), | ||
| 254 | [TILDE] = COMBO(combo_tilde, KC_TILD), | ||
| 255 | [UNDERSCORE] = COMBO(combo_underscore, KC_UNDS), | ||
| 256 | |||
| 257 | [ANGLE_BRACKET_LEFT] = COMBO(combo_angle_bracket_left, KC_LABK), | ||
| 258 | [ANGLE_BRACKET_RIGHT] = COMBO(combo_angle_bracket_right, KC_RABK), | ||
| 259 | |||
| 260 | [BRACKET_LEFT] = COMBO(combo_bracket_left, KC_LEFT_BRACKET), | ||
| 261 | [BRACKET_RIGHT] = COMBO(combo_bracket_right, KC_RIGHT_BRACKET), | ||
| 262 | [CURLY_BRACKET_LEFT] = COMBO(combo_curly_bracket_left, KC_LEFT_CURLY_BRACE), | ||
| 263 | [CURLY_BRACKET_RIGHT] = COMBO(combo_curly_bracket_right, KC_RIGHT_CURLY_BRACE), | ||
| 264 | [PARENTHESIS_LEFT] = COMBO(combo_parenthesis_left, KC_LEFT_PAREN), | ||
| 265 | [PARENTHESIS_RIGHT] COMBO(combo_parenthesis_right, KC_RIGHT_PAREN), | ||
| 266 | |||
| 267 | /* One hand special */ | ||
| 268 | [CONTROL_RIGHT] = COMBO(combo_control_right, KC_RCTL), | ||
| 269 | [CONTROL_SHIFT_RIGHT] = COMBO(combo_control_shift_right, C(S(XXXXXXX))), | ||
| 270 | |||
| 271 | [SHIFT_LEFT] = COMBO(combo_shift_left, KC_LSFT), | ||
| 272 | // [ALTGR_LEFT] = COMBO(combo_altgr_left, KC_ALGR), | ||
| 273 | [CONTROL_SHIFT_LEFT] = COMBO(combo_control_shift_left, C(S(XXXXXXX))), | ||
| 274 | // [DEL_LEFT] = COMBO(combo_del_left, KC_BSPC), | ||
| 275 | }; | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/leader.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/leader.c new file mode 100644 index 0000000000..7cfd30af6d --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/features/leader.c | |||
| @@ -0,0 +1,268 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_H | ||
| 5 | |||
| 6 | LEADER_EXTERNS(); | ||
| 7 | |||
| 8 | void matrix_scan_user(void) { | ||
| 9 | LEADER_DICTIONARY() { | ||
| 10 | leading = false; | ||
| 11 | leader_end(); | ||
| 12 | |||
| 13 | // SEQ_ONE_KEY(KC_F) { | ||
| 14 | // // Anything you can do in a macro. | ||
| 15 | // SEND_STRING("QMK is awesome."); } | ||
| 16 | |||
| 17 | |||
| 18 | SEQ_TWO_KEYS(KC_M, KC_S) { | ||
| 19 | SEND_STRING("f@linguenheld.fr"); } | ||
| 20 | SEQ_TWO_KEYS(KC_M, KC_L) { | ||
| 21 | SEND_STRING("florent@linguenheld.fr"); } | ||
| 22 | SEQ_TWO_KEYS(KC_F, KC_L) { | ||
| 23 | SEND_STRING("FLinguenheld"); } | ||
| 24 | |||
| 25 | SEQ_THREE_KEYS(KC_T, KC_E, KC_S) { | ||
| 26 | SEND_STRING("test01234"); } | ||
| 27 | SEQ_THREE_KEYS(KC_A, KC_D, KC_M) { | ||
| 28 | SEND_STRING("admin01234"); } | ||
| 29 | |||
| 30 | SEQ_ONE_KEY(KC_C) { | ||
| 31 | SEND_STRING(" | xclip -r -selection clipboard"); } | ||
| 32 | |||
| 33 | /* Degree */ | ||
| 34 | SEQ_THREE_KEYS(KC_D, KC_E, KC_G) { | ||
| 35 | send_unicode_string("°"); } | ||
| 36 | |||
| 37 | /* Copyright / Register */ | ||
| 38 | SEQ_THREE_KEYS(KC_C, KC_O, KC_P) { | ||
| 39 | send_unicode_string("©"); } | ||
| 40 | SEQ_THREE_KEYS(KC_R, KC_E, KC_G) { | ||
| 41 | send_unicode_string("®"); } | ||
| 42 | |||
| 43 | /* Diameter */ | ||
| 44 | SEQ_THREE_KEYS(KC_D, KC_I, KC_A) { | ||
| 45 | send_unicode_string("ø"); } | ||
| 46 | SEQ_FOUR_KEYS(KC_D, KC_I, KC_A, KC_M) { | ||
| 47 | send_unicode_string("Ø"); } | ||
| 48 | |||
| 49 | /* Currency */ | ||
| 50 | SEQ_THREE_KEYS(KC_E, KC_U, KC_R) { | ||
| 51 | send_unicode_string("€"); } | ||
| 52 | SEQ_THREE_KEYS(KC_P, KC_O, KC_U) { | ||
| 53 | send_unicode_string("£"); } | ||
| 54 | SEQ_THREE_KEYS(KC_Y, KC_E, KC_N) { | ||
| 55 | send_unicode_string("¥"); } | ||
| 56 | SEQ_THREE_KEYS(KC_C, KC_E, KC_N) { | ||
| 57 | send_unicode_string("¢"); } | ||
| 58 | |||
| 59 | /* Fractions */ | ||
| 60 | SEQ_THREE_KEYS(KC_F, KC_C, KC_T) { | ||
| 61 | send_unicode_string("¼"); } | ||
| 62 | SEQ_THREE_KEYS(KC_F, KC_C, KC_G) { | ||
| 63 | send_unicode_string("½"); } | ||
| 64 | SEQ_THREE_KEYS(KC_F, KC_H, KC_T) { | ||
| 65 | send_unicode_string("¾"); } | ||
| 66 | |||
| 67 | /* Maths */ | ||
| 68 | SEQ_THREE_KEYS(KC_M, KC_U, KC_L) { | ||
| 69 | send_unicode_string("×"); } | ||
| 70 | SEQ_THREE_KEYS(KC_D, KC_I, KC_V) { | ||
| 71 | send_unicode_string("÷"); } | ||
| 72 | SEQ_TWO_KEYS(KC_P, KC_M) { | ||
| 73 | send_unicode_string("±"); } | ||
| 74 | SEQ_THREE_KEYS(KC_I, KC_N, KC_E) { | ||
| 75 | send_unicode_string("≠"); } | ||
| 76 | SEQ_THREE_KEYS(KC_A, KC_L, KC_M) { | ||
| 77 | send_unicode_string("≈"); } | ||
| 78 | SEQ_THREE_KEYS(KC_S, KC_Q, KC_U) { | ||
| 79 | send_unicode_string("√"); } | ||
| 80 | SEQ_THREE_KEYS(KC_I, KC_N, KC_F) { | ||
| 81 | send_unicode_string("∞"); } | ||
| 82 | SEQ_TWO_KEYS(KC_LABK, KC_LABK) { | ||
| 83 | send_unicode_string("≤"); } | ||
| 84 | SEQ_TWO_KEYS(KC_RABK, KC_RABK) { | ||
| 85 | send_unicode_string("≥"); } | ||
| 86 | |||
| 87 | /* Greek */ | ||
| 88 | SEQ_TWO_KEYS(KC_P, KC_I) { | ||
| 89 | send_unicode_string("π"); } | ||
| 90 | SEQ_THREE_KEYS(KC_P, KC_I, KC_I) { | ||
| 91 | send_unicode_string("Π"); } | ||
| 92 | |||
| 93 | SEQ_THREE_KEYS(KC_O, KC_M, KC_E) { | ||
| 94 | send_unicode_string("ω"); } | ||
| 95 | SEQ_FOUR_KEYS(KC_O, KC_M, KC_E, KC_G) { | ||
| 96 | send_unicode_string("Ω"); } | ||
| 97 | |||
| 98 | /* Icons */ | ||
| 99 | SEQ_THREE_KEYS(KC_F, KC_L, KC_A) { | ||
| 100 | send_unicode_string("⚡"); } | ||
| 101 | SEQ_THREE_KEYS(KC_S, KC_T, KC_A) { | ||
| 102 | send_unicode_string("⭐"); } | ||
| 103 | SEQ_THREE_KEYS(KC_S, KC_P, KC_A) { | ||
| 104 | send_unicode_string("✨"); } | ||
| 105 | SEQ_THREE_KEYS(KC_P, KC_O, KC_P) { | ||
| 106 | send_unicode_string("🎉"); } | ||
| 107 | SEQ_THREE_KEYS(KC_R, KC_E, KC_C) { | ||
| 108 | send_unicode_string("♻️"); } | ||
| 109 | SEQ_THREE_KEYS(KC_L, KC_O, KC_V) { | ||
| 110 | send_unicode_string("❤️"); } | ||
| 111 | SEQ_THREE_KEYS(KC_F, KC_I, KC_R) { | ||
| 112 | send_unicode_string("🔥"); } | ||
| 113 | SEQ_THREE_KEYS(KC_B, KC_O, KC_M) { | ||
| 114 | send_unicode_string("💣"); } | ||
| 115 | SEQ_FOUR_KEYS(KC_B, KC_O, KC_U, KC_M) { | ||
| 116 | send_unicode_string("💥"); } | ||
| 117 | SEQ_THREE_KEYS(KC_R, KC_O, KC_C) { | ||
| 118 | send_unicode_string("🚀"); } | ||
| 119 | SEQ_THREE_KEYS(KC_T, KC_E, KC_L) { | ||
| 120 | send_unicode_string("🔭"); } | ||
| 121 | SEQ_THREE_KEYS(KC_M, KC_A, KC_G) { | ||
| 122 | send_unicode_string("🔎"); } | ||
| 123 | SEQ_THREE_KEYS(KC_W, KC_A, KC_R) { | ||
| 124 | send_unicode_string("⚠️"); } | ||
| 125 | |||
| 126 | SEQ_THREE_KEYS(KC_B, KC_U, KC_L) { | ||
| 127 | send_unicode_string("💡"); } | ||
| 128 | SEQ_FOUR_KEYS(KC_I, KC_N, KC_F, KC_O) { | ||
| 129 | send_unicode_string("ℹ️"); } | ||
| 130 | SEQ_THREE_KEYS(KC_G, KC_E, KC_A) { | ||
| 131 | send_unicode_string("⚙️"); } | ||
| 132 | SEQ_THREE_KEYS(KC_L, KC_I, KC_N) { | ||
| 133 | send_unicode_string("🔗"); } | ||
| 134 | SEQ_THREE_KEYS(KC_P, KC_I, KC_N) { | ||
| 135 | send_unicode_string("📌"); } | ||
| 136 | SEQ_FOUR_KEYS(KC_F, KC_L, KC_A, KC_G) { | ||
| 137 | send_unicode_string("🚩"); } | ||
| 138 | SEQ_THREE_KEYS(KC_B, KC_A, KC_L) { | ||
| 139 | send_unicode_string("🎈"); } | ||
| 140 | SEQ_THREE_KEYS(KC_G, KC_I, KC_F) { | ||
| 141 | send_unicode_string("🎁"); } | ||
| 142 | |||
| 143 | SEQ_THREE_KEYS(KC_P, KC_E, KC_N) { | ||
| 144 | send_unicode_string("✏️"); } | ||
| 145 | SEQ_THREE_KEYS(KC_K, KC_E, KC_Y) { | ||
| 146 | send_unicode_string("🔑"); } | ||
| 147 | SEQ_THREE_KEYS(KC_B, KC_O, KC_X) { | ||
| 148 | send_unicode_string("🧰"); } | ||
| 149 | |||
| 150 | SEQ_TWO_KEYS(KC_O, KC_K) { | ||
| 151 | send_unicode_string("👌"); } | ||
| 152 | SEQ_THREE_KEYS(KC_O, KC_W, KC_D) { | ||
| 153 | send_unicode_string("⛔"); } | ||
| 154 | |||
| 155 | SEQ_ONE_KEY(KC_V) { | ||
| 156 | send_unicode_string("✓"); } | ||
| 157 | SEQ_TWO_KEYS(KC_V, KC_B) { | ||
| 158 | send_unicode_string("☑"); } | ||
| 159 | SEQ_TWO_KEYS(KC_V, KC_G) { | ||
| 160 | send_unicode_string("✅"); } | ||
| 161 | |||
| 162 | SEQ_ONE_KEY(KC_X) { | ||
| 163 | send_unicode_string("✗"); } | ||
| 164 | SEQ_TWO_KEYS(KC_X, KC_B) { | ||
| 165 | send_unicode_string("☒"); } | ||
| 166 | SEQ_TWO_KEYS(KC_X, KC_G) { | ||
| 167 | send_unicode_string("❎"); } | ||
| 168 | SEQ_TWO_KEYS(KC_X, KC_R) { | ||
| 169 | send_unicode_string("❌"); } | ||
| 170 | |||
| 171 | SEQ_ONE_KEY(KC_QUESTION) { | ||
| 172 | send_unicode_string("❔"); } | ||
| 173 | SEQ_ONE_KEY(KC_EXCLAIM) { | ||
| 174 | send_unicode_string("❕"); } | ||
| 175 | SEQ_TWO_KEYS(KC_QUESTION, KC_QUESTION) { | ||
| 176 | send_unicode_string("❓"); } | ||
| 177 | SEQ_TWO_KEYS(KC_EXCLAIM, KC_EXCLAIM) { | ||
| 178 | send_unicode_string("❗"); } | ||
| 179 | |||
| 180 | SEQ_THREE_KEYS(KC_C, KC_O, KC_F) { | ||
| 181 | send_unicode_string("☕"); } | ||
| 182 | SEQ_THREE_KEYS(KC_U, KC_M, KC_B) { | ||
| 183 | send_unicode_string("☔"); } | ||
| 184 | |||
| 185 | SEQ_THREE_KEYS(KC_L, KC_O, KC_L) { | ||
| 186 | send_unicode_string("😀"); } | ||
| 187 | SEQ_THREE_KEYS(KC_M, KC_D, KC_R) { | ||
| 188 | send_unicode_string("🤣"); } | ||
| 189 | SEQ_THREE_KEYS(KC_K, KC_I, KC_S) { | ||
| 190 | send_unicode_string("😙"); } | ||
| 191 | SEQ_THREE_KEYS(KC_A, KC_N, KC_G) { | ||
| 192 | send_unicode_string("😇"); } | ||
| 193 | SEQ_THREE_KEYS(KC_G, KC_L, KC_A) { | ||
| 194 | send_unicode_string("😎"); } | ||
| 195 | SEQ_THREE_KEYS(KC_A, KC_N, KC_G) { | ||
| 196 | send_unicode_string("🤬"); } | ||
| 197 | SEQ_THREE_KEYS(KC_F, KC_E, KC_A) { | ||
| 198 | send_unicode_string("😱"); } | ||
| 199 | SEQ_THREE_KEYS(KC_N, KC_E, KC_U) { | ||
| 200 | send_unicode_string("😐"); } | ||
| 201 | SEQ_THREE_KEYS(KC_T, KC_H, KC_I) { | ||
| 202 | send_unicode_string("🤔"); } | ||
| 203 | SEQ_THREE_KEYS(KC_Z, KC_I, KC_P) { | ||
| 204 | send_unicode_string("🤐"); } | ||
| 205 | SEQ_THREE_KEYS(KC_S, KC_U, KC_R) { | ||
| 206 | send_unicode_string("😯"); } | ||
| 207 | SEQ_THREE_KEYS(KC_R, KC_O, KC_L) { | ||
| 208 | send_unicode_string("🙄"); } | ||
| 209 | SEQ_THREE_KEYS(KC_M, KC_O, KC_O) { | ||
| 210 | send_unicode_string("🌝"); } | ||
| 211 | SEQ_THREE_KEYS(KC_H, KC_U, KC_G) { | ||
| 212 | send_unicode_string("🫂"); } | ||
| 213 | |||
| 214 | SEQ_THREE_KEYS(KC_H, KC_E, KC_N) { | ||
| 215 | send_unicode_string("🐔"); } | ||
| 216 | SEQ_THREE_KEYS(KC_R, KC_O, KC_O) { | ||
| 217 | send_unicode_string("🐓"); } | ||
| 218 | SEQ_THREE_KEYS(KC_D, KC_U, KC_C) { | ||
| 219 | send_unicode_string("🦆"); } | ||
| 220 | SEQ_THREE_KEYS(KC_P, KC_E, KC_A) { | ||
| 221 | send_unicode_string("🦚"); } | ||
| 222 | SEQ_THREE_KEYS(KC_B, KC_I, KC_R) { | ||
| 223 | send_unicode_string("🐦"); } | ||
| 224 | |||
| 225 | /* Subscript / superscript */ | ||
| 226 | SEQ_THREE_KEYS(KC_U, KC_P, KC_F) { | ||
| 227 | send_unicode_string("⁰"); } | ||
| 228 | SEQ_THREE_KEYS(KC_D, KC_N, KC_F) { | ||
| 229 | send_unicode_string("₀"); } | ||
| 230 | SEQ_THREE_KEYS(KC_U, KC_P, KC_C) { | ||
| 231 | send_unicode_string("¹"); } | ||
| 232 | SEQ_THREE_KEYS(KC_D, KC_N, KC_C) { | ||
| 233 | send_unicode_string("₁"); } | ||
| 234 | SEQ_THREE_KEYS(KC_U, KC_P, KC_G) { | ||
| 235 | send_unicode_string("²"); } | ||
| 236 | SEQ_THREE_KEYS(KC_D, KC_N, KC_G) { | ||
| 237 | send_unicode_string("₂"); } | ||
| 238 | SEQ_THREE_KEYS(KC_U, KC_P, KC_H) { | ||
| 239 | send_unicode_string("³"); } | ||
| 240 | SEQ_THREE_KEYS(KC_D, KC_N, KC_H) { | ||
| 241 | send_unicode_string("₃"); } | ||
| 242 | SEQ_THREE_KEYS(KC_U, KC_P, KC_T) { | ||
| 243 | send_unicode_string("⁴"); } | ||
| 244 | SEQ_THREE_KEYS(KC_D, KC_N, KC_T) { | ||
| 245 | send_unicode_string("₄"); } | ||
| 246 | SEQ_THREE_KEYS(KC_U, KC_P, KC_S) { | ||
| 247 | send_unicode_string("⁵"); } | ||
| 248 | SEQ_THREE_KEYS(KC_D, KC_N, KC_S) { | ||
| 249 | send_unicode_string("₅"); } | ||
| 250 | SEQ_THREE_KEYS(KC_U, KC_P, KC_R) { | ||
| 251 | send_unicode_string("⁶"); } | ||
| 252 | SEQ_THREE_KEYS(KC_D, KC_N, KC_R) { | ||
| 253 | send_unicode_string("₆"); } | ||
| 254 | SEQ_THREE_KEYS(KC_U, KC_P, KC_P) { | ||
| 255 | send_unicode_string("⁷"); } | ||
| 256 | SEQ_THREE_KEYS(KC_D, KC_N, KC_P) { | ||
| 257 | send_unicode_string("₇"); } | ||
| 258 | SEQ_THREE_KEYS(KC_U, KC_P, KC_D) { | ||
| 259 | send_unicode_string("⁸"); } | ||
| 260 | SEQ_THREE_KEYS(KC_D, KC_N, KC_D) { | ||
| 261 | send_unicode_string("₈"); } | ||
| 262 | SEQ_THREE_KEYS(KC_U, KC_P, KC_L) { | ||
| 263 | send_unicode_string("⁹"); } | ||
| 264 | SEQ_THREE_KEYS(KC_D, KC_N, KC_L) { | ||
| 265 | send_unicode_string("₉"); } | ||
| 266 | |||
| 267 | }; | ||
| 268 | } | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keycodes.h b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keycodes.h new file mode 100644 index 0000000000..b90b28fda4 --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keycodes.h | |||
| @@ -0,0 +1,44 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #pragma once | ||
| 5 | |||
| 6 | enum layers { | ||
| 7 | _BASE, | ||
| 8 | _NUMERIC, | ||
| 9 | _ARROWS, | ||
| 10 | _MOUSE, | ||
| 11 | _ADJUST, | ||
| 12 | _FN, | ||
| 13 | _LEFT_HAND, | ||
| 14 | }; | ||
| 15 | |||
| 16 | enum custom_keys { | ||
| 17 | UNICODE = SAFE_RANGE, // Shortcut to write unicodes, see numeric layer | ||
| 18 | |||
| 19 | /* See auto-shift */ | ||
| 20 | CS_E_ACUTE, | ||
| 21 | |||
| 22 | CS_A_GRAVE, | ||
| 23 | CS_E_GRAVE, | ||
| 24 | CS_I_GRAVE, | ||
| 25 | CS_O_GRAVE, | ||
| 26 | CS_U_GRAVE, | ||
| 27 | |||
| 28 | CS_C_CEDILLA, | ||
| 29 | CS_AE, | ||
| 30 | CS_OE, | ||
| 31 | |||
| 32 | CS_A_CIRCUMFLEX, | ||
| 33 | CS_E_CIRCUMFLEX, | ||
| 34 | CS_I_CIRCUMFLEX, | ||
| 35 | CS_O_CIRCUMFLEX, | ||
| 36 | CS_U_CIRCUMFLEX, | ||
| 37 | |||
| 38 | CS_A_DIAERESIS, | ||
| 39 | CS_E_DIAERESIS, | ||
| 40 | CS_I_DIAERESIS, | ||
| 41 | CS_O_DIAERESIS, | ||
| 42 | CS_U_DIAERESIS, | ||
| 43 | CS_Y_DIAERESIS, | ||
| 44 | }; | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keymap.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keymap.c new file mode 100644 index 0000000000..50fb7909f3 --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/keymap.c | |||
| @@ -0,0 +1,133 @@ | |||
| 1 | /* Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | * | ||
| 3 | * This program is free software: you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License as published by | ||
| 5 | * the Free Software Foundation, either version 2 of the License, or | ||
| 6 | * (at your option) any later version. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | * GNU General Public License for more details. | ||
| 12 | * | ||
| 13 | * You should have received a copy of the GNU General Public License | ||
| 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 15 | */ | ||
| 16 | |||
| 17 | #include QMK_KEYBOARD_H | ||
| 18 | #include "keycodes.h" | ||
| 19 | |||
| 20 | |||
| 21 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 22 | |||
| 23 | /* Macros */ | ||
| 24 | switch (keycode) { | ||
| 25 | |||
| 26 | case UNICODE: | ||
| 27 | if (record->event.pressed) { | ||
| 28 | register_code(KC_LCTL); | ||
| 29 | register_code(KC_LSFT); | ||
| 30 | tap_code16(KC_U); | ||
| 31 | } else { | ||
| 32 | unregister_code(KC_LCTL); | ||
| 33 | unregister_code(KC_LSFT); | ||
| 34 | } | ||
| 35 | break; | ||
| 36 | } | ||
| 37 | |||
| 38 | return true; | ||
| 39 | } | ||
| 40 | |||
| 41 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 42 | |||
| 43 | [_BASE] = LAYOUT( | ||
| 44 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 45 | GUI_T(KC_ESC) , KC_B , KC_O , KC_W , KC_BSPC , KC_J , KC_P , KC_D , KC_L , KC_F , | ||
| 46 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 47 | KC_A , KC_I , KC_E , KC_U , KC_TAB , KC_V , KC_T , KC_S , KC_R , KC_N , | ||
| 48 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 49 | KC_LALT , KC_X , KC_Q , KC_Y , KC_K , KC_Z , KC_C , KC_G , KC_H , KC_M , | ||
| 50 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 51 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 52 | LT(_MOUSE, KC_COMM) , KC_LCPO , LT(_NUMERIC, KC_ENT) , LT(_ARROWS, KC_DOT) | ||
| 53 | // |-------------------------+----/* Space ctl */------| |-------------------------+-------------------------| | ||
| 54 | ), | ||
| 55 | |||
| 56 | [_NUMERIC] = LAYOUT( | ||
| 57 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 58 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_7 , KC_8 , KC_9 , KC_DOT , | ||
| 59 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 60 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_4 , KC_5 , KC_6 , KC_0 , | ||
| 61 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 62 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_1 , KC_2 , KC_3 , KC_COMM , | ||
| 63 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 64 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 65 | XXXXXXX , UNICODE , XXXXXXX , XXXXXXX | ||
| 66 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 67 | ), | ||
| 68 | |||
| 69 | [_MOUSE] = LAYOUT( | ||
| 70 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 71 | KC_MS_WH_LEFT , KC_MS_WH_UP , KC_MS_WH_DOWN , KC_MS_WH_RIGHT, _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , | ||
| 72 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 73 | KC_MS_LEFT , KC_MS_UP , KC_MS_DOWN , KC_MS_RIGHT , _______ , XXXXXXX , KC_MS_ACCEL0 , KC_MS_ACCEL1 , KC_MS_ACCEL2 , XXXXXXX , | ||
| 74 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 75 | KC_MS_BTN1 , XXXXXXX , KC_MS_BTN3 , KC_MS_BTN2 , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , | ||
| 76 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 77 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 78 | XXXXXXX , _______ , KC_MS_BTN1 , KC_MS_BTN2 | ||
| 79 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 80 | ), | ||
| 81 | |||
| 82 | [_ARROWS] = LAYOUT( | ||
| 83 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 84 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_HOME , KC_PAGE_DOWN , KC_PAGE_UP , KC_END , | ||
| 85 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 86 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_LEFT , KC_DOWN , KC_UP , KC_RIGHT , | ||
| 87 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 88 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , C(KC_D) , C(KC_U) , XXXXXXX , | ||
| 89 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 90 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 91 | XXXXXXX , _______ , XXXXXXX , XXXXXXX | ||
| 92 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 93 | ), | ||
| 94 | |||
| 95 | [_ADJUST] = LAYOUT( | ||
| 96 | //|---------------+---------------+---------------+---------------+------------------| |---------------+---------------+---------------+---------------+-----------------| | ||
| 97 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_PRINT_SCREEN , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_AUDIO_VOL_UP , | ||
| 98 | //|---------------+---------------+---------------+---------------+------------------| |---------------+---------------+---------------+---------------+-----------------| | ||
| 99 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX ,S(KC_PRINT_SCREEN), XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX ,KC_AUDIO_VOL_DOWN, | ||
| 100 | //|---------------+---------------+---------------+---------------+------------------| |---------------+---------------+---------------+---------------+-----------------| | ||
| 101 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_AUDIO_MUTE , | ||
| 102 | //|---------------+---------------+---------------+---------------+------------------| |---------------+---------------+---------------+---------------+-----------------| | ||
| 103 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 104 | XXXXXXX , _______ , XXXXXXX , XXXXXXX | ||
| 105 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 106 | ), | ||
| 107 | |||
| 108 | [_FN] = LAYOUT( | ||
| 109 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 110 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_F7 , KC_F8 , KC_F9 , KC_F10 , | ||
| 111 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 112 | XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , KC_F4 , KC_F5 , KC_F6 , KC_F11 , | ||
| 113 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 114 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_F1 , KC_F2 , KC_F3 , KC_F12 , | ||
| 115 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 116 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 117 | XXXXXXX , _______ , XXXXXXX , XXXXXXX | ||
| 118 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 119 | ), | ||
| 120 | |||
| 121 | [_LEFT_HAND] = LAYOUT( | ||
| 122 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 123 | _______ , XXXXXXX , XXXXXXX , XXXXXXX , _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , | ||
| 124 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 125 | XXXXXXX , C(KC_X) , C(KC_C) , C(KC_V) , _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , | ||
| 126 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 127 | _______ , XXXXXXX , XXXXXXX , C(KC_Z) , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , | ||
| 128 | //|---------------+---------------+---------------+---------------+---------------| |---------------+---------------+---------------+---------------+---------------| | ||
| 129 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 130 | XXXXXXX , _______ , XXXXXXX , XXXXXXX | ||
| 131 | // |-------------------------+-------------------------| |-------------------------+-------------------------| | ||
| 132 | ), | ||
| 133 | }; | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/glcdfont.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/glcdfont.c new file mode 100644 index 0000000000..ad4448993f --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/glcdfont.c | |||
| @@ -0,0 +1,232 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include "progmem.h" | ||
| 5 | |||
| 6 | /* Online editor: https://joric.github.io/qle/ */ | ||
| 7 | static const unsigned char PROGMEM font[] = { | ||
| 8 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 9 | 0xFC, 0xFE, 0x0E, 0x06, 0xE6, 0xE6, | ||
| 10 | 0xE6, 0xE6, 0xE6, 0xFE, 0xFE, 0xE6, | ||
| 11 | 0xE6, 0xE6, 0x06, 0x06, 0xE6, 0xE6, | ||
| 12 | 0xE6, 0xFE, 0xFE, 0x06, 0x06, 0xFE, | ||
| 13 | 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFC, | ||
| 14 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 15 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 16 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 17 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 18 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 19 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 20 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 21 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 22 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 23 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 24 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 25 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 26 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 27 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 28 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 29 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 30 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 31 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 32 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 33 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 34 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 35 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 36 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 37 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 38 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 39 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 40 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 41 | 0x3F, 0x7F, 0x70, 0x60, 0x67, 0x67, | ||
| 42 | 0x67, 0x67, 0x67, 0x7F, 0x7F, 0x7F, | ||
| 43 | 0x7F, 0x7F, 0x60, 0x60, 0x7F, 0x7F, | ||
| 44 | 0x7F, 0x7F, 0x7F, 0x60, 0x60, 0x67, | ||
| 45 | 0x67, 0x67, 0x67, 0x67, 0x7F, 0x3F, | ||
| 46 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 47 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 48 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 49 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 50 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 51 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 52 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 53 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 54 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 55 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 56 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 57 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 58 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 59 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 60 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 61 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 62 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 63 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 64 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 65 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 66 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 67 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 68 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 69 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 70 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 71 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 72 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 73 | 0xFC, 0xFE, 0x0E, 0x06, 0xE6, 0xE6, | ||
| 74 | 0xE6, 0xE6, 0x06, 0x0E, 0xFE, 0xFE, | ||
| 75 | 0x06, 0x06, 0xFE, 0xFE, 0xFE, 0xFE, | ||
| 76 | 0xFE, 0xFE, 0xE6, 0xE6, 0xE6, 0x06, | ||
| 77 | 0x06, 0xE6, 0xE6, 0xE6, 0xFE, 0xFC, | ||
| 78 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 79 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 80 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 81 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 82 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 83 | 0xFC, 0xFE, 0x0E, 0x06, 0x66, 0x66, | ||
| 84 | 0x66, 0x66, 0xE6, 0xFE, 0xFE, 0x06, | ||
| 85 | 0x06, 0x66, 0x66, 0x66, 0xE6, 0xE6, | ||
| 86 | 0xFE, 0xFE, 0xE6, 0xE6, 0xE6, 0x06, | ||
| 87 | 0x06, 0xE6, 0xE6, 0xE6, 0xFE, 0xFC, | ||
| 88 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 89 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 90 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 91 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 92 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 93 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 94 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 95 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 96 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 97 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 98 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 99 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 100 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 101 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 102 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 103 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 104 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 105 | 0x3F, 0x7F, 0x60, 0x60, 0x7C, 0x7C, | ||
| 106 | 0x7C, 0x7C, 0x60, 0x60, 0x7F, 0x7F, | ||
| 107 | 0x60, 0x60, 0x67, 0x67, 0x67, 0x67, | ||
| 108 | 0x67, 0x7F, 0x7F, 0x7F, 0x7F, 0x60, | ||
| 109 | 0x60, 0x7F, 0x7F, 0x7F, 0x7F, 0x3F, | ||
| 110 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 111 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 112 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 113 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 114 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 115 | 0x3F, 0x7F, 0x67, 0x66, 0x66, 0x66, | ||
| 116 | 0x66, 0x60, 0x70, 0x7F, 0x7F, 0x60, | ||
| 117 | 0x60, 0x7E, 0x7E, 0x7E, 0x7F, 0x7F, | ||
| 118 | 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x60, | ||
| 119 | 0x60, 0x7F, 0x7F, 0x7F, 0x7F, 0x3F, | ||
| 120 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 121 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 122 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 123 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 124 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 125 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 126 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 127 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 128 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 129 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 130 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 131 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 132 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 133 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 134 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 135 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 136 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 137 | 0xFC, 0xFE, 0x0E, 0x06, 0xE6, 0xE6, | ||
| 138 | 0xE6, 0x06, 0x0E, 0xFE, 0xFE, 0x0E, | ||
| 139 | 0x06, 0xE6, 0xE6, 0xE6, 0xE6, 0xE6, | ||
| 140 | 0xFE, 0xFE, 0x06, 0x06, 0x66, 0x66, | ||
| 141 | 0x66, 0x66, 0x06, 0x0E, 0xFE, 0xFC, | ||
| 142 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 143 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 144 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 145 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 146 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 147 | 0xFC, 0xFE, 0x0E, 0x06, 0xE6, 0xE6, | ||
| 148 | 0xE6, 0xE6, 0xE6, 0xFE, 0xFE, 0x06, | ||
| 149 | 0x06, 0xCE, 0x9E, 0x9E, 0xCE, 0x06, | ||
| 150 | 0x06, 0xFE, 0xFE, 0x06, 0x06, 0xE6, | ||
| 151 | 0xE6, 0xE6, 0x0E, 0x1E, 0xFE, 0xFC, | ||
| 152 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 153 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 154 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 155 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 156 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 157 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 158 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 159 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 160 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 161 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 162 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 163 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 164 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 165 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 166 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 167 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 168 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 169 | 0x3F, 0x7F, 0x60, 0x60, 0x7C, 0x7C, | ||
| 170 | 0x7C, 0x60, 0x60, 0x7F, 0x7F, 0x70, | ||
| 171 | 0x60, 0x67, 0x67, 0x64, 0x60, 0x70, | ||
| 172 | 0x7F, 0x7F, 0x60, 0x60, 0x7E, 0x7E, | ||
| 173 | 0x78, 0x70, 0x62, 0x67, 0x7F, 0x3F, | ||
| 174 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 175 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 176 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 177 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 178 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 179 | 0x3F, 0x7F, 0x70, 0x60, 0x67, 0x67, | ||
| 180 | 0x67, 0x67, 0x67, 0x7F, 0x7F, 0x60, | ||
| 181 | 0x60, 0x7F, 0x7F, 0x7F, 0x7F, 0x60, | ||
| 182 | 0x60, 0x7F, 0x7F, 0x60, 0x60, 0x67, | ||
| 183 | 0x67, 0x67, 0x70, 0x78, 0x7F, 0x3F, | ||
| 184 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 185 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 186 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 187 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 188 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 189 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 190 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 191 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 192 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 193 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 194 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 195 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 196 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 197 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 198 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 199 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 200 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 201 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 202 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 203 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 204 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 205 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 206 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 207 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 208 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 209 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 210 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 211 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 212 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 213 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 214 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 215 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 216 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 217 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 218 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 219 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 220 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 221 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 222 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 223 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 224 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 225 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 226 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 227 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 228 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 229 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 230 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 231 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 232 | }; | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/oled.c b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/oled.c new file mode 100644 index 0000000000..5b177acc7c --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/oled/oled.c | |||
| @@ -0,0 +1,457 @@ | |||
| 1 | // Copyright 2023 Florent Linguenheld (@FLinguenheld) | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include QMK_KEYBOARD_H | ||
| 5 | #include "keycodes.h" | ||
| 6 | |||
| 7 | /* Leader state */ | ||
| 8 | static bool is_leader_active = false; | ||
| 9 | void leader_start(void) { | ||
| 10 | is_leader_active = true; | ||
| 11 | } | ||
| 12 | void leader_end(void) { | ||
| 13 | is_leader_active = false; | ||
| 14 | } | ||
| 15 | |||
| 16 | |||
| 17 | void oled_display(void) { | ||
| 18 | |||
| 19 | /* Layers */ | ||
| 20 | switch (get_highest_layer(layer_state)) { | ||
| 21 | |||
| 22 | case _BASE: ; | ||
| 23 | if (is_keyboard_master()) { | ||
| 24 | static const char PROGMEM qmk_logo_master[] = { | ||
| 25 | // 'raven', 32x128px | ||
| 26 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 27 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 28 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 29 | 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 30 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x8f, 0x5f, 0x31, 0x79, 0x33, 0x7f, | ||
| 31 | 0x3b, 0x71, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 32 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x4c, 0x02, 0x01, 0x95, 0xff, 0xb5, 0x05, 0x02, 0x4c, 0x30, | ||
| 33 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 34 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x7e, 0x01, 0x01, 0x01, 0x7e, 0x40, 0x00, 0x00, | ||
| 35 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 36 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 37 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 38 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 39 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 40 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, | ||
| 41 | 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0x7c, 0x7c, 0xf8, 0xf0, 0xe0, 0x80, 0x00, | ||
| 42 | 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xcf, 0xef, 0xe7, 0xf3, 0xfb, 0xf9, | ||
| 43 | 0xfd, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x0e, 0x1a, 0x23, 0x43, 0x3f, 0x03, 0x00, | ||
| 44 | 0x00, 0x0c, 0x1e, 0x1f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x80, 0x40, 0xe0, 0xbf, 0x33, | ||
| 45 | 0x30, 0x60, 0x20, 0x21, 0xff, 0x20, 0x60, 0x20, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 46 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0xf8, | ||
| 47 | 0xfc, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x7c, 0xfc, 0xfc, 0xf8, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, | ||
| 48 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x04, 0x08, 0x08, 0x30, | ||
| 49 | 0x20, 0x30, 0x20, 0x32, 0x20, 0x32, 0x20, 0x30, 0x20, 0x1c, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, | ||
| 50 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 51 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 52 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 53 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 54 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 55 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 56 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 57 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 58 | }; | ||
| 59 | oled_write_raw_P(qmk_logo_master, sizeof(qmk_logo_master)); | ||
| 60 | |||
| 61 | } else { | ||
| 62 | static const char PROGMEM qmk_logo_slave[] = { | ||
| 63 | // 'birds', 32x128px | ||
| 64 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 65 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 66 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 67 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 68 | 0x00, 0x40, 0xc0, 0xe0, 0xd0, 0x88, 0x84, 0x04, 0x04, 0xc4, 0xc4, 0x08, 0x08, 0x10, 0x60, 0x80, | ||
| 69 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 70 | 0x00, 0x00, 0xf8, 0x46, 0x81, 0x02, 0x02, 0x06, 0x04, 0x04, 0x04, 0x74, 0x84, 0x06, 0x03, 0x81, | ||
| 71 | 0x42, 0x24, 0x18, 0x10, 0xa0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 72 | 0x00, 0x00, 0x01, 0x06, 0x08, 0x11, 0x12, 0x24, 0x24, 0x48, 0xc8, 0x48, 0x48, 0xc9, 0x49, 0x4a, | ||
| 73 | 0x4a, 0x26, 0x25, 0x25, 0x14, 0x14, 0x14, 0x1d, 0x15, 0x2e, 0x54, 0x60, 0x40, 0x00, 0x00, 0x00, | ||
| 74 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x01, 0x05, 0x02, 0x03, 0x02, 0x00, | ||
| 75 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 76 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 77 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 78 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 79 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 80 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 81 | 0x80, 0x40, 0x20, 0x10, 0x08, 0x08, 0x08, 0x08, 0x88, 0xc8, 0x08, 0x30, 0xc0, 0xc0, 0x80, 0x00, | ||
| 82 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x18, 0x04, 0x03, | ||
| 83 | 0x00, 0x00, 0x00, 0x80, 0x80, 0x70, 0x18, 0x00, 0x00, 0x00, 0x80, 0x70, 0x0f, 0x00, 0x00, 0x00, | ||
| 84 | 0x00, 0x00, 0x70, 0x50, 0x48, 0x48, 0x24, 0x24, 0x12, 0x0a, 0x05, 0x09, 0x13, 0x12, 0x22, 0x22, | ||
| 85 | 0xe1, 0x21, 0x21, 0x20, 0xe0, 0x20, 0x20, 0x10, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 86 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 87 | 0x04, 0x07, 0x04, 0x00, 0x04, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 88 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 89 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 90 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 91 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 92 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 93 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 94 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 95 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 96 | }; | ||
| 97 | oled_write_raw_P(qmk_logo_slave, sizeof(qmk_logo_slave)); | ||
| 98 | } | ||
| 99 | break; | ||
| 100 | |||
| 101 | case _NUMERIC: ; | ||
| 102 | static const char PROGMEM qmk_numeric[] = { | ||
| 103 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, | ||
| 104 | 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 105 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x03, 0x07, 0x0f, 0x1e, | ||
| 106 | 0x3c, 0x78, 0xf0, 0xe0, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 107 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x87, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 108 | 0x00, 0x00, 0x00, 0x01, 0x03, 0x87, 0x87, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 109 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 110 | 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 111 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, | ||
| 112 | 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 113 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0e, 0x1c, 0x38, 0x70, 0xe0, | ||
| 114 | 0xe0, 0x70, 0x38, 0x1c, 0x0e, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 115 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 116 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 117 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xc7, 0xc7, 0xc7, 0xc7, 0xc7, | ||
| 118 | 0xc7, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 119 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x38, 0x38, | ||
| 120 | 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 121 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xfc, 0x00, 0x1c, 0x1c, 0x1c, 0x1c, | ||
| 122 | 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0xfc, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 123 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x06, 0x06, 0x06, 0x06, | ||
| 124 | 0x06, 0x06, 0x0e, 0x1e, 0x3e, 0x77, 0xe7, 0xc3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 125 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x70, 0x70, 0xf0, 0xf0, | ||
| 126 | 0xf0, 0xf0, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 127 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, | ||
| 128 | 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 129 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, | ||
| 130 | 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 131 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x01, 0x01, 0x01, 0x01, | ||
| 132 | 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 133 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, | ||
| 134 | 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 135 | }; | ||
| 136 | |||
| 137 | oled_write_raw_P(qmk_numeric, sizeof(qmk_numeric)); | ||
| 138 | break; | ||
| 139 | |||
| 140 | case _MOUSE: ; | ||
| 141 | static const char PROGMEM qmk_mouse[] = { | ||
| 142 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 143 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 144 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x3e, 0x3c, 0x78, 0xf0, 0xe0, 0xc0, | ||
| 145 | 0xc0, 0xe0, 0xf0, 0x78, 0x3c, 0x3e, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 146 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, | ||
| 147 | 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 148 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0xc1, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 149 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc1, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 150 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, | ||
| 151 | 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 152 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 153 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 154 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc1, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, | ||
| 155 | 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xc1, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 156 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 157 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 158 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x7f, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, | ||
| 159 | 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x7f, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 160 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, | ||
| 161 | 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 162 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x7f, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, | ||
| 163 | 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 164 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 165 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 166 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, | ||
| 167 | 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 168 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, | ||
| 169 | 0xc1, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 170 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, | ||
| 171 | 0xc1, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 172 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, | ||
| 173 | 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 174 | }; | ||
| 175 | |||
| 176 | oled_write_raw_P(qmk_mouse, sizeof(qmk_mouse)); | ||
| 177 | break; | ||
| 178 | |||
| 179 | case _ARROWS: ; | ||
| 180 | static const char PROGMEM qmk_arrows[] = { | ||
| 181 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 182 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 183 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, | ||
| 184 | 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 185 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0xff, 0xff, | ||
| 186 | 0xff, 0xff, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3e, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 187 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, | ||
| 188 | 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 189 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, | ||
| 190 | 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 191 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3c, 0x1c, 0x0c, | ||
| 192 | 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 193 | 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1e, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xde, 0x9e, 0x1e, 0x1e, 0x1e, | ||
| 194 | 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, | ||
| 195 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x0f, 0x0e, 0x0c, | ||
| 196 | 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 197 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, | ||
| 198 | 0x30, 0x70, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 199 | 0x00, 0x00, 0x00, 0x00, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, | ||
| 200 | 0x78, 0x78, 0x78, 0x79, 0x7b, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, | ||
| 201 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, | ||
| 202 | 0x30, 0x38, 0x3c, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 203 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, | ||
| 204 | 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 205 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, | ||
| 206 | 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 207 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0xff, 0xff, | ||
| 208 | 0xff, 0xff, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 209 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, | ||
| 210 | 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 211 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 212 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 213 | }; | ||
| 214 | |||
| 215 | oled_write_raw_P(qmk_arrows, sizeof(qmk_arrows)); | ||
| 216 | break; | ||
| 217 | |||
| 218 | case _ADJUST: ; | ||
| 219 | static const char PROGMEM qmk_adjust[] = { | ||
| 220 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0x38, 0x38, 0x38, 0x38, 0x38, | ||
| 221 | 0x38, 0x38, 0x38, 0x38, 0x38, 0xf8, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 222 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x38, 0x38, 0x38, 0x38, 0x38, | ||
| 223 | 0x38, 0x38, 0x38, 0x38, 0x38, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 224 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 225 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 226 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x07, 0x07, 0x07, 0x07, | ||
| 227 | 0x07, 0x07, 0x07, 0x07, 0x0f, 0xfe, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 228 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 229 | 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xff, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 230 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0xe1, 0xe1, 0xe0, 0xe1, 0xe1, 0xe1, 0xe1, | ||
| 231 | 0xe1, 0xe1, 0xe1, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 232 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, | ||
| 233 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 234 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x3f, 0x38, | ||
| 235 | 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 236 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 237 | 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 238 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 239 | 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 240 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, | ||
| 241 | 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 242 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, | ||
| 243 | 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 244 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, | ||
| 245 | 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 246 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0xf0, 0xf0, | ||
| 247 | 0xf0, 0xf0, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 248 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, | ||
| 249 | 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 250 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, | ||
| 251 | 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 252 | }; | ||
| 253 | |||
| 254 | oled_write_raw_P(qmk_adjust, sizeof(qmk_adjust)); | ||
| 255 | break; | ||
| 256 | |||
| 257 | case _FN: ; | ||
| 258 | static const char PROGMEM qmk_fn[] = { | ||
| 259 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 260 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 261 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 262 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 263 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, | ||
| 264 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 265 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, | ||
| 266 | 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 267 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, | ||
| 268 | 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 269 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, | ||
| 270 | 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 271 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 272 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 273 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 274 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 275 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 276 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 277 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xf8, 0xe0, 0x80, 0x00, | ||
| 278 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 279 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x01, 0x07, 0x1f, 0x7f, 0xfe, | ||
| 280 | 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 281 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, | ||
| 282 | 0x07, 0x1f, 0x7f, 0xfe, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 283 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 284 | 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 285 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 286 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 287 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 288 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 289 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 290 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 | ||
| 291 | }; | ||
| 292 | |||
| 293 | oled_write_raw_P(qmk_fn, sizeof(qmk_fn)); | ||
| 294 | break; | ||
| 295 | |||
| 296 | case _LEFT_HAND: ; | ||
| 297 | static const char PROGMEM qmk_left_hand[] = { | ||
| 298 | // 'layers_left_hand', 32x128px | ||
| 299 | 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 300 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 301 | 0xff, 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, | ||
| 302 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 303 | 0xe1, 0xf1, 0xf1, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x00, 0x00, 0x00, | ||
| 304 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 305 | 0xff, 0xff, 0xff, 0x38, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 306 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 307 | 0x0f, 0x1f, 0x1f, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x00, 0x00, 0x00, | ||
| 308 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 309 | 0xff, 0xff, 0xff, 0x87, 0x87, 0x87, 0x87, 0x87, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, | ||
| 310 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 311 | 0xff, 0xff, 0xff, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 312 | 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, | ||
| 313 | 0x71, 0x71, 0x71, 0x70, 0x70, 0xf0, 0xf0, 0xf0, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00, 0x00, | ||
| 314 | 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0xff, | ||
| 315 | 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 316 | 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, | ||
| 317 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 318 | 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfc, 0x3c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x3c, 0xfc, 0xf8, 0xf0, | ||
| 319 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 320 | 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0xff, 0xff, 0xff, | ||
| 321 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 322 | 0x00, 0x00, 0x00, 0xe3, 0xe3, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe3, 0xe3, 0xe3, | ||
| 323 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 324 | 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x1e, 0x3c, 0x78, 0xf0, 0xe0, 0xc0, 0xff, 0xff, 0xff, | ||
| 325 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 326 | 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x1f, 0x1f, 0x1f, | ||
| 327 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 328 | 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x1e, 0xfc, 0xf8, 0xf0, | ||
| 329 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 330 | 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0x78, 0x3f, 0x1f, 0x0f | ||
| 331 | }; | ||
| 332 | |||
| 333 | oled_write_raw_P(qmk_left_hand, sizeof(qmk_left_hand)); | ||
| 334 | break; | ||
| 335 | } | ||
| 336 | |||
| 337 | /* Leader */ | ||
| 338 | if (is_leader_active) { | ||
| 339 | |||
| 340 | static const char PROGMEM qmk_leader[] = { | ||
| 341 | 0x00, 0x00, 0xf8, 0xf8, 0x78, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, | ||
| 342 | 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0x00, 0x00, | ||
| 343 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xf8, 0x00, 0x00, 0x00, | ||
| 344 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 345 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0xc0, 0xc0, | ||
| 346 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 347 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, | ||
| 348 | 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 349 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x18, 0x18, 0x18, | ||
| 350 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 351 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x87, 0x87, 0x87, 0x87, 0x87, | ||
| 352 | 0x87, 0x87, 0x87, 0x87, 0x87, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 353 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc3, 0xc3, 0xc3, | ||
| 354 | 0xc3, 0xc3, 0xc3, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 355 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, | ||
| 356 | 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 357 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xfe, 0x00, 0x0e, 0x0e, | ||
| 358 | 0x0e, 0x0e, 0x0e, 0xfe, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 359 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x00, 0x70, 0x70, | ||
| 360 | 0x70, 0x70, 0x70, 0x7f, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 361 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0x38, 0x38, 0x38, | ||
| 362 | 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 363 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc6, 0xc6, 0xc6, | ||
| 364 | 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 365 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe1, 0xe1, 0xe1, 0xe1, 0xe1, | ||
| 366 | 0xe1, 0xe1, 0xe1, 0xe1, 0xc1, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 367 | 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x38, 0x38, 0x38, | ||
| 368 | 0x78, 0xf8, 0xf8, 0xbf, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, | ||
| 369 | 0x00, 0x00, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, | ||
| 370 | 0x00, 0x00, 0x01, 0x03, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0x00, 0x00, | ||
| 371 | 0x00, 0x00, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, | ||
| 372 | 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00 | ||
| 373 | }; | ||
| 374 | |||
| 375 | oled_write_raw_P(qmk_leader, sizeof(qmk_leader)); | ||
| 376 | } | ||
| 377 | |||
| 378 | /* Modifier keys */ | ||
| 379 | if (get_mods()) { | ||
| 380 | |||
| 381 | if (get_mods() & MOD_MASK_CTRL) { | ||
| 382 | |||
| 383 | oled_write_char(0x01, false); | ||
| 384 | oled_write_char(0x02, false); | ||
| 385 | oled_write_char(0x03, false); | ||
| 386 | oled_write_char(0x04, false); | ||
| 387 | oled_write_char(0x05, false); | ||
| 388 | |||
| 389 | oled_write_char(0x21, false); | ||
| 390 | oled_write_char(0x22, false); | ||
| 391 | oled_write_char(0x23, false); | ||
| 392 | oled_write_char(0x24, false); | ||
| 393 | oled_write_char(0x25, false); | ||
| 394 | } | ||
| 395 | if (get_mods() & MOD_BIT(KC_LALT)) { | ||
| 396 | |||
| 397 | oled_write_char(0x41, false); | ||
| 398 | oled_write_char(0x42, false); | ||
| 399 | oled_write_char(0x43, false); | ||
| 400 | oled_write_char(0x44, false); | ||
| 401 | oled_write_char(0x45, false); | ||
| 402 | |||
| 403 | oled_write_char(0x61, false); | ||
| 404 | oled_write_char(0x62, false); | ||
| 405 | oled_write_char(0x63, false); | ||
| 406 | oled_write_char(0x64, false); | ||
| 407 | oled_write_char(0x65, false); | ||
| 408 | } | ||
| 409 | if (get_mods() & MOD_BIT(KC_RALT)) { | ||
| 410 | |||
| 411 | oled_write_char(0x81, false); | ||
| 412 | oled_write_char(0x82, false); | ||
| 413 | oled_write_char(0x83, false); | ||
| 414 | oled_write_char(0x84, false); | ||
| 415 | oled_write_char(0x85, false); | ||
| 416 | |||
| 417 | oled_write_char(0xA1, false); | ||
| 418 | oled_write_char(0xA2, false); | ||
| 419 | oled_write_char(0xA3, false); | ||
| 420 | oled_write_char(0xA4, false); | ||
| 421 | oled_write_char(0xA5, false); | ||
| 422 | } | ||
| 423 | if (get_mods() & MOD_MASK_SHIFT) { | ||
| 424 | |||
| 425 | oled_write_char(0x4B, false); | ||
| 426 | oled_write_char(0x4C, false); | ||
| 427 | oled_write_char(0x4D, false); | ||
| 428 | oled_write_char(0x4E, false); | ||
| 429 | oled_write_char(0x4F, false); | ||
| 430 | |||
| 431 | oled_write_char(0x6B, false); | ||
| 432 | oled_write_char(0x6C, false); | ||
| 433 | oled_write_char(0x6D, false); | ||
| 434 | oled_write_char(0x6E, false); | ||
| 435 | oled_write_char(0x6F, false); | ||
| 436 | } | ||
| 437 | if (get_mods() & MOD_MASK_GUI) { | ||
| 438 | |||
| 439 | oled_write_char(0x8B, false); | ||
| 440 | oled_write_char(0x8C, false); | ||
| 441 | oled_write_char(0x8D, false); | ||
| 442 | oled_write_char(0x8E, false); | ||
| 443 | oled_write_char(0x8F, false); | ||
| 444 | |||
| 445 | oled_write_char(0xAB, false); | ||
| 446 | oled_write_char(0xAC, false); | ||
| 447 | oled_write_char(0xAD, false); | ||
| 448 | oled_write_char(0xAE, false); | ||
| 449 | oled_write_char(0xAF, false); | ||
| 450 | } | ||
| 451 | } | ||
| 452 | }; | ||
| 453 | |||
| 454 | bool oled_task_user(void) { | ||
| 455 | oled_display(); | ||
| 456 | return false; | ||
| 457 | } | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/readme.md b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/readme.md new file mode 100644 index 0000000000..3873ca45cf --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/readme.md | |||
| @@ -0,0 +1,130 @@ | |||
| 1 | ### Custom aurora sweep keymap | ||
| 2 | |||
| 3 | |||
| 4 | This keymap is inspired by [optimot](https://bepo.fr/) which is a French layout. | ||
| 5 | Nonetheless all French characters are sent in unicode, so it works with the standard US ANSI layout. | ||
| 6 | |||
| 7 | It uses the *best* qmk features : | ||
| 8 | - combos ♥ | ||
| 9 | - auto shift | ||
| 10 | - leader | ||
| 11 | |||
| 12 | I tried to optimise key positions for neovim and i3wm while limit digrams. | ||
| 13 | The oled screens are used to display the current layout, the modifier keys and the leader key. | ||
| 14 | |||
| 15 |  | ||
| 16 |  | ||
| 17 | |||
| 18 | #### Install | ||
| 19 | |||
| 20 | Clone this repo in the folder : | ||
| 21 | |||
| 22 | ~/qmk_firmware/keyboards/splitkb/aurora/sweep/keymaps/ | ||
| 23 | |||
| 24 | #### Compile and flash | ||
| 25 | |||
| 26 | Navigate into the keymap folder and launch this command for both sides : | ||
| 27 | |||
| 28 | qmk compile && qmk flash | ||
| 29 | |||
| 30 | and : | ||
| 31 | |||
| 32 | Click twice on the flash button and use nautilus for instance to clic on the keyboard. | ||
| 33 | Don't forget to flash with the double tap bootloader define before soldering. | ||
| 34 | |||
| 35 | #### Links | ||
| 36 | |||
| 37 | [qmk](https://docs.qmk.fm/#/) | ||
| 38 | [ferris sweep](https://github.com/davidphilipbarr/Sweep) | ||
| 39 | [splitkb](https://splitkb.com) | ||
| 40 | |||
| 41 | #### Layouts | ||
| 42 | |||
| 43 |  | ||
| 44 |  | ||
| 45 |  | ||
| 46 |  | ||
| 47 |  | ||
| 48 |  | ||
| 49 |  | ||
| 50 |  | ||
| 51 |  | ||
| 52 |  | ||
| 53 | |||
| 54 | #### French | ||
| 55 | |||
| 56 | | - | | | ||
| 57 | |------------------|------------------------| | ||
| 58 | | space + e | é | | ||
| 59 | | space + i | ç | | ||
| 60 | | space + a | æ | | ||
| 61 | | space + o | œ | | ||
| 62 | | comma + a | à | | ||
| 63 | | comma + e | è | | ||
| 64 | | comma + i | ì | | ||
| 65 | | comma + o | ò | | ||
| 66 | | comma + u | ù | | ||
| 67 | | enter + a | â | | ||
| 68 | | enter + e | ê | | ||
| 69 | | enter + i | î | | ||
| 70 | | enter + o | ô | | ||
| 71 | | enter + u | û | | ||
| 72 | | dot + a | ä | | ||
| 73 | | dot + e | ë | | ||
| 74 | | dot + i | ï | | ||
| 75 | | dot + o | ö | | ||
| 76 | | dot + u | ü | | ||
| 77 | | dot + y | ÿ | | ||
| 78 | |||
| 79 | |||
| 80 | #### Leader | ||
| 81 | |||
| 82 | | - | | | ||
| 83 | |--------------------|------------------------| | ||
| 84 | | M + S | mail short | | ||
| 85 | | M + L | mail long | | ||
| 86 | | D + E + G | ° | | ||
| 87 | | C + O + P | © | | ||
| 88 | | R + E + G | ® | | ||
| 89 | | D + I + A | ø | | ||
| 90 | | D + I + A + M | Ø | | ||
| 91 | | E + U + R | € | | ||
| 92 | | P + O + U | £ | | ||
| 93 | | Y + E + N | ¥ | | ||
| 94 | | C + E + N | ¢ | | ||
| 95 | | P + I | π | | ||
| 96 | | P + I + I | Π | | ||
| 97 | | O + M + E | ω | | ||
| 98 | | O + M + E + G | Ω | | ||
| 99 | | U + P + F | ⁰ | | ||
| 100 | | D + N + F | ₀ | | ||
| 101 | |||
| 102 | | - | | | ||
| 103 | |--------------------|------------------------| | ||
| 104 | | M + U + L | × | | ||
| 105 | | D + I + V | ÷ | | ||
| 106 | | P + M | ± | | ||
| 107 | | I + N + E | ≠ | | ||
| 108 | | A + L + M | ≈ | | ||
| 109 | | S + Q + U | √ | | ||
| 110 | | I + N + F | ∞ | | ||
| 111 | | < + < | ≤ | | ||
| 112 | | > + > | ≥ | | ||
| 113 | | F + S + T | ¼ | | ||
| 114 | | F + S + G | ½ | | ||
| 115 | | F + H + T | ¾ | | ||
| 116 | |||
| 117 | | - | | | ||
| 118 | |--------------------|------------------------| | ||
| 119 | | F + L + A | ⚡ | | ||
| 120 | | S + P + A | ✨ | | ||
| 121 | | O + W + D | ⛔ | | ||
| 122 | | C + O + F | ☕ | | ||
| 123 | | U + M + B | ☔ | | ||
| 124 | | Y + E + S | ✅ | | ||
| 125 | | N + O | ❎ | | ||
| 126 | | C + R + O | ❌ | | ||
| 127 | | ? | ❔ | | ||
| 128 | | ! | ❕ | | ||
| 129 | | ? + ? | ❓ | | ||
| 130 | | ! + ! | ❗ | | ||
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk new file mode 100644 index 0000000000..d854cbb16b --- /dev/null +++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | LTO_ENABLE = yes | ||
| 2 | CONVERT_TO = elite_pi | ||
| 3 | |||
| 4 | SRC += features/auto_shift.c | ||
| 5 | SRC += features/combo.c | ||
| 6 | SRC += features/leader.c | ||
| 7 | SRC += oled/oled.c | ||
| 8 | |||
| 9 | OLED_ENABLE = yes | ||
| 10 | OLED_DRIVER = SSD1306 | ||
| 11 | |||
| 12 | MOUSEKEY_ENABLE = yes | ||
| 13 | AUTO_SHIFT_ENABLE = yes | ||
| 14 | AUTO_SHIFT_MODIFIERS = no | ||
| 15 | COMBO_ENABLE = yes | ||
| 16 | LEADER_ENABLE = yes | ||
| 17 | |||
| 18 | # Recommended for space cadet shift | ||
| 19 | COMMAND_ENABLE = no | ||
| 20 | |||
| 21 | UNICODE_ENABLE = yes | ||
| 22 | SEND_STRING_ENABLE = yes | ||
