aboutsummaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorBrandon Schlack <brandonschlack@gmail.com>2020-11-04 21:55:03 -0800
committerGitHub <noreply@github.com>2020-11-04 21:55:03 -0800
commitf12dcb0659918657d35dc599e69f1aec43a22e97 (patch)
tree50e98a01f9103a82574390879f9989ef27b47e98 /keyboards
parent262a60733483a38ed998b6dc6495f748ba6b71b0 (diff)
downloadqmk_firmware-f12dcb0659918657d35dc599e69f1aec43a22e97.tar.gz
qmk_firmware-f12dcb0659918657d35dc599e69f1aec43a22e97.zip
[Keymap] add brandonschlack userspace and keymaps (#10411)
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c173
-rw-r--r--keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c60
-rw-r--r--keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c111
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h20
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c80
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md9
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c102
-rw-r--r--keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c102
-rw-r--r--keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk3
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/config.h25
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c393
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md107
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk11
-rw-r--r--keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c67
-rw-r--r--keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk8
-rw-r--r--keyboards/launchpad/keymaps/brandonschlack/config.h32
-rw-r--r--keyboards/launchpad/keymaps/brandonschlack/keymap.c213
-rw-r--r--keyboards/launchpad/keymaps/brandonschlack/readme.md31
-rw-r--r--keyboards/launchpad/keymaps/brandonschlack/rules.mk13
-rw-r--r--keyboards/maartenwut/wonderland/keymaps/brandonschlack/config.h19
-rwxr-xr-xkeyboards/maartenwut/wonderland/keymaps/brandonschlack/keymap.c170
-rwxr-xr-xkeyboards/maartenwut/wonderland/keymaps/brandonschlack/rules.mk8
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h30
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c270
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md1
-rw-r--r--keyboards/nightmare/keymaps/brandonschlack/keymap.c195
-rw-r--r--keyboards/nightmare/keymaps/brandonschlack/readme.md20
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/config.h30
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c95
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c115
-rw-r--r--keyboards/tkc/osav2/keymaps/brandonschlack/config.h30
-rwxr-xr-xkeyboards/tkc/osav2/keymaps/brandonschlack/keymap.c243
-rwxr-xr-xkeyboards/tkc/osav2/keymaps/brandonschlack/rules.mk9
-rw-r--r--keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c132
37 files changed, 2933 insertions, 0 deletions
diff --git a/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c b/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..1d0cdf4f0
--- /dev/null
+++ b/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,173 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18#include "brandonschlack.h"
19
20/**
21 * Layer Names
22 *
23 * Layers mostly used for macro keys
24 */
25#define _REEDER _M1
26#define _NAV _M2
27#define _MOUSE _M3
28
29/**
30 * Keycodes & Macros
31 */
32#define TG_BASE TO(_BASE)
33#define TG_REDR TO(_REEDER)
34#define TG_NAV TO(_NAV)
35#define TG_MOUS TO(_MOUSE)
36
37const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
38 /**
39 * Base
40 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
41 * │Esc│││Tab  │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│Bck│
42 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
43 * │PgU│││HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│
44 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
45 * │PgD│││Shift   │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│Shft│ Fn│
46 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
47 * │End│││││││││││Opt│Cmd  │        │          │  Cmd│Ctl│││││││││││
48 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
49 */
50 [_BASE] = LAYOUT_default(
51 KC_ESC, 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_BSPC, \
52 KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
53 KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1, \
54 KC_END, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_RCTL \
55 ),
56 /**
57 * Reeder
58 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
59 * │ P │││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
60 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
61 * │ K │││      │   │   │   │   │   │   │   │   │   │   │   │      │
62 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
63 * │ J │││        │   │   │   │   │   │   │   │   │   │   │    │   │
64 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
65 * │ N │││││││││││   │     │        │          │     │   │││││││││││
66 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
67 */
68 [_REEDER] = LAYOUT_default( \
69 KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
70 KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
71 KC_J, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
72 KC_N, _______, _______, _______, _______, _______, _______ \
73 ),
74 /**
75 * Nav
76 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
77 * │ → │││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
78 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
79 * │ ↑ │││      │   │   │   │   │   │   │   │   │   │   │   │      │
80 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
81 * │ ↓ │││        │   │   │   │   │   │   │   │   │   │   │    │   │
82 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
83 * │ ← │││││││││││   │     │        │          │     │   │││││││││││
84 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
85 */
86 [_NAV] = LAYOUT_default( \
87 KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
88 KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
89 KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
90 KC_LEFT, _______, _______, _______, _______, _______, _______ \
91 ),
92 /**
93 * Mouse
94 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
95 * │WhU│││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
96 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
97 * │ ↑ │││      │   │   │   │   │   │   │   │   │   │   │   │      │
98 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
99 * │ ↓ │││        │   │   │   │   │   │   │   │   │   │   │    │   │
100 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
101 * │WhD│││││││││││   │     │        │          │     │   │││││││││││
102 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
103 */
104 [_MOUSE] = LAYOUT_default( \
105 MC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
106 KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
107 KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
108 MC_WH_D, _______, _______, _______, _______, _______, _______ \
109 ),
110 /**
111 * Lower
112 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
113 * │Nxt│││Del  │BrD│BrU│Msn│LHP│   │   │   │   │   │   │ ↑ │Mut│SlD│
114 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
115 * │VlU│││HyCaps│   │   │NxW│PvT│Bck│Fwd│NxT│   │   │ ← │ → │ Play │
116 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
117 * │VlD│││        │   │   │   │1PX│1Ps│   │   │   │   │ ↓ │    │   │
118 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
119 * │Prv│││││││││││   │     │        │          │     │   │││││││││││
120 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
121 */
122 [_LOWER] = LAYOUT_default( \
123 KC_MNXT, KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD, \
124 KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY, \
125 KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______, \
126 KC_MPRV, _______, _______, _______, _______, _______, _______ \
127 ),
128
129 /**
130 * Raise
131 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
132 * │Hom│││~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│   │
133 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
134 * │PgU│││      │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │   │   │      │
135 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
136 * │PgD│││        │ F7│ F8│ F9│F10│F11│F12│   │   │   │| \│    │   │
137 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
138 * │End│││││││││││   │     │        │          │     │   │││││││││││
139 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
140 */
141 [_RAISE] = LAYOUT_default( \
142 KC_HOME, 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, _______, \
143 KC_PGUP, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______, \
144 KC_PGDN, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______, \
145 KC_END, _______, _______, _______, _______, _______, _______ \
146 ),
147 /**
148 * Adjust
149 * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
150 * │Bse│││Make │   │   │EEP│RST│   │   │   │   │   │   │   │   │   │
151 * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
152 * │Rdr│││      │   │   │   │   │   │   │   │   │   │   │   │      │
153 * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
154 * │Nav│││        │   │   │   │   │   │   │   │   │   │   │    │   │
155 * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
156 * │Mse│││││││││││   │     │        │          │     │   │││││││││││
157 * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
158 */
159 [_ADJUST] = LAYOUT_default( \
160 TG_BASE, QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
161 TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
162 TG_NAV, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
163 TG_MOUS, _______, _______, _______, _______, _______, _______ \
164 ),
165};
166
167void keyboard_post_init_keymap(void) {
168 rgblight_disable_noeeprom();
169}
170
171layer_state_t layer_state_set_keymap(layer_state_t state) {
172 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
173}
diff --git a/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..4c63a3e14
--- /dev/null
+++ b/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,60 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
22 * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ Bckspc│Hom│
23 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
24 * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│| \│PgU│
25 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
26 * │HyCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
27 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
28 * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
29 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤
30 * │Ctrl│ Opt│ Cmd│ Space │ Cmd │FnPly│Lef│Dow│Rig│
31 * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
32 */
33[_BASE] = LAYOUT_65_ansi_2_right_mods( \
34 KC_ESC, 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_BSPC, KC_HOME, \
35 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, KC_PGUP, \
36 HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, \
37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, \
38 KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT \
39),
40/* Function Layer
41 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
42 * │` ~│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│ Del │SlD│
43 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
44 * │ │ │ │ │ │ │ │ │ │ │F13│F14│F15│ LHP │VlU│
45 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
46 * │ │ │ │ │ │ │ │ │ │ │ │ │ │VlD│
47 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
48 * │ │ │ │ │ │RST│ │Mke│Prv│Nxt│Ply│ │PgU│Mut│
49 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤
50 * │ │ │ │ │ │ │Hom│PgD│End│
51 * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
52 */
53[_FN1] = LAYOUT_65_ansi_2_right_mods( \
54 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_DELT, MC_SLPD, \
55 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, MC_LHPD, KC_VOLU, \
56 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, \
57 _______, _______, _______, _______, _______, RESET, _______, QM_MAKE, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE, \
58 _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END \
59)
60};
diff --git a/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c b/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..3be5d44ea
--- /dev/null
+++ b/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,111 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
22* │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ Bspc│
23* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
24* │HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Enter│
25* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
26* │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│ ?/Sft│
27* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
28* │Ctrl│Opt│Cmd│ Space │ Cmd│Opt│ Lwr│
29* └────┴───┴───┴────────────────────────┴────┴───┴────┘
30*/
31[_BASE] = LAYOUT_ansi_40( \
32 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
33 HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, \
34 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SF_SLSH, \
35 KC_LCTL, KC_LOPT, KC_LCMD, SPC_RAI, KC_RCMD, KC_ROPT, LOWER \
36),
37/* Lower
38* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
39* │Del │BrD│BrU│Msn│LHP│   │   │   │PgU│Hom│End│ SlpD│
40* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
41* │HyCaps│Mut│VlU│NxW│PvT│Bck│Fwd│NxT│PgD│ ↑ │ Play│
42* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
43* │ │Prv│VlD│Nxt│1PX│1Ps│   │ ← │ ↓ │ → │ │
44* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
45* │ │ │ │ │ │ │ │
46* └────┴───┴───┴────────────────────────┴────┴───┴────┘
47*/
48[_LOWER] = LAYOUT_ansi_40( \
49 KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, MC_SLPD, \
50 HY_CAPS, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, KC_PGDN, KC_UP, KC_MPLY, \
51 _______, KC_MPRV, KC_VOLD, KC_MNXT, PX_AFLL, OP_AFLL, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, \
52 _______, _______, _______, _______, _______, _______, _______ \
53),
54/* Raise
55* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
56* │~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│ │
57* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
58* │     │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│: ;│ " '│
59* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
60* │ │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│ |\Sft│
61* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
62* │ │ │ │ │    │   │    │
63* └────┴───┴───┴────────────────────────┴────┴───┴────┘
64*/
65[_RAISE] = LAYOUT_ansi_40( \
66 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \
67 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, \
68 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, SF_BSLS, \
69 _______, _______, _______, _______, _______, _______, _______ \
70),
71/* Adjust/Macro Layer
72* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
73* │Make │   │   │EEP│RST│ │ │ │ │ │ │     │
74* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
75* │ │ │ │ │ │ │ │ │ │ │ │
76* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
77* │ │ │ │ │ │ │ │ │ │ │ │
78* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
79* │ │ │ │ │ │ │ │
80* └────┴───┴───┴────────────────────────┴────┴───┴────┘
81*/
82[_ADJUST] = LAYOUT_ansi_40( \
83 QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, \
84 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
85 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
86 _______, _______, _______, _______, _______, _______, _______ \
87)
88/* Blank Layer
89* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
90* │ │ │ │ │ │ │ │ │ │ │ │ │
91* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
92* │ │ │ │ │ │ │ │ │ │ │ │
93* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
94* │ │ │ │ │ │ │ │ │ │ │ │
95* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
96* │ │ │ │ │ │ │ │
97* └────┴───┴───┴────────────────────────┴────┴───┴────┘
98*/
99/*
100[BLANK] = LAYOUT_ansi_40( \
101 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
102 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
103 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
104 _______, _______, _______, _______, _______, _______, _______ \
105)
106*/
107};
108
109layer_state_t layer_state_set_keymap(layer_state_t state) {
110 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
111}
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..157b55d76
--- /dev/null
+++ b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h
@@ -0,0 +1,20 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#undef RGBLIGHT_ANIMATIONS
20#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..595540199
--- /dev/null
+++ b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,80 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
22 * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ Bckspc│PgU│
23 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
24 * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│| \│PgD│
25 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
26 * │HyCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│ │
27 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
28 * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│ │
29 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
30 * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
31 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
32 */
33[_BASE] = LAYOUT_65_ansi_blocker( \
34 KC_ESC, 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_BSPC, KC_PGUP, \
35 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, KC_PGDN, \
36 HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, XXXXXXX, \
37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, XXXXXXX, \
38 KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT \
39),
40/* Function Layer
41 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
42 * │` ~│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│ Delete│VlU│
43 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
44 * │RMod │RH+│RS+│RV+│ │ │ │ │ │ │F13│F14│F15│ SlpD│VlD│
45 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
46 * │RTgl │RH-│RS-│RV-│ │ │ │ │ │ │MNC│LHP│ │ │
47 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
48 * │ │LYR│Thm│ │ │RST│ │Mke│Prv│Nxt│Ply│MteSft│PgU│ │
49 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
50 * │ │ │ │ │ │ │ │Hom│PgD│End│
51 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
52 */
53[_FN1] = LAYOUT_65_ansi_blocker( \
54 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_DELT, KC_VOLU, \
55 RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, MC_SLPD, KC_VOLD, \
56 RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, MC_MSSN, MC_LHPD, _______, XXXXXXX, \
57 _______, RGB_LYR, RGB_THM, _______, _______, RESET, _______, QM_MAKE, KC_MPRV, KC_MNXT, KC_MPLY, MUT_SFT, KC_PGUP, XXXXXXX, \
58 _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END \
59),
60/* Blank Layout
61 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
62 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
63 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
64 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
65 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
66 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
67 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
68 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
69 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
70 * │ │ │ │ │ │ │ │ │ │ │
71 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
72[X] = LAYOUT_65_ansi_blocker( \
73 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, \
74 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
75 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
76 _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
77 _______, _______, _______, _______, _______, _______, _______, _______, _______ \
78),
79*/
80};
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md
new file mode 100644
index 000000000..76174061a
--- /dev/null
+++ b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md
@@ -0,0 +1,9 @@
1# brandonschlack's Think6.5 keymap
2
3My keymap for the Think6.5. Using the `LAYOUT_65_ansi_blocker` LAYOUT and based on my keyboard-agnostic layout, some small changes for the navigation keys not present due to the badge.
4
5## [Base Layer](http://www.keyboard-layout-editor.com/#/gists/b396fee9f49d6e9493876e82a8ee99ac)
6![Base Layer](https://i.imgur.com/AZYVuZS.jpg)
7
8## [Function Layer](http://www.keyboard-layout-editor.com/#/gists/06e684133399bb63d8b72ac6982e0e68)
9![Function Layer](https://i.imgur.com/GbOOxME.jpg)
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..4ce80104e
--- /dev/null
+++ b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,2 @@
1# Build Options
2MOUSEKEY_ENABLE = no # Don't need mouse keys
diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..a73c961db
--- /dev/null
+++ b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,102 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
22 * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│Hom│
23 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
24 * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│PgU│
25 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
26 * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
27 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
28 * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
29 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
30 * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
31 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
32 */
33[_BASE] = LAYOUT(
34 KC_ESC, 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_BSLS, KC_GRV, KC_HOME, \
35 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_BSPC, KC_PGUP, \
36 HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, \
37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, \
38 KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT),
39
40/* Function Layer
41 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
42 * │MKE│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│LHP│MSN│SLP│
43 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
44 * │ │ │ │ │RST│ │ │ │ │ │F13│F14│F15│ Del│VlU│
45 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
46 * │ │ │ │ │ │ │ │ │KMP│ │ │ │ Adjust │VlD│
47 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
48 * │ │ │ │ │VRN│ │ │ │Prv│Nxt│Ply│ │PgU│Mut│
49 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
50 * │ │ │ │ │ │ │ │Hom│PgD│End│
51 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
52 */
53[_FN1] = LAYOUT(
54 QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_MSSN, MC_SLPD, \
55 _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, KC_DEL, KC_VOLU, \
56 _______, _______, _______, _______, _______, _______, _______, _______, QM_KYMP, _______, _______, _______, TG_ADJT, KC_VOLD, \
57 _______, _______, _______, _______, QM_VRSN, _______, _______, _______, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE, \
58 _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ),
59
60/* Adjust Layer Layer
61 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
62 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
63 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
64 * │ │ │ │EEP│RST│ │ │ │ │ │ │ │ │ │ │
65 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
66 * │ │ │ │ │ │ │ │ │ │ │ │ │ Adjust │ │
67 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
68 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
69 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
70 * │ │ │ │ │ │ │ │ │ │ │
71 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
72 */
73[_ADJUST] = LAYOUT(
74 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
75 XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
76 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_ADJT, XXXXXXX, \
77 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, \
78 _______, _______, _______, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX),
79};
80
81/* Blank Template
82 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
83 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
84 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
85 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
86 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
87 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
88 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
89 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
90 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
91 * │ │ │ │ │ │ │ │ │ │ │
92 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
93 */
94/*
95[_BLANK] = LAYOUT(
96 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
97 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
98 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
99 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
100 _______, _______, _______, _______, _______, _______, _______, _______, _______),
101};
102*/
diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..f24246449
--- /dev/null
+++ b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,2 @@
1# Build Options
2BOOTMAGIC_ENABLE = full # Use full Bootmagic
diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..235cb2e87
--- /dev/null
+++ b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,102 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
22 * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│Hom│
23 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
24 * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│PgU│
25 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
26 * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
27 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
28 * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
29 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
30 * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
31 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
32 */
33[_BASE] = LAYOUT_all(
34 KC_ESC, 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_BSLS, KC_GRV, KC_HOME, \
35 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_BSPC, KC_PGUP, \
36 HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, \
37 KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, \
38 KC_LCTL, KC_LOPT, KC_LCMD, XXXXXXX, KC_SPC, XXXXXXX, KC_RCMD, PLY_FN1, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT),
39
40/* Function Layer
41 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
42 * │MKE│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│LHP│MSN│SLP│
43 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
44 * │RMod │RH+│RS+│RV+│RST│ │ │ │ │ │F13│F14│F15│ Del│VlU│
45 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
46 * │ │RH-│RS-│RV-│ │ │ │ │KMP│ │ │ │ Adjust │VlD│
47 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
48 * │ │RTg│RLy│RTh│VRN│ │ │ │Prv│Nxt│Ply│ │PgU│Mut│
49 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
50 * │ │ │ │ │ │ │ │Hom│PgD│End│
51 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
52 */
53[_FN1] = LAYOUT_all(
54 QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_MSSN, MC_SLPD, \
55 RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RESET, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, KC_DEL, KC_VOLU, \
56 _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, QM_KYMP, _______, _______, _______, TG_ADJT, KC_VOLD, \
57 _______, XXXXXXX, RGB_TOG, RGB_LYR, RGB_THM, QM_VRSN, _______, _______, _______, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE, \
58 _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, XXXXXXX, KC_HOME, KC_PGDN, KC_END ),
59
60/* Adjust Layer Layer
61 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
62 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
63 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
64 * │ │ │ │EEP│RST│ │ │ │ │ │ │ │ │ │ │
65 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
66 * │ │ │ │ │ │ │ │ │ │ │ │ │ Adjust │ │
67 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
68 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
69 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
70 * │ │ │ │ │ │ │ │ │ │ │
71 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
72 */
73[_ADJUST] = LAYOUT_all(
74 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
75 XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
76 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_ADJT, XXXXXXX, \
77 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, \
78 _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX),
79};
80
81/* Blank Template
82 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
83 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
84 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
85 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
86 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
87 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
88 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
89 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
90 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
91 * │ │ │ │ │ │ │ │ │ │ │
92 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
93 */
94/*
95[_BLANK] = LAYOUT(
96 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
97 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
98 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
99 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
100 _______, _______, _______, _______, _______, _______, _______, _______, _______),
101};
102*/
diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..348eeaee3
--- /dev/null
+++ b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,3 @@
1# Build Options
2MOUSEKEY_ENABLE = no # Don't need mouse keys
3BACKLIGHT_ENABLE = no # Backlights not installed
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h b/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..cde5051c8
--- /dev/null
+++ b/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h
@@ -0,0 +1,25 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define ENCODER_DIRECTION_FLIP
19
20#undef RGBLIGHT_ANIMATIONS
21#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
22
23/* Mouse Keys Configuration */
24#define MK_3_SPEED
25#define MK_W_INTERVAL_UNMOD 20
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c b/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..443e8d0ae
--- /dev/null
+++ b/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,393 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19/**
20 * Layer Names
21 */
22enum bdn9_layers {
23 _REEDER = 0,
24 _MEDIA,
25 _NAVI,
26 _KARABINER,
27 LR_NAV,
28 LR_REVIEW,
29 LR_EDIT
30};
31
32#define _AUDIO 13
33#define _LIGHT 14
34
35/**
36 * Keycodes & Macros
37 */
38#define DF_REDR DF(_REEDER) // Set Default Layer to Reeder shortcuts
39#define DF_MEDA DF(_MEDIA) // Set Default Layer to Media controls
40#define DF_NAVI DF(_NAVI) // Set Default Layer to Navigation shortcuts
41#define DF_KBNR DF(_KARABINER) // Set Default Layer to Basic Macro keys
42
43enum bdn9_keycodes {
44 TG_LNAV = KEYMAP_SAFE_RANGE,
45 TG_REVW,
46 TG_EDIT
47};
48
49/**
50 * Tap Dances
51 *
52 * Use tap dance for layer changes
53 */
54enum bdn9_dances {
55 TD_DTAP_ADIO = 0,
56 TD_DTAP_LGHT,
57 TD_DTAP_ADJT
58};
59// Tap Dance Definitions
60qk_tap_dance_action_t tap_dance_actions[] = {
61 [TD_DTAP_ADIO] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _AUDIO),
62 [TD_DTAP_LGHT] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _LIGHT),
63 [TD_DTAP_ADJT] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _ADJUST),
64};
65// Tap Dance Aliases
66#if defined(RGBLIGHT_ENABLE)
67#define DTP_AVC TD(TD_DTAP_LGHT) //
68#elif defined(AUDIO_ENABLE)
69#define DTP_AVC TD(TD_DTAP_ADIO)
70#endif
71#define DTP_ADJ TD(TD_DTAP_ADJT)
72
73const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
74 /*
75 Layer: Reeder
76 ┌───────────┐ ┌───────────┐
77 │   Items   │  │    Subs   │
78 │  Prv  Nxt │  │  Prv  Nxt │
79 ├────────┬──┴──┴──┬────────┤
80 │ VwBrsw │  Star  │  Sync  │
81 ├────────┼────────┼────────┤
82 │ CmdTab │ TgRead │  Clear │
83 ├────────┼────────┼────────┤
84 │ VwStard│ VwUnrd │  VwAll │
85 └────────┴────────┴────────┘
86 */
87 [_REEDER] = LAYOUT(
88 KC_H, KC_S, KC_R,
89 CMD_TAB, KC_M, DTP_AVC,
90 G(KC_1), G(KC_2), DTP_ADJ
91 ),
92 /*
93 Layer: Media
94 ┌───────────┐  ┌───────────┐
95 │    Vol    │  │   Track   │
96 │  Prv  Nxt │  │  Prv  Nxt │
97 ├────────┬──┴──┴──┬────────┤
98 │  Mute  │ Player │  Sync  │
99 ├────────┼────────┼────────┤
100 │ YT<10s │ YT Ply │ YT>10s │
101 ├────────┼────────┼────────┤
102 │  Left  │  Spce  │  Rght  │
103 └────────┴────────┴────────┘
104 */
105 [_MEDIA] = LAYOUT(
106 KC_MUTE, MC_PLYR, KC_MPLY,
107 KC_J, KC_K, DTP_AVC,
108 KC_LEFT, KC_SPC, DTP_ADJ
109 ),
110 /*
111 Layer: Navigation
112 ┌───────────┐  ┌───────────┐
113 │  Scroll   │  │    Tab    │
114 │  Up   Dn  │  │  Prv  Nxt │
115 ├────────┬──┴──┴──┬────────┤
116 │ ReOTab │ CmdTab │ ClsTab │
117 ├────────┼────────┼────────┤
118 │  PgDn  │   Up   │  PgUp  │
119 ├────────┼────────┼────────┤
120 │  Left  │  Down  │  Rght  │
121 └────────┴────────┴────────┘
122 */
123 [_NAVI] = LAYOUT(
124 REO_TAB, CMD_TAB, CLS_TAB,
125 KC_PGDN, KC_UP, DTP_AVC,
126 KC_LEFT, KC_DOWN, DTP_ADJ
127 ),
128 /*
129 Layer: Macro/Karabiner
130 ┌───────────┐  ┌───────────┐
131 │           │  │           │
132 │   -    +  │  │   .    =  │
133 ├────────┬──┴──┴──┬────────┤
134 │    1   │    2   │    3   │
135 ├────────┼────────┼────────┤
136 │    4   │    5   │    6   │
137 ├────────┼────────┼────────┤
138 │    7   │    8   │    9   │
139 └────────┴────────┴────────┘
140 */
141 [_KARABINER] = LAYOUT(
142 KC_P1, KC_P2, KC_P3,
143 KC_P4, KC_P5, DTP_AVC,
144 KC_P7, KC_P8, DTP_ADJ
145 ),
146 /*
147 Layer: Lightroom Navigation
148 ┌───────────┐  ┌───────────┐
149 │ Thumbnail │  │ Scrl Grid │
150 │ Dec   Inc │  │ Up     Dn │
151 ├────────┬──┴──┴──┬────────┤
152 │ TgRevw │CylGrdVw│ TgEdit │
153 ├────────┼────────┼────────┤
154 │  Start │   Up   │  End   │
155 ├────────┼────────┼────────┤
156 │  Left  │  Down  │  Rght  │
157 └────────┴────────┴────────┘
158 */
159 [LR_NAV] = LAYOUT(
160 TG_REVW, KC_J, TG_EDIT,
161 KC_HOME, KC_UP, DTP_AVC,
162 KC_LEFT, KC_DOWN, DTP_ADJ
163 ),
164 /*
165 Layer: Review/Rate
166 ┌───────────┐  ┌───────────┐
167 │   Stars   │  │   Flag    │
168 │ Dec   Inc │  │ Dec   Inc │
169 ├────────┬──┴──┴──┬────────┤
170 │ TgLNav │ Yellow │ TgEdit │
171 ├────────┼────────┼────────┤
172 │ NoStar │  Green │ UnFlag │
173 ├────────┼────────┼────────┤
174 │  Left  │  Blue  │  Rght  │
175 └────────┴────────┴────────┘
176 */
177 [LR_REVIEW] = LAYOUT(
178 TG_LNAV, KC_7, TG_EDIT,
179 KC_0, KC_8, DTP_AVC,
180 KC_LEFT, KC_6, DTP_ADJ
181 ),
182 /*
183 Layer: Edit/Develop
184 ┌───────────┐  ┌───────────┐
185 │  Sliders  │  │   Value   │
186 │ Prv   Nxt │  │ Dec   Inc │
187 ├────────┬──┴──┴──┬────────┤
188 │ TgRevw │ Bf/Aft │ TgLNav │
189 ├────────┼────────┼────────┤
190 │ FlgRjt │  Undo  │ FlgPkd │
191 ├────────┼────────┼────────┤
192 │  Left  │  Redo  │  Rght  │
193 └────────┴────────┴────────┘
194 */
195 [LR_EDIT] = LAYOUT(
196 TG_REVW, KC_BSLS, TG_LNAV,
197 KC_X, MC_UNDO, DTP_AVC,
198 KC_LEFT, MC_REDO, DTP_ADJ
199 ),
200 /*
201 Layer: Light
202 ┌───────────┐  ┌───────────┐
203 │  RGB Hue  │  │  RGB Sat  │
204 │ Prv   Nxt │  │ Dec   Inc │
205 ├────────┬──┴──┴──┬────────┤
206 │ RGBTgl │  Val+  │ TgLNav │
207 ├────────┼────────┼────────┤
208 │  Mode- │  Val-  │  Mode+ │
209 ├────────┼────────┼────────┤
210 │ LyrTgl │ NxtThm │  XXXX  │
211 └────────┴────────┴────────┘
212 */
213 [_LIGHT] = LAYOUT(
214 RGB_TOG, RGB_VAI, TG_LGHT,
215 RGB_RMOD,RGB_VAD, RGB_MOD,
216 RGB_LYR, RGB_THM, XXXXXXX
217 ),
218 /*
219 Layer: ADJUST
220 ┌───────────┐  ┌───────────┐
221 │    XXXX   │  │   XXXX    │
222 │           │  │           │
223 ├────────┬──┴──┴──┬────────┤
224 │  MAKE  │ Reeder │  Light │
225 ├────────┼────────┼────────┤
226 │  Media │  Navi  │  Macro │
227 ├────────┼────────┼────────┤
228 │ LR Rvw │ LR Nav │ LR Edt │
229 └────────┴────────┴────────┘
230 */
231 [_ADJUST] = LAYOUT(
232 QM_MAKE, DF_REDR, TG_LGHT,
233 DF_MEDA, DF_NAVI, DF_KBNR,
234 TG_REVW, TG_LNAV, TG_EDIT
235 ),
236};
237
238void keyboard_post_init_keymap(void){
239 // Debug to Console by default
240 debug_enable = true;
241}
242
243/**
244 * Encoder
245 */
246const uint16_t PROGMEM encoders[][2][2] = {
247 [_REEDER] = {{ KC_K, KC_J }, { KC_P, KC_N }},
248 [_MEDIA] = {{ KC_VOLD, KC_VOLU }, { KC_MPRV, KC_MNXT }},
249 [_NAVI] = {{ MC_WH_U, MC_WH_D }, { PRV_TAB, NXT_TAB }},
250 [_KARABINER] = {{ KC_PMNS, KC_PPLS }, { KC_PDOT, KC_PEQL }},
251 [LR_NAV] = {{ KC_MINS, KC_EQL }, { KC_PGDN, KC_PGUP }},
252 [LR_REVIEW] = {{ KC_LBRC, KC_RBRC }, { G(KC_DOWN), G(KC_UP) }},
253 [LR_EDIT] = {{ KC_COMM, KC_DOT }, { KC_MINS, KC_EQL }},
254};
255
256void encoder_update_user(uint8_t index, bool clockwise) {
257 uint8_t layer = get_highest_layer(layer_state);
258
259 switch (layer) {
260 case _AUDIO:
261 #ifdef AUDIO_ENABLE
262 #endif
263 break;
264 case _LIGHT:
265 #ifdef RGBLIGHT_ENABLE
266 switch (index) {
267 case 0:
268 if (clockwise) {
269 rgblight_increase_hue();
270 } else {
271 rgblight_decrease_hue();
272 }
273 break;
274 case 1:
275 if (clockwise) {
276 rgblight_increase_sat();
277 } else {
278 rgblight_decrease_sat();
279 }
280 break;
281 }
282 #endif
283 break;
284 default:
285 tap_code16(pgm_read_word(&encoders[layer][index][clockwise]));
286 break;
287 }
288}
289
290/**
291 * Keycodes
292 */
293bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
294 switch (keycode) {
295 case TG_LNAV:
296 if (!record->event.pressed) {
297 tap_code(KC_G);
298 layer_move(LR_NAV);
299 }
300 break;
301 case TG_REVW:
302 if (!record->event.pressed) {
303 tap_code(KC_E);
304 layer_move(LR_REVIEW);
305 }
306 break;
307 case TG_EDIT:
308 if (!record->event.pressed) {
309 tap_code(KC_D);
310 layer_move(LR_EDIT);
311 }
312 break;
313 }
314 return true;
315}
316
317/**
318 * Layer Switch
319 */
320layer_state_t layer_state_set_keymap (layer_state_t state) {
321 switch (get_highest_layer(state)) {
322 case LR_NAV:
323 #if defined(RGBLIGHT_ENABLE)
324 rgb_layer_helper(HSV_TEAL);
325 #endif
326 break;
327 case LR_REVIEW:
328 #if defined(RGBLIGHT_ENABLE)
329 rgb_layer_helper(HSV_CYAN);
330 #endif
331 break;
332 case LR_EDIT:
333 #if defined(RGBLIGHT_ENABLE)
334 rgb_layer_helper(HSV_AZURE);
335 #endif
336 break;
337 default:
338 break;
339 }
340 return state;
341}
342
343/**
344 * Tap Dances
345 */
346void process_tap_dance_keycode (bool reset, uint8_t toggle_layer) {
347 uint16_t keycode = 0;
348 switch (toggle_layer) {
349 case _LIGHT:
350 switch (get_highest_layer(layer_state)) {
351 case _REEDER:
352 case _MEDIA:
353 keycode = KC_L;
354 break;
355 case _NAVI:
356 keycode = KC_PGUP;
357 break;
358 case _KARABINER:
359 keycode = KC_P6;
360 break;
361 case LR_NAV:
362 keycode = KC_END;
363 case LR_REVIEW:
364 keycode = KC_U;
365 case LR_EDIT:
366 keycode = KC_P;
367 break;
368 }
369 break;
370 case _ADJUST:
371 switch (get_highest_layer(layer_state)) {
372 case _REEDER:
373 keycode = G(KC_3);
374 break;
375 case _KARABINER:
376 keycode = KC_P9;
377 break;
378 case _MEDIA:
379 case _NAVI:
380 case LR_NAV:
381 case LR_REVIEW:
382 case LR_EDIT:
383 keycode = KC_RGHT;
384 break;
385 }
386 break;
387 }
388 if (!reset) {
389 register_code16(keycode);
390 } else {
391 unregister_code16(keycode);
392 }
393}
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md b/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md
new file mode 100644
index 000000000..54e460c2d
--- /dev/null
+++ b/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md
@@ -0,0 +1,107 @@
1# brandonschlack's Macropad/Lightroom layout for BDN9
2##### 2 encoders required
3
4![brandonschlack BDN9](https://i.imgur.com/pai9M0m.jpg)
5
6I built this pad to match my Lightroom photo editing workflow using
7[Lightroom Classic Keyboard shortcuts](https://helpx.adobe.com/lightroom-classic/help/keyboard-shortcuts.html), and added on general macropad layers along the way.
8
9I use macOS, so shortcuts and macros are configured as such. Encoder functionality is in the header of the tables, as clockwise/counterclockwise.
10
11---
12
13## Macropad Layers
14
15### Reeder Layer
16This layer is used for browsing [Reeder](https://reederapp.com/), an awesome RSS reader for Mac
17
18| Prev/Next Item | **Knobs** | Prev/Next Subscription |
19| --- | --- | --- |
20| Open Item in Browser | Star Item/Save for Later | Sync |
21| Command+Tab | Toggle Read Status | Clear Read Items |
22| Starred Items | Unread Items | All Items |
23
24
25### Media Layer
26This layer is used for media controls. Player button is a hotkey to focus the current media player with [BeardedSpice](https://beardedspice.github.io/)
27
28| Volume Down/Up | **Knobs** | Prev/Next Track |
29| --- | --- | --- |
30| Mute | Current Player | Play/Pause |
31| YouTube Rewind 10s (J) | YouTube Play/Pause (K) | YouTube Forward 10s (L) |
32| Left | Space | Right |
33
34
35### Navigation Layer
36This layer is used for general window navigation around macOS
37
38| Scroll Up/Down | **Knobs** | Next/Prev Tab |
39| --- | --- | --- |
40| Reopen Tab | Cmd+Tab | Close Tab |
41| Page Down | Up | Page Up |
42| Left | Down | Right |
43
44
45### Macro Layer
46This layer is used to send generic macro keys, meant to be remapped based on current app with [Karabiner](https://pqrs.org/osx/karabiner/)
47
48| +/- | **Knobs** | =/. |
49| --- | --- | --- |
50| 1 | 2 | 3 |
51| 4 | 5 | 6 |
52| 7 | 8 | 9 |
53
54
55## Lightroom Layers
56
57### LR Navigation Layer
58This layer is used for navigating Grid View in the Library Module.
59
60| Inc/Dec Thumbnail Size | **Knobs** | Scroll Up/Dn Grid Thumbnails |
61| --- | --- | --- |
62| Review Layer | Cycle Grid View options | Edit Layer |
63| Start of Grid View | Up | End of Grid View |
64| Left | Down | Right |
65
66
67### Lightroom Review Layer
68This layer is used for Reviewing, Rating, and Culling images with the Loupe View in the Library Module.
69
70| Inc/Dec Star Rating | **Knobs** | Inc/Dec Flag Status |
71| --- | --- | --- |
72| LR Navigation Layer | Yellow Label | Edit Layer |
73| Remove Star Rating | Green Label | Unflag Photo |
74| Left | Blue Label | Right |
75
76
77### Lightroom Edit Layer
78This layer is used for editing photos in the Develop Module
79
80| Next/Prev Basic Panel Settings | **Knobs** | Inc/Dec Selected Slider |
81| --- | --- | --- |
82| Review Layer | Toggle Before View | LR Navigation Layer |
83| Flag Rejected | Undo | Flag Picked |
84| Left | Redo | Right |
85
86
87## Meta Layers
88
89### Light Layer
90This layer is used to control lighting for the pad. Currently nothing is saved in EEPROM, so it will reset after power loss. Also currently my userspace layer colors take priority until I build out that feature. This layer is accessed with a double tap of the middle right key via [tap dance](https://docs.qmk.fm/#/feature_tap_dance). A triple tap of the middle right key will also toggle lights on/off.
91
92| Inc/Dec RGB Hue | **Knobs** | Inc/Dec RGB Saturation |
93| --- | --- | --- |
94| RGB Toggle | RGB Value Increase | Toggle Layer Off |
95| RGB Mode Prev | RGB Value Decrease | RGB Mode Next |
96| RGB Layer Indication | Cycle RGB Themes | XXX |
97
98
99### Adjust Layer
100This layer is used as a meta layer for the pad. This layer is accessed with a double tap of the bottom right key via [tap dance](https://docs.qmk.fm/#/feature_tap_dance).
101
102| XXX | **Knobs** | XXX |
103| --- | --- | --- |
104| MAKE | **Reeder** Layer | **Light** Layer |
105| **Media** Layer | **Navigation** Layer | **Keypad** Layer |
106| **Lightroom Review** Layer | **Lightroom Navigation** Layer | **Lightroom Edit** Layer |
107
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk b/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..847ef9d36
--- /dev/null
+++ b/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,11 @@
1# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
2IS_MACROPAD = yes
3
4# Use dfu bootloader for Elite-C
5BOOTLOADER = atmel-dfu
6
7# Build Options
8MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
9COMMAND_ENABLE = no # Disable Command, breaks with Mouse Keys set to constant.
10BACKLIGHT_ENABLE = no # No backlights installed
11TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c b/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..b0e4d5214
--- /dev/null
+++ b/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,67 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19enum romac_layers {
20 NUMPAD = 0,
21 FN,
22 NUMLOCK,
23 KARABINER
24};
25
26#define DF_NMPD DF(NUMPAD)
27#define DF_NMLK DF(NUMLOCK)
28#undef DF_KBNR
29#define DF_KBNR DF(KARABINER)
30
31const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
32
33 [NUMPAD] = LAYOUT(
34 KC_P7, KC_P8, KC_P9, \
35 KC_P4, KC_P5, KC_P6, \
36 KC_P1, KC_P2, KC_P3, \
37 OSL(FN), KC_P0, KC_PDOT \
38 ),
39
40 [FN] = LAYOUT(
41 KC_PSLS, KC_PAST, KC_BSPC, \
42 KC_TRNS, KC_TRNS, KC_PMNS, \
43 DF_NMLK, DF_KBNR, KC_PPLS, \
44 KC_TRNS, TG_ADJT, KC_PENT \
45 ),
46
47 [NUMLOCK] = LAYOUT(
48 KC_HOME, KC_UP, KC_PGUP, \
49 KC_LEFT, CMD_TAB, KC_RGHT, \
50 KC_END, KC_DOWN, KC_PGDN, \
51 DF_NMPD, KC_INS, KC_DEL \
52 ),
53
54 [KARABINER] = LAYOUT(
55 KC_F13, KC_F14, KC_F15, \
56 KC_F16, KC_F17, KC_F18, \
57 KC_F19, KC_F20, KC_F21, \
58 LT(_ADJUST,KC_F22), KC_F23, KC_F24 \
59 ),
60
61 [_ADJUST] = LAYOUT(
62 QM_MAKE, EEP_RST, XXXXXXX, \
63 XXXXXXX, XXXXXXX, XXXXXXX, \
64 DF_NMPD, DF_NMLK, DF_KBNR, \
65 KC_TRNS, XXXXXXX, XXXXXXX \
66 )
67};
diff --git a/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk b/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..719dbee40
--- /dev/null
+++ b/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,8 @@
1# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
2IS_MACROPAD = yes
3
4# Use dfu bootloader for Elite-C
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/launchpad/keymaps/brandonschlack/config.h b/keyboards/launchpad/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..6aaf996e5
--- /dev/null
+++ b/keyboards/launchpad/keymaps/brandonschlack/config.h
@@ -0,0 +1,32 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18/* Underlight Configuration */
19#ifdef RGB_DI_PIN
20 #undef RGB_DI_PIN
21 #define RGB_DI_PIN F4
22 #undef RGBLED_NUM
23 #define RGBLED_NUM 2 // Number of LEDs
24#endif
25#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
26#define RGBLIGHT_HUE_STEP 10
27#define RGBLIGHT_SAT_STEP 17
28#define RGBLIGHT_VAL_STEP 17
29
30/* Mouse Keys Configuration */
31#define MK_3_SPEED
32#define MK_W_INTERVAL_UNMOD 20
diff --git a/keyboards/launchpad/keymaps/brandonschlack/keymap.c b/keyboards/launchpad/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..1ef77ccc6
--- /dev/null
+++ b/keyboards/launchpad/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,213 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19/**
20 * Layer Names
21 */
22#define _REEDER _BASE
23enum bdn9_layers {
24 _MEDIA = KEYMAP_LAYERS,
25 _NAVI,
26 _KARABINER
27};
28
29/**
30 * Keycodes & Macros
31 */
32#define DF_REDR DF(_REEDER) // Set Default Layer to Reeder shortcuts
33#define DF_MEDA DF(_MEDIA) // Set Default Layer to Media controls
34#define DF_NAVI DF(_NAVI) // Set Default Layer to Navigation shortcuts
35#define DF_KBNR DF(_KARABINER) // Set Default Layer to Basic Macro keys
36
37// Tap Dances
38enum launchpad_dances {
39 TD_SHLD_LGHT = 0,
40 TD_SHLD_ADJT,
41 TD_REDR_H
42};
43//Tap Dance Definitions
44qk_tap_dance_action_t tap_dance_actions[] = {
45 [TD_SHLD_LGHT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _LIGHT),
46 [TD_SHLD_ADJT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _ADJUST),
47 [TD_REDR_H] = ACTION_TAP_DANCE_DOUBLE(KC_H, KC_R)
48};
49
50const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
51
52/* Reeder
53 * ┌──────┬──────┐
54 * │CmdTab│ View │
55 * ├──────┼──────┤
56 * │PrvSub│PrvItm│
57 * ├──────┼──────┤
58 * │NxtSub│NxtItm│
59 * ├──────┼──────┤
60 * │ Clr │ Sync │
61 * └──────┴──────┘
62 */
63[_REEDER] = LAYOUT( \
64 CMD_TAB, TD(TD_REDR_H), \
65 KC_P, KC_K, \
66 KC_N, KC_J, \
67 TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
68),
69
70/* Media
71 * ┌──────┬──────┐
72 * │ Mute │ Play │
73 * ├──────┼──────┤
74 * │ Vol+ │PrvTrk│
75 * ├──────┼──────┤
76 * │ Vol- │NxtTrk│
77 * ├──────┼──────┤
78 * │ Spce │ Plyr │
79 * └──────┴──────┘
80 */
81[_MEDIA] = LAYOUT( \
82 KC_MUTE, KC_MPLY, \
83 KC_VOLU, KC_MNXT, \
84 KC_VOLD, KC_MPRV, \
85 TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
86),
87
88/* Navigation
89 * ┌──────┬──────┐
90 * │ PTab │ NTab │
91 * ├──────┼──────┤
92 * │ SclL │ SclU │
93 * ├──────┼──────┤
94 * │ SclR │ SclD │
95 * ├──────┼──────┤
96 * │LstTab│ClsTab│
97 * └──────┴──────┘
98 */
99[_NAVI] = LAYOUT( \
100 PRV_TAB, NXT_TAB, \
101 MC_WH_L, MC_WH_U, \
102 MC_WH_R, MC_WH_D, \
103 TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
104),
105
106/* Macro
107 * ┌──────┬──────┐
108 * │ 1 │ 2 │
109 * ├──────┼──────┤
110 * │ 3 │ 4 │
111 * ├──────┼──────┤
112 * │ 5 │ 6 │
113 * ├──────┼──────┤
114 * │ 7 │ 8 │
115 * └──────┴──────┘
116 */
117[_KARABINER] = LAYOUT( \
118 KC_P1, KC_P2, \
119 KC_P3, KC_P4, \
120 KC_P5, KC_P6, \
121 TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
122),
123
124/* Lights
125 * ┌──────┬──────┐
126 * │ THM+ │ HUE+ │
127 * ├──────┼──────┤
128 * │ SAT- │ SAT+ │
129 * ├──────┼──────┤
130 * │ VAL- │ VAL+ │
131 * ├──────┼──────┤
132 * │ XXXX │ Mde+ │
133 * └──────┴──────┘
134 */
135[_LIGHT] = LAYOUT( \
136 RGB_THM, RGB_HUI, \
137 RGB_SAD, RGB_SAI, \
138 RGB_VAD, RGB_VAI, \
139 XXXXXXX, RGB_MOD \
140),
141
142/* Adjust
143 * ┌──────┬──────┐
144 * │ Make │ Rset │
145 * ├──────┼──────┤
146 * │ Redr │ Meda │
147 * ├──────┼──────┤
148 * │ Navi │ Mcro │
149 * ├──────┼──────┤
150 * │ Lght │ XXXX │
151 * └──────┴──────┘
152 */
153[_ADJUST] = LAYOUT( \
154 QM_MAKE, RESET, \
155 DF_REDR, DF_MEDA, \
156 DF_NAVI, DF_KBNR, \
157 TG_LGHT, XXXXXXX \
158)
159
160};
161
162void matrix_init_keymap(void) {
163}
164
165// Runs once after keyboard initializes
166void keyboard_post_init_keymap(void) {
167};
168
169/**
170 * Tap Dances
171 */
172void process_tap_dance_keycode (bool reset, uint8_t toggle_layer) {
173 uint16_t keycode = 0;
174 switch (toggle_layer) {
175 case _LIGHT:
176 switch (get_highest_layer(layer_state)) {
177 case _REEDER:
178 keycode = KC_L;
179 break;
180 case _MEDIA:
181 keycode = KC_SPC;
182 break;
183 case _NAVI:
184 keycode = REO_TAB;
185 break;
186 case _KARABINER:
187 keycode = KC_P7;
188 break;
189 }
190 break;
191 case _ADJUST:
192 switch (get_highest_layer(layer_state)) {
193 case _REEDER:
194 keycode = KC_R;
195 break;
196 case _MEDIA:
197 keycode = MC_PLYR;
198 break;
199 case _NAVI:
200 keycode = CLS_TAB;
201 break;
202 case _KARABINER:
203 keycode = KC_P8;
204 break;
205 }
206 break;
207 }
208 if (!reset) {
209 register_code16(keycode);
210 } else {
211 unregister_code16(keycode);
212 }
213}
diff --git a/keyboards/launchpad/keymaps/brandonschlack/readme.md b/keyboards/launchpad/keymaps/brandonschlack/readme.md
new file mode 100644
index 000000000..a91a1b80a
--- /dev/null
+++ b/keyboards/launchpad/keymaps/brandonschlack/readme.md
@@ -0,0 +1,31 @@
1# brandonschlack's layout for Launchpad
2Fun little macropad build, with an awesome case from [StrataKB](https://stratakb.com/store/cases/launchpad-v2-full-case).
3
4## Media Layer
5This layer is used for media controls. Player button is a hotkey to focus the current media player with [BeardedSpice](https://beardedspice.github.io/)
6| | |
7|:-:|:-:|
8| Mute | Play/Pause |
9| Vol + | Next Track |
10| Vol - | Prev Track |
11| | Current Player |
12---
13
14## Keypad Layer
15This layer is used to send keypad keys, meant to be remapped based on current app with [Karabiner](https://pqrs.org/osx/karabiner/)
16| | |
17|:-:|:-:|
18| 1 | 2 |
19| 3 | 4 |
20| 5 | 6 |
21| 7 | 8 |
22---
23
24## Magic Layer
25This layer is used as a meta layer for the pad. This layer is accessed by holding key in Row 3, Col 0
26| | |
27|:-:|:-:|
28| MAKE | RESET |
29| **Media** Layer | **Keypad** Layer|
30| XXX | XXX |
31| ___ | XXX |
diff --git a/keyboards/launchpad/keymaps/brandonschlack/rules.mk b/keyboards/launchpad/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..ac92af928
--- /dev/null
+++ b/keyboards/launchpad/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,13 @@
1# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
2IS_MACROPAD = yes
3
4# Use dfu bootloader for Elite-C
5BOOTLOADER = atmel-dfu
6
7# Build Options
8BOOTMAGIC_ENABLE = lite
9RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
10CONSOLE_ENABLE = yes # Console for debug(+400)
11MOUSEKEY_ENABLE = yes # Use mouse keys for scrolling.
12COMMAND_ENABLE = no # Disable Command, breaks with Mouse Keys set to constant.
13TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/maartenwut/wonderland/keymaps/brandonschlack/config.h b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..38383cffc
--- /dev/null
+++ b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/config.h
@@ -0,0 +1,19 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define USE_LEDS_FOR_LAYERS
19#define STOPLIGHT_LED
diff --git a/keyboards/maartenwut/wonderland/keymaps/brandonschlack/keymap.c b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/keymap.c
new file mode 100755
index 000000000..ca7bd773c
--- /dev/null
+++ b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,170 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19// LEDs
20#define TOP_LED B1
21#define MIDDLE_LED B2
22#define BOTTOM_LED B3
23
24const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25[_BASE] = LAYOUT( \
26 KC_HOME, KC_ESC, 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_BSLS, KC_GRV, \
27 KC_PGUP, 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_BSPC, \
28 KC_PGDN, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
29 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1, \
30 KC_LOPT, KC_LCMD, SPC_RAI, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT \
31),
32[_FN1] = LAYOUT( \
33 KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD, \
34 KC_VOLU, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_END, KC_DELT, \
35 KC_VOLD, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY, \
36 _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, RGT_SFT, _______, \
37 _______, _______, _______, _______, _______, _______, _______ \
38
39),
40[_FN2] = LAYOUT( \
41 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
42 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
45 _______, _______, _______, _______, _______, _______, _______ \
46
47),
48[_ADJUST] = LAYOUT( \
49 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
50 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
51 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
52 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
53 _______, _______, _______, _______, _______, _______, _______ \
54
55)
56/*
57[_BLANK] = LAYOUT( \
58 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
59 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
60 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
61 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
62 _______, _______, _______, _______, _______, _______, _______ \
63
64)
65*/
66};
67
68#ifdef STOPLIGHT_LED
69bool is_led_stoplight_active = false;
70uint8_t led_stoplight_index = 0;
71uint16_t led_stoplight_timer = 0;
72void matrix_scan_led_stoplight(void);
73
74void led_stoplight_start(void) {
75 writePinHigh(TOP_LED);
76 writePinHigh(MIDDLE_LED);
77 writePinHigh(BOTTOM_LED);
78
79 is_led_stoplight_active = true;
80 led_stoplight_timer = timer_read();
81};
82
83void led_stoplight_set(pin_t pin) {
84 writePinLow(pin);
85};
86
87void led_stoplight_end(void) {
88 // Reset timer and status variables
89 led_stoplight_index = 0;
90 is_led_stoplight_active = false;
91 led_stoplight_timer = 0;
92 led_update_kb(host_keyboard_led_state());
93};
94
95void matrix_scan_led_stoplight(void) {
96 if (is_led_stoplight_active) {
97 if (timer_elapsed(led_stoplight_timer) > (1000 * (led_stoplight_index + 1))) {
98 switch (led_stoplight_index){
99 case 0:
100 led_stoplight_set(TOP_LED);
101 led_stoplight_index++;
102 break;
103 case 1:
104 led_stoplight_set(MIDDLE_LED);
105 led_stoplight_index++;
106 break;
107 case 2:
108 led_stoplight_set(BOTTOM_LED);
109 led_stoplight_index++;
110 break;
111 default:
112 led_stoplight_index = 0;
113 is_led_stoplight_active = false;
114 led_stoplight_timer = 0;
115 led_update_kb(host_keyboard_led_state());
116 break;
117 }
118 }
119 }
120};
121#endif
122
123void keyboard_post_init_keymap(void) {
124#ifdef STOPLIGHT_LED
125 led_stoplight_start();
126#endif
127};
128
129void matrix_scan_keymap(void) {
130#ifdef STOPLIGHT_LED
131 matrix_scan_led_stoplight();
132#endif
133};
134
135#ifdef USE_LEDS_FOR_LAYERS
136// example of how to use LEDs as layer indicators
137static uint8_t top = 0;
138static uint8_t middle = 0;
139
140layer_state_t layer_state_set_keymap(layer_state_t state) {
141 top = middle = 0;
142 state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
143
144 switch (get_highest_layer(state)) {
145 case _FN1:
146 top = 1;
147 break;
148 case _FN2:
149 middle = 1;
150 break;
151 case _ADJUST:
152 top = 1;
153 middle = 1;
154 break;
155 default: // for any other layers, or the default layer
156 break;
157 }
158 return state;
159}
160
161// override kb level function
162bool led_update_user(led_t usb_led) {
163 if (!is_led_stoplight_active) {
164 writePin(TOP_LED, !top);
165 writePin(MIDDLE_LED, !middle);
166 writePin(BOTTOM_LED, !usb_led.caps_lock); // still use bottom for Caps Lock
167 };
168 return false; // we are using LEDs for something else override kb
169}
170#endif
diff --git a/keyboards/maartenwut/wonderland/keymaps/brandonschlack/rules.mk b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/rules.mk
new file mode 100755
index 000000000..80361c34f
--- /dev/null
+++ b/keyboards/maartenwut/wonderland/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,8 @@
1# Build Options
2# comment out to disable the options.
3#
4MOUSEKEY_ENABLE = yes # Mouse keys
5CONSOLE_ENABLE = no # Console for debug
6COMMAND_ENABLE = no # Commands for debug and configuration
7VELOCIKEY_ENABLE = no
8
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h b/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..f277bcfa3
--- /dev/null
+++ b/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h
@@ -0,0 +1,30 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define USE_LEDS_FOR_LAYERS
19#define STOPLIGHT_LED
20
21// LEDs
22#define TOP_LED B2
23#define MIDDLE_LED C15
24#define BOTTOM_LED B9
25// #define LED_PIN_FLIP
26#ifdef LED_PIN_FLIP
27 #define LED_ON(flag) !flag
28#else
29 #define LED_ON(flag) flag
30#endif
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c b/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..d3ab5ed11
--- /dev/null
+++ b/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,270 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19/**
20 * Layer Names
21 *
22 * Layers mostly used for macro keys
23 */
24#define _REEDER _M1
25#define _MAIL _M2
26#define _REEDER_FN _M1_FN1
27#define _MAIL_FN _M2_FN1
28
29/**
30 * Keycodes & Macros
31 */
32#define TG_BASE TO(_BASE)
33#define TG_REDR TO(_REEDER)
34#define TG_MAIL TO(_MAIL)
35
36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
37/* Base
38 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
39 * │Ply│ │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│         │& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│
40 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
41 * │VlU│ │Tab  │ Q │ W │ E │ R │ T │         │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│
42 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
43 * │VlD│ │HyCaps│ A │ S │ D │ F │ G │         │ H │ J │ K │ L │: ;│" '│   Enter│
44 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
45 *       │LShift  │ Z │ X │ C │ V │ B │     │ B │ N │ M │< ,│> .│? /│  Shft│Fn │
46 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
47 *       │Opt  │     │Cmd  │Spc/Lwr│Ctrl│   │   Spc/Rai│  Cmd│           │  Opt│
48 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
49 */
50[_BASE] = LAYOUT_all( \
51 KC_MPLY, KC_ESC, 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_BSLS, KC_GRV, \
52 KC_VOLU, 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_BSPC, \
53 KC_VOLD, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
54 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LOWER, KC_RSFT, KC_SLSH, \
55 KC_LOPT, KC_LCMD, SPC_LWR, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT \
56),
57/* Reeder
58 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
59 * │ H │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
60 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
61 * │ K │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
62 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
63 * │ J │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
64 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
65 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
66 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
67 *       │     │     │     │       │    │   │          │     │           │     │
68 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
69 */
70[_REEDER] = LAYOUT_all( \
71 KC_H, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
72 KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
73 KC_J, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
74 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
75 _______, _______, _______, _______, _______, _______, _______ \
76
77),
78/* Mail
79 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
80 * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
81 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
82 * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
83 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
84 * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
85 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
86 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
87 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
88 *       │     │     │     │       │    │   │          │     │           │     │
89 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
90 */
91[_MAIL] = LAYOUT_all( \
92 G(KC_BSPC), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
93 KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
94 KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
95 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
96 _______, _______, _______, _______, _______, _______, _______ \
97
98),
99/* Lower
100 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
101 * │Mut│ │Mke│ F1│ F2│ F3│ F4│ F5│ F6│         │ F7│ F8│ F9│F10│F11│F12│LHP│SLP│
102 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
103 * │Nxt│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │PgU│Hom│End│  Del│
104 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
105 * │Prv│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │Prv│Nxt│PgD│ ↑ │   Play │
106 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
107 *       │        │LYR│Thm│   │   │   │     │   │   │   │   │ ← │ ↓ │→ Shft│   │
108 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
109 *       │     │     │     │       │    │   │          │     │           │     │
110 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
111 */
112[_LOWER] = LAYOUT_all( \
113 KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD, \
114 KC_MNXT, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, KC_DELT, \
115 KC_MPRV, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY, \
116 _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, _______, RGT_SFT, KC_DOWN, \
117 _______, _______, _______, _______, _______, _______, _______ \
118
119),
120/* Reeder Function
121 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
122 * │ L │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
123 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
124 * │ P │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
125 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
126 * │ N │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
127 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
128 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
129 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
130 *       │     │     │     │       │    │   │          │     │           │     │
131 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
132 */
133[_REEDER_FN] = LAYOUT_all( \
134 KC_L, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
135 KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
136 KC_N, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
137 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
138 _______, _______, _______, _______, _______, _______, _______ \
139
140),
141/* Mail
142 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
143 * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
144 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
145 * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
146 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
147 * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
148 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
149 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
150 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
151 *       │     │     │     │       │    │   │          │     │           │     │
152 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
153 */
154[_MAIL_FN] = LAYOUT_all( \
155 KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
156 A(G(KC_LBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
157 A(G(KC_RBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
158 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
159 _______, _______, _______, _______, _______, _______, _______ \
160
161),
162/* Raise
163 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
164 * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
165 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
166 * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
167 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
168 * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
169 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
170 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
171 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
172 *       │     │     │     │       │    │   │          │     │           │     │
173 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
174 */
175[_RAISE] = LAYOUT_all( \
176 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
177 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
178 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
179 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
180 _______, _______, _______, _______, _______, _______, _______ \
181
182),
183/* Adjust
184 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
185 * │Bse│ │Mke│   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
186 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
187 * │Rdr│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │   │   │   │     │
188 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
189 * │Mai│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │   │   │   │   │        │
190 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
191 *       │        │LYR│Thm│   │EEP│Rst│     │Rst│   │   │   │   │   │      │   │
192 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
193 *       │     │     │     │       │    │   │          │     │           │     │
194 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
195 */
196[_ADJUST] = LAYOUT_all( \
197 TG_BASE, QM_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
198 TG_REDR, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
199 TG_MAIL, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, \
200 _______, RGB_LYR, RGB_THM, _______, EEP_RST, RESET, RESET, _______, _______, _______, _______, _______, _______, _______, \
201 _______, _______, _______, _______, _______, _______, _______ \
202
203)
204/* Layout
205 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
206 * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
207 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
208 * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
209 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
210 * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
211 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
212 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
213 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
214 *       │     │     │     │       │    │   │          │     │           │     │
215 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
216 */
217/*
218[_BLANK] = LAYOUT( \
219 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
220 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
221 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
222 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
223 _______, _______, _______, _______, _______, _______, _______ \
224
225)
226*/
227};
228
229layer_state_t layer_state_set_keymap(layer_state_t state) {
230 state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
231 state = update_tri_layer_state(state, _REEDER, _LOWER, _REEDER_FN);
232 state = update_tri_layer_state(state, _MAIL, _LOWER, _MAIL_FN);
233 return state;
234}
235
236#ifdef USE_LEDS_FOR_LAYERS
237bool led_update_keymap(led_t led_state) {
238 writePin(TOP_LED, LED_ON(IS_LAYER_ON(_REEDER) || IS_LAYER_ON(_MAIL))); // Use for Macro Layer
239 writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 2
240 writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
241 return false; // Override default set by KB
242}
243#endif
244
245#ifdef ENCODER_ENABLE
246void encoder_update_user(uint8_t index, bool clockwise) {
247 if (index == 0) {
248 if (clockwise) {
249 tap_code(KC_VOLU);
250 } else {
251 tap_code(KC_VOLD);
252 }
253 }
254 else if (index == 1) {
255 if (clockwise) {
256 tap_code(KC_LEFT);
257 } else {
258 tap_code(KC_RGHT);
259 }
260 }
261 else if (index == 2) {
262 if (clockwise) {
263 tap_code(KC_UP);
264 } else {
265 tap_code(KC_DOWN);
266 }
267 }
268}
269
270 #endif
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md b/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md
new file mode 100644
index 000000000..54d78d873
--- /dev/null
+++ b/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md
@@ -0,0 +1 @@
# The default keymap for adelais
diff --git a/keyboards/nightmare/keymaps/brandonschlack/keymap.c b/keyboards/nightmare/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..16da41845
--- /dev/null
+++ b/keyboards/nightmare/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,195 @@
1/* Copyright 2019 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19/**
20 * Layer Names
21 *
22 * Layers mostly used for macro keys
23 */
24#define _REEDER _M1
25#define _NAV _M2
26#define _MOUSE _M3
27
28/**
29 * Keycodes & Macros
30 */
31#define TG_BASE TO(_BASE)
32#define TG_REDR TO(_REEDER)
33#define TG_NAV TO(_NAV)
34#define TG_MOUS TO(_MOUSE)
35
36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
37/**
38 * Base
39 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
40 * │Hom│││Esc│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│Bck│
41 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
42 * │PgU│││Tab │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│
43 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
44 * │PgD│││Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│Shft│ Fn│
45 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
46 * │End││││││││Opt│Cmd │                           │ Cmd│Ctl││││││
47 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
48 */
49[_BASE] = LAYOUT_default( \
50 KC_HOME, KC_ESC, 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_BSPC, \
51 KC_PGUP, HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
52 KC_PGDN, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1, \
53 KC_END, KC_LOPT, KC_LCMD, SPC_RAI, KC_RCMD, KC_RCTL \
54),
55
56/**
57 * Reeder
58 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
59 * │ P │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
60 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
61 * │ K │││    │   │   │   │   │   │   │   │   │   │   │   │      │
62 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
63 * │ J │││      │   │   │   │   │   │   │   │   │   │   │    │   │
64 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
65 * │ N ││││││││   │    │                           │    │   ││││││
66 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
67 */
68
69[_REEDER] = LAYOUT_default( \
70 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
71 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
72 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
73 _______, _______, _______, _______, _______, _______ \
74),
75
76/**
77 * Nav
78 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
79 * │ → │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
80 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
81 * │ ↑ │││    │   │   │   │   │   │   │   │   │   │   │   │      │
82 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
83 * │ ↓ │││      │   │   │   │   │   │   │   │   │   │   │    │   │
84 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
85 * │ ← ││││││││   │    │                           │    │   ││││││
86 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
87 */
88[_NAV] = LAYOUT_default( \
89 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
90 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
91 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
92 _______, _______, _______, _______, _______, _______ \
93),
94
95/**
96 * Mouse
97 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
98 * │WhU│││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
99 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
100 * │ ↑ │││    │   │   │   │   │   │   │   │   │   │   │   │      │
101 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
102 * │ ↓ │││      │   │   │   │   │   │   │   │   │   │   │    │   │
103 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
104 * │WhD││││││││   │    │                           │    │   ││││││
105 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
106 */
107[_MOUSE] = LAYOUT_default( \
108 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
109 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
110 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
111 _______, _______, _______, _______, _______, _______ \
112),
113
114/**
115 * Lower
116 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
117 * │Nxt│││Del│BrD│BrU│Msn│LHP│   │   │   │   │   │   │ ↑ │Mut│SlD│
118 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
119 * │VlU│││    │   │   │NxW│PvT│Bck│Fwd│NxT│   │   │ ← │ → │ Play │
120 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
121 * │VlD│││SftCap│   │   │   │1PX│1Ps│   │   │   │   │ ↓ │    │   │
122 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
123 * │Prv││││││││   │    │                           │    │   ││││││
124 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
125 */
126[_LOWER] = LAYOUT_default( \
127 KC_MNXT, KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD, \
128 KC_VOLU, _______, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY, \
129 KC_VOLD, SF_CAPS, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______, \
130 KC_MPRV, _______, _______, _______, _______, _______ \
131),
132
133/**
134 * Raise
135 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
136 * │Nxt│││~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│   │
137 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
138 * │VlU│││    │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │   │   │      │
139 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
140 * │VlD│││      │ F7│ F8│ F9│F10│F11│F12│   │   │   │| \│    │   │
141 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
142 * │Prv││││││││   │    │                           │    │   ││││││
143 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
144 */
145[_RAISE] = LAYOUT_default( \
146 KC_MNXT, 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, _______, \
147 KC_VOLU, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______, \
148 KC_VOLD, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______, \
149 KC_MPRV, _______, _______, _______, _______, _______ \
150),
151
152/**
153 * Adjust
154 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
155 * │Bse│││Mke│   │   │EEP│RST│   │   │   │   │   │   │   │   │   │
156 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
157 * │Rdr│││    │   │   │   │   │   │   │   │   │   │   │   │      │
158 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
159 * │Nav│││      │   │   │   │   │   │   │   │   │   │   │    │   │
160 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
161 * │Mse││││││││   │    │                           │    │   ││││││
162 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
163 */
164[_ADJUST] = LAYOUT_default( \
165 TG_BASE, QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
166 TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
167 TG_NAV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
168 TG_MOUS, _______, _______, _______, _______, _______ \
169),
170
171/**
172 * Blank
173 * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
174 * │   │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
175 * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
176 * │   │││    │   │   │   │   │   │   │   │   │   │   │   │      │
177 * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
178 * │   │││      │   │   │   │   │   │   │   │   │   │   │    │   │
179 * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
180 * │   ││││││││   │    │                           │    │   ││││││
181 * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
182 */
183/*
184[] = LAYOUT_default( \
185 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
186 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
187 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
188 _______, _______, _______, _______, _______, _______ \
189),
190*/
191};
192
193layer_state_t layer_state_set_keymap(layer_state_t state) {
194 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
195}
diff --git a/keyboards/nightmare/keymaps/brandonschlack/readme.md b/keyboards/nightmare/keymaps/brandonschlack/readme.md
new file mode 100644
index 000000000..94c77833f
--- /dev/null
+++ b/keyboards/nightmare/keymaps/brandonschlack/readme.md
@@ -0,0 +1,20 @@
1# brandonschlack's Nightmare Keymap
2
3![Base, Raise, Lower](https://i.imgur.com/08759vK.png)
4
5## Features
6- Mod-Taps & Layer-Taps
7 - Spacebar is used as a Fn button when held to access missing numrow and F-keys on the **RAISE** layer.
8 - Holding `Tab` acts as `HYPER`, or `Shift+Control+Option+Command`. I use this set global shortcuts, such as `HYPER+w` for my **W**indow manager Moom.
9- **Lower** Layer
10 - `Lower+Esc` for `Delete`
11 - `Lower+LShift` for `Caps Lock`. Holding `Lower+LShift` still acts as `LShift`
12 - Arrow keys as `Lower+[`,`;`,`'`,`/` for `Up`,`Left`,`Right`,`Down`.
13 - Media keys as `Lower+Enter`,`Home`,`End` for `Play/Pause`,`Next Track`,`Prev Track`
14 - Volume controls as `Lower+]`,`Page Up`,`Page Down` for `Mute`,`Volume Up`,`Volume Down`
15- MacOS shortcuts on **Lower** Layer
16 - Display Brightness as `Lower+Q`,`W` for `Brightness Down`, `Brightness Up`
17 - Mission Control as `Lower+E`
18 - Launchpad as `Lower+R`
19 - Sleep Display as `Lower+Backspace`
20 - Browser
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h b/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..8a9aa040f
--- /dev/null
+++ b/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h
@@ -0,0 +1,30 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define USE_LEDS_FOR_LAYERS
19#define STOPLIGHT_LED
20
21#define TOP_LED B1
22#define MIDDLE_LED B2
23#define BOTTOM_LED B3
24
25// #define LED_PIN_FLIP
26#ifdef LED_PIN_FLIP
27 #define LED_ON(flag) !flag
28#else
29 #define LED_ON(flag) flag
30#endif
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c b/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..a92fcbfec
--- /dev/null
+++ b/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,95 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19// Tap Dance declarations
20enum {
21 TD_LR_BRC,
22 TD_SD_QUOT
23};
24
25// Tap Dance definitions
26qk_tap_dance_action_t tap_dance_actions[] = {
27 // Tap once for LBracket, twice for RBracket
28 [TD_LR_BRC] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),
29 // Tap once for Single Quote, twice for Double Quote
30 [TD_SD_QUOT] = ACTION_TAP_DANCE_DOUBLE(KC_QUOT, KC_DQT)
31};
32
33#define LWR_B LT(_LOWER, KC_B)
34#define LWR_EQL LT(_LOWER, KC_EQL)
35#define TD_BRC TD(TD_LR_BRC)
36#define TD_QUOT TD(TD_SD_QUOT)
37
38const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
39 [_BASE] = LAYOUT( \
40 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_BRC, KC_BSPC, \
41 HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_QUOT, KC_ENT, \
42 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, LWR_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, LOWER, \
43 KC_LCTL, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_ROPT, KC_RCTL \
44 ),
45
46 [_LOWER] = LAYOUT( \
47 KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, MC_SLPD, \
48 _______, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, KC_LEFT, KC_RGHT, KC_MPLY, \
49 SF_CAPS, KC_MPRV, KC_VOLD, KC_MNXT, _______, PX_AFLL, OP_AFLL, _______, _______, KC_END, KC_DOWN, KC_PGDN, _______, \
50 _______, _______, _______, _______, _______, _______, _______, _______ \
51 ),
52
53 [_RAISE] = LAYOUT( \
54 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, KC_0, KC_RBRC, _______, \
55 _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_MINS, KC_PLUS, KC_4, KC_5, KC_6, KC_SCLN, _______, \
56 _______, KC_F9, KC_F10, KC_F11, KC_F12, LWR_EQL, KC_EQL, KC_1, KC_2, KC_3, _______, KC_BSLS, _______, \
57 _______, _______, _______, _______, _______, _______, _______, _______ \
58 ),
59
60 [_ADJUST] = LAYOUT( \
61 QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, \
62 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
63 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
64 _______, _______, _______, _______, _______, _______, _______, _______ \
65 )
66
67/*
68 [BLANK] = LAYOUT( \
69 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
70 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
71 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
72 _______, _______, _______, _______, _______, _______, _______, _______ \
73 )
74 */
75};
76
77void keyboard_pre_init_user(void) {
78 setPinOutput(TOP_LED);
79 setPinOutput(MIDDLE_LED);
80 setPinOutput(BOTTOM_LED);
81}
82
83layer_state_t layer_state_set_keymap(layer_state_t state) {
84 state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
85 return state;
86}
87
88#ifdef USE_LEDS_FOR_LAYERS
89bool led_update_keymap(led_t led_state) {
90 writePin(TOP_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 1
91 writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN2))); // Use for Layer 2
92 writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
93 return false; // Override default set by KB
94}
95#endif
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk b/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk
new file mode 100644
index 000000000..c1dfab0c7
--- /dev/null
+++ b/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,2 @@
1BACKLIGHT_ENABLE = no
2TAP_DANCE_ENABLE = yes
diff --git a/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c b/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..4180e9464
--- /dev/null
+++ b/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,115 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base
21 * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
22 * │Hom│Tab  │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│ BsPc│
23 * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
24 * │PgU│HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │" '│   Enter│
25 * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
26 * │PgD│Shift   │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ ↑Shft│
27 * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
28 * │End│Ctrl│Opt│Cmd │        Space-Raise        │←Cmd│↓Lw│→Opt│
29 * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
30 */
31[_BASE] = LAYOUT_base_kit_all( \
32 KC_HOME, 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_BSPC, \
33 KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, XXXXXXX, KC_ENT, \
34 KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, UP_RSFT, \
35 KC_END, KC_LCTL, KC_LOPT, KC_LCMD, XXXXXXX, SPC_RAI, XXXXXXX, LFT_CMD, DWN_LWR, RGT_OPT \
36),
37
38/* Lower
39 * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
40 * │Nxt│Del  │BrD│BrU│Msn│LHP│   │   │   │   │   │ ↑ │Mut│ SlpD│
41 * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
42 * │VlU│HyCaps│   │   │NxW│PvT│Bck│Fwd│NxT│   │ ← │ → │    Play│
43 * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
44 * │VlD│        │   │   │   │1PX│1Ps│   │   │   │ ↓ │   │      │
45 * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
46 * │Prv│    │   │    │                           │    │   │    │
47 * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
48 */
49[_LOWER] = LAYOUT_base_kit_all( \
50 KC_MNXT, KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD, \
51 KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, KC_LEFT, KC_RGHT, XXXXXXX, KC_MPLY, \
52 KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, KC_DOWN, _______, _______, \
53 KC_MPRV, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______ \
54),
55
56/* Raise
57 * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
58 * │Nxt│~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│} ]│     │
59 * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
60 * │VlU│      │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │: ;│        │
61 * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
62 * │VlD│        │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│| \│ ⇞Shft│
63 * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
64 * │Prv│    │   │    │                           │↖︎Cmd│⇟Fn│↘︎Opt│
65 * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
66 */
67[_RAISE] = LAYOUT_base_kit_all( \
68 KC_MNXT, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, _______, \
69 KC_VOLU, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, KC_SCLN, XXXXXXX, _______, \
70 KC_VOLD, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, KC_BSLS, PGU_SFT, \
71 KC_MPRV, _______, _______, _______, XXXXXXX, _______, XXXXXXX, HOM_CMD, PGD_LWR, END_OPT \
72),
73
74/* Adjust
75 * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
76 * │   │Make │   │   │EEP│RST│   │   │   │   │   │   │   │     │
77 * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
78 * │   │      │   │   │   │   │   │   │   │   │   │   │        │
79 * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
80 * │   │        │   │   │   │   │   │   │   │   │   │   │      │
81 * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
82 * │   │    │   │    │                           │    │   │    │
83 * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
84 */
85[_ADJUST] = LAYOUT_base_kit_all( \
86 _______, QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, \
87 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, \
88 _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
89 _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______ \
90),
91
92/* Blank layer
93 * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
94 * │   │     │   │   │   │   │   │   │   │   │   │   │   │     │
95 * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
96 * │   │      │   │   │   │   │   │   │   │   │   │   │        │
97 * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
98 * │   │        │   │   │   │   │   │   │   │   │   │   │      │
99 * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
100 * │   │    │   │    │                           │    │   │    │
101 * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
102 */
103/*
104[_BLANK] = LAYOUT_base_kit_all( \
105 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
106 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, \
107 _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
108 _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______ \
109),
110*/
111};
112
113layer_state_t layer_state_set_keymap(layer_state_t state) {
114 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
115}
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/config.h b/keyboards/tkc/osav2/keymaps/brandonschlack/config.h
new file mode 100644
index 000000000..e74d93c35
--- /dev/null
+++ b/keyboards/tkc/osav2/keymaps/brandonschlack/config.h
@@ -0,0 +1,30 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define USE_LEDS_FOR_LAYERS
19#define STOPLIGHT_LED
20
21#define TOP_LED C7
22#define MIDDLE_LED C6
23#define BOTTOM_LED B6
24
25// #define LED_PIN_FLIP
26#ifdef LED_PIN_FLIP
27 #define LED_ON(flag) !flag
28#else
29 #define LED_ON(flag) flag
30#endif
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c b/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c
new file mode 100755
index 000000000..5e3debd8d
--- /dev/null
+++ b/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,243 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19/**
20 * Layer Names
21 *
22 * Layers mostly used for macro keys
23 */
24#define _REEDER _M1
25#define _MAIL _M2
26#define _REEDER_FN _M1_FN1
27#define _MAIL_FN _M2_FN1
28
29/**
30 * Keycodes & Macros
31 */
32#define TG_BASE TO(_BASE)
33#define TG_REDR TO(_REEDER)
34#define TG_MAIL TO(_MAIL)
35
36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
37/* Base
38 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
39 * │Ply│ │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│         │& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│
40 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
41 * │VlU│ │Tab  │ Q │ W │ E │ R │ T │         │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│
42 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
43 * │VlD│ │HyCaps│ A │ S │ D │ F │ G │         │ H │ J │ K │ L │: ;│" '│   Enter│
44 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
45 *       │LShift  │ Z │ X │ C │ V │ B │     │ B │ N │ M │< ,│> .│? /│  Shft│Fn │
46 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
47 *       │Opt  │     │Cmd  │Spc/Lwr│Ctrl│   │   Spc/Rai│  Cmd│           │  Opt│
48 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
49 */
50[_BASE] = LAYOUT_all( \
51 KC_MPLY, KC_ESC, 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_BSLS, KC_GRV, \
52 KC_VOLU, 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_BSPC, \
53 KC_VOLD, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
54 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, LOWER, \
55 KC_LOPT, KC_LCMD, SPC_LWR, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT \
56),
57/* Reeder
58 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
59 * │ H │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
60 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
61 * │ K │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
62 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
63 * │ J │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
64 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
65 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
66 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
67 *       │     │     │     │       │    │   │          │     │           │     │
68 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
69 */
70[_REEDER] = LAYOUT_all( \
71 KC_H, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
72 KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
73 KC_J, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
74 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
75 _______, _______, _______, _______, _______, _______, _______ \
76
77),
78/* Mail
79 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
80 * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
81 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
82 * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
83 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
84 * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
85 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
86 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
87 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
88 *       │     │     │     │       │    │   │          │     │           │     │
89 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
90 */
91[_MAIL] = LAYOUT_all( \
92 G(KC_BSPC), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
93 KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
94 KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
95 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
96 _______, _______, _______, _______, _______, _______, _______ \
97
98),
99/* Lower
100 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
101 * │Mut│ │Mke│ F1│ F2│ F3│ F4│ F5│ F6│         │ F7│ F8│ F9│F10│F11│F12│LHP│SLP│
102 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
103 * │Nxt│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │PgU│Hom│End│  Del│
104 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
105 * │Prv│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │Prv│Nxt│PgD│ ↑ │   Play │
106 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
107 *       │        │LYR│Thm│   │   │   │     │   │   │   │   │ ← │ ↓ │→ Shft│   │
108 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
109 *       │     │     │     │       │    │   │          │     │           │     │
110 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
111 */
112[_LOWER] = LAYOUT_all( \
113 KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD, \
114 KC_MNXT, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, KC_DELT, \
115 KC_MPRV, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY, \
116 _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, RGT_SFT, _______, \
117 _______, _______, _______, _______, _______, _______, _______ \
118
119),
120/* Reeder Function
121 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
122 * │ L │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
123 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
124 * │ P │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
125 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
126 * │ N │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
127 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
128 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
129 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
130 *       │     │     │     │       │    │   │          │     │           │     │
131 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
132 */
133[_REEDER_FN] = LAYOUT_all( \
134 KC_L, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
135 KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
136 KC_N, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
137 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
138 _______, _______, _______, _______, _______, _______, _______ \
139
140),
141/* Mail
142 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
143 * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
144 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
145 * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
146 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
147 * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
148 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
149 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
150 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
151 *       │     │     │     │       │    │   │          │     │           │     │
152 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
153 */
154[_MAIL_FN] = LAYOUT_all( \
155 KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
156 A(G(KC_LBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
157 A(G(KC_RBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
158 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
159 _______, _______, _______, _______, _______, _______, _______ \
160
161),
162/* Raise
163 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
164 * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
165 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
166 * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
167 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
168 * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
169 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
170 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
171 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
172 *       │     │     │     │       │    │   │          │     │           │     │
173 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
174 */
175[_RAISE] = LAYOUT_all( \
176 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
177 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
178 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
179 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
180 _______, _______, _______, _______, _______, _______, _______ \
181
182),
183/* Adjust
184 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
185 * │Bse│ │Mke│   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
186 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
187 * │Rdr│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │   │   │   │     │
188 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
189 * │Mai│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │   │   │   │   │        │
190 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
191 *       │        │LYR│Thm│   │EEP│Rst│     │Rst│   │   │   │   │   │      │   │
192 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
193 *       │     │     │     │       │    │   │          │     │           │     │
194 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
195 */
196[_ADJUST] = LAYOUT_all( \
197 TG_BASE, QM_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
198 TG_REDR, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
199 TG_MAIL, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, \
200 _______, RGB_LYR, RGB_THM, _______, EEP_RST, RESET, RESET, _______, _______, _______, _______, _______, _______, _______, \
201 _______, _______, _______, _______, _______, _______, _______ \
202
203)
204/* Layout
205 * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
206 * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
207 * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
208 * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
209 * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
210 * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
211 * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
212 *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
213 *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
214 *       │     │     │     │       │    │   │          │     │           │     │
215 *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
216 */
217/*
218[_BLANK] = LAYOUT( \
219 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
220 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
221 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
222 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
223 _______, _______, _______, _______, _______, _______, _______ \
224
225)
226*/
227};
228
229layer_state_t layer_state_set_keymap(layer_state_t state) {
230 state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
231 state = update_tri_layer_state(state, _REEDER, _LOWER, _REEDER_FN);
232 state = update_tri_layer_state(state, _MAIL, _LOWER, _MAIL_FN);
233 return state;
234}
235
236#ifdef USE_LEDS_FOR_LAYERS
237bool led_update_keymap(led_t led_state) {
238 writePin(TOP_LED, LED_ON(IS_LAYER_ON(_REEDER) || IS_LAYER_ON(_MAIL))); // Use for Macro Layer
239 writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 2
240 writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
241 return false; // Override default set by KB
242}
243#endif
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk b/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk
new file mode 100755
index 000000000..9c896e0d8
--- /dev/null
+++ b/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,9 @@
1# Build Options
2# comment out to disable the options.
3#
4BACKLIGHT_ENABLE = no
5MOUSEKEY_ENABLE = yes # Mouse keys
6CONSOLE_ENABLE = no # Console for debug
7COMMAND_ENABLE = no # Commands for debug and configuration
8VELOCIKEY_ENABLE = no
9
diff --git a/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c b/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c
new file mode 100644
index 000000000..1193fa32c
--- /dev/null
+++ b/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,132 @@
1/* Copyright 2020 Brandon Schlack
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17#include "brandonschlack.h"
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20/* Base Layer
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
22 * │Esc│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │Bsp│
23 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
24 * │HyTb│ A │ S │ D │ F │ G │ H │ J │ K │ L │ Enter│
25 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
26 * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│?/Lw│
27 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
28 * │││││Opt │Cmd │         SpcRse         │Ctrl│││││
29 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
30 */
31[_BASE] = LAYOUT( \
32 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
33 HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, \
34 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SLH_LWR, \
35 KC_LOPT, KC_LCMD, XXXXXXX, SPC_RAI, XXXXXXX, XXXXXXX, KC_LCTL \
36),
37/* Lower
38 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
39 * │Del│BrD│BrU│Msn│LHP│   │   │   │Hom│ ↑ │PgU│SlD│
40 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
41 * │    │Mut│VlU│NxW│PvT│Bck│Fwd│NxT│ ← │ → │  Ply │
42 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
43 * │SfCaps│Prv│VlD│Nxt│1PX│1Ps│   │End│ ↓ │PgD│    │
44 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
45 * │││││    │    │                        │    │││││
46 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
47 */
48[_LOWER] = LAYOUT( \
49 KC_DELT, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, MC_SLPD, \
50 _______, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, KC_LEFT, KC_RGHT, KC_MPLY, \
51 SF_CAPS, KC_MPRV, KC_VOLD, KC_MNXT, PX_AFLL, OP_AFLL, _______, KC_END, KC_DOWN, KC_PGDN, _______, \
52 _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______ \
53),
54/* Raise
55 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
56 * │~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│   │
57 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
58 * │    │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│: ;│   " '│
59 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
60 * │      │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│|\Lw│
61 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
62 * │││││    │    │                        │    │││││
63 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
64 */
65/*
66[_RAISE] = LAYOUT( \
67 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \
68 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, \
69 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, BSL_LWR, \
70 _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______ \
71), */
72/* Raise
73 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
74 * │~ `│ F1│ F2│ F3│ F4│{ [│} ]│& 7│* 8│( 9│) 0│   │
75 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
76 * │    │ F5│ F6│ F7│ F8│_ -│ + │$ 4│% 5│^ 6│   " '│
77 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
78 * │      │ F9│F10│F11│F12│+ =│! 1│@ 2│# 3│: ;│|\Lw│
79 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
80 * │││││    │    │                        │    │││││
81 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
82 */
83[_RAISE] = LAYOUT( \
84 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, KC_0, _______, \
85 _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_MINS, KC_PLUS, KC_4, KC_5, KC_6, KC_QUOT, \
86 _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_EQL, KC_1, KC_2, KC_3, KC_SCLN, BSL_LWR, \
87 _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______ \
88),
89/* Adjust/Macro
90 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
91 * │Mke│   │   │EEP│RST│   │   │   │   │   │   │   │
92 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
93 * │    │   │   │   │   │   │   │   │   │   │      │
94 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
95 * │      │   │   │   │   │   │   │   │   │   │    │
96 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
97 * │││││    │    │                        │    │││││
98 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
99 */
100
101[_ADJUST] = LAYOUT( \
102 QM_MAKE, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, \
103 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
104 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
105 _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______ \
106)
107/* Blank Layer
108 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
109 * │   │   │   │   │   │   │   │   │   │   │   │   │
110 * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
111 * │    │   │   │   │   │   │   │   │   │   │      │
112 * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
113 * │      │   │   │   │   │   │   │   │   │   │    │
114 * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
115 * │││││    │    │                        │    │││││
116 * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
117 */
118/*
119[BLANK] = LAYOUT( \
120 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
121 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
122 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
123 _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______ \
124)
125*/
126
127};
128
129layer_state_t layer_state_set_keymap(layer_state_t state) {
130 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
131}
132