aboutsummaryrefslogtreecommitdiff
path: root/keyboards/dz60/keymaps/xtonhasvim/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/dz60/keymaps/xtonhasvim/keymap.c')
-rw-r--r--keyboards/dz60/keymaps/xtonhasvim/keymap.c92
1 files changed, 92 insertions, 0 deletions
diff --git a/keyboards/dz60/keymaps/xtonhasvim/keymap.c b/keyboards/dz60/keymaps/xtonhasvim/keymap.c
new file mode 100644
index 000000000..8a7419214
--- /dev/null
+++ b/keyboards/dz60/keymaps/xtonhasvim/keymap.c
@@ -0,0 +1,92 @@
1#include QMK_KEYBOARD_H
2#include "xtonhasvim.h"
3
4enum layers {
5 _QWERTY,
6 _FUN,
7 _MOVE,
8 _MOUSE
9};
10
11const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
12
13 [_QWERTY] = LAYOUT(
14 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
15 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
16 LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_MOVE,KC_SCLN), KC_QUOT, KC_ENT,
17 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
18 KC_LCTL, KC_LALT, KC_LGUI, VIM_START, TG(_MOUSE), KC_SPC, KC_RGUI, KC_RALT, X_____X, KC_RCTL, MO(_FUN)),
19
20 [_FUN] = LAYOUT(
21 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
22 _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET,
23 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
24 _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______,
25 TO(_QWERTY), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
26
27 [_MOVE] = LAYOUT(
28 X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
29 X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X, X_____X, X_____X,
30 X_____X, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, X_____X, X_____X, X_____X,
31 _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
32 TO(_QWERTY), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
33
34
35 [_MOUSE] = LAYOUT(
36 X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
37 X_____X, X_____X, X_____X, KC_MS_UP, X_____X, X_____X, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, X_____X, X_____X, X_____X, X_____X,
38 X_____X, X_____X,KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, X_____X, X_____X, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, X_____X, X_____X, X_____X,
39 _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
40 TO(_QWERTY), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
41
42 [_EDIT] = LAYOUT(
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
46 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
47 TO(_QWERTY), _______, _______, VIM_START, _______, _______, _______, _______, _______, _______, _______),
48
49 [_CMD] = LAYOUT(
50 X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
51 X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X, X_____X, X_____X,
52 VIM_ESC, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X, X_____X,
53 VIM_SHIFT, X_____X, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,X_____X,
54 TO(_QWERTY), _______, _______, TO(_QWERTY), X_____X, X_____X, _______, _______, _______, _______, _______),
55
56};
57
58#define LED_BIT 1 << 2
59#define LED_MASK ~(1 << 2)
60
61void user_led_on(void) {
62 DDRB |= LED_BIT;
63 PORTB &= LED_MASK;
64}
65
66void user_led_off(void) {
67 DDRB &= ~LED_BIT;
68 PORTB &= LED_MASK;
69}
70
71void matrix_init_user(void) {
72 user_led_off();
73}
74
75uint32_t layer_state_set_user(uint32_t state) {
76 static uint32_t last_state = 0;
77
78 if(last_state != state) {
79 switch (biton32(state)) {
80 case _CMD:
81 user_led_on();
82 break;
83 default:
84 user_led_off();
85 break;
86 }
87 last_state = state;
88 }
89 return state;
90}
91
92