]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Clean up and tweaks of drashna keymaps and userspace (#2200)
authorDrashna Jaelre <drashna@live.com>
Mon, 1 Jan 2018 22:21:01 +0000 (14:21 -0800)
committerJack Humbert <jack.humb@gmail.com>
Mon, 1 Jan 2018 22:21:01 +0000 (17:21 -0500)
* Minor tweaks

modified:   users/drashna/drashna.c

* Fix Workman ASCII art

* Add OSM for shifts

* Make Viterbi's 00 code consistant

* Minor Cleanup off Userspace

* Change Tapping Term on Ergodox

* Re-add EEPROM code

* Minor updates and tweaks

* Use QMK_H variables to make keymaps more universal

* Forgot 'break;' for covecube layer

* Tweak Viterbi files now that I have hands on

* Add secrets to Ergodox

* RGB tweaks to Viterbi

* Viterbi RGB layout tweeks

* Minor tweaks

* Add One Shot Mod tap toggle

* Add Faux Clicky to Viterbi, and disable controller's LEDs

* Minor tweaks

* Move D3 keycode defines into userspace

* Updated Userspace Readme

15 files changed:
keyboards/ergodox_ez/keymaps/drashna/config.h
keyboards/ergodox_ez/keymaps/drashna/keymap.c
keyboards/ergodox_ez/keymaps/drashna/rules.mk
keyboards/handwired/woodpad/keymaps/drashna/config.h
keyboards/orthodox/keymaps/drashna/config.h
keyboards/orthodox/keymaps/drashna/keymap.c
keyboards/orthodox/keymaps/drashna/rules.mk
keyboards/orthodox/rev3/rules.mk
keyboards/viterbi/keymaps/drashna/config.h
keyboards/viterbi/keymaps/drashna/keymap.c
keyboards/viterbi/keymaps/drashna/rules.mk
users/drashna/drashna.c
users/drashna/drashna.h
users/drashna/readme.md
users/drashna/rules.mk

index 3d138e072137cdba450f748604f19a8d41da45d6..c0286f16aaddd01cb14be46be1d9de2461c796a9 100644 (file)
@@ -1,9 +1,8 @@
 #ifndef CONFIG_USER_H
 #define CONFIG_USER_H
-#include "../../config.h"
 
+#include QMK_KEYBOARD_CONFIG_H
 
-#define TAPPING_TERM 200
 
 #ifdef RGBLIGHT_ENABLE
 #undef RGBLIGHT_SAT_STEP 
 #define RGBLIGHT_EFFECT_BREATHE_CENTER 1
 #endif // RGBLIGHT_ENABLE
 
-#define FORCE_NKRO
+#ifdef TAPPING_TERM
+#undef TAPPING_TERM
+#endif
+#define TAPPING_TERM 150
+#undef PERMISSIVE_HOLD
+#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
+#define ONESHOT_TAP_TOGGLE 2
 
 #endif
index 8743ae2827b4d0f8b5152377b519747a05a52007..c7939de37a30f2f56f7c6a9a7e1b5ee2c96217f3 100644 (file)
@@ -15,15 +15,8 @@ You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 #include QMK_KEYBOARD_H
-#include "debug.h"
-#include "action_layer.h"
-#include "version.h"
 #include "drashna.h"
 
-#include "keymap_german.h"
-
-#include "keymap_nordic.h"
-
 
 
 
@@ -31,18 +24,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 bool skip_leds = false;
 
 
-#ifdef TAP_DANCE_ENABLE
-#define KC_D3_1 TD(TD_D3_1)
-#define KC_D3_2 TD(TD_D3_2)
-#define KC_D3_3 TD(TD_D3_3)
-#define KC_D3_4 TD(TD_D3_4)
-#else
-#define KC_D3_1 KC_1
-#define KC_D3_2 KC_2
-#define KC_D3_3 KC_3
-#define KC_D3_4 KC_4
-#endif
-
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 /* Keymap 0: Basic layer
@@ -71,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                 KC_EQUAL,       KC_1,       KC_2,       KC_3,       KC_4,       KC_5,       TG(_MOUS),
                 KC_TAB,         KC_Q,       KC_W,       KC_E,       KC_R,       KC_T,       TG(_DIABLO),
                 KC_BSPACE,      KC_A,       KC_S,       KC_D,       KC_F,       KC_G,
-                KC_LSHIFT,      LCTL_T(KC_Z),KC_X,       KC_C,       KC_V,       KC_B,       TG(_GAMEPAD),
+                OSM(MOD_LSFT),      LCTL_T(KC_Z),KC_X,       KC_C,       KC_V,       KC_B,       TG(_GAMEPAD),
                 LT(_SYMB,KC_GRAVE),KC_QUOTE, KC_LGUI,    KC_LBRACKET,KC_RBRACKET,
                 
                                     ALT_T(KC_APPLICATION),  KC_LGUI,
@@ -81,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                 TG(_MOUS),       KC_6,       KC_7,       KC_8,       KC_9,       KC_0,           KC_MINUS,
                 TG(_DIABLO),     KC_Y,       KC_U,       KC_I,       KC_O,       KC_P,           KC_BSLASH,
                                 KC_H,       KC_J,       KC_K,       KC_L,       KC_SCOLON,      GUI_T(KC_QUOTE),
-                TG(_GAMEPAD),  KC_N,       KC_M,       KC_COMMA,   KC_DOT,     RCTL_T(KC_SLASH),KC_RSHIFT,
+                TG(_GAMEPAD),  KC_N,       KC_M,       KC_COMMA,   KC_DOT,     RCTL_T(KC_SLASH),OSM(MOD_RSFT),
                                             KC_LEFT,    KC_DOWN,    KC_UP,      KC_RIGHT,       TT(_SYMB),
                 KC_RGUI,    CTL_T(KC_ESCAPE),
                 KC_PGUP,
@@ -115,7 +96,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
         KC_EQL,         KC_1,         KC_2,   KC_3,   KC_4,   KC_5,   TG(_MOUS),
         KC_TAB,         KC_Q,         KC_W,   KC_F,   KC_P,   KC_G,   TG(_DIABLO),
         KC_BSPC,        KC_A,         KC_R,   KC_S,   KC_T,   KC_D,
-        KC_LSFT,        LCTL_T(KC_Z),  KC_X,   KC_C,   KC_V,   KC_B,   TG(_GAMEPAD),
+        OSM(MOD_LSFT),        LCTL_T(KC_Z),  KC_X,   KC_C,   KC_V,   KC_B,   TG(_GAMEPAD),
         LT(_SYMB,KC_GRV),KC_QUOT,      KC_LGUI,    KC_LBRACKET,KC_RBRACKET,
                                               ALT_T(KC_APP),  KC_LGUI,
                                                               KC_HOME,
@@ -124,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
              TG(_MOUS),    KC_6,   KC_7,   KC_8,   KC_9,   KC_0,             KC_MINS,
              TG(_DIABLO),  KC_J,   KC_L,   KC_U,   KC_Y,   KC_SCLN,          KC_BSLS,
                           KC_H,   KC_N,   KC_E,   KC_I,   KC_O,             GUI_T(KC_QUOTE),
-             TG(_GAMEPAD),KC_K,  KC_M,   KC_COMM,KC_DOT, RCTL_T(KC_SLASH), KC_RSHIFT,
+             TG(_GAMEPAD),KC_K,  KC_M,   KC_COMM,KC_DOT, RCTL_T(KC_SLASH), OSM(MOD_RSFT),
                           KC_LEFT,    KC_DOWN,    KC_UP,      KC_RIGHT,       TT(_SYMB),
              KC_RGUI,        CTL_T(KC_ESC),
              KC_PGUP,
@@ -156,9 +137,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 [_DVORAK] = LAYOUT_ergodox(  
         // left hand
         KC_EQL,         KC_1,           KC_2,    KC_3,   KC_4,   KC_5,   TG(_MOUS),
-        KC_TAB,        KC_QUOT,        KC_COMM, KC_DOT, KC_P,   KC_Y,   TG(_DIABLO),
+        KC_TAB,         KC_QUOT,        KC_COMM, KC_DOT, KC_P,   KC_Y,   TG(_DIABLO),
         KC_BSPC,        KC_A,           KC_O,    KC_E,   KC_U,   KC_I,
-        KC_LSFT,        LCTL_T(KC_SCLN), KC_Q,    KC_J,   KC_K,   KC_X,   TG(_GAMEPAD),
+        OSM(MOD_LSFT),  LCTL_T(KC_SCLN), KC_Q,    KC_J,   KC_K,   KC_X,   TG(_GAMEPAD),
         LT(_SYMB,KC_GRV),KC_QUOT, KC_LGUI, KC_LBRACKET, KC_RBRACKET,
                                               ALT_T(KC_APP),  KC_LEAD,
                                                               KC_HOME,
@@ -167,7 +148,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
              TG(_MOUS),     KC_6,   KC_7,   KC_8,   KC_9,   KC_0,        KC_BSLS,
              TG(_DIABLO),   KC_F,   KC_G,   KC_C,   KC_R,   KC_L,        KC_SLSH,
                            KC_D,   KC_H,   KC_T,   KC_N,   KC_S,        KC_MINS,
-             TG(_GAMEPAD),KC_B,   KC_M,   KC_W,   KC_V,   RCTL_T(KC_Z), KC_RSHIFT,
+             TG(_GAMEPAD),KC_B,   KC_M,   KC_W,   KC_V,   RCTL_T(KC_Z), OSM(MOD_RSFT),
                                    KC_LEFT,KC_DOWN,KC_UP,  KC_RIGHT,    TT(_SYMB),
              KC_LALT,        CTL_T(KC_ESC),
              KC_PGUP,
@@ -178,11 +159,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * ,--------------------------------------------------.           ,--------------------------------------------------.
  * |   =    |   1  |   2  |   3  |   4  |   5  | LEFT |           | RIGHT|   6  |   7  |   8  |   9  |   0  |   -    |
  * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
- * | Del    |   Q  |   W  |   F  |   P  |   G  |  L1  |           |  L1  |   J  |   L  |   U  |   Y  |   ;  |   \    |
+ * | Del    |   Q  |   D  |   R  |   W  |   B  |  L1  |           |  L1  |   J  |   F  |   U  |   P  |   ;  |   \    |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * | BkSp   |   A  |   R  |   S  |   T  |   D  |------|           |------|   H  |   N  |   E  |   I  |O / L2|   '    |
+ * | BkSp   |   A  |   S  |   H  |   T  |   D  |------|           |------|   Y  |   N  |   E  |   O  |   I  |   '    |
  * |--------+------+------+------+------+------| OVER |           | Meh  |------+------+------+------+------+--------|
- * | LShift |Z/Ctrl|   X  |   C  |   V  |   B  |      |           |      |   K  |   M  |   ,  |   .  |//Ctrl| RShift |
+ * | LShift |Z/Ctrl|   X  |   M  |   C  |   V  |      |           |      |   K  |   L  |   ,  |   .  |//Ctrl| RShift |
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
  *   |Grv/L1|  '"  |AltShf| Left | Right|                                       |  Up  | Down |   [  |   ]  | ~L1  |
  *   `----------------------------------'                                       `----------------------------------'
@@ -201,7 +182,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
         KC_EQL,         KC_1,         KC_2,   KC_3,   KC_4,   KC_5,   TG(_MOUS),
         KC_TAB,         KC_Q,         KC_D,   KC_R,   KC_W,   KC_B,   TG(_DIABLO),
         KC_BSPC,        KC_A,         KC_S,   KC_H,   KC_T,   KC_G,
-        KC_LSFT,        LCTL_T(KC_Z),  KC_X,   KC_M,   KC_C,   KC_V,   TG(_GAMEPAD),
+        OSM(MOD_LSFT),        LCTL_T(KC_Z),  KC_X,   KC_M,   KC_C,   KC_V,   TG(_GAMEPAD),
         LT(_SYMB,KC_GRV),KC_QUOT,      KC_LGUI,    KC_LBRACKET,KC_RBRACKET,
                                               ALT_T(KC_APP),  KC_LEAD,
                                                               KC_HOME,
@@ -210,7 +191,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
              TG(_MOUS),    KC_6,   KC_7,   KC_8,   KC_9,   KC_0,             KC_MINS,
              TG(_DIABLO),  KC_J,   KC_F,   KC_U,   KC_P,   KC_SCLN,          KC_BSLS,
                           KC_Y,   KC_N,   KC_E,   KC_O,   KC_I,             KC_QUOTE,
-             TG(_GAMEPAD),KC_K,  KC_L,   KC_COMM,KC_DOT, RCTL_T(KC_SLASH), KC_RSHIFT,
+             TG(_GAMEPAD),KC_K,  KC_L,   KC_COMM,KC_DOT, RCTL_T(KC_SLASH), OSM(MOD_RSFT),
                           KC_LEFT,    KC_DOWN,    KC_UP,      KC_RIGHT,       TT(_SYMB),
              KC_LALT,        CTL_T(KC_ESC),
              KC_PGUP,
@@ -239,7 +220,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 *                                 `--------------------'       `--------------------'
 */
   [_SYMB] = LAYOUT_ergodox(
-                KC_ESCAPE,      KC_F1,      KC_F2,      KC_F3,      KC_F4,      KC_F5,      KC_WORKMAN,
+                EPRM,      KC_F1,      KC_F2,      KC_F3,      KC_F4,      KC_F5,      KC_WORKMAN,
                 VRSN,           KC_EXLM,    KC_AT,      KC_LCBR,    KC_RCBR,    KC_PIPE,    KC_DVORAK,
                 KC_MAKE,        KC_HASH,    KC_DLR,     KC_LPRN,    KC_RPRN,    KC_GRAVE,
                 KC_RESET,       KC_PERC,    KC_CIRC,    KC_LBRACKET,KC_RBRACKET,KC_TILD,    KC_COLEMAK,
@@ -280,7 +261,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                                 `--------------------'       `--------------------'
  */
   [_GAMEPAD] = LAYOUT_ergodox(
-                KC_ESCAPE,      KC_TRNS,    KC_TRNS,    KC_TRNS,    KC_TRNS,    KC_TRNS,    KC_TRNS,
+                KC_ESCAPE,      KC_TRNS,    KC_TRNS,    KC_TRNS,    HYPR(KC_D), HYPR(KC_Q), HYPR(KC_GRV),
                 KC_F1,          KC_K,       KC_Q,       KC_W,       KC_E,       KC_R,       KC_T,
                 KC_TAB,         KC_G,       KC_A,       KC_S,       KC_D,       KC_F,
                 KC_LCTL,        KC_LSHIFT,  KC_Z,       KC_X,       KC_C,       KC_V,       KC_TRNS,
@@ -294,7 +275,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                 KC_I,       KC_O,       KC_NO,      KC_NO,      KC_NO,      KC_NO,
                 TG(_GAMEPAD),   KC_N,       KC_M,       KC_NO,      KC_NO,      KC_NO,      KC_NO,
                                             KC_LEFT,    KC_DOWN,    KC_UP,      KC_RIGHT,      KC_NO,
-                KC_NO,          KC_NO,
+                KC_HYPR,         MAGIC_TOGGLE_NKRO,
                 KC_NO,
                 KC_PGDOWN,      KC_DELETE, KC_ENTER
             ),
@@ -364,7 +345,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                                 `--------------------'       `--------------------'
  */
   [_MOUS] = LAYOUT_ergodox(
-                KC_NO,      KC_NO,      KC_NO,      KC_NO,      KC_NO,      KC_NO,      KC_TRNS,
+                KC_NO,      KC_SECRET_1,KC_SECRET_2,KC_SECRET_3,KC_SECRET_4,KC_SECRET_5,KC_TRNS,
                 KC_NO,      KC_NO,      KC_MS_U,    KC_NO,      KC_NO,      KC_NO,      KC_TRNS,
                 KC_NO,      KC_MS_L,    KC_MS_D,    KC_MS_R,    KC_NO,      KC_NO,
                 KC_NO,      KC_ACL0,    KC_ACL1,    KC_ACL2,    KC_NO,      KC_NO,      KC_TRNS,
index bfeb6be49a5e61d8371fea00a822c48ab989dc66..6f30c5491d05be0061778c2ee0536719d2f77645 100644 (file)
@@ -4,8 +4,3 @@ COMMAND_ENABLE    = no  # Commands for debug and configuration
 RGBLIGHT_ENABLE   = yes
 CONSOLE_ENABLE    = no
 
-EXTRAFLAGS        = -flto
-
-ifndef QUANTUM_DIR
-       include ../../../../Makefile
-endif
index e505aac4172db74574b665f1289060cce379b959..a35b60d369f6afd4945bd2d9dcc06e5a34692c19 100644 (file)
@@ -17,7 +17,7 @@
 #ifndef CONFIG_USER_H
 #define CONFIG_USER_H
 
-#include "../../config.h"
+#include QMK_KEYBOARD_CONFIG_H
 
 #ifdef TAP_DANCE_ENABLE
 #define TAPPING_TERM 200
index 4dee43905bf71e1fe31cd411e5f4f8940bda34bc..f39c34e76d09c733574e90575817586fca6e07e5 100644 (file)
@@ -22,7 +22,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #ifndef CONFIG_USER_H
 #define CONFIG_USER_H
 
-#include "config_common.h"
+#include QMK_KEYBOARD_CONFIG_H
 
 /* Use I2C or Serial, not both */
 
@@ -35,9 +35,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // #define MASTER_RIGHT
 #define EE_HANDS
 
-#ifndef TAPPING_TERM
-#define TAPPING_TERM 200
+#ifdef TAPPING_TERM
+#undef TAPPING_TERM
 #endif
+#define TAPPING_TERM 150
+#undef PERMISSIVE_HOLD
+#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
+#define ONESHOT_TAP_TOGGLE 2
+
 
 
 /* key combination for command */
@@ -63,7 +68,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #ifdef AUDIO_ENABLE
 #define C6_AUDIO
-#define STARTUP_SONG SONG(ZELDA_PUZZLE)
+#define STARTUP_SONG SONG(ZELDA_TREASURE)
 #endif
 
 #endif
index f5a18033ec2134e9e3c02b0b01424d4d6caa1a0b..af235f55d5ea1cb3eecdcf4daa7dc01aa6e846de 100644 (file)
@@ -50,24 +50,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 [_QWERTY] = KEYMAP(\
   KC_ESC,     KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                                                                   KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC, \
   KC_TAB,     KC_A,    KC_S,    KC_D,    KC_F,    KC_G,             KC_UP,    KC_DOWN,        KC_LEFT, KC_RIGHT,           KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, \
-  KC_LSFT,    CTL_T(KC_Z), KC_X, KC_C,   KC_V,    KC_B,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_N,    KC_M,    KC_COMM, KC_DOT, CTL_T(KC_SLASH), KC_LGUI \
+  OSM(MOD_LSFT),CTL_T(KC_Z), KC_X, KC_C,   KC_V,    KC_B,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_N,    KC_M,    KC_COMM, KC_DOT, CTL_T(KC_SLASH), KC_LGUI \
 ),
 
 [_COLEMAK] = KEYMAP(\
   KC_ESC,     KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,                                                                   KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN, KC_BSPC, \
   KC_TAB,     KC_A,    KC_R,    KC_S,    KC_T,    KC_D,             KC_UP,    KC_DOWN,        KC_LEFT, KC_RIGHT,          KC_H,    KC_N,    KC_E,    KC_I,    KC_O,    KC_QUOT, \
-  KC_LSFT,    CTL_T(KC_Z), KC_X, KC_C,   KC_V,    KC_B,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_K,    KC_M,    KC_COMM, KC_DOT,  CTL_T(KC_SLASH), KC_LGUI \
+  OSM(MOD_LSFT),    CTL_T(KC_Z), KC_X, KC_C,   KC_V,    KC_B,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_K,    KC_M,    KC_COMM, KC_DOT,  CTL_T(KC_SLASH), KC_LGUI \
 ),
 
 [_DVORAK] = KEYMAP(\
   KC_ESC,   KC_QUOT, KC_COMM, KC_DOT, KC_P,     KC_Y,                                                                   KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_BSPC, \
   KC_TAB,   KC_A,    KC_O,    KC_E,   KC_U,     KC_I,             KC_UP,    KC_DOWN,        KC_LEFT, KC_RIGHT,          KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_MINS, \
-  KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K,    KC_X,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_B,    KC_M,    KC_W,    KC_V,    CTL_T(KC_Z), KC_LGUI \
+  OSM(MOD_LSFT), CTL_T(KC_SCLN), KC_Q, KC_J, KC_K,    KC_X,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_B,    KC_M,    KC_W,    KC_V,    CTL_T(KC_Z), KC_LGUI \
 ),
 [_WORKMAN] = KEYMAP(\
   KC_ESC,   KC_QUOT, KC_COMM, KC_DOT, KC_P,     KC_Y,                                                                   KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_BSPC, \
   KC_TAB,   KC_A,    KC_O,    KC_E,   KC_U,     KC_I,             KC_UP,    KC_DOWN,        KC_LEFT, KC_RIGHT,          KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_MINS, \
-  KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K,    KC_X,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_B,    KC_M,    KC_W,    KC_V,    CTL_T(KC_Z), KC_LGUI \
+  OSM(MOD_LSFT), CTL_T(KC_SCLN), KC_Q, KC_J, KC_K,    KC_X,      LOWER, KC_SPACE, KC_BSPC,        KC_DEL,  KC_ENT,  RAISE,    KC_B,    KC_M,    KC_W,    KC_V,    CTL_T(KC_Z), KC_LGUI \
 ),
 
 [_LOWER] = KEYMAP(\
index 293faf13e5ec42488ece4ae6e55f6aa2936c9195..53a44424b40c609b2e8071f46e4a84932d5b4cff 100644 (file)
@@ -4,8 +4,4 @@ RGBLIGHT_ENABLE   = yes
 AUDIO_ENABLE      = no
 MOUSEKEY_ENABLE   = no
 NKRO_ENABLE       = yes
-FAUXCLICKY_ENABLE = yes
-
-ifndef QUANTUM_DIR
-       include ../../../../Makefile
-endif
+FAUXCLICKY_ENABLE = no
index a0825b4ef64065fedfe5042ccc7f24f4f0ef71bc..549b6a25325c4b993afc25e0204f2487997149b0 100644 (file)
@@ -1,5 +1,2 @@
 BACKLIGHT_ENABLE = no
 
-ifndef QUANTUM_DIR
-       include ../../../Makefile
-endif
\ No newline at end of file
index 8ac492a8a229ee458925667955c7aabf6fb3be9c..617f01bb9bd24cbf5daf3393461cba9b982fc46e 100644 (file)
@@ -18,12 +18,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #ifndef CONFIG_USER_H
 #define CONFIG_USER_H
 
-#include "../../config.h"
+#include QMK_KEYBOARD_CONFIG_H
 
-/* Use I2C or Serial, not both */
 
-#define USE_SERIAL
-// #define USE_I2C
+/* Use I2C or Serial, not both */
+// #define USE_SERIAL
+#define USE_I2C
 
 /* Select hand configuration */
 
@@ -31,20 +31,26 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // #define MASTER_RIGHT
 // #define EE_HANDS
 
+#ifdef RGBLIGHT_ENABLE
 #undef RGBLED_NUM
 #define RGBLIGHT_ANIMATIONS
-#define RGBLED_NUM 12
+#define RGBLED_NUM 16
 #define RGBLIGHT_HUE_STEP 8
 #define RGBLIGHT_SAT_STEP 8
 #define RGBLIGHT_VAL_STEP 8
 #define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
 #define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
 #define RGBLIGHT_EFFECT_BREATHE_CENTER 1
+#define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 300
+#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1
 
+#endif // RGBLIGHT_ENABLE
 
 #ifdef AUDIO_ENABLE
 #define C6_AUDIO
 #endif
 
+#undef LOCKING_SUPPORT_ENABLE
+#undef LOCKING_RESYNC_ENABLE
 
 #endif
index 4b41d49772c20a2801d307331470c8d758ccd88b..c29bae6ce2344b587bb4f02fbf565284d44f82b3 100644 (file)
@@ -1,6 +1,4 @@
 #include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
 #include "drashna.h"
 
 extern keymap_config_t keymap_config;
@@ -21,67 +19,84 @@ extern keymap_config_t keymap_config;
 #define MEDIA    TG(_MEDIA)
 #define COVECUBE TG(_COVECUBE)
 
+#ifdef FAUXCLICKY_ENABLE
+float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A6, 2);  // (_D4, 0.25);
+float fauxclicky_released_note[2] = MUSICAL_NOTE(_A6, 2); // (_C4, 0.125);
+float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C6, 2);       // (_C4, 0.25);
+#define AUD_ON  FC_ON
+#define AUD_OFF FC_OFF
+#else
+#define AUD_ON  AU_ON
+#define AUD_OFF AU_OFF
+#endif 
+
 enum more_custom_keycodes {
-  KC_KP_00 = NEW_SAFE_RANGE
+  KC_P00 = NEW_SAFE_RANGE
 };
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
   [_NUMLOCK] = KEYMAP(
-      LMACRO,      DIABLO,      GAMEPAD,     KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      MEDIA,       KC_CALC,     COVECUBE,    KC_P7,   KC_P8,   KC_P9,   KC_PAST,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_HOME,     KC_DEL,      KC_PGUP,     KC_P4,   KC_P5,   KC_P6,   KC_PMNS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_END,      KC_UP,       KC_PGDN,     KC_P1,   KC_P2,   KC_P3,   KC_PPLS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_LEFT,     KC_DOWN,     KC_RGHT,     KC_P0,   KC_KP_00,KC_PDOT, KC_PENT,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
+      LMACRO,  DIABLO,  GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      MEDIA,   KC_CALC, COVECUBE,KC_P7,   KC_P8,   KC_P9,   KC_PAST,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_HOME, KC_DEL,  KC_PGUP, KC_P4,   KC_P5,   KC_P6,   KC_PMNS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_END,  KC_UP,   KC_PGDN, KC_P1,   KC_P2,   KC_P3,   KC_PPLS,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_LEFT, KC_DOWN, KC_RGHT, KC_P0,   KC_PDOT, KC_COLN, KC_PENT,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   ),
 
   [_DIABLO] = KEYMAP(
-      KC_ESC,      DIABLO,      KC_V,        KC_D,        XXXXXXX,     XXXXXXX,     KC_L,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_TAB,      KC_S,        KC_F,        KC_I,        KC_M,        KC_T,        KC_J,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_Q,        KC_1,        KC_2,        KC_3,        KC_4,        KC_G,        KC_F,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_LCTL,     TD(TD_D3_1), TD(TD_D3_2), TD(TD_D3_3), TD(TD_D3_4), KC_Z,        KC_DIABLO_CLEAR,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_LALT,     KC_F4,       KC_F5,       KC_F8,       KC_F9,       KC_F10,      SFT_T(KC_SPACE),          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
+      KC_ESC,  DIABLO,  KC_V,    KC_D,    XXXXXXX, XXXXXXX, KC_L,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_TAB,  KC_S,    KC_F,    KC_I,    KC_M,    KC_T,    KC_J,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_Q,    KC_1,    KC_2,    KC_3,    KC_4,    KC_G,    KC_F,                     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_LCTL, KC_D3_3, KC_D3_3, KC_D3_3, KC_D3_3, KC_Z,    KC_DIABLO_CLEAR,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_LALT, KC_F4,   KC_F5,   KC_F8,   KC_F9,   KC_F10,  SFT_T(KC_SPACE),          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   ),
 
   [_GAMEPAD] = KEYMAP(  // Game pad layout designed primarily for Overwatch
-      LMACRO,      KC_ESC,      GAMEPAD,     KC_1,        KC_2,        KC_3,        KC_4,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      MEDIA,       KC_TAB,      KC_Q,        KC_W,        KC_E,        KC_R,        KC_T,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_Z,        KC_LCTL,     KC_A,        KC_S,        KC_D,        KC_F,        KC_G,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_Y,        KC_LSFT,     KC_Z,        KC_X,        KC_C,        KC_V,        KC_B,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_F1,       KC_U,        KC_I,        KC_Y,        KC_V,        KC_SPC,      KC_V,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
+      LMACRO,  KC_ESC,  GAMEPAD, KC_1,    KC_2,    KC_3,    KC_4,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      MEDIA,   KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_Z,    KC_LCTL, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_Y,    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_F1,   KC_U,    KC_I,    KC_Y,    KC_V,    KC_SPC,  KC_V,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   ),
 
   [_MACROS] = KEYMAP(
-      LMACRO,      XXXXXXX,     GAMEPAD,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      LMACRO,      KC_OVERWATCH,GAMEPAD,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       KC_SYMM,     KC_TORB,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_GLHF,     KC_GOODGAME, XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_GLHF,     KC_GOODGAME, KC_GGEZ,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       KC_SALT,     KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM,      XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   ),
 
   [_COVECUBE] = KEYMAP(
-      COVECUBE,    XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      XXXXXXX,     XXXXXXX,     COVECUBE,    XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
       XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,     XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   ),
 
   [_MEDIA] = KEYMAP(
-      KC_RESET,KC_MAKE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      MEDIA,   XXXXXXX, RGB_SAI, RGB_VAI, RGB_M_P, RGB_M_B, RGB_M_R,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      RGB_TOG, RGB_MOD, RGB_SAD, RGB_VAD, RGB_M_SW,RGB_M_SN,RGB_M_K,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_MPLY, KC_MSTP, KC_MPRV, KC_MNXT, RGB_M_K, RGB_M_X, RGB_M_G,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
-      KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
+      KC_MAKE, KC_RESET,XXXXXXX, AUD_ON,  AUD_OFF, XXXXXXX, RGB_SAD,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      MEDIA,   XXXXXXX, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI,         XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_SW,RGB_M_SN,RGB_M_K, RGB_HUD,         XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_MPLY, KC_MPRV, KC_MNXT, RGB_M_X, RGB_M_G, RGB_M_P, RGB_HUI,        XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
+      KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI,          XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
   )
 
 
 };
 
+void matrix_init_keymap(void) {
+  DDRD &= ~(1<<5);
+  PORTD &= ~(1<<5);
 
+  DDRB &= ~(1<<0);
+  PORTB &= ~(1<<0);
+}
 bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
   switch (keycode) {
-  case KC_KP_00:
+  case KC_P00:
     if (record->event.pressed) {
       register_code(KC_KP_0);
       unregister_code(KC_KP_0);
index 34b190370940d586a87dd4ef74b1f821098ed13f..9af36434c71fbb3415631a6065505dd8230e8706 100644 (file)
@@ -5,8 +5,3 @@ RGBLIGHT_ENABLE   = yes
 MOUSEKEY_ENABLE   = no
 NKRO_ENABLE       = yes
 
-EXTRAFLAGS        = -flto
-
-ifndef QUANTUM_DIR
-       include ../../../../Makefile
-endif
index 95fb793a7bdc01a9f6c5f0d5c8dd3212633c0a62..2ac0257b5c9aa932cf87d2efb54057f311bc7de7 100644 (file)
@@ -16,8 +16,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #include "drashna.h"
-#include "quantum.h"
-#include "action.h"
 #include "version.h"
 
 #if (__has_include("secrets.h"))
@@ -450,8 +448,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
        ":dfu"
 #elif defined(BOOTLOADER_HALFKAY)
       ":teensy"
-#elif defined(BOOTLOADER_CATERINA)
-       ":avrdude"
+//#elif defined(BOOTLOADER_CATERINA)
+//       ":avrdude"
 #endif
 #ifdef RGBLIGHT_ENABLE
         " RGBLIGHT_ENABLE=yes"
@@ -572,6 +570,7 @@ uint32_t layer_state_set_user(uint32_t state) {
     case _COVECUBE:
       rgblight_set_green;
       rgblight_mode(2);
+      break;
     default:
       if (default_layer & (1UL << _COLEMAK)) {
         rgblight_set_magenta;
index 0b9347f1d0ffe0e7326e2be5886b21ef4d530857..2475c99d4fcfcb1ac41e2987ae7cc4d274617cd2 100644 (file)
@@ -45,17 +45,27 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define MODS_ALT_MASK  (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
 #define MODS_GUI_MASK  (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
 
-#ifdef RGBLIGHT_ENABLE
+#ifndef RGBLIGHT_ANIMATIONS // add "EXTRA_FLADS=-DDRASHNA_SETRGB" to enable this ... but don't
+#define rgblight_set_blue        rgblight_setrgb (0x00,  0x00, 0xFF);
+#define rgblight_set_red         rgblight_setrgb (0xFF,  0x00, 0x00);
+#define rgblight_set_green       rgblight_setrgb (0x00,  0xFF, 0x00);
+#define rgblight_set_orange      rgblight_setrgb (0xFF,  0x80, 0x00);
+#define rgblight_set_teal        rgblight_setrgb (0x00,  0xFF, 0xFF);
+#define rgblight_set_magenta     rgblight_setrgb (0xFF,  0x00, 0xFF);
+#define rgblight_set_yellow      rgblight_setrgb (0xFF,  0xFF, 0x00);
+#define rgblight_set_purple      rgblight_setrgb (0x7A,  0x00, 0xFF);
+#define rgblight_set_white       rgblight_setrgb (0xFF,  0xFF, 0xFF);
+#else
 #define rgblight_set_blue        rgblight_sethsv (0xFF,  0xFF, 0xFF);
 #define rgblight_set_red         rgblight_sethsv (0x00,  0xFF, 0xFF);
 #define rgblight_set_green       rgblight_sethsv (0x78,  0xFF, 0xFF);
 #define rgblight_set_orange      rgblight_sethsv (0x1E,  0xFF, 0xFF);
-#define rgblight_set_teal        rgblight_sethsv (0xC3,  0xFF, 0xFF);
+#define rgblight_set_teal        rgblight_sethsv (0xB4,  0xFF, 0xFF);
 #define rgblight_set_magenta     rgblight_sethsv (0x12C, 0xFF, 0xFF);
 #define rgblight_set_yellow      rgblight_sethsv (0x3C,  0xFF, 0xFF);
 #define rgblight_set_purple      rgblight_sethsv (0x10E, 0xFF, 0xFF);
 #define rgblight_set_white       rgblight_sethsv (0x00,  0x00, 0xFF);
-#endif
+#endif // DRASHNA_SETRGB
 
 extern bool is_overwatch;
 extern bool rgb_layer_change;
@@ -103,6 +113,17 @@ enum {
 };
 #endif
 
+#ifdef TAP_DANCE_ENABLE
+#define KC_D3_1 TD(TD_D3_1)
+#define KC_D3_2 TD(TD_D3_2)
+#define KC_D3_3 TD(TD_D3_3)
+#define KC_D3_4 TD(TD_D3_4)
+#else
+#define KC_D3_1 KC_1
+#define KC_D3_2 KC_2
+#define KC_D3_3 KC_3
+#define KC_D3_4 KC_4
+#endif
 
 #define QMK_KEYS_PER_SCAN 8
 
@@ -110,4 +131,6 @@ enum {
 #define RGBLIGHT_SLEEP
 #endif
 
+#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
+
 #endif
index 0523be2a6d9d1c0ad68c161f150a03e9366670dd..e77948ea9a214b1ab8f5d69edd09cd93520e3fe7 100644 (file)
@@ -4,19 +4,26 @@ Overview
 This is my personal userspace file.  Most of my code exists here, as it's heavily shared. 
 
 
-Custom handlers
----------------
+Custom userspace handlers
+-------------------------
+
+Specifically QMK works by using customized handlers for everything. This allows for multiple levels of customization.
+
+`matrix_scan` calls `matrix_scan_quantum`, which alls `matrix_scan_kb`, which calls `matrix_scan_user`. 
+`process_record` calls a bunch of stuff, but eventually calls `process_record_kb` which calls `process_record_user`
+The same goes for `matrix_init`, `layer_state_set`, `led_set`, and a few other functions.  
 
 All (most) `_user` functions are handled here instead.  To allow keyboard specific configuration, I've created `_keymap` functions that can be called by the keymap.c files instead.
 
 This allows for keyboard specific configuration while maintaining the ability to customize the board. 
 
-My Ergodox EZ Keymap is a good example of this, as it uses the LEDs as modifier indicators.
+My [Ergodox EZ Keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/drashna/keymap.c#L399) is a good example of this, as it uses the LEDs as modifier indicators.
+
 
 Custom Keycodes
 ---------------
 
-Keycods are defined in the drashna.h file and need to be included in the keymap.c files, so that they can be used there. 
+Keycodes are defined in the drashna.h file and need to be included in the keymap.c files, so that they can be used there. 
 
 A bunch of macros are present and are only included on boards that are not the Ergodox EZ or Orthodox, as they are not needed for those boards. 
 
index 6ce1ff5ba79925ad89b3017116a319f5282c0c5b..ab2ab607d484b9ea3d51b65b78c7aa5b1fb368c2 100644 (file)
@@ -1,3 +1,3 @@
 
 SRC += drashna.c
-EXTRAFLAGS        = -flto
+EXTRAFLAGS        += -flto