keymap.c 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #include QMK_KEYBOARD_H
  2. enum custom_layers {
  3. _QWERTY,
  4. _FN
  5. };
  6. // Act as Shift on hold and as CapsLock on tap
  7. #define SFT_CPS LSFT_T(KC_CAPS)
  8. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  9. /* Qwerty
  10. * ,-----------------------------------------------------------. ,--------------.
  11. * |Esc | Q | W | E | R | T | Y | U | I | O | P |Bspc| | 7 | 8 | 9 |
  12. * |-----------------------------------------------------------| |--------------|
  13. * | Tab | A | S | D | F | G | H | J | K | L | Enter | | 4 | 5 | 6 |
  14. * |-----------------------------------------------------------| |--------------|
  15. * | Shift | Z | X | C | V | B | N | M | , | . | FN | | 1 | 2 | 3 |
  16. * |-----------------------------------------------------------| |--------------|
  17. * | Ctrl |Gui | Alt | Space | Space | RAlt |RGui|RCtrl| | 0 | . |Entr|
  18. * `-----------------------------------------------------------' `--------------'
  19. */
  20. [_QWERTY] = LAYOUT(
  21. KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_7, KC_8, KC_9,
  22. KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, KC_4, KC_5, KC_6,
  23. SFT_CPS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, MO(_FN), KC_1, KC_2, KC_3,
  24. KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_0, KC_DOT, KC_ENT
  25. ),
  26. /* FN
  27. * ,-----------------------------------------------------------. ,--------------.
  28. * |RST | | | | | | | | | |Ins |Del | |Home|PgUp| |
  29. * |-----------------------------------------------------------| |--------------|
  30. * | |Prev|Play|Next| | | |VolD|Mute|VolU| | |End |PgDn| |
  31. * |-----------------------------------------------------------| |--------------|
  32. * | | | | | | | | | | | | | | | |
  33. * |-----------------------------------------------------------| |--------------|
  34. * |EEPRST| | | | | | | | | | | |
  35. * `-----------------------------------------------------------' `--------------'
  36. */
  37. [_FN] = LAYOUT(
  38. RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, KC_HOME, KC_PGUP, _______,
  39. _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_END, KC_PGDN, _______,
  40. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
  41. EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
  42. )
  43. };
  44. void led_set_user(uint8_t usb_led) {
  45. // Turn LED On/Off for Caps Lock
  46. if (host_keyboard_leds() & (1 << USB_LED_CAPS_LOCK)) {
  47. the50_led_on();
  48. } else {
  49. the50_led_off();
  50. }
  51. }