#include "keymap.h"
extern keymap_config_t keymap_config;
#define _baseLayer LAYOUT( \
KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \
CTL_T(KC_A), SFT_T(KC_O), ALT_T(KC_E), KC_U, KC_I, KC_D, KC_H, ALT_T(KC_T), SFT_T(KC_N), CTL_T(KC_S), \
KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, \
TD(DA_UPLY), MO(_VL), KC_TAB, KC_BSPACE, KC_ESC, KC_INS, KC_HOME, KC_PGUP, MO(_VL), TD(DA_UPLY), \
TD(DA_DWLY), TD(DA_LCTL), KC_SPC, TD(DA_LSPR), LSFT_T(KC_CAPS),SFT_T(KC_CAPS), TD(DA_RALT), KC_ENT, TD(DA_RCTL), TD(DA_DWLY))
#define _GMLayer LAYOUT( \
KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \
KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, ALT_T(KC_T), SFT_T(KC_N), CTL_T(KC_S), \
KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, \
TD(DA_UPLY), MO(_VL), KC_TAB, KC_BSPACE, KC_ESC, KC_INS, KC_HOME, KC_PGUP, MO(_VL), TD(DA_UPLY), \
TD(DA_DWLY), TD(DA_LCTL), KC_SPC, TD(DA_LSPR), LSFT_T(KC_CAPS),SFT_T(KC_CAPS), TD(DA_RALT), KC_ENT, TD(DA_RCTL), TD(DA_DWLY))
#define _upLayer LAYOUT( \
KC_4, KC_5, KC_6, KC_YREG, _______, _______, KC_RBRC, _______, _______, _______, \
LCTL_T(KC_1), LSFT_T(KC_2), LALT_T(KC_3), _______, _______, KC_LBRC, KC_BSLS, _______, _______, _______, \
KC_7, KC_8, KC_9, KC_0, KC_GRV, KC_SLSH, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
#define _downLayer LAYOUT( \
KC_F4, KC_F5, KC_F6, KC_F12, _______, _______, KC_RPRN, _______, _______, _______, \
LCTL_T(KC_F1), LSFT_T(KC_F2), LALT_T(KC_F3), KC_F11, _______, KC_LPRN, KC_EQUAL, KC_LEFT, KC_UP, KC_RIGHT, \
KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_MINUS, _______, _______, KC_DOWN, _______, \
_______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUSE, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
#define _astdLayer LAYOUT( \
KC_MPRV, KC_MUTE, _______, _______, _______,KC_PSCR, KC_SLCK, KC_PAUSE, _______, KC_RGUP, \
KC_MPLY, KC_VOLD, _______, _______, _______,_______, _______, _______, _______, KC_RGDWN, \
KC_MNXT, KC_VOLU, RESET, _______, _______,_______, _______, RESET, _______, _______, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, _______)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BL] = _baseLayer,
[_UL] = _upLayer,
[_DL] = _downLayer,
[_VL] = _upLayer,
[_AL] = _astdLayer,
[_GM] = _GMLayer};
bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
switch (keycode) {
case YREG:
SEND_STRING("\"0p");
return false;
}
}
return true;
}