aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlfred Maler <alfrdmalr@gmail.com>2020-03-03 13:13:42 -0500
committerGitHub <noreply@github.com>2020-03-03 10:13:42 -0800
commited6586e25bd854f445193566150439b25853f831 (patch)
tree19e1b0973782f7d11eab0c85f7ab3e54e540b390
parentacaecb4f94e3f1dc45cce53b10d1b89052b25ca7 (diff)
downloadqmk_firmware-ed6586e25bd854f445193566150439b25853f831.tar.gz
qmk_firmware-ed6586e25bd854f445193566150439b25853f831.zip
[Keymap] Feature/alfrdmalr/keymap update (#8174)
* WIP do not merge * first pass at custom preonic layout * add auto shift and reset via leader key * Update readme * update copyright notice * formatting changes * fix: use MO instead of process_record_user * added backslash and moved grave position * remove extraneous 'j' characer in NUMPAD template * update template formatting * remove process_record_user * swap "!" with "@" * fix readme formatting * update readme layout image * restore settings layer * add windows minimize sequence * fix: switch to correct seq function for three-key sequence * fix: missing semicolon * refactor: move keymap to userspace and generic 5x12 layout * add numlock to numpad layer * add readme * update readme formatting * remove unused wrappers from layout keymap * update readme title to reflect new location * remove alfrdmalr directory from preonic/keymaps * add ortho 4x12 support * add 'trilayer' settings and update keymap * update SYMBOLS layer to SYMBOL * remove minimize sequence * clean up user config * add brightness controls * update settings ascii * moved some symbols around to make vim/linux smoother
-rw-r--r--layouts/community/ortho_4x12/alfrdmalr/config.h5
-rw-r--r--layouts/community/ortho_4x12/alfrdmalr/keymap.c44
-rw-r--r--layouts/community/ortho_4x12/alfrdmalr/rules.mk0
-rw-r--r--layouts/community/ortho_5x12/alfrdmalr/keymap.c4
-rw-r--r--users/alfrdmalr/alfrdmalr.c59
-rw-r--r--users/alfrdmalr/alfrdmalr.h98
-rw-r--r--users/alfrdmalr/readme.md23
7 files changed, 171 insertions, 62 deletions
diff --git a/layouts/community/ortho_4x12/alfrdmalr/config.h b/layouts/community/ortho_4x12/alfrdmalr/config.h
new file mode 100644
index 000000000..58c9d57ab
--- /dev/null
+++ b/layouts/community/ortho_4x12/alfrdmalr/config.h
@@ -0,0 +1,5 @@
1#pragma once
2
3#ifdef AUDIO_ENABLE
4 #define STARTUP_SONG SONG(NO_SOUND)
5#endif \ No newline at end of file
diff --git a/layouts/community/ortho_4x12/alfrdmalr/keymap.c b/layouts/community/ortho_4x12/alfrdmalr/keymap.c
new file mode 100644
index 000000000..14b763396
--- /dev/null
+++ b/layouts/community/ortho_4x12/alfrdmalr/keymap.c
@@ -0,0 +1,44 @@
1#include "alfrdmalr.h"
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4
5// QWERTY
6[_QWERTY] = LAYOUT_ortho_4x12_wrapper(
7 K10, ____QWERTY_L1____, ____QWERTY_R1____, K1B,
8 K20, ____QWERTY_L2____, ____QWERTY_R2____, K2B,
9 K30, ____QWERTY_L3____, ____QWERTY_R3____, K3B,
10 K40, _____BASE_L4_____, _____BASE_R4_____, K4B
11),
12
13// SYMBOL
14[_SYMBOL] = LAYOUT_ortho_4x12_wrapper(
15 K10_SYM, ____SYMBOL_L1____, ____SYMBOL_R1____, K1B_SYM,
16 K20_SYM, ____SYMBOL_L2____, ____SYMBOL_R2____, K2B_SYM,
17 K30_SYM, ____SYMBOL_L3____, ____SYMBOL_R3____, K3B_SYM,
18 K40_SYM, ____SYMBOL_L4____, ____SYMBOL_R4____, K4B_SYM
19),
20
21// NAVIGATION
22[_NAVIGATION] = LAYOUT_ortho_4x12_wrapper(
23 K10_NAV, __NAVIGATION_L1__, __NAVIGATION_R1__, K1B_NAV,
24 K20_NAV, __NAVIGATION_L2__, __NAVIGATION_R2__, K2B_NAV,
25 K30_NAV, __NAVIGATION_L3__, __NAVIGATION_R3__, K3B_NAV,
26 K40_NAV, __NAVIGATION_L4__, __NAVIGATION_R4__, K4B_NAV
27),
28
29// NUMPAD
30[_NUMPAD] = LAYOUT_ortho_4x12_wrapper(
31 K10_NUM, ____NUMPAD_L1____, ____NUMPAD_R1____, K1B_NUM,
32 K20_NUM, ____NUMPAD_L2____, ____NUMPAD_R2____, K2B_NUM,
33 K30_NUM, ____NUMPAD_L3____, ____NUMPAD_R3____, K3B_NUM,
34 K40_NUM, ____NUMPAD_L4____, ____NUMPAD_R4____, K4B_NUM
35),
36
37// SETTINGS
38[_SETTINGS] = LAYOUT_ortho_4x12_wrapper(
39 K10_SET, ___SETTINGS_L1___, ___SETTINGS_R1___, K1B_SET,
40 K20_SET, ___SETTINGS_L2___, ___SETTINGS_R2___, K2B_SET,
41 K30_SET, ___SETTINGS_L3___, ___SETTINGS_R3___, K3B_SET,
42 K40_SET, ___SETTINGS_L4___, ___SETTINGS_R4___, K4B_SET
43)
44}; \ No newline at end of file
diff --git a/layouts/community/ortho_4x12/alfrdmalr/rules.mk b/layouts/community/ortho_4x12/alfrdmalr/rules.mk
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/layouts/community/ortho_4x12/alfrdmalr/rules.mk
diff --git a/layouts/community/ortho_5x12/alfrdmalr/keymap.c b/layouts/community/ortho_5x12/alfrdmalr/keymap.c
index c140128d8..2cd5105b2 100644
--- a/layouts/community/ortho_5x12/alfrdmalr/keymap.c
+++ b/layouts/community/ortho_5x12/alfrdmalr/keymap.c
@@ -11,8 +11,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
11 K40, _____BASE_L4_____, _____BASE_R4_____, K4B 11 K40, _____BASE_L4_____, _____BASE_R4_____, K4B
12), 12),
13 13
14// SYMBOLS 14// SYMBOL
15[_SYMBOLS] = LAYOUT_ortho_5x12_wrapper( 15[_SYMBOL] = LAYOUT_ortho_5x12_wrapper(
16 K00_SYM, ____NUMROW_L0____, ____NUMROW_R0____, K0B_SYM, 16 K00_SYM, ____NUMROW_L0____, ____NUMROW_R0____, K0B_SYM,
17 K10_SYM, ____SYMBOL_L1____, ____SYMBOL_R1____, K1B_SYM, 17 K10_SYM, ____SYMBOL_L1____, ____SYMBOL_R1____, K1B_SYM,
18 K20_SYM, ____SYMBOL_L2____, ____SYMBOL_R2____, K2B_SYM, 18 K20_SYM, ____SYMBOL_L2____, ____SYMBOL_R2____, K2B_SYM,
diff --git a/users/alfrdmalr/alfrdmalr.c b/users/alfrdmalr/alfrdmalr.c
index 39d2b62e0..18ce8bad7 100644
--- a/users/alfrdmalr/alfrdmalr.c
+++ b/users/alfrdmalr/alfrdmalr.c
@@ -35,10 +35,61 @@ void matrix_scan_user(void) {
35 SEQ_FIVE_KEYS(KC_R, KC_E, KC_S, KC_E, KC_T) { 35 SEQ_FIVE_KEYS(KC_R, KC_E, KC_S, KC_E, KC_T) {
36 reset_keyboard(); 36 reset_keyboard();
37 } 37 }
38 // minimize window (Windows)
39 SEQ_THREE_KEYS(KC_M, KC_I, KC_N) {
40 SEND_STRING(SS_LALT(" ")"n");
41 }
42 leader_end(); 38 leader_end();
43 } 39 }
40}
41
42bool syml_pressed = false;
43bool symr_pressed = false;
44bool settings_active = false;
45bool symbols_active = false;
46bool process_record_user(uint16_t keycode, keyrecord_t *record) {
47 switch(keycode) {
48 case SYML:
49 if (record->event.pressed) {
50 syml_pressed = true;
51 } else {
52 syml_pressed = false;
53 }
54 break;
55 case SYMR:
56 if (record->event.pressed) {
57 symr_pressed = true;
58 } else {
59 symr_pressed = false;
60 }
61 break;
62 }
63
64 // trilayer-esque behavior. If both SYMBOL layer keys are held, then the
65 // settings layer is open. If only one is held, SYMBOL is active.
66 if (syml_pressed && symr_pressed) {
67 layer_on(_SETTINGS);
68 settings_active = true;
69 } else if (syml_pressed || symr_pressed) {
70 if (settings_active) {
71 layer_off(_SETTINGS);
72 settings_active = false;
73 }
74 layer_on(_SYMBOL);
75 symbols_active = true;
76 } else {
77 if (symbols_active) {
78 layer_off(_SYMBOL);
79 symbols_active = false;
80 }
81 }
82
83 return true;
84}
85
86// allow access to the settings layer to turn music mode back off
87bool music_mask_user(uint16_t keycode) {
88 switch (keycode) {
89 case SYML:
90 case SYMR:
91 return false;
92 default:
93 return true;
94 }
44} \ No newline at end of file 95} \ No newline at end of file
diff --git a/users/alfrdmalr/alfrdmalr.h b/users/alfrdmalr/alfrdmalr.h
index 922b7ca40..1989fb11a 100644
--- a/users/alfrdmalr/alfrdmalr.h
+++ b/users/alfrdmalr/alfrdmalr.h
@@ -20,16 +20,24 @@ along with this program. If not, see <http://www.gnu/org/licenses/>.
20 20
21enum shared_layers { 21enum shared_layers {
22 _QWERTY, 22 _QWERTY,
23 _SETTINGS, 23 _SYMBOL,
24 _SYMBOLS,
25 _NAVIGATION, 24 _NAVIGATION,
26 _NUMPAD 25 _NUMPAD,
26 _SETTINGS
27}; 27};
28 28
29// KEYCODES ============================================================================ 29// KEYCODES ============================================================================
30
31// the SYML and SYMR keycodes are just used to activate the symbols layer.
32// they're distinct so that I can hit both of them to activate a trilayer
33enum alfrdmalr_keycodes {
34 SYML = SAFE_RANGE,
35 SYMR
36};
37
30#define NUMSPACE LT(_NUMPAD, KC_SPC) 38#define NUMSPACE LT(_NUMPAD, KC_SPC)
31#define NAVLAYER MO(_NAVIGATION) 39#define NAVLAYER MO(_NAVIGATION)
32#define SYMLAYER MO(_SYMBOLS) 40#define SYMLAYER MO(_SYMBOL)
33#define SETLAYER MO(_SETTINGS) 41#define SETLAYER MO(_SETTINGS)
34#define CTRLSHFT C(KC_LSFT) 42#define CTRLSHFT C(KC_LSFT)
35#define WINUNDO C(KC_Z) 43#define WINUNDO C(KC_Z)
@@ -42,10 +50,12 @@ enum shared_layers {
42#define K41 CTRLSHFT 50#define K41 CTRLSHFT
43#define K42 KC_LGUI 51#define K42 KC_LGUI
44#define K43 KC_LALT 52#define K43 KC_LALT
45#define K44 SYMLAYER 53// #define K44 SYMLAYER
54#define K44 SYML
46#define K45 NUMSPACE 55#define K45 NUMSPACE
47#define K46 NUMSPACE 56#define K46 NUMSPACE
48#define K47 SYMLAYER 57// #define K47 SYMLAYER
58#define K47 SYMR
49#define K48 KC_RALT 59#define K48 KC_RALT
50#define K49 SETLAYER 60#define K49 SETLAYER
51#define K4A MU_TOG 61#define K4A MU_TOG
@@ -86,7 +96,7 @@ enum shared_layers {
86 * ,-----------------------------------------------------------------------------------. 96 * ,-----------------------------------------------------------------------------------.
87 * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BKSP | 97 * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BKSP |
88 * |------+------+------+------+------+------+------+------+------+------+------+------| 98 * |------+------+------+------+------+------+------+------+------+------+------+------|
89 * | TAB | Q | W | E | R | T | Y | U | I | O | P | DEL | 99 * | TAB | Q | W | E | R | T | Y | U | I | O | P | BKSP |
90 * |------+------+------+------+------+------+------+------+------+------+------+------| 100 * |------+------+------+------+------+------+------+------+------+------+------+------|
91 * | NAV | A | S | D | F | G | H | J | K | L | ; | " | 101 * | NAV | A | S | D | F | G | H | J | K | L | ; | " |
92 * |------+------+------+------+------+------+------+------+------+------+------+------| 102 * |------+------+------+------+------+------+------+------+------+------+------+------|
@@ -110,13 +120,13 @@ enum shared_layers {
110 120
111/* NUMPAD ============================================================================== 121/* NUMPAD ==============================================================================
112 * ,-----------------------------------------------------------------------------------. 122 * ,-----------------------------------------------------------------------------------.
113 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | 123 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | TRNS |
114 * |------+------+------+------+------+------+------+------+------+------+------+------| 124 * |------+------+------+------+------+------+------+------+------+------+------+------|
115 * | TRNS | F9 | F10 | F11 | F12 | | NLCK | 7 | 8 | 9 | - | DEL | 125 * | TRNS | F9 | F10 | F11 | F12 | | NLCK | 7 | 8 | 9 | - | TRNS |
116 * |------+------+------+------+------+------+------+------+------+------+------+------| 126 * |------+------+------+------+------+------+------+------+------+------+------+------|
117 * | ESC | F5 | F6 | F7 | F8 | SPC | SPC | 4 | 5 | 6 | + | ENTR | 127 * | ESC | F5 | F6 | F7 | F8 | SPC | SPC | 4 | 5 | 6 | + | ENTR |
118 * |------+------+------+------+------+------+------+------+------+------+------+------| 128 * |------+------+------+------+------+------+------+------+------+------+------+------|
119 * | TRNS | F1 | F2 | F3 | F4 | ALT | CAPS | 1 | 2 | 3 | / | TRNS | 129 * | TRNS | F1 | F2 | F3 | F4 | ALT | | 1 | 2 | 3 | / | TRNS |
120 * |------+------+------+------+------+------+------+------+------+------+------+------| 130 * |------+------+------+------+------+------+------+------+------+------+------+------|
121 * | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | 0 | , | . | * | TRNS | 131 * | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | 0 | , | . | * | TRNS |
122 * `-----------------------------------------------------------------------------------' 132 * `-----------------------------------------------------------------------------------'
@@ -140,7 +150,7 @@ enum shared_layers {
140// - CORE 150// - CORE
141#define ____NUMPAD_R1____ KC_NLCK, KC_7, KC_8, KC_9, KC_MINS 151#define ____NUMPAD_R1____ KC_NLCK, KC_7, KC_8, KC_9, KC_MINS
142#define ____NUMPAD_R2____ KC_SPC, KC_4, KC_5, KC_6, KC_PLUS 152#define ____NUMPAD_R2____ KC_SPC, KC_4, KC_5, KC_6, KC_PLUS
143#define ____NUMPAD_R3____ KC_CAPS, KC_1, KC_2, KC_3, KC_SLSH 153#define ____NUMPAD_R3____ KC_NO, KC_1, KC_2, KC_3, KC_SLSH
144 154
145// - MODS 155// - MODS
146#define ____NUMPAD_R4____ KC_TRNS, KC_0, KC_COMM, KC_DOT, KC_ASTR 156#define ____NUMPAD_R4____ KC_TRNS, KC_0, KC_COMM, KC_DOT, KC_ASTR
@@ -150,15 +160,15 @@ enum shared_layers {
150#define K3B_NUM KC_TRNS 160#define K3B_NUM KC_TRNS
151#define K4B_NUM KC_TRNS 161#define K4B_NUM KC_TRNS
152 162
153/* SYMBOLS ============================================================================= 163/* SYMBOL ==============================================================================
154 * ,-----------------------------------------------------------------------------------. 164 * ,-----------------------------------------------------------------------------------.
155 * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BKSP | 165 * | TRNS | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | TRNS |
156 * |------+------+------+------+------+------+------+------+------+------+------+------| 166 * |------+------+------+------+------+------+------+------+------+------+------+------|
157 * | TRNS | # | $ | { | } | | | ^ | * | | | ~ | TRNS | 167 * | TRNS | ! | @ | { | } | | | ^ | $ | & | | | DEL |
158 * |------+------+------+------+------+------+------+------+------+------+------+------| 168 * |------+------+------+------+------+------+------+------+------+------+------+------|
159 * | TRNS | < | > | ( | ) | | | - | + | & | \ | ` | 169 * | TRNS | < | > | ( | ) | | | - | + | = | \ | ` |
160 * |------+------+------+------+------+------+------+------+------+------+------+------| 170 * |------+------+------+------+------+------+------+------+------+------+------+------|
161 * | TRNS | ! | @ | [ | ] | | | _ | = | % | / | SHFT | 171 * | TRNS | ~ | # | [ | ] | | | _ | * | % | / | TRNS |
162 * |------+------+------+------+------+------+------+------+------+------+------+------| 172 * |------+------+------+------+------+------+------+------+------+------+------+------|
163 * | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | 173 * | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS | TRNS |
164 * `-----------------------------------------------------------------------------------' 174 * `-----------------------------------------------------------------------------------'
@@ -166,9 +176,9 @@ enum shared_layers {
166 176
167// LEFT 177// LEFT
168// - CORE 178// - CORE
169#define ____SYMBOL_L1____ KC_HASH, KC_DOLLAR, KC_LCBR, KC_RCBR, KC_NO 179#define ____SYMBOL_L1____ KC_EXCLAIM, KC_AT, KC_LCBR, KC_RCBR, KC_NO
170#define ____SYMBOL_L2____ KC_LABK, KC_RABK, KC_LPRN, KC_RPRN, KC_NO 180#define ____SYMBOL_L2____ KC_LABK, KC_RABK, KC_LPRN, KC_RPRN, KC_NO
171#define ____SYMBOL_L3____ KC_EXCLAIM, KC_AT, KC_LBRC, KC_RBRC, KC_NO 181#define ____SYMBOL_L3____ KC_TILD, KC_HASH, KC_LBRC, KC_RBRC, KC_NO
172 182
173// - MODS 183// - MODS
174#define ____SYMBOL_L4____ ______TRANS______ 184#define ____SYMBOL_L4____ ______TRANS______
@@ -180,27 +190,27 @@ enum shared_layers {
180 190
181// RIGHT 191// RIGHT
182// - CORE 192// - CORE
183#define ____SYMBOL_R1____ KC_NO, KC_CIRC, KC_ASTR, KC_PIPE, KC_TILD 193#define ____SYMBOL_R1____ KC_NO, KC_CIRC, KC_DOLLAR, KC_AMPR, KC_PIPE
184#define ____SYMBOL_R2____ KC_NO, KC_MINS, KC_PLUS, KC_AMPR, KC_BSLS 194#define ____SYMBOL_R2____ KC_NO, KC_MINS, KC_PLUS, KC_EQL, KC_BSLS
185#define ____SYMBOL_R3____ KC_NO, KC_UNDS, KC_EQL, KC_PERC, KC_SLSH 195#define ____SYMBOL_R3____ KC_NO, KC_UNDS, KC_ASTR, KC_PERC, KC_SLSH
186 196
187// - MODS 197// - MODS
188#define ____SYMBOL_R4____ ______TRANS______ 198#define ____SYMBOL_R4____ ______TRANS______
189#define K0B_SYM KC_TRNS 199#define K0B_SYM KC_TRNS
190#define K1B_SYM KC_TRNS 200#define K1B_SYM KC_DEL
191#define K2B_SYM KC_GRV 201#define K2B_SYM KC_GRV
192#define K3B_SYM KC_TRNS 202#define K3B_SYM KC_TRNS
193#define K4B_SYM KC_TRNS 203#define K4B_SYM KC_TRNS
194 204
195/* NAVIGATION ========================================================================== 205/* NAVIGATION ==========================================================================
196 * ,-----------------------------------------------------------------------------------. 206 * ,-----------------------------------------------------------------------------------.
197 * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BKSP | 207 * | TRNS | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | TRNS |
198 * |------+------+------+------+------+------+------+------+------+------+------+------| 208 * |------+------+------+------+------+------+------+------+------+------+------+------|
199 * | TRNS | | | SPC | F5 | | INS | HOME | END | TAB | DEL | TRNS | 209 * | TRNS | | | SPC | F5 | | INS | HOME | END | TAB | DEL | TRNS |
200 * |------+------+------+------+------+------+------+------+------+------+------+------| 210 * |------+------+------+------+------+------+------+------+------+------+------+------|
201 * | TRNS | SHFT | CTRl | ALT | GUI | | LEFT | DOWN | UP | RGHT | | ENTR | 211 * | TRNS | SHFT | CTRl | ALT | GUI | | LEFT | DOWN | UP | RGHT | | ENTR |
202 * |------+------+------+------+------+------+------+------+------+------+------+------| 212 * |------+------+------+------+------+------+------+------+------+------+------+------|
203 * | TRNS | UNDO | CUT | COPY | PSTE | | SPC | PGDO | PGUP | | | TRNS | 213 * | TRNS | UNDO | CUT | COPY | PSTE | | | PGDO | PGUP | CAPS | | TRNS |
204 * |------+------+------+------+------+------+------+------+------+------+------+------| 214 * |------+------+------+------+------+------+------+------+------+------+------+------|
205 * | TRNS | TRNS | TRNS | TRNS | TRNS | ESC | TRNS | TRNS | TRNS | TRNS | TRNS | 215 * | TRNS | TRNS | TRNS | TRNS | TRNS | ESC | TRNS | TRNS | TRNS | TRNS | TRNS |
206 * `-----------------------------------------------------------------------------------' 216 * `-----------------------------------------------------------------------------------'
@@ -213,7 +223,7 @@ enum shared_layers {
213#define __NAVIGATION_L3__ WINUNDO, WINCUT, WINCOPY, WINPASTE, KC_NO 223#define __NAVIGATION_L3__ WINUNDO, WINCUT, WINCOPY, WINPASTE, KC_NO
214 224
215// - MODS 225// - MODS
216#define __NAVIGATION_L4__ _______, _______, _______, _______, KC_ESC 226#define __NAVIGATION_L4__ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ESC
217#define K00_NAV KC_TRNS 227#define K00_NAV KC_TRNS
218#define K10_NAV KC_TRNS 228#define K10_NAV KC_TRNS
219#define K20_NAV KC_TRNS 229#define K20_NAV KC_TRNS
@@ -224,10 +234,10 @@ enum shared_layers {
224// - CORE 234// - CORE
225#define __NAVIGATION_R1__ KC_INS, KC_HOME, KC_END, KC_TAB, KC_DEL 235#define __NAVIGATION_R1__ KC_INS, KC_HOME, KC_END, KC_TAB, KC_DEL
226#define __NAVIGATION_R2__ KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_NO 236#define __NAVIGATION_R2__ KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_NO
227#define __NAVIGATION_R3__ KC_SPC, KC_PGDN, KC_PGUP, KC_NO, KC_NO 237#define __NAVIGATION_R3__ KC_NO, KC_PGDN, KC_PGUP, KC_CAPS, KC_NO
228 238
229// - MODS 239// - MODS
230#define __NAVIGATION_R4__ KC_ESC, _______, _______, _______, _______ 240#define __NAVIGATION_R4__ KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
231#define K0B_NAV KC_TRNS 241#define K0B_NAV KC_TRNS
232#define K1B_NAV KC_TRNS 242#define K1B_NAV KC_TRNS
233#define K2B_NAV KC_ENT 243#define K2B_NAV KC_ENT
@@ -236,41 +246,41 @@ enum shared_layers {
236 246
237/* SETTINGS ============================================================================ 247/* SETTINGS ============================================================================
238 * ,-----------------------------------------------------------------------------------. 248 * ,-----------------------------------------------------------------------------------.
239 * | | | | | | | | | | | | | 249 * | | | | | | | | | | BRID | BRIU | |
240 * |------+------+------+------+------+------+------+------+------+------+------+------| 250 * |------+------+------+------+------+------+------+------+------+------+------+------|
241 * | | | DBUG | | | | | | | | | | 251 * | | | | | | | | | | | | |
242 * |------+------+------+------+------+-------------+------+------+------+------+------| 252 * |------+------+------+------+------+-------------+------+------+------+------+------|
243 * | | | |Aud on|AudOff|AGnorm|AGswap| | | | | | 253 * | | | | | | | MPRV | MPLY | MUTE | MNXT | | |
244 * |------+------+------+------+------+------|------+------+------+------+------+------| 254 * |------+------+------+------+------+------|------+------+------+------+------+------|
245 * | ASTG |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | | 255 * | ASTG | MUTO | AUOF | AUON | | | | VOLD | VOLU | | | ASTG |
246 * |------+------+------+------+------+------+------+------+------+------+------+------| 256 * |------+------+------+------+------+------+------+------+------+------+------+------|
247 * | | | | | | | | | | | | 257 * | | | | | TRNS | | TRNS | | | | |
248 * `-----------------------------------------------------------------------------------' 258 * `-----------------------------------------------------------------------------------'
249 */ 259 */
250// LEFT 260// LEFT
251// - CORE 261// - CORE
252#define ___SETTINGS_L1___ _______, DEBUG, _______, _______, _______ 262#define ___SETTINGS_L1___ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
253#define ___SETTINGS_L2___ _______, MU_MOD, AU_ON, AU_OFF, AG_NORM 263#define ___SETTINGS_L2___ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
254#define ___SETTINGS_L3___ MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON 264#define ___SETTINGS_L3___ MU_TOG, AU_OFF, AU_ON, KC_NO, KC_NO
255 265
256// - MODS 266// - MODS
257#define ___SETTINGS_L4___ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO 267#define ___SETTINGS_L4___ KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO
258#define K00_SET KC_NO 268#define K00_SET KC_NO
259#define K10_SET KC_NO 269#define K10_SET KC_NO
260#define K20_SET KC_NO 270#define K20_SET KC_NO
261#define K30_SET KC_ASTG 271#define K30_SET KC_ASTG
262#define K40_SET KC_NO 272#define K40_SET KC_NO
263 273
264// RIGHT 274// RIGHT
265// - CORE 275// - CORE
266#define ___SETTINGS_R1___ TERM_ON, TERM_OFF, _______, _______, _______ 276#define ___SETTINGS_R1___ KC_NO, KC_NO, KC_NO, KC_BRID, KC_BRIU
267#define ___SETTINGS_R2___ _______, _______, _______, _______, _______ 277#define ___SETTINGS_R2___ KC_MPRV, KC_MPLY, KC_MUTE, KC_MNXT, KC_NO
268#define ___SETTINGS_R3___ _______, _______, _______, _______, _______ 278#define ___SETTINGS_R3___ KC_NO, KC_VOLD, KC_VOLU, KC_NO, KC_NO
269 279
270// - MODS 280// - MODS
271#define ___SETTINGS_R4___ KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO 281#define ___SETTINGS_R4___ KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO
272#define K0B_SET KC_NO 282#define K0B_SET KC_NO
273#define K1B_SET KC_NO 283#define K1B_SET KC_NO
274#define K2B_SET KC_NO 284#define K2B_SET KC_NO
275#define K3B_SET KC_NO 285#define K3B_SET KC_ASTG
276#define K4B_SET KC_NO \ No newline at end of file 286#define K4B_SET KC_NO
diff --git a/users/alfrdmalr/readme.md b/users/alfrdmalr/readme.md
index d462a5baf..9e5f962bb 100644
--- a/users/alfrdmalr/readme.md
+++ b/users/alfrdmalr/readme.md
@@ -1,6 +1,6 @@
1# alfrdmalr's userspace 1# alfrdmalr's userspace
2## Overview 2## Overview
3The alphanumeric characters and symbols are spread between three main 'typing' layers: REGULAR, NUMPAD, and SYMBOLS. 3The alphanumeric characters and symbols are spread between three main 'typing' layers: REGULAR, NUMPAD, and SYMBOL.
4 4
5A fourth layer, NAVIGATION, contains useful modifiers, shortcuts, and navigation functions like the arrow keys and page up/down. This layer also provides access to the `ENTER` and `ESC` keys. 5A fourth layer, NAVIGATION, contains useful modifiers, shortcuts, and navigation functions like the arrow keys and page up/down. This layer also provides access to the `ENTER` and `ESC` keys.
6 6
@@ -22,26 +22,25 @@ The NUMPAD layer puts a numpad under the right hand, surrounding the home row po
22 22
23This layer also holds the first twelve function keys. 23This layer also holds the first twelve function keys.
24 24
25#### SYMBOLS 25#### SYMBOL
26This layer holds all the symbols that are not accessible from the REGULAR layer. There is some redundancy (for instance, `/` exists in both the REGULAR and SYMBOLS layer; its position, however, remains consistent) but with the exception of single and double quotes, all symbols are available from this layer. 26This layer holds all the symbols that are not accessible from the REGULAR layer. There is some redundancy (for instance, `/` exists in both the REGULAR and SYMBOL layer; its position, however, remains consistent) but with the exception of single and double quotes, all symbols are available from this layer.
27 27
28#### NAVIGATION 28#### NAVIGATION
29The primary function of this layer is to provide arrow keys under hjkl. The surrounding keys contain similar functionality - for instance, the keys directly below `DOWN` and `UP` are `PAGEDOWN` and `PAGEUP`, respectively. `HOME` and `END` are inverted from this convention, simply because I kept hitting the wrong key when trying to jump to the beginning/end of lines when editing text. 29Over time, this layer has become a general utility layer, though its primary function of is still to provide arrow keys under hjkl. The surrounding keys contain similar functionality - for instance, the keys directly below `DOWN` and `UP` are `PAGEDOWN` and `PAGEUP`, respectively. `HOME` and `END` are inverted from this convention, simply because I kept hitting the wrong key when trying to jump to the beginning/end of lines when editing text.
30 30
31To the immediate right of the NAVIGATION layer key are the following modifiers: `SHIFT`, `CONTROL`, `ALT`, `GUI`. All modifiers are the "left" variants. The idea is to use the left hand to hold different modifiers as necessary while using the right hand to navigate and format. 31To the immediate right of the NAVIGATION layer key are the following modifiers: `SHIFT`, `CONTROL`, `ALT`, `GUI`. All modifiers are the "left" variants. The idea is to use the left hand to hold different modifiers as necessary while using the right hand to navigate and format.
32 32
33`ESCAPE` is located on the spacebar from this layer, and `DELETE` is placed next to `BACKSPACE`, for convenience when formatting text. There are also four Windows shortcuts for undo, cut, copy, and paste, located in the same position as the relevant keys on the base layer (undo, for example, is in the same place as the `Z` key). 33`ESCAPE` is located on the spacebar from this layer, and `DELETE` is placed next to `BACKSPACE`, for convenience when formatting text. There are also four Windows shortcuts for undo, cut, copy, and paste, located in the same position as the relevant keys on the base layer (undo, for example, is in the same place as the `Z` key). Again, this is for convenience when formatting text.
34 34
35#### SETTINGS 35#### SETTINGS
36Right now, this is pretty similar to the default settings layer (the planck's ADJUST layer). 36The SETTINGS layer can be accessed by pressing both SYMBOL layer keys at once. This is functionally the same as a trilayer, though because both keys are activating the same layer it doesn't actually use the trilayer feature.
37 37
38Primary differences are the inclusion of an autoshift toggle and the removal of the reset button. The bootloader functionality has been moved to a leader key sequence: LEAD - R - E - S - E - T. 38This layer contains things like feature toggles, media controls, and other infrequently-used options.
39 39
40### Leader Key Sequences 40### Leader Key Sequences
41A complete list of leader sequences can be found below: 41A complete list of leader sequences can be found below. The LEAD key that begins each sequence has been omitted.
42 42
43#### Reset
44LEAD - R - E - S - E - T
45 43
46#### Minimize (Windows) 44| Sequence | Function |
47LEAD - M - I - N 45| :------: | -------------------------------- |
46| R-E-S-E-T | Reset the keyboard into DFU mode |