aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/lets_split/keymaps
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/lets_split/keymaps')
-rw-r--r--keyboards/lets_split/keymaps/OLED_sample/keymap.c34
-rw-r--r--keyboards/lets_split/keymaps/default/rules.mk0
-rw-r--r--keyboards/lets_split/keymaps/halvves/config.h37
-rw-r--r--keyboards/lets_split/keymaps/halvves/keymap.c196
-rw-r--r--keyboards/lets_split/keymaps/halvves/rules.mk1
-rw-r--r--keyboards/lets_split/keymaps/khord/keymap.c4
-rw-r--r--keyboards/lets_split/keymaps/mekberg/README.md65
-rw-r--r--keyboards/lets_split/keymaps/mekberg/config.h34
-rw-r--r--keyboards/lets_split/keymaps/mekberg/keymap.c228
-rw-r--r--keyboards/lets_split/keymaps/zer09/config.h1
10 files changed, 568 insertions, 32 deletions
diff --git a/keyboards/lets_split/keymaps/OLED_sample/keymap.c b/keyboards/lets_split/keymaps/OLED_sample/keymap.c
index 67a20971c..0cf3503e4 100644
--- a/keyboards/lets_split/keymaps/OLED_sample/keymap.c
+++ b/keyboards/lets_split/keymaps/OLED_sample/keymap.c
@@ -37,15 +37,9 @@ enum custom_keycodes {
RGBLED_DECREASE_SAT,
RGBLED_INCREASE_VAL,
RGBLED_DECREASE_VAL,
+ M_SAMPLE
};
-enum macro_keycodes {
- KC_SAMPLEMACRO,
-};
-
-//Macros
-#define M_SAMPLE M(KC_SAMPLEMACRO)
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@@ -278,6 +272,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
+ case M_SAMPLE:
+ if (record->event.pressed){
+ SEND_STRING("hello world");
+ }
+ return false;
}
return true;
}
@@ -328,27 +327,6 @@ void music_scale_user(void)
#endif
-/*
- * Macro definition
- */
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
-{
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
-
- switch (id) {
- case KC_SAMPLEMACRO:
- if (record->event.pressed){
- return MACRO (I(10), T(H), T(E), T(L), T(L), T(O), T(SPACE), T(W), T(O), T(R), T(L), T(D), END);
- }
-
- }
-
- return MACRO_NONE;
-}
-
-
void matrix_update(struct CharacterMatrix *dest,
const struct CharacterMatrix *source) {
if (memcmp(dest->display, source->display, sizeof(dest->display))) {
diff --git a/keyboards/lets_split/keymaps/default/rules.mk b/keyboards/lets_split/keymaps/default/rules.mk
deleted file mode 100644
index e69de29bb..000000000
--- a/keyboards/lets_split/keymaps/default/rules.mk
+++ /dev/null
diff --git a/keyboards/lets_split/keymaps/halvves/config.h b/keyboards/lets_split/keymaps/halvves/config.h
new file mode 100644
index 000000000..70f6d13c7
--- /dev/null
+++ b/keyboards/lets_split/keymaps/halvves/config.h
@@ -0,0 +1,37 @@
+/*
+This is the c configuration file for the keymap
+
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+
+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/>.
+*/
+
+#pragma once
+
+/* Use I2C or Serial, not both */
+#define USE_SERIAL
+// #define USE_I2C
+
+/* Select hand configuration */
+// #define MASTER_LEFT
+// #define MASTER_RIGHT
+#define EE_HANDS
+
+// smooth mousekeys (copied from the ergo ez config)
+#define MOUSEKEY_INTERVAL 16
+#define MOUSEKEY_DELAY 0
+#define MOUSEKEY_TIME_TO_MAX 60
+#define MOUSEKEY_MAX_SPEED 7
+#define MOUSEKEY_WHEEL_DELAY 0
diff --git a/keyboards/lets_split/keymaps/halvves/keymap.c b/keyboards/lets_split/keymaps/halvves/keymap.c
new file mode 100644
index 000000000..6fbd64651
--- /dev/null
+++ b/keyboards/lets_split/keymaps/halvves/keymap.c
@@ -0,0 +1,196 @@
+#include QMK_KEYBOARD_H
+
+enum layer_names {
+ _QWERTY,
+ _COLEMAK,
+ _DVORAK,
+ _LOWER,
+ _RAISE,
+ _UTIL,
+ _MOUSE,
+ _ADJUST,
+};
+
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ COLEMAK,
+ DVORAK,
+};
+
+#define LOWER MO(_LOWER)
+#define RAISE MO(_RAISE)
+#define UTIL MO(_UTIL)
+#define MOUSE MO(_MOUSE)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+/* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Util | Ctrl | Alt | GUI |Lower | Space |Raise | Mouse| Mouse| | Util |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_QWERTY] = LAYOUT_ortho_4x12(
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
+ UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, UTIL
+),
+
+/* 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 |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Util | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Mouse| Mouse| | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_COLEMAK] = LAYOUT_ortho_4x12(
+ 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 ,
+ UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, XXXXXXX
+),
+
+/* 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 |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Util | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Mouse| Mouse| | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_DVORAK] = LAYOUT_ortho_4x12(
+ 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 ,
+ UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, XXXXXXX
+),
+
+/* Lower
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_ortho_4x12(
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ 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_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Raise
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_ortho_4x12(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
+ 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_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Util
+ * ,-----------------------------------------------------------------------------------.
+ * | | | | | | Reset|Reset | | | | | |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | | | | | | | LEFT | DOWN | UP | RGHT | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_UTIL] = LAYOUT_ortho_4x12(
+ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX,
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
+),
+
+/* Mouse
+ * ,-----------------------------------------------------------------------------------.
+ * | | | M Up | | | | | | |L Clk |R Clk | W Up |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | |M Left|M Down|M Rght| | | | | | | |W Down|
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_MOUSE] = LAYOUT_ortho_4x12(
+ XXXXXXX, XXXXXXX, KC_MS_U, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BTN1, KC_BTN2, KC_WH_U,
+ XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_D,
+ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
+),
+
+/* Adjust (Lower + Raise)
+ * ,-----------------------------------------------------------------------------------.
+ * | | Reset| | | | | | | | | | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_ADJUST] = LAYOUT_ortho_4x12(
+ _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
+ _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+)
+
+
+};
+
+layer_state_t layer_state_set_user(layer_state_t state) {
+ return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
+}
+
+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;
+ case COLEMAK:
+ if (record->event.pressed) {
+ set_single_persistent_default_layer(_COLEMAK);
+ }
+ return false;
+ case DVORAK:
+ if (record->event.pressed) {
+ set_single_persistent_default_layer(_DVORAK);
+ }
+ return false;
+ }
+ return true;
+}
diff --git a/keyboards/lets_split/keymaps/halvves/rules.mk b/keyboards/lets_split/keymaps/halvves/rules.mk
new file mode 100644
index 000000000..6c605daec
--- /dev/null
+++ b/keyboards/lets_split/keymaps/halvves/rules.mk
@@ -0,0 +1 @@
+MOUSEKEY_ENABLE = yes
diff --git a/keyboards/lets_split/keymaps/khord/keymap.c b/keyboards/lets_split/keymaps/khord/keymap.c
index 4209efabe..60b297394 100644
--- a/keyboards/lets_split/keymaps/khord/keymap.c
+++ b/keyboards/lets_split/keymaps/khord/keymap.c
@@ -1,6 +1,5 @@
#include QMK_KEYBOARD_H
-
extern keymap_config_t keymap_config;
#define _QWERTY 0
@@ -25,7 +24,6 @@ enum {
// Dylan's additions
#define C_A_DEL LALT(LCTL(KC_DEL))
#define C_A_INS LALT(LCTL(KC_INS))
-//#define MAC_LOK S(LCTL(KC_PWR))
#define MAC_LOK LCTL(LGUI(KC_Q))
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -81,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
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_PGDN, KC_PGUP, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4 \
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
),
/* Adjust (Lower + Raise)
diff --git a/keyboards/lets_split/keymaps/mekberg/README.md b/keyboards/lets_split/keymaps/mekberg/README.md
new file mode 100644
index 000000000..5202ec836
--- /dev/null
+++ b/keyboards/lets_split/keymaps/mekberg/README.md
@@ -0,0 +1,65 @@
+# Let's Mekberg!
+
+This is my take on a Swedish 40% layout in a split format. The priority is to have the most highly used keys opposite the modifier to make chording simpler. In other words, if the layer modifier is on the left half, the most used keys should be bound on the right half.
+
+## Layers
+
+### Default
+
+The default layer has normal alpha layout with the addition of Swedish letters, causing Enter to move down one key and backspace to take the place of the right space. The enter key also doubles as Shift when held.
+
+2nd row left modifier has been bound to both Ctrl and Tab with modtap (hold for Ctrl, tap for Tab).
+
+Delete is available on all non-default layers, positioned on the upper right corner key.
+
+### Raise
+
+The raised layer has all the symbols and special characters predefined. As much as possible, there should be no need to use additional modifiers.
+
+Arrow keys have been disabled on this layer to avoid accidental misclicks when pressing the Raise key.
+
+#### macOS / Windows variants
+
+Because macOS and Windows expect quite different keycodes to produce the same special characters (for example '{' or '|'), there are two different layers, one for each OS. To toggle either macOS (default) and Windows layouts within the RAISE layer, press SPECIAL + W for Windows or SPECIAL + M for macOS.
+
+### Lower
+
+The lower layer focuses on numbers, with a numpad-like layout on the right and F-keys in a homerow-centric layout on the left.
+
+### Special
+
+The special layer has Reset and EEP Reset keys on the left half, along with media and volume controls. On the right half it has movement keys starting in the IJKL cluster. Additionally, custom macOS Sleep and Lock Screen keys can be found on the right half on this layer.
+
+## Configuration
+
+### PERMISSIVE_HOLD
+
+This option is used because otherwise modtap functions would fail to trigger. This increases reliability for me.
+
+### USE_SERIAL
+
+N/A
+
+### EE_HANDS
+
+Prepared for EEPROM settings and different keymaps depending on USB port connected, but default master side remains left regardless.
+
+## Building
+
+Clean the build environment:
+
+```shell
+make clean
+```
+
+Build and flash left side:
+
+```shell
+make lets_split/rev2:mekberg:avrdude-split-left
+```
+
+Then do the same for the right side:
+
+```shell
+make lets_split/rev2:mekberg:avrdude-split-right
+```
diff --git a/keyboards/lets_split/keymaps/mekberg/config.h b/keyboards/lets_split/keymaps/mekberg/config.h
new file mode 100644
index 000000000..5523ecb5a
--- /dev/null
+++ b/keyboards/lets_split/keymaps/mekberg/config.h
@@ -0,0 +1,34 @@
+/*
+This is the c configuration file for the keymap
+
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+
+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/>.
+*/
+
+#pragma once
+
+// Define some configuration for modtap behavior
+// #define TAPPING_TERM 150
+#define PERMISSIVE_HOLD
+
+/* Use I2C or Serial, not both */
+#define USE_SERIAL
+// #define USE_I2C
+
+/* Select hand configuration */
+//#define MASTER_LEFT
+// #define MASTER_RIGHT
+#define EE_HANDS
diff --git a/keyboards/lets_split/keymaps/mekberg/keymap.c b/keyboards/lets_split/keymaps/mekberg/keymap.c
new file mode 100644
index 000000000..e530623f1
--- /dev/null
+++ b/keyboards/lets_split/keymaps/mekberg/keymap.c
@@ -0,0 +1,228 @@
+#include QMK_KEYBOARD_H
+
+/*
+Let's Split physical layout
+1u == 8chars
+* == Homing keys
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | | | | | | | | | | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | * | | | | * | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | | | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | | | | | | |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+
+// Layers
+enum layer_names {
+ _DEFAULT,
+ _DEFAULT_MAC,
+ _DEFAULT_WIN,
+ _RAISE_MAC,
+ _RAISE_WIN,
+ _LOWER,
+ _SPECIAL,
+};
+
+#define TO_MAC TO(_DEFAULT)
+#define TO_WIN TO(_DEFAULT_WIN)
+
+#define RAISE_M MO(_RAISE_MAC)
+#define RAISE_W MO(_RAISE_WIN)
+#define LOWER MO(_LOWER)
+#define SPECIAL MO(_SPECIAL)
+
+// Modifiers
+#define SFTENT KC_SFTENT // Enter => Shift when held
+#define CTLTAB LCTL_T(KC_TAB) // Tab => Ctrl when held
+
+// ISO keycodes with Swedish layout names
+#define SE_PLUS KC_MINS // +
+#define SE_QSTM S(SE_PLUS) // Question mark
+#define SE_TCK KC_EQL // Fronttick (´)
+#define SE_BTCK S(SE_TCK) // Backtick (`)
+#define SE_UML KC_RBRC // Umlaut (¨)
+#define SE_TAK S(SE_UML) // Caret (^)
+#define SE_TILD RALT(SE_UML) // Tilde (~)
+#define SE_QUT KC_NUHS // Singlequote (')
+#define SE_DQUT S(KC_2) // Doublequote (")
+#define SE_AST S(SE_QUT) // Asterisk
+#define SE_AUML KC_QUOT // Ä
+#define SE_ARNG KC_LBRC // Å
+#define SE_OUML KC_SCLN // Ö
+#define SE_LT KC_NUBS // <
+#define SE_GT S(SE_LT) // >
+#define SE_DASH KC_SLSH // -
+#define SE_USCR S(SE_DASH) // _
+#define SE_AT RALT(KC_2) // @
+#define SE_EXCL S(KC_1) // !
+#define SE_HASH S(KC_3) // #
+#define SE_USD RALT(KC_4) // $
+#define SE_PCNT S(KC_5) // %
+#define SE_AMP S(KC_6) // &
+#define SE_EQLS S(KC_0) // =
+
+// Apple-specific layout keys
+#define AP_SLS S(KC_7) // /
+#define AP_PIPE LALT(KC_7) // |
+#define AP_BSLS A(AP_SLS) // Backslash
+#define AP_LCBR A(AP_LPAR) // {
+#define AP_RCBR A(AP_RPAR) // }
+#define AP_LBR A(KC_8) // [
+#define AP_RBR A(KC_9) // ]
+#define AP_LPAR S(KC_8) // (
+#define AP_RPAR S(KC_9) // )
+
+// Windows-specific layout keys
+#define MS_SLS S(KC_7) // /
+#define MS_PIPE RALT(SE_LT) // |
+#define MS_BSLS RALT(SE_PLUS) // Backslash
+#define MS_LCBR RALT(KC_7) // {
+#define MS_RCBR RALT(KC_0) // }
+#define MS_LBR RALT(KC_8) // [
+#define MS_RBR RALT(KC_9) // ]
+#define MS_LPAR S(KC_8) // (
+#define MS_RPAR S(KC_9) // )
+
+// My common shortcuts
+#define MY_PREV KC_MRWD // Media: Previous
+#define MY_NEXT KC_MFFD // Media: Next
+#define MY_PLAY KC_MPLY // Media: Play/Pause
+#define MY_LOCK C(A(KC_L)) // Mac: Lock
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+/*
+DEFAULT
+ Main layout for alphas and modifiers
+ Tab => Ctrl when held
+ Esc => MOVEMENT layer when held
+ Enter => Shift when held
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | Esc | Q | W | E | R | T | | Y | U | I | O | P | Å |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ |Ctrl/Tab| A | S | D | F *| G | | H |* J | K | L | Ö | Ä |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | Shift | Z | X | C | V | B | | N | M | , | . | - | Enter |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | SPECIAL| Ctrl | Alt | Cmd | LOWER | Space | | Backspc| RAISE | Left | Down | Up | Right |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_DEFAULT] = LAYOUT_ortho_4x12(
+ KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, SE_ARNG,
+ CTLTAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SE_OUML, SE_AUML,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SE_DASH, SFTENT,
+ SPECIAL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_BSPC, RAISE_M, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+),
+
+/*
+DEFAULT - Windows
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | | | | | | | | | | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | * | | | | * | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | | | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | | RAISE | | | | |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_DEFAULT_WIN] = LAYOUT_ortho_4x12(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, RAISE_W, _______, _______, _______, _______
+),
+
+/*
+RAISE - Mac
+ This layer focuses on symbols and special characters.
+
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | | ! | ? | { | } | & | | ^ | | | ` | ´ | | Del |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | # | $ | ( | ) *| " | | ~ |* / | \ | ¨ | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | @ | % | [ | ] | ' | | | < | > | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | |XXXXXXXX| | | | |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_RAISE_MAC] = LAYOUT_ortho_4x12(
+ _______, SE_EXCL, SE_QSTM, AP_LCBR, AP_RCBR, SE_AMP, SE_TAK, AP_PIPE, SE_BTCK, SE_TCK, _______, KC_DEL,
+ _______, SE_HASH, SE_USD, AP_LPAR, AP_RPAR, SE_DQUT, SE_TILD, AP_SLS, AP_BSLS, SE_UML, _______, _______,
+ _______, SE_AT, SE_PCNT, AP_LBR, AP_RBR, SE_QUT, _______, SE_LT, SE_GT, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
+),
+
+/*
+RAISE - Windows
+ This layer focuses on symbols and special characters.
+
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | | ! | ? | { | } | & | | ^ | | | ` | ´ | | Del |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | # | $ | ( | ) *| " | | ~ |* / | \ | ¨ | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | @ | % | [ | ] | ' | | | < | > | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | | | | | |XXXXXXXX| | | | |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_RAISE_WIN] = LAYOUT_ortho_4x12(
+ _______, SE_EXCL, SE_QSTM, MS_LCBR, MS_RCBR, SE_AMP, SE_TAK, MS_PIPE, SE_BTCK, SE_TCK, _______, KC_DEL,
+ _______, SE_HASH, SE_USD, MS_LPAR, MS_RPAR, SE_DQUT, SE_TILD, MS_SLS, MS_BSLS, SE_UML, _______, _______,
+ _______, SE_AT, SE_PCNT, MS_LBR, MS_RBR, SE_QUT, _______, SE_LT, SE_GT, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
+),
+
+/*
+LOWER
+ This layer focuses on numbers and math.
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | | F1 | F2 | F3 | F4 | | | * | 7 | 8 | 9 | - | Del |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | F5 | F6 | F7 | F8 *| | | / |* 4 | 5 | 6 | + | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | F9 | F10 | F11 | F12 | | | / | 1 | 2 | 3 | = | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | |XXXXXXXX| | | | | 0 | . | | |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_LOWER] = LAYOUT_ortho_4x12(
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, SE_AST, KC_7, KC_8, KC_9, SE_DASH, KC_DEL,
+ _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, AP_SLS, KC_4, KC_5, KC_6, SE_PLUS, _______,
+ _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, MS_SLS, KC_1, KC_2, KC_3, SE_EQLS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, _______, _______
+),
+
+/*
+SPECIAL
+ This layer focuses on special functions, media controls and movement keys.
+ LEFT RIGHT
+ ,-----------------------------------------------------. ,-----------------------------------------------------.
+ | Reset | | WIN | VolUp | | | | Ins | Home | Up | End | PgUp | Del |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ |EEPReset| | Prev | VolDn | Next *| | | |* Left | Down | Right | PgDn | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ | | | | Mute | | | | Lock | MAC | | | | |
+ |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ |XXXXXXXX| | | | | Play | | | | | | | Sleep |
+ `-----------------------------------------------------´ `-----------------------------------------------------'
+*/
+[_SPECIAL] = LAYOUT_ortho_4x12(
+ RESET, _______, TO_WIN, KC_VOLU, _______, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_DEL,
+ EEP_RST, _______, MY_PREV, KC_VOLD, MY_NEXT, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______,
+ _______, _______, _______, KC_MUTE, _______, _______, MY_LOCK, TO_MAC, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, MY_PLAY, _______, _______, _______, _______, _______, KC_SLEP
+)
+
+};
diff --git a/keyboards/lets_split/keymaps/zer09/config.h b/keyboards/lets_split/keymaps/zer09/config.h
index 14be4ccc5..3990c3dc5 100644
--- a/keyboards/lets_split/keymaps/zer09/config.h
+++ b/keyboards/lets_split/keymaps/zer09/config.h
@@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { F7, B1, B3, B2, B6 }
-#define CATERINA_BOOTLOADER
#define USB_MAX_POWER_CONSUMPTION 50
/* Use I2C or Serial, not both */