add mechwild/mokulua vial keymaps (#245)

* Initial commit

* feat: LED sync between halves, layout tweaks

* feat: Vial keymap for mirrored configuration

* post-breaking changes refactor

* refactor: more symmetrical layout definitions

Co-authored-by: Kyle McCreery <mccreery.kyle@gmail.com>
This commit is contained in:
Less/Rikki 2022-09-21 07:18:34 -04:00 committed by GitHub
parent 50168b437b
commit 74db44226f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 266 additions and 0 deletions

View file

@ -0,0 +1,28 @@
// Copyright 2022 Kyle McCreery (@kylemccreery)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define VIAL_KEYBOARD_UID {0xF8, 0x72, 0x90, 0x0C, 0x29, 0xFB, 0x15, 0x46}
#define VIAL_UNLOCK_COMBO_ROWS { 0, 4 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 0 }
#if defined(__AVR_ATmega32U4__)
#undef SPLIT_MODS_ENABLE
#define NO_ACTION_ONESHOT
#undef LOCKING_SUPPORT_ENABLE
#undef LOCKING_RESYNC_ENABLE
#else
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_TWINKLE
#endif

View file

@ -0,0 +1,55 @@
// Copyright 2022 Kyle McCreery (@kylemccreery)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
#define FN1_SPC LT(1, KC_SPC)
#define FN2_SPC LT(2, KC_SPC)
// Defines names for use in layer keycodes and the keymap
enum layer_names {
_BASE,
_FN1,
_FN2,
_FN3
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, _______,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS,
MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
),
[_FN1] = LAYOUT(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
[_FN2] = LAYOUT(
_______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[_FN3] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};
#ifdef ENCODER_MAP_ENABLE
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
[_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_PGDN, KC_PGUP) },
[_FN1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_FN2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_FN3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
};
#endif

View file

@ -0,0 +1,11 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
VIAL_ENABLE = yes
ifeq ($(strip $(MCU)), atmega32u4)
QMK_SETTINGS = no
COMBO_ENABLE = no
KEY_OVERRIDE_ENABLE = no
TAP_DANCE_ENABLE = no
endif

View file

@ -0,0 +1,39 @@
{
"name": "MechWild Mokulua",
"vendorId": "0x6D77",
"productId": "0x170C",
"lighting": "qmk_rgblight",
"matrix": { "rows": 12, "cols": 6 },
"layouts": {
"labels": [
"Split Left Shift",
"Split Backspace",
"Full Right Shift",
"Huge Escape"
],
"keymap": [
[{"y":0.13,"c":"#777777","w":2},"0,0\n\n\n3,1",{"x":1.5},"0,0\n\n\n3,0",{"c":"#cccccc"},"0,1\n\n\n3,0",{"x":13.28,"c":"#aaaaaa","w":2},"6,0\n\n\n1,0",{"x":1.5,"c":"#cccccc"},"6,1\n\n\n1,1",{"c":"#aaaaaa"},"6,0\n\n\n1,1"],
[{"x":3.25,"w":1.5},"1,0",{"c":"#cccccc"},"1,1",{"x":12.81},"7,1",{"c":"#aaaaaa","w":1.5},"7,0"],
[{"x":3.15,"w":1.75},"2,0",{"c":"#cccccc"},"2,1",{"x":12.48},"8,1",{"c":"#777777","w":1.75},"8,0"],
[{"c":"#aaaaaa","w":1.25},"3,0\n\n\n0,1",{"c":"#cccccc"},"3,1\n\n\n0,1",{"x":0.75,"c":"#aaaaaa","w":2.25},"3,0\n\n\n0,0",{"c":"#cccccc"},"3,2",{"x":11.78},"9,2",{"c":"#777777"},"9,1\n\n\n2,0",{"c":"#aaaaaa","w":1.25},"9,0\n\n\n2,0",{"x":0.75,"w":2.25},"9,0\n\n\n2,1"],
[{"x":3.18},"4,0","4,1","4,2",{"x":11.96,"c":"#777777"},"10,2","10,1","10,0"],
[{"y":-0.95,"x":10.47},"5,2",{"x":1.34},"11,2"],
[{"x":10.14,"c":"#aaaaaa"},"5,0",{"x":2},"11,0"],
[{"y":0.25,"x":9.64,"c":"#cccccc"},"0,0\n\n\n\n\n\n\n\n\ne","0,1\n\n\n\n\n\n\n\n\ne",{"x":1},"1,0\n\n\n\n\n\n\n\n\ne","1,1\n\n\n\n\n\n\n\n\ne"],
[{"r":10,"rx":5.83},"0,2","0,3","0,4","0,5","5,5"],
[{"x":0.5},"1,2","1,3","1,4","1,5","5,4"],
[{"x":0.75},"2,2","2,3","2,4","2,5","5,3"],
[{"x":1.25},"3,3","3,4","3,5","5,1"],
[{"x":1.5,"c":"#aaaaaa","w":1.25},"4,3"],
[{"r":75,"rx":16.51,"ry":4.4,"y":0.25,"c":"#cccccc","w":1.5},"10,4"],
[{"w":1.5},"10,5"],
[{"r":-75,"rx":7.75,"y":0.25,"x":-1.5,"w":1.5},"4,4"],
[{"x":-1.5,"w":1.5},"4,5"],
[{"r":-10,"rx":12.64,"ry":0,"y":1,"x":0.75},"11,5","6,5","6,4","6,3","6,2"],
[{"x":0.25},"11,4","7,5","7,4","7,3","7,2"],
["11,3","8,5","8,4","8,3","8,2"],
[{"x":0.5},"11,1","9,5","9,4","9,3"],
[{"x":3,"c":"#aaaaaa","w":1.25},"10,3"]
]
}
}

View file

@ -0,0 +1,28 @@
// Copyright 2022 Kyle McCreery (@kylemccreery)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define VIAL_KEYBOARD_UID {0xF8, 0x72, 0x90, 0x0C, 0x29, 0xFB, 0x15, 0x45}
#define VIAL_UNLOCK_COMBO_ROWS { 0, 4 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 0 }
#if defined(__AVR_ATmega32U4__)
#undef SPLIT_MODS_ENABLE
#define NO_ACTION_ONESHOT
#undef LOCKING_SUPPORT_ENABLE
#undef LOCKING_RESYNC_ENABLE
#else
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_TWINKLE
#endif

View file

@ -0,0 +1,55 @@
// Copyright 2022 Kyle McCreery (@kylemccreery)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
#define FN1_SPC LT(1, KC_SPC)
#define FN2_SPC LT(2, KC_SPC)
// Defines names for use in layer keycodes and the keymap
enum layer_names {
_BASE,
_FN1,
_FN2,
_FN3
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
),
[_FN1] = LAYOUT(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
[_FN2] = LAYOUT(
_______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[_FN3] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};
#ifdef ENCODER_MAP_ENABLE
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
[_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_PGDN, KC_PGUP) },
[_FN1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_FN2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_FN3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
};
#endif

View file

@ -0,0 +1,11 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
VIAL_ENABLE = yes
ifeq ($(strip $(MCU)), atmega32u4)
QMK_SETTINGS = no
COMBO_ENABLE = no
KEY_OVERRIDE_ENABLE = no
TAP_DANCE_ENABLE = no
endif

View file

@ -0,0 +1,39 @@
{
"name": "MechWild Mokulua",
"vendorId": "0x6D77",
"productId": "0x170B",
"lighting": "qmk_rgblight",
"matrix": { "rows": 12, "cols": 6 },
"layouts": {
"labels": [
"Split Left Shift",
"Split Backspace",
"Full Right Shift",
"Huge Escape"
],
"keymap": [
[{"y":0.13,"c":"#777777","w":2},"0,0\n\n\n3,1",{"x":1.5},"0,0\n\n\n3,0",{"c":"#cccccc"},"0,1\n\n\n3,0",{"x":12.78,"c":"#aaaaaa","w":2},"6,5\n\n\n1,0",{"x":2,"c":"#cccccc"},"6,4\n\n\n1,1",{"c":"#aaaaaa"},"6,5\n\n\n1,1"],
[{"x":3.25,"w":1.5},"1,0",{"c":"#cccccc"},"1,1",{"x":12.31},"7,4",{"c":"#aaaaaa","w":1.5},"7,5"],
[{"x":3.15,"w":1.75},"2,0",{"c":"#cccccc"},"2,1",{"x":12.48},"8,4",{"c":"#777777","w":1.75},"8,5"],
[{"c":"#aaaaaa","w":1.25},"3,0\n\n\n0,1",{"c":"#cccccc"},"3,1\n\n\n0,1",{"x":0.75,"c":"#aaaaaa","w":2.25},"3,0\n\n\n0,0",{"c":"#cccccc"},"3,2",{"x":11.78},"9,3",{"c":"#777777"},"9,4\n\n\n2,0",{"c":"#aaaaaa","w":1.25},"9,5\n\n\n2,0",{"x":0.75,"w":2.25},"9,5\n\n\n2,1"],
[{"x":3.18},"4,0","4,1","4,2",{"x":11.96,"c":"#777777"},"10,3","10,4","10,5"],
[{"y":-0.95,"x":10.47},"5,2",{"x":1.34},"11,3"],
[{"x":10.14,"c":"#aaaaaa"},"5,0",{"x":2},"11,4"],
[{"y":0.25,"x":9.64,"c":"#cccccc"},"0,0\n\n\n\n\n\n\n\n\ne","0,1\n\n\n\n\n\n\n\n\ne",{"x":1},"1,0\n\n\n\n\n\n\n\n\ne","1,1\n\n\n\n\n\n\n\n\ne"],
[{"r":10,"rx":5.83},"0,2","0,3","0,4","0,5","5,5"],
[{"x":0.5},"1,2","1,3","1,4","1,5","5,4"],
[{"x":0.75},"2,2","2,3","2,4","2,5","5,3"],
[{"x":1.25},"3,3","3,4","3,5","5,1"],
[{"x":1.5,"c":"#aaaaaa","w":1.25},"4,3"],
[{"r":75,"rx":16.51,"ry":4.4,"y":0.25,"c":"#cccccc","w":1.5},"10,1"],
[{"w":1.5},"10,0"],
[{"r":-75,"rx":7.75,"y":0.25,"x":-1.5,"w":1.5},"4,4"],
[{"x":-1.5,"w":1.5},"4,5"],
[{"r":-10,"rx":12.64,"ry":0,"y":1,"x":0.25},"11,5","6,0","6,1","6,2","6,3"],
[{"x":0.75},"7,0","7,1","7,2","7,3"],
["11,1","8,0","8,1","8,2","8,3"],
[{"x":0.5},"11,2","9,0","9,1","9,2"],
[{"x":3,"c":"#aaaaaa","w":1.25},"10,2"]
]
}
}