47 lines
1.0 KiB
C
47 lines
1.0 KiB
C
|
#include QMK_KEYBOARD_H
|
||
|
|
||
|
|
||
|
enum layers {
|
||
|
NORMAL_LAYER = 0,
|
||
|
SECOND_LAYER
|
||
|
};
|
||
|
|
||
|
enum custom_keycode {
|
||
|
VS_COMMENT = SAFE_RANGE,
|
||
|
VS_UNCOMMENT,
|
||
|
TST_STRING
|
||
|
};
|
||
|
|
||
|
|
||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||
|
switch (keycode) {
|
||
|
case VS_COMMENT:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING(SS_LCTL("kc"));
|
||
|
}
|
||
|
break;
|
||
|
case VS_UNCOMMENT:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING(SS_LCTL("ku"));
|
||
|
}
|
||
|
break;
|
||
|
case TST_STRING:
|
||
|
if (record->event.pressed) {
|
||
|
SEND_STRING("12345\n");
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
}
|
||
|
return true;
|
||
|
}
|
||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||
|
[NORMAL_LAYER] = LAYOUT_ortho_2x4(
|
||
|
VS_COMMENT, VS_UNCOMMENT, TST_STRING, KC_4,
|
||
|
KC_5, KC_6, KC_7, TO(1)
|
||
|
),
|
||
|
[SECOND_LAYER] = LAYOUT_ortho_2x4(
|
||
|
KC_A, KC_B, KC_C, KC_D,
|
||
|
KC_E, KC_F, KC_G, TO(0)
|
||
|
)
|
||
|
};
|