keymap.c 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #include QMK_KEYBOARD_H
  2. #include "action_layer.h"
  3. #include "eeconfig.h"
  4. extern keymap_config_t keymap_config;
  5. // Each layer gets a name for readability, which is then used in the keymap matrix below.
  6. // The underscores don't mean anything - you can have a layer called STUFF or any other name.
  7. // Layer names don't all need to be of the same length, obviously, and you can also skip them
  8. // entirely and just use numbers.
  9. #define _DEFAULT 0
  10. #define _FN_1 1
  11. #define _FN_2 2
  12. enum custom_keycodes {
  13. DEFAULT = SAFE_RANGE,
  14. FN_1,
  15. FN_2
  16. };
  17. // Defines for task manager and such
  18. #define CALTDEL LCTL(LALT(KC_DEL))
  19. #define TSKMGR LCTL(LSFT(KC_ESC))
  20. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  21. /* Default Layer
  22. * ,-----------------------------------------------.
  23. * | FN_2 | 2 |TSKMGR |CALTDEL| ESC | FN_1 |
  24. * `-----------------------------------------------'
  25. */
  26. [_DEFAULT] = LAYOUT( \
  27. MO(_FN_2), KC_2, TSKMGR, CALTDEL, KC_ESC, MO(_FN_1)
  28. ),
  29. /* FN 1 Layer
  30. * ,-----------------------------------------------.
  31. * |RGB_TOG|RGB_HUD|RGB_HUI|RGB_SAD|RGB_SAI| FN_1 |
  32. * `-----------------------------------------------'
  33. */
  34. [_FN_1] = LAYOUT( \
  35. RGB_TOG, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______
  36. ),
  37. /* FN 2 Layer
  38. * ,-----------------------------------------------.
  39. * | FN_2 |RGB_VAD|RGB_VAI|RGB_MOD|TSKMGR | RESET |
  40. * `-----------------------------------------------'
  41. */
  42. [_FN_2] = LAYOUT( \
  43. _______, RGB_VAD, RGB_VAI, RGB_MOD, TSKMGR, RESET
  44. )
  45. };
  46. void persistant_default_layer_set(uint16_t default_layer) {
  47. eeconfig_update_default_layer(default_layer);
  48. default_layer_set(default_layer);
  49. }
  50. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  51. switch (keycode) {
  52. // NONE
  53. }
  54. return true;
  55. }