[Keymap] Feature/alfrdmalr/keymap update (#8174)
authorAlfred Maler <alfrdmalr@gmail.com>
Tue, 3 Mar 2020 18:13:42 +0000 (13:13 -0500)
committerGitHub <noreply@github.com>
Tue, 3 Mar 2020 18:13:42 +0000 (10:13 -0800)
* 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

layouts/community/ortho_4x12/alfrdmalr/config.h [new file with mode: 0644]
layouts/community/ortho_4x12/alfrdmalr/keymap.c [new file with mode: 0644]
layouts/community/ortho_4x12/alfrdmalr/rules.mk [new file with mode: 0644]
layouts/community/ortho_5x12/alfrdmalr/keymap.c
users/alfrdmalr/alfrdmalr.c
users/alfrdmalr/alfrdmalr.h
users/alfrdmalr/readme.md

diff --git a/layouts/community/ortho_4x12/alfrdmalr/config.h b/layouts/community/ortho_4x12/alfrdmalr/config.h
new file mode 100644 (file)
index 0000000..58c9d57
--- /dev/null
@@ -0,0 +1,5 @@
+#pragma once
+
+#ifdef AUDIO_ENABLE
+    #define STARTUP_SONG SONG(NO_SOUND)
+#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 (file)
index 0000000..14b7633
--- /dev/null
@@ -0,0 +1,44 @@
+#include "alfrdmalr.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+// QWERTY 
+[_QWERTY] = LAYOUT_ortho_4x12_wrapper(
+  K10,     ____QWERTY_L1____, ____QWERTY_R1____, K1B,
+  K20,     ____QWERTY_L2____, ____QWERTY_R2____, K2B,
+  K30,     ____QWERTY_L3____, ____QWERTY_R3____, K3B,
+  K40,     _____BASE_L4_____, _____BASE_R4_____, K4B
+),
+
+// SYMBOL 
+[_SYMBOL] = LAYOUT_ortho_4x12_wrapper(
+  K10_SYM, ____SYMBOL_L1____, ____SYMBOL_R1____, K1B_SYM,
+  K20_SYM, ____SYMBOL_L2____, ____SYMBOL_R2____, K2B_SYM,
+  K30_SYM, ____SYMBOL_L3____, ____SYMBOL_R3____, K3B_SYM,
+  K40_SYM, ____SYMBOL_L4____, ____SYMBOL_R4____, K4B_SYM
+),
+
+// NAVIGATION 
+[_NAVIGATION] = LAYOUT_ortho_4x12_wrapper(
+  K10_NAV, __NAVIGATION_L1__, __NAVIGATION_R1__, K1B_NAV,
+  K20_NAV, __NAVIGATION_L2__, __NAVIGATION_R2__, K2B_NAV,
+  K30_NAV, __NAVIGATION_L3__, __NAVIGATION_R3__, K3B_NAV,
+  K40_NAV, __NAVIGATION_L4__, __NAVIGATION_R4__, K4B_NAV
+),
+
+// NUMPAD 
+[_NUMPAD] = LAYOUT_ortho_4x12_wrapper( 
+  K10_NUM, ____NUMPAD_L1____, ____NUMPAD_R1____, K1B_NUM,
+  K20_NUM, ____NUMPAD_L2____, ____NUMPAD_R2____, K2B_NUM,
+  K30_NUM, ____NUMPAD_L3____, ____NUMPAD_R3____, K3B_NUM,
+  K40_NUM, ____NUMPAD_L4____, ____NUMPAD_R4____, K4B_NUM 
+),
+
+// SETTINGS 
+[_SETTINGS] = LAYOUT_ortho_4x12_wrapper( 
+  K10_SET, ___SETTINGS_L1___,  ___SETTINGS_R1___, K1B_SET,
+  K20_SET, ___SETTINGS_L2___,  ___SETTINGS_R2___, K2B_SET,
+  K30_SET, ___SETTINGS_L3___,  ___SETTINGS_R3___, K3B_SET,
+  K40_SET, ___SETTINGS_L4___,  ___SETTINGS_R4___, K4B_SET
+)
+};
\ 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 (file)
index 0000000..e69de29
index c140128..2cd5105 100644 (file)
@@ -11,8 +11,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   K40,     _____BASE_L4_____, _____BASE_R4_____, K4B
 ),
 
