summaryrefslogtreecommitdiff
path: root/users/manna-harbour_miryoku/manna-harbour_miryoku.c
diff options
context:
space:
mode:
Diffstat (limited to 'users/manna-harbour_miryoku/manna-harbour_miryoku.c')
-rw-r--r--users/manna-harbour_miryoku/manna-harbour_miryoku.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/users/manna-harbour_miryoku/manna-harbour_miryoku.c b/users/manna-harbour_miryoku/manna-harbour_miryoku.c
index 42660a6a5b..5de5d9b129 100644
--- a/users/manna-harbour_miryoku/manna-harbour_miryoku.c
+++ b/users/manna-harbour_miryoku/manna-harbour_miryoku.c
@@ -7,12 +7,60 @@
#include "manna-harbour_miryoku.h"
+
+// Additional Features double tap guard
+
+enum {
+ U_TD_BOOT,
+#define MIRYOKU_X(LAYER, STRING) U_TD_U_##LAYER,
+MIRYOKU_LAYER_LIST
+#undef MIRYOKU_X
+};
+
+void u_td_fn_boot(qk_tap_dance_state_t *state, void *user_data) { \
+ if (state->count == 2) {
+ reset_keyboard();
+ }
+}
+
+#define MIRYOKU_X(LAYER, STRING) \
+void u_td_fn_U_##LAYER(qk_tap_dance_state_t *state, void *user_data) { \
+ if (state->count == 2) { \
+ default_layer_set((layer_state_t)1 << U_##LAYER); \
+ } \
+}
+MIRYOKU_LAYER_LIST
+#undef MIRYOKU_X
+
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [U_TD_BOOT] = ACTION_TAP_DANCE_FN(u_td_fn_boot),
+#define MIRYOKU_X(LAYER, STRING) [U_TD_U_##LAYER] = ACTION_TAP_DANCE_FN(u_td_fn_U_##LAYER),
+MIRYOKU_LAYER_LIST
+#undef MIRYOKU_X
+};
+
+
+// keymap
+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#define MIRYOKU_X(LAYER, STRING) [U_##LAYER] = U_MACRO_VA_ARGS(MIRYOKU_LAYERMAPPING_##LAYER, MIRYOKU_LAYER_##LAYER),
MIRYOKU_LAYER_LIST
#undef MIRYOKU_X
};
+
+// shift functions
+
+const key_override_t capsword_key_override = ko_make_basic(MOD_MASK_SHIFT, CW_TOGG, KC_CAPS);
+
+const key_override_t **key_overrides = (const key_override_t *[]){
+ &capsword_key_override,
+ NULL
+};
+
+
+// thumb combos
+
#if defined (MIRYOKU_KLUDGE_THUMBCOMBOS)
const uint16_t PROGMEM thumbcombos_base_right[] = {LT(U_SYM, KC_ENT), LT(U_NUM, KC_BSPC), COMBO_END};
const uint16_t PROGMEM thumbcombos_base_left[] = {LT(U_NAV, KC_SPC), LT(U_MOUSE, KC_TAB), COMBO_END};