keymap.c 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #include QMK_KEYBOARD_H
  2. enum layers {
  3. _QWERTY,
  4. _HYPER,
  5. };
  6. #define KC_ KC_TRNS
  7. #define KC_ESCC MT(MOD_LCTL, KC_ESC)
  8. #define KC_RST RESET
  9. #define KC_BSPH LT(_HYPER, KC_BSPC)
  10. #define KC_ENTS MT(MOD_LSFT, KC_ENT)
  11. // Brightness
  12. #define KC_BRUP KC_PAUS
  13. #define KC_BRDN KC_SLCK
  14. // Used to create a keymap using only KC_ prefixed keys
  15. #define LAYOUT_kc( \
  16. k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
  17. k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
  18. k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
  19. k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
  20. k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b \
  21. ) \
  22. LAYOUT_ortho_5x12( \
  23. KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, \
  24. KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, \
  25. KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, \
  26. KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b, \
  27. KC_##k40, KC_##k41, KC_##k42, KC_##k43, KC_##k44, KC_##k45, KC_##k46, KC_##k47, KC_##k48, KC_##k49, KC_##k4a, KC_##k4b \
  28. )
  29. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  30. [_QWERTY] = LAYOUT_kc( \
  31. // ,-----------------------------------------------------------------------------------.
  32. GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , MINS ,
  33. // |------+------+------+------+------+------+------+------+------+------+------+------|
  34. TAB , Q , W , E , R , T , Y , U , I , O , P , EQL ,
  35. // |------+------+------+------+------+------+------+------+------+------+------+------|
  36. ESCC , A , S , D , F , G , H , J , K , L , SCLN , QUOT ,
  37. // |------+------+------+------+------+------+------+------+------+------+------+------|
  38. LSFT , Z , X , C , V , B , N , M , COMM , DOT , SLSH , ENTS ,
  39. // |------+------+------+------+------+------+------+------+------+------+------+------|
  40. , LCTL , LALT , LGUI , SPC , SPC , BSPC , BSPH , LEFT , DOWN , UP , RGHT
  41. // `---------------------------------------------------+-------------------------------'
  42. ), // |
  43. // |
  44. [_HYPER] = LAYOUT_kc( /* V */ \
  45. // ,-----------------------------------------------------------------------------------.
  46. RST , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , LBRC , RBRC , ,
  47. // |------+------+------+------+------+------+------+------+------+------+------+------|
  48. , , , PGUP , , , , , UP , LCBR , RCBR , BSLS ,
  49. // |------+------+------+------+------+------+------+------+------+------+------+------|
  50. , , HOME , PGDN , END , , MINS , LEFT , DOWN , RGHT , , PIPE ,
  51. // |------+------+------+------+------+------+------+------+------+------+------+------|
  52. , , , , , , , , , BRDN , BRUP , ,
  53. // |------+------+------+------+------+------+------+------+------+------+------+------|
  54. , , , , , , , , MUTE , VOLD , VOLU , MPLY
  55. // `-----------------------------------------------------------------------------------'
  56. ),
  57. };