keymap.c 3.3 KB

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