diff --git a/dgvigil/definitions/keycodes.h b/dgvigil/definitions/keycodes.h index 3589aab..1bf3b31 100644 --- a/dgvigil/definitions/keycodes.h +++ b/dgvigil/definitions/keycodes.h @@ -8,12 +8,14 @@ enum { TD_Q_ESC, - TD_W_GRV + TD_W_GRV, + BRT_OPA }; // Tap dance keycodes #define Q_ESC TD(TD_Q_ESC) #define W_GRV TD(TD_W_GRV) +#define TD_OPAR TD(BRT_OPA) // Custom keycodes @@ -21,7 +23,7 @@ enum { enum { CUSTOM_KEYCODE_START = SAFE_RANGE, M_PASS1, - M_PASS12, + M_PASS2, CUSTOM_KEYCODE_END }; diff --git a/dgvigil/definitions/keymap_blocks.h b/dgvigil/definitions/keymap_blocks.h index d92fb50..05f9ee1 100644 --- a/dgvigil/definitions/keymap_blocks.h +++ b/dgvigil/definitions/keymap_blocks.h @@ -8,7 +8,7 @@ // THUMB KEYS #define ___________THUMB_L3________ MUS_ESC, NAV_BKSP,MOUSE_TAB #define ___________THUMB_R3________ SYM_ENTER,NUM_SPC,FUN_DEL -#define _________________BOOT_L1____________________ _______, _______, _______ +#define ___________THUMB_3__BLANK__ _______, _______, _______ #define ____THUMB_L2____ NAV_BKSP,FUN_TAB #define ____THUMB_R2____ SYM_ENTER,NUM_SPC @@ -50,27 +50,23 @@ // SYM #define __________________SYM_L1____________________ KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR -#define __________________SYM_L1____________________ KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS -#define __________________SYM_L1____________________ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PIPE +#define __________________SYM_L2____________________ KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS +#define __________________SYM_L3____________________ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PIPE #define _________SYM_TH_L3________ KC_LPRN, KC_RPRN, KC_UNDS #define _____SYM_TH_L2___ KC_RPRN, KC_UNDS // FUN -#define __________________FUN_R1____________________ _______, _______, _______, _______, QK_BOOTLOADER -#define __________________FUN_L1____________________ KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR -#define __________________FUN_L1____________________ KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS -#define __________________FUN_L1____________________ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PIPE +#define __________________FUN_L1____________________ KC_F12, KC_F7, KC_F8, KC_F9, KC_PSCR +#define __________________FUN_L2____________________ KC_F11, KC_F4, KC_F5, KC_F6, _______ +#define __________________FUN_L3____________________ KC_F10, KC_F1, KC_F2, KC_F3, _______ // MUS -#define __________________MUS_L1____________________ QK_BOOTLOADER, _______, _______, _______, _______ - -#define __________________MUS_R1____________________ KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR -#define __________________MUS_R2____________________ KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS -#define __________________MUS_R3____________________ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PIPE +#define __________________MUS_R2____________________ _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT +#define __________________MUS_R3____________________ _______, KC_MSTP, KC_MPLY, KC_MUTE, _______ // MOUSE #define __________________MOU_R1____________________ _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO -#define __________________MOU_R2____________________ KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R -#define __________________MOU_R3____________________ KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R \ No newline at end of file +#define __________________MOU_R2____________________ KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R +#define __________________MOU_R3____________________ KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R \ No newline at end of file diff --git a/dgvigil/definitions/process_record.h b/dgvigil/definitions/process_record.h new file mode 100644 index 0000000..86c7a38 --- /dev/null +++ b/dgvigil/definitions/process_record.h @@ -0,0 +1,9 @@ +#pragma once + +#define _PROCESS_RECORD_RESULT_H + +typedef enum { + PROCESS_RECORD_RETURN_TRUE, + PROCESS_RECORD_RETURN_FALSE, + PROCESS_RECORD_CONTINUE +} process_record_result_t; \ No newline at end of file diff --git a/dgvigil/dgvigil.c b/dgvigil/dgvigil.c index 0d09f09..3a3ec5b 100644 --- a/dgvigil/dgvigil.c +++ b/dgvigil/dgvigil.c @@ -1,8 +1,2 @@ #include "dgvigil.h" -#include "definitions/layers.h" -#include "definitions/keycodes.h" -#include "definitions/keymap_blocks.h" -#include "features/taphold.h" -#include "features/tapdance.h" -#include "features/macros.h" \ No newline at end of file diff --git a/dgvigil/dgvigil.h b/dgvigil/dgvigil.h index f7c7990..7fa544f 100644 --- a/dgvigil/dgvigil.h +++ b/dgvigil/dgvigil.h @@ -1,8 +1,9 @@ -#ifndef USERSPACE -#define USERSPACE +#include QMK_KEYBOARD_H -#include "quantum.h" - -void my_custom_function(void); - -#endif \ No newline at end of file +#include "features/taphold.h" +#include "features/tapdance.h" +#include "features/macros.h" +#include "definitions/layers.h" +#include "definitions/process_record.h" +#include "definitions/keycodes.h" +#include "definitions/keymap_blocks.h" \ No newline at end of file diff --git a/dgvigil/features/macros.c b/dgvigil/features/macros.c new file mode 100644 index 0000000..b76108e --- /dev/null +++ b/dgvigil/features/macros.c @@ -0,0 +1,20 @@ +#include QMK_KEYBOARD_H + +#include "macros.h" + + +process_record_result_t process_macro_keycode(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case M_PASS1: + if (record->event.pressed) { + SEND_STRING("T3lg3Ranch!2023"); + } + return false; + case M_PASS2: + if (record->event.pressed) { + SEND_STRING("P0plarLake!2023"); + } + return false; + } + return true; +} \ No newline at end of file diff --git a/dgvigil/features/macros.h b/dgvigil/features/macros.h index e69de29..d306183 100644 --- a/dgvigil/features/macros.h +++ b/dgvigil/features/macros.h @@ -0,0 +1,8 @@ +#pragma once + +#include QMK_KEYBOARD_H +#include "../definitions/keycodes.h" +#include "../definitions/process_record.h" + + +process_record_result_t process_macros(uint16_t keycode, keyrecord_t *record); \ No newline at end of file diff --git a/dgvigil/features/tapdance.c b/dgvigil/features/tapdance.c new file mode 100644 index 0000000..32cf2ed --- /dev/null +++ b/dgvigil/features/tapdance.c @@ -0,0 +1,72 @@ +#include QMK_KEYBOARD_H + +#include "tapdance.h" + +static td_tap_t tap_state = {.state = TD_NONE}; + +__attribute__((weak)) td_state_t dance_state(tap_dance_state_t *state) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return TD_SINGLE_TAP; + // Key has not been interrupted, but the key is still held. Means you want to send a 'HOLD'. + else + return TD_SINGLE_HOLD; + } else if (state->count == 2) { + // TD_DOUBLE_SINGLE_TAP is to distinguish between typing "pepper", and actually wanting a double tap + // action when hitting 'pp'. Suggested use case for this return value is when you want to send two + // keystrokes of the key, and not the 'double tap' action/macro. + if (state->interrupted) + return TD_DOUBLE_SINGLE_TAP; + else if (state->pressed) + return TD_DOUBLE_HOLD; + else + return TD_DOUBLE_TAP; + } + + // Assumes no one is trying to type the same letter three times (at least not quickly). + // If your tap dance key is 'KC_W', and you want to type "www." quickly - then you will need to add + // an exception here to return a 'TD_TRIPLE_SINGLE_TAP', and define that enum just like 'TD_DOUBLE_SINGLE_TAP' + if (state->count == 3) { + if (state->interrupted || !state->pressed) + return TD_TRIPLE_TAP; + else + return TD_TRIPLE_HOLD; + } else + return TD_UNKNOWN; +} + +bool is_shifted(void) { + return get_mods() & MOD_MASK_SHIFT || get_oneshot_mods() & MOD_MASK_SHIFT || + get_oneshot_locked_mods() & MOD_MASK_SHIFT; +} + +void td_open_parentesis(tap_dance_state_t *state, void *user_data) { + tap_state.state = dance_state(state); + switch (tap_state.state) { + case TD_SINGLE_TAP: + tap_code16(KC_LPRN); + break; + case TD_SINGLE_HOLD: + tap_code16(KC_END); + tap_code16(KC_LPRN); + break; + case TD_DOUBLE_TAP: + SEND_STRING("var "); + break; + default: + break; + } +} + + + +// clang-format off + +// Tap dance declarations + +tap_dance_action_t tap_dance_actions[] = { + [TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC), + [TD_W_GRV] = ACTION_TAP_DANCE_DOUBLE(KC_W, KC_GRAVE), + [BRT_OPA] = ACTION_TAP_DANCE_FN(td_open_parentesis), +}; + +// clang-format on \ No newline at end of file diff --git a/dgvigil/features/tapdance.h b/dgvigil/features/tapdance.h index e69de29..0fa9023 100644 --- a/dgvigil/features/tapdance.h +++ b/dgvigil/features/tapdance.h @@ -0,0 +1,24 @@ +#pragma once + +#include QMK_KEYBOARD_H + +#include "../definitions/keycodes.h" + +typedef enum { + TD_NONE, + TD_UNKNOWN, + TD_SINGLE_TAP, + TD_SINGLE_HOLD, + TD_DOUBLE_TAP, + TD_DOUBLE_HOLD, + TD_DOUBLE_SINGLE_TAP, // Send two single taps + TD_TRIPLE_TAP, + TD_TRIPLE_HOLD +} td_state_t; + +typedef struct { + td_state_t state; + bool recording; +} td_tap_t; + +td_state_t dance_state(tap_dance_state_t *state); \ No newline at end of file diff --git a/dgvigil/rules.mk b/dgvigil/rules.mk index 6b8dbc3..f7306db 100644 --- a/dgvigil/rules.mk +++ b/dgvigil/rules.mk @@ -1,13 +1,11 @@ SRC += dgvigil.c -SRC += secret.c -SRC += definitions/keycodes.c -SRC += features/tapdance.c -SRC += features/combos.c +SRC +=features/tapdance.c +SRC +=features/macros.c REPEAT_KEY_ENABLE = yes AUTO_SHIFT_ENABLE = yes CAPS_WORD_ENABLE = yes COMBO_ENABLE = yes TAP_DANCE_ENABLE = yes -RGBLIGHT_ENABLE = yes + LTO_ENABLE = yes diff --git a/draculad/keymap.c b/draculad/keymap.c index 1f97259..04e16f4 100644 --- a/draculad/keymap.c +++ b/draculad/keymap.c @@ -1,51 +1,12 @@ -/* -Copyright 2021 @mangoiv - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - #include QMK_KEYBOARD_H #ifdef OS_DETECTION_ENABLE #include "os_detection.h" #endif -enum layer_number { - _BASE, - _NAV, - _NUM, - _SYM, - _FUN, - _MUS, - _MOUSE -}; +#include "dgvigil.h" -enum custom_keycodes { - M_PASS1 = SAFE_RANGE, - M_PASS2 -}; - -// Tap Dance declarations -enum { - TD_Q_ESC, -}; - -// Tap Dance definitions -tap_dance_action_t tap_dance_actions[] = { - // Tap once for Q, twice for Escape - [TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC), -}; +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) enum combos { FA_GUI, @@ -72,108 +33,98 @@ combo_t key_combos[] = { [JK_CTL] = COMBO(jk_combo, KC_RCTL), }; -// LEFT THUMB KEYS -#define MUS_ESC LT(_MUS, KC_ESC) -#define NAV_BKSP LT(_NAV, KC_BSPC) -#define MOUSE_TAB LT(_MOUSE, KC_TAB) -// RIGHT THUMB KEYS -#define SYM_ENTER LT(_SYM, KC_ENTER) -#define NUM_SPC LT(_NUM, KC_SPC) -#define FUN_DEL LT(_FUN, KC_DEL) -// TAP DANCE -#define Q_ESC TD(TD_Q_ESC) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( + [_BASE] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - Q_ESC, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + __________________BASE_L1____________________, __________________BASE_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, + __________________BASE_L2____________________, __________________BASE_R2____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, -// └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ - KC_MUTE, QK_CAPS_WORD_TOGGLE, -// ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - MUS_ESC, NAV_BKSP,MOUSE_TAB, SYM_ENTER,NUM_SPC,FUN_DEL - // └────────┴────────┴────────┘ └────────┴────────┴────────┘ - ), - [_NAV] = LAYOUT( -// ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - _______, _______, _______, _______, _______, _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO, - // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, - // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, M_PASS2, M_PASS1, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, + __________________BASE_L3____________________, __________________BASE_R3____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - _______, _______, _______, _______, _______, _______ + ___________THUMB_L3________, ___________THUMB_R3________ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + [_NAV] = LAYOUT_wrapper( +// ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ + __________________EMPTY_____________________, __________________NAV_R1____________________, + // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ + __________________EMPTY_____________________, __________________NAV_R2____________________, + // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ + __________________NAV_L3____________________, __________________NAV_R3____________________, +// └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ + _______, _______, +// ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_NUM] = LAYOUT( + [_NUM] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, _______, _______, _______, _______, _______, + __________________NUM_L1____________________, _________________BOOT_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_SCLN, KC_4, KC_5, KC_6, KC_EQL, _______, _______, _______, _______, _______, + __________________NUM_L2____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_DOT, KC_1, KC_2, KC_3, KC_BSLS, _______, _______, _______, _______, _______, + __________________NUM_L3____________________, __________________EMPTY_____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - KC_DOT, KC_0, KC_MINUS, _______, _______, _______ + _________NUM_TH_L3________, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_SYM] = LAYOUT( + [_SYM] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RBRC, _______, _______, _______, _______, _______, + __________________SYM_L1____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS, KC_LPRN, KC_RPRN, _______, _______, _______, + __________________SYM_L2____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PIPE, KC_LPRN, KC_RPRN, _______, _______, _______, + __________________SYM_L3____________________, __________________EMPTY_____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - KC_LPRN, KC_RPRN, KC_UNDS, _______, _______, _______ + _________SYM_TH_L3________, _______, _______, _______ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_FUN] = LAYOUT( + [_FUN] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - KC_F12, KC_F7, KC_F8, KC_F9, KC_PSCR, QK_DYNAMIC_TAPPING_TERM_UP,_______, _______, _______, QK_BOOT, + __________________FUN_L1____________________, _________________BOOT_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_F11, KC_F4, KC_F5, KC_F6, _______, QK_DYNAMIC_TAPPING_TERM_DOWN, _______, _______, _______, _______, + __________________FUN_L2____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - KC_F10, KC_F1, KC_F2, KC_F3, _______, _______, _______, _______, _______, _______, + __________________FUN_L3____________________, __________________EMPTY_____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - KC_RPRN, KC_UNDS, _______, _______, _______, _______ + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_MUS] = LAYOUT( + [_MUS] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _________________BOOT_L1____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + __________________EMPTY_____________________, __________________MUS_R2____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, + __________________EMPTY_____________________, __________________MUS_R3____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - _______, _______, _______, KC_MSTP, KC_MPLY, KC_MUTE + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_MOUSE] = LAYOUT( + [_MOUSE] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - _______, _______, _______, _______, _______, _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO, + __________________EMPTY_____________________, __________________MOU_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, + __________________EMPTY_____________________, __________________MOU_R2____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, + __________________EMPTY_____________________, __________________MOU_R3____________________, // └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘ _______, _______, // ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐ - _______, _______, _______, _______, _______, _______ + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) }; @@ -293,9 +244,7 @@ static void render_status(void) { oled_write_char(data, false); #endif - oled_write_P(PSTR("\n"), false); - oled_write_P(PSTR("TAP:"), false); - oled_write(get_u16_str(g_tapping_term, ' '), false); + oled_write_P(PSTR("\n"), false); led_t led_state = host_keyboard_led_state(); oled_write_P(PSTR("\nCaps: "), false); diff --git a/draculad/rules.mk b/draculad/rules.mk index 8ef3135..648b28c 100644 --- a/draculad/rules.mk +++ b/draculad/rules.mk @@ -1,19 +1,10 @@ -# only uncomment on the side you have your trackball on -#POINTING_DEVICE_ENABLE = yes -#POINTING_DEVICE_DRIVER = pimoroni_trackball OLED_ENABLE = yes OS_DETECTION_ENABLE = yes -DYNAMIC_TAPPING_TERM_ENABLE = yes MOUSEKEY_ENABLE = yes ENCODER_ENABLE = yes ENCODER_MAP_ENABLE = yes -AUTO_SHIFT_ENABLE = yes -CAPS_WORD_ENABLE = yes -COMBO_ENABLE = yes -TAP_DANCE_ENABLE = yes - LTO_ENABLE = yes BOOTLOADER = rp2040 CONVERT_TO = elite_pi diff --git a/iris/keymap.c b/iris/keymap.c index c61f764..ae4a46f 100644 --- a/iris/keymap.c +++ b/iris/keymap.c @@ -1,32 +1,12 @@ #include QMK_KEYBOARD_H -enum layer_number { - _BASE, - _NAV, - _NUM, - _SYM, - _FUN, - _MUS, - _MOUSE -}; +#ifdef OS_DETECTION_ENABLE + #include "os_detection.h" +#endif -enum custom_keycodes { - M_PASS1 = SAFE_RANGE, - M_PASS2 -}; +#include "dgvigil.h" -// Tap Dance declarations -enum { - TD_Q_ESC, - TD_W_GRV, -}; - -// Tap Dance definitions -tap_dance_action_t tap_dance_actions[] = { - // Tap once for Q, twice for Escape - [TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC), - [TD_W_GRV] = ACTION_TAP_DANCE_DOUBLE(KC_W, KC_GRAVE), -}; +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) enum combos { FA_GUI, @@ -53,48 +33,38 @@ combo_t key_combos[] = { [JK_CTL] = COMBO(jk_combo, KC_RCTL), }; -// LEFT THUMB KEYS -#define MUS_ESC LT(_MUS, KC_ESC) -#define NAV_BKSP LT(_NAV, KC_BSPC) -#define MOUSE_TAB LT(_MOUSE, KC_TAB) -// RIGHT THUMB KEYS -#define SYM_ENTER LT(_SYM, KC_ENTER) -#define NUM_SPC LT(_NUM, KC_SPC) -#define FUN_DEL LT(_FUN, KC_DEL) -// TAP DANCE -#define Q_ESC TD(TD_Q_ESC) -#define W_GRV TD(TD_W_GRV) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( + [_BASE] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MUTE, + 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_LPAD, __________________BASE_L1____________________ __________________BASE_R1____________________, KC_GRV, + KC_TAB, __________________BASE_L1____________________, __________________BASE_R1____________________, KC_GRV, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________BASE_L2____________________ __________________BASE_R2____________________, _______, + KC_LCTL, __________________BASE_L2____________________, __________________BASE_R2____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - KC_LSFT, __________________BASE_L3____________________,QK_CAPS_WORD_TOGGLE, _______, __________________BASE_R3____________________, KC_RSFT, + KC_LSFT, __________________BASE_L3____________________,AS_TOGG, _______, __________________BASE_R3____________________, KC_RSFT, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - MUS_ESC, NAV_BKSP,MOUSE_TAB, SYM_ENTER,NUM_SPC,FUN_DEL + ___________THUMB_L3________, ___________THUMB_R3________ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_NAV] = LAYOUT( + [_NAV] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, RGB_TOG, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________NAV_L1____________________, __________________NAV_R1____________________, _______, + _______, _________________BOOT_L1____________________, __________________NAV_R1____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, __________________EMPTY_____________________, __________________NAV_R2____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________NAV_L3____________________, QK_LEAD, _______, __________________NAV_R2____________________, _______, + _______, __________________EMPTY_____________________, _______, _______, __________________NAV_R2____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ + ___________THUMB_L3________, ___________THUMB_R3________ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_NUM] = LAYOUT( + [_NUM] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ @@ -102,13 +72,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, __________________NUM_L2____________________, __________________EMPTY_____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________NUM_L3____________________, KC_LPRN, _______, __________________EMPTY_____________________, _______, + _______, __________________NUM_L3____________________, KC_LPRN, _______, __________________EMPTY_____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _________NUM_TH_L3________, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_SYM] = LAYOUT( + [_SYM] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ @@ -116,13 +86,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, __________________SYM_L2____________________, __________________EMPTY_____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________SYM_L3____________________, _______, _______, __________________EMPTY_____________________, _______, + _______, __________________SYM_L3____________________, _______, _______, __________________EMPTY_____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _________SYM_TH_L3________, _______, _______, _______ + _________SYM_TH_L3________, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_FUN] = LAYOUT( + [_FUN] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ @@ -130,37 +100,37 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, __________________FUN_L1____________________, __________________EMPTY_____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, __________________FUN_L1____________________, _______, _______, __________________EMPTY_____________________, _______, + _______, __________________FUN_L1____________________, _______, _______, __________________EMPTY_____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _______, _______, _______, _______, _______, _______ + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_MUS] = LAYOUT( + [_MUS] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _________________BOOT_L1____________________, _______, _______, _______, _______, _______, _______, + _______, _________________BOOT_L1____________________, __________________EMPTY_____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, __________________EMPTY_____________________, __________________MUS_R2____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, _______, + _______, __________________EMPTY_____________________, _______, _______, __________________MUS_R3____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _______, _______, _______, KC_MSTP, KC_MPLY, KC_MUTE + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), - [_MOUSE] = LAYOUT( + [_MOUSE] = LAYOUT_wrapper( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ _______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO, _______, + _______, __________________EMPTY_____________________, __________________MOU_R1____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, _______, + _______, __________________EMPTY_____________________, __________________MOU_R2____________________, _______, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, _______, + _______, __________________EMPTY_____________________, _______, _______, __________________MOU_R3____________________, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _______, _______, _______, _______, _______, _______ + ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) }; diff --git a/iris/rules.mk b/iris/rules.mk index a85d301..afe0710 100644 --- a/iris/rules.mk +++ b/iris/rules.mk @@ -1,7 +1,3 @@ -AUTO_SHIFT_ENABLE = yes -CAPS_WORD_ENABLE = yes -COMBO_ENABLE = yes -TAP_DANCE_ENABLE = yes ENCODER_ENABLE = yes ENCODER_MAP_ENABLE = yes diff --git a/q8/rules.mk b/q8/rules.mk index c3d5b9b..e5ae438 100644 --- a/q8/rules.mk +++ b/q8/rules.mk @@ -1,8 +1,4 @@ ENCODER_MAP_ENABLE = yes -AUTO_SHIFT_ENABLE = yes -CAPS_WORD_ENABLE = yes -COMBO_ENABLE = yes -TAP_DANCE_ENABLE = yes VPATH += keyboards/keychron/common SRC += keychron_common.c diff --git a/qmk_firmware b/qmk_firmware index b630df1..1db2481 160000 --- a/qmk_firmware +++ b/qmk_firmware @@ -1 +1 @@ -Subproject commit b630df1aa739c285f290333ff2cf7de024b4693e +Subproject commit 1db2481a72872f60976587add0c5faf2d0d479ab diff --git a/scottogame/README.md b/scottogame/README.md new file mode 100644 index 0000000..5328ef9 --- /dev/null +++ b/scottogame/README.md @@ -0,0 +1,4 @@ += SCOTTOGAME + +This can be found in `keyboards/handwired/scottokeebs/scottogame/keymaps/levi` +Since this soley for Levi's keeb so the keymap is under his name. He's probably just using VIA or VIAL anyway. diff --git a/sweep/keymap.c b/sweep/keymap.c index eaa4eb9..0e08c91 100644 --- a/sweep/keymap.c +++ b/sweep/keymap.c @@ -1,30 +1,8 @@ #include QMK_KEYBOARD_H -enum layer_number { - _BASE, - _NAV, - _NUM, - _SYM, - _FUN -}; +#include "dgvigil.h" -enum custom_keycodes { - M_PASS1 = SAFE_RANGE, - M_PASS2 -}; - -// Tap Dance declarations -enum { - TD_Q_ESC, - TD_W_GRV, -}; - -// Tap Dance definitions -tap_dance_action_t tap_dance_actions[] = { - // Tap once for Q, twice for Escape - [TD_Q_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC), - [TD_W_GRV] = ACTION_TAP_DANCE_DOUBLE(KC_W, KC_GRAVE), -}; +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) enum combos { FA_GUI, @@ -51,18 +29,9 @@ combo_t key_combos[] = { [JK_CTL] = COMBO(jk_combo, KC_RCTL), }; -// LEFT THUMB KEYS -#define NAV_BKSP LT(_NAV, KC_BSPC) -#define FUN_TAB LT(_FUN, KC_TAB) -// RIGHT THUMB KEYS -#define SYM_ENTER LT(_SYM, KC_ENTER) -#define NUM_SPC LT(_NUM, KC_SPC) -// TAP DANCE -#define Q_ESC TD(TD_Q_ESC) -#define W_GRV TD(TD_W_GRV) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( + [_BASE] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ __________________BASE_L1____________________, __________________BASE_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ @@ -74,9 +43,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴───────┘ └────────┴────────┘ ), - [_NAV] = LAYOUT( + [_NAV] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - __________________NAV_L1____________________, __________________NAV_R1____________________, + _________________BOOT_L1____________________, __________________NAV_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ __________________EMPTY_____________________, __________________NAV_R2____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ @@ -86,11 +55,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴───────┘ └────────┴────────┘ ), - [_NUM] = LAYOUT( + [_NUM] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - __________________NUM_L1____________________, __________________NUM_R1____________________, + __________________NUM_L1____________________, _________________BOOT_R1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - __________________NUM_L2____________________ __________________EMPTY_____________________, + __________________NUM_L2____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ __________________NUM_L3____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────┬───┴────┬───┴───┐ ┌────┴───┬────────┼────────┼────────┼─────────┘ @@ -98,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴───────┘ └────────┴────────┘ ), - [_SYM] = LAYOUT( + [_SYM] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ __________________SYM_L1____________________, __________________EMPTY_____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ @@ -110,13 +79,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴───────┘ └────────┴────────┘ ), - [_FUN] = LAYOUT( + [_FUN] = LAYOUT_wrapper( // ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐ - __________________EMPTY_____________________, KC_F12, KC_F7, KC_F8, KC_F9, KC_PSCR, + __________________EMPTY_____________________, __________________FUN_L1____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - __________________EMPTY_____________________, KC_F11, KC_F4, KC_F5, KC_F6, _______, + __________________EMPTY_____________________, __________________FUN_L2____________________, // ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤ - __________________EMPTY_____________________, KC_F10, KC_F1, KC_F2, KC_F3, _______, + __________________EMPTY_____________________, __________________FUN_L3____________________, // ├────────┼────────┼────────┼────┬───┴────┬───┴───┐ ┌────┴───┬────────┼────────┼────────┼─────────┘ ____THUMB2BLANK_, ____THUMB2BLANK_ // └────────┴───────┘ └────────┴────────┘ @@ -124,19 +93,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case M_PASS1: - if (record->event.pressed) { - SEND_STRING("T3lg3Ranch!2023"); - } - return false; - case M_PASS2: - if (record->event.pressed) { - SEND_STRING("P0plarLake!2023"); - } - return false; - } - return true; -} diff --git a/sweep/rules.mk b/sweep/rules.mk index f1a8d03..e27b3ee 100644 --- a/sweep/rules.mk +++ b/sweep/rules.mk @@ -1,7 +1,5 @@ -AUTO_SHIFT_ENABLE = yes -CAPS_WORD_ENABLE = yes -COMBO_ENABLE = yes -TAP_DANCE_ENABLE = yes + +RGBLIGHT_ENABLE = no LTO_ENABLE = yes BOOTLOADER = rp2040 diff --git a/swoop/rules.mk b/swoop/rules.mk index 458c617..e69de29 100644 --- a/swoop/rules.mk +++ b/swoop/rules.mk @@ -1,9 +0,0 @@ -AUTO_SHIFT_ENABLE = yes -CAPS_WORD_ENABLE = yes -COMBO_ENABLE = yes -TAP_DANCE_ENABLE = yes - -RGBLIGHT_ENABLE = yes # rgb leds underlight - -# To shrink the size of hex file -LTO_ENABLE = yes