keymap.c (2417B)
1 /* Copyright 2022 DOIO 2 * Copyright 2022 DOIO2022 <https://github.com/DOIO2022> 3 * 4 * This program is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation, either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 19 #include QMK_KEYBOARD_H 20 21 enum layer_names { 22 _LAY0, 23 _LAY1, 24 _LAY2, 25 _LAY3 26 }; 27 28 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 29 [_LAY0] = LAYOUT( 30 KC_UP, KC_1, KC_2, KC_3, KC_MPLY, KC_MUTE, 31 KC_LEFT, KC_RIGHT, KC_4, KC_5, KC_6, 32 KC_DOWN, KC_7, KC_8, KC_9, 33 TO(1), LWIN(KC_D)), 34 [_LAY1] = LAYOUT( 35 KC_TRNS, C(S(KC_S)), C(KC_H), C(KC_G), KC_TRNS, KC_TRNS, 36 KC_TRNS, KC_TRNS, C(S(KC_A)), C(KC_J), C(S(KC_G)), 37 KC_TRNS, C(KC_Z), KC_DEL, C(A(S(KC_E))), 38 TO(2), KC_TRNS), 39 [_LAY2] = LAYOUT( 40 KC_TRNS, S(KC_I), A(KC_EQL), C(S(KC_M)), KC_TRNS, KC_TRNS, 41 KC_TRNS, KC_TRNS, S(KC_O), A(KC_MINS), S(KC_M), 42 KC_TRNS, KC_C, KC_V, C(KC_M), 43 TO(3), KC_TRNS), 44 [_LAY3] = LAYOUT( 45 KC_TRNS, RM_SPDU, RM_SPDD, RM_HUEU, KC_TRNS, KC_TRNS, 46 KC_TRNS, KC_TRNS, RM_SATU, RM_SATD, RM_HUED, 47 KC_TRNS, RM_NEXT, RM_VALU, RM_VALD, 48 TO(0), KC_TRNS) 49 }; 50 51 #ifdef ENCODER_MAP_ENABLE 52 const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { 53 [_LAY0] = { ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, 54 [_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, 55 [_LAY2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, 56 [_LAY3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, 57 }; 58 #endif