logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

keymap.c (3044B)


  1. #include QMK_KEYBOARD_H
  2. #if __has_include("keymap.h")
  3. # include "keymap.h"
  4. #endif
  5. #define A_SPC ALT_T(KC_SPC)
  6. // clang-format off
  7. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  8. [0] = LAYOUT(
  9. KC_ESC, 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_GRV,
  10. KC_ENT, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, /** : **/ KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
  11. KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, MO(1), /** : **/ KC_APP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
  12. KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, /** : **/ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
  13. TG(1), KC_LEFT, KC_RGHT, KC_LGUI, A_SPC, /* */ KC_DEL, /** : **/ KC_INS, /* */ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_RCTL,
  14. KC_SPC, KC_NO, KC_ENT, /** : **/ KC_LALT, KC_TAB, KC_BSPC
  15. ),
  16. // MU_TOGG : Toggles Music Mode
  17. [1] = LAYOUT(
  18. KC_TRNS, 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_PSCR,
  19. MU_TOGG, KC_NO, KC_NO, KC_NO, EE_CLR, KC_NO, KC_NO, /** : **/ KC_NO, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_MPLY, KC_NO,
  20. KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, /** : **/ KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_NO,
  21. KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, /** : **/ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
  22. KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, /* */ RM_VALU, /** : **/ RM_TOGG, /* */ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  23. RM_HUED, RM_VALD, RM_HUEU, /** : **/ KC_TRNS, RM_NEXT, RM_PREV
  24. )
  25. };
  26. // clang-format on
  27. // Taken from docs/features/rgb_matrix.md
  28. // "Layer indicator only on keys with configured keycodes:"
  29. // And then modified
  30. bool
  31. rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
  32. // None for default layer
  33. if (IS_LAYER_ON_STATE(layer_state, 0)) return false;
  34. uint8_t layer = get_highest_layer(layer_state);
  35. // HSV_GREEN: defined in quantum/color.h
  36. hsv_t color_hsv = {HSV_GREEN};
  37. color_hsv.v = rgb_matrix_get_val()/2; // Half-bright as normal effects
  38. rgb_t color_rgb = hsv_to_rgb(color_hsv);
  39. for (uint8_t row = 0; row < MATRIX_ROWS; ++row)
  40. {
  41. for (uint8_t col = 0; col < MATRIX_COLS; ++col)
  42. {
  43. uint8_t index = g_led_config.matrix_co[row][col];
  44. if (
  45. index >= led_min
  46. && index < led_max
  47. && index != NO_LED
  48. && keymap_key_to_keycode(layer, (keypos_t){col,row}) > KC_TRNS
  49. )
  50. {
  51. rgb_matrix_set_color(index, color_rgb.r, color_rgb.g, color_rgb.b);
  52. }
  53. }
  54. }
  55. return false;
  56. }
  57. #ifdef OTHER_KEYMAP_C
  58. # include OTHER_KEYMAP_C
  59. #endif // OTHER_KEYMAP_C