diff --git a/keyboards/boardsource/unicorne/keymaps/markstos/config.h b/keyboards/boardsource/unicorne/keymaps/markstos/config.h index ca4aac25..5669015d 100644 --- a/keyboards/boardsource/unicorne/keymaps/markstos/config.h +++ b/keyboards/boardsource/unicorne/keymaps/markstos/config.h @@ -40,7 +40,7 @@ #define HOLD_ON_OTHER_KEY_PRESS // markstos: prevent keydown and keyup from firing on different layers -#define PREVENT_STUCK_MODIFERS +#define PREVENT_STUCK_MODIFER // When enabled, typing a mod-tap plus second within term will register as the mod-combo // Ref: https://beta.docs.qmk.fm/using-qmk/software-features/tap_hold#permissive-hold diff --git a/keyboards/boardsource/unicorne/keymaps/markstos/keymap.c b/keyboards/boardsource/unicorne/keymaps/markstos/keymap.c index 89ebb984..ced14b7e 100644 --- a/keyboards/boardsource/unicorne/keymaps/markstos/keymap.c +++ b/keyboards/boardsource/unicorne/keymaps/markstos/keymap.c @@ -7,7 +7,8 @@ enum custom_keycodes { DEFAULT = SAFE_RANGE, LOWER, RAISE, - FUNC + FUNC, + SYSTEM }; enum combos { @@ -41,6 +42,7 @@ combo_t key_combos[COMBO_COUNT] = { #define LOW_TAB LT(_LOWER, KC_TAB) #define RSE_BSP LT(_RAISE, KC_BSPC) #define OSM_SFT OSM(MOD_LSFT) +#define SYS_SFT LT(OSL(_SYSTEM), OSM_SFT) // For _RAISE layer @@ -53,11 +55,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_split_3x6_3( \ //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_DEL, \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_DEL, \ //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| OSM(MOD_LALT), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H ,KC_J ,KC_K ,KC_L ,KC_QUOT ,OSM_AGR,\ - //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - OSM(MOD_LSFT), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,OSL_FUN,\ + //|---- ----+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + SYS_SFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,OSL_FUN,\ //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| OSM_LCTL, GUI_ENT, LOW_TAB, RSE_BSP ,KC_SPC ,OSM_SFT \ //`--------------------------' `--------------------------' @@ -81,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, KC_HOME, KC_END , KC_MINS, KC_EQL , KC_PGDN, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_APP ,_______,\ //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - _______, KC_LT , KC_GT , CTL_COPY,CTL_PSTE, KC_SCLN, KC_MPLY, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU,_______,\ + _______, KC_LT , KC_GT , CTL_COPY,CTL_PSTE, KC_SCLN, KC_MPLY, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU,_______,\ //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| CTL_ESC, KC_TRNS, XXXXXXX, RAISE , KC_TRNS, KC_TRNS\ //`--------------------------' `--------------------------' @@ -118,6 +120,8 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { return TAPPING_TERM_THUMB; case LT(_LOWER, KC_TAB): return TAPPING_TERM_THUMB; + case LT(_SYSTEM, OSM(MOD_LSFT)): + return TAPPING_TERM_THUMB; default: return TAPPING_TERM; } diff --git a/keyboards/boardsource/unicorne/keymaps/markstos/rules.mk b/keyboards/boardsource/unicorne/keymaps/markstos/rules.mk index 7840a8f2..76774cd3 100644 --- a/keyboards/boardsource/unicorne/keymaps/markstos/rules.mk +++ b/keyboards/boardsource/unicorne/keymaps/markstos/rules.mk @@ -1,6 +1,8 @@ SERIAL_DRIVER = vendor AUDIO_DRIVER = pwm_hardware POINTING_DEVICE_DRIVER = analog_joystick + +OLED_ENABLE = yes # markstos: enable media keys EXTRAKEY_ENABLE = yes diff --git a/keyboards/boardsource/unicorne/keymaps/markstos/unicorne.c b/keyboards/boardsource/unicorne/keymaps/markstos/unicorne.c index 22cd1e4a..f8cea916 100644 --- a/keyboards/boardsource/unicorne/keymaps/markstos/unicorne.c +++ b/keyboards/boardsource/unicorne/keymaps/markstos/unicorne.c @@ -11,26 +11,48 @@ oled_rotation_t oled_init_kb(oled_rotation_t rotation) { } bool oled_task_kb(void) { - if (!oled_task_user()) { - return false; - } + // if (!oled_task_user()) { + // return false; + // } if (is_keyboard_master()) { + // switch (get_highest_layer(layer_state)) { + // case 0: + // oled_write_raw(layer_zero, sizeof(layer_zero)); + // break; + // case 1: + // oled_write_raw(layer_one, sizeof(layer_one)); + // break; + // case 2: + // oled_write_raw(layer_two, sizeof(layer_two)); + // break; + // case 3: + // oled_write_raw(layer_three, sizeof(layer_three)); + // break; + // } + + switch (get_highest_layer(layer_state)) { case 0: - oled_write_raw(layer_zero, sizeof(layer_zero)); + oled_write_P(PSTR("Default\n"), false); break; case 1: - oled_write_raw(layer_one, sizeof(layer_one)); + oled_write_P(PSTR("NUMS & SYMS\n"), false); break; case 2: - oled_write_raw(layer_two, sizeof(layer_two)); + oled_write_P(PSTR("NAV\n"), false); break; case 3: - oled_write_raw(layer_three, sizeof(layer_three)); + oled_write_P(PSTR("FKEYS\n"), false); break; + case 4: + oled_write_P(PSTR("SYS\n"), false); + break; + default: + // Or use the write_ln shortcut over adding '\n' to the end of your string + oled_write_ln_P(PSTR("Undefined"), false); } } else { - oled_write_raw(logo, sizeof(logo)); + oled_write_raw(logo, sizeof(logo)); } return false; }