linting and keycode generation

This commit is contained in:
Alabastard-64 2025-05-23 16:11:26 -06:00
parent ccb168aad8
commit 69a029149a
2 changed files with 21 additions and 30 deletions

View File

@ -33,12 +33,12 @@ typedef struct {
} keypos_t;
typedef enum keyevent_type_t {
TICK_EVENT = 0,
KEY_EVENT = 1,
ENCODER_CW_EVENT = 2,
ENCODER_CCW_EVENT = 3,
COMBO_EVENT = 4,
DIP_SWITCH_ON_EVENT = 5,
TICK_EVENT = 0,
KEY_EVENT = 1,
ENCODER_CW_EVENT = 2,
ENCODER_CCW_EVENT = 3,
COMBO_EVENT = 4,
DIP_SWITCH_ON_EVENT = 5,
DIP_SWITCH_OFF_EVENT = 6,
POINTING_MODES_EVENT = 7,
} keyevent_type_t;
@ -119,7 +119,7 @@ static inline bool IS_POINTINGEVENT(const keyevent_t event) {
#ifdef POINTING_DEVICE_MODES_ENABLE
/* Pointing mode events */
# define MAKE_POINTING_MODES_EVENT(_map_id, _dir, press) MAKE_EVENT(KEYLOC_POINTING_MODES, ((pointing_modes_map_location_t){.map_id = (_map_id), .dir = (_dir)}.raw), (press), POINTING_MODES_EVENT)
#endif // POINTING_DEVICE_MODES_ENABLE
#endif // POINTING_DEVICE_MODES_ENABLE
/* it runs once at early stage of startup before keyboard_init. */
void keyboard_setup(void);

View File

@ -1,4 +1,4 @@
/* Copyright 2025 Alabastard (@Alabastard-64)
/* Copyright 2025 Alabastard (@Alabastard-64)
*
* 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
@ -88,25 +88,16 @@
#endif
/* ----------Error Checking -------------------------------------------------------------------------------------- */
_Static_assert(
(POINTING_MODES_DEFAULT_DIVISOR > MOUSE_REPORT_XY_MIN && POINTING_MODES_DEFAULT_DIVISOR <= MOUSE_REPORT_XY_MAX),
"POINTING_MODES_DEFAULT_DIVISOR (" STR(POINTING_MODES_DEFAULT_DIVISOR) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX)
);
_Static_assert(
(POINTING_MODES_DRAG_DIVISOR > MOUSE_REPORT_XY_MIN && POINTING_MODES_DRAG_DIVISOR <= MOUSE_REPORT_XY_MAX),
"POINTING_MODES_DRAG_DIVISOR (" STR(POINTING_MODES_DRAG_DIVISOR) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX)
);
_Static_assert(
(POINTING_MODES_PRECISION_MIN > MOUSE_REPORT_XY_MIN && POINTING_MODES_PRECISION_MIN <= MOUSE_REPORT_XY_MAX),
"POINTING_MODES_PRECISION_MIN (" STR(POINTING_MODES_PRECISION_MIN) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX)
);
_Static_assert((POINTING_MODES_DEFAULT_DIVISOR > MOUSE_REPORT_XY_MIN && POINTING_MODES_DEFAULT_DIVISOR <= MOUSE_REPORT_XY_MAX), "POINTING_MODES_DEFAULT_DIVISOR (" STR(POINTING_MODES_DEFAULT_DIVISOR) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX));
_Static_assert((POINTING_MODES_DRAG_DIVISOR > MOUSE_REPORT_XY_MIN && POINTING_MODES_DRAG_DIVISOR <= MOUSE_REPORT_XY_MAX), "POINTING_MODES_DRAG_DIVISOR (" STR(POINTING_MODES_DRAG_DIVISOR) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX));
_Static_assert((POINTING_MODES_PRECISION_MIN > MOUSE_REPORT_XY_MIN && POINTING_MODES_PRECISION_MIN <= MOUSE_REPORT_XY_MAX), "POINTING_MODES_PRECISION_MIN (" STR(POINTING_MODES_PRECISION_MIN) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX));
_Static_assert((POINTING_MODES_PRECISION_MAX > MOUSE_REPORT_XY_MIN && POINTING_MODES_PRECISION_MAX <= MOUSE_REPORT_XY_MAX), "POINTING_MODES_PRECISION_MAX (" STR(POINTING_MODES_PRECISION_MAX) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX));
_Static_assert((POINTING_MODES_PRECISION_STEP > MOUSE_REPORT_XY_MIN && POINTING_MODES_PRECISION_STEP <= MOUSE_REPORT_XY_MAX), "POINTING_MODES_PRECISION_STEP (" STR(POINTING_MODES_PRECISION_STEP) ") must be greater than " STR(MOUSE_REPORT_XY_MIN) " and less than or equal to " STR(MOUSE_REPORT_XY_MAX));
_Static_assert(POINTING_MODES_NUM_DEVICES > 0, "POINTING_MODES_NUM_DEVICES must be at least 1");
#if defined(SPLIT_POINTING_ENABLE) && defined(POINTING_DEVICE_COMBINED) || defined(POINTING_MODES_SINGLE_CONTROL)
_Static_assert(POINTING_MODES_NUM_DEVICES > 1, "POINTING_MODES_NUM_DEVICES must be at least 2 with SPLIT_POINTING_ENABLE & POINTING_DEVICE_COMBINED or POINTING_MODES_SINGLE_CONTROL defined");
_Static_assert(POINTING_MODES_NUM_DEVICES > 1, "POINTING_MODES_NUM_DEVICES must be at least 2 with SPLIT_POINTING_ENABLE & POINTING_DEVICE_COMBINED or POINTING_MODES_SINGLE_CONTROL defined");
#endif
/* ----------Macros----------------------------------------------------------------------------------------------- */
@ -134,20 +125,20 @@ enum pointing_modes_directions {
PMD_DNLT = 0x05, // [0101] 05
PMD_UPLT = 0x06, // [0110] 06
PMD_DNRT = 0x09, // [1001] 09
PMD_UPRT = 0x0A, // [1010] 10
PMD_UPRT = 0x0A, // [1010] 10
};
#ifdef POINTING_MODES_8WAY_MAP_ENABLE
enum pointing_modes_8_key_map {
PMK_UPLEFT = 0x00,
PMK_UP = 0x01,
PMK_UPRIGHT = 0x02,
PMK_LEFT = 0x03,
PMK_RIGHT = 0x04,
PMK_DOWNLEFT = 0x05,
PMK_DOWN = 0x06,
PMK_UPLEFT = 0x00,
PMK_UP = 0x01,
PMK_UPRIGHT = 0x02,
PMK_LEFT = 0x03,
PMK_RIGHT = 0x04,
PMK_DOWNLEFT = 0x05,
PMK_DOWN = 0x06,
PMK_DOWNRIGHT = 0x07,
PMK_NONE = 0x08,
PMK_NONE = 0x08,
};
#else