~ruther/qmk_firmware

48eddeeea401a4ebaff8590137da01b594ba6909 — Gustavs GÅ«tmanis 3 years ago a4eb73e
[Keymap] Adding keymap for BDN9 and Planck (#15067)

A keyboards/keebio/bdn9/keymaps/copface/config.h => keyboards/keebio/bdn9/keymaps/copface/config.h +8 -0
@@ 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

A keyboards/keebio/bdn9/keymaps/copface/keymap.c => keyboards/keebio/bdn9/keymaps/copface/keymap.c +93 -0
@@ 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
    ),
};

M keyboards/planck/keymaps/copface/keymap.c => keyboards/planck/keymaps/copface/keymap.c +13 -1
@@ 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);
        }
    }
}