Finally added Colemak DH

This commit is contained in:
dave
2024-08-12 09:10:40 -05:00
parent f6ccbed4ac
commit dd4507cfc4
4 changed files with 44 additions and 6 deletions

View File

@@ -39,7 +39,7 @@ enum {
}; };
// Layer-taps // Layers
// 3 LEFT THUMB KEYS // 3 LEFT THUMB KEYS
#define MUS_ESC LT(_MUS, KC_ESC) #define MUS_ESC LT(_MUS, KC_ESC)
@@ -55,4 +55,7 @@ enum {
// 2 RIGHT THUMB KEYS // 2 RIGHT THUMB KEYS
#define NUM_SPC LT(_NUM, KC_SPC) #define NUM_SPC LT(_NUM, KC_SPC)
// Default layer change
#define QWERT DF(_QWERTY)
#define COLDH DF(_COLEMAKDH)
// clang-format on // clang-format on

View File

@@ -17,8 +17,8 @@
// EMPTY ROW // EMPTY ROW
#define __________________EMPTY_____________________ _______, _______, _______, _______, _______ #define __________________EMPTY_____________________ _______, _______, _______, _______, _______
// BOOTLOADER // BOOTLOADER
#define _________________BOOT_R1____________________ _______, _______, _______, _______, QK_BOOTLOADER #define _________________BOOT_R1____________________ COLDH, _______, _______, _______, QK_BOOTLOADER
#define _________________BOOT_L1____________________ QK_BOOTLOADER,_______,_______,_______,_______ #define _________________BOOT_L1____________________ QK_BOOTLOADER,_______,_______,_______,QWERT
// _BASE // _BASE

View File

@@ -2,6 +2,7 @@
typedef enum { typedef enum {
_QWERTY, // 0 _QWERTY, // 0
_COLEMAKDH,
_NAV, // 2 _NAV, // 2
_NUM, //3 _NUM, //3
_SYM, // 4 _SYM, // 4

View File

@@ -10,7 +10,13 @@ enum combos {
FD_CTL, FD_CTL,
JQUOT_GUI, JQUOT_GUI,
JL_ALT, JL_ALT,
JK_CTL JK_CTL,
TA_GUI,
TR_ALT,
TS_CTL,
NO_GUI,
NI_ALT,
NE_CTL
}; };
const uint16_t PROGMEM fa_combo[] = {KC_F, KC_A, COMBO_END}; const uint16_t PROGMEM fa_combo[] = {KC_F, KC_A, COMBO_END};
@@ -20,14 +26,28 @@ const uint16_t PROGMEM jquote_combo[] = {KC_J, KC_QUOT, COMBO_END};
const uint16_t PROGMEM jl_combo[] = {KC_J, KC_L, COMBO_END}; const uint16_t PROGMEM jl_combo[] = {KC_J, KC_L, COMBO_END};
const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END}; const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END};
const uint16_t PROGMEM ta_combo[] = {KC_T, KC_A, COMBO_END};
const uint16_t PROGMEM tr_combo[] = {KC_T, KC_R, COMBO_END};
const uint16_t PROGMEM ts_combo[] = {KC_T, KC_S, COMBO_END};
const uint16_t PROGMEM no_combo[] = {KC_N, KC_O, COMBO_END};
const uint16_t PROGMEM ni_combo[] = {KC_N, KC_I, COMBO_END};
const uint16_t PROGMEM ne_combo[] = {KC_N, KC_E, COMBO_END};
combo_t key_combos[] = { combo_t key_combos[] = {
// QWERTY
[FA_GUI] = COMBO(fa_combo, KC_LGUI), [FA_GUI] = COMBO(fa_combo, KC_LGUI),
[FS_ALT] = COMBO(fs_combo, KC_LALT), [FS_ALT] = COMBO(fs_combo, KC_LALT),
[FD_CTL] = COMBO(fd_combo, KC_LCTL), [FD_CTL] = COMBO(fd_combo, KC_LCTL),
[JQUOT_GUI] = COMBO(jquote_combo, KC_RGUI), [JQUOT_GUI] = COMBO(jquote_combo, KC_RGUI),
[JL_ALT] = COMBO(jl_combo, KC_RALT), [JL_ALT] = COMBO(jl_combo, KC_RALT),
[JK_CTL] = COMBO(jk_combo, KC_RCTL), [JK_CTL] = COMBO(jk_combo, KC_RCTL),
}; // COLEMAK-DH
[TA_GUI] = COMBO(ta_combo, KC_LGUI),
[TR_ALT] = COMBO(tr_combo, KC_LALT),
[TS_CTL] = COMBO(ts_combo, KC_LCTL),
[NO_GUI] = COMBO(no_combo, KC_RGUI),
[NI_ALT] = COMBO(ni_combo, KC_RALT),
[NE_CTL] = COMBO(ne_combo, KC_RCTL),};
@@ -46,6 +66,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// └────────┴────────┴────────┘ └────────┴────────┴────────┘ // └────────┴────────┴────────┘ └────────┴────────┴────────┘
), ),
[_COLEMAKDH] = LAYOUT_wrapper(
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MUTE,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
KC_TAB, __________________COLEML1____________________, __________________COLEMR1____________________, KC_GRV,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
KC_LCTL, __________________COLEML2____________________, __________________COLEMR2____________________, KC_RCTL,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
KC_LSFT, __________________COLEML3____________________,SPOTLI, _______, __________________COLEMR3____________________, KC_RSFT,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
___________THUMB_L3________, ___________THUMB_R3________
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
),
[_NAV] = LAYOUT_wrapper( [_NAV] = LAYOUT_wrapper(
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
@@ -230,6 +263,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// #define ___________THUMB_R3________ SYM_ENTER,NUM_SPC,FUN_DEL // #define ___________THUMB_R3________ SYM_ENTER,NUM_SPC,FUN_DEL
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[_QWERTY] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, [_QWERTY] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[_COLEMAKDH] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[_NAV] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(C(KC_TAB), S(C(KC_TAB))) }, [_NAV] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(C(KC_TAB), S(C(KC_TAB))) },
[_NUM] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }, [_NUM] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(RGB_HUD, RGB_HUI) },
[_SYM] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, [_SYM] = { ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) },