diff --git a/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.c b/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.c index cd4eb526..564f31bd 100644 --- a/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.c +++ b/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.c @@ -4,23 +4,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_split_3x6_3( - ESC_L1, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, MIN_L2, + ESC_L2, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, MIN_L1, KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_EQL, - KC_LSFT, Z_L2, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SL_L1, KC_QUOT, - CT_GRV, AL_DEL, GU_BSP, GU_SPC, AL_ENT, KC_RCTL + KC_LSFT, Z_L1, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SL_L2, KC_QUOT, + CT_GRV, AL_DEL, GU_BSP, GU_SPC, AL_ENT, CT_BSL ), [1] = LAYOUT_split_3x6_3( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, LALT(KC_LEFT), LALT(KC_DOWN), LALT(KC_UP), LALT(KC_RGHT), KC_PGUP, _______, - _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, - _______, _______, _______, _______, KC_F11, KC_F12, LGUI(KC_LEFT), LGUI(KC_DOWN), LGUI(KC_UP), RGUI(KC_RGHT), KC_PGDN, _______, - _______, _______, _______, _______, _______, _______ - ), - - [2] = LAYOUT_split_3x6_3( _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_7, KC_8, KC_9, _______, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_4, KC_5, KC_6, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, _______, - _______, _______, KC_DOT, KC_COMM, KC_0, KC_DOT + _______, _______, _______, KC_COMM, KC_0, KC_DOT + ), + + [2] = LAYOUT_split_3x6_3( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, LALT(KC_LEFT), LALT(KC_DOWN), LALT(KC_UP), LALT(KC_RGHT), _______, RGB_MOD, + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, RGB_RMOD, + _______, _______, _______, _______, _______, _______, RGUI(KC_LEFT), RGUI(KC_DOWN), RGUI(KC_UP), RGUI(KC_RGHT), _______, RGB_TOG, + QK_BOOT, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.json b/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.json index d3d2ee94..5dc464bc 100644 --- a/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.json +++ b/keyboards/keebart/corne_choc_pro/keymaps/timfee/keymap.json @@ -1,28 +1,28 @@ { "version": 1, - "notes": "timfee's Keebart Corne Choc Pro layout with layer-taps, require-prior-idle, and combos", + "notes": "timfee's Keebart Corne Choc Pro layout — uses crkbd/rev1 for QMK Configurator visualization only; actual build target is keebart/corne_choc_pro/standard", "documentation": "https://docs.qmk.fm", - "keyboard": "keebart/corne_choc_pro/standard", + "keyboard": "crkbd/rev1", "keymap": "timfee", "layout": "LAYOUT_split_3x6_3", "layers": [ [ - "LT(1,KC_ESC)", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "LT(2,KC_MINS)", + "LT(2,KC_ESC)", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "LT(1,KC_MINS)", "KC_TAB", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_EQL", - "KC_LSFT", "LT(2,KC_Z)", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "LT(1,KC_SLSH)", "KC_QUOT", - "LCTL_T(KC_GRV)", "LALT_T(KC_DEL)", "LGUI_T(KC_BSPC)", "RGUI_T(KC_SPC)", "RALT_T(KC_ENT)", "KC_RCTL" - ], - [ - "KC_TRNS", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "LALT(KC_LEFT)", "LALT(KC_DOWN)", "LALT(KC_UP)", "LALT(KC_RGHT)", "KC_PGUP", "KC_TRNS", - "KC_TRNS", "KC_F6", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RGHT", "KC_TRNS", "KC_TRNS", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_F11", "KC_F12", "LGUI(KC_LEFT)", "LGUI(KC_DOWN)", "LGUI(KC_UP)", "RGUI(KC_RGHT)", "KC_PGDN", "KC_TRNS", - "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS" + "KC_LSFT", "LT(1,KC_Z)", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "LT(2,KC_SLSH)", "KC_QUOT", + "LCTL_T(KC_GRV)", "LALT_T(KC_DEL)", "LGUI_T(KC_BSPC)", "RGUI_T(KC_SPC)", "RALT_T(KC_ENT)", "RCTL_T(KC_BSLS)" ], [ "KC_TRNS", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_7", "KC_8", "KC_9", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "KC_4", "KC_5", "KC_6", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_1", "KC_2", "KC_3", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS", "KC_TRNS", "KC_DOT", "KC_COMM", "KC_0", "KC_DOT" + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_COMM", "KC_0", "KC_DOT" + ], + [ + "KC_TRNS", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "LALT(KC_LEFT)", "LALT(KC_DOWN)", "LALT(KC_UP)", "LALT(KC_RGHT)", "KC_TRNS", "RGB_MOD", + "KC_TRNS", "KC_F6", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RGHT", "KC_TRNS", "RGB_RMOD", + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "RGUI(KC_LEFT)", "RGUI(KC_DOWN)", "RGUI(KC_UP)", "RGUI(KC_RGHT)", "KC_TRNS", "RGB_TOG", + "QK_BOOT", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS" ] ] } diff --git a/users/timfee/timfee.c b/users/timfee/timfee.c index 19863955..7bac4a4f 100644 --- a/users/timfee/timfee.c +++ b/users/timfee/timfee.c @@ -3,23 +3,23 @@ // ── State for require-prior-idle ── static uint16_t last_key_time = 0; -// ── Combos ── +// ── Combos (matching Vial config) ── const uint16_t PROGMEM lparen_combo[] = {KC_R, KC_T, COMBO_END}; const uint16_t PROGMEM rparen_combo[] = {KC_Y, KC_U, COMBO_END}; -const uint16_t PROGMEM lbrace_combo[] = {KC_F, KC_G, COMBO_END}; -const uint16_t PROGMEM rbrace_combo[] = {KC_H, KC_J, COMBO_END}; -const uint16_t PROGMEM lbkt_combo[] = {KC_V, KC_B, COMBO_END}; -const uint16_t PROGMEM rbkt_combo[] = {KC_N, KC_M, COMBO_END}; -const uint16_t PROGMEM pipe_combo[] = {Z_L2, KC_X, COMBO_END}; -const uint16_t PROGMEM bslh_combo[] = {SL_L1, KC_QUOT, COMBO_END}; +const uint16_t PROGMEM lbkt_combo[] = {KC_F, KC_G, COMBO_END}; +const uint16_t PROGMEM rbkt_combo[] = {KC_H, KC_J, COMBO_END}; +const uint16_t PROGMEM lbrace_combo[] = {KC_V, KC_B, COMBO_END}; +const uint16_t PROGMEM rbrace_combo[] = {KC_N, KC_M, COMBO_END}; +const uint16_t PROGMEM pipe_combo[] = {Z_L1, KC_X, COMBO_END}; +const uint16_t PROGMEM bslh_combo[] = {SL_L2, KC_QUOT, COMBO_END}; combo_t key_combos[COMBO_COUNT] = { COMBO(lparen_combo, KC_LPRN), COMBO(rparen_combo, KC_RPRN), - COMBO(lbrace_combo, KC_LCBR), - COMBO(rbrace_combo, KC_RCBR), COMBO(lbkt_combo, KC_LBRC), COMBO(rbkt_combo, KC_RBRC), + COMBO(lbrace_combo, KC_LCBR), + COMBO(rbrace_combo, KC_RCBR), COMBO(pipe_combo, KC_PIPE), COMBO(bslh_combo, KC_BSLS), }; @@ -42,25 +42,25 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; } break; - case Z_L2: + case Z_L1: if (elapsed < RPI_Z) { tap_code(KC_Z); return false; } break; - case SL_L1: + case SL_L2: if (elapsed < RPI_SLASH) { tap_code(KC_SLSH); return false; } break; - case ESC_L1: + case ESC_L2: if (elapsed < RPI_ESC) { tap_code(KC_ESC); return false; } break; - case MIN_L2: + case MIN_L1: if (elapsed < RPI_MINUS) { tap_code(KC_MINS); return false; @@ -78,8 +78,8 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case GU_BSP: return 100; case GU_SPC: return 150; - case Z_L2: - case SL_L1: return 120; + case Z_L1: + case SL_L2: return 120; case AL_DEL: case AL_ENT: return 130; default: return TAPPING_TERM; @@ -89,10 +89,10 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { // ── Per-key permissive hold (pinky layer-taps only) ── bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case ESC_L1: - case Z_L2: - case MIN_L2: - case SL_L1: + case ESC_L2: + case Z_L1: + case MIN_L1: + case SL_L2: return true; default: return false; @@ -119,8 +119,8 @@ bool get_retro_tapping(uint16_t keycode, keyrecord_t *record) { uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case GU_SPC: return 90; - case Z_L2: - case SL_L1: return 80; + case Z_L1: + case SL_L2: return 80; default: return QUICK_TAP_TERM; } } diff --git a/users/timfee/timfee.h b/users/timfee/timfee.h index 2f46ca3a..90eba2cf 100644 --- a/users/timfee/timfee.h +++ b/users/timfee/timfee.h @@ -1,16 +1,17 @@ #pragma once #include QMK_KEYBOARD_H -// ── Key aliases ── -#define ESC_L1 LT(1, KC_ESC) -#define Z_L2 LT(2, KC_Z) -#define MIN_L2 LT(2, KC_MINS) -#define SL_L1 LT(1, KC_SLSH) +// ── Key aliases (layer numbers match Vial: L1=symbols, L2=nav) ── +#define ESC_L2 LT(2, KC_ESC) +#define Z_L1 LT(1, KC_Z) +#define MIN_L1 LT(1, KC_MINS) +#define SL_L2 LT(2, KC_SLSH) #define CT_GRV LCTL_T(KC_GRV) #define AL_DEL LALT_T(KC_DEL) #define GU_BSP LGUI_T(KC_BSPC) #define GU_SPC RGUI_T(KC_SPC) #define AL_ENT RALT_T(KC_ENT) +#define CT_BSL RCTL_T(KC_BSLS) // ── Require-prior-idle thresholds (ms) ── #define RPI_SPACE 150