[Keymap] Add crkbd/vxid keymap (#6281)
This commit is contained in:
85
keyboards/crkbd/keymaps/vxid/keymap.c
Normal file
85
keyboards/crkbd/keymaps/vxid/keymap.c
Normal file
@@ -0,0 +1,85 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "bootloader.h"
|
||||
#ifdef PROTOCOL_LUFA
|
||||
#include "lufa.h"
|
||||
#include "split_util.h"
|
||||
#endif
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
extern uint8_t is_master;
|
||||
|
||||
#define _QWERTY 0
|
||||
#define _LOWER 1
|
||||
#define _RAISE 2
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
LOWER,
|
||||
RAISE
|
||||
};
|
||||
|
||||
#define KC______ KC_TRNS
|
||||
#define KC_XXXXX KC_NO
|
||||
#define KC_LOWER LOWER
|
||||
#define KC_RAISE RAISE
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_QWERTY] = LAYOUT_kc( \
|
||||
//,-----------------------------------------. ,-----------------------------------------.
|
||||
Q, W, E, R, T, ESC, DEL, Y, U, I, O, P,\
|
||||
//|------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
A, S, D, F, G, SPC, BSPC, H, J, K, L, SCLN,\
|
||||
//|------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
Z, X, C, V, B, TAB, ENT, N, M, COMM, DOT, SLSH,\
|
||||
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
|
||||
//`--------------------' `--------------------'
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_kc( \
|
||||
//,-----------------------------------------. ,------------------------------------------.
|
||||
1, 2, 3, 4, 5, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
|
||||
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
|
||||
6, 7, 8, 9, 0, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
|
||||
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
|
||||
EQL, PLUS, MINS, SLSH, ASTR, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
|
||||
//|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
|
||||
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
|
||||
//`--------------------' `--------------------'
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_kc( \
|
||||
//,-----------------------------------------. ,------------------------------------------.
|
||||
EXLM, AT, HASH, DLR, PERC, LPRN, RPRN, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
|
||||
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
|
||||
CIRC, AMPR, ASTR, QUOT, DQUO, LCBR, RCBR, LEFT, DOWN, UP, RIGHT, XXXXX,\
|
||||
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
|
||||
BSLS, TILD, GRV, UNDS, PIPE, LBRC, RBRC, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
|
||||
//|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
|
||||
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
|
||||
//`--------------------' `--------------------'
|
||||
)
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case LOWER:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_LOWER);
|
||||
} else {
|
||||
layer_off(_LOWER);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case RAISE:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_RAISE);
|
||||
} else {
|
||||
layer_off(_RAISE);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
Reference in New Issue
Block a user