-// SYMBOLS 
-[_SYMBOLS] = LAYOUT_ortho_5x12_wrapper(
+// SYMBOL 
+[_SYMBOL] = LAYOUT_ortho_5x12_wrapper(
   K00_SYM, ____NUMROW_L0____, ____NUMROW_R0____, K0B_SYM,
   K10_SYM, ____SYMBOL_L1____, ____SYMBOL_R1____, K1B_SYM,
   K20_SYM, ____SYMBOL_L2____, ____SYMBOL_R2____, K2B_SYM,
index 39d2b62..18ce8ba 100644 (file)
@@ -35,10 +35,61 @@ void matrix_scan_user(void) {
     SEQ_FIVE_KEYS(KC_R, KC_E, KC_S, KC_E, KC_T) {
       reset_keyboard();
     }
-    // minimize window (Windows)
-    SEQ_THREE_KEYS(KC_M, KC_I, KC_N) {
-      SEND_STRING(SS_LALT(" ")"n");
-    }
     leader_end(); 
   }
+}
+
+bool syml_pressed = false;
+bool symr_pressed = false;
+bool settings_active = false;
+bool symbols_active = false;
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+  switch(keycode) {
+    case SYML:
+      if (record->event.pressed) {
+        syml_pressed = true;
+      } else {
+        syml_pressed = false;
+      }
+      break;
+    case SYMR:
+      if (record->event.pressed) {
+        symr_pressed = true;
+      } else {
+        symr_pressed = false;
+      }
+      break;
+  }
+
+  // trilayer-esque behavior. If both SYMBOL layer keys are held, then the 
+  // settings layer is open. If only one is held, SYMBOL is active.
+  if (syml_pressed && symr_pressed) {
+    layer_on(_SETTINGS);
+    settings_active = true;
+  } else if (syml_pressed || symr_pressed) {
+    if (settings_active) {
+      layer_off(_SETTINGS);
+      settings_active = false;
+    }
+    layer_on(_SYMBOL);
+    symbols_active = true;
+  } else {
+    if (symbols_active) {
+      layer_off(_SYMBOL);
+      symbols_active = false;
+    }
+  }
+
+  return true;
+}
+
+// allow access to the settings layer to turn music mode back off
+bool music_mask_user(uint16_t keycode) {
+  switch (keycode) {
+    case SYML:
+    case SYMR:
+      return false;
+    default:
+      return true;
+  }
 }
\ No newline at end of file
index 922b7ca..1989fb1 100644 (file)
@@ -20,16 +20,24 @@ along with this program. If not, see <http://www.gnu/org/licenses/>.
 
 enum shared_layers {
   _QWERTY,
-  _SETTINGS,
-  _SYMBOLS,
+  _SYMBOL,
   _NAVIGATION,
-  _NUMPAD
+  _NUMPAD,
+  _SETTINGS
 };
 
 // KEYCODES ============================================================================
+
+// the SYML and SYMR keycodes are just used to activate the symbols layer.
+// they're distinct so that I can hit both of them to activate a trilayer
+enum alfrdmalr_keycodes {
+  SYML = SAFE_RANGE,
+  SYMR
+};
+
 #define NUMSPACE LT(_NUMPAD, KC_SPC)
 #define NAVLAYER MO(_NAVIGATION)
-#define SYMLAYER MO(_SYMBOLS)
+#define SYMLAYER MO(_SYMBOL)
 #define SETLAYER MO(_SETTINGS)
 #define CTRLSHFT C(KC_LSFT)
 #define WINUNDO  C(KC_Z)
