keymap-win.c 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. #include "rmw.h"
  2. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  3. [QWERTY] = LAYOUT_ergodox( // LEFT HAND
  4. TD(FRBK), KC_1, KC_2, KC_3, KC_4, KC_5, KC_F4,
  5. KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TO(EDIT),
  6. OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_D, LT(FSYM,KC_F), KC_G,
  7. OSM(MOD_LSFT), KC_Z, KC_X, KC_C, KC_V, SFT_T(KC_B), KC_TAB,
  8. TD(CTLAND), OSL(ADJUST), TD(SCAG), TD(TDGUI), TD(ACG),
  9. OS_ALT, OS_CTL ,
  10. KC_ESCAPE,
  11. KC_BSPACE, TD(SHENT), OSL(EDIT),
  12. // RIGHT HAND
  13. KC_F5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
  14. TO(NUMPAD), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
  15. KC_H, LT(JSYM,KC_J), KC_K, KC_L, LT(EDIT,KC_SCLN), KC_QUOTE,
  16. CTL_T(KC_B), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), TD(SHENT),
  17. TD(CAG), TD(TDGUI), KC_LBRC, KC_RBRC, KC_MS_BTN1,
  18. OS_ALT, KC_TAB,
  19. KC_DEL,
  20. KC_CAPS, SFT_T(KC_ENT), KC_SPC),
  21. [NUMPAD] = LAYOUT_ergodox(VRSN, KC_F11, KC_F12, KC_F1, KC_F2, KC_F3, _______,
  22. _______, _______, KC_PGUP, KC_UP, KC_PGDOWN, _______, TO(0),
  23. _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,
  24. _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), LCTL(KC_Y), _______,
  25. _______, _______, _______, _______, _______,
  26. _______, _______, KC_PSCREEN, _______, _______, TO(0),
  27. _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
  28. TO(EDIT), _______, KC_7, KC_8, KC_9, KC_KP_MINUS, _______,
  29. _______, KC_4, KC_5, KC_6, KC_KP_PLUS, _______,
  30. _______, KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH, _______,
  31. KC_0, KC_DOT, KC_EQUAL, KC_KP_ASTERISK, _______,
  32. _______, _______, KC_INSERT, TO(EDIT), _______, _______),
  33. [EDIT] = LAYOUT_ergodox(KC_ESCAPE, LALT(LCTL(KC_DELETE)), KC_MS_WH_UP, KC_MS_BTN1, KC_MS_BTN2, _______, _______,
  34. _______, LCTL(S(KC_ESCAPE)), KC_MS_WH_DOWN, LCTL(S(KC_LEFT)), LCTL(S(KC_RIGHT)), _______, TO(NUMPAD),
  35. _______, _______, KC_LEFT, LCTL(KC_LEFT), LCTL(KC_RIGHT), _______,
  36. _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), LCTL(KC_Y), _______,
  37. _______, _______, _______, _______, _______,
  38. _______, _______, _______, _______, _______, TO(NUMPAD),
  39. _______, _______, _______, S(KC_UP), _______, _______, KC_DELETE,
  40. TO(0), LCTL(KC_T), KC_PGUP, KC_UP, KC_PGDOWN, KC_PSCREEN, _______,
  41. KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, _______,
  42. _______, S(KC_HOME), S(KC_LEFT), S(KC_DOWN), S(KC_RIGHT), S(KC_END), _______,
  43. _______, _______, _______, _______, _______,
  44. _______, _______, _______, S(KC_F10), _______, _______),
  45. [FSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
  46. _______, _______, _______, _______, _______, _______, _______,
  47. _______, _______, KC_TILD, KC_EXLM, _______, _______,
  48. _______, _______, _______, _______, _______, _______, _______,
  49. _______, _______, _______, _______, _______,
  50. _______, _______, _______, _______, _______, _______,
  51. _______, _______, _______, _______, _______, _______, _______,
  52. _______, KC_CIRC, KC_AMPR , KC_ASTR, KC_GRV , _______, _______,
  53. KC_EQUAL, KC_MINUS, KC_UNDS, KC_BSLS, KC_COLON, KC_DQT ,
  54. _______, _______, KC_PLUS , KC_SLSH, KC_PIPE, _______ , _______,
  55. _______, _______, _______, _______, _______,
  56. _______, _______, _______, _______, _______, _______),
  57. [JSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
  58. _______, KC_GRV, KC_AT , KC_LCBR, KC_RCBR, _______, _______,
  59. _______, KC_HASH, KC_DLR , KC_LPRN, KC_RPRN, KC_LEFT,
  60. _______, KC_PERC, KC_CIRC, KC_LBRACKET, KC_RBRACKET, _______, _______,
  61. _______, _______, _______, _______, _______,
  62. _______, _______, _______, _______, _______, _______,
  63. _______, _______, _______, _______, _______, _______, _______,
  64. _______, _______, _______, _______, _______, _______, _______,
  65. _______, _______, KC_QUES, KC_SLSH, KC_COLON, _______,
  66. _______, _______, _______, _______, _______, _______, _______,
  67. _______, _______, _______, _______, _______,
  68. _______, _______, _______, _______, _______, _______),
  69. [MEDIA] = LAYOUT_ergodox(_______, _______, KC_MS_BTN4, _______, KC_MS_BTN5, _______, _______,
  70. _______, KC_MS_WH_UP, KC_MS_WH_LEFT, KC_MS_UP, KC_MS_WH_RIGHT, _______, _______,
  71. _______, KC_MS_WH_DOWN, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
  72. _______, _______, KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______,
  73. _______, _______, _______, _______, KC_MS_BTN3,
  74. _______, _______, _______, KC_MS_BTN1, KC_MS_BTN2, _______,
  75. _______, _______, _______, _______, _______, _______, _______,
  76. _______, _______, _______, _______, _______, _______, _______,
  77. _______, _______, _______, _______, _______, _______,
  78. _______, _______, KC_AUDIO_VOL_DOWN, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, _______, _______,
  79. KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, _______, _______, _______,
  80. _______, _______, _______, _______, KC_MS_BTN1, KC_MEDIA_PLAY_PAUSE),
  81. [ADJUST] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
  82. _______, _______, _______, _______, _______, _______, _______,
  83. _______, TO(EDIT), TO(NUMPAD), TO(FSYM), TO(JSYM), TO(MEDIA),
  84. _______, _______, _______, _______, _______, _______, _______,
  85. _______, TO(QWERTY), _______, _______, _______,
  86. _______, _______, _______, _______, _______, _______,
  87. _______, _______, _______, _______, _______, _______, _______,
  88. _______, _______, _______, _______, _______, _______, _______,
  89. _______, _______, _______, _______, _______, _______,
  90. _______, _______, _______, _______, _______, _______, _______,
  91. _______, _______, _______, _______, _______,
  92. _______, _______, _______, _______, _______, _______),
  93. };
  94. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  95. switch (keycode) {
  96. // dynamically generate these.
  97. case VRSN:
  98. if (record->event.pressed) {
  99. SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
  100. }
  101. return false;
  102. }
  103. return true;
  104. }
  105. layer_state_t layer_state_set_user(layer_state_t state) {
  106. switch (get_highest_layer(state)) {
  107. case QWERTY:
  108. ergodox_right_led_1_off();
  109. ergodox_right_led_2_off();
  110. ergodox_right_led_3_off();
  111. break;
  112. case NUMPAD:
  113. ergodox_right_led_1_on();
  114. ergodox_right_led_2_off();
  115. ergodox_right_led_3_off();
  116. break;
  117. case EDIT:
  118. ergodox_right_led_1_off();
  119. ergodox_right_led_2_on();
  120. ergodox_right_led_3_off();
  121. break;
  122. case FSYM:
  123. ergodox_right_led_1_on();
  124. ergodox_right_led_2_on();
  125. ergodox_right_led_3_off();
  126. break;
  127. case JSYM:
  128. ergodox_right_led_1_on();
  129. ergodox_right_led_2_off();
  130. ergodox_right_led_3_on();
  131. break;
  132. case MEDIA:
  133. ergodox_right_led_1_off();
  134. ergodox_right_led_2_on();
  135. ergodox_right_led_3_on();
  136. break;
  137. case ADJUST:
  138. ergodox_right_led_1_on();
  139. ergodox_right_led_2_on();
  140. ergodox_right_led_3_on();
  141. break;
  142. }
  143. return state;
  144. }