qmk-firmware/users/kuchosauronad0/combo.c

28 lines
486 B
C
Raw Permalink Normal View History

[Keymap] Update to userspace kuchosauroand0 (#6596) * added combos * minor adjustments, added combos * Add second encoder, add modifiers to encoders Added a skeleton for the possibily having a second encoder. Added 9 modifiers for the first rotary encoder: - None General navigation. Page up/down - SHIFT Fast navigation. Home/end - CTRL Vertical navigation. Up/down - CTRL+SHIFT Horizontal navigation. Left/right - ALT Audio volume control. - GUI Browser navigation(windows). Forward/backward - ALT+SHIFT Form navigation. Tab up/down - ALT+CTRL Media control. (Play|pause)/mute - HYPER Media navigation. Next/prev track Key codes are stored in `uint16_t encoder_actions[2][9]` * Add second encoder, add modifiers to encoders Added a skeleton for the possibily having a second encoder. Added 9 modifiers for the first rotary encoder: - None General navigation. Page up/down - SHIFT Fast navigation. Home/end - CTRL Vertical navigation. Up/down - CTRL+SHIFT Horizontal navigation. Left/right - ALT Audio volume control. - GUI Browser navigation(windows). Forward/backward - ALT+SHIFT Form navigation. Tab up/down - ALT+CTRL Media control. (Play|pause)/mute - HYPER Media navigation. Next/prev track Key codes are stored in `uint16_t encoder_actions[2][9]` * Clean up; added combos Combos: - CV: Copy - XC: Cut - ZV: Paste - QP: KC_SLEEP * Fix LEADER_DICTIONARY to be more useful * Add documentation * Minor fixes * Raise TAPPING_TERM * testing * Rearrange modifiers * Fix kc being stored in uint8 instead of uint16 * Update documentation * Clean up * Remove excess comments * Put encoder_actions in progmem
2019-08-24 16:01:12 +00:00
#include "combo.h"
void process_combo_event(uint8_t combo_index, bool pressed){
switch(combo_index) {
case ZV_COPY:
if (pressed) {
tap_code16(LCTL(KC_C));
}
break;
case XV_CUT:
if (pressed) {
tap_code16(LCTL(KC_X));
}
break;
case CV_PASTE:
if (pressed) {
tap_code16(LCTL(KC_V));
}
break;
case QP_SLEEP:
if (pressed) {
tap_code16(KC_SYSTEM_SLEEP);
}
break;
}
}