keymap.c 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include QMK_KEYBOARD_H
  2. #define _QWERTY 0
  3. #define _FN1 1
  4. #define _FN2 2
  5. #define KC_ KC_TRNS
  6. #define KC_X0 LT(_FN2, KC_GRV)
  7. #define KC_X1 MO(_FN1)
  8. #define KC_X2 BL_STEP
  9. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  10. [_QWERTY] = LAYOUT_kc(
  11. /*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
  12. ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL , BSPC , INS ,PGUP,
  13. /*|----`----`----`----`----`----`----`----`----`----`----`----`----`--------| |----`----| */
  14. TAB , Q , W , E , R , T , Y , U , I , O , P ,LBRC,RBRC, BSLS , DEL ,PGDN,
  15. /*|------`----`----`----`----`----`----`----`----`----`----`----`----`------| `----`----' */
  16. X0 , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, ENTER ,
  17. /*|-------`----`----`----`----`----`----`----`----`----`----`----`----------| ,----. */
  18. LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, RSFT , UP ,
  19. /*|---------`----`----`----`----`----`----`----`----`----`----`-------------.--|----|----. */
  20. LCTL ,LGUI ,LALT , SPACE , X1 ,RALT ,RCTL , LEFT,DOWN,RGHT
  21. /*`-----+-----+-----+------------------------------+------+-----+-----' `----+----+----' */
  22. ),
  23. [_FN1] = LAYOUT_kc(
  24. /*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
  25. GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , VOLU,HOME,
  26. /*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
  27. , , , UP , , , , , , , , , X2 , , VOLD,END,
  28. /*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
  29. , ,LEFT,DOWN,RGHT, , , , , , , , ,
  30. /*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
  31. , , , , , , ,MUTE, , , , , MUTE,
  32. /*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
  33. , , , , , , , MPRV,MPLY,MNXT
  34. /*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
  35. ),
  36. [_FN2] = LAYOUT_kc(
  37. /*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
  38. GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , VOLU,HOME,
  39. /*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
  40. , , , UP , , , , 7 , 8 , 9 , , , , , VOLD,END,
  41. /*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
  42. , ,LEFT,DOWN,RGHT, , , 4 , 5 , 6 , , , ,
  43. /*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
  44. , , , , , , 0 , 1 , 2 , 3 , , , MUTE,
  45. /*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
  46. , , , , , , , MPRV,MPLY,MNXT
  47. /*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
  48. )
  49. };
  50. const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
  51. {
  52. // MACRODOWN only works in this function
  53. switch(id) {
  54. case 0:
  55. if (record->event.pressed) {
  56. register_code(KC_RSFT);
  57. } else {
  58. unregister_code(KC_RSFT);
  59. }
  60. break;
  61. }
  62. return MACRO_NONE;
  63. };