diff --git a/keyboards/keebio/bdn9/keymaps/copface/config.h b/keyboards/keebio/bdn9/keymaps/copface/config.h new file mode 100644 index 00000000000..38881a21086 --- /dev/null +++ b/keyboards/keebio/bdn9/keymaps/copface/config.h @@ -0,0 +1,8 @@ +// Copyright 2021 Gustavs Gutmanis (@gustavs-gutmanis) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef RGB_MATRIX_ENABLE +# define RGB_MATRIX_KEYPRESSES +#endif diff --git a/keyboards/keebio/bdn9/keymaps/copface/keymap.c b/keyboards/keebio/bdn9/keymaps/copface/keymap.c new file mode 100644 index 00000000000..c086faa1aa5 --- /dev/null +++ b/keyboards/keebio/bdn9/keymaps/copface/keymap.c @@ -0,0 +1,93 @@ +// Copyright 2021 Gustavs Gutmanis (@gustavs-gutmanis) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layer_names { + _SMITE = 0, +}; + +enum custom_keycodes { + S_7 = SAFE_RANGE, // [VEL] - laugh + S_8, // [VVN] - No + S_9, // [VVA] - OK + + S_4, // [VVB] - be right back + S_5, // [VVVE] - on my way + S_6, // [VVM] - out of mana + + S_1, // [VRR] - retreat + S_2, // [VDD] - defend + S_3, // [VAA] - attack +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case S_7: + if (record->event.pressed) { + // VEL + SEND_STRING("v" SS_DELAY(20) "e" SS_DELAY(20) "l"); + } + break; + case S_8: + if (record->event.pressed) { + // VVN + SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "n"); + } + break; + case S_9: + if (record->event.pressed) { + // VVA + SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "a"); + } + break; + + case S_4: + if (record->event.pressed) { + // VVB + SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "b"); + } + break; + case S_5: + if (record->event.pressed) { + // VVVE + SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "v" SS_DELAY(20) "e"); + } + break; + case S_6: + if (record->event.pressed) { + // VVM + SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "m"); + } + break; + + case S_1: + if (record->event.pressed) { + // VRR + SEND_STRING("v" SS_DELAY(20) "r" SS_DELAY(20) "r"); + } + break; + case S_2: + if (record->event.pressed) { + // VDD + SEND_STRING("v" SS_DELAY(20) "d" SS_DELAY(20) "d"); + } + break; + case S_3: + if (record->event.pressed) { + // VAA + SEND_STRING("v" SS_DELAY(20) "a" SS_DELAY(20) "a"); + } + break; + } + + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_SMITE] = LAYOUT( + S_7, S_8, S_9, + S_4, S_5, S_6, + S_1, S_2, S_3 + ), +}; diff --git a/keyboards/planck/keymaps/copface/keymap.c b/keyboards/planck/keymaps/copface/keymap.c index 0754a0c742d..b448d9c7dd2 100644 --- a/keyboards/planck/keymaps/copface/keymap.c +++ b/keyboards/planck/keymaps/copface/keymap.c @@ -85,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_META] = LAYOUT_planck_grid( XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SRC, XXXXXXX, - XXXXXXX, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_CAPS, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F10, KC_F11, KC_F12, HK_AF9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ), @@ -167,6 +167,10 @@ void matrix_scan_user(void) { SEQ_ONE_KEY(KC_S) { tap_code16(G(C(S(KC_4)))); } + // Record Screen + SEQ_TWO_KEYS(KC_S, KC_S) { + tap_code16(S(G(KC_5))); + } // 1Pass browser SEQ_ONE_KEY(KC_A) { tap_code16(G(A(KC_BSLS))); @@ -187,5 +191,13 @@ void matrix_scan_user(void) { SEQ_ONE_KEY(KC_ENT) { tap_code16(S(G(A(KC_F)))); } + // Focus file tree + SEQ_ONE_KEY(KC_TAB) { + tap_code16(G(KC_1)); + } + // Caps-lock + SEQ_TWO_KEYS(KC_TAB, KC_TAB) { + tap_code16(KC_CAPS); + } } }