diff --git a/.clangd b/.clangd index 6133ae7..63dadd7 100644 --- a/.clangd +++ b/.clangd @@ -1,4 +1,4 @@ CompileFlags: Add: [-Wno-unknown-attributes, -Wno-maybe-uninitialized, -Wno-unknown-warning-option] - Remove: [-W*, -mmcu=*, -mcpu=*, -mfpu=*, -mfloat-abi=*, -mno-unaligned-access, -mno-thumb-interwork, -mcall-prologues] + Remove: [-W*, -mmcu=*, -mcpu=*, -mfpu=*, -mfloat-abi=*, -mno-unaligned-access, -mno-thumb-interwork, -mcall-prologues, -D__has_include*] Compiler: clang diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/keymap.c b/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/keymap.c index ab849ec..35a1631 100644 --- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/keymap.c @@ -24,16 +24,25 @@ along with this program. If not, see . #define _NUM_MEDIA_MOUSE 1 #define _SYM_ARROWS_F 2 - +// Thumb cluster mods #define L1_BSP LT(_NUM_MEDIA_MOUSE, KC_BACKSPACE) #define ALT_ESC MT(MOD_LALT, KC_ESC) #define L2_SP LT(_SYM_ARROWS_F, KC_SPACE) #define CTL_ENT MT(MOD_RCTL, KC_ENT) #define CT_TAB MT(MOD_LCTL, KC_TAB) #define GUI_DEL MT(MOD_RGUI, KC_DEL) +// Homerow mods left #define SFT_F MT(MOD_LSFT, KC_F) +#define CTRL_D MT(MOD_LCTL, KC_D) +#define LGUI_S MT(MOD_LGUI, KC_S) +#define LALT_A MT(MOD_LALT, KC_A) +// Homerow mods right #define SFT_J MT(MOD_RSFT, KC_J) +#define CTRL_K MT(MOD_RCTL, KC_K) +#define RGUI_L MT(MOD_RGUI, KC_L) +#define RALT_SCLN MT(KC_ALGR, KC_SCLN) +// mouse buttons #define KC_ML KC_MS_LEFT #define KC_MR KC_MS_RIGHT #define KC_MU KC_MS_UP @@ -58,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------, ,----------------------------------, * | q | w | e | r | t | | y | u | i | o | p | * |------+------+------+------+------| |-------------+------+------+------| - * | a | s | d | SF f | g | | h | SF j | k | l | ; | + * |ALT a |GUI s |CTL d | SF f | g | | h | SF j |CTL k |GUI l|ALT ; | * |------+------+------+------+------| |------|------+------+------+------| * | z | x | c | v | b | | n | m | , | . | / | * |------+------+------+-------------, ,-------------+------+------+------, @@ -76,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_BASE] = LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, SFT_F, KC_G, KC_H, SFT_J, KC_K, KC_L, KC_SCLN, + LALT_A, LGUI_S, CTRL_D, SFT_F, KC_G, KC_H, SFT_J, CTRL_K, RGUI_L, RALT_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH, KC_LBRC, KC_RBRC, KC_MINS, KC_EQL, ALT_ESC, L1_BSP, L2_SP, CTL_ENT, @@ -118,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------, ,----------------------------------, * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | * |------+------+------+------+------| |-------------+------+------+------| - * | | | | | | | LEFT | DOWN | UP | RGHT | | + * | | | | | | | LEFT | DOWN | UP | RGHT | ' " | * |------+------+------+------+------| |------|------+------+------+------| * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | * |------+------+------+-------------, ,-------------+------+------+------, @@ -136,42 +145,37 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_SYM_ARROWS_F] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, _______, + _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_QUOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; // clang-format on - - // Combos enum combo_events { - AS_AE, + QW_AE, OP_OE, - UI_UE, - LSEMI_APOSTROPHE + UI_UE }; -const uint16_t PROGMEM combo_ae[] = {KC_A, KC_S, COMBO_END}; +const uint16_t PROGMEM combo_ae[] = {KC_Q, KC_W, COMBO_END}; const uint16_t PROGMEM combo_oe[] = {KC_O, KC_P, COMBO_END}; const uint16_t PROGMEM combo_ue[] = {KC_U, KC_I, COMBO_END}; -const uint16_t PROGMEM combo_apostrophe[] = {KC_L, KC_SCLN, COMBO_END}; combo_t key_combos[] = { - [AS_AE] = COMBO_ACTION(combo_ae), + [QW_AE] = COMBO_ACTION(combo_ae), [OP_OE] = COMBO_ACTION(combo_oe), [UI_UE] = COMBO_ACTION(combo_ue), - [LSEMI_APOSTROPHE] = COMBO_ACTION(combo_apostrophe), }; /* COMBO_ACTION(x) is same as COMBO(x, KC_NO) */ void process_combo_event(uint16_t combo_index, bool pressed) { switch(combo_index) { - case AS_AE: + case QW_AE: if (pressed) { tap_code16(RALT(KC_Q)); } @@ -186,10 +190,5 @@ void process_combo_event(uint16_t combo_index, bool pressed) { tap_code16(RALT(KC_Y)); } break; - case LSEMI_APOSTROPHE: - if (pressed) { - tap_code16(KC_QUOT); - } - break; } } diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/rules.mk b/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/rules.mk index d550a5b..706a728 100644 --- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/rules.mk +++ b/keyboards/handwired/dactyl_manuform/4x5/keymaps/thecount/rules.mk @@ -7,5 +7,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -SPLIT_KEYBOARD = yes -COMBO_ENABLE = yes +SPLIT_KEYBOARD = yes # Split keyboard +COMBO_ENABLE = yes # combos (chords) diff --git a/qmkflash.sh b/qmkflash.sh new file mode 100755 index 0000000..0ab4ce5 --- /dev/null +++ b/qmkflash.sh @@ -0,0 +1,3 @@ +# Shortcut for flashing a kb + +qmk flash -kb handwired/dactyl_manuform/4x5 -km thecount diff --git a/users/thecount/config.h b/users/thecount/config.h index 6c42e7a..3133147 100644 --- a/users/thecount/config.h +++ b/users/thecount/config.h @@ -1,3 +1,3 @@ #define PERMISSIVE_HOLD #define CHORDAL_HOLD -#define TAPPING_TERM 250 +#define TAPPING_TERM 200