aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/keebio/rorschach/keymaps/insertsnideremarks/readme.md1
-rw-r--r--keyboards/keebio/rorschach/keymaps/tuesdayjohn/config.h23
-rw-r--r--keyboards/keebio/rorschach/keymaps/tuesdayjohn/keymap.c296
-rw-r--r--keyboards/keebio/rorschach/keymaps/tuesdayjohn/rules.mk19
4 files changed, 339 insertions, 0 deletions
diff --git a/keyboards/keebio/rorschach/keymaps/insertsnideremarks/readme.md b/keyboards/keebio/rorschach/keymaps/insertsnideremarks/readme.md
new file mode 100644
index 000000000..152c8ba01
--- /dev/null
+++ b/keyboards/keebio/rorschach/keymaps/insertsnideremarks/readme.md
@@ -0,0 +1 @@
## I've changed my folder name to match my GitHub username. Please see https://github.com/qmk/qmk_firmware/tree/master/keyboards/keebio/rorschach/keymaps/tuesdayjohn for my current keymap files.
diff --git a/keyboards/keebio/rorschach/keymaps/tuesdayjohn/config.h b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/config.h
new file mode 100644
index 000000000..2048232c9
--- /dev/null
+++ b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/config.h
@@ -0,0 +1,23 @@
1#pragma once
2
3/* Use I2C or Serial, not both */
4
5// #define USE_SERIAL
6#define USE_I2C
7
8/* Select hand configuration */
9
10// #define MASTER_LEFT
11// #define MASTER_RIGHT
12#define EE_HANDS
13
14#define IGNORE_MOD_TAP_INTERRUPT
15#define TAPPING_TERM 175
16#define TAPPING_TOGGLE 2
17
18// #undef RGBLED_NUM
19// #define RGBLIGHT_ANIMATIONS
20// #define RGBLED_NUM 12
21// #define RGBLIGHT_HUE_STEP 8
22// #define RGBLIGHT_SAT_STEP 8
23// #define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/rorschach/keymaps/tuesdayjohn/keymap.c b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/keymap.c
new file mode 100644
index 000000000..19de124f8
--- /dev/null
+++ b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/keymap.c
@@ -0,0 +1,296 @@
1#include QMK_KEYBOARD_H
2
3extern keymap_config_t keymap_config;
4
5enum rorschach_layers {
6 _COLEMAK, // Colemak (default layer)
7 _QWERTY, // Qwerty
8 _NUMBERS, // Numbers & Symbols
9 _NUMBERS2, // Numbers & Function Keys (similar to _NUMBERS; used with _NUMBERS for tri-layer access to _ADJUST)
10 _FUNCTION, // Function
11 _FUNCTION2, // Function 2 (identical as _FUNCTION; used to allow for easier use of space and backspace while using function layer arrows)
12 _NUMPAD, // Numpad
13 _ADJUST, // Adjust layer, accessed via tri-layer feature)
14 _ADJUST2 // Second Adjust layer, accessed outside of tri-layer feature)
15};
16
17enum rorschach_keycodes {
18 COLEMAK = SAFE_RANGE,
19 QWERTY
20};
21
22//Tap Dance Declarations
23enum {
24 ADJ = 0,
25 LBCB,
26 RBCB,
27 EQPL,
28 PLEQ,
29 MNUN,
30 SLAS,
31 GVTL,
32 PPEQ,
33 PMUN,
34 PSPA
35};
36
37void dance_LAYER_finished(qk_tap_dance_state_t *state, void *user_data) {
38 if (state->count == 2) {
39 layer_on(_ADJUST2);
40 set_oneshot_layer(_ADJUST2, ONESHOT_START);
41 }
42}
43void dance_LAYER_reset(qk_tap_dance_state_t *state, void *user_data) {
44 if (state->count == 2) {
45 layer_off(_ADJUST2);
46 clear_oneshot_layer_state(ONESHOT_PRESSED);
47 }
48}
49
50qk_tap_dance_action_t tap_dance_actions[] = {
51[ADJ] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_LAYER_finished, dance_LAYER_reset), // Double-tap to activate Adjust layer via oneshot layer
52[LBCB] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LCBR), // Left bracket on a single-tap, left brace on a double-tap
53[RBCB] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_RCBR), // Right bracket on a single-tap, right brace on a double-tap
54[EQPL] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_PLUS), // Plus sign on a single-tap, equal sign on a double-tap
55[PLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQL), // Equal sign on a single-tap, plus sign on a double-tap
56[MNUN] = ACTION_TAP_DANCE_DOUBLE(KC_MINS, KC_UNDS), // Minus sign on a single-tap, underscore on a double-tap
57[SLAS] = ACTION_TAP_DANCE_DOUBLE(KC_SLSH, KC_ASTR), // Slash in a single-tap, asterisk in a double-tap
58[GVTL] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, KC_TILD), // Grave on a single-tap, tilde on a double-tap
59[PPEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PPLS, KC_EQL), // Numpad plus sign on a single-tap, equal sign on a double-tap
60[PMUN] = ACTION_TAP_DANCE_DOUBLE(KC_PMNS, KC_UNDS), // Numpad minus sign on a single-tap, underscore on a double-tap
61[PSPA] = ACTION_TAP_DANCE_DOUBLE(KC_PSLS, KC_PAST) // Numpad slash on a single-tap, numpad asterisk on a double-tap
62};
63
64//Aliases for longer keycodes
65#define NUMPAD TG(_NUMPAD)
66#define ADJUST MO(_ADJUST2)
67#define SPCFN LT(_FUNCTION, KC_SPC)
68#define BSPCFN LT(_FUNCTION2, KC_BSPC)
69#define ENTNS LT(_NUMBERS, KC_ENT)
70#define DELNS LT(_NUMBERS2, KC_DEL)
71#define CTLESC CTL_T(KC_ESC)
72#define ALTAPP ALT_T(KC_APP)
73#define CTL_A LCTL(KC_A)
74#define CTL_C LCTL(KC_C)
75#define CTL_V LCTL(KC_V)
76#define CTL_X LCTL(KC_X)
77#define CTL_Z LCTL(KC_Z)
78#define CTL_Y LCTL(KC_Y)
79#define CA_TAB LCA(KC_TAB)
80#define HYPER ALL_T(KC_NO)
81#define TD_ADJ TD(ADJ)
82#define TD_LBCB TD(LBCB)
83#define TD_RBCB TD(RBCB)
84#define TD_EQPL TD(EQPL)
85#define TD_PLEQ TD(PLEQ)
86#define TD_MNUN TD(MNUN)
87#define TD_SLAS TD(SLAS)
88#define TD_GVTL TD(GVTL)
89#define TD_PPEQ TD(PPEQ)
90#define TD_PMUN TD(PMUN)
91#define TD_PSPA TD(PSPA)
92#define NKROTG MAGIC_TOGGLE_NKRO
93
94const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
95/*
96Colemak
97(Defauit layer; keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
98 ,-----------------------------------------------------. ,-----------------------------------------------------.
99 | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
100 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
101 | Esc/Ctl| A | R | S | T | D | | H | N | E | I | O | ' |
102 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
103 |SC Shift| Z | X | C | V | B | | K | M | , | . | / |SC Shift|
104 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------'
105 | Ins | ` | [ | ] | App/Alt| Spc/FN | | Bsp/Fn2| RGUI | Left | Down | Up | Right |
106 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
107 | Ent/NS | Bspc | | Enter | Del/NS2|
108 `-----------------' `-----------------'
109*/
110[_COLEMAK] = LAYOUT(
111 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
112 CTLESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
113 KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
114 KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
115 ENTNS, KC_BSPC, KC_ENT, DELNS
116),
117
118/*
119QWERTY
120(Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
121 ,-----------------------------------------------------. ,-----------------------------------------------------.
122 | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
123 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
124 | Esc/Ctl| A | S | D | F | G | | H | J | K | L | ; | ' |
125 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
126 |SC Shift| Z | X | C | V | B | | N | M | , | . | / |SC Shift|
127 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------'
128 | Ins | ` | [ | ] | App/Alt| Spc/FN | | Bsp/Fn2| RGUI | Left | Down | Up | Right |
129 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
130 | Ent/NS | Bspc | | Enter | Del/NS2|
131 `-----------------' `-----------------'
132*/
133[_QWERTY] = LAYOUT(
134 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
135 CTLESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
136 KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
137 KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
138 ENTNS, KC_BSPC, KC_ENT, DELNS
139),
140
141/*
142Number/symbol layer
143(Multiple characters: single-tap for first, double-tap for second)
144 ,-----------------------------------------------------. ,-----------------------------------------------------.
145 | | 6 | 7 | 8 | 9 | 0 | | ^ | & | * | ( | ) | |
146 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
147 | | 1 | 2 | 3 | 4 | 5 | | ! | @ | # | $ | % | |
148 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
149 | | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
150 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
151 | ( | ) | [ { | ] } | | | | | | | | | |
152 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
153 | | | | | |
154 `-----------------' `-----------------'
155*/
156[_NUMBERS] = LAYOUT(
157 _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
158 _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
159 _______, _______, KC_DOT, TD_SLAS, TD_MNUN, TD_PLEQ, TD_GVTL, TD_LBCB, TD_RBCB, _______, _______, _______,
160 KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, _______, _______, _______, _______, _______,
161 _______, _______, _______, _______
162),
163
164/*
165Number/Function Key layer
166(Multiple characters: single-tap for first, double-tap for second)
167 ,-----------------------------------------------------. ,-----------------------------------------------------.
168 | | 6 | 7 | 8 | 9 | 0 | | F7 | F8 | F9 | F10 | F11 | F12 |
169 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
170 | | 1 | 2 | 3 | 4 | 5 | | F1 | F2 | F3 | F4 | F5 | F6 |
171 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
172 | | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
173 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
174 | ( | ) | [ { | ] } | | | | | | | | | |
175 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
176 | | | | | |
177 `-----------------' `-----------------'
178*/
179[_NUMBERS2] = LAYOUT(
180 _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
181 _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
182 _______, _______, KC_DOT, TD_SLAS, TD_MNUN, TD_PLEQ, TD_GVTL, TD_LBCB, TD_RBCB, _______, _______, _______,
183 KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, _______, _______, _______, _______, _______,
184 _______, _______, _______, _______
185),
186
187/*
188Function layer
189 ,-----------------------------------------------------. ,-----------------------------------------------------.
190 | | | | Up | | | | | | Up | Ctrl+Y | | |
191 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
192 | | Ctrl+A | Left | Down | Right | C+A+Tab| | PgUp | Right | Down | Left | Home | |
193 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
194 | | Ctrl+Z | Ctrl+X | Ctrl+C | Ctrl+V | Bspc | | PgDn | Mute | Vol- | Vol+ | End | |
195 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
196 | | | | | | | | | | Prev | Play | Next | Stop |
197 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
198 | | | | | |
199 `-----------------' `-----------------'
200*/
201[_FUNCTION] = LAYOUT(
202 _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, CTL_Y, _______, _______,
203 _______, CTL_A, KC_LEFT, KC_DOWN, KC_RGHT, CA_TAB, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
204 _______, CTL_Z, CTL_X, CTL_C, CTL_V, KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
205 _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
206 _______, _______, _______, _______
207),
208
209[_FUNCTION2] = LAYOUT(
210 _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, CTL_Y, _______, _______,
211 _______, CTL_A, KC_LEFT, KC_DOWN, KC_RGHT, CA_TAB, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
212 _______, CTL_Z, CTL_X, CTL_C, CTL_V, KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
213 _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
214 _______, _______, _______, _______
215),
216
217/*
218Numpad layer
219(Left side duplicates layout from the Numbers layer, just with numpad output; right side layout close to PC numpad layout)
220 ,-----------------------------------------------------. ,-----------------------------------------------------.
221 | | KP 6 | KP 7 | KP 8 | KP 9 | KP 0 | | NumLk | KP 7 | KP 8 | KP 9 | KP / | |
222 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
223 | | KP 1 | KP 2 | KP 3 | KP 4 | KP 5 | | Tab | KP 4 | KP 5 | KP 6 | KP * | |
224 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
225 | | NumLk | KP . | KP/ KP*| KP- _ | KP+ = | | | KP 1 | KP 2 | KP 3 | KP - | |
226 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
227 | ( | ) | [ { | ] } | | | | | KP 0 | = | KP . | KP + | |
228 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
229 | | | | KP Ent | |
230 `-----------------' `-----------------'
231*/
232[_NUMPAD] = LAYOUT(
233 _______, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,
234 _______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PAST, _______,
235 _______, KC_NLCK, KC_PDOT, TD_PSPA, TD_PMUN, TD_PPEQ, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,
236 KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, KC_P0, KC_EQL, KC_PDOT, KC_PPLS, _______,
237 _______, _______, KC_PENT, _______
238),
239
240/*
241Adjust layer
242(Enter/Number + Delete/Number2 to access; Numpad is a toggle)
243 ,-----------------------------------------------------. ,-----------------------------------------------------.
244 | | Colemak| Qwerty | | | | | Numpad | | | | | RESET |
245 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
246 | | | | | | | | |NKRO Tog| | | | |
247 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
248 | | | | | | | | | | | | | |
249 |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
250 | | | | | | | | | | | | | |
251 `--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
252 | | | | | |
253 `-----------------' `-----------------'
254*/
255[_ADJUST] = LAYOUT(
256 _______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, RESET,
257 _______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
258 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
259 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
260 _______, _______, _______, _______
261),
262
263[_ADJUST2] = LAYOUT(
264 _______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, RESET,
265 _______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
266 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
267 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
268 _______, _______, _______, _______
269)
270
271};
272
273uint32_t layer_state_set_user(uint32_t state) {
274 return update_tri_layer_state(state, _NUMBERS, _NUMBERS2, _ADJUST);
275}
276
277bool process_record_user(uint16_t keycode, keyrecord_t *record) {
278 switch (keycode) {
279 case COLEMAK:
280 if (record->event.pressed) {
281 default_layer_set(1UL << _COLEMAK);
282 layer_move (_COLEMAK);
283
284 }
285 return false;
286 break;
287 case QWERTY:
288 if (record->event.pressed) {
289 default_layer_set(1UL << _QWERTY);
290 layer_move (_QWERTY);
291 }
292 return false;
293 break;
294 }
295 return true;
296}
diff --git a/keyboards/keebio/rorschach/keymaps/tuesdayjohn/rules.mk b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/rules.mk
new file mode 100644
index 000000000..cf63c44f4
--- /dev/null
+++ b/keyboards/keebio/rorschach/keymaps/tuesdayjohn/rules.mk
@@ -0,0 +1,19 @@
1# Build Options
2# change to "no" to disable the options, or define them in the Makefile in
3# the appropriate keymap folder that will get included automatically
4#
5
6BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
7MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
8EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
9CONSOLE_ENABLE = yes # Console for debug(+400)
10COMMAND_ENABLE = no # Commands for debug and configuration
11NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13MIDI_ENABLE = no # MIDI controls
14AUDIO_ENABLE = no # Audio output on port C6
15UNICODE_ENABLE = yes # Unicode
16BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
17RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
18SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
19TAP_DANCE_ENABLE = yes # Enable Tap Dancing function