Advertisement
Guest User

QMK kc60 keymap

a guest
Jun 12th, 2016
363
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.87 KB | None | 0 0
  1. // This is the canonical layout file for the Quantum project. If you want to add another keyboard,
  2. // this is the style you want to emulate.
  3.  
  4. #include "kc60.h"
  5. #ifdef BACKLIGHT_ENABLE
  6. #include "backlight.h"
  7. #endif
  8.  
  9. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  10. [0] = KEYMAP( /* Basic QWERTY */
  11. F(2), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
  12. KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
  13. KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
  14. F(11), KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT, \
  15. KC_LCTL, KC_LGUI, KC_LALT, F(1), KC_RALT, KC_RGUI, F(0), KC_RCTL),
  16. [1] = KEYMAP( /* First Fn Layer */
  17. KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, \
  18. KC_TAB, KC_Q, KC_UP, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_INS, KC_O, KC_PSCREEN, KC_SLCK, KC_PAUS, KC_BSLS, \
  19. KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_F, KC_G, KC_H, KC_J, KC_K, LGUI(KC_L), KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
  20. KC_LSFT, KC_NO, KC_Z, KC_X, BL_DEC, BL_TOGG, BL_INC, KC_N, KC_M, KC_COMM, KC_END, KC_PGDN, KC_NO, KC_RSFT, \
  21. KC_LCTL, KC_LGUI, KC_TRNS, KC_TRNS, KC_RALT, KC_RGUI, KC_TRNS, KC_RCTL),
  22. [2] = KEYMAP( /* Mousekeys Layer */
  23. KC_ESC, KC_1, KC_BTN3, KC_TRNS, KC_4, KC_5, KC_6, KC_P7, KC_P8, KC_P9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
  24. KC_TAB, KC_BTN1, KC_MS_U, KC_BTN2, KC_R, KC_T, KC_Y, KC_P4, KC_P5, KC_P6, KC_NLCK, KC_LBRC, KC_RBRC, KC_BSLS, \
  25. KC_WH_U, KC_MS_L, KC_MS_D, KC_MS_R, KC_F, KC_G, KC_H, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PAST, KC_NO, KC_ENT, \
  26. KC_WH_D, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_P0, KC_COMM, KC_PDOT, KC_PSLS, KC_NO, KC_RSFT, \
  27. KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_RALT, KC_RGUI, KC_TRNS, KC_RCTL),
  28. [3] = KEYMAP( /* RGBLIGHT */
  29. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  30. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  31. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, \
  32. KC_TRNS, KC_NO, F(3), F(4), F(5), F(6), F(7), F(8), F(9), F(10), KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, \
  33. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
  34. [4] = KEYMAP( /* tilde - grave */
  35. KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  36. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  37. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, \
  38. KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, \
  39. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
  40.  
  41. };
  42.  
  43. enum function_id {
  44. RGBLED_TOGGLE,
  45. RGBLED_STEP_MODE,
  46. RGBLED_INCREASE_HUE,
  47. RGBLED_DECREASE_HUE,
  48. RGBLED_INCREASE_SAT,
  49. RGBLED_DECREASE_SAT,
  50. RGBLED_INCREASE_VAL,
  51. RGBLED_DECREASE_VAL,
  52. };
  53.  
  54. const uint16_t PROGMEM fn_actions[] = {
  55. [0] = ACTION_LAYER_TOGGLE(2),
  56. [1] = ACTION_LAYER_TAP_KEY(1, KC_SPC),
  57. [2] = ACTION_LAYER_TAP_KEY(3, KC_ESC),
  58. [3] = ACTION_FUNCTION(RGBLED_TOGGLE),
  59. [4] = ACTION_FUNCTION(RGBLED_STEP_MODE),
  60. [5] = ACTION_FUNCTION(RGBLED_INCREASE_HUE),
  61. [6] = ACTION_FUNCTION(RGBLED_DECREASE_HUE),
  62. [7] = ACTION_FUNCTION(RGBLED_INCREASE_SAT),
  63. [8] = ACTION_FUNCTION(RGBLED_DECREASE_SAT),
  64. [9] = ACTION_FUNCTION(RGBLED_INCREASE_VAL),
  65. [10] = ACTION_FUNCTION(RGBLED_DECREASE_VAL),
  66. [11] = ACTION_LAYER_MODS(4, MOD_LSFT),
  67. };
  68.  
  69.  
  70. void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
  71. switch (id) {
  72. case RGBLED_TOGGLE:
  73. //led operations
  74. if (record->event.pressed) {
  75. rgblight_toggle();
  76. }
  77. break;
  78. case RGBLED_INCREASE_HUE:
  79. if (record->event.pressed) {
  80. rgblight_increase_hue();
  81. }
  82. break;
  83. case RGBLED_DECREASE_HUE:
  84. if (record->event.pressed) {
  85. rgblight_decrease_hue();
  86. }
  87. break;
  88. case RGBLED_INCREASE_SAT:
  89. if (record->event.pressed) {
  90. rgblight_increase_sat();
  91. }
  92. break;
  93. case RGBLED_DECREASE_SAT:
  94. if (record->event.pressed) {
  95. rgblight_decrease_sat();
  96. }
  97. break;
  98. case RGBLED_INCREASE_VAL:
  99. if (record->event.pressed) {
  100. rgblight_increase_val();
  101. }
  102. break;
  103. case RGBLED_DECREASE_VAL:
  104. if (record->event.pressed) {
  105. rgblight_decrease_val();
  106. }
  107. break;
  108. case RGBLED_STEP_MODE:
  109. if (record->event.pressed) {
  110. rgblight_step();
  111. }
  112. break;
  113. }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement