logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

keymap.c (1651B)


  1. /* Copyright 2020 GhostSeven <work@ghost7.com>
  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. #define _BASE 0 // Base layer
  18. #define _CODE 1 // Code layer
  19. enum encoder_names {
  20. _ENCODER
  21. };
  22. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  23. /* 0: Base Layer
  24. * Media Prev / Hold L1 | Media Next | Mute
  25. * Move Space Left | Mission Control | Move Space Right */
  26. [_BASE] = LAYOUT(
  27. LT(_CODE, KC_MPRV), KC_MNXT, KC_MUTE,
  28. C(KC_LEFT), C(KC_UP), C(KC_RIGHT)
  29. ),
  30. /* 1: Code layer
  31. * ---- | Shift+CMD+B (Build VS Code) | DFU Mode
  32. * Shift+CMD+C (FF Console) | Ctrl+Alt+U (Upload PIO) | Ctrl+Alt+S (Serial PIO) */
  33. [_CODE] = LAYOUT(
  34. _______, S(G(KC_B)), QK_BOOT,
  35. G(A(KC_C)), C(A(KC_U)), C(A(KC_S))
  36. ),
  37. };
  38. bool encoder_update_user(uint8_t index, bool clockwise) {
  39. if (index == _ENCODER) {
  40. if (clockwise) {
  41. tap_code(KC_VOLU);
  42. } else {
  43. tap_code(KC_VOLD);
  44. }
  45. }
  46. return true;
  47. }