keymap.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*
  2. QMK Firmware Massdrop CTRL M-AS Keymap
  3. Copyright (C) 2020 matthewrobo
  4. This program is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU General Public License for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. #include QMK_KEYBOARD_H
  16. // HID has not yet been implemented for this keyboard
  17. // #include "raw_hid.h"
  18. #define MILLISECONDS_IN_SECOND 1000
  19. // These are just to make it neater to use builtin HSV values in the keymap
  20. // clang-format off
  21. #define WHITE {HSV_WHITE}
  22. #define RED {HSV_RED}
  23. #define CORAL {HSV_CORAL}
  24. #define ORANGE {HSV_ORANGE}
  25. #define GOLDEN {HSV_GOLDENROD}
  26. #define GOLD {HSV_GOLD}
  27. #define YELLOW {HSV_YELLOW}
  28. #define CHART {HSV_CHARTREUSE}
  29. #define GREEN {HSV_GREEN}
  30. #define SPRING {HSV_SPRINGGREEN}
  31. #define TURQ {HSV_TURQUOISE}
  32. #define TEAL {HSV_TEAL}
  33. #define CYAN {HSV_CYAN}
  34. #define AZURE {HSV_AZURE}
  35. #define BLUE {HSV_BLUE}
  36. #define PURPLE {HSV_PURPLE}
  37. #define MAGENT {HSV_MAGENTA}
  38. #define PINK {HSV_PINK}
  39. #define HSV_CREAM 24, 240, 255
  40. #define CREAM {HSV_CREAM}
  41. #define HSV_9B59B5 208, 192, 255
  42. #define M9B59B5 {HSV_9B59B5}
  43. // clang-format on
  44. #define LT_CAPS LT(_NL, KC_CAPS)
  45. #define _LAYER_ KC_TRNS
  46. //========================================================== CONFIGURABLE DEFAULTS ==========================================================
  47. extern bool g_suspend_state;
  48. extern rgb_config_t rgb_matrix_config;
  49. bool disable_layer_color;
  50. bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
  51. enum layout_names {
  52. _KL = 0, // Keys Layout: The main keyboard layout that has all the characters
  53. _NL, // Navigation Layout: Cursor keys and numpad inputs
  54. _FL, // Function Layout: The function key activated layout with default functions and some added ones
  55. };
  56. enum ctrl_keycodes {
  57. U_T_AUTO = SAFE_RANGE, // USB Extra Port Toggle Auto Detect / Always Active
  58. U_T_AGCR, // USB Toggle Automatic GCR control
  59. DBG_TOG, // DEBUG Toggle On / Off
  60. DBG_MTRX, // DEBUG Toggle Matrix Prints
  61. DBG_KBD, // DEBUG Toggle Keyboard Prints
  62. DBG_MOU, // DEBUG Toggle Mouse Prints
  63. MD_BOOT, // Restart into bootloader after hold timeout
  64. MAS_CRM,
  65. MAS_PRP,
  66. MAS_RED,
  67. MAS_GRN,
  68. MAS_BLU,
  69. MAS_CYN,
  70. MAS_MGT,
  71. MAS_YEL,
  72. MAS_KEY,
  73. MAS_WHT,
  74. };