From bd484f18bd6092a3c3cb489cc0798904f187a64f Mon Sep 17 00:00:00 2001 From: Jonathan Boyett Date: Tue, 22 Aug 2017 22:04:25 -0400 Subject: [PATCH] JD40 MiniVan port --- keyboards/jd40/keymaps/vanagon/Makefile | 3 +++ keyboards/jd40/keymaps/vanagon/README.md | 17 ++++++++++++++ keyboards/jd40/keymaps/vanagon/config.h | 13 +++++++++++ keyboards/jd40/keymaps/vanagon/keymap.c | 29 ++++++++++++++++++++++++ 4 files changed, 62 insertions(+) create mode 100644 keyboards/jd40/keymaps/vanagon/Makefile create mode 100644 keyboards/jd40/keymaps/vanagon/README.md create mode 100644 keyboards/jd40/keymaps/vanagon/config.h create mode 100644 keyboards/jd40/keymaps/vanagon/keymap.c diff --git a/keyboards/jd40/keymaps/vanagon/Makefile b/keyboards/jd40/keymaps/vanagon/Makefile new file mode 100644 index 0000000000..63aac4e597 --- /dev/null +++ b/keyboards/jd40/keymaps/vanagon/Makefile @@ -0,0 +1,3 @@ +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/jd40/keymaps/vanagon/README.md b/keyboards/jd40/keymaps/vanagon/README.md new file mode 100644 index 0000000000..2a8ed0cc48 --- /dev/null +++ b/keyboards/jd40/keymaps/vanagon/README.md @@ -0,0 +1,17 @@ +Vanagon +=== +Port of (evangs)[https://thevankeyboards.com] (MiniVan layout)[https://www.massdrop.com/talk/115/where-did-all-my-keys-go-a-look-into-the-function-layers-of-the-mini-van] to the JD40. Includes colon/semicolon support, which is missing from the MiniVan layout. + +This layout uses a 44 key configuration similar to the following: + +``` +,------+------+------+------+------+------+------+------+------+------+------+------. +| | | | | | | | | | | | | +|------`------`------`------`------`------`------`------`------`------`------`------| +| | | | | | | | | | | | +|-------`------`------`------`------`------`------`------`------`------`------------| +| | | | | | | | | | | | +|---------`------`------`------`------`------'-------`------`------`------`---------| +| | | | | | | | | | | +`------+------+------+-------+----^^^-----+----^^^-----+-------+------+------+------' +``` diff --git a/keyboards/jd40/keymaps/vanagon/config.h b/keyboards/jd40/keymaps/vanagon/config.h new file mode 100644 index 0000000000..65d2fe6f98 --- /dev/null +++ b/keyboards/jd40/keymaps/vanagon/config.h @@ -0,0 +1,13 @@ +#include "../../config.h" + +#define KEYMAP_VANAGON(\ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \ + K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \ + K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, \ + K35, K36, K37, K38, K39, K40, K41, K42, K43, K44 \ +) { \ + { K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12 }, \ + { K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23 }, \ + { K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34 }, \ + { K35, K36, K37, K38, K39, KC_NO, K40, K41, K42, K43, K44 } \ +} diff --git a/keyboards/jd40/keymaps/vanagon/keymap.c b/keyboards/jd40/keymaps/vanagon/keymap.c new file mode 100644 index 0000000000..34314614c6 --- /dev/null +++ b/keyboards/jd40/keymaps/vanagon/keymap.c @@ -0,0 +1,29 @@ +#include "jd40.h" +#include "action_layer.h" + +enum { + _BL = 0, + _AL1, + _AL2, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BL] = KEYMAP_VANAGON( + 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(_AL1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MO(_AL1), + KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + MO(_AL2), KC_LCTL, KC_LALT, KC_LGUI, KC_ENT, KC_SPC, KC_RGUI, KC_RALT, KC_RSPC, MO(_AL2) + ), + [_AL1] = KEYMAP_VANAGON( + KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LBRC, KC_RBRC, KC_TRNS, + KC_TRNS, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_COLN, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_TRNS, + KC_TRNS, KC_ESC, KC_VOLD, KC_VOLU, KC_MUTE, 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 + ), + [_AL2] = KEYMAP_VANAGON( + KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_PIPE, KC_DQT, KC_UNDS, KC_PLUS, KC_SCLN, KC_TRNS, KC_4, KC_5, KC_6, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_1, KC_2, KC_3, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +};