keymap.c 3.6 KB

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