keymap.c (1847B)
1 /* Copyright 2020 joshajohnson 2 * 3 * This program is free software: you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published by 5 * the Free Software Foundation, either version 2 of the License, or 6 * (at your option) any later version. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License 14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 15 */ 16 #include QMK_KEYBOARD_H 17 18 #define MO_NLCK LT(1, KC_NUM) // Numlock on tap, layer change on hold 19 20 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 21 [0] = LAYOUT_all( 22 KC_MUTE, KC_MPLY, 23 KC_PMNS, KC_PAST, KC_PSLS, MO_NLCK, 24 KC_PPLS, KC_P7, KC_P8, KC_P9, 25 KC_PPLS, KC_P4, KC_P5, KC_P6, 26 KC_PENT, KC_P1, KC_P2, KC_P3, 27 KC_PENT, KC_PDOT, KC_P0, KC_P0 28 ), 29 [1] = LAYOUT_all( 30 QK_BOOT, _______, 31 RM_TOGG, RM_PREV, RM_NEXT, _______, 32 _______, RM_VALD, RM_VALU, _______, 33 _______, RM_HUED, RM_HUEU, _______, 34 _______, RM_SATD, RM_SATU, _______, 35 _______, _______, _______, _______ 36 ) 37 }; 38 39 bool encoder_update_user(uint8_t index, bool clockwise) { 40 if (index == 0) { /* Left Encoder */ 41 if (clockwise) { 42 tap_code(KC_VOLU); 43 } else { 44 tap_code(KC_VOLD); 45 } 46 } else if (index == 1) { /* Right Encoder */ 47 if (clockwise) { 48 tap_code(KC_MNXT); 49 } else { 50 tap_code(KC_MPRV); 51 } 52 } 53 return true; 54 }