@@ -42,10 +50,12 @@ enum shared_layers {
 #define K41    CTRLSHFT
 #define K42    KC_LGUI
 #define K43    KC_LALT
-#define K44    SYMLAYER
+// #define K44    SYMLAYER
+#define K44    SYML
 #define K45    NUMSPACE
 #define K46    NUMSPACE
-#define K47    SYMLAYER
+// #define K47    SYMLAYER
+#define K47    SYMR
 #define K48    KC_RALT
 #define K49    SETLAYER
 #define K4A    MU_TOG
@@ -86,7 +96,7 @@ enum shared_layers {
  * ,-----------------------------------------------------------------------------------.
  * | ESC  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | BKSP |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TAB  |   Q  |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  | DEL  |
+ * | TAB  |   Q  |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  | BKSP |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | NAV  |   A  |   S  |   D  |   F  |   G  |   H  |   J  |   K  |   L  |   ;  |  "   |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
@@ -110,13 +120,13 @@ enum shared_layers {
 
 /* NUMPAD ==============================================================================
  * ,-----------------------------------------------------------------------------------.
- * |   `  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | Bksp |
+ * |   `  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS |  F9  |  F10 |  F11 |  F12 |      | NLCK  |   7  |   8  |   9  |   -  | DEL  |
+ * | TRNS |  F9  |  F10 |  F11 |  F12 |      | NLCK |   7  |   8  |   9  |   -  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | ESC  |  F5  |  F6  |  F7  |  F8  | SPC  | SPC  |   4  |   5  |   6  |   +  | ENTR |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS |  F1  |  F2  |  F3  |  F4  | ALT  | CAPS |   1  |   2  |   3  |   /  | TRNS |
+ * | TRNS |  F1  |  F2  |  F3  |  F4  | ALT  |      |   1  |   2  |   3  |   /  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | TRNS | TRNS | TRNS | TRNS | TRNS |    TRNS     |   0  |   ,  |   .  |   *  | TRNS |
  * `-----------------------------------------------------------------------------------'
@@ -140,7 +150,7 @@ enum shared_layers {
 // - CORE
 #define ____NUMPAD_R1____    KC_NLCK,  KC_7,  KC_8,  KC_9,  KC_MINS
 #define ____NUMPAD_R2____    KC_SPC,   KC_4,  KC_5,  KC_6,  KC_PLUS
-#define ____NUMPAD_R3____    KC_CAPS,  KC_1,  KC_2,  KC_3,  KC_SLSH
+#define ____NUMPAD_R3____    KC_NO,    KC_1,  KC_2,  KC_3,  KC_SLSH
 
 // - MODS
 #define ____NUMPAD_R4____    KC_TRNS,  KC_0,  KC_COMM,  KC_DOT,  KC_ASTR
@@ -150,15 +160,15 @@ enum shared_layers {
 #define K3B_NUM    KC_TRNS
 #define K4B_NUM    KC_TRNS
 
-/* SYMBOL=============================================================================
+/* SYMBOL ==============================================================================
  * ,-----------------------------------------------------------------------------------.
- * | ESC  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | BKSP |
+ * | TRNS |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS |   #  |   $  |   {  |   }  |      |      |   ^  |   *  |   |  |   ~  | TRNS |
+ * | TRNS |   !  |   @  |   {  |   }  |      |      |   ^  |   $  |   &  |   |  | DEL  |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS |   <  |   >  |   (  |   )  |      |      |   -  |   +  |   &  |   \  |  `   |
+ * | TRNS |   <  |   >  |   (  |   )  |      |      |   -  |   +  |   =  |   \  |  `   |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS |   !  |   @  |   [  |   ]  |      |      |   _  |   =  |   %  |   /  | SHFT |
+ * | TRNS |   ~  |   #  |   [  |   ]  |      |      |   _  |   *  |   %  |   /  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | TRNS | TRNS | TRNS | TRNS | TRNS |    TRNS     | TRNS | TRNS | TRNS | TRNS | TRNS |
  * `-----------------------------------------------------------------------------------'
@@ -166,9 +176,9 @@ enum shared_layers {
 
 // LEFT
 // - CORE
-#define ____SYMBOL_L1____    KC_HASH,     KC_DOLLAR,  KC_LCBR,  KC_RCBR,  KC_NO
-#define ____SYMBOL_L2____    KC_LABK,     KC_RABK,    KC_LPRN,  KC_RPRN,  KC_NO
-#define ____SYMBOL_L3____    KC_EXCLAIM,  KC_AT,      KC_LBRC,  KC_RBRC,  KC_NO
+#define ____SYMBOL_L1____    KC_EXCLAIM,  KC_AT,    KC_LCBR,  KC_RCBR,  KC_NO
+#define ____SYMBOL_L2____    KC_LABK,     KC_RABK,  KC_LPRN,  KC_RPRN,  KC_NO
+#define ____SYMBOL_L3____    KC_TILD,     KC_HASH,  KC_LBRC,  KC_RBRC,  KC_NO
 
 // - MODS
 #define ____SYMBOL_L4____    ______TRANS______
@@ -180,27 +190,27 @@ enum shared_layers {
 
 // RIGHT
 // - CORE
-#define ____SYMBOL_R1____    KC_NO,  KC_CIRC,  KC_ASTR,  KC_PIPE,  KC_TILD
-#define ____SYMBOL_R2____    KC_NO,  KC_MINS,  KC_PLUS,  KC_AMPR,  KC_BSLS
-#define ____SYMBOL_R3____    KC_NO,  KC_UNDS,  KC_EQL,   KC_PERC,  KC_SLSH
+#define ____SYMBOL_R1____    KC_NO,  KC_CIRC,  KC_DOLLAR,  KC_AMPR, KC_PIPE
+#define ____SYMBOL_R2____    KC_NO,  KC_MINS,  KC_PLUS,    KC_EQL,  KC_BSLS
+#define ____SYMBOL_R3____    KC_NO,  KC_UNDS,  KC_ASTR,    KC_PERC, KC_SLSH
 
 // - MODS
 #define ____SYMBOL_R4____    ______TRANS______
 #define K0B_SYM    KC_TRNS
-#define K1B_SYM    KC_TRNS
+#define K1B_SYM    KC_DEL
 #define K2B_SYM    KC_GRV
 #define K3B_SYM    KC_TRNS
 #define K4B_SYM    KC_TRNS
 
 /* NAVIGATION ==========================================================================
  * ,-----------------------------------------------------------------------------------.
- * | ESC  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | BKSP |
+ * | TRNS |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | TRNS |      |      | SPC  |  F5  |      | INS  | HOME | END  | TAB  | DEL  | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | TRNS | SHFT | CTRl | ALT  | GUI  |      | LEFT | DOWN | UP   | RGHT |      | ENTR |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | TRNS | UNDO | CUT  | COPY | PSTE |      | SPC  | PGDO | PGUP |      |      | TRNS |
+ * | TRNS | UNDO | CUT  | COPY | PSTE |      |      | PGDO | PGUP | CAPS |      | TRNS |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
  * | TRNS | TRNS | TRNS | TRNS | TRNS |     ESC     | TRNS | TRNS | TRNS | TRNS | TRNS |
  * `-----------------------------------------------------------------------------------'
@@ -213,7 +223,7 @@ enum shared_layers {
 #define __NAVIGATION_L3__    WINUNDO,  WINCUT,    WINCOPY,  WINPASTE,  KC_NO
 
 // - MODS
-#define __NAVIGATION_L4__    _______,  _______,  _______,  _______,  KC_ESC
+#define __NAVIGATION_L4__    KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_ESC
 #define K00_NAV    KC_TRNS
 #define K10_NAV    KC_TRNS
 #define K20_NAV    KC_TRNS
@@ -224,10 +234,10 @@ enum shared_layers {
 // - CORE
 #define __NAVIGATION_R1__    KC_INS,   KC_HOME,  KC_END,   KC_TAB,    KC_DEL
 #define __NAVIGATION_R2__    KC_LEFT,  KC_DOWN,  KC_UP,    KC_RIGHT,  KC_NO
-#define __NAVIGATION_R3__    KC_SPC,   KC_PGDN,  KC_PGUP,  KC_NO,     KC_NO
+#define __NAVIGATION_R3__    KC_NO,    KC_PGDN,  KC_PGUP,  KC_CAPS,   KC_NO
 
 // - MODS
-#define __NAVIGATION_R4__    KC_ESC,  _______,  _______,  _______,  _______
+#define __NAVIGATION_R4__    KC_ESC,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS
 #define K0B_NAV    KC_TRNS
 #define K1B_NAV    KC_TRNS
 #define K2B_NAV    KC_ENT
@@ -236,41 +246,41 @@ enum shared_layers {
 
 /* SETTINGS ============================================================================
  * ,-----------------------------------------------------------------------------------.
- * |      |      |      |      |      |      |      |      |      |      |      |      |
+ * |      |      |      |      |      |      |      |      |      | BRID | BRIU |      |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |      |      | DBUG |      |      |      |      |      |      |      |      |      |
+ * |      |      |      |      |      |      |      |      |      |      |      |      |
  * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |      |      |      |Aud on|AudOff|AGnorm|AGswap|      |      |      |      |      |
+ * |      |      |      |      |      |      | MPRV | MPLY | MUTE | MNXT |      |      |
  * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | ASTG |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff|      |      |      |      |      |
+ * | ASTG | MUTO | AUOF | AUON |      |      |      | VOLD | VOLU |      |      | ASTG |
  * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |      |      |      |      |      |             |      |      |      |      |      |
+ * |      |      |      |      | TRNS |             | TRNS |      |      |      |      |
  * `-----------------------------------------------------------------------------------'
  */
 // LEFT
 // - CORE
-#define ___SETTINGS_L1___    _______,  DEBUG,   _______,  _______,  _______
-#define ___SETTINGS_L2___    _______,  MU_MOD,  AU_ON,    AU_OFF,   AG_NORM
-#define ___SETTINGS_L3___    MUV_DE,   MUV_IN,  MU_ON,    MU_OFF,   MI_ON
+#define ___SETTINGS_L1___    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO
+#define ___SETTINGS_L2___    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO
+#define ___SETTINGS_L3___    MU_TOG,   AU_OFF,   AU_ON,    KC_NO,    KC_NO
 
 // - MODS
-#define ___SETTINGS_L4___    KC_NO,  KC_NO,  KC_NO,  KC_NO,  KC_NO
+#define ___SETTINGS_L4___    KC_NO,    KC_NO,    KC_NO,    KC_TRNS,  KC_NO
 #define K00_SET    KC_NO
 #define K10_SET    KC_NO
 #define K20_SET    KC_NO
 #define K30_SET    KC_ASTG
 #define K40_SET    KC_NO
 
-// RIGHT 
+// RIGHT
 // - CORE
-#define ___SETTINGS_R1___    TERM_ON,  TERM_OFF,  _______,  _______,  _______
-#define ___SETTINGS_R2___    _______,  _______,   _______,  _______,  _______
-#define ___SETTINGS_R3___    _______,  _______,   _______,  _______,  _______
+#define ___SETTINGS_R1___    KC_NO,    KC_NO,     KC_NO,    KC_BRID,  KC_BRIU
+#define ___SETTINGS_R2___    KC_MPRV,  KC_MPLY,   KC_MUTE,  KC_MNXT,  KC_NO
+#define ___SETTINGS_R3___    KC_NO,    KC_VOLD,   KC_VOLU,  KC_NO,    KC_NO
 
 // - MODS
-#define ___SETTINGS_R4___  KC_NO,  KC_NO,  KC_NO,  KC_TRNS,  KC_NO
+#define ___SETTINGS_R4___    KC_NO,    KC_TRNS,    KC_NO,   KC_NO,    KC_NO
 #define K0B_SET    KC_NO
 #define K1B_SET    KC_NO
 #define K2B_SET    KC_NO
-#define K3B_SET    KC_NO
-#define K4B_SET    KC_NO
\ No newline at end of file
+#define K3B_SET    KC_ASTG
+#define K4B_SET    KC_NO
index d462a5b..9e5f962 100644 (file)
@@ -1,6 +1,6 @@
 # alfrdmalr's userspace
 ## Overview 
-The alphanumeric characters and symbols are spread between three main 'typing' layers: REGULAR, NUMPAD, and SYMBOLS
+The alphanumeric characters and symbols are spread between three main 'typing' layers: REGULAR, NUMPAD, and SYMBOL. 
 
 A 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.
 
@@ -22,26 +22,25 @@ The NUMPAD layer puts a numpad under the right hand, surrounding the home row po
 
 This layer also holds the first twelve function keys.
 
-#### SYMBOLS
-This 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.
+#### SYMBOL
+This 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.
 
 #### NAVIGATION
-The 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.
+Over 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.
 
 To 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.
 
-`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). 
+`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.
 
 #### SETTINGS
-Right now, this is pretty similar to the default settings layer (the planck's ADJUST layer).
+The 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.
 
-Primary 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.
+This layer contains things like feature toggles, media controls, and other infrequently-used options. 
 
 ### Leader Key Sequences
-A complete list of leader sequences can be found below:
+A complete list of leader sequences can be found below. The LEAD key that begins each sequence has been omitted.
 
-#### Reset
-LEAD - R - E - S - E - T
 
-#### Minimize (Windows)
-LEAD - M - I - N
+| Sequence  | Function                         |
+| :------:  | -------------------------------- |
+| R-E-S-E-T | Reset the keyboard into DFU mode |