summaryrefslogtreecommitdiffstats
path: root/users/konstantin/konstantin.h
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2019-03-06 00:07:13 +0100
committerGitHub <noreply@github.com>2019-03-06 00:07:13 +0100
commitedef1f93960352bcc97ac75653867e23e3db45fc (patch)
tree197333e503ff88f68df0ddf93af27899f90e5714 /users/konstantin/konstantin.h
parent2e8e465423a92c97273431f8cf65c7333f2d98e7 (diff)
parentbe1d5c66093faa8885855a2d133ef20a408233bd (diff)
downloadqmk_firmware-edef1f93960352bcc97ac75653867e23e3db45fc.tar.gz
qmk_firmware-edef1f93960352bcc97ac75653867e23e3db45fc.tar.xz
Update personal userspace and keymaps + improve custom functionality (#5289)
* Change how desktop commands work * Add DST_MOD_MASK as a config option * DST_RMV → DST_REM * Add melody96:konstantin keymap * Update custom SEND_STRING * Move feature flags from userspace into keyboard rules * Use "Vo-", "Vo+" instead of "VoD", "VoU" in keymap comments * Add RGB controls and numpad Unicode to Melody96 keymap * Add RGB_SET keycode to Melody96 and RGB files to userspace * Generate UNICODE and UNICODEMAP constants using macros * Avoid collisions with X_* send string constants * Use two spaces before inline comments * Add _keymap versions of other custom Quantum functions Not added: eeconfig_update_keymap, eeconfig_read_keymap * Switch to UNICODEMAP in keyboard rules * Make toggle_numpad a nested function in process_record_user * Set Melody96 underglow color to Godspeed blue on EEPROM reset * Remove most _keymap and _user definitions in userspace Some keyboards misuse _user functions by defining them in the base files instead of the corresponding _kb functions (especially led_set_user and matrix_init_user). Until this is fixed (#5148), I've removed definitions in my userspace that could cause linking collisions. * Update GODSPEED_BLUE values and RGB mode keys * Add GODSPEED_YELLOW color * Set preferred intervals for rgblight effects * Update tap dance function names * Replace td_lshift_fn with generic td_mod_layer, add TD_RCTL_FN Move TD_FN_RCTL after TD_RCTL_FN * Replace td_fn_rctrl with generic td_layer_mod * Add blank lines, prefer explicit initialization * ACTION_TAP_DANCE_DOUBLE_MODS → ACTION_TAP_DANCE_DOUBLE_MOD * Update Godspeed colors * Add media controls to Melody96 keymap * Add SysRq, Break combos and other keys to Melody96 keymap
Diffstat (limited to 'users/konstantin/konstantin.h')
-rw-r--r--users/konstantin/konstantin.h33
1 files changed, 27 insertions, 6 deletions
diff --git a/users/konstantin/konstantin.h b/users/konstantin/konstantin.h
index f67f9f1b7..0639b93a6 100644
--- a/users/konstantin/konstantin.h
+++ b/users/konstantin/konstantin.h
@@ -1,10 +1,13 @@
#pragma once
#include "quantum.h"
+#if defined(RGBLIGHT_ENABLE) || defined(RGBMATRIX_ENABLE)
+ #include "rgb.h"
+#endif
#ifdef TAP_DANCE_ENABLE
#include "tap_dance.h"
#endif
-#ifdef UNICODE_ENABLE
+#if defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE)
#include "unicode.h"
#endif
@@ -14,6 +17,10 @@
#define FN_FNLK TT(L_FN)
#endif
+#define KC_SYSR LALT(KC_PSCR)
+#undef KC_BRK
+#define KC_BRK LCTL(KC_PAUS)
+
#define MV_UP LCTL(KC_UP)
#define MV_DOWN LCTL(KC_DOWN)
#define MV_LEFT LCTL(KC_LEFT)
@@ -23,20 +30,30 @@
#define PRV_TAB LCTL(KC_PGUP)
#define NXT_TAB LCTL(KC_PGDN)
+#define DST_ADD LCTL(LGUI(KC_D))
+#define DST_REM LCTL(LGUI(KC_F4))
+#define DST_PRV LCTL(LGUI(KC_LEFT))
+#define DST_NXT LCTL(LGUI(KC_RGHT))
+#ifndef DST_MOD_MASK
+ #define DST_MOD_MASK MOD_MASK_CTRL
+#endif
+
#define LCT_CPS LCTL_T(KC_CAPS)
#ifdef SEND_STRING_CLEAN
#undef SEND_STRING
- #define SEND_STRING(...) { \
- uint8_t ss_mods = get_mods(); \
- clear_mods(); \
- send_string_P(PSTR(__VA_ARGS__)); \
- set_mods(ss_mods); \
+ #define SEND_STRING(string) { \
+ uint8_t ss_mods = get_mods(); \
+ clear_mods(); \
+ send_string_P(PSTR(string)); \
+ set_mods(ss_mods); \
}
#endif
enum keycodes_user {
CLEAR = SAFE_RANGE,
+ DST_P_R,
+ DST_N_A,
#ifdef LAYER_NUMPAD
NUMPAD,
#endif
@@ -56,5 +73,9 @@ enum layers_user {
L_RANGE_KEYMAP,
};
+void keyboard_pre_init_keymap(void);
+void eeconfig_init_keymap(void);
+void keyboard_post_init_keymap(void);
+
bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
uint32_t layer_state_set_keymap(uint32_t state);