| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- /* Copyright 2019 Branden Byers (@brandenbyers)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
- #include QMK_KEYBOARD_H
- enum layers {
- _BASE, // base layer
- _MUSIC, // music mode
- _MIDI, // midi mode
- _MOUSE, // mouse keys
- _ADMIN // admin duties
- };
- const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // ┌─────────┬─────────┬─────────┬─────────┬─────────┐
- // │ │ │ │ │ │
- // │ 7 │ 8 │ 9 │ / │ ADMIN │
- // ROTARY │ │ │ │ │ │
- // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE DOWN│ │ │ │ │ │
- // │ 4 │ 5 │ 6 │ * │ MOUSE │
- // ROTARY │ │ │ │ │ │
- // LEFT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE UP │ │ │ │ │ │
- // │ 1 │ 2 │ 3 │ - │ MIDI │
- // │ │ │ │ │ │
- // ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
- // │ TOGGLE │ │ │ │ │ │
- // │ MUSIC │ 0 │ . │ = │ + │ MUSIC │
- // │ │ │ │ │ │ │
- // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
- [_BASE] = LAYOUT(
- KC_P7, KC_P8 , KC_P9 , KC_PSLS, MO(_ADMIN),
- KC_P4, KC_P5 , KC_P6 , KC_PAST, TG(_MOUSE),
- KC_P1, KC_P2 , KC_P3 , KC_PMNS, TG(_MIDI),
- MU_TOGG,KC_P0, KC_PDOT, KC_PEQL, KC_PPLS, MO(_MUSIC)
- ),
- // MUSIC LAYER
- // ┌─────────┬─────────┬─────────┬─────────┬─────────┐
- // │ │ │ │ │ │
- // │ │ │ │ │ │
- // ROTARY │ │ │ │ │ │
- // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE DOWN│ │ │ │ │ │
- // │ │ │ │ │ │
- // ROTARY │ │ │ │ │ │
- // LEFT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE UP │ │ │ │ │ │
- // │ │ │ │ MODE │ │
- // │ │ │ │ │ │
- // ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
- // │ │ │ │ │ │ │
- // │ │ RECORD │ STOP │ │ PLAY │ │
- // │ │ │ │ │ │ │
- // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
- [_MUSIC] = LAYOUT(
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, MU_NEXT,
- _______, KC_LCTL, KC_LALT, _______, KC_LGUI, _______
- ),
- // MIDI LAYER
- // ┌─────────┬─────────┬─────────┬─────────┬─────────┐
- // │ │ │ │ │ │
- // │ D♯ │ E │ F │ F♯ │ G │
- // ROTARY │ │ │ │ │ │
- // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE DOWN│ │ │ │ │ │
- // │ A♯ │ B │ C │ C♯ │ D │
- // ROTARY │ │ │ │ │ │
- // LEFT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE UP │ │ │ │ │ │
- // │ F │ F♯ │ G │ G♯ │ A │
- // │ │ │ │ │ │
- // ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
- // │ │ │ │ │ │ │
- // │ │ C │ C♯ │ D │ D♯ │ E │
- // │ │ │ │ │ │ │
- // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
- [_MIDI] = LAYOUT(
- MI_Ds3, MI_E3, MI_F3, MI_Fs3, MI_G3,
- MI_As2, MI_B2, MI_C3, MI_Cs3, MI_D3,
- MI_F2, MI_Fs2, MI_G2, MI_Gs2, TG(_MIDI),
- _______, MI_C2, MI_Cs2, MI_D2, MI_Ds2, MI_E2
- ),
- // MOUSE LAYER
- // ┌─────────┬─────────┬─────────┬─────────┬─────────┐
- // │ │ │ │ │ │
- // │ BTN 5 │ │ WHEEL │ │ │
- // ROTARY │ │ │ UP │ │ │
- // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE DOWN│ │ │ │ │ │
- // │ │ LEFT │ MOUSE │ RIGHT │ │
- // ROTARY │ │ CLICK │ UP │ CLICK │ │
- // LEFT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE UP │ │ │ │ │ │
- // │ BTN 4 │ MOUSE │ MOUSE │ MOUSE │ │
- // │ │ LEFT │ DOWN │ RIGHT │ │
- // ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
- // │ │ │ │ │ │ │
- // │ │ BTN 3 │ WHEEL │ WHEEL │ WHEEL │ │
- // │ │ │ LEFT │ DOWN │ RIGHT │ │
- // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
- [_MOUSE] = LAYOUT(
- MS_BTN5, _______, MS_WHLU, _______, _______,
- _______, MS_BTN1, MS_UP, MS_BTN2, TG(_MOUSE),
- MS_BTN4, MS_LEFT, MS_DOWN, MS_RGHT, _______,
- _______, MS_BTN3, MS_WHLL, MS_WHLD, MS_WHLR, _______
- ),
- // ADMIN LAYER
- // ┌─────────┬─────────┬─────────┬─────────┬─────────┐
- // │ │ │ │ │ │
- // │ QK_BOOT │ │ │ │ │
- // ROTARY │ │ │ │ │ │
- // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE DOWN│ │ │ │ │ │
- // │ 4 │ 5 │ 6 │ * │ │
- // ROTARY │ │ │ │ │ │
- // LEFT: ├─────────┼─────────┼─────────┼─────────┼─────────┤
- // PAGE UP │ │ │ │ │ │
- // │ 1 │ 2 │ 3 │ │ │
- // │ │ │ │ │ │
- // ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
- // │ │ │ │ │ │ │
- // │ │ 0 │ . │ = │ │ │
- // │ │ │ │ │ │ │
- // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
- [_ADMIN] = LAYOUT(
- QK_BOOT, _______, _______, _______, TG(_ADMIN),
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
- };
- bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) { /* First encoder */
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- return true;
- }
|