summaryrefslogtreecommitdiff
path: root/keyboards/massdrop/ctrl/keymaps
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2023-04-14 19:42:50 +1000
committerGitHub <noreply@github.com>2023-04-14 19:42:50 +1000
commit54634e92634f73a6d9111833adf58214cb4278c3 (patch)
treeb12409479c031deb6250368d9eac56866e9790e2 /keyboards/massdrop/ctrl/keymaps
parentcf5626e0246b66879b03a18115a19a566e839f48 (diff)
Fix some missing QMK_KEYBOARD_H includes in user keymaps (#20417)
Diffstat (limited to 'keyboards/massdrop/ctrl/keymaps')
-rw-r--r--keyboards/massdrop/ctrl/keymaps/endgame/keymap.c96
-rw-r--r--keyboards/massdrop/ctrl/keymaps/endgame/keymap.h99
-rw-r--r--keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.c67
-rw-r--r--keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.h86
-rw-r--r--keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c108
-rw-r--r--keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h129
6 files changed, 268 insertions, 317 deletions
diff --git a/keyboards/massdrop/ctrl/keymaps/endgame/keymap.c b/keyboards/massdrop/ctrl/keymaps/endgame/keymap.c
index 87b14ff93f..463ccb42ba 100644
--- a/keyboards/massdrop/ctrl/keymaps/endgame/keymap.c
+++ b/keyboards/massdrop/ctrl/keymaps/endgame/keymap.c
@@ -1,4 +1,98 @@
-#include "keymap.h"
+#include QMK_KEYBOARD_H
+#include <string.h>
+
+#define MILLISECONDS_IN_SECOND 1000
+
+// These are just to make it neater to use builtin HSV values in the keymap
+#define RED {HSV_RED}
+#define CORAL {HSV_CORAL}
+#define ORANGE {HSV_ORANGE}
+#define GOLDEN {HSV_GOLDENROD}
+#define GOLD {HSV_GOLD}
+#define YELLOW {HSV_YELLOW}
+#define CHART {HSV_CHARTREUSE}
+#define GREEN {HSV_GREEN}
+#define SPRING {HSV_SPRINGGREEN}
+#define TURQ {HSV_TURQUOISE}
+#define TEAL {HSV_TEAL}
+#define CYAN {HSV_CYAN}
+#define AZURE {HSV_AZURE}
+#define BLUE {HSV_BLUE}
+#define PURPLE {HSV_PURPLE}
+#define MAGENT {HSV_MAGENTA}
+#define PINK {HSV_PINK}
+
+//========================================================== CONFIGURABLE DEFAULTS ==========================================================
+#define RGB_DEFAULT_TIME_OUT 30
+#define RGB_FAST_MODE_TIME_OUT 3
+#define RGB_TIME_OUT_MAX 600
+#define RGB_TIME_OUT_MIN 10
+#define RGB_TIME_OUT_STEP 10
+
+extern rgb_config_t rgb_matrix_config;
+bool disable_layer_color;
+
+bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
+bool rgb_time_out_enable; // Idle LED toggle enable. If false then LED will not turn off after idle timeout.
+bool rgb_time_out_fast_mode_enabled; // Enable flag for RGB timeout fast mode
+bool rgb_time_out_user_value; // This holds the toggle value set by user with ROUT_TG. It's necessary as RGB_TOG changes timeout enable.
+uint16_t rgb_time_out_seconds; // Idle LED timeout value, in seconds not milliseconds
+uint16_t rgb_time_out_saved_seconds; // The saved user config for RGB timeout period
+led_flags_t rgb_time_out_saved_flag; // Store LED flag before timeout so it can be restored when LED is turned on again.
+
+enum layout_names {
+ _KL=0, // Keys Layout: The main keyboard layout that has all the characters
+ _FL, // Function Layout: The function key activated layout with default functions and some added ones
+ _ML, // Mouse Layout: Mouse Keys and mouse movement
+ _GL, // GIT Layout: GIT shortcuts and macros
+ _VL, // VIM Layout: VIM shorcuts and macros
+ _YL, // Yakuake Layout: Yakuake drop-down terminal shortcuts and macros
+ _EL, // KDE Layout: Shortcuts for KDE desktop using default KDE shortcuts settings
+};
+
+enum tapdance_keycodes {
+ TD_LGUI_ML = 0, // Tap dance key to switch to mouse layer _ML
+ TD_APP_YL,
+ TD_CTRL_TERM, // Tap dance key to open terminal on LCTRL double press
+};
+
+enum ctrl_keycodes {
+ U_T_AUTO = SAFE_RANGE, // USB Extra Port Toggle Auto Detect / Always Active
+ U_T_AGCR, // USB Toggle Automatic GCR control
+ DBG_TOG, // DEBUG Toggle On / Off
+ DBG_MTRX, // DEBUG Toggle Matrix Prints
+ DBG_KBD, // DEBUG Toggle Keyboard Prints
+ DBG_MOU, // DEBUG Toggle Mouse Prints
+ MD_BOOT, // Restart into bootloader after hold timeout
+ SEL_CPY, // Select Copy. Select the word cursor is pointed at and copy, using double mouse click and ctrl+c
+ ROUT_TG, // Timeout Toggle. Toggle idle LED time out on or off
+ ROUT_VI, // Timeout Value Increase. Increase idle time out before LED disabled
+ ROUT_VD, // Timeout Value Decrease. Decrease idle time out before LED disabled
+ ROUT_FM, // RGB timeout fast mode toggle
+ COPY_ALL, // Copy all text using ctrl(a+c)
+ TERMINAL, // CTRL+ALT+T
+};
+
+enum string_macro_keycodes {
+ // The start of this enum should always be equal to end of ctrl_keycodes + 1
+ G_INIT = TERMINAL + 1, // git init
+ G_CLONE, // git clone
+ G_CONF, // git config --global
+ G_ADD, // git add
+ G_DIFF, // git diff
+ G_RESET, // git reset
+ G_REBAS, // git rebase
+ G_BRANH, // git branch
+ G_CHECK, // git checkout
+ G_MERGE, // git merge
+ G_REMTE, // git remote add
+ G_FETCH, // git fetch
+ G_PULL, // git pull
+ G_PUSH, // git push
+ G_COMM, // git commit
+ G_STAT, // git status
+ G_LOG, // git log
+};
static uint16_t idle_timer; // Idle LED timeout timer
static uint8_t idle_second_counter; // Idle LED seconds counter, counts seconds not milliseconds
diff --git a/keyboards/massdrop/ctrl/keymaps/endgame/keymap.h b/keyboards/massdrop/ctrl/keymaps/endgame/keymap.h
deleted file mode 100644
index 2747681126..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/endgame/keymap.h
+++ /dev/null
@@ -1,99 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#include <print.h>
-#include <string.h>
-// HID has not yet been implemented for this keyboard
-// #include "raw_hid.h"
-
-#define MILLISECONDS_IN_SECOND 1000
-
-// These are just to make it neater to use builtin HSV values in the keymap
-#define RED {HSV_RED}
-#define CORAL {HSV_CORAL}
-#define ORANGE {HSV_ORANGE}
-#define GOLDEN {HSV_GOLDENROD}
-#define GOLD {HSV_GOLD}
-#define YELLOW {HSV_YELLOW}
-#define CHART {HSV_CHARTREUSE}
-#define GREEN {HSV_GREEN}
-#define SPRING {HSV_SPRINGGREEN}
-#define TURQ {HSV_TURQUOISE}
-#define TEAL {HSV_TEAL}
-#define CYAN {HSV_CYAN}
-#define AZURE {HSV_AZURE}
-#define BLUE {HSV_BLUE}
-#define PURPLE {HSV_PURPLE}
-#define MAGENT {HSV_MAGENTA}
-#define PINK {HSV_PINK}
-
-//========================================================== CONFIGURABLE DEFAULTS ==========================================================
-#define RGB_DEFAULT_TIME_OUT 30
-#define RGB_FAST_MODE_TIME_OUT 3
-#define RGB_TIME_OUT_MAX 600
-#define RGB_TIME_OUT_MIN 10
-#define RGB_TIME_OUT_STEP 10
-
-extern rgb_config_t rgb_matrix_config;
-bool disable_layer_color;
-
-bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
-bool rgb_time_out_enable; // Idle LED toggle enable. If false then LED will not turn off after idle timeout.
-bool rgb_time_out_fast_mode_enabled; // Enable flag for RGB timeout fast mode
-bool rgb_time_out_user_value; // This holds the toggle value set by user with ROUT_TG. It's necessary as RGB_TOG changes timeout enable.
-uint16_t rgb_time_out_seconds; // Idle LED timeout value, in seconds not milliseconds
-uint16_t rgb_time_out_saved_seconds; // The saved user config for RGB timeout period
-led_flags_t rgb_time_out_saved_flag; // Store LED flag before timeout so it can be restored when LED is turned on again.
-
-enum layout_names {
- _KL=0, // Keys Layout: The main keyboard layout that has all the characters
- _FL, // Function Layout: The function key activated layout with default functions and some added ones
- _ML, // Mouse Layout: Mouse Keys and mouse movement
- _GL, // GIT Layout: GIT shortcuts and macros
- _VL, // VIM Layout: VIM shorcuts and macros
- _YL, // Yakuake Layout: Yakuake drop-down terminal shortcuts and macros
- _EL, // KDE Layout: Shortcuts for KDE desktop using default KDE shortcuts settings
-};
-
-enum tapdance_keycodes {
- TD_LGUI_ML = 0, // Tap dance key to switch to mouse layer _ML
- TD_APP_YL,
- TD_CTRL_TERM, // Tap dance key to open terminal on LCTRL double press
-};
-
-enum ctrl_keycodes {
- U_T_AUTO = SAFE_RANGE, // USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, // USB Toggle Automatic GCR control
- DBG_TOG, // DEBUG Toggle On / Off
- DBG_MTRX, // DEBUG Toggle Matrix Prints
- DBG_KBD, // DEBUG Toggle Keyboard Prints
- DBG_MOU, // DEBUG Toggle Mouse Prints
- MD_BOOT, // Restart into bootloader after hold timeout
- SEL_CPY, // Select Copy. Select the word cursor is pointed at and copy, using double mouse click and ctrl+c
- ROUT_TG, // Timeout Toggle. Toggle idle LED time out on or off
- ROUT_VI, // Timeout Value Increase. Increase idle time out before LED disabled
- ROUT_VD, // Timeout Value Decrease. Decrease idle time out before LED disabled
- ROUT_FM, // RGB timeout fast mode toggle
- COPY_ALL, // Copy all text using ctrl(a+c)
- TERMINAL, // CTRL+ALT+T
-};
-
-enum string_macro_keycodes {
- // The start of this enum should always be equal to end of ctrl_keycodes + 1
- G_INIT = TERMINAL + 1, // git init
- G_CLONE, // git clone
- G_CONF, // git config --global
- G_ADD, // git add
- G_DIFF, // git diff
- G_RESET, // git reset
- G_REBAS, // git rebase
- G_BRANH, // git branch
- G_CHECK, // git checkout
- G_MERGE, // git merge
- G_REMTE, // git remote add
- G_FETCH, // git fetch
- G_PULL, // git pull
- G_PUSH, // git push
- G_COMM, // git commit
- G_STAT, // git status
- G_LOG, // git log
-};
diff --git a/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.c b/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.c
index d97f45fde0..574587b2bf 100644
--- a/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.c
+++ b/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.c
@@ -16,7 +16,72 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "keymap.h"
+#include QMK_KEYBOARD_H
+
+#define MILLISECONDS_IN_SECOND 1000
+
+// These are just to make it neater to use builtin HSV values in the keymap
+// clang-format off
+#define WHITE {HSV_WHITE}
+#define RED {HSV_RED}
+#define CORAL {HSV_CORAL}
+#define ORANGE {HSV_ORANGE}
+#define GOLDEN {HSV_GOLDENROD}
+#define GOLD {HSV_GOLD}
+#define YELLOW {HSV_YELLOW}
+#define CHART {HSV_CHARTREUSE}
+#define GREEN {HSV_GREEN}
+#define SPRING {HSV_SPRINGGREEN}
+#define TURQ {HSV_TURQUOISE}
+#define TEAL {HSV_TEAL}
+#define CYAN {HSV_CYAN}
+#define AZURE {HSV_AZURE}
+#define BLUE {HSV_BLUE}
+#define PURPLE {HSV_PURPLE}
+#define MAGENT {HSV_MAGENTA}
+#define PINK {HSV_PINK}
+#define HSV_CREAM 24, 240, 255
+#define CREAM {HSV_CREAM}
+#define HSV_9B59B5 208, 192, 255
+#define M9B59B5 {HSV_9B59B5}
+// clang-format on
+
+#define LT_CAPS LT(_NL, KC_CAPS)
+#define _LAYER_ KC_TRNS
+
+//========================================================== CONFIGURABLE DEFAULTS ==========================================================
+extern bool g_suspend_state;
+extern rgb_config_t rgb_matrix_config;
+bool disable_layer_color;
+
+bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
+
+enum layout_names {
+ _KL = 0, // Keys Layout: The main keyboard layout that has all the characters
+ _NL, // Navigation Layout: Cursor keys and numpad inputs
+ _FL, // Function Layout: The function key activated layout with default functions and some added ones
+};
+
+enum ctrl_keycodes {
+ U_T_AUTO = SAFE_RANGE, // USB Extra Port Toggle Auto Detect / Always Active
+ U_T_AGCR, // USB Toggle Automatic GCR control
+ DBG_TOG, // DEBUG Toggle On / Off
+ DBG_MTRX, // DEBUG Toggle Matrix Prints
+ DBG_KBD, // DEBUG Toggle Keyboard Prints
+ DBG_MOU, // DEBUG Toggle Mouse Prints
+ MD_BOOT, // Restart into bootloader after hold timeout
+ MAS_CRM,
+ MAS_PRP,
+ MAS_RED,
+ MAS_GRN,
+ MAS_BLU,
+ MAS_CYN,
+ MAS_MGT,
+ MAS_YEL,
+ MAS_KEY,
+ MAS_WHT,
+};
+
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_KL] = LAYOUT(
diff --git a/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.h b/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.h
deleted file mode 100644
index e37f0d60f2..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/matthewrobo/keymap.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
-QMK Firmware Massdrop CTRL M-AS Keymap
-Copyright (C) 2020 matthewrobo
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// HID has not yet been implemented for this keyboard
-// #include "raw_hid.h"
-
-#define MILLISECONDS_IN_SECOND 1000
-
-// These are just to make it neater to use builtin HSV values in the keymap
-// clang-format off
-#define WHITE {HSV_WHITE}
-#define RED {HSV_RED}
-#define CORAL {HSV_CORAL}
-#define ORANGE {HSV_ORANGE}
-#define GOLDEN {HSV_GOLDENROD}
-#define GOLD {HSV_GOLD}
-#define YELLOW {HSV_YELLOW}
-#define CHART {HSV_CHARTREUSE}
-#define GREEN {HSV_GREEN}
-#define SPRING {HSV_SPRINGGREEN}
-#define TURQ {HSV_TURQUOISE}
-#define TEAL {HSV_TEAL}
-#define CYAN {HSV_CYAN}
-#define AZURE {HSV_AZURE}
-#define BLUE {HSV_BLUE}
-#define PURPLE {HSV_PURPLE}
-#define MAGENT {HSV_MAGENTA}
-#define PINK {HSV_PINK}
-#define HSV_CREAM 24, 240, 255
-#define CREAM {HSV_CREAM}
-#define HSV_9B59B5 208, 192, 255
-#define M9B59B5 {HSV_9B59B5}
-// clang-format on
-
-#define LT_CAPS LT(_NL, KC_CAPS)
-#define _LAYER_ KC_TRNS
-
-//========================================================== CONFIGURABLE DEFAULTS ==========================================================
-extern bool g_suspend_state;
-extern rgb_config_t rgb_matrix_config;
-bool disable_layer_color;
-
-bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
-
-enum layout_names {
- _KL = 0, // Keys Layout: The main keyboard layout that has all the characters
- _NL, // Navigation Layout: Cursor keys and numpad inputs
- _FL, // Function Layout: The function key activated layout with default functions and some added ones
-};
-
-enum ctrl_keycodes {
- U_T_AUTO = SAFE_RANGE, // USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, // USB Toggle Automatic GCR control
- DBG_TOG, // DEBUG Toggle On / Off
- DBG_MTRX, // DEBUG Toggle Matrix Prints
- DBG_KBD, // DEBUG Toggle Keyboard Prints
- DBG_MOU, // DEBUG Toggle Mouse Prints
- MD_BOOT, // Restart into bootloader after hold timeout
- MAS_CRM,
- MAS_PRP,
- MAS_RED,
- MAS_GRN,
- MAS_BLU,
- MAS_CYN,
- MAS_MGT,
- MAS_YEL,
- MAS_KEY,
- MAS_WHT,
-};
diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c
index ac41b17a96..5d95018dbc 100644
--- a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c
+++ b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c
@@ -14,7 +14,113 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "keymap.h"
+#include QMK_KEYBOARD_H
+#include <string.h>
+
+#define MILLISECONDS_IN_SECOND 1000
+
+// These are just to make it neater to use builtin HSV values in the keymap
+#define RED {HSV_RED}
+#define CORAL {HSV_CORAL}
+#define ORANGE {HSV_ORANGE}
+#define GOLDEN {HSV_GOLDENROD}
+#define GOLD {HSV_GOLD}
+#define YELLOW {HSV_YELLOW}
+#define CHART {HSV_CHARTREUSE}
+#define GREEN {HSV_GREEN}
+#define SPRING {HSV_SPRINGGREEN}
+#define TURQ {HSV_TURQUOISE}
+#define TEAL {HSV_TEAL}
+#define CYAN {HSV_CYAN}
+#define AZURE {HSV_AZURE}
+#define BLUE {HSV_BLUE}
+#define PURPLE {HSV_PURPLE}
+#define MAGENT {HSV_MAGENTA}
+#define PINK {HSV_PINK}
+
+//========================================================== CONFIGURABLE DEFAULTS ==========================================================
+#define RGB_DEFAULT_TIME_OUT 30
+#define RGB_FAST_MODE_TIME_OUT 3
+#define RGB_TIME_OUT_MAX 600
+#define RGB_TIME_OUT_MIN 10
+#define RGB_TIME_OUT_STEP 10
+
+extern rgb_config_t rgb_matrix_config;
+bool disable_layer_color;
+
+bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
+bool rgb_time_out_enable; // Idle LED toggle enable. If false then LED will not turn off after idle timeout.
+bool rgb_time_out_fast_mode_enabled; // Enable flag for RGB timeout fast mode
+bool rgb_time_out_user_value; // This holds the toggle value set by user with ROUT_TG. It's necessary as RGB_TOG changes timeout enable.
+uint16_t rgb_time_out_seconds; // Idle LED timeout value, in seconds not milliseconds
+uint16_t rgb_time_out_saved_seconds; // The saved user config for RGB timeout period
+led_flags_t rgb_time_out_saved_flag; // Store LED flag before timeout so it can be restored when LED is turned on again.
+
+enum layout_names {
+ _KL=0, // Keys Layout: The main keyboard layout that has all the characters
+ _FL, // Function Layout: The function key activated layout with default functions and some added ones
+ _GL, // GIT Layout: GIT shortcuts and macros
+ _NUMPAD, // Numpad Layout: Adds a numpad to the keys
+};
+
+// Tap Dance keycodes
+enum td_keycodes {
+ TD_FN_SWITCH = 0
+};
+
+// Define a type containing as many tapdance states as you need
+typedef enum {
+ TD_NONE,
+ TD_UNKNOWN,
+ TD_SINGLE_HOLD,
+ TD_DOUBLE_HOLD
+} td_state_t;
+
+typedef struct {
+ bool is_press_action;
+ td_state_t state;
+} td_tap_t;
+
+// Declare your tapdance functions:
+
+// Function to determine the current tapdance state
+td_state_t cur_dance(tap_dance_state_t *state);
+
+// `finished` and `reset` functions for each tapdance keycode
+void fn_tap_finished(tap_dance_state_t *state, void *user_data);
+void fn_tap_reset(tap_dance_state_t *state, void *user_data);
+
+enum ctrl_keycodes {
+ MD_BOOT = SAFE_RANGE, // Restart into bootloader after hold timeout
+ ROUT_TG, // Timeout Toggle. Toggle idle LED time out on or off
+ ROUT_VI, // Timeout Value Increase. Increase idle time out before LED disabled
+ ROUT_VD, // Timeout Value Decrease. Decrease idle time out before LED disabled
+ ROUT_FM, // RGB timeout fast mode toggle
+ TOG_NPD, // Toggle Numpad On/Off
+ COPY_ALL, // Copy all text using ctrl(a+c)
+};
+
+enum string_macro_keycodes {
+ // The start of this enum should always be equal to end of ctrl_keycodes + 1
+ G_INIT = COPY_ALL + 1, // git init
+ G_CLONE, // git clone
+ G_ADD, // git add
+ G_DIFF, // git diff
+ G_RESET, // git reset --soft
+ G_BRANH, // git branch list
+ G_CHECK, // git checkout
+ G_REMTE, // git remote add
+ G_FETCH, // git fetch
+ G_PULL, // git pull
+ G_PUPST, // git pull upstream
+ G_PUSH, // git push
+ G_PSORG, // git push -u origin
+ G_PSFWL, // git push --force-with-lease
+ G_COMM, // git commit
+ G_COMSG, // git commit -m ": [TFS-]"
+ G_STAT, // git status
+ G_LOG, // git log
+};
static uint16_t idle_timer; // Idle LED timeout timer
static uint8_t idle_second_counter; // Idle LED seconds counter, counts seconds not milliseconds
diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h
deleted file mode 100644
index 2dae7131e4..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Copyright 2022 Daniel Weeks (@xanimos)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include <print.h>
-#include <string.h>
-
-#define MILLISECONDS_IN_SECOND 1000
-
-// These are just to make it neater to use builtin HSV values in the keymap
-#define RED {HSV_RED}
-#define CORAL {HSV_CORAL}
-#define ORANGE {HSV_ORANGE}
-#define GOLDEN {HSV_GOLDENROD}
-#define GOLD {HSV_GOLD}
-#define YELLOW {HSV_YELLOW}
-#define CHART {HSV_CHARTREUSE}
-#define GREEN {HSV_GREEN}
-#define SPRING {HSV_SPRINGGREEN}
-#define TURQ {HSV_TURQUOISE}
-#define TEAL {HSV_TEAL}
-#define CYAN {HSV_CYAN}
-#define AZURE {HSV_AZURE}
-#define BLUE {HSV_BLUE}
-#define PURPLE {HSV_PURPLE}
-#define MAGENT {HSV_MAGENTA}
-#define PINK {HSV_PINK}
-
-//========================================================== CONFIGURABLE DEFAULTS ==========================================================
-#define RGB_DEFAULT_TIME_OUT 30
-#define RGB_FAST_MODE_TIME_OUT 3
-#define RGB_TIME_OUT_MAX 600
-#define RGB_TIME_OUT_MIN 10
-#define RGB_TIME_OUT_STEP 10
-
-extern rgb_config_t rgb_matrix_config;
-bool disable_layer_color;
-
-bool rgb_enabled_flag; // Current LED state flag. If false then LED is off.
-bool rgb_time_out_enable; // Idle LED toggle enable. If false then LED will not turn off after idle timeout.
-bool rgb_time_out_fast_mode_enabled; // Enable flag for RGB timeout fast mode
-bool rgb_time_out_user_value; // This holds the toggle value set by user with ROUT_TG. It's necessary as RGB_TOG changes timeout enable.
-uint16_t rgb_time_out_seconds; // Idle LED timeout value, in seconds not milliseconds
-uint16_t rgb_time_out_saved_seconds; // The saved user config for RGB timeout period
-led_flags_t rgb_time_out_saved_flag; // Store LED flag before timeout so it can be restored when LED is turned on again.
-
-enum layout_names {
- _KL=0, // Keys Layout: The main keyboard layout that has all the characters
- _FL, // Function Layout: The function key activated layout with default functions and some added ones
- _GL, // GIT Layout: GIT shortcuts and macros
- _NUMPAD, // Numpad Layout: Adds a numpad to the keys
-};
-
-// Tap Dance keycodes
-enum td_keycodes {
- TD_FN_SWITCH = 0
-};
-
-// Define a type containing as many tapdance states as you need
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_DOUBLE_HOLD
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Declare your tapdance functions:
-
-// Function to determine the current tapdance state
-td_state_t cur_dance(tap_dance_state_t *state);
-
-// `finished` and `reset` functions for each tapdance keycode
-void fn_tap_finished(tap_dance_state_t *state, void *user_data);
-void fn_tap_reset(tap_dance_state_t *state, void *user_data);
-
-enum ctrl_keycodes {
- MD_BOOT = SAFE_RANGE, // Restart into bootloader after hold timeout
- ROUT_TG, // Timeout Toggle. Toggle idle LED time out on or off
- ROUT_VI, // Timeout Value Increase. Increase idle time out before LED disabled
- ROUT_VD, // Timeout Value Decrease. Decrease idle time out before LED disabled
- ROUT_FM, // RGB timeout fast mode toggle
- TOG_NPD, // Toggle Numpad On/Off
- COPY_ALL, // Copy all text using ctrl(a+c)
-};
-
-enum string_macro_keycodes {
- // The start of this enum should always be equal to end of ctrl_keycodes + 1
- G_INIT = COPY_ALL + 1, // git init
- G_CLONE, // git clone
- G_ADD, // git add
- G_DIFF, // git diff
- G_RESET, // git reset --soft
- G_BRANH, // git branch list
- G_CHECK, // git checkout
- G_REMTE, // git remote add
- G_FETCH, // git fetch
- G_PULL, // git pull
- G_PUPST, // git pull upstream
- G_PUSH, // git push
- G_PSORG, // git push -u origin
- G_PSFWL, // git push --force-with-lease
- G_COMM, // git commit
- G_COMSG, // git commit -m ": [TFS-]"
- G_STAT, // git status
- G_LOG, // git log
-};
-
-
-
-