diff --git a/keyboards/eyeohdesigns/babyv/keymaps/bghull/combos.def b/keyboards/eyeohdesigns/babyv/keymaps/bghull/combos.def new file mode 100644 index 000000000000..a525113a0936 --- /dev/null +++ b/keyboards/eyeohdesigns/babyv/keymaps/bghull/combos.def @@ -0,0 +1,14 @@ +// name result chord keys +COMB(QW_ESC, KC_ESC, KC_Q, KC_W) +COMB(CV_DEL, KC_DEL, KC_C, KC_V) +COMB(XC_BSPC, KC_BSPC, KC_X, KC_C) +COMB(WE_LBRC, KC_LBRC, KC_W, KC_E) +COMB(ER_RBRC, KC_RBRC, KC_E, KC_R) +COMB(SD_LPRN, KC_LPRN, KC_S, KC_D) +COMB(DF_RPRN, KC_RPRN, KC_D, KC_F) +COMB(FG_BSLS, KC_BSLS, KC_F, KC_G) +COMB(HJ_SLSH, KC_SLSH, KC_H, KC_J) +COMB(DQ_LGUI, KC_LGUI, KC_DOT, KC_QUOT) +COMB(CD_LALT, KC_LALT, KC_COMM, KC_DOT) +COMB(MC_LSFT, KC_LSFT, KC_M, KC_COMM) +COMB(NM_LCTL, KC_LCTL, KC_N, KC_M) \ No newline at end of file diff --git a/keyboards/eyeohdesigns/babyv/keymaps/bghull/config.h b/keyboards/eyeohdesigns/babyv/keymaps/bghull/config.h new file mode 100644 index 000000000000..96a6aefb0e53 --- /dev/null +++ b/keyboards/eyeohdesigns/babyv/keymaps/bghull/config.h @@ -0,0 +1,7 @@ +// Copyright 2021 Your Name (@bghull) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once +#define AUTO_SHIFT_TIMEOUT 135 +#define ONESHOT_TIMEOUT 1000 +#define COMBO_TERM 20 diff --git a/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c b/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c new file mode 100644 index 000000000000..21a0200925ba --- /dev/null +++ b/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c @@ -0,0 +1,122 @@ +/* Copyright 2020 Eye Oh! Designs + * + * 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 + */ + +#include QMK_KEYBOARD_H +#include "keymap_steno.h" +#include "g/keymap_combo.h" + + +#define COMBO_ONLY_FROM_LAYER QWERTY + +enum layer_names { + QWERTY, + COLMAK, + NAVNUM, + FUNC, + STENO +}; + +#define BspNAV LT(NAVNUM, KC_BSPC) +#define SpcFUN LT(FUNC, KC_SPC) +#define OneSFT OSM(MOD_LSFT) +#define OneALT OSM(MOD_LALT) +#define OneCTL OSM(MOD_LCTL) +#define OneWIN OSM(MOD_LGUI) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* QWERTY + * ,-----------------------------------------------------------------------------------. + * | Q | W | E | R | T | | Y | U | I | O | P | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | A | S | D | F | G | | H | J | K | L | ; : | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Z | X | C | V | B | | N | M | , < | . > | ' " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Ctrl |NAVNUM| |Space |BspNAV| | + * `-----------------------------------------------------------------------------------' + */ +[QWERTY] = LAYOUT_2u( + 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, KC_F, KC_G, _______, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOT, + _______, KC_LCTL, MO(NAVNUM), KC_SPC, BspNAV, _______ +), + +[COLMAK] = LAYOUT_2u( + KC_Q, KC_W, KC_F, KC_P, KC_B, _______, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_G, _______, _______, KC_M, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_D, KC_V, _______, _______, KC_K, KC_H, KC_COMM, KC_DOT, KC_QUOT, + _______, KC_LCTL, MO(NAVNUM), KC_SPC, BspNAV, _______ + +), +/* NAVNUM + * ,-----------------------------------------------------------------------------------. + * |Enter | Home | Up | End | | RST | - | 7 | 8 | 9 | 0 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |OneSFT| Left | Down |Right | ` ~ | CLMK | + | 4 | 5 | 6 |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |OneCTL|OneALT| Tab | _ |OneWIN| QWER | = | 1 | 2 | 3 | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | |SpcFUN| Ctrl | | + * `-----------------------------------------------------------------------------------' + */ +[NAVNUM] = LAYOUT_2u( + KC_ENT, KC_HOME, KC_UP, KC_END, _______, _______, RESET, KC_PMNS, KC_7, KC_8, KC_9, KC_0, + OneSFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_GRV, _______, DF(COLMAK), KC_PPLS, KC_4, KC_5, KC_6, KC_ENT, + OneCTL, OneALT, KC_TAB, KC_UNDS, OneWIN, _______, DF(QWERTY), KC_EQL, KC_1, KC_2, KC_3, _______, + _______, _______, _______, SpcFUN, KC_LCTL, _______ +), +/* FUNC: Mousekeys + F keys + * ,-----------------------------------------------------------------------------------. + * | |Rclick| MsUp |Lclick| WhUp | | | F7 | F8 | F9 | F10 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | MsLt | MsDn | MsRt | WhDn | |OneALT| F4 | F5 | F6 | F11 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | |Mclick| | | | | F1 | F2 | F3 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[FUNC] = LAYOUT_2u( + _______, KC_BTN2, KC_MS_U, KC_BTN1, KC_WH_U, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, + _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, OneALT , KC_F4, KC_F5, KC_F6, KC_F11, + _______, _______, KC_BTN3, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12, + _______, _______, _______, _______, _______, DF(STENO) +), + +/* STENO + * ,----------------------------------------------------------------------------------------. + * | | # | # | # | # | # / \ # | # | # | # | # | | + * |------+------+------+------+------+-------- -------+------+------+------+------+------| + * | | S | T | P ! H ! * / \ * ! F ! P | L | T | D | + * |------+------+------+------+------+------- ------+------+------+------+------+------| + * | | S | K | W | R | * / \ * | R | B | G | S | Z | + * |------+------+------+------+------+------ -----+------+------+------+------+------| + * | | | A | O | | E | U | |QWERTY| + * `----------------------------------------------------------------------------------------' +*/ +[STENO] = LAYOUT_2u( + STN_N1, STN_N2, STN_N3, STN_N4, STN_N5, STN_N6, STN_N7, STN_N8, STN_N9, STN_NA, STN_NB, STN_NC , + STN_FN, STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + XXXXXXX, STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + XXXXXXX, STN_A, STN_O, STN_E, STN_U, DF(QWERTY) + ), +}; + + +void matrix_init_user() { + steno_set_mode(STENO_MODE_GEMINI); +}; + diff --git a/keyboards/eyeohdesigns/babyv/keymaps/bghull/rules.mk b/keyboards/eyeohdesigns/babyv/keymaps/bghull/rules.mk new file mode 100644 index 000000000000..db78b5957b41 --- /dev/null +++ b/keyboards/eyeohdesigns/babyv/keymaps/bghull/rules.mk @@ -0,0 +1,8 @@ +NKRO_ENABLE = yes +AUTO_SHIFT_ENABLE = yes +MOUSEKEY_ENABLE = yes +STENO_ENABLE = yes +COMBO_ENABLE = yes +BACKLIGHT_ENABLE = no +RGBLIGHT_ENABLE = no +VPATH += keyboards/gboards \ No newline at end of file diff --git a/keyboards/planck/keymaps/bghull/combos.def b/keyboards/planck/keymaps/bghull/combos.def new file mode 100644 index 000000000000..a525113a0936 --- /dev/null +++ b/keyboards/planck/keymaps/bghull/combos.def @@ -0,0 +1,14 @@ +// name result chord keys +COMB(QW_ESC, KC_ESC, KC_Q, KC_W) +COMB(CV_DEL, KC_DEL, KC_C, KC_V) +COMB(XC_BSPC, KC_BSPC, KC_X, KC_C) +COMB(WE_LBRC, KC_LBRC, KC_W, KC_E) +COMB(ER_RBRC, KC_RBRC, KC_E, KC_R) +COMB(SD_LPRN, KC_LPRN, KC_S, KC_D) +COMB(DF_RPRN, KC_RPRN, KC_D, KC_F) +COMB(FG_BSLS, KC_BSLS, KC_F, KC_G) +COMB(HJ_SLSH, KC_SLSH, KC_H, KC_J) +COMB(DQ_LGUI, KC_LGUI, KC_DOT, KC_QUOT) +COMB(CD_LALT, KC_LALT, KC_COMM, KC_DOT) +COMB(MC_LSFT, KC_LSFT, KC_M, KC_COMM) +COMB(NM_LCTL, KC_LCTL, KC_N, KC_M) \ No newline at end of file diff --git a/keyboards/planck/keymaps/bghull/config.h b/keyboards/planck/keymaps/bghull/config.h new file mode 100644 index 000000000000..96a6aefb0e53 --- /dev/null +++ b/keyboards/planck/keymaps/bghull/config.h @@ -0,0 +1,7 @@ +// Copyright 2021 Your Name (@bghull) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once +#define AUTO_SHIFT_TIMEOUT 135 +#define ONESHOT_TIMEOUT 1000 +#define COMBO_TERM 20 diff --git a/keyboards/planck/keymaps/bghull/keymap.c b/keyboards/planck/keymaps/bghull/keymap.c index 8abdc884dde3..cae278e3e2f8 100644 --- a/keyboards/planck/keymaps/bghull/keymap.c +++ b/keyboards/planck/keymaps/bghull/keymap.c @@ -16,86 +16,86 @@ #include QMK_KEYBOARD_H #include "keymap_steno.h" +#include "g/keymap_combo.h" +#include "muse.h" + +#define COMBO_ONLY_FROM_LAYER QWERTY enum planck_layers { - _QWERTY, - _STENO, - _NUMPAD, - _FUNC + QWERTY, + COLMAK, + NAVNUM, + FUNC + }; -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +#define BspNAV LT(NAVNUM, KC_BSPC) +#define SpcFUN LT(FUNC, KC_SPC) +#define OneSFT OSM(MOD_LSFT) +#define OneALT OSM(MOD_LALT) +#define OneCTL OSM(MOD_LCTL) +#define OneWIN OSM(MOD_LGUI) -/* Qwerty +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* QWERTY * ,-----------------------------------------------------------------------------------. - * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * | Q | W | E | R | T | | Y | U | I | O | P | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | A | S | D | F | G | | H | J | K | L | ; : | * |------+------+------+------+------+-------------+------+------+------+------+------| - * |NUMPAD| A | S | D | F | G | H | J | K | L | ; : | Enter| - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , < | . > | up | / ? | + * | Z | X | C | V | B | | N | M | , < | . > | ' " | * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Es/Ctl|MACROS|STENO | Alt | Bspc | Space | Ctrl | ' " | lt | dn | rt | + * | | Ctrl |NAVNUM| |Space |BspNAV| | * `-----------------------------------------------------------------------------------' */ -[_QWERTY] = LAYOUT_planck_grid( - LGUI_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, - MO(_NUMPAD), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH, - LCTL_T(KC_ESC),MO(_FUNC),DF(_STENO), KC_LALT, KC_BSPC, KC_SPC ,_______ , KC_LCTL, KC_QUOT, KC_LEFT, KC_DOWN, KC_RGHT +[QWERTY] = LAYOUT_planck_grid( + 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, KC_F, KC_G, _______, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOT, + _______, _______, _______, KC_LCTL, MO(NAVNUM),_______, _______, KC_SPC, BspNAV, _______, _______, _______ ), -/* Plover layer (http://opensteno.org) - * ,-----------------------------------------------------------------------------------. - * | # | # | # | # | # | # | # | # | # | # | # | # | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | FN | S | T | P | H | * | * | F | P | L | T | D | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | S | K | W | R | * | * | R | B | G | S | Z | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | |QWERTY| A | O | | E | U | PWR | RES1 | RES2 | - * `-----------------------------------------------------------------------------------' - */ -[_STENO] = LAYOUT_planck_grid( - STN_N1, STN_N2, STN_N3, STN_N4, STN_N5, STN_N6, STN_N7, STN_N8, STN_N9, STN_NA, STN_NB, STN_NC , - STN_FN, STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - XXXXXXX, STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - XXXXXXX, XXXXXXX, DF(_QWERTY),STN_A,STN_O, XXXXXXX, XXXXXXX, STN_E, STN_U, STN_PWR, STN_RE1, STN_RE2 -), +[COLMAK] = LAYOUT_planck_grid( + KC_Q, KC_W, KC_F, KC_P, KC_B, _______, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_G, _______, _______, KC_M, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_D, KC_V, _______, _______, KC_K, KC_H, KC_COMM, KC_DOT, KC_QUOT, + _______, _______, _______, KC_LCTL, MO(NAVNUM),_______, _______, KC_SPC, BspNAV, _______, _______, _______ -/* +), +/* NAVNUM * ,-----------------------------------------------------------------------------------. - * | |RClick| MsU |LClick|WheelU| ( | ) | 7 | 8 | 9 | 0 | | + * |Enter | Home | Up | End | | RST | - | 7 | 8 | 9 | 0 | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | MsL | MsD | MsR |WheelD| [{ | ]} | 4 | 5 | 6 | + | -_ | + * |OneSFT| Left | Down |Right | ` ~ | CLMK | + | 4 | 5 | 6 |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | Mute | VolD | VolU | `~ | _ | = | 1 | 2 | 3 | PgUp | \ | | + * |OneCTL|OneALT| Tab | _ |OneWIN| QWER | = | 1 | 2 | 3 | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | |QK_BOOT | | | | | . | Home | PgDn | End | + * | | | | |SpcFUN| Ctrl | | * `-----------------------------------------------------------------------------------' */ -[_NUMPAD] = LAYOUT_planck_grid( - _______, KC_BTN2, KC_MS_U, KC_BTN1, KC_WH_U, KC_LPRN, KC_RPRN, KC_7, KC_8, KC_9, KC_0, _______, - _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_PPLS, KC_MINS, - _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_GRAVE, KC_UNDS, KC_EQL, KC_1, KC_2, KC_3, KC_PGUP, KC_BSLS, - _______, XXXXXXX, QK_BOOT, _______, _______, _______, _______, _______, KC_PDOT, KC_HOME, KC_PGDN, KC_END +[NAVNUM] = LAYOUT_planck_grid( + KC_ENT, KC_HOME, KC_UP, KC_END, _______, _______, RESET, KC_PMNS, KC_7, KC_8, KC_9, KC_0, + OneSFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_GRV, _______, DF(COLMAK), KC_PPLS, KC_4, KC_5, KC_6, KC_ENT, + OneCTL, OneALT, KC_TAB, KC_UNDS, OneWIN, _______, DF(QWERTY), KC_EQL, KC_1, KC_2, KC_3, _______, + _______, _______, _______, _______, _______, _______, _______, SpcFUN, KC_LCTL, _______, _______, _______ ), - -/* Dynamic macros + Winkey combos +/* FUNC: Mousekeys + F keys * ,-----------------------------------------------------------------------------------. - * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * | |Rclick| MsUp |Lclick| WhUp | | | F7 | F8 | F9 | F10 | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | W2 | | | | | | | | | | | QK_BOOT| + * | | MsLt | MsDn | MsRt | WhDn | |OneALT| F4 | F5 | F6 | F11 | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | W3 | | | | | | | | | | | | + * | | |Mclick| | | | | F1 | F2 | F3 | F12 | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | W4 | | | | | | | | | | | + * | | | | | | | | * `-----------------------------------------------------------------------------------' */ -[_FUNC] = LAYOUT_planck_grid( - KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12, - LGUI(KC_2), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, - LGUI(KC_3), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - LGUI(KC_4), _______, DM_REC1, DM_PLY1, DM_RSTP, _______, _______, _______, _______, _______, _______, _______ +[FUNC] = LAYOUT_planck_grid( + _______, KC_BTN2, KC_MS_U, KC_BTN1, KC_WH_U, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, + _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, OneALT , KC_F4, KC_F5, KC_F6, KC_F11, + _______, _______, KC_BTN3, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; + diff --git a/keyboards/planck/keymaps/bghull/rules.mk b/keyboards/planck/keymaps/bghull/rules.mk index 9711c485d7af..664ed740781c 100644 --- a/keyboards/planck/keymaps/bghull/rules.mk +++ b/keyboards/planck/keymaps/bghull/rules.mk @@ -1,5 +1,6 @@ SRC += muse.c AUTO_SHIFT_ENABLE = yes MOUSEKEY_ENABLE = yes -STENO_ENABLE = yes -AUDIO_ENABLE = no \ No newline at end of file +AUDIO_ENABLE = no +COMBO_ENABLE = yes +VPATH += keyboards/gboards \ No newline at end of file