1 #include QMK_KEYBOARD_H
11 enum planck_keycodes
{
19 enum tap_dance_codes
{
29 const macro_t
*action_get_macro(keyrecord_t
*record
, uint8_t id
, uint8_t opt
) {
30 //keyevent_t event = record->event;
38 qk_tap_dance_action_t tap_dance_actions
[] = {
39 [0] = ACTION_TAP_DANCE_DOUBLE(KC_SCLN
, KC_LPRN
),
40 [1] = ACTION_TAP_DANCE_DOUBLE(KC_Q
, KC_LCBR
),
41 [2] = ACTION_TAP_DANCE_DOUBLE(KC_J
, KC_LBRC
),
42 [3] = ACTION_TAP_DANCE_DOUBLE(KC_W
, KC_RBRC
),
43 [4] = ACTION_TAP_DANCE_DOUBLE(KC_V
, KC_RCBR
),
44 [5] = ACTION_TAP_DANCE_DOUBLE(KC_Z
, KC_RPRN
)
47 const uint16_t PROGMEM keymaps
[][MATRIX_ROWS
][MATRIX_COLS
] = {
50 * ,-----------------------------------------------------------------------------------.
51 * | Tab | '" | ,< | .> | P | Y | F | G | C | R | L | BS |
52 * |------+------+------+------+------+-------------+------+------+------+------+------|
53 * | Esc | A | O | E | U | I | D | H | T | N | S | /? |
54 * |------+------+------+------+------+------|------+------+------+------+------+------|
55 * |LShift| ;:/( | Q/{ | J/[ | K | X | B | M | W/] | V/} | Z/) |RS/Ent|
56 * |------+------+------+------+------+------+------+------+------+------+------+------|
57 * |Action| Ctrl | GUI | Alt |Number| Space/Enter |Symbol| Left | Down | Up | Right|
58 * `-----------------------------------------------------------------------------------'
60 [_DVORAK
] = LAYOUT_planck_grid(
61 KC_TAB
, KC_QUOT
, KC_COMM
, KC_DOT
, KC_P
, KC_Y
, KC_F
, KC_G
, KC_C
, KC_R
, KC_L
, KC_BSPACE
,
62 KC_ESC
, KC_A
, KC_O
, KC_E
, KC_U
, KC_I
, KC_D
, KC_H
, KC_T
, KC_N
, KC_S
, KC_SLASH
,
63 KC_LSFT
, TD(0), TD(1), TD(2), KC_K
, KC_X
, KC_B
, KC_M
, TD(3), TD(4), TD(5), MT(MOD_RSFT
, KC_ENT
),
64 MO(ACTIONS
), KC_LCTRL
, KC_LGUI
, KC_LALT
, NUMBERS
, KC_SPACE
, KC_SPACE
, SYMBOLS
,KC_LEFT
, KC_DOWN
, KC_UP
, KC_RIGHT
68 * ,-----------------------------------------------------------------------------------.
69 * | | F1 | F2 | F3 | F4 | F5 | F6 | 7 | 8 | 9 | * | |
70 * |------+------+------+------+------+-------------+------+------+------+------+------|
71 * | | F7 | F8 | F9 | F10 | F11 | F12 | 4 | 5 | 6 | - | |
72 * |------+------+------+------+------+------|------+------+------+------+------+------|
73 * | | | | | | | 0 | 1 | 2 | 3 | + | |
74 * |------+------+------+------+------+------+------+------+------+------+------+------|
75 * | | | | | | | | | | | | |
76 * `-----------------------------------------------------------------------------------'
78 [_NUMBERS
] = LAYOUT_planck_grid(
79 _______
, KC_F1
, KC_F2
, KC_F3
, KC_F4
, KC_F5
, KC_F6
, KC_7
, KC_8
, KC_9
, KC_KP_ASTERISK
, _______
,
80 _______
, KC_F7
, KC_F8
, KC_F9
, KC_F10
, KC_F11
, KC_F12
, KC_4
, KC_5
, KC_6
, KC_KP_MINUS
, _______
,
81 _______
, _______
, _______
, _______
, _______
, _______
, KC_0
, KC_1
, KC_2
, KC_3
, KC_KP_PLUS
, _______
,
82 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
86 * ,-----------------------------------------------------------------------------------.
87 * | `~ | ! | @ | # | $ | % | ^ | & | * | | | Del |
88 * |------+------+------+------+------+-------------+------+------+------+------+------|
89 * | Caps | | Ins | Pgup | | | | _ | + | | | \| |
90 * |------+------+------+------+------+------|------+------+------+------+------+------|
91 * | | Home | End | Pgdn | | | | - | = | | | |
92 * |------+------+------+------+------+------+------+------+------+------+------+------|
93 * | | | | | | | | | | | | |
94 * `-----------------------------------------------------------------------------------'
96 [_SYMBOLS
] = LAYOUT_planck_grid(
97 KC_GRV
, KC_EXCLAIM
, KC_AT
, KC_HASH
, KC_DOLLAR
, KC_PERC
, KC_CIRC
, KC_AMPR
, KC_ASTR
, _______
, _______
, KC_DEL
,
98 KC_CAPS
, _______
, KC_INS
, KC_PGUP
, _______
, _______
, _______
, KC_UNDS
, KC_PLUS
, _______
, _______
, KC_BSLS
,
99 _______
, KC_HOME
, KC_END
, KC_PGDN
, _______
, _______
, _______
, KC_MINUS
, KC_EQL
, _______
, _______
, _______
,
100 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
104 * ,-----------------------------------------------------------------------------------.
105 * | LED | | | | | Sleep|Reset | | | | | Del |
106 * |------+------+------+------+------+-------------+------+------+------+------+------|
107 * | | Redo | | | | | | Play | << | >> | | |
108 * |------+------+------+------+------+------|------+------+------+------+------+------|
109 * | | Undo | Cut | Copy | Paste| | | Mute | Vol- | Vol+ | | |
110 * |------+------+------+------+------+------+------+------+------+------+------+------|
111 * | | | | | | | | | | | | |
112 * `-----------------------------------------------------------------------------------'
114 [_ACTIONS
] = LAYOUT_planck_grid(
115 BL_STEP
, _______
, _______
, _______
, _______
, KC_SLEP
, RESET
, _______
, _______
, _______
, _______
, KC_DEL
,
116 _______
, LCTL(KC_Y
), _______
, _______
, _______
, _______
, _______
, KC_MPLY
, KC_MPRV
, KC_MNXT
, _______
, _______
,
117 _______
, LCTL(KC_Z
), LCTL(KC_X
), LCTL(KC_C
), LCTL(KC_V
), _______
, _______
, KC_MUTE
, KC_VOLD
, KC_VOLU
, _______
, _______
,
118 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
122 * ,-----------------------------------------------------------------------------------.
123 * | | | | | | | | | | | | |
124 * |------+------+------+------+------+-------------+------+------+------+------+------|
125 * | | | | | | | | | | | | |
126 * |------+------+------+------+------+------|------+------+------+------+------+------|
127 * | | | | | | | | | | | | |
128 * |------+------+------+------+------+------+------+------+------+------+------+------|
129 * | | | | | | | | | | | | |
130 * `-----------------------------------------------------------------------------------'
132 [_SPECIAL
] = LAYOUT_planck_grid(
133 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
,
134 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
,
135 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
,
136 _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
, _______
140 bool process_record_user(uint16_t keycode
, keyrecord_t
*record
) {
143 if (record
->event
.pressed
) {
144 set_single_persistent_default_layer(_DVORAK
);
149 if (record
->event
.pressed
) {
151 update_tri_layer(_NUMBERS
, _SYMBOLS
, _SPECIAL
);
154 update_tri_layer(_NUMBERS
, _SYMBOLS
, _SPECIAL
);
159 if (record
->event
.pressed
) {
161 update_tri_layer(_NUMBERS
, _SYMBOLS
, _SPECIAL
);
164 update_tri_layer(_NUMBERS
, _SYMBOLS
, _SPECIAL
);