1b8cb95f2e
* Basic functionality to synchronize the strings and enums using C preprocessor macros. * Updated all the custom convenience macros to work. * Removed some duplicate update_tri_layer calls. * Simplified the convenience accelerator macros for synchronizing enums and strings by removing the short enum names. * Updated the CUSTOM_MACROS macro to use SS_LCTL instead of SS_LCTRL. * Fixed a bug where the right side of the convenience layer in the Iris keymap was incorrectly listed twice. * Removed the tenkey from the convenience layer. Added Windows 10 virtual desktop shortcuts to the convenience layer. * Fixed a bug where the macro range was not set correctly. * Added sigil values for the keycode enum so that additions to the sync macros will not require changes to the process_record_user ranges. * Hacked send_string_P to work with ChibiOS boards. * Switched to using I2C for the Iris keyboard. * Finished a comment. * Updated comments to explain that for non-AVR MCUs, the PROGMEM macro doesn't do anything. * Updated the synchronization macros to use the more descriptive "NAME" instead of "CALL". Moved the Control-Alt-Delete chord macro to the synchronization macro. * Simplified the custom macros by consolidating the macros into a context change macro instead of using alt-tab and minimize macros. * Fixed a formatting issue where several tabs were used instead of 4 spaces. * Added more comments to explain the synchronization macros. * Simplified the PARAMS macro, since any parameters could be passed with a space by the declarer instead. * Consolidated the synchronization macros into a single list. Simplified the synchronization mechanism. * Removed the overloading macro, since it is no longer needed. * Updated the convenience layer comments to reflect the changes made. * Renamed the git_macros pointer table to custom_macros, since it no longer solely consists of git macros. * Clarified that the send_string_P function's use of pgm_read_byte is different for AVR and non-AVR compilation targets.
30 lines
483 B
C
30 lines
483 B
C
#pragma once
|
|
|
|
#include "quantum.h"
|
|
#include "defines.h"
|
|
|
|
enum custom_keycodes {
|
|
// Layer Keycodes
|
|
LOWER = SAFE_RANGE,
|
|
RAISE,
|
|
|
|
|
|
MC_first,
|
|
|
|
// Macro Keycodes
|
|
CUSTOM_MACROS(CUSTOM_ENUM, DROP, COMMA_DELIM),
|
|
|
|
MC_last
|
|
};
|
|
|
|
enum custom_layers {
|
|
_QW = 0, // Qwerty
|
|
_RS, // Raise
|
|
_LW, // Lower
|
|
_MS, // Mouse
|
|
_GT, // Git
|
|
_CN, // Convenience
|
|
_GW, // Guild Wars 2
|
|
_CS // Counter-Strike: Global Offensive
|
|
};
|