main
  1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
  2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
  3 * Copyright 2020 Christopher Courtney, aka Drashna Jael're  (@drashna) <drashna@live.com>
  4 *
  5 * This program is free software: you can redistribute it and/or modify
  6 * it under the terms of the GNU General Public License as published by
  7 * the Free Software Foundation, either version 2 of the License, or
  8 * (at your option) any later version.
  9 *
 10 * This program is distributed in the hope that it will be useful,
 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 13 * GNU General Public License for more details.
 14 *
 15 * You should have received a copy of the GNU General Public License
 16 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 17 */
 18
 19#pragma once
 20
 21#define ORYX_CONFIGURATOR
 22
 23#define SFTLLCK LSFT_T(KC_0)
 24
 25#define TAPPING_TERM 280
 26#define QUICK_TAP_TERM 100 // 175
 27#define FLOW_TAP_TERM 150
 28#define COMBO_TERM 40
 29#define CHORDAL_HOLD
 30
 31// Numword configuration
 32#define NUMWORD_TIMEOUT 5000  // Time in ms before numword auto-disables (optional)
 33
 34// Leader key configuration
 35#define LEADER_TIMEOUT 300  // Time in ms to wait for next key in leader sequence
 36#define LEADER_PER_KEY_TIMING  // Each key in sequence gets its own timeout
 37
 38/* #define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD 1 */
 39/* #define CAPS_WORD_INVERT_ON_SHIFT 1 */
 40
 41// Left-hand home row mods
 42#define HM_GUI_A LGUI_T(KC_A) // Qwerty and Bépo
 43#define HM_ALT_S LALT_T(KC_S) // Qwerty
 44#define HM_ALT_U LALT_T(KC_U) // Bépo
 45#define HM_SFT_D LSFT_T(KC_D) // Qwerty
 46#define HM_SFT_I LSFT_T(KC_I) // Bépo
 47#define HM_CTL_F LCTL_T(KC_F) // Qwerty
 48#define HM_CTL_E LCTL_T(KC_E) // Bépo
 49#define HM_HYP_G HYPR_T(KC_G) // Qwerty
 50#define HM_HYP_COMM HYPR_T(KC_COMM) // Bépo
 51
 52// Right-hand home row mods
 53#define HM_HYP_H HYPR_T(KC_H) // Qwerty
 54#define HM_HYP_C HYPR_T(KC_C) // Bépo
 55#define HM_CTL_J RCTL_T(KC_J) // Qwerty
 56#define HM_CTL_T RCTL_T(KC_T) // Bépo
 57#define HM_SFT_K RSFT_T(KC_K) // Qwerty
 58#define HM_SFT_S RSFT_T(KC_S) // Bépo
 59#define HM_ALT_L LALT_T(KC_L) // Qwerty
 60#define HM_ALT_R LALT_T(KC_R) // Bépo
 61#define HM_GUI_SCLN RGUI_T(KC_SCLN) // Qwerty
 62#define HM_GUI_N RGUI_T(KC_N) // Bépo
 63
 64// French accents
 65#define FR_QUOT_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_QUOTE) SS_DELAY(50) SS_TAP(X_SPACE)
 66#define FR_DQUO_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_QUOTE)) SS_DELAY(50) SS_TAP(X_SPACE)
 67#define FR_GRAVE_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_TAP(X_SPACE)
 68#define FR_CIRC_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_SPACE)
 69#define FR_TILD_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_GRAVE)) SS_DELAY(50) SS_TAP(X_SPACE)
 70#define FR_E_AIGU_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_QUOTE) SS_DELAY(50) SS_TAP(X_E)           // é
 71#define FR_E_AIGU_CAPS_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_QUOTE) SS_DELAY(50) SS_RSFT(SS_TAP(X_E))        // É
 72#define FR_E_GRAVE_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_TAP(X_E)          // è
 73#define FR_E_GRAVE_CAPS_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_RSFT(SS_TAP(X_E)) // È
 74#define FR_A_GRAVE_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_TAP(X_A)          // à
 75#define FR_A_GRAVE_CAPS_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_RSFT(SS_TAP(X_A))          // À
 76#define FR_U_GRAVE_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_GRAVE) SS_DELAY(50) SS_TAP(X_U)          // ù
 77#define FR_C_CEDILLE_M SS_TAP(X_RALT) SS_DELAY(50) SS_TAP(X_COMMA) SS_DELAY(50) SS_TAP(X_C)        // ç
 78#define FR_A_CIRONFL_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_A)   // â
 79#define FR_E_CIRONFL_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_E)   // ê
 80#define FR_I_CIRONFL_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_I)   // î
 81#define FR_O_CIRONFL_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_O)   // ô
 82#define FR_U_CIRONFL_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_6)) SS_DELAY(50) SS_TAP(X_U)   // û
 83#define FR_E_TREMA_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_QUOTE)) SS_DELAY(50) SS_TAP(X_E) // ë
 84#define FR_I_TREMA_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_QUOTE)) SS_DELAY(50) SS_TAP(X_I) // ï
 85#define FR_3_EURO_M SS_TAP(X_RALT) SS_DELAY(50) SS_RSFT(SS_TAP(X_C)) SS_DELAY(50) SS_TAP(X_EQL)    // €
 86
 87
 88// Mouse key settings (accelerated mode)
 89// Must #undef first — board info_config.h sets defaults
 90#undef MOUSEKEY_DELAY
 91#define MOUSEKEY_DELAY 0              // No startup delay (board default: 10)
 92#undef MOUSEKEY_INTERVAL
 93#define MOUSEKEY_INTERVAL 16          // ~60fps movement updates (board default: 20)
 94#undef MOUSEKEY_MAX_SPEED
 95#define MOUSEKEY_MAX_SPEED 7          // Max cursor speed (board default: 10, lower = more control)
 96#undef MOUSEKEY_TIME_TO_MAX
 97#define MOUSEKEY_TIME_TO_MAX 40       // Frames to reach max speed (board default: 60, lower = faster ramp)
 98#undef MOUSEKEY_WHEEL_DELAY
 99#define MOUSEKEY_WHEEL_DELAY 0        // No scroll startup delay (board default: 400)
100#undef MOUSEKEY_WHEEL_INTERVAL
101#define MOUSEKEY_WHEEL_INTERVAL 80    // Scroll update interval (board default: 80)
102#undef MOUSEKEY_WHEEL_MAX_SPEED
103#define MOUSEKEY_WHEEL_MAX_SPEED 8    // Max scroll speed (board default: 8)
104#undef MOUSEKEY_WHEEL_TIME_TO_MAX
105#define MOUSEKEY_WHEEL_TIME_TO_MAX 40 // Frames to reach max scroll (board default: 40)
106
107#undef ENABLE_RGB_MATRIX_ALPHAS_MODS
108#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
109#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
110#undef ENABLE_RGB_MATRIX_BREATHING
111#undef ENABLE_RGB_MATRIX_BAND_SAT
112#undef ENABLE_RGB_MATRIX_BAND_VAL
113#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
114#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
115#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
116#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
117#undef ENABLE_RGB_MATRIX_CYCLE_ALL
118#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
119#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
120#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
121#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
122#undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
123#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
124#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
125#undef ENABLE_RGB_MATRIX_DUAL_BEACON
126#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON
127#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
128#undef ENABLE_RGB_MATRIX_FLOWER_BLOOMING
129#undef ENABLE_RGB_MATRIX_RAINDROPS
130#undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
131#undef ENABLE_RGB_MATRIX_HUE_BREATHING
132#undef ENABLE_RGB_MATRIX_HUE_PENDULUM
133#undef ENABLE_RGB_MATRIX_HUE_WAVE
134#undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
135#undef ENABLE_RGB_MATRIX_PIXEL_FLOW
136#undef ENABLE_RGB_MATRIX_PIXEL_RAIN
137#undef ENABLE_RGB_MATRIX_TYPING_HEATMAP
138#undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
139#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
140#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE
141#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
142#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
143#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
144#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
145#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
146#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
147#undef ENABLE_RGB_MATRIX_SPLASH
148#undef ENABLE_RGB_MATRIX_MULTISPLASH
149#undef ENABLE_RGB_MATRIX_SOLID_SPLASH
150#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
151#undef ENABLE_RGB_MATRIX_STARLIGHT
152#undef ENABLE_RGB_MATRIX_STARLIGHT_DUAL_HUE
153#undef ENABLE_RGB_MATRIX_STARLIGHT_DUAL_SAT
154#undef ENABLE_RGB_MATRIX_RIVERFLOW