aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/thevankeyboards/minivan/keymaps
diff options
context:
space:
mode:
authorMechMerlin <30334081+mechmerlin@users.noreply.github.com>2018-09-13 09:40:43 -0700
committerDrashna Jaelre <drashna@live.com>2018-09-13 09:40:43 -0700
commitce122c4981c71d33a85db94c787d5ec7a823acc6 (patch)
tree82693003e0e6f4191bd34362025e5ed5bb6ee9db /keyboards/thevankeyboards/minivan/keymaps
parentcd3518b802071a915ff11659a32bf0a124687ea3 (diff)
downloadfirmware-ce122c4981c71d33a85db94c787d5ec7a823acc6.tar.gz
firmware-ce122c4981c71d33a85db94c787d5ec7a823acc6.tar.bz2
firmware-ce122c4981c71d33a85db94c787d5ec7a823acc6.zip
Keyboard: Shuffle keyboards into thevankeyboards directory (#3895)
* move tv44 to thevankeyboards directory * move bananasplit to thevankeyboards * move roadkit to thevankeyboards directory * add a basic readme * update readmes to correct the make instructions and add more help text * rename tv44 to minivan as per Jack's suggestions * update readme * rename tv44 to minivan * update tv44 to minivan * change includes for tv44 to minivan * remove extra includes
Diffstat (limited to 'keyboards/thevankeyboards/minivan/keymaps')
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/belak/config.h8
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/belak/keymap.c102
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/belak/readme.md14
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/belak/rules.mk12
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/budi/config.h22
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/budi/keymap.c229
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/budi/readme.md17
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/core/keymap.c32
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/core/readme.md18
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/core/rules.mk3
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/default/config.h8
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/default/keymap.c99
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/default/readme.md1
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/default/rules.mk21
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jeebak/keymap.c423
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jeebak/readme.md129
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk21
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/config.h7
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c39
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/readme.md49
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk17
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/mjt/config.h14
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/mjt/keymap.c197
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/mjt/readme.md26
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk21
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/smt/keymap.c230
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/smt/readme.md126
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk21
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/tong92/config.h12
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/tong92/keymap.c203
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/tong92/readme.md52
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk21
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/xyverz/config.h8
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c124
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/xyverz/readme.md1
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk21
36 files changed, 2348 insertions, 0 deletions
diff --git a/keyboards/thevankeyboards/minivan/keymaps/belak/config.h b/keyboards/thevankeyboards/minivan/keymaps/belak/config.h
new file mode 100644
index 000000000..47d96a29d
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/belak/config.h
@@ -0,0 +1,8 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+#define TAPPING_TERM 500
+
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/belak/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/belak/keymap.c
new file mode 100644
index 000000000..19051574a
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/belak/keymap.c
@@ -0,0 +1,102 @@
+#include QMK_KEYBOARD_H
+
+// Layer names. We stick to 3 letters if possible so MO(NAME) fits in 7
+// characters and doesn't mess with the grid.
+#define _QW 0
+#define _L1 1
+#define _L2 2
+#define _L3 3
+
+// Curly braces have their own keys. These are defined so they don't mess up the
+// grid in layer 2.
+#define L_CURBR LSFT(KC_LBRC)
+#define R_CURBR LSFT(KC_RBRC)
+
+#define L1_TAB LT(_L1, KC_TAB)
+#define L2_ESC LT(_L2, KC_ESC)
+#define L2_SLSH LT(_L2, KC_SLSH)
+#define L3_QUOT LT(_L3, KC_QUOT)
+
+// Tap dance magic
+#define TD_LGUI TD(BE_TD_GUI)
+#define TD_LCTL TD(BE_TD_CTL)
+#define TD_LALT TD(BE_TD_ALT)
+
+enum belak_td {
+ BE_TD_GUI = 0,
+ BE_TD_CTL,
+ BE_TD_ALT,
+};
+
+void mod_tap_fn(qk_tap_dance_state_t *state, void *user_data);
+void mod_reset_fn(qk_tap_dance_state_t *state, void *user_data);
+
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [BE_TD_GUI] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn),
+ [BE_TD_CTL] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn),
+ [BE_TD_ALT] = ACTION_TAP_DANCE_FN_ADVANCED(mod_tap_fn, NULL, mod_reset_fn),
+};
+
+uint16_t tap_dance_keys[] = {
+ [BE_TD_GUI] = KC_LGUI,
+ [BE_TD_CTL] = KC_LCTL,
+ [BE_TD_ALT] = KC_LALT,
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QW] = LAYOUT_arrow_command( /* Qwerty */
+ L2_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ L1_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, L2_SLSH,
+ TD_LCTL, MO(_L3), TD_LALT, TD_LGUI, KC_SPC, KC_SPC, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [_L1] = LAYOUT_arrow_command( /* LAYER 1 */
+ KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ _______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, KC_QUOT,
+ _______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT,
+ _______, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_L2] = LAYOUT_arrow_command( /* LAYER 2 */
+ _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
+ KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, L_CURBR, R_CURBR, KC_4, KC_5, KC_6, KC_VOLU, _______,
+ _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______,
+ _______, _______, _______, _______, _______, _______, KC_RALT, _______, _______, _______
+ ),
+ [_L3] = LAYOUT_arrow_command( /* LAYER 3 */
+ _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______,
+ KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_RSFT,
+ _______, _______, _______, _______, _______, _______, KC_RALT, _______, _______, _______
+ )
+};
+
+const uint16_t PROGMEM fn_actions[] = {};
+
+// Tap dance functions
+void mod_tap_fn(qk_tap_dance_state_t *state, void *user_data) {
+ switch (state->count) {
+ case 1:
+ register_mods(MOD_BIT(tap_dance_keys[state->keycode - QK_TAP_DANCE]));
+ send_keyboard_report();
+ break;
+ case 2:
+ layer_on(_L2);
+ break;
+ case 3:
+ layer_off(_L2);
+ layer_on(_L1);
+ break;
+ default:
+ reset_tap_dance(state);
+ }
+}
+
+void mod_reset_fn(qk_tap_dance_state_t *state, void *user_data) {
+ layer_off(_L1);
+ layer_off(_L2);
+ unregister_mods(MOD_BIT(tap_dance_keys[state->keycode - QK_TAP_DANCE]));
+ send_keyboard_report();
+}
diff --git a/keyboards/thevankeyboards/minivan/keymaps/belak/readme.md b/keyboards/thevankeyboards/minivan/keymaps/belak/readme.md
new file mode 100644
index 000000000..b0a505c4a
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/belak/readme.md
@@ -0,0 +1,14 @@
+# Belak's TV44 (TV46?) layout
+
+This layout is roughly based on the low-rider arrow-southpaw layout from [the
+configurator](http://minivan.config.thevankeyboards.com) with a number of
+changes to make it easier to use and add in missing keys (like adding / and '
+to the main layer)
+
+## Rev1
+
+* Moved enter to a more standard location to have a full spacebar
+* Quote is now on L1
+* Small tweaks to make modifiers work a little more consistently
+* Greatly increase the tapping term to make the tap-dance mods easier to use
+
diff --git a/keyboards/thevankeyboards/minivan/keymaps/belak/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/belak/rules.mk
new file mode 100644
index 000000000..611241124
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/belak/rules.mk
@@ -0,0 +1,12 @@
+#BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = no # Mouse keys(+4700)
+#EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+#CONSOLE_ENABLE = yes # Console for debug(+400)
+#DEBUG_ENABLE = yes
+#COMMAND_ENABLE = yes # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+TAP_DANCE_ENABLE = yes
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/budi/config.h b/keyboards/thevankeyboards/minivan/keymaps/budi/config.h
new file mode 100644
index 000000000..67bcf3546
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/budi/config.h
@@ -0,0 +1,22 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+// place overrides here
+#ifdef DEBOUNCING_DELAY
+#undef DEBOUNCING_DELAY
+#endif
+#define DEBOUNCING_DELAY 2
+#define MOUSEKEY_INTERVAL 10
+#define MOUSEKEY_DELAY 0
+#define MOUSEKEY_TIME_TO_MAX 120
+#define MOUSEKEY_MAX_SPEED 9
+#define MOUSEKEY_WHEEL_DELAY 0
+#define MOUSEKEY_WHEEL_MAX_SPEED 2
+#define MOUSEKEY_WHEEL_TIME_TO_MAX 120
+#define TAPPING_TOGGLE 1
+#define TAPPING_TERM 200
+#define IGNORE_MOD_TAP_INTERRUPT
+#define FORCE_NKRO
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/budi/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/budi/keymap.c
new file mode 100644
index 000000000..baa266e63
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/budi/keymap.c
@@ -0,0 +1,229 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+#define _DV 0
+#define _NM 1
+#define _NV 2
+#define _MN 3
+#define _FN 4
+
+// Requires KC_TRNS/_______ for the trigger key in the destination layer
+#define NM_SP LT(_NM, KC_SPC)
+#define NV_SP LT(_NV, KC_SPC)
+#define MN_EN LT(_MN, KC_ENT)
+#define FN_EX LT(_FN, KC_ESC)
+
+// Curly braces have their own keys. These are defined to make them not mess up
+// the grid in layer 2.
+#define L_CURB LSFT(KC_LBRC)
+#define R_CURB LSFT(KC_RBRC)
+
+// Hypers
+#define HYP0 HYPR(KC_0)
+#define HYP1 HYPR(KC_1)
+#define HYP2 HYPR(KC_2)
+#define HYP3 HYPR(KC_3)
+#define HYP4 HYPR(KC_4)
+#define HYP5 HYPR(KC_5)
+#define HYP6 HYPR(KC_6)
+#define HYP7 HYPR(KC_7)
+#define HYP8 HYPR(KC_8)
+#define HYP9 HYPR(KC_9)
+
+// MEH
+#define MEH0 MEH(KC_0)
+#define MEH1 MEH(KC_1)
+#define MEH2 MEH(KC_2)
+#define MEH3 MEH(KC_3)
+#define MEH4 MEH(KC_4)
+#define MEH5 MEH(KC_5)
+#define MEH6 MEH(KC_6)
+#define MEH7 MEH(KC_7)
+#define MEH8 MEH(KC_8)
+#define MEH9 MEH(KC_9)
+
+// CAG
+#define CAG0 LCAG(KC_0)
+#define CAG1 LCAG(KC_1)
+#define CAG2 LCAG(KC_2)
+#define CAG3 LCAG(KC_3)
+#define CAG4 LCAG(KC_4)
+#define CAG5 LCAG(KC_5)
+#define CAG6 LCAG(KC_6)
+#define CAG7 LCAG(KC_7)
+#define CAG8 LCAG(KC_8)
+#define CAG9 LCAG(KC_9)
+
+// ALTS
+#define ALT0 LALT(KC_0)
+#define ALT1 LALT(KC_1)
+#define ALT2 LALT(KC_2)
+#define ALT3 LALT(KC_3)
+#define ALT4 LALT(KC_4)
+#define ALT5 LALT(KC_5)
+#define ALT6 LALT(KC_6)
+#define ALT7 LALT(KC_7)
+#define ALT8 LALT(KC_8)
+#define ALT9 LALT(KC_9)
+#define ALTX LALT(KC_GRV)
+#define ALTL LALT(KC_LEFT)
+#define ALTR LALT(KC_RIGHT)
+#define ALTESC LALT(KC_ESC)
+#define ALTEQL LALT(KC_EQL)
+#define ALTMIN LALT(KC_MINS)
+
+// BACK AND FORWARD
+#define XBACK LGUI(LALT(KC_LEFT))
+#define XFFWD LGUI(LALT(KC_RIGHT))
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define xxxxxxx KC_NO
+
+enum custom_keycodes {
+ PLACEHOLDER = SAFE_RANGE, // can always be here
+ SWTCH
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+
+/* DVORAK
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | TAB | ' | , | . | P | Y | F | G | C | R | L | BACKSPACE |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | LCTL | A | O | E | U | I | D | H | T | N | S | MN/ENTER |
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | LSHFT | ; | Q | J | K | X | B | M | W | V | Z | RSHFT |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * | FN EX | GUI | ALT | NM / SPACE | NV / SPACE | RALT | - | = | ESC |
+ * `---------+----------+----------+-----^^^------+----^^^-----+-------+-------+-------+-------'
+ */
+ [_DV] = LAYOUT_arrow(
+ 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_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MN_EN,
+ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
+ FN_EX, KC_LGUI, KC_LALT, NM_SP, NV_SP, KC_RALT, KC_MINS, KC_EQL, KC_ESC
+ ),
+
+
+
+/* NUMBERS
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | DELETE |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | LCTL | ! | @ | [ | { | ( | ) | } | ] | | | ? | ENTER |
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | LSFT | ` | ~ | # | $ | % | ^ | & | * | _ | + | = |
+ * | LSFT | ` | ~ | # | $ | % | ^ | & | * | _ | + | / |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * | | GUI | LALT |-----TRNS-----| SPACE | RALT | - | = | \ |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ */
+ [_NM] = LAYOUT_arrow(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
+ _______, KC_EXLM, KC_AT, KC_LBRC, L_CURB, KC_LPRN, KC_RPRN, R_CURB, KC_RBRC, KC_PIPE, KC_QUES, _______,
+ _______, KC_GRV, KC_TILD, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_UNDS, KC_PLUS, KC_SLSH,
+ _______, _______, _______, _______, KC_SPC, _______, KC_MINS, KC_EQL, KC_BSLS
+ ),
+
+
+
+/* NAVIGATION
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | ESC | MWU | MWL | MU | MWR | MPRV | MNXT | HOME | UP | END | PGUP | DELETE |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | LCTL | MWD | ML | MD | MR | MRWD | MFFD | LEFT | DOWN | RIGHT| PGDN | MB2 |
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | LSFT | HYP1 | HYP2 | HYP3 | HYP4 | HYP5 | HYP6 | HYP7 | HYP8 | HYP9 | HYP0 | VOLUP |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * | | GUI | LALT | MB1 |----TRNS----| MUTE | PLAY | STOP | VOLDN |
+ * `---------+----------+----------+-----^^^------+----^^^-----+-------+-------+-------+-------'
+ */
+ [_NV] = LAYOUT_arrow(
+ KC_ESC, KC_WH_U, KC_WH_L, KC_MS_U, KC_WH_R, KC_MPRV, KC_MNXT, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_DEL,
+ _______, KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, KC_MRWD, KC_MFFD, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_BTN2,
+ _______, HYP1, HYP2, HYP3, HYP4, HYP5, HYP6, HYP7, HYP8, HYP9, HYP0, KC_VOLU,
+ _______, _______, _______, KC_BTN1, _______, KC_MUTE, KC_MPLY, KC_MSTP, KC_VOLD
+ ),
+
+
+
+/* MODIFIED NUMBERS
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | ALTESC | CAG1 | CAG2 | CAG3 | CAG4 | CAG5 | CAG6 | CAG7 | CAG8 | CAG9 | CAG0 | SWTCH |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | ALT ` | ALT1 | ALT2 | ALT3 | ALT4 | ALT5 | ALT6 | ALT7 | ALT8 | ALT9 | ALT0 |----TRNS---|
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | ALT = | MEH1 | MEH2 | MEH3 | MEH4 | MEH5 | MEH6 | MEH7 | MEH8 | MEH9 | MEH0 | |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * | ALT - | | XBACK | ALT LEFT | ALT RIGHT | XFFWD | | | |
+ * `---------+----------+----------+-----^^^------+----^^^-----+-------+-------+-------+-------'
+ */
+ [_MN] = LAYOUT_arrow(
+ ALTESC, CAG1, CAG2, CAG3, CAG4, CAG5, CAG6, CAG7, CAG8, CAG9, CAG0, SWTCH,
+ ALTX, ALT1, ALT2, ALT3, ALT4, ALT5, ALT6, ALT7, ALT8, ALT9, ALT0, _______,
+ ALTEQL, MEH1, MEH2, MEH3, MEH4, MEH5, MEH6, MEH7, MEH8, MEH9, MEH0, xxxxxxx,
+ ALTMIN, xxxxxxx, XBACK, ALTL, ALTR, XFFWD, xxxxxxx, xxxxxxx, xxxxxxx
+ ),
+
+
+
+/* FUNCTIONS
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | DELETE |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | LCTL | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | F20 | |
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | LSFT | | | | | | | | | | | |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * |---TRNS---| CAPS | LALT | | SWTCH | RALT | | RESET |--TRNS-|
+ * `---------+----------+----------+-----^^^------+----^^^-----+-------+-------+-------+-------'
+ */
+ [_FN] = LAYOUT_arrow(
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL,
+ _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, xxxxxxx,
+ _______, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, KC_PWR, KC_SLEP, KC_WAKE, xxxxxxx, xxxxxxx, xxxxxxx,
+ _______, KC_CAPS, _______, xxxxxxx, SWTCH, KC_RALT, xxxxxxx, RESET, _______
+ )
+
+
+
+/* Transparent placeholder for more layers
+ * ,---------+------+------+------+------+------+------+------+------+------+------+------------.
+ * | | | | | | | | | | | | |
+ * |---------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | | | | | | | | | | | | |
+ * |----------`------`------`------`------`------`------`------`------`------`------`-----------|
+ * | | | | | | | | | | | | |
+ * |-----------`------`------`------`------`------`-------`------`------`------`------`---------|
+ * | | | | | | | | | |
+ * `---------+----------+----------+-----^^^------+----^^^-----+-------+-------+-------+-------'
+ */
+// [_TR] = LAYOUT_arrow(
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______
+// )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (record->event.pressed) {
+ switch (keycode) {
+ case SWTCH:
+ SEND_STRING(SS_DOWN(X_LGUI));
+ SEND_STRING(SS_DOWN(X_LSHIFT));
+ SEND_STRING(SS_TAP(X_ENTER));
+ SEND_STRING(SS_UP(X_LSHIFT));
+ SEND_STRING(SS_UP(X_LGUI));
+ return false;
+ }
+ }
+ return true;
+}
diff --git a/keyboards/thevankeyboards/minivan/keymaps/budi/readme.md b/keyboards/thevankeyboards/minivan/keymaps/budi/readme.md
new file mode 100644
index 000000000..e5de86ef8
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/budi/readme.md
@@ -0,0 +1,17 @@
+# Budi's TV44 Arrow layout
+
+- Dvorak main layer
+- Somewhat easy bracket access for easy devs, happy :)
+- Dedicated gaming layers cuz u don't wanna mess with apm
+- Mainly for windows, but with translated alt/cmd on os, it's good to go
+
+ASCII graphics shamelessly stolen from tong92's layout :)
+
+Updates August 2018:
+- Escape both ways
+- Only include QMK_KEYBOARD_H
+
+Updates July 2018:
+- I guess I don't play games that much anymore
+- SUGDW modifiers
+- Somehow LALT(LSFT(KC_RET)) does not register correctly on my mac
diff --git a/keyboards/thevankeyboards/minivan/keymaps/core/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/core/keymap.c
new file mode 100644
index 000000000..cf1e0d3f5
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/core/keymap.c
@@ -0,0 +1,32 @@
+#include QMK_KEYBOARD_H
+
+#define _QW 0
+#define _L1 1
+#define _L2 2
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QW] = LAYOUT( /* Qwerty */
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, MO(_L2),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, MO(_L1), KC_RALT, KC_RCTL
+ ),
+ [_L1] = LAYOUT( /* LAYER 1 */
+ KC_GRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_PAUS,
+ KC_TAB, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, _______,
+ _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_L2] = LAYOUT( /* LAYER 2 */
+ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_UNDS, KC_PLUS,
+ _______, _______, _______, _______, _______, KC_COMM, KC_SLSH, KC_RBRC, KC_LBRC, KC_BSLS, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+};
diff --git a/keyboards/thevankeyboards/minivan/keymaps/core/readme.md b/keyboards/thevankeyboards/minivan/keymaps/core/readme.md
new file mode 100644
index 000000000..3ec503b21
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/core/readme.md
@@ -0,0 +1,18 @@
+# A minivan keymap based off the Vertex Core
+
+## Main differences
+
+* There are only 3 keys on the bottom right, so menu was dropped
+* There are only 3 keys on the bottom left, so Pn was dropped because there is
+ no programmable layer.
+* There are only 12 keys in the first row, so the delete key (along with scroll
+ lock) has been dropped.
+* The F1-F12 keys have been shifted by 1 so they all fit in the first row of
+ layer 2.
+* Moved the grave/tilde to layer 1 (because in layer 2 it's now taken up by F1).
+* Keys relating to speed have been removed
+* The `L_Win + L_Alt + R_spacebar = R_Shift, R_Alt, Menu and R_Ctrl as arrow
+ keys` as mentioned in the manual does not work.
+* The layer 2 plus shift should have support for symbols in the first row (where
+ the F1-F12 keys are) but this has not been implemented, so you need to use the
+ second row (where the numbers are).
diff --git a/keyboards/thevankeyboards/minivan/keymaps/core/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/core/rules.mk
new file mode 100644
index 000000000..457a3d01d
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/core/rules.mk
@@ -0,0 +1,3 @@
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/default/config.h b/keyboards/thevankeyboards/minivan/keymaps/default/config.h
new file mode 100644
index 000000000..df06a2620
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/default/config.h
@@ -0,0 +1,8 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+// place overrides here
+
+#endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/default/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/default/keymap.c
new file mode 100644
index 000000000..90b188b55
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/default/keymap.c
@@ -0,0 +1,99 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+
+#define _QW 0
+#define _DV 1
+#define _CM 2
+#define _L1 3
+#define _L2 4
+#define _L3 5
+
+// Macro name shortcuts
+#define QWERTY M(_QW)
+#define DVORAK M(_DV)
+#define COLEMAK M(_CM)
+
+// Curly braces have their own keys. These are defined to make them not mess up
+// the grid in layer 2.
+#define L_CURBR LSFT(KC_LBRC)
+#define R_CURBR LSFT(KC_RBRC)
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QW] = LAYOUT( /* 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,
+ MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1),
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2),
+ KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3)
+ ),
+ [_DV] = LAYOUT( /* Dvorak */
+ KC_TAB, KC_SLSH, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,
+ MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1),
+ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2),
+ KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3)
+ ),
+ [_CM] = LAYOUT( /* Colemak */
+ KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
+ MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1),
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2),
+ KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3)
+ ),
+ [_L1] = LAYOUT( /* LAYER 1 */
+ KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ _______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______,
+ _______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT,
+ _______, KC_LGUI, _______, _______, _______, _______, _______, _______
+ ),
+ [_L2] = LAYOUT( /* LAYER 2 */
+ _______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______,
+ KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, L_CURBR, R_CURBR, KC_4, KC_5, KC_6, KC_VOLU, KC_ENT,
+ _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_L3] = LAYOUT( /* LAYER 3 */
+ _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______,
+ KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______,
+ KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______,
+ _______, KC_LSFT, KC_B, KC_SPC, KC_C, _______, _______, _______
+ )
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+
+};
+
+void persistent_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ switch(id) {
+ case _DV:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_DV);
+ }
+ break;
+ case _QW:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_QW);
+ }
+ break;
+ case _CM:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_CM);
+ }
+ break;
+ }
+ return MACRO_NONE;
+};
diff --git a/keyboards/thevankeyboards/minivan/keymaps/default/readme.md b/keyboards/thevankeyboards/minivan/keymaps/default/readme.md
new file mode 100644
index 000000000..ac84c08cf
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/default/readme.md
@@ -0,0 +1 @@
+# The default keymap for tv44 \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk
new file mode 100644
index 000000000..f4671a9d1
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/default/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = yes # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jeebak/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/jeebak/keymap.c
new file mode 100644
index 000000000..0ec9485c7
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jeebak/keymap.c
@@ -0,0 +1,423 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+#define _QWERTY 0
+#define _COLEMAK 1
+#define _DVORAK 2
+#define _LOWER 3
+#define _RAISE 4
+#define _PLOVER 5
+#define _TOUCHCURSOR 6
+#define _MOUSECURSOR 7
+#define _ADJUST 16
+
+// Keycodes
+enum planck_keycodes {
+ QWERTY = SAFE_RANGE,
+ COLEMAK,
+ DVORAK,
+ PLOVER,
+ LOWER,
+ RAISE,
+ BACKLIT,
+ EXT_PLV
+};
+
+enum macro_keycodes {
+ KC_ALT_TAB,
+ KC_CMD_TAB,
+ KC_CTL_TAB,
+ KC_CMD_SLSH,
+ KC_AG_FIND,
+ KC_AG_AGAIN,
+ KC_AG_UNDO,
+ KC_AG_CUT,
+ KC_AG_COPY,
+ KC_AG_PASTE,
+ KC_AG_DESK_L,
+ KC_AG_DESK_R,
+ KC_AG_TAB_C,
+ KC_AG_TAB_N,
+ KC_AG_TAB_R,
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define XXXXXXX KC_NO
+
+// Custom macros
+#define CTL_ESC CTL_T(KC_ESC) // Tap for Esc, hold for Ctrl
+#define SFT_ENT SFT_T(KC_ENT) // Tap for Enter, hold for Shift
+#define HPR_TAB ALL_T(KC_TAB) // Tap for Tab, hold for Hyper
+#define GUI_SEM GUI_T(KC_SCLN) // Tap for Semicolon, hold for GUI
+#define ALT_QUO ALT_T(KC_QUOT) // Tap for Quote, hold for Alt
+// Requires KC_TRNS/_______ for the trigger key in the destination layer
+#define LT_TC LT(_TOUCHCURSOR, KC_SPC) // L-ayer T-ap T-ouch C-ursor
+#define LT_MC(kc) LT(_MOUSECURSOR, kc) // L-ayer T-ap M-ouse C-ursor
+#define ALT_TAB M(KC_ALT_TAB) // Macro for Alt-Tab
+#define CMD_TAB M(KC_CMD_TAB) // Macro for Cmd-Tab
+#define CTL_TAB M(KC_CTL_TAB) // Macro for Ctl-Tab
+#define CMD_SLSH M(KC_CMD_SLSH) // Macro for Cmd-Slash (personal shortcut to toggle iTerm2 visibility)
+#define AG_FIND M(KC_AG_FIND) // Macros for Cmd-[x] vs Ctrl-[x] based on current AG_NORM or AG_SWAP settings
+#define AG_AGAIN M(KC_AG_AGAIN)
+#define AG_UNDO M(KC_AG_UNDO)
+#define AG_CUT M(KC_AG_CUT)
+#define AG_COPY M(KC_AG_COPY)
+#define AG_PASTE M(KC_AG_PASTE)
+#define AG_D_L M(KC_AG_DESK_L) // For Virtual Desktop Switching: Left, and
+#define AG_D_R M(KC_AG_DESK_R) // Right
+#define AG_T_C M(KC_AG_TAB_C) // For Chrome, etc. Tab Close,
+#define AG_T_N M(KC_AG_TAB_N) // Tab New, and
+#define AG_T_R M(KC_AG_TAB_R) // Tab Reopen Closed
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ *
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * |Hyper/Tab| Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | Ctrl/Esc | A | S | MC/D | F | G | H | J | K | L |GUI/; | Alt/" |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / | Sft/Ent |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_QWERTY] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_ESC , KC_A, KC_S,LT_MC(KC_D), KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, GUI_SEM, ALT_QUO ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ KC_LSFT , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ KC_LALT , KC_LGUI , LOWER , LT_TC , LT_TC , RAISE , KC_VOLU , KC_MPLY ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Colemak
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * |Hyper/Tab| Q | W | F | P | G | J | L | U | Y | ; | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | Ctrl/Esc | A | R | MC/S | T | D | H | N | E | I | O | " |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | Shift | Z | X | C | V | B | K | M | , | . | / | Sft/Ent |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_COLEMAK] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_ESC , KC_A, KC_R,LT_MC(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, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ KC_LALT , KC_LGUI , LOWER , LT_TC , LT_TC , RAISE , KC_VOLU , KC_MPLY ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Dvorak
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * |Hyper/Tab| " | , | . | P | Y | F | G | C | R | L | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | Ctrl/Esc | A | O | MC/E | U | I | D | H | T | N | S | / |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | Shift | ; | Q | J | K | X | B | M | W | V | Z | Sft/Ent |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_DVORAK] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_ESC , KC_A, KC_O,LT_MC(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, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ KC_LALT , KC_LGUI , LOWER , LT_TC , LT_TC , RAISE , KC_VOLU , KC_MPLY ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Lower
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | [ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | "|" |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | ] | F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | \ |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Brite | | | | | | Vol- | Mute |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_LOWER] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ 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_LBRC , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ KC_RBRC , KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ BACKLIT , _______ , _______ , _______ , _______ , _______ , KC_VOLD , KC_MUTE ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Raise
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | $ | 4 | 5 | 6 | . | + | . | 4 | 5 | 6 | * | "|" |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | = | 7 | 8 | 9 | 0 | - | . | 1 | 2 | 3 | / | \ |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Brite | | | | | | Vol- | Mute |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_RAISE] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ KC_0 , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ KC_DLR , KC_4, KC_5, KC_6, KC_DOT, KC_PLUS, KC_DOT, KC_4, KC_5, KC_6, KC_ASTR, KC_PIPE ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ KC_EQL , KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_DOT, KC_1, KC_2, KC_3, KC_SLSH, KC_BSLS ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ BACKLIT , _______ , _______ , _______ , _______ , _______ , KC_VOLD , KC_MUTE ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* TouchCursor layer (http://martin-stone.github.io/touchcursor/) plus personal customizations
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | AltTab |CmdTab|CtlTab| GUI |Shift | ~ |Insert| Home | Up | End | Bksp | |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | | Alt |Space |Tab_C | Find |Again | PgUp | Left | Down |Right |Desk_L| Desk_R |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | | Undo | Cut | Copy |Paste | ` | PgDn | Del |Tab_N |Tab_R |iTerm2| |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | | | | | | | | |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ *
+ * The KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_FIND, and KC_AGAIN keycodes don't
+ * seem to work on Mac. Presumably they'll work under Windows.
+ */
+
+[_TOUCHCURSOR] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ ALT_TAB,CMD_TAB, CTL_TAB, KC_LGUI, KC_LSFT, KC_TILD, KC_INS, KC_HOME, KC_UP, KC_END, KC_BSPC, _______ ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ _______ ,KC_LALT, KC_SPC, AG_T_C, AG_FIND,AG_AGAIN, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, AG_D_L, AG_D_R ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ _______ ,AG_UNDO, AG_CUT, AG_COPY,AG_PASTE, KC_GRV, KC_PGDN, KC_DEL, AG_T_N, AG_T_R,CMD_SLSH, _______ ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Mouse Layer
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | | |ACCL0 | | | | |WHL_L | Up |WHL_R | BTN2 | |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | |ACCL2 | BTN2 | | BTN1 |ACCL1 |WHL_Up| Left | Down |Right | BTN4 | BTN5 |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | | | | | BTN3 | |WHL_Dn| BTN1 | | | BTN3 | |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | | | | | | | | |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+
+[_MOUSECURSOR] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ _______,_______, KC_ACL0, _______, _______, _______, _______, KC_WH_L, KC_MS_U, KC_WH_R, KC_BTN2, _______ ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ _______ ,KC_ACL2, KC_BTN2, _______, KC_BTN1, KC_ACL1, KC_WH_U, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN4, KC_BTN5 ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ _______ ,_______, _______, _______, KC_BTN3, _______, KC_WH_D, KC_BTN1, _______, _______, KC_BTN3, _______ ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Plover layer (http://opensteno.org)
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | # | # | # | # | # | # | # | # | # | # | # | # |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | | S | T | P | H | * | * | F | P | L | T | D |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | TogOut | S | K | W | R | * | * | R | B | G | S | Z |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | Exit | A | O | | | E | U | |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+
+[_PLOVER] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ 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 , KC_C , KC_V , XXXXXXX , XXXXXXX , KC_N , KC_M , XXXXXXX ),
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+
+/* Adjust (Lower + Raise)
+ * ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ * | | | | | | | | | | | | Del |
+ * |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ * | | | | | |AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| |
+ * |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ * | | | | | | | | | | | | |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ * | | | | | | | | Reset |
+ * `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+ */
+[_ADJUST] = LAYOUT(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ _______ ,_______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______ ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ _______ ,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ _______ , _______ , _______ , _______ , _______ , _______ , _______ , RESET )
+/*`-----------+---------------+---------+-------^^^------+-------^^^-------+---------+-----------------+--------------'*/
+};
+
+void persistent_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case QWERTY:
+ if (record->event.pressed) {
+ default_layer_set(1UL<<_QWERTY);
+ }
+ return false;
+ break;
+ case COLEMAK:
+ if (record->event.pressed) {
+ default_layer_set(1UL<<_COLEMAK);
+ }
+ return false;
+ break;
+ case DVORAK:
+ if (record->event.pressed) {
+ default_layer_set(1UL<<_DVORAK);
+ }
+ return false;
+ break;
+ case LOWER:
+ if (record->event.pressed) {
+ layer_on(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case RAISE:
+ if (record->event.pressed) {
+ layer_on(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case BACKLIT:
+ if (record->event.pressed) {
+ register_code(KC_RSFT);
+ #ifdef BACKLIGHT_ENABLE
+ backlight_step();
+ #endif
+ } else {
+ unregister_code(KC_RSFT);
+ }
+ 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;
+ }
+ return true;
+}
+
+/*
+ * Macro definition
+ */
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ if (!eeconfig_is_enabled()) {
+ eeconfig_init();
+ }
+
+ bool use_cmd = true; // Use, for example, Cmd-Tab, Cmd-C, Cmd-V, etc.
+ // Compare to MAGIC_SWAP_ALT_GUI and MAGIC_UNSWAP_ALT_GUI configs, set in:
+ // quantum/quantum.c
+ if(keymap_config.swap_lalt_lgui == 1 && keymap_config.swap_ralt_rgui == 1) {
+ use_cmd = false; // ... or, Alt-Tab, Ctrl-C, Ctrl-V, etc.
+ }
+
+ switch (id) {
+ case KC_ALT_TAB:
+ if(use_cmd) { return (record->event.pressed ? MACRO( D(LALT), D(TAB), END ) : MACRO( U(TAB), END )); }
+ else { return (record->event.pressed ? MACRO( D(LGUI), D(TAB), END ) : MACRO( U(TAB), END )); }
+ case KC_CMD_TAB:
+ if(use_cmd) { return (record->event.pressed ? MACRO( D(LGUI), D(TAB), END ) : MACRO( U(TAB), END )); }
+ else { return (record->event.pressed ? MACRO( D(LALT), D(TAB), END ) : MACRO( U(TAB), END )); }
+
+ case KC_CTL_TAB:
+ return (record->event.pressed ? MACRO( D(LCTRL), D(TAB), END ) : MACRO( U(TAB), END ));
+ case KC_CMD_SLSH:
+ return (record->event.pressed ? MACRO( D(LGUI), D(SLSH),END ) : MACRO( U(SLSH),END ));
+
+ case KC_AG_FIND:
+ return use_cmd ? MACRODOWN( D(LGUI), T(F), END ) : MACRODOWN( D(LCTRL), T(F), END );
+ case KC_AG_AGAIN:
+ return use_cmd ? MACRODOWN( D(LGUI), T(G), END ) : MACRODOWN( D(LCTRL), T(G), END );
+ case KC_AG_UNDO:
+ return use_cmd ? MACRODOWN( D(LGUI), T(Z), END ) : MACRODOWN( D(LCTRL), T(Z), END );
+ case KC_AG_CUT:
+ return use_cmd ? MACRODOWN( D(LGUI), T(X), END ) : MACRODOWN( D(LCTRL), T(X), END );
+ case KC_AG_COPY:
+ return use_cmd ? MACRODOWN( D(LGUI), T(C), END ) : MACRODOWN( D(LCTRL), T(C), END );
+ case KC_AG_PASTE:
+ return use_cmd ? MACRODOWN( D(LGUI), T(V), END ) : MACRODOWN( D(LCTRL), T(V), END );
+
+ case KC_AG_DESK_L:
+ return use_cmd ? MACRODOWN( D(LGUI), D(LCTRL), T(SCLN), END ) : MACRODOWN( D(LALT), D(LCTRL), T(SCLN), END );
+ case KC_AG_DESK_R:
+ return use_cmd ? MACRODOWN( D(LGUI), D(LCTRL), T(QUOT), END ) : MACRODOWN( D(LALT), D(LCTRL), T(QUOT), END );
+
+ case KC_AG_TAB_C:
+ return use_cmd ? MACRODOWN( D(LGUI), T(W), END ) : MACRODOWN( D(LCTRL), T(W), END );
+ case KC_AG_TAB_N:
+ return use_cmd ? MACRODOWN( D(LGUI), T(T), END ) : MACRODOWN( D(LCTRL), T(T), END );
+ case KC_AG_TAB_R:
+ return use_cmd ? MACRODOWN( D(LGUI), D(LSHIFT), T(T), END ) : MACRODOWN( D(LCTRL), D(LSHIFT), T(T), END );
+ }
+
+ return MACRO_NONE;
+}
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jeebak/readme.md b/keyboards/thevankeyboards/minivan/keymaps/jeebak/readme.md
new file mode 100644
index 000000000..f781d5555
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jeebak/readme.md
@@ -0,0 +1,129 @@
+jeebak's TV44 layout
+=======================
+NOTE: This is a port of jeebak's planck layout, for tv44.
+
+This WIP keymap attempts to minimize fingers straying away from the home row.
+To aid in this endeavor, when additional modifyer keys to switch layers are
+needed, they will be mapped to home row keys. The `keymap.c` file will contain
+the exact changes. The diagrams in this README shows the highlights of the
+changes from the default mappings.
+
+I also decided to change all calls to `persistent_default_layer_set()` to
+`default_layer_set()` since this is my personal perference.
+
+## Macros
+```
+#define ALT_TAB M(KC_ALT_TAB)
+```
+
+## Base Layers (Qwerty/Colemak/Dvorak)
+These base layers are mostly the same as the default mappings. The interesting
+changes are shown below.
+
+- The `Ctrl/Esc`, will emit an `Escape` when tapped, and act as a `Control` key when held,
+- `GUI/;` as `;` and `GUI`,
+- `Alt/"` as `"` and `Alt`,
+- `Sft/Ent` as `Enter` and `Shift`, and
+- `Hyper/Tab` as `Tab` and `Hyper`
+
+A `TODO` item is to see if it can also act as a `CapsLock` when double-tapped.
+The arrow keys, which have been moved to the
+[TouchCursor](http://martin-stone.github.io/touchcursor/) layer, have been
+replaced with the Media keys as shown. The `MC/kc` key activates the
+`MouseCursor` layer when held, and emits the corresponding `kc` for its layer,
+when tapped.
+```
+ ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ |Hyper/Tab| Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ | Ctrl/Esc | A | S | MC/D | F | G | H | J | K | L |GUI/; | Alt/" |
+ |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ | Shift | Z | X | C | V | B | N | M | , | . | / | Sft/Ent |
+ |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ | Alt | GUI | Lower | TC/Space | TC/Space | Raise | Vol+ | Play |
+ `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+```
+
+## Lower Layer (Symbols and Function Keys)
+The symbols and functions keys are essentially the same as the default mapping.
+The most notable changes are that the symbol keys from the `RAISE` layer have
+been moved here. The remaining Media keys replace those that are now on the
+base layers. The `BACKLIT` key has also been moved here.
+```
+ ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ | [ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | "|" |
+ |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ | ] | F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | \ |
+ |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ | Brite | | | | | | Vol- | Mute |
+ `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+```
+
+## Raise Layer (Numbers and Arithmetic Operators)
+All of the numbers and arithmetic operators are available on this layer. Some
+keys are duplicated for the convenience of their positions. The `0` and `$`
+keys at the far left are for quick access to beginning and end of line in vim.
+```
+ ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ | $ | 4 | 5 | 6 | . | + | . | 4 | 5 | 6 | * | "|" |
+ |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ | = | 7 | 8 | 9 | 0 | - | . | 1 | 2 | 3 | / | \ |
+ |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ | Brite | | | | | | Vol- | Mute |
+ `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+```
+
+## TouchCursor layer plus personal customizations
+[TouchCursor](http://martin-stone.github.io/touchcursor/) uses the `Space` key
+as the modifier, with the `IJKL` home row keys representing the inverted-T of
+the arrow keys. All of the default TouchCursor keymappings for the right hand
+are represented below. My personalizations include all of the keys shown for
+the left hand. Having the `Alt` and `Shift` keys (as well as the `Control` key
+from the base layers) readily accessible from the home row allows quick word
+jumps and highlighting when used in conjunction with the arrow keys. The
+`Alt-Tab` macro is not only useful under Windows, but also under Mac when used
+with alternative switchers like [HyperSwitch](https://bahoom.com/hyperswitch).
+The `Cmd-Tab` and `Ctrl-Tab` sequences are duplicated for easy access while in
+this layer. The `KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_FIND,` and `KC_AGAIN`
+keycodes do not seem to work. There are macros in place that'll "automatically"
+choose the correct version (`Cmd-Tab` vs. `Alt-Tab`, `Cmd-C` vs. `Ctrl-C`,
+etc.) depending on which layout you've currently selected (`AG_NORM` or
+`AG_SWAP`) in the `_ADJUST` layer. The `Desk_L` and `Desk_R` macros are what I
+use to switch between Virtual Desktops Left/Right. The `Tab_C`, `Tab_N` and
+`Tab_R` are for "Close Tab," "New Tab" and "Reopen Closed Tab" for apps such as
+Google Chrome.
+```
+ ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ | AltTab |CmdTab|CtlTab| GUI |Shift | ~ |Insert| Home | Up | End | Bksp | |
+ |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ | | Alt |Space |Tab_C | Find |Again | PgUp | Left | Down |Right |Desk_L| Desk_R |
+ |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ | | Undo | Cut | Copy |Paste | ` | PgDn | Del |Tab_N |Tab_R |iTerm2| |
+ |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ | | | | | | | | |
+ `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+```
+
+## Mouse Layer
+The Mouse layer, closely mimics the layout/behaviour of the TouchCursor layer.
+The `D` key (on QWERTY) is used to activate this layer. All 16 keycodes for the
+mouse from the `doc/keycode.txt` file are represented, and logically located,
+IMHO. The left and right click buttons are duplicated; on the right hand side,
+for a quick click here and there, and again on the left hand side for when the
+buttons need to be held for dragging things or highlighting text, thus allowing
+the right hand to be free to use the up/down/left/right actions.
+```
+ ,---------+------+------+------+------+------+------+------+------+------+------+-------------.
+ | | |ACCL0 | | | | |WHL_L | Up |WHL_R | BTN2 | |
+ |---------`------`------`------`------`------`------`------`------`------`------`-------------|
+ | |ACCL2 | BTN2 | | BTN1 |ACCL1 |WHL_Up| Left | Down |Right | BTN4 | BTN5 |
+ |----------`------`------`------`------`------`------`------`------`------`------`------------|
+ | | | | | BTN3 | |WHL_Dn| BTN1 | | | BTN3 | |
+ |-----------`------`------`------`------`-----'-------`------`------`------`------`-----------|
+ | | | | | | | | |
+ `--------+---------+---------+------^^^-------+-----^^^--------+---------+---------+---------'
+```
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk
new file mode 100644
index 000000000..f4671a9d1
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jeebak/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = yes # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/config.h b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/config.h
new file mode 100644
index 000000000..5f5872bec
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/config.h
@@ -0,0 +1,7 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+#define PERMISSIVE_HOLD
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c
new file mode 100644
index 000000000..02ba68421
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c
@@ -0,0 +1,39 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT_arrow_command( /* Qwerty */
+ KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ LT(2, KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(2, KC_ENT),
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, MT(MOD_RSFT, KC_SLSH),
+ KC_LCTL, KC_LGUI, KC_LALT, MO(3), LT(1, KC_SPC), LT(1, KC_SPC), MO(4), KC_LEFT, KC_DOWN, KC_RIGHT
+ ),
+ [1] = LAYOUT_arrow_command( /* LAYER 2 */
+ 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_TRNS, KC_MINS, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_QUOT, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_PGUP, KC_BSLS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
+ ),
+ [2] = LAYOUT_arrow_command( /* LAYER 1 */
+ 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_TRNS, KC_UNDS, KC_PLUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_DQUO, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_PGUP, KC_PIPE,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
+ ),
+ [3] = LAYOUT_arrow_command( /* LAYER 3 */
+ KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+ [4] = LAYOUT_arrow_command( /* Gaming Layer*/
+ KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_U, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS,
+ KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPACE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ )
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+};
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/readme.md b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/readme.md
new file mode 100644
index 000000000..fd95b56ab
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/readme.md
@@ -0,0 +1,49 @@
+# Jetpacktuxedo's minivan layout
+
+This differs quite a bit from the stock layout but leaves keys in a more familiar position in my opinion. It is designed to use the arrow+command layout, but I used a fairly similar layout for the normal arrow layout. Additionally, I use an mx lock switch on the key between the right space key and the arrow cluster. If you don't want to use a lock switch you should change MO(4) on the base layer to use TG(4) instead for a similar effect.
+
+## Base Layer (0)
+
+The base layer is pretty simple, straight qwerty layout where available. Of note: /? is to the right of the arrow keys. Yes this is kinda weird sometimes, but you get used to it. Tab is tab when pressed and fn2 when held, Enter is the same. GESC is esc when used alone, but ~ when shifted. Tapping FN 1 is space
+```
+|GESC| Q | W | E | R | T | Y | U | I | O | P | BSPC |
+| TAB | A | S | D | F | G | H | J | K | L | ; |ENTER|
+|SHIFT | Z | X | C | V | B | N | M | , | . | UP | / |
+|CTRL|WIN |ALT |FN 3| FN 1 | SPACE | FN 4 |LEFT|DOWN|RIGH|
+```
+## Numeric Layer (1)
+
+This layer has the numrow as well as swapping the arrow keys for a nav cluster, and swapping ;: for '" and /? for \|. With that almost all of the missing keys are accounted for.
+```
+| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | DEL |
+| | | | | | | | | - | = | ' | |
+| | | | | | | | | [ | ] |PGUP| \ |
+| | | | | | | |HOME|PGDN|END |
+```
+## Symbolic Layer (2)
+
+I don't want to be using two key combos constantly, so I also added this symbol layer that is basically shift+numeric layer
+```
+| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | DEL |
+| | | | | | | | | _ | + | " | |
+| | | | | | | | | { | } |PGUP| | |
+| | | | | | | |HOME|PGDN|END |
+```
+## Fkeys (3)
+
+I very rarely use Fkeys, but figured I'd throw them on anyway just in case. The setup basically mimics the way Fkeys are usually done on a 60%, with F11 and F12 still on - and =, even though the location of those keys has moved.
+```
+| | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |F10 | |
+| | | | | | | | |F11 |F12 | | |
+| | | | | | | | | | | | |
+| | | | | | | | | | |
+```
+## Gaming Layer (4)
+
+Originally this was just going to be a gaming layer (make esc just esc, make tab just tab, move space to the left side), but I ended up in a hotel without a usb mouse, so I added mousekeys to it as well.
+```
+|ESC | | | | | |MWUP|MRCK|M_UP|MLCK| | |
+| TAB | | | | | |MWDN|M_LF|M_DN|M_RG| | |
+| | | | | | | | | | | | |
+| | | | | SPACE | | | | | |
+```
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk
new file mode 100644
index 000000000..ebc9f810f
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/rules.mk
@@ -0,0 +1,17 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
diff --git a/keyboards/thevankeyboards/minivan/keymaps/mjt/config.h b/keyboards/thevankeyboards/minivan/keymaps/mjt/config.h
new file mode 100644
index 000000000..e89a3ea12
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/mjt/config.h
@@ -0,0 +1,14 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+// place overrides here
+#ifdef BACKLIGHT_ENABLE
+ #define BACKLIGHT_PIN B2
+ #define BACKLIGHT_LEVELS 7
+#endif
+
+#define USB_MAX_POWER_CONSUMPTION 50
+
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/mjt/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/mjt/keymap.c
new file mode 100644
index 000000000..8f0fba11d
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/mjt/keymap.c
@@ -0,0 +1,197 @@
+//Author: mike terhar
+#include QMK_KEYBOARD_H
+
+#ifdef BACKLIGHT_ENABLE
+ #include "backlight.h"
+#endif
+
+enum minivan_layers {
+ _QWERTY,
+ _NUMSYM,
+ _FKEYS,
+ _FKEYGRV,
+ _PLOVER,
+ _ADJUST
+};
+
+enum planck_keycodes {
+ QWERTY = SAFE_RANGE,
+ DYNKEY,
+ DYNAMIC_MACRO_RANGE,
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define FKEYS F(_FKEYS)
+#define NUMSYM F(_NUMSYM)
+#define FKEYGRV F(_FKEYGRV)
+#define MACSLEEP M(5)
+#define PLOVER M(6)
+#define LAYERRESET M(7)
+#define BACKLIT M(8)
+#define ADJUST M(9)
+#define XXXXXXX KC_NO
+
+#include "dynamic_macro.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[_QWERTY] = {
+ {FKEYS, 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,SFT_T(KC_ENT) },
+ {KC_LCTL,KC_LALT,KC_LGUI, KC_SPC,XXXXXXX,XXXXXXX,XXXXXXX,NUMSYM,KC_LEFT,KC_DOWN,KC_UP ,KC_RIGHT}
+},
+[_NUMSYM] = {
+ {FKEYGRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______},
+ {KC_DEL,KC_EXLM, KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, ADJUST },
+ { _______, KC_UNDS,KC_PLUS, KC_LCBR,KC_RCBR,KC_PIPE , KC_MINS,KC_EQL,KC_LBRC, KC_RBRC, KC_BSLS, _______},
+ {_______,_______,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,_______, KC_HOME, KC_PGDN, KC_PGUP, KC_END}
+},
+[_FKEYS] ={
+ {_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______},
+ {KC_DEL, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, _______, _______, MACSLEEP, DYN_REC_START1, DYN_REC_START2 },
+ {KC_CAPS, _______, _______, _______, _______, _______, _______, _______, DYN_MACRO_PLAY1, DYN_MACRO_PLAY2,_______,DYN_REC_STOP},
+ {_______,_______,_______,LAYERRESET,XXXXXXX,XXXXXXX,XXXXXXX,LAYERRESET, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
+},
+[_PLOVER] = {
+ {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},
+ {LAYERRESET, XXXXXXX, KC_C, KC_V, XXXXXXX , XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX}
+},
+[_ADJUST] = {
+ {_______ , RESET, _______, _______, _______, _______, _______, _______, KC_SLCK, KC_PAUS, KC_PSCR, KC_DEL },
+ {_______ , _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, _______, MACSLEEP, PLOVER, _______},
+ {_______ , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
+ {BACKLIT, _______, _______, LAYERRESET, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______}
+}
+};
+
+#ifdef AUDIO_ENABLE
+
+float tone_startup[][2] = SONG(STARTUP_SOUND);
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+float tone_dyn_macro_rec[][2] = SONG(DVORAK_SOUND);
+float tone_dyn_macro_play[][2] = SONG(COLEMAK_SOUND);
+float tone_plover[][2] = SONG(PLOVER_SOUND);
+float tone_adjust[][2] = SONG(PLOVER_GOODBYE_SOUND);
+float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
+
+float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
+#endif
+
+void persistant_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+const uint16_t PROGMEM fn_actions[] = {
+ [_FKEYS] = ACTION_LAYER_TAP_KEY(_FKEYS, KC_TAB),
+ [_FKEYGRV] = ACTION_LAYER_TAP_KEY(_FKEYS, KC_GRV),
+ [_NUMSYM] = ACTION_LAYER_TAP_TOGGLE(_NUMSYM),
+};
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ switch(id) {
+ case 5: // MACSLEEP
+ if (record->event.pressed) {
+ register_code(KC_RSFT);
+ register_code(KC_RCTL);
+ register_code(KC_POWER);
+ unregister_code(KC_POWER);
+ unregister_code(KC_RCTL);
+ unregister_code(KC_RSFT);
+ }
+ break;
+ case 6: // PLOVER
+ if (record->event.pressed) {
+ #ifdef AUDIO_ENABLE
+ stop_all_notes();
+ PLAY_NOTE_ARRAY(tone_plover, false, 0);
+ #endif
+ layer_off(_NUMSYM);
+ layer_off(_FKEYS);
+ layer_off(_ADJUST);
+ layer_on(_PLOVER);
+ }
+ break;
+ case 7: // LAYERRESET
+ if (record->event.pressed) {
+ #ifdef AUDIO_ENABLE
+ PLAY_NOTE_ARRAY(tone_qwerty, false, 0);
+ #endif
+ layer_off(_NUMSYM);
+ layer_off(_FKEYS);
+ layer_off(_PLOVER);
+ layer_off(_ADJUST);
+ }
+ break;
+ case 8: // BACKLIT
+ if (record->event.pressed) {
+ register_code(KC_RSFT);
+ #ifdef BACKLIGHT_ENABLE
+ backlight_step();
+ #endif
+ } else {
+ unregister_code(KC_RSFT);
+ }
+ break;
+ case 9: // ADJUST
+ if(record->event.pressed) {
+ #ifdef AUDIO_ENABLE
+ stop_all_notes();
+ PLAY_NOTE_ARRAY(tone_adjust, false, 0);
+ #endif
+ layer_off(_NUMSYM);
+ layer_off(_FKEYS);
+ layer_off(_PLOVER);
+ layer_on(_ADJUST);
+ }
+ }
+ return MACRO_NONE;
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ uint16_t macro_kc = keycode;
+ if (keycode == FKEYS || keycode == ADJUST || keycode == FKEYGRV ){
+ macro_kc = DYN_REC_STOP;
+ }
+ if (!process_record_dynamic_macro(macro_kc, record)) {
+ return false;
+ }
+
+ return true;
+}
+
+void matrix_init_user(void) {
+ #ifdef AUDIO_ENABLE
+ startup_user();
+ #endif
+}
+
+#ifdef AUDIO_ENABLE
+
+void startup_user()
+{
+ _delay_ms(20); // gets rid of tick
+ PLAY_NOTE_ARRAY(tone_startup, false, 0);
+}
+
+void shutdown_user()
+{
+ PLAY_NOTE_ARRAY(tone_goodbye, false, 0);
+ _delay_ms(150);
+ stop_all_notes();
+}
+
+void music_on_user(void)
+{
+ music_scale_user();
+}
+
+void music_scale_user(void)
+{
+ PLAY_NOTE_ARRAY(music_scale, false, 0);
+}
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/mjt/readme.md b/keyboards/thevankeyboards/minivan/keymaps/mjt/readme.md
new file mode 100644
index 000000000..c86985f6c
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/mjt/readme.md
@@ -0,0 +1,26 @@
+# Mike's Minivan
+
+- Arrow Layout (45key)
+- Dynamic Macros
+- Media Keys
+- Works with iPhone Camera Adapter
+
+## Layers
+
+Qwerty for letters and mods.
+
+Numsym for all numbers and symbols used in typing. Follows a similar approach to
+planck but puts both on the same layer eschewing the F-keys.
+
+Fkeys layer is for the seldom used stuff like F-keys and some additional features
+such as dynamic macros, media keys, and a sleep shortcut for OS X.
+
+Adjust layer is tough to get to so it is only for keyboard configuration stuff.
+
+## Dynamic Macros
+
+Hold TAB key, then press ";" to record macro 1 and "'" to record macro 2.
+
+When you are done recording, press TAB again.
+
+For playback of macros, TAB+"," plays macro 1 and TAB+","plays macro 2.
diff --git a/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk
new file mode 100644
index 000000000..41afd9a55
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/mjt/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = yes # Console for debug(+400)
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/smt/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/smt/keymap.c
new file mode 100644
index 000000000..ee117e47b
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/smt/keymap.c
@@ -0,0 +1,230 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+#define _QWERTY 0
+#define _COLEMAK 1
+#define _DVORAK 2
+#define _LOWER 3
+#define _RAISE 4
+#define _ADJUST 16
+
+// Keycodes
+enum planck_keycodes {
+ QWERTY = SAFE_RANGE,
+ COLEMAK,
+ DVORAK,
+ LOWER,
+ RAISE,
+ BACKLIT
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define XXXXXXX KC_NO
+
+// Custom macros
+#define CTL_ESC CTL_T(KC_ESC) // Tap for Esc, hold for Ctrl
+#define SFT_ENT SFT_T(KC_ENT) // Tap for Enter, hold for Shift
+#define HPR_TAB ALL_T(KC_TAB) // Tap for Tab, hold for Hyper (Super+Ctrl+Alt+Shift)
+#define ALT_GRV ALT_T(KC_GRV) // Tap for Backtick, hold for Alt (Ctrl+Alt+Shift)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ *
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * |Hyper/Tab| Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | Ctrl/Esc | A | S | D | F | G | H | J | K | L | ; | ' |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / |Sft/Ent|
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_QWERTY] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_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, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ ALT_GRV , KC_LGUI , LOWER , KC_SPC , KC_SPC , RAISE , KC_RGUI, KC_RALT, KC_RCTL ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+
+/* Colemak
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * |Hyper/Tab| Q | W | F | P | G | J | L | U | Y | ; | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | Ctrl/Esc | A | R | S | T | D | H | N | E | I | O | ' |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | Shift | Z | X | C | V | B | K | M | , | . | / |Sft/Ent|
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_COLEMAK] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_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, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ ALT_GRV , KC_LGUI , LOWER , KC_SPC , KC_SPC , RAISE , KC_RGUI, KC_RALT, KC_RCTL ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+
+/* Dvorak
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * |Hyper/Tab| ' | , | . | P | Y | F | G | C | R | L | Bksp |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | Ctrl/Esc | A | O | E | U | I | D | H | T | N | S | - |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | Shift | ; | Q | J | K | X | B | M | W | V | Z |Sft/Ent|
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_DVORAK] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ HPR_TAB,KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ CTL_ESC , KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ KC_LSFT , KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, SFT_ENT ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ ALT_GRV , KC_LGUI , LOWER , KC_SPC , KC_SPC , RAISE , KC_RGUI, KC_RALT, KC_RCTL ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+
+/* Lower
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | $ | 4 | 5 | 6 | . | + | * | 4 | 5 | 6 | . | PageUp |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | = | 7 | 8 | 9 | 0 | - | / | 1 | 2 | 3 | Up |PageDn |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | Brite | | | Home | End | | Left | Down | Right |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_LOWER] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ALL_T(KC_0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+CTL_T(KC_DLR), KC_4, KC_5, KC_6, KC_DOT, KC_PLUS, KC_ASTR, KC_4, KC_5, KC_6, KC_DOT, KC_PGUP ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+SFT_T(KC_EQL), KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_SLSH, KC_1, KC_2, KC_3, KC_UP, SFT_T(KC_PGDN),
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ALT_T(BACKLIT), _______ , _______ , KC_HOME , KC_END , _______ , KC_LEFT, KC_DOWN, KC_RGHT ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+
+/* Raise
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | F1 | F2 | F3 | F4 | F5 | F6 | _ | ? | + | { | } | |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | F7 | F8 | F9 | F10 | F11 | F12 | - | / | = | [ | ] | |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | Brite | | | Play | Next | | Mute | Vol- | Vol+ |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_RAISE] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ALL_T(KC_TILD),KC_EXLM,KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+CTL_T(KC_F1), KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_QUES, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ SFT_T(KC_F7), KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINS, KC_SLSH, KC_EQL, KC_LBRC, KC_RBRC, SFT_T(KC_BSLS),
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ALT_T(BACKLIT), _______ , _______ , KC_MPLY , KC_MNXT , _______ , KC_MUTE, KC_VOLD, KC_VOLU ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+
+/* Adjust (Lower + Raise)
+ * ,---------+------+------+------+------+------+------+------+------+------+------+---------.
+ * | | Reset| | | | | | | | | | Reset |
+ * |---------`------`------`------`------`------`------`------`------`------`------`---------|
+ * | | | | | |AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
+ * |----------`------`------`------`------`------`------`------`------`------`------`--------|
+ * | | | | | | | | | | | | |
+ * |-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+ * | | | | | | | | | |
+ * `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+ */
+[_ADJUST] = LAYOUT_arrow(
+/*,--------+-------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------.*/
+ _______, RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET ,
+/*|--------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`-----------------|*/
+ _______ ,_______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______ ,
+/*|---------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`----------------|*/
+ _______ ,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
+/*|----------`-------`--------`--------`--------`--------`--------`--------`--------`--------`--------`---------------|*/
+ _______ , _______ , _______ , _______ , _______ , _______ , _______, _______, _______ ),
+/*`---------+---------------+---------+-------^^^------+-------^^^-------+----------+--------+--------+--------------'*/
+};
+
+void persistent_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case QWERTY:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_QWERTY);
+ }
+ return false;
+ break;
+ case COLEMAK:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_COLEMAK);
+ }
+ return false;
+ break;
+ case DVORAK:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_DVORAK);
+ }
+ return false;
+ break;
+ case LOWER:
+ if (record->event.pressed) {
+ layer_on(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case RAISE:
+ if (record->event.pressed) {
+ layer_on(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case BACKLIT:
+ if (record->event.pressed) {
+ register_code(KC_RSFT);
+ #ifdef BACKLIGHT_ENABLE
+ backlight_step();
+ #endif
+ } else {
+ unregister_code(KC_RSFT);
+ }
+ return false;
+ break;
+ }
+ return true;
+}
diff --git a/keyboards/thevankeyboards/minivan/keymaps/smt/readme.md b/keyboards/thevankeyboards/minivan/keymaps/smt/readme.md
new file mode 100644
index 000000000..059fd1bbd
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/smt/readme.md
@@ -0,0 +1,126 @@
+# smt's TV44 keymap
+
+This keymap is based on a combination of my Planck keymap and [jeebak's TV44 layout](https://github.com/qmk/qmk_firmware/tree/master/keyboards/tv44/keymaps/jeebak). I removed the macros and TouchCursor/MouseCursor layers, because I'm just not ready for that level of mind-mapping.
+
+I had been using something close to the default Minivan layout, but after spending a bit of time with the Planck and Preonic, I decided it would be better for me to try to standardize to some degree, where possible.
+
+Also, it's worth noting that my Minivan is one with the "arrows" layout, which has a 45th key. In spite of this, the 45-key Minivan is still technically considered a "TV44" as far as I know.
+
+![smt's TV44 keymap](https://i.imgur.com/Y4n6eHj.png)
+
+## Notable features (most of which can be found in my or jeebak's respective keymap file):
+
+1. **Shift/Enter**
+
+ I use both the left and right shift keys when I type. When I want to modify a key with shift, I hold shift with the hand opposite the one typing the key. In the default keymap, Enter is where shift would be on a standard keyboard layout. Oh, muscle memory.
+
+ Thankfully, QMK supports [mod-tap](https://github.com/jackhumbert/qmk_firmware/wiki#fun-with-modifier-keys) keys, and this allows me to set the Enter key to send a modifier (MOD_LSFT) when held, and KC_ENT when tapped. Awesome!
+
+2. **Hyper/Tab**
+
+ This key modifies with "Hyper" (see [Brett Terpstra's post](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/) on this) when held, and outputs the code for Tab when tapped. On the Mac, I use KeyboardMaestro to remap my hyper-keys to do a lot of crazy things.
+
+3. **Ctrl/Escape**
+
+ I set up another mod-tap, this time for the Escape key that would act as a Control modifier when held.
+
+4. **Alt/Backtick**
+
+ I don't currently have LEDs on most of my keyboards, and I certainly don't want LED controls on the base layer of a 40%.
+
+ So, why use backtick in the lower left corner? I use it as my tmux prefix key, so I need to type it more frequently than most people. Putting it on the base layer works well for my use case, and it's consistent with where I place it in my Planck and Preonic keymaps.
+
+ I also like Alt in that position, so it works well as yet another mod-tap key.
+
+
+## Layers
+
+### Qwerty
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+|Hyper/Tab| Q | W | E | R | T | Y | U | I | O | P | Bksp |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| Ctrl/Esc | A | S | D | F | G | H | J | K | L | ; | ' |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| Shift | Z | X | C | V | B | N | M | , | . | / |Sft/Ent|
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
+
+### Colemak
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+|Hyper/Tab| Q | W | F | P | G | J | L | U | Y | ; | Bksp |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| Ctrl/Esc | A | R | S | T | D | H | N | E | I | O | ' |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| Shift | Z | X | C | V | B | K | M | , | . | / |Sft/Ent|
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
+
+### Dvorak
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+|Hyper/Tab| ' | , | . | P | Y | F | G | C | R | L | Bksp |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| Ctrl/Esc | A | O | E | U | I | D | H | T | N | S | - |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| Shift | ; | Q | J | K | X | B | M | W | V | Z |Sft/Ent|
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| Alt/` | GUI | Lower | Space | Space | Raise | GUI | Alt | Ctrl |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
+
+### Lower
+
+This is where I put the number row, two numpad clusters, common arithmetic operators, and cursorkeys: Arrow cluster, Home/End, Page Up/Page Down. `0` and `$` are also placed on the left side for convenient access to beginning-of-line and end-of-line Vim commands. BRITE has been moved here from the base layer.
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| $ | 4 | 5 | 6 | . | + | * | 4 | 5 | 6 | . | PageUp |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| = | 7 | 8 | 9 | 0 | - | / | 1 | 2 | 3 | Up |PageDn |
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| Brite | | | Home | End | | Left | Down | Right |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
+
+### Raise
+
+As a developer, it makes the most sense for me to group all the commonly-used symbols that don't fit on the main layer. In particular, having the dual-column of parens-braces-brackets helps me keep them straight. I've dropped basic media controls onto this layer as well.
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| F1 | F2 | F3 | F4 | F5 | F6 | _ | ? | + | { | } | | |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| F7 | F8 | F9 | F10 | F11 | F12 | - | / | = | [ | ] | \ |
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| Brite | | | Play | Next | | Mute | Vol- | Vol+ |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
+
+### Adjust (Lower + Raise)
+
+Utility layer. There isn't much here; it's mainly for swapping the default keymap between Qwerty and Dvorak, or putting the keyboard into flash mode via the Reset key.
+
+```
+,---------+------+------+------+------+------+------+------+------+------+------+---------.
+| | Reset| | | | | | | | | | Del |
+|---------`------`------`------`------`------`------`------`------`------`------`---------|
+| | | | | |AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
+|----------`------`------`------`------`------`------`------`------`------`------`--------|
+| | | | | | | | | | | | |
+|-----------`------`------`------`------`-----'-------`------`------`------`------`-------|
+| | | | | | | | | |
+ `-------+---------+--------+-----^^^------+-----^^^------+---------+------+------+-------'
+```
diff --git a/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk
new file mode 100644
index 000000000..f4671a9d1
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/smt/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = yes # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/tong92/config.h b/keyboards/thevankeyboards/minivan/keymaps/tong92/config.h
new file mode 100644
index 000000000..be959a823
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/tong92/config.h
@@ -0,0 +1,12 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+// place overrides here
+#ifdef BACKLIGHT_ENABLE
+ #define BACKLIGHT_PIN B2
+ #define BACKLIGHT_LEVELS 7
+#endif
+
+#endif
diff --git a/keyboards/thevankeyboards/minivan/keymaps/tong92/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/tong92/keymap.c
new file mode 100644
index 000000000..220cc8c61
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/tong92/keymap.c
@@ -0,0 +1,203 @@
+//Author: tong92 <tong92power@gmail.com>
+#include QMK_KEYBOARD_H
+
+#ifdef BACKLIGHT_ENABLE
+ #include "backlight.h"
+#endif
+
+extern keymap_config_t keymap_config;
+
+enum tv44_layers {
+ _WINDOW,
+ _MAC,
+ _LOWER,
+ _RAISE,
+ _WINDOW_SHORTCUT,
+ _MAC_SHORTCUT,
+ _MOUSE
+};
+
+enum tv44_keycodes {
+ WINDOW = SAFE_RANGE,
+ MAC,
+ MOUSE,
+ BACKLIT,
+ EXT_MOUSE
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define LOWER F(_LOWER)
+#define RAISE F(_RAISE)
+#define XXXXXXX KC_NO
+#define WINDOW_SHORTCUT MO(_WINDOW_SHORTCUT)
+#define MAC_SHORTCUT MO(_MAC_SHORTCUT)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Window - Qwerty
+ * ,--------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | Ctrl | A | S | D | F | G | H | J | K | L | ; | Enter|
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / |Shift|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | Ft | GUI | Alt | Space/LOWER | Space/RAISE | ' | [ | ] | Alt |
+ * `--------------------------------------------------------------------------'
+ */
+[_WINDOW] = LAYOUT_arrow(
+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_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_ENT,
+KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,
+WINDOW_SHORTCUT, KC_LGUI,KC_LALT, LOWER, RAISE, KC_QUOT,KC_LBRC,KC_RBRC,KC_RALT
+),
+/* Mac - Qwerty
+ * ,--------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | Cmd | A | S | D | F | G | H | J | K | L | ; | Enter|
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / |Shift|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | Ft | Alt | Ctrl | Space/LOWER | Space/RAISE | ' | [ | ] | Alt |
+ * `--------------------------------------------------------------------------'
+ */
+[_MAC] = LAYOUT_arrow(
+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_LGUI,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_ENT,
+KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,
+MAC_SHORTCUT, KC_LALT, KC_LCTRL, LOWER, RAISE, KC_QUOT,KC_LBRC,KC_RBRC,KC_RALT
+),
+/* LOWER
+ * ,--------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | - | + | [ | ] | \ |
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | | HOME| PgUp| UP | PgDo|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | | | | | | END | LEFT| Down|RIGHT|
+ * `--------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_arrow(
+KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
+_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS,KC_PLUS,KC_LBRC,KC_RBRC,KC_BSLS,
+_______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN,
+XXXXXXX,_______,_______, _______,XXXXXXX, KC_END, KC_LEFT,KC_DOWN,KC_RIGHT
+),
+/* RAISE
+ * ,--------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | = | { | } | | |
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | | HOME| PgUp| UP | PgDo|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | | | | | | END | LEFT| Down|RIGHT|
+ * `--------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_arrow(
+KC_TILD,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,_______,
+_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS,KC_EQL, KC_LCBR,KC_RCBR,KC_PIPE,
+_______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,KC_HOME,KC_PGUP,KC_UP ,KC_PGDN,
+XXXXXXX,_______,_______, _______,_______, KC_END, KC_LEFT,KC_DOWN,KC_RIGHT
+),
+/* Window Shortcut
+ * ,--------------------------------------------------------------------------.
+ * | ESC |WinOf|WinUp| | |Sh+Ca| | PgUp| UP | PgDo|PrtSc| DELET |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | |WinLe|WinDo|WinRi| |Al+Ca|CapsL| LEFT| DOWN|RIGHT| | |
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | |WinLW|WinRW| | |Ct+Ca|ScroL| HOME| | END | | Ctrl|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | | DeskL | DeskR| Task Manager| DeskX | MOUSE| | | LED |
+ * `--------------------------------------------------------------------------'
+ */
+[_WINDOW_SHORTCUT] = LAYOUT_arrow(
+KC_ESC ,LALT(KC_F4) ,LGUI(KC_UP) ,XXXXXXX ,XXXXXXX,S(KC_CAPS) ,XXXXXXX ,KC_PGUP,KC_UP ,KC_PGDN ,KC_PSCR,KC_DELT,
+_______,LGUI(KC_LEFT) ,LGUI(KC_DOWN) ,LGUI(KC_RIGHT),XXXXXXX,LALT(KC_CAPS) ,KC_CAPS ,KC_LEFT,KC_DOWN,KC_RIGHT,XXXXXXX,XXXXXXX,
+_______,LGUI(LSFT(KC_LEFT)),LGUI(LSFT(KC_RIGHT)),XXXXXXX ,XXXXXXX,LCTL(KC_CAPS) ,KC_SLCK ,KC_HOME,XXXXXXX,KC_END ,XXXXXXX,KC_RCTL,
+_______,LGUI(LCTL(KC_LEFT)),LGUI(LCTL(KC_RIGHT)), LCTL(LALT(KC_DELT)),LGUI(LCTL(KC_F4)), MOUSE ,XXXXXXX ,XXXXXXX,BACKLIT
+),
+/* Mac Shortcut
+ * ,--------------------------------------------------------------------------.
+ * | ESC |CmdUp|CmdDo| | | | | PgUp| UP | PgDo|PrtSc| DELET |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | |WBlkL|WBlkR| |ScrFu| |CapsL| LEFT| DOWN|RIGHT| | |
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | |BlckL|BlckR| | | | | HOME| | END | | Ctrl|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | | | | | | MOUSE| | | LED |
+ * `--------------------------------------------------------------------------'
+ */
+[_MAC_SHORTCUT] = LAYOUT_arrow(
+KC_ESC ,LGUI(KC_UP) ,LGUI(KC_DOWN) ,XXXXXXX ,XXXXXXX,XXXXXXX ,XXXXXXX ,KC_PGUP,KC_UP ,KC_PGDN ,KC_PSCR,KC_DELT,
+_______,LALT(LSFT(KC_LEFT)) ,LALT(LSFT(KC_RIGHT)) ,XXXXXXX,LGUI(LCTL(KC_F)),XXXXXXX ,KC_CAPS ,KC_LEFT,KC_DOWN,KC_RIGHT,XXXXXXX,XXXXXXX,
+_______,LGUI(LSFT(KC_LEFT)),LGUI(LSFT(KC_RIGHT)),XXXXXXX ,XXXXXXX,XXXXXXX ,XXXXXXX ,KC_HOME,XXXXXXX,KC_END ,XXXXXXX,KC_RCTL,
+_______,_______,_______, _______,_______, MOUSE ,XXXXXXX ,XXXXXXX,BACKLIT
+),
+/* MOUSE
+ * ,--------------------------------------------------------------------------.
+ * | | | |Mo_Up| | | |M_WhL|M_WhU|M_WhR| | RESET |
+ * |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ * | | |Mo_Le|Mo_Do|Mo_Ri| | |M_Bt1|M_WhD|M_Bt2| | |
+ * |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ * | | | | | | | |M_AC0|M_AC1|M_AC2| |WINDO|
+ * |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ * | | | | GO_DEFAULT | GO_DEFAULT | | | | MAC |
+ * `--------------------------------------------------------------------------'
+ */
+[_MOUSE] = LAYOUT_arrow(
+XXXXXXX,XXXXXXX,XXXXXXX,KC_MS_U,XXXXXXX,XXXXXXX,XXXXXXX,KC_WH_L,KC_WH_U,KC_WH_R,XXXXXXX,RESET,
+XXXXXXX,XXXXXXX,KC_MS_L,KC_MS_D,KC_MS_R,XXXXXXX,XXXXXXX,KC_BTN1,KC_WH_D,KC_BTN2,XXXXXXX,XXXXXXX,
+XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_ACL0,KC_ACL1,KC_ACL2,XXXXXXX,WINDOW,
+XXXXXXX,XXXXXXX,XXXXXXX, EXT_MOUSE,EXT_MOUSE, XXXXXXX,XXXXXXX,XXXXXXX,MAC
+)
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+ [_LOWER] = ACTION_LAYER_TAP_KEY(_LOWER, KC_SPC),
+ [_RAISE] = ACTION_LAYER_TAP_KEY(_RAISE, KC_SPC)
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch(keycode) {
+ case WINDOW:
+ if (record->event.pressed) {
+ set_single_persistent_default_layer(_WINDOW);
+ }
+ return false;
+ break;
+ case MAC:
+ if (record->event.pressed) {
+ set_single_persistent_default_layer(_MAC);
+ }
+ return false;
+ break;
+ case BACKLIT:
+ if (record->event.pressed) {
+ #ifdef BACKLIGHT_ENABLE
+ backlight_step();
+ #endif
+ }
+ return false;
+ break;
+ case MOUSE:
+ if (record->event.pressed) {
+ layer_on(_MOUSE);
+ }
+ return false;
+ break;
+ case EXT_MOUSE:
+ if (record->event.pressed) {
+ layer_off(_MOUSE);
+ layer_off(_WINDOW_SHORTCUT);
+ layer_off(_MAC_SHORTCUT);
+ }
+ return false;
+ break;
+ }
+ return true;
+};
+
diff --git a/keyboards/thevankeyboards/minivan/keymaps/tong92/readme.md b/keyboards/thevankeyboards/minivan/keymaps/tong92/readme.md
new file mode 100644
index 000000000..820857256
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/tong92/readme.md
@@ -0,0 +1,52 @@
+# The tong92's keymap for tv44
+
+- Arrow Layout (45key)
+- my keymap for Window User
+- Mouse Layer : space -> Default Layer
+
+## Qwerty
+ ,--------------------------------------------------------------------------.
+ | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ | Ctrl | A | S | D | F | G | H | J | K | L | ; | Enter|
+ |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ | Shift | Z | X | C | V | B | N | M | , | . | / |Shift|
+ |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ | Ftn1 | GUI | Alt | Space/LOWER | Space/RAISE | ' | [ | ] | Alt |
+ `--------------------------------------------------------------------------'
+
+
+## RAISE
+ ,--------------------------------------------------------------------------.
+ | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
+ |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ | | F1 | F2 | F3 | F4 | F5 | F6 | _ | = | { | } | | |
+ |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ | | F7 | F8 | F9 | F10 | F11 | F12 | | HOME| PgUp| UP | PgDo|
+ |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ | | | | | | END | LEFT| Down|RIGHT|
+ `--------------------------------------------------------------------------'
+
+
+## FTN
+ ,--------------------------------------------------------------------------.
+ | ESC |WinOf|WinUp| | |Sh+Ca| | PgUp| UP | PgDo|PrtSc| DELET |
+ |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ | |WinLe|WinDo|WinRi| |Al+Ca|CapsL| LEFT| DOWN|RIGHT| | |
+ |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ | |WinLW|WinRW| | |Ct+Ca|ScroL| HOME| | END | | Ctrl|
+ |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ | | DeskL | DeskR| Task Manager| DeskX | MOUSE| | | LED |
+ `--------------------------------------------------------------------------'
+
+
+## MOUSE
+ ,--------------------------------------------------------------------------.
+ | | | |Mo_Up| | | |M_WhL|M_WhU|M_WhR| | RESET |
+ |------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-------|
+ | | |Mo_Le|Mo_Do|Mo_Ri| | |M_Bt1|M_WhD|M_Bt2| | |
+ |-------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`------|
+ | | | | | | | |M_AC0|M_AC1|M_AC2| | |
+ |--------`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----`-----|
+ | | | | GO_DEFAULT | GO_DEFAULT | | | | |
+ `--------------------------------------------------------------------------'
diff --git a/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk
new file mode 100644
index 000000000..e60e3c5c5
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/tong92/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = no # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/config.h b/keyboards/thevankeyboards/minivan/keymaps/xyverz/config.h
new file mode 100644
index 000000000..df06a2620
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/config.h
@@ -0,0 +1,8 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+// place overrides here
+
+#endif \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c
new file mode 100644
index 000000000..ec0d27007
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c
@@ -0,0 +1,124 @@
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+enum planck_layers {
+ _QWERTY,
+ _COLEMAK,
+ _DVORAK,
+ _LOWER,
+ _RAISE,
+ _ADJUST
+};
+
+enum planck_keycodes {
+ DVORAK = SAFE_RANGE,
+ QWERTY,
+ COLEMAK,
+ LOWER,
+ RAISE,
+ ADJUST
+};
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define XXXXXXX KC_NO
+
+// Aliases for some other things I want to try out
+#define RAI_ESC LT(_RAISE, KC_ESC)
+#define LOW_QUQ LT(_LOWER, KC_QUOT)
+#define LOW_MIN LT(_LOWER, KC_MINS) // Same as above, but for Dvorak layer
+#define GUIBSPC GUI_T(KC_BSPC)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_DVORAK] = LAYOUT( /* 0: Dvorak */
+ KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,
+ RAI_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, LOW_MIN,
+ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
+ KC_LCTL, KC_LALT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT
+ ),
+
+ [_QWERTY] = LAYOUT( /* 1: 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,
+ RAI_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LOW_QUQ,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT
+ ),
+
+ [_COLEMAK] = LAYOUT( /* 2: Colemak */
+ KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
+ RAI_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, LOW_QUQ,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LGUI, KC_ENT
+ ),
+
+ [_LOWER] = LAYOUT( /* 1: FN 1 */
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
+ _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
+ KC_LEFT, KC_RGHT, _______, KC_DEL, KC_INS, _______, KC_UP, KC_DOWN
+ ),
+
+ [_RAISE] = LAYOUT( /* 2: FN 2 */
+ 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_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______,
+ KC_LEFT, KC_RGHT, _______, KC_DEL, KC_INS, _______, KC_UP, KC_DOWN
+ ),
+
+ [_ADJUST] = LAYOUT(
+ KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
+ _______, RESET, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_HOME, KC_END, _______, _______, _______, _______, KC_PGUP, KC_PGDN
+ )
+};
+
+void persistent_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case QWERTY:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_QWERTY);
+ }
+ return false;
+ break;
+ case COLEMAK:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_COLEMAK);
+ }
+ return false;
+ break;
+ case DVORAK:
+ if (record->event.pressed) {
+ persistent_default_layer_set(1UL<<_DVORAK);
+ }
+ return false;
+ break;
+ case LOWER:
+ if (record->event.pressed) {
+ layer_on(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case RAISE:
+ if (record->event.pressed) {
+ layer_on(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ }
+ return true;
+}
diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/readme.md b/keyboards/thevankeyboards/minivan/keymaps/xyverz/readme.md
new file mode 100644
index 000000000..ac84c08cf
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/readme.md
@@ -0,0 +1 @@
+# The default keymap for tv44 \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk
new file mode 100644
index 000000000..f4671a9d1
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/rules.mk
@@ -0,0 +1,21 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = yes # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+MIDI_ENABLE = no # MIDI controls
+AUDIO_ENABLE = no # Audio output on port C6
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif \ No newline at end of file