summaryrefslogtreecommitdiff
path: root/keyboards/dm9records
diff options
context:
space:
mode:
authorfauxpark <fauxpark@gmail.com>2023-12-20 16:03:14 +1100
committerfauxpark <fauxpark@gmail.com>2023-12-20 16:03:14 +1100
commit2c191e21c280a78e71767a73f31cd7017382186c (patch)
tree9712dc3c8fb836c708ac67a2c4ab0dbf2fa6d674 /keyboards/dm9records
parent8812a095814fdad3ab245fa2c00e29cb50ee2e92 (diff)
parentc8728880de198f5797463efbbba3eba7f1e4444a (diff)
Merge remote-tracking branch 'upstream/master' into develop
Diffstat (limited to 'keyboards/dm9records')
-rw-r--r--keyboards/dm9records/plaid/keymaps/brickbots/keymap.c411
-rw-r--r--keyboards/dm9records/plaid/keymaps/brickbots/readme.md36
-rw-r--r--keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c213
-rw-r--r--keyboards/dm9records/plaid/keymaps/gipsy-king/readme.md19
-rw-r--r--keyboards/dm9records/plaid/keymaps/stephen-huan/keymap.c356
-rw-r--r--keyboards/dm9records/plaid/keymaps/stephen-huan/readme.md1
-rw-r--r--keyboards/dm9records/plaid/keymaps/thehalfdeafchef/keymap.c182
-rw-r--r--keyboards/dm9records/plaid/keymaps/thehalfdeafchef/readme.md5
8 files changed, 0 insertions, 1223 deletions
diff --git a/keyboards/dm9records/plaid/keymaps/brickbots/keymap.c b/keyboards/dm9records/plaid/keymaps/brickbots/keymap.c
deleted file mode 100644
index 975eacaebc..0000000000
--- a/keyboards/dm9records/plaid/keymaps/brickbots/keymap.c
+++ /dev/null
@@ -1,411 +0,0 @@
-/* Copyright 2019 Takuya Urakawa (dm9records.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * 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
-
-extern keymap_config_t keymap_config;
-
-enum plaid_layers {
- _QWERTY,
- _COLEMAK,
- _DVORAK,
- _LOWER,
- _RAISE,
- _PLOVER,
- _ADJUST
-};
-
-enum plaid_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- PLOVER,
- EXT_PLV,
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0
-};
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-// array of keys considered modifiers for led purposes
-const uint16_t modifiers[] = {
- KC_LCTL,
- KC_RCTL,
- KC_LALT,
- KC_RALT,
- KC_LSFT,
- KC_RSFT,
- KC_LGUI,
- KC_RGUI,
- LOWER,
- RAISE
-};
-
-//Setup consts for LED modes
-#define LEDMODE_ON 1 //always on
-#define LEDMODE_OFF 0 //always off
-#define LEDMODE_MODS 2 //On with modifiers
-#define LEDMODE_BLINKIN 3 //blinkinlights - % chance toggle on keypress
-#define LEDMODE_KEY 4 //On with any keypress, off with key release
-#define LEDMODE_ENTER 5 // On with enter key
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ltrl | Rctl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_plaid_grid(
- 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_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- KC_LCTL, KC_RCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | RAlt | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_plaid_grid(
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- KC_LCTL, KC_RALT, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S | / |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | RAlt | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_DVORAK] = LAYOUT_plaid_grid(
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT ,
- KC_LCTL, KC_RALT, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_plaid_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_plaid_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Plover layer (http://opensteno.org)
- * ,-----------------------------------------------------------------------------------.
- * | # | # | # | # | # | # | # | # | # | # | # | # |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | S | T | P | H | * | * | F | P | L | T | D |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | S | K | W | R | * | * | R | B | G | S | Z |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Exit | | | A | O | | E | U | | | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_PLOVER] = LAYOUT_plaid_grid(
- KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ,
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
- XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * |Reset | | | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_plaid_grid(
- QK_BOOT,LED_1, LED_2, LED_3, LED_4, LED_5,LED_6, LED_7, LED_8, LED_9, LED_0,KC_DEL ,
- _______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-
-};
-
-//Setup config struct for LED
-typedef union {
- uint32_t raw;
- struct {
- uint8_t red_mode :8;
- uint8_t green_mode :8;
- };
-} led_config_t;
-led_config_t led_config;
-
-//Set leds to saved state during powerup
-void keyboard_post_init_user(void) {
- // Call the post init code.
- led_config.raw = eeconfig_read_user();
-
- if(led_config.red_mode == LEDMODE_ON) {
- writePinHigh(LED_RED);
- }
-
- if(led_config.green_mode == LEDMODE_ON) {
- writePinHigh(LED_GREEN);
- }
-}
-
-void eeconfig_init_user(void) { // EEPROM is getting reset!
- led_config.raw = 0;
- led_config.red_mode = LEDMODE_ON;
- led_config.green_mode = LEDMODE_MODS;
- eeconfig_update_user(led_config.raw);
- eeconfig_update_user(led_config.raw);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-void led_keypress_update(uint8_t led, uint8_t led_mode, uint16_t keycode, keyrecord_t *record) {
- switch (led_mode) {
- case LEDMODE_MODS:
- for (int i=0;i<ARRAY_SIZE(modifiers);i++) {
- if(keycode==modifiers[i]) {
- if (record->event.pressed) {
- writePinHigh(led);
- }
- else {
- writePinLow(led);
- }
- }
- }
- break;
- case LEDMODE_BLINKIN:
- if (record->event.pressed) {
- if(rand() % 2 == 1) {
- if(rand() % 2 == 0) {
- writePinLow(led);
- }
- else {
- writePinHigh(led);
- }
- }
- }
- break;
- case LEDMODE_KEY:
- if (record->event.pressed) {
- writePinHigh(led);
- return;
- }
- else {
- writePinLow(led);
- return;
- }
- break;
- case LEDMODE_ENTER:
- if (keycode==KC_ENT) {
- writePinHigh(led);
- }
- else {
- writePinLow(led);
- }
- break;
-
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- /* If the either led mode is keypressed based, call the led updater
- then let it fall through the keypress handlers. Just to keep
- the logic out of this procedure */
- if (led_config.red_mode >= LEDMODE_MODS && led_config.red_mode <= LEDMODE_ENTER) {
- led_keypress_update(LED_RED, led_config.red_mode, keycode, record);
- }
- if (led_config.green_mode >= LEDMODE_MODS && led_config.green_mode <= LEDMODE_ENTER) {
- led_keypress_update(LED_GREEN, led_config.green_mode, keycode, record);
- }
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- print("mode just switched to qwerty and this is a huge string\n");
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- break;
- case PLOVER:
- if (record->event.pressed) {
- layer_off(_RAISE);
- layer_off(_LOWER);
- layer_off(_ADJUST);
- layer_on(_PLOVER);
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
- keymap_config.raw = eeconfig_read_keymap();
- keymap_config.nkro = 1;
- eeconfig_update_keymap(keymap_config.raw);
- }
- return false;
- break;
- case EXT_PLV:
- if (record->event.pressed) {
- layer_off(_PLOVER);
- }
- return false;
- break;
- case LED_1:
- if (record->event.pressed) {
- if (led_config.red_mode==LEDMODE_ON) {
- led_config.red_mode=LEDMODE_OFF;
- writePinLow(LED_RED);
- }
- else {
- led_config.red_mode=LEDMODE_ON;
- writePinHigh(LED_RED);
- }
- }
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_2:
- if (record->event.pressed) {
- if (led_config.green_mode==LEDMODE_ON) {
- led_config.green_mode=LEDMODE_OFF;
- writePinLow(LED_GREEN);
- }
- else {
- led_config.green_mode=LEDMODE_ON;
- writePinHigh(LED_GREEN);
- }
- }
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_3:
- led_config.red_mode=LEDMODE_MODS;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_4:
- led_config.green_mode=LEDMODE_MODS;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_5:
- led_config.red_mode=LEDMODE_BLINKIN;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_6:
- led_config.green_mode=LEDMODE_BLINKIN;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_7:
- led_config.red_mode=LEDMODE_KEY;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_8:
- led_config.green_mode=LEDMODE_KEY;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_9:
- led_config.red_mode=LEDMODE_ENTER;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- case LED_0:
- led_config.green_mode=LEDMODE_ENTER;
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- }
- return true;
-}
diff --git a/keyboards/dm9records/plaid/keymaps/brickbots/readme.md b/keyboards/dm9records/plaid/keymaps/brickbots/readme.md
deleted file mode 100644
index 48a12fa8bb..0000000000
--- a/keyboards/dm9records/plaid/keymaps/brickbots/readme.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# Brickbots keymap for plaid
-Original copyright 2019 Takuya Urakawa (dm9records.com)
-LED Support added by Richard Sutherland (rich@brickbots.com)
-
-This layout is based on the Planck layout, with esc/tab swapped and an extra
-ctrl key in the bottom left corner. It includes an adjust layer (6)
-accessible by holding the lower and raise modifiers (MO3 and MO4) together.
-The adjustment layer is used to set the behavior of the two LEDs:
-
-**Modifier Mode:**
-Activates when any modifier (shift, alt, os, MO) key is held
-down. LED turns off when key is release
-
-**Blinkinlights Mode:**
-Random chance of state change on each keystroke.
-
-**Keypress Mode:**
-On for any keypress as long as the key is pressed
-
-**Carriage Mode:**
-Turns on when enter is pressed, turns off when any next key is pressed
-
-To set the behavior of an LED, and save it to eeprom, hold the
-raise/lower keys together to access the adjust layer, then use
-the keys indicated below to set the behaviors
-
-* q = Toggle Red LED state, deactivates any other modes
-* w = Toggle Green LED state, deactivates any other modes
-* e = Set RED LED to modifier mode
-* r = Set GREEN LED to modifier mode
-* t = Set RED LED to Blinkinlights mode
-* y = set GREEN LED to Blinkinlights mode
-* u = set RED LED to Keypress mode
-* i = set GREEN LED to Keypress mode
-* o = set RED LED to Carriage mode
-* p = set GREEN LED to Carriage mode
diff --git a/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c b/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c
deleted file mode 100644
index a91664f0c9..0000000000
--- a/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c
+++ /dev/null
@@ -1,213 +0,0 @@
-/* Copyright 2020 Benjamin Große <ste3ls@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * 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
-
-enum plaid_layers {
- _QWERTY,
- _XMONAD,
- _RAISE,
- _LOWER,
-};
-
-enum plaid_keycodes {
- AUTOCLICK = SAFE_RANGE
-};
-
-static bool autoclick = false;
-static bool autoclick_state = false;
-static uint16_t autoclick_timer = 0;
-
-#define XMONAD LM(_XMONAD, MOD_LGUI)
-#define SPC_LWR LT(_LOWER, KC_SPACE)
-#define ENT_RSE LT(_RAISE, KC_ENT)
-#define LOWER LT(_LOWER, KC_BSPC)
-
-#define LS_ESC LSFT_T(KC_ESC)
-#define RS_QUOT RSFT_T(KC_QUOT)
-
-#define LCT_MINS LCTL_T(KC_MINS)
-#define RCT_EQL RCTL_T(KC_EQL)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P |Bckspc|
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | - | Z | X | C | V | B | N | M | , | . | / | = |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Alt | GUI |XMONAD|LShift| Space |Ent/RA|RShift|LOWER | RAlt |RCtrl |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_plaid_grid( // Base QWERTY
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LS_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, RS_QUOT,
- LCT_MINS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RCT_EQL,
- KC_LCTL, KC_LALT, KC_LGUI, XMONAD, SC_LSPO, KC_SPACE,_______, ENT_RSE, SC_RSPC, LOWER, KC_RALT, KC_RCTL
-),
-
-[_XMONAD] = LAYOUT_plaid_grid( // Xmonad with MOD4
- KC_Q, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_P, _______,
- KC_LSFT, _______, _______, _______, _______, _______, KC_H, KC_J, KC_K, KC_L, _______, _______,
- KC_LSFT, _______, _______, KC_C, _______, KC_B, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_ENT, _______, _______, _______, _______
-),
-
-/* Raised
- * ,-----------------------------------------------------------------------------------.
- * | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | \ |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ~ | { | PgUp | PgDn | End | Home | Left | Down | Up | Right| } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | [ | ! | @ | # | $ | % | ^ | & | * | ( | ) | ] |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | |VolDn |VolUp |Mute |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_plaid_grid( // Numbers, arrows, symbols
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- KC_TILD, KC_LCBR, KC_PGUP, KC_PGDN, KC_END, KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_RCBR, KC_PIPE,
- KC_LBRC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_RBRC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE
-),
-
-[_LOWER] = LAYOUT_plaid_grid( // F, media keys, reset
- KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, _______, MU_NEXT, AU_ON, AU_OFF, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, QK_BOOT,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, AUTOCLICK
-)
-};
-
-#define BLINKEN_RANDOM_STARTLE false
-static uint16_t blinken_timer = 0;
-static uint16_t next_timeout = 1000;
-enum blinken_modes {
- BLINK_HOLD,
- BLINK_STARTLED,
- BLINK_STARTLED_LAYER
-};
-static uint16_t blinken_mode = BLINK_HOLD;
-static uint16_t blinken_timer_startled = 0;
-static uint16_t blinken_startled_state = 0;
-
-void matrix_init_user(void) {
- // https://github.com/hsgw/plaid/issues/15#issuecomment-534677102
- eeconfig_init();
-}
-
-void keyboard_post_init_user(void) {
- writePinHigh(LED_RED);
- writePinHigh(LED_GREEN);
- blinken_timer = timer_read();
-}
-
-void matrix_scan_user(void) {
- if (blinken_mode != BLINK_STARTLED_LAYER && timer_elapsed(blinken_timer) > next_timeout) {
- blinken_timer = timer_read();
- if (BLINKEN_RANDOM_STARTLE && rand() % 5 == 0) {
- blinken_mode = BLINK_STARTLED;
- blinken_timer_startled = timer_read();
- blinken_startled_state = 0;
- } else {
- blinken_mode = BLINK_HOLD;
-
- if(rand() % 2 == 0) {
- next_timeout = 1000;
- } else if(rand() % 2 == 0) {
- next_timeout = 500;
- } else {
- next_timeout = 300;
- }
-
- if(rand() % 2 == 0) {
- writePinLow(LED_RED);
- } else {
- writePinHigh(LED_RED);
- }
- if(rand() % 2 == 0) {
- writePinLow(LED_GREEN);
- } else {
- writePinHigh(LED_GREEN);
- }
- }
- } else if ((blinken_mode == BLINK_STARTLED || blinken_mode == BLINK_STARTLED_LAYER)
- && timer_elapsed(blinken_timer_startled) > 50) {
- blinken_timer_startled = timer_read();
- switch (blinken_startled_state) {
- case 0:
- writePinLow(LED_GREEN);
- blinken_startled_state += 1;
- break;
- case 1:
- writePinHigh(LED_RED);
- blinken_startled_state += 1;
- break;
- case 2:
- writePinHigh(LED_GREEN);
- blinken_startled_state += 1;
- break;
- case 3:
- writePinLow(LED_RED);
- blinken_startled_state = 0;
- break;
- }
- }
- if (autoclick && timer_elapsed(autoclick_timer) > (autoclick_state ? 20 : 100)) {
- if (!autoclick_state) {
- mousekey_on(KC_MS_BTN1);
- } else {
- mousekey_off(KC_MS_BTN1);
- }
- mousekey_send();
- autoclick_state = !autoclick_state;
- autoclick_timer = timer_read();
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case _RAISE:
- blinken_mode = BLINK_STARTLED_LAYER;
- break;
- case _XMONAD:
- blinken_mode = BLINK_STARTLED_LAYER;
- break;
- case _LOWER:
- blinken_mode = BLINK_STARTLED_LAYER;
- break;
- default:
- blinken_mode = BLINK_HOLD;
- break;
- }
- return state;
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case AUTOCLICK:
- if (record->event.pressed) {
- autoclick = !autoclick;
- autoclick_timer = timer_read();
- }
- break;
- }
- return true;
-};
diff --git a/keyboards/dm9records/plaid/keymaps/gipsy-king/readme.md b/keyboards/dm9records/plaid/keymaps/gipsy-king/readme.md
deleted file mode 100644
index 999d92c844..0000000000
--- a/keyboards/dm9records/plaid/keymaps/gipsy-king/readme.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Gipsy keymap for plaid
-
-This layout is based on my corne layout:
-* QWERTY with Tab, Backspace on top, dash and equals on the bottom.
-* RAISE has numbers on top, arrows on hjkl, end/home on F/G, symbols on the
- bottom and around.
-* XMONAD has xmonad wm key bindings, should be used with Layer modifier LGUI
-* LOWER has F keys and shouldn't be used much.
-* Thumbs are: XMONAD, Left SC shift, Space, Enter/Raise, Right SC shift
-
-Does not have so many modtaps, basically just on enter.
-
-The LEDs of the plaid keep blinking in a soothing dance, reminiscent of some
-old machine.
-
-When any layer is active, the LEDs are "startled".
-
-There is an autoclicker for minecraft.
-
diff --git a/keyboards/dm9records/plaid/keymaps/stephen-huan/keymap.c b/keyboards/dm9records/plaid/keymaps/stephen-huan/keymap.c
deleted file mode 100644
index de9d6cc45b..0000000000
--- a/keyboards/dm9records/plaid/keymaps/stephen-huan/keymap.c
+++ /dev/null
@@ -1,356 +0,0 @@
-/* Copyright 2019 Takuya Urakawa (dm9records.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * 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
-
-
-enum plaid_layers {
- _QWERTY,
- _LOWER,
- _RAISE,
- _ADJUST
-};
-
-enum plaid_keycodes {
- QWERTY = SAFE_RANGE,
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0
-};
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-// array of keys considered modifiers for led purposes
-const uint16_t modifiers[] = {
- KC_LCTL,
- KC_RCTL,
- KC_LALT,
- KC_RALT,
- KC_LSFT,
- KC_RSFT,
- KC_LGUI,
- KC_RGUI,
- LOWER,
- RAISE
-};
-
-//Setup consts for LED modes
-#define LEDMODE_ON 1 //always on
-#define LEDMODE_OFF 0 //always off
-#define LEDMODE_MODS 2 //On with modifiers
-#define LEDMODE_BLINKIN 3 //blinkinlights - % chance toggle on keypress
-#define LEDMODE_KEY 4 //On with any keypress, off with key release
-#define LEDMODE_ENTER 5 // On with enter key
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |Esc/hy| A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | fn | Alt | GUI |Lower | Space |Raise | GUI | Alt |Shift | Ctrl |
- * `-----------------------------------------------------------------------------------'
- * (karabiner remaps Caps lock -> fn)
- */
-[_QWERTY] = LAYOUT_plaid_grid(
- KC_TAB , KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- HYPR_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_RSFT , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- KC_RCTL , KC_CAPS, KC_RALT, KC_RGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_RGUI, KC_RALT, KC_RSFT, KC_RCTL
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Prev | Vol- | Play |
- * `-----------------------------------------------------------------------------------'
- * volume up key repeats randomly on mac, have to use mac specific volume
- */
-[_LOWER] = LAYOUT_plaid_grid(
- KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0 , KC_BSPC,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC , KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______ , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ~ | | | End | | | |Pg Up | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Home | |Pg Dn | | | Left | Down | Up |Right | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | Copy |Paste | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Next | Vol+ | Mute |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_plaid_grid(
- KC_TILD, _______, _______, KC_END, _______, _______, _______, KC_PGUP, _______, _______, _______ , KC_DEL ,
- _______, KC_HOME, _______, KC_PGDN, _______, _______, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______ , _______,
- _______, _______, _______, KC_COPY, KC_PSTE, KC_PGDN, _______, _______, _______, _______, _______ , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLU, KC_MUTE
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * |Reset | Red |Green | Rmod | Gmod |Rblink|Gblink| Rkey | Gkey | Rcar | Gcar | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | |Power |Sleep |Wake |Eject | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_plaid_grid(
- QK_BOOT, LED_1 , LED_2 , LED_3 , LED_4 , LED_5 ,LED_6 , LED_7 , LED_8 , LED_9 , LED_0 , _______ ,
- _______, KC_PWR , KC_SLEP, KC_WAKE, KC_EJCT, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-
-};
-
-//Setup config struct for LED
-typedef union {
- uint32_t raw;
- struct {
- uint8_t red_mode :8;
- uint8_t green_mode :8;
- };
-} led_config_t;
-led_config_t led_config;
-
-//Set leds to saved state during powerup
-void keyboard_post_init_user(void) {
- // set LED pin modes
- setPinOutput(LED_RED);
- setPinOutput(LED_GREEN);
-
- // Call the post init code.
- led_config.raw = eeconfig_read_user();
-
- if(led_config.red_mode == LEDMODE_ON) {
- writePinHigh(LED_RED);
- }
-
- if(led_config.green_mode == LEDMODE_ON) {
- writePinHigh(LED_GREEN);
- }
-}
-
-void eeconfig_init_user(void) { // EEPROM is getting reset!
- led_config.raw = 0;
- led_config.red_mode = LEDMODE_ON;
- led_config.green_mode = LEDMODE_MODS;
- eeconfig_update_user(led_config.raw);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-void led_keypress_update(uint8_t led, uint8_t led_mode, uint16_t keycode, keyrecord_t *record) {
- switch (led_mode) {
- case LEDMODE_MODS:
- for (int i=0;i<ARRAY_SIZE(modifiers);i++) {
- if(keycode==modifiers[i]) {
- if (record->event.pressed) {
- writePinHigh(led);
- }
- else {
- writePinLow(led);
- }
- }
- }
- break;
- case LEDMODE_BLINKIN:
- if (record->event.pressed) {
-
- /* Markov Chain
- *
- * 1 - x 1 - y
- * /---\ /---\
- * v | v |
- * /------\ x /------\
- * | |------>| |
- * | on | y | off |
- * | |<------| |
- * \------/ \------/
- */
-
- /* Non-homogeneous Markov Chain
- *
- * /-----\ 1 - x0 /-----\ 1 - x1 /-----\
- * |on 0|------->|on 1|------->|on 2|----> ...
- * \-----/\ /\-----/\ /\-----/\
- * \ / \ / .
- * x0\ / x1\ / .
- * \/ \/ .
- * /\ /\
- * y0/ \ y1/ \ .
- * / \ / \ .
- * / \ / \ .
- * /-----\ 1 - y0 /-----\ 1 - y1 /-----\/
- * |off 0|------->|off 1|------->|off 2|----> ...
- * \-----/ \-----/ \-----/
- *
- *
- * if x = 1/4 and y 1/4, behavior is equivalent to the original code
- * and converges to a steady state at the rate of 1/2^k
- * where k is the number of key presses
- * (the distance from a given vector to the steady state, [1/2, 1/2],
- * is cut in half every key press)
- *
- * if x = y, then it is guaranteed that the steady state is still
- * [1/2, 1/2], but the rate at which it converges is variable
- *
- * if x != y, then there is no well-defined steady state
- */
-
- double x = (1.0*rand())/RAND_MAX;
- double y = x;
-
- double p = (readPin(led)) ? x : y;
- if (rand() < p*RAND_MAX) {
- togglePin(led);
- }
-
- /* following code is restriced to x + y <= 1
- * if(rand() % 2 == 1) { */
- /* if(rand() % 2 == 0) { */
- /* writePinLow(led); */
- /* } */
- /* else { */
- /* writePinHigh(led); */
- /* } */
- /* } */
- }
- break;
- case LEDMODE_KEY:
- if (record->event.pressed) {
- writePinHigh(led);
- return;
- }
- else {
- writePinLow(led);
- return;
- }
- break;
- case LEDMODE_ENTER:
- if (keycode==KC_ENT) {
- writePinHigh(led);
- }
- else {
- writePinLow(led);
- }
- break;
-
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- /* If the either led mode is keypressed based, call the led updater
- then let it fall through the keypress handlers. Just to keep
- the logic out of this procedure */
- if (led_config.red_mode >= LEDMODE_MODS && led_config.red_mode <= LEDMODE_ENTER) {
- led_keypress_update(LED_RED, led_config.red_mode, keycode, record);
- }
- if (led_config.green_mode >= LEDMODE_MODS && led_config.green_mode <= LEDMODE_ENTER) {
- led_keypress_update(LED_GREEN, led_config.green_mode, keycode, record);
- }
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- print("mode just switched to qwerty and this is a huge string\n");
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case LED_1:
- if (record->event.pressed) {
- if (led_config.red_mode==LEDMODE_ON) {
- led_config.red_mode=LEDMODE_OFF;
- writePinLow(LED_RED);
- }
- else {
- led_config.red_mode=LEDMODE_ON;
- writePinHigh(LED_RED);
- }
- }
- break;
- case LED_2:
- if (record->event.pressed) {
- if (led_config.green_mode==LEDMODE_ON) {
- led_config.green_mode=LEDMODE_OFF;
- writePinLow(LED_GREEN);
- }
- else {
- led_config.green_mode=LEDMODE_ON;
- writePinHigh(LED_GREEN);
- }
- }
- break;
- case LED_3:
- led_config.red_mode=LEDMODE_MODS;
- break;
- case LED_4:
- led_config.green_mode=LEDMODE_MODS;
- break;
- case LED_5:
- led_config.red_mode=LEDMODE_BLINKIN;
- break;
- case LED_6:
- led_config.green_mode=LEDMODE_BLINKIN;
- break;
- case LED_7:
- led_config.red_mode=LEDMODE_KEY;
- break;
- case LED_8:
- led_config.green_mode=LEDMODE_KEY;
- break;
- case LED_9:
- led_config.red_mode=LEDMODE_ENTER;
- break;
- case LED_0:
- led_config.green_mode=LEDMODE_ENTER;
- break;
- }
-
- if (keycode >= LED_1 && keycode <= LED_0) {
- eeconfig_update_user(led_config.raw);
- }
-
- return true;
-}
diff --git a/keyboards/dm9records/plaid/keymaps/stephen-huan/readme.md b/keyboards/dm9records/plaid/keymaps/stephen-huan/readme.md
deleted file mode 100644
index e52d24c3df..0000000000
--- a/keyboards/dm9records/plaid/keymaps/stephen-huan/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# stephen-huan's keymap for Plaid
diff --git a/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/keymap.c b/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/keymap.c
deleted file mode 100644
index 82494e40af..0000000000
--- a/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/keymap.c
+++ /dev/null
@@ -1,182 +0,0 @@
-#include QMK_KEYBOARD_H
-
-enum plaid_layers {
- _QWERTY,
- _DVORAK,
- _COLEMAK,
- _LOWER,
- _RAISE,
- _FUNCTION,
-};
-
-enum plaid_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LED };
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-#define LED_ON 1
-#define LED_OFF 0
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | LS/( | Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | LGUI | Alt | [ |Lower | Space |Raise | ] | RGUI | \ | RS/) |
- * `-----------------------------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT_planck_mit(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_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, KC_LGUI, KC_LALT, KC_LBRC, LOWER, KC_SPC, RAISE, KC_RBRC, KC_RGUI, KC_BSLS, SC_RSPC),
-
- /* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | R | S | T | D | H | N | E | I | O | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | LS/( | Z | X | C | V | B | K | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | LGUI | Alt | [ |Lower | Space |Raise | ] | RGUI | \ | RS/) |
- * `-----------------------------------------------------------------------------------'
- */
-
- [_COLEMAK] = LAYOUT_planck_mit(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_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, KC_RALT, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_RBRC, KC_RGUI, KC_BSLS, SC_RSPC),
-
- /* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | Esc | " | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | O | E | U | I | D | H | T | N | S | / |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | LGUI | Alt | [ |Lower | Space |Raise | ] | RGUI | \ | RS/) |
- * `-----------------------------------------------------------------------------------'
- */
-
- [_DVORAK] = LAYOUT_planck_mit(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_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, SC_LSPO, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT, KC_LCTL, KC_RALT, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_RBRC, KC_RGUI, KC_BSLS, SC_RSPC),
-
- /* LOWER
- * ,----------------------------------------------------------------------------.
- * | | | MPRV | MPLY | MNXT | | | | PGUP| UP | PGDN|PSCR |
- * |------+------+------+------+------+-----+-----+-----+-----+-----------+-----+
- * | | | MUTE | VOLD | VOLU | | | | LEFT| DOWN|RIGHT| |
- * |------+------+------+------+------+-----+-----+-----+-----+-----+-----+-----+
- * | | | MAIL | WBAK | WFWD | | | | HOME| | END | |
- * |------+------+------+------+------+-----+-----+-----+-----+-----------+-----+
- * | | | | | | DEL | | | | | |
- * `----------------------------------------------------------------------------'
- */
-
- [_LOWER] = LAYOUT_planck_mit(KC_NO, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_NO, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_MAIL, KC_WBAK, KC_WFWD, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO),
-
- /* RAISE
- * ,--------------------------------------------------------------------------------.
- * | NLCK | 1 | 2 | 3 | - | | | | ! | # | $ | + |
- * |------+------+------+------+------+-----+-----+-----+------+------+------+------+
- * | / | 4 | 5 | 6 | + | | | | % | ! | ! | = |
- * |------+------+------+------+------+-----+-----+-----+------+------+------+------+
- * | * | 7 | 8 | 9 | , | | | | _ | - | @ | ~ |
- * |------+------+------+------+------+-----+-----+-----+------+------+------+------+
- * | | 0 | . | Ent | = | | | | | | ` |
- * `--------------------------------------------------------------------------------'
- */
-
- [_RAISE] = LAYOUT_planck_mit(KC_NUM, KC_P1, KC_P2, KC_P3, KC_PMNS, KC_NO, KC_NO, KC_NO, KC_EXLM, KC_HASH, KC_DLR, KC_PLUS, KC_PSLS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_NO, KC_NO, KC_NO, KC_PERC, KC_ASTR, KC_AMPR, KC_EQL, KC_PAST, KC_P7, KC_P8, KC_P9, KC_PCMM, KC_NO, KC_NO, KC_NO, KC_UNDS, KC_MINS, KC_AT, KC_TILDE, KC_NO, KC_P0, KC_PDOT, KC_PENT, KC_PEQL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV),
-
- /* Function (Lower + Raise)
- * ,-----------------------------------------------------------------------------------------------------------------------.
- * | QK_BOOT| LCA_T(F1) | LCA_T(F2) | LCA_T(F3) | LCA_T(F4) | LCA_T(F5) | LCA_T(F6) | LCA_T(F7) | | | | |
- * |------+------------+-----------+-----------+-----------+-----------+-----------+-----------+------+------+------+------+
- * | | | | | | QWERTY | DVORAK | COLEMAK | | | | |
- * |------+------------+-----------+-----------+-----------+-----------+-----------+-----------+------+------+------+------+
- * | | | | | | | | | | | | |
- * |------+------------+-----------+-----------+-----------+-----------+-----------+-----------+------+------+------+------+
- * | | | | | | LED | | | | | |
- * `-----------------------------------------------------------------------------------------------------------------------'
- */
-
- [_FUNCTION] = LAYOUT_planck_mit(QK_BOOT, LCA_T(KC_F1), LCA_T(KC_F2), LCA_T(KC_F3), LCA_T(KC_F4), LCA_T(KC_F5), LCA_T(KC_F6), LCA_T(KC_F7), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QWERTY, DVORAK, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LED, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO)};
-
-// constants to toggle LED behavior
-
-// Setup config struct for LED
-typedef union {
- uint32_t raw;
- struct {
- bool red_mode : 1;
- bool green_mode : 1;
- };
-} led_config_t;
-led_config_t led_config;
-
-void keyboard_post_init_user(void) { led_config.raw = eeconfig_read_user(); }
-
-void eeconfig_init_user(void) { // EEPROM is getting reset!
- led_config.raw = 0;
- led_config.red_mode = LED_ON;
- led_config.green_mode = LED_ON;
- eeconfig_update_user(led_config.raw);
- eeconfig_update_user(led_config.raw);
-}
-
-// When LOWER and RAISE are held together, go to the FUNCTION layer
-layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _FUNCTION); }
-
-// Runs constantly in the background, in a loop.
-void matrix_scan_user(void) {
- uint8_t layer = get_highest_layer(layer_state);
-
- switch (layer) {
- case _LOWER:
- writePinHigh(LED_RED);
- break;
- case _RAISE:
- writePinHigh(LED_GREEN);
- break;
- default:
- writePinLow(LED_GREEN);
- writePinLow(LED_RED);
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- break;
- case LED:
- if (record->event.pressed) {
- if (led_config.red_mode == LED_ON && led_config.green_mode == LED_ON) {
- led_config.red_mode = LED_OFF;
- led_config.green_mode = LED_OFF;
- } else if (led_config.red_mode == LED_OFF && led_config.green_mode == LED_OFF) {
- led_config.red_mode = LED_ON;
- led_config.green_mode = LED_ON;
- }
- }
- eeconfig_update_user(led_config.raw);
- return false;
- break;
- }
- return true;
-}
diff --git a/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/readme.md b/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/readme.md
deleted file mode 100644
index bd09965b55..0000000000
--- a/keyboards/dm9records/plaid/keymaps/thehalfdeafchef/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-![Plaid Layout Image](https://i.imgur.com/WnVnwEG.png)
-
-# The Half Deaf Chef Plaid Layout
-
-Opinionated keymaps optimized for programmers. The Left and Right Shift tap as parenthesis and the bracket keys are to either side of the layer keys (LOWER, RAISE). A 'right-side' up number pad in a layer with a complementary 'symbol' pad on the opposite side. An additional layer is provided to switch to virtual console on Linux based systems running xorg. These changes are propagated among all the layouts.