From f6b40da7f854d461f30a3e525f4e36e51dac5db4 Mon Sep 17 00:00:00 2001 From: Pavlos Vinieratos Date: Mon, 13 Apr 2020 20:59:04 +0200 Subject: update pvinis keymap (#8746) * update a bunch of stuff Better rules, better config, added encoders, lights, audio. * some fmt * more fmt --- keyboards/ergodox_ez/keymaps/pvinis/keymap.c | 411 +++++++++++++------------- keyboards/keebio/iris/keymaps/pvinis/config.h | 36 ++- keyboards/keebio/iris/keymaps/pvinis/keymap.c | 267 +++++++++++------ keyboards/keebio/iris/keymaps/pvinis/rules.mk | 11 +- users/pvinis/config.h | 9 +- users/pvinis/pvinis.c | 127 ++++---- users/pvinis/pvinis.h | 228 +++++++------- users/pvinis/rules.mk | 34 ++- 8 files changed, 631 insertions(+), 492 deletions(-) diff --git a/keyboards/ergodox_ez/keymaps/pvinis/keymap.c b/keyboards/ergodox_ez/keymaps/pvinis/keymap.c index dc804d632c..c4b1b3b82c 100644 --- a/keyboards/ergodox_ez/keymaps/pvinis/keymap.c +++ b/keyboards/ergodox_ez/keymaps/pvinis/keymap.c @@ -1,38 +1,36 @@ // pvinis ergodox ez -// ,------------------------------------. ,------------------------------------. -// | | | | | | | | | | | | | | | | -// |------+----+----+----+----+---------| |----+----+----+----+----+----+------| -// | | | | | | | | | | | | | | | | -// |------+----+----+----x----x----| | | |----x----x----+----+----+------| -// | | | | | | |----| |----| | | | | | | -// |------+----+----+----x----x----| | | |----x----x----+----+----+------| -// | | | | | | | | | | | | | | | | -// `------+----+----+----+----+---------' `---------+----+----+----+----+------' -// | | | | | | | | | | | | -// `------------------------' `------------------------' -// ,---------. ,---------. -// | | | | | | -// ,----+----+----| |----+----+----. -// | | | | | | | | -// | | |----| |----| | | -// | | | | | | | | -// `--------------' `--------------' - +// ,------------------------------------. ┌────┬────┬────┬────┬────┬────┬──────┐ +// | | | | | | | | │ │ │ │ │ │ │ │ +// |------+----+----+----+----+---------| ├────┼────┼────┼────┼────┼────┼──────┤ +// | | | | | | | | │ │ │ │ │ │ │ │ +// |------+----+----+----x----x----| | │ ├────╆━━━━╅────┼────┼────┼──────┤ +// | | | | | | |----| ├────┤ ┃ ┃ │ │ │ │ +// |------+----+----+----x----x----| | │ ├────╄━━━━╃────┼────┼────┼──────┤ +// | | | | | | | | │ │ │ │ │ │ │ │ +// `------+----+----+----+----+---------' └────┴────┼────┼────┼────┼────┼────┬─┘ +// | | | | | | │ │ │ │ │ │ +// `------------------------' └────┴────┴────┴────┴────┘ +// ,---------. ┌────┬────┐ +// | | | │ │ │ +// ,----+----+----| ├────┼────┼────┐ +// | | | | │ │ │ │ +// | | |----| ├────┤ │ │ +// | | | | │ │ │ │ +// `--------------' └────┴────┴────┘ #include QMK_KEYBOARD_H #include "pvinis.h" #include "mousekey.h" - // layers enum { - MOUSE = 8, + MOUSE = 8, }; // extra keys enum { - NONE = 30, - TD_LAYR, // SYSCTL and MOUSE layer switch + NONE = 30, + TD_LAYR, // SYSCTL and MOUSE layer switch }; // application selection @@ -41,158 +39,170 @@ enum { #define AP_XCOD ALLM(KC_X) #define AP_MSGR ALLM(KC_M) - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // ,------------------------------------. ,------------------------------------. - // |4xFLSH| | | | | |Opt | | | | | | | | | - // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| - // | Tab | | | | | | | | | | | | | | | - // |------+----+----+----x----x----| | | |----x----x----+----+----+------| - // |EscCtl| | | | | |----| |----| | | | | | Ent | - // |------+----+----+----x----x----| | | |----x----x----+----+----+------| - // |LShift| | | | | | | | | | | | | |RShift| - // `------+----+----+----+----+---------' `---------+----+----+----+----+------' - // | | | | |Cmd | | | | | | | - // `------------------------' `------------------------' - // ,---------. ,---------. - // |QWER| | | | | - // ,----+----+----| |----+----+----. - // | Ba | L | | | | | | - // | ck |Shi |----| |----| |Spc | - // | spc| ft | | | | | | - // `--------------' `--------------' - [LR_BASE] = LAYOUT_ergodox_pretty_wrapper( - TD_3FLS, _______, _______, _______, _______, _______, KC_LALT, _______, _______, _______, _______, _______, _______, _______, - KC_TAB , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - PV_ESCC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT , - KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, - _______, _______, _______, KC_LGUI, SYMBOL , SYSCTL , KC_RALT, _______, _______, _______, - QWERTY , CARPALX, _______, _______, - _______, _______, - KC_BSPC, _______, _______, _______, _______, KC_SPC - ), + // ,------------------------------------. ,------------------------------------. + // |4xFLSH| | | | | |Opt | | | | | | | | | + // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| + // | Tab | | | | | | | | | | | | | | | + // |------+----+----+----x----x----| | | |----x----x----+----+----+------| + // |EscCtl| | | | | |----| |----| | | | | | Ent | + // |------+----+----+----x----x----| | | |----x----x----+----+----+------| + // |LShift| | | | | | | | | | | | | |RShift| + // `------+----+----+----+----+---------' `---------+----+----+----+----+------' + // | | | |Cmd |LOWR| |RASE|RAlt| | | | + // `------------------------' `------------------------' + // ,---------. ,---------. + // |QWER| | | | | + // ,----+----+----| |----+----+----. + // | Ba | L | | | | | | + // | ck |Shi |----| |----| |Spc | + // | spc| ft | | | | | | + // `--------------' `--------------' + [LR_BASE] = LAYOUT_ergodox_pretty_wrapper( + // clang-format off + TD_3FLS, _______, _______, _______, _______, _______, KC_LALT, _______, _______, _______, _______, _______, _______, _______, + KC_TAB , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + PV_ESCC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT , + KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, + _______, _______, _______, KC_LGUI, SYMBOL , SYSCTL , KC_RALT, _______, _______, _______, + QWERTY , CARPALX, _______, _______, + _______, _______, + KC_BSPC, _______, _______, _______, _______, KC_SPC + // clang-format on + ), - // ,------------------------------------. ,------------------------------------. - // | | NUMBERS_L | | | - | NUMBERS_R | = | - // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| - // | | | [ | | ] | | | - // |------+ | | | | +------| - // | | QWERTY_L |----| |----| QWERTY_R | | - // |------+ | ( | | ) | +------| - // | | | | | | | | - // `------+----+----+----+----+---------' `---------+----+----+----+----+------' - // | | ` | | | | | | | | ' | | - // `------------------------' `------------------------' - // ,---------. ,---------. - // | | | | | | - // ,----+----+----| |----+----+----. - // | | | | | | | | - // | | |----| |----| | | - // | | | | | | | | - // `--------------' `--------------' - // See `users/pvinis/pvinis.h` - [LR_QWERTY] = LAYOUT_ergodox_pretty_wrapper( - _______, ________________NUMBERS_L__________________, _______, KC_MINS, ________________NUMBERS_R__________________, KC_EQL , - _______, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R1_________________, _______, - _______, _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, _______, - _______, _________________QWERTY_L3_________________, KC_LPRN, KC_RPRN, _________________QWERTY_R3_________________, _______, - _______, KC_GRV, _______, _______, _______, _______, _______, _______, KC_QUOT , _______, - _______, _______, _______, _______, - _______, _______, - _______, _______, _______, _______, _______, _______ + // ,------------------------------------. ,------------------------------------. + // | | NUMBERS_L | | | - | NUMBERS_R | = | + // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| + // | | | [ | | ] | | | + // |------+ | | | | +------| + // | | QWERTY_L |----| |----| QWERTY_R | | + // |------+ | ( | | ) | +------| + // | | | | | | | | + // `------+----+----+----+----+---------' `---------+----+----+----+----+------' + // | | ` | | | | | | | | ' | | + // `------------------------' `------------------------' + // ,---------. ,---------. + // | | | | | | + // ,----+----+----| |----+----+----. + // | | | | | | | | + // | | |----| |----| | | + // | | | | | | | | + // `--------------' `--------------' + // See `users/pvinis/pvinis.h` + [LR_QWERTY] = LAYOUT_ergodox_pretty_wrapper( + // clang-format off + _______, ________________NUMBERS_L__________________, _______, KC_MINS, ________________NUMBERS_R__________________, KC_EQL , + _______, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R1_________________, _______, + _______, _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, _______, + _______, _________________QWERTY_L3_________________, KC_LPRN, KC_RPRN, _________________QWERTY_R3_________________, _______, + _______, KC_GRV, _______, _______, _______, _______, _______, _______, KC_QUOT , _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + // clang-format off ), - // ,------------------------------------. ,------------------------------------. - // | | NUMBERS_L | | | | NUMBERS_R | | - // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| - // | | | | | | | | - // |------+ | | | | +------| - // | | CARPALX_L |----| |----| CARPALX_R | | - // |------+ | | | | +------| - // | | | | | | | | - // `------+----+----+----+----+---------' `---------+----+----+----+----+------' - // | | | | | | | | | | | | - // `------------------------' `------------------------' - // ,---------. ,---------. - // | | | | | | - // ,----+----+----| |----+----+----. - // | | | | | | | | - // | | |----| |----| | | - // | | | | | | | | - // `--------------' `--------------' - // See `users/pvinis/pvinis.h` + // ,------------------------------------. ,------------------------------------. + // | | NUMBERS_L | | | | NUMBERS_R | | + // |------+----+----+----+----+---------| |----+----+----+----+----+----+------| + // | | | | | | | | + // |------+ | | | | +------| + // | | CARPALX_L |----| |----| CARPALX_R | | + // |------+ | | | | +------| + // | | | | | | | | + // `------+----+----+----+----+---------' `---------+----+----+----+----+------' + // | | | | | | | | | | | | + // `------------------------' `------------------------' + // ,---------. ,---------. + // | | | | | | + // ,----+----+----| |----+----+----. + // | | | | | | | | + // | | |----| |----| | | + // | | | | | | | | + // `--------------' `--------------' + // See `users/pvinis/pvinis.h` [LR_CARPALX] = LAYOUT_ergodox_pretty_wrapper( - _______, ________________NUMBERS_L__________________, _______, _______, ________________NUMBERS_R__________________, _______, - _______, ________________CARPALX_L1_________________, _______, _______, ________________CARPALX_R1_________________, _______, - _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______, - _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, - _______, _______, _______, _______, _______, _______ - ), + // clang-format off + _______, ________________NUMBERS_L__________________, _______, _______, ________________NUMBERS_R__________________, _______, + _______, ________________CARPALX_L1_________________, _______, _______, ________________CARPALX_R1_________________, _______, + _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______, + _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - // See `users/pvinis/pvinis.h` - [LR_SYMBOL] = LAYOUT_ergodox_pretty_wrapper( - _______, ______________________F_L__________________, KC_F11 , KC_F12 , ______________________F_R__________________, _______, - _______, _________________SYMBOL_L1_________________, _______, _______, _________________SYMBOL_R1_________________, _______, - _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______, - _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, - _______, _______, _______, _______, _______, _______ + // See `users/pvinis/pvinis.h` + [LR_SYMBOL] = LAYOUT_ergodox_pretty_wrapper( + // clang-format off + _______, ______________________F_L__________________, KC_F11 , KC_F12 , ______________________F_R__________________, _______, + _______, _________________SYMBOL_L1_________________, _______, _______, _________________SYMBOL_R1_________________, _______, + _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______, + _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + // clang-format off ), - // See `users/pvinis/pvinis.h` + // See `users/pvinis/pvinis.h` [LR_SYSCTL] = LAYOUT_ergodox_pretty_wrapper( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R1_________________, _______, - _______, _______, _______, _______, _______, _______, _________________SYSCTL_R2_________________, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R3_________________, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // clang-format off + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________SYSCTL_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, - _______, _______, _______, _______, _______, _______ - ), + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - // See `users/pvinis/pvinis.h` - [LR_KBCTL] = LAYOUT_ergodox_pretty_wrapper( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R1_________________, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R2_________________, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + // See `users/pvinis/pvinis.h` + [LR_KBCTL] = LAYOUT_ergodox_pretty_wrapper( + // clang-format off + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R1_________________, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R2_________________, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX - ), + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + // clang-format on + ), -/* MOUSE - * a keymap to control my system. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ^ | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | | MsUp | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| |MsLeft| MsDn |MsRght| | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | |MidClk| - * ,------|------|------| |------+------+------. - * | | | | | |Left |Right | - * | | |------| |------| Click| Click| - * | | | ^ | | | | | - * `--------------------' `--------------------' - */ - [MOUSE] = LAYOUT_ergodox_pretty( + /* MOUSE + * a keymap to control my system. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ^ | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | MsUp | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |MsLeft| MsDn |MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | |MidClk| + * ,------|------|------| |------+------+------. + * | | | | | |Left |Right | + * | | |------| |------| Click| Click| + * | | | ^ | | | | | + * `--------------------' `--------------------' + */ + [MOUSE] = LAYOUT_ergodox_pretty( + // clang-format off KC_TRNS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO @@ -212,53 +222,54 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO - ), + // clang-format on + ), }; - // keyboard initialization -void keyboard_post_init_user_local(void) { - ergodox_led_all_on(); - for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { - ergodox_led_all_set(i); - wait_ms(5); - } - wait_ms(1000); - for (int i = LED_BRIGHTNESS_LO; i > 0; i--) { - ergodox_led_all_set(i); - wait_ms(10); - } - ergodox_led_all_off(); +void keyboard_post_init_user_keymap(void) { + ergodox_led_all_on(); + for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { + ergodox_led_all_set(i); + wait_ms(5); + } + wait_ms(1000); + for (int i = LED_BRIGHTNESS_LO; i > 0; i--) { + ergodox_led_all_set(i); + wait_ms(10); + } + ergodox_led_all_off(); - // restore default brightness for future use - ergodox_led_all_set(LED_BRIGHTNESS_HI); + // restore default brightness for future use + ergodox_led_all_set(LED_BRIGHTNESS_HI); } // light up leds based on the layer -uint32_t layer_state_set_user_local(uint32_t state) { - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - switch (biton32(state)) { - case LR_SYSCTL: - ergodox_right_led_3_on(); // blue - break; - case LR_KBCTL: - ergodox_right_led_1_on(); // red - break; - case LR_SYMBOL: - ergodox_right_led_2_on(); // green - break; - default: break; - } - return state; +uint32_t layer_state_set_user_keymap(uint32_t state) { + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (biton32(state)) { + case LR_SYSCTL: + ergodox_right_led_3_on(); // blue + break; + case LR_KBCTL: + ergodox_right_led_1_on(); // red + break; + case LR_SYMBOL: + ergodox_right_led_2_on(); // green + break; + default: + break; + } + return state; } // extra keys // const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { - // switch (id) { - // } - // return MACRO_NONE; +// switch (id) { +// } +// return MACRO_NONE; // } // tap dances @@ -325,6 +336,6 @@ uint32_t layer_state_set_user_local(uint32_t state) { // } // qk_tap_dance_action_t tap_dance_actions[] = { - // [TD_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED( flash_each_tap, flash_dance_finished, flash_dance_reset ), - // [TD_LAYR] = ACTION_TAP_DANCE_FN_ADVANCED( NULL, layers_dance_finished, NULL ), +// [TD_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED( flash_each_tap, flash_dance_finished, flash_dance_reset ), +// [TD_LAYR] = ACTION_TAP_DANCE_FN_ADVANCED( NULL, layers_dance_finished, NULL ), // }; diff --git a/keyboards/keebio/iris/keymaps/pvinis/config.h b/keyboards/keebio/iris/keymaps/pvinis/config.h index b2fb43be91..9574f2a837 100644 --- a/keyboards/keebio/iris/keymaps/pvinis/config.h +++ b/keyboards/keebio/iris/keymaps/pvinis/config.h @@ -1,24 +1,36 @@ #pragma once - #ifdef PRODUCT - #undef PRODUCT - #define PRODUCT Iris Keyboard - pvinis +# undef PRODUCT +# define PRODUCT Iris Keyboard - pvinis #endif - -// Use I2C or Serial, not both +// Use I2C or Serial, not both. #define USE_SERIAL // #define USE_I2C - -// Select hand configuration -#define MASTER_LEFT -// #define MASTER_RIGHT +// Select hand configuration. +// #define MASTER_LEFT +#define MASTER_RIGHT // #define EE_HANDS - -// choose pin to use for audio. c6 is the one iris uses. +// Choose pin to use for audio. C6 is the one iris uses. #ifdef AUDIO_ENABLE - #define C6_AUDIO +# define C6_AUDIO +# define STARTUP_SONG SONG(NO_SOUND) // No startup song. +#endif + +#ifdef RGBLIGHT_ENABLE +# undef RGBLED_NUM +# define RGBLED_NUM 16 +#endif + +#ifdef ENCODER_ENABLE +# define ENCODERS_PAD_A \ + { F5 } // I connected the encoder to F4 and F5. +# define ENCODERS_PAD_B \ + { F4 } +// #define ENCODERS_PAD_A_RIGHT { B5 } +// #define ENCODERS_PAD_B_RIGHT { C6 } +# define ENCODER_RESOLUTION 2 #endif diff --git a/keyboards/keebio/iris/keymaps/pvinis/keymap.c b/keyboards/keebio/iris/keymaps/pvinis/keymap.c index 2f6d5a6b47..5c61c1321e 100644 --- a/keyboards/keebio/iris/keymaps/pvinis/keymap.c +++ b/keyboards/keebio/iris/keymaps/pvinis/keymap.c @@ -1,16 +1,16 @@ // pvinis iris -// ,-----------------------------. ,-----------------------------. -// | | | | | | | | | | | | | | -// |----+----+----+----+----+----| |----+----+----+----+----+----| -// | | | | | | | | | | | | | | -// |----+----+----+----x----x----| |----x----x----+----+----+----| -// | | | | | | | | | | | | | | -// |----+----+----+----x----x----+----. ,----|----x----x----+----+----+----| -// | | | | | | | | | | | | | | | | -// `-------------------+----+----+----/ \----+----+----+-------------------' -// | | | | | | | | -// `----+---------' `--------------' - +// make keebio/iris/rev2:pvinis:avrdude +// ,-----------------------------. ┌────┬────┬────┬────┬────┬────┐ +// | | | | | | | │ │ │ │ │ │ │ +// |----+----+----+----+----+----| ├────┼────┼────┼────┼────┼────┤ +// | | | | | | | │ │ │ │ │ │ │ +// |----+----+----+----x----x----| ├────╆━━━━╅────┼────┼────┼────┤ +// | | | | | | | │ ┃ ┃ │ │ │ │ +// |----+----+----+----x----x----+----. ┌────┼────╄━━━━╃────┼────┼────┼────┤ +// | | | | | | | | │ │ │ │ │ │ │ │ +// `-------------------+----+----+----/ └┬───┴┬───┴┬───┴┬───┴────┴────┴────┘ +// | | | | │ │ │ │ +// `----+---------' └────┴────┴────┘ #include QMK_KEYBOARD_H #include "pvinis.h" @@ -19,102 +19,179 @@ //#include "eeconfig.h" #ifdef AUDIO_ENABLE - #include "audio.h" +# include "audio.h" #endif #ifdef AUDIO_ENABLE - // #define STARTUP_SONG SONG(SONIC_RING) +// #define STARTUP_SONG SONG(SONIC_RING) #endif #ifdef AUDIO_ENABLE - float tone_sonic[][2] = SONG(IN_LIKE_FLINT); - float tone_1[][2] = SONG(QWERTY_SOUND); - float tone_2[][2] = SONG(OLD_SPICE); - float tone_3[][2] = SONG(OVERWATCH_THEME); - float tone_4[][2] = SONG(QWERTY_SOUND); +// float n04[][2] = SONG(CLOSE_ENCOUNTERS_5_NOTE); +// float n10[][2] = SONG(STARTUP_SOUND); +// float n11[][2] = SONG(GOODBYE_SOUND); +// float n12[][2] = SONG(PLANCK_SOUND); +// float n19[][2] = SONG(MUSIC_ON_SOUND); +// float n20[][2] = SONG(AUDIO_ON_SOUND); +// float n29[][2] = SONG(CAPS_LOCK_ON_SOUND); +// float n30[][2] = SONG(CAPS_LOCK_OFF_SOUND); +// float n31[][2] = SONG(SCROLL_LOCK_ON_SOUND); +// float n32[][2] = SONG(SCROLL_LOCK_OFF_SOUND); +// float n33[][2] = SONG(NUM_LOCK_ON_SOUND); +// float n34[][2] = SONG(NUM_LOCK_OFF_SOUND); +// float n40[][2] = SONG(ONE_UP_SOUND); +// float n49[][2] = SONG(E1M1_DOOM); +// float n53[][2] = SONG(OLD_SPICE); +// float n56[][2] = SONG(RICK_ROLL); +// float n57[][2] = SONG(FF_PRELUDE); +// RGB_MODE_KNIGHT +// float n78[][2] = SONG(KATAMARI_ROLLING_STAR); #endif - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // ,-----------------------------. ,-----------------------------. - // | | | | | |QWER| | | | | | | | - // |----+----+----+----+----+----| |----+----+----+----+----+----| - // |Tab | | | | |CARP| | | | | | |Del | - // |----+----+----+----x----x----| |----x----x----+----+----+----| - // |EscC| | | | | | | | | | | |Ent | - // |----+----+----+----x----x----+----. ,----|----x----x----+----+----+----| - // |LSft| | | | | |Home| |End | | | | | |Rsft| - // `-------------------+----+----+----/ \----+----+----+-------------------' - // |Cmd |LOWR|Bspc| |Spc |RASE|RAlt| - // `----+---------' `--------------' - [LR_BASE] = LAYOUT_wrapper( - _______, _______, _______, _______, _______, QWERTY , _______, _______, _______, _______, _______, _______, - KC_TAB , _______, _______, _______, _______, CARPALX, _______, _______, _______, _______, _______, KC_DEL , - PV_ESCC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT , - KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, - KC_LGUI, SYMBOL , KC_BSPC, KC_SPC , SYSCTL , KC_RALT - ), + // ,-----------------------------. ,-----------------------------. + // | | | | |GAME|QWER| | | | | | | | + // |----+----+----+----+----+----| |----+----+----+----+----+----| + // |Tab | | | | |CRPL| | | | | | |Del | + // |----+----+----+----x----x----| |----x----x----+----+----+----| + // |EscC| | | | | | | | | | | |Ent | + // |----+----+----+----x----x----+----. ,----|----x----x----+----+----+----| + // |LSft| | | | | |Home| |End | | | | | |Rsft| + // `-------------------+----+----+----/ \----+----+----+-------------------' + // |Cmd |LOWR|Bspc| |Spc |RASE|RAlt| + // `----+---------' `--------------' + [LR_BASE] = LAYOUT_wrapper( + // clang-format off + KC_MUTE, _______, _______, _______, GAME1 , QWERTY , KC_1 , _______, _______, _______, _______, _______, + KC_TAB , ___________________________________________, ___________________________________________, KC_DEL , + PV_ESCC, ___________________________________________, ___________________________________________, KC_ENT , + KC_LSFT, ___________________________________________, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, + KC_LGUI, SYMBOL , KC_BSPC, KC_SPC , SYSCTL , KC_RALT + // clang-format on + ), + + // ,-----------------------------. ,-----------------------------. + // | | NUMBERS_L | | NUMBERS_R | | + // |----+----+----+----+----+----| |----+----+----+----+----+----| + // | | | | | | + // |----+ | | +----| + // | | QWERTY_L | | QWERTY_R | | + // |----+ +----. ,----| +----| + // | | | | | | | | + // `-------------------+----+----+----/ \----+----+----+-------------------' + // | | | | | | | | + // `----+---------' `--------------' + [LR_QWERTY] = LAYOUT_wrapper( + // clang-format off + _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______, + _______, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _______, + _______, _____________MOD_QWERTY_L2_________________, _________________QWERTY_R2_________________, _______, + _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - // ,-----------------------------. ,-----------------------------. - // | | NUMBERS_L | | NUMBERS_R | | - // |----+----+----+----+----+----| |----+----+----+----+----+----| - // | | | | | | - // |----+ | | +----| - // | | QWERTY_L | | QWERTY_R | | - // |----+ +----. ,----| +----| - // | | | | | | | | - // `-------------------+----+----+----/ \----+----+----+-------------------' - // | | | | | | | | - // `----+---------' `--------------' - [LR_QWERTY] = LAYOUT_wrapper( - _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______, - _______, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _______, - _______, _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, _______, - _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______, - _______, _______, _______, _______, _______, _______ - ), + // ,-----------------------------. ,-----------------------------. + // | | NUMBERS_L | | NUMBERS_R | | + // |----+----+----+----+----+----| |----+----+----+----+----+----| + // | | | | | | + // |----+ | | +----| + // | | CARPALX_L | | CARPALX_R | | + // |----+ +----. ,----| +----| + // | | | | | | | | + // `-------------------+----+----+----/ \----+----+----+-------------------' + // | | | | | | | | + // `----+---------' `--------------' + [LR_CARPALX] = LAYOUT_wrapper( + // clang-format off + _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______, + _______, ________________CARPALX_L1_________________, ________________CARPALX_R1_________________, _______, + _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______, + _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - // ,-----------------------------. ,-----------------------------. - // | | NUMBERS_L | | NUMBERS_R | | - // |----+----+----+----+----+----| |----+----+----+----+----+----| - // | | | | | | - // |----+ | | +----| - // | | CARPALX_L | | CARPALX_R | | - // |----+ +----. ,----| +----| - // | | | | | | | | - // `-------------------+----+----+----/ \----+----+----+-------------------' - // | | | | | | | | - // `----+---------' `--------------' - [LR_CARPALX] = LAYOUT_wrapper( - _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______, - _______, ________________CARPALX_L1_________________, ________________CARPALX_R1_________________, _______, - _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______, - _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______, - _______, _______, _______, _______, _______, _______ - ), + [LR_SYMBOL] = LAYOUT_wrapper( + // clang-format off + KC_F12 , ______________________F_L__________________, ______________________F_R__________________, KC_F11 , + _______, _________________SYMBOL_L1_________________, _________________SYMBOL_R1_________________, _______, + _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______, + _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - [LR_SYMBOL] = LAYOUT_wrapper( - KC_F12 , ______________________F_L__________________, ______________________F_R__________________, KC_F11 , - _______, _________________SYMBOL_L1_________________, _________________SYMBOL_R1_________________, _______, - _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______, - _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______, - _______, _______, _______, _______, _______, _______ - ), + [LR_SYSCTL] = LAYOUT_wrapper( + // clang-format off + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _________________SYSCTL_L1_________________, _________________SYSCTL_R1_________________, _______, + _______, _________________SYSCTL_L2_________________, _________________SYSCTL_R2_________________, _______, + _______, _________________SYSCTL_L3_________________, _______, _______, _________________SYSCTL_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + // clang-format on + ), - [LR_SYSCTL] = LAYOUT_wrapper( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _________________SYSCTL_R1_________________, _______, - _______, _______, _______, _______, _______, _______, _________________SYSCTL_R2_________________, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R3_________________, _______, - _______, _______, _______, _______, _______, _______ - ), + [LR_KBCTL] = LAYOUT_wrapper( + // clang-format off + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, __________________KBCTL_L1_________________, __________________KBCTL_R1_________________, XXXXXXX, + XXXXXXX, __________________KBCTL_L2_________________, __________________KBCTL_R2_________________, XXXXXXX, + BASE , __________________KBCTL_L3_________________, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX, + XXXXXXX, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX + // clang-format on + ), - [LR_KBCTL] = LAYOUT_wrapper( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, __________________KBCTL_L1_________________, __________________KBCTL_R1_________________, XXXXXXX, - XXXXXXX, __________________KBCTL_L2_________________, __________________KBCTL_R2_________________, XXXXXXX, - BASE , __________________KBCTL_L3_________________, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX, - XXXXXXX, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX - ) + // ,-----------------------------. ,-----------------------------. + // | | NUMBERS_L | | NUMBERS_R | | + // |----+----+----+----+----+----| |----+----+----+----+----+----| + // | | | | | | + // |----+ | | +----| + // |ESC | QWERTY_L | | QWERTY_R | | + // |----+ +----. ,----| +----| + // | | | | | | | | + // `-------------------+----+----+----/ \----+----+----+-------------------' + // | |SPC | | | | | | + // `----+---------' `--------------' + [LR_GAME1] = LAYOUT_wrapper( + // clang-format off + _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, KC_BSPC, + _______, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, QWERTY , + KC_ESC , _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _______, + _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______, + _______, _______, KC_SPC , _______, _______, _______ + // clang-format on + ), + + [LR_GAME2] = LAYOUT_wrapper( + // clang-format off + _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, KC_BSPC, + _______, _________________QWERTY_L1_________________, KC_Y , KC_U , KC_UP , KC_O , KC_P , QWERTY , + KC_ESC , _________________QWERTY_L2_________________, KC_H , KC_LEFT, KC_DOWN, KC_RGHT, KC_SCLN, _______, + _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______, + _______, _______, KC_SPC , _______, _______, _______ + // clang-format on + ), }; + +#ifdef ENCODER_ENABLE +void encoder_update_user(uint8_t index, bool clockwise) { + // if (index == 0) { /* First encoder */ + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + // } +} +#endif + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { +#ifdef AUDIO_ENABLE +// case PV_S04: if (record->event.pressed) PLAY_SONG(n04); return false; break; +#endif + } + return true; // Process everything else normally +} diff --git a/keyboards/keebio/iris/keymaps/pvinis/rules.mk b/keyboards/keebio/iris/keymaps/pvinis/rules.mk index 899312894b..deeb312036 100644 --- a/keyboards/keebio/iris/keymaps/pvinis/rules.mk +++ b/keyboards/keebio/iris/keymaps/pvinis/rules.mk @@ -1,2 +1,9 @@ -AUDIO_ENABLE = no # off for now -RGBLIGHT_ENABLE = no # off for now +TAP_DANCE_ENABLE = yes +AUDIO_ENABLE = no # piezo speaker sounds +RGBLIGHT_ENABLE = yes # rgb leds underlight +ENCODER_ENABLE = yes # rotary knob + +# Some extra stuff to make firmware smaller. +LINK_TIME_OPTIMIZATION_ENABLE = yes +CONSOLE_ENABLE = no +COMMAND_ENABLE = no diff --git a/users/pvinis/config.h b/users/pvinis/config.h index 8e2efb40a4..14ec0dc8f1 100644 --- a/users/pvinis/config.h +++ b/users/pvinis/config.h @@ -1,10 +1,9 @@ #pragma once -#ifdef AUDIO_ENABLE -// #define STARTUP_SONG SONG(SONIC_RING) -// #define DAC_SAMPLE_MAX 65535U // maybe this works for volume? -#endif - // allow rolling when keys have hold functionality #define IGNORE_MOD_TAP_INTERRUPT // #define TAPPING_TERM 150 + +#if defined(MOUSE_KEYS) +# define MOUSEKEY_WHEEL_TIME_TO_MAX 1 +#endif diff --git a/users/pvinis/pvinis.c b/users/pvinis/pvinis.c index e97edcb98c..31c3023e83 100644 --- a/users/pvinis/pvinis.c +++ b/users/pvinis/pvinis.c @@ -2,88 +2,97 @@ #include "version.h" #ifdef AUDIO_ENABLE -#include "audio.h" -#endif // AUDIO_ENABLE - - -#ifdef AUDIO_ENABLE -// float tone_katamari_rolling_star[][2] = SONG(KATAMARI_ROLLING_STAR); -#endif // AUDIO_ENABLE +# include "audio.h" +float song_sonic_ring[][2] = SONG(SONIC_RING); +float song_coin_sound[][2] = SONG(COIN_SOUND); +float song_test[][2] = SONG(QWERTY_SOUND); +#endif // SYMBOL + SYSCTL = KBCTL uint32_t layer_state_set_user(uint32_t state) { - uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL); - intermediate_state = layer_state_set_user_local(intermediate_state); - return intermediate_state; + uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL); + intermediate_state = layer_state_set_user_keymap(intermediate_state); + return intermediate_state; } - // functions for the individual keymaps to implement if they need something extra -__attribute__ ((weak)) -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - return true; -} +__attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; } - -// handle my own keycodes +// Handle my own keycodes. bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - - case PV_VRSN: - if (record->event.pressed) { - SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - return false; - - case PV_MAKE: - if (!record->event.pressed) { - SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP + switch (keycode) { + case PV_VRSN: + if (record->event.pressed) { + SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + + case PV_MAKE: + // make ergodox_ez:pvinis:teensy + if (!record->event.pressed) { + SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU)) - ":dfu" + ":dfu" #elif defined(BOOTLOADER_HALFKAY) - ":teensy" + ":teensy" #elif defined(BOOTLOADER_CATERINA) - ":avrdude" + ":avrdude" #endif - SS_TAP(X_ENTER) - ); - } - return false; + SS_TAP(X_ENTER)); + } + return false; - case PV_FLSH: - reset_keyboard(); - return false; + case PV_FLSH: + reset_keyboard(); + return false; - case PV_KTMR: - if (record->event.pressed) { + case PV_SSNC: + if (record->event.pressed) { #ifdef AUDIO_ENABLE - // PLAY_SONG(tone_katamari_rolling_star); + PLAY_SONG(song_sonic_ring); #endif - } - return false; - } - return process_record_keymap(keycode, record); -} + } + return false; + case PV_SCIN: + if (record->event.pressed) { +#ifdef AUDIO_ENABLE + PLAY_SONG(song_coin_sound); +#endif + } + return false; + + case PV_TEST: + if (record->event.pressed) { +#ifdef AUDIO_ENABLE + PLAY_SONG(song_test); +#endif + } + return false; + } + return process_record_keymap(keycode, record); +} #ifdef TAP_DANCE_ENABLE -qk_tap_dance_action_t tap_dance_actions[] = { -}; -#endif // TAP_DANCE_ENABLE +qk_tap_dance_action_t tap_dance_actions[] = {}; +#endif +void keyboard_post_init_rgb_light(void) { + rgblight_sethsv(HSV_GOLD); + rgblight_mode(RGBLIGHT_MODE_BREATHING); + // rgblight_mode(RGBLIGHT_MODE_KNIGHT+1); +} -// init stuff +// Init stuff. void keyboard_post_init_user(void) { - keyboard_post_init_user_local(); +#if defined(RGBLIGHT_ENABLE) + keyboard_post_init_rgb_light(); +#endif + keyboard_post_init_user_keymap(); } +// Default functions. +__attribute__((weak)) void keyboard_post_init_user_keymap(void) {} -// default functions -__attribute__ ((weak)) -void keyboard_post_init_user_local(void) {} - -__attribute__ ((weak)) -uint32_t layer_state_set_user_local(uint32_t state) { - return state; -} +__attribute__((weak)) uint32_t layer_state_set_user_keymap(uint32_t state) { return state; } diff --git a/users/pvinis/pvinis.h b/users/pvinis/pvinis.h index 0c75c6a661..c50033a440 100644 --- a/users/pvinis/pvinis.h +++ b/users/pvinis/pvinis.h @@ -2,84 +2,103 @@ #include "quantum.h" - -// my own keycodes +// My own keycodes. enum userspace_custom_keycodes { - PV_ = SAFE_RANGE, + PV_ = SAFE_RANGE, + + PV_VRSN, // Print firmware version. + PV_MAKE, // Print the make command of the keyboard. + PV_FLSH, // Reset keyboard. - PV_VRSN, // prints firmware version - PV_MAKE, // prints the make command of the keyboard - PV_FLSH, // resets keyboard - PV_KTMR, // play katamari music + PV_SSNC, // Play Sonic Ring. + PV_SCIN, // Play Coin Sound. - PV_SAFE_RANGE, // used for extra keycodes in the individual keymaps + PV_TEST, // For quick testing purposes. + + PV_SAFE_RANGE, // Used for extra keycodes in individual keymaps. }; enum tap_dance_indexes { - // tap dance - TD_FLSH, // flash keyboard (as if the physical flash key was pressed) + // tap dance + TD_FLSH, // flash keyboard (as if the physical flash key was pressed) }; -#define ALLM(kc) LCAG(kc) // easier name for left ctrl-alt-gui -#define PV_ESCC CTL_T(KC_ESC) // esc on tap, ctrl on hold -#define PV_LOCK LCTL(LSFT(KC_PWR)) // lock computer -#define TD_3FLS TD(TD_FLSH) // tap dance 3 times for flash - +#define ALLM(kc) LCAG(kc) // Easier name for left ctrl-alt-gui. +#define PV_ESCC CTL_T(KC_ESC) // esc on tap, ctrl on hold. +#define PV_LOCK LCTL(LSFT(KC_PWR)) // Lock computer. +#define TD_3FLS TD(TD_FLSH) // Tap dance 3 times for flash. -// layers +// Layers. enum { - LR_BASE = 0, // used for basic keys like the surrounding ctrl, cmd, etc + LR_BASE = 0, // used for basic keys like the surrounding ctrl, cmd, etc - LR_QWERTY, - LR_CARPALX, + LR_QWERTY, + LR_CARPALX, + LR_GAME1, // game layout (space on the left thumb, no modifiers, etc) + LR_GAME2, // game layout (space on the left thumb, no modifiers, etc, arrows) - LR_SYMBOL, // symbol input (!, @, #, etc) - LR_SYSCTL, // system control (music, volume, keyboard flash, etc) - LR_KBCTL, // keyboard control (version, make, flash, etc) -}; + LR_SYMBOL, // symbol input (!, @, #, etc) + LR_SYSCTL, // system control (music, volume, keyboard flash, etc) + LR_KBCTL, // keyboard control (version, make, flash, etc) +}; -// layer switchers -#define BASE TO(LR_BASE) -#define QWERTY TO(LR_QWERTY) +// Layer switchers. +#define BASE TO(LR_BASE) +#define QWERTY TO(LR_QWERTY) #define CARPALX TO(LR_CARPALX) - -#define SYMBOL MO(LR_SYMBOL) -#define SYSCTL MO(LR_SYSCTL) -#define KBCTL MO(LR_KBCTL) - - -// layout parts for easy reuse between keyboard keymaps - -// ,-----+-----+-----+-----+-----, ,-----+-----+-----+-----+-----, -// | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | -// ,-----+-----+-----+-----+-----, ,-----+-----+-----+-----+-----, -#define ________________NUMBERS_L__________