aboutsummaryrefslogtreecommitdiff
path: root/users/yet-another-developer/tap_dances.c
diff options
context:
space:
mode:
authorYet Another Developer <50936645+yet-another-developer@users.noreply.github.com>2019-10-21 02:07:57 +0800
committerDrashna Jaelre <drashna@live.com>2019-10-20 11:07:56 -0700
commit3d53ea439c277e49cd4149a6caea727304f41ace (patch)
tree1d782a97be651ff911342cbec19cdb18ceeeda62 /users/yet-another-developer/tap_dances.c
parentf64d9b06215bb08d7f77aeba126c0804fffd0064 (diff)
downloadqmk_firmware-3d53ea439c277e49cd4149a6caea727304f41ace.tar.gz
qmk_firmware-3d53ea439c277e49cd4149a6caea727304f41ace.zip
[Keymap] Ergodash keymap for yet-another-developer (#7046)
* Initialize ergodash rev 1 keymap ./util/new_keymap.sh ergodash/rev1 yet-another-developer * Add user space configurations referenced from drashna * Start community layout for ergodash in ortho_5x14 * Remove unused layers * Add userspace layers * Add Userspace gitignore Hide Secrets * Remove userspace unused drashna features * Scrap default keymap and follow drashna's template * Add code referenced from kuchosauronad0 * Make sure that the author is named Developer * Replace middle keys del and bksp with curly brace * Reduce ONESHOT_TIMEOUT from 3sec to 2sec * Remove adjust key AG_SWAP * Disable UNICODEMAP_ENABLE, remove code causing build fail * Increase TAPPING_TERM to 240 Reason: Because Space is also LOWER, space sometimes not registering. PS: I dont want to #define RETRO_TAPPING yet * Update KC_MAKE to use :flash * Remove TAP_ONCE, use tap_code Signed-off-by: Developer <anotherdeveloper@icloud.com> * Remove redundant code implementation of keyboard_post_init_user https://github.com/qmk/qmk_firmware/pull/7046 users/yet-another-developer/leader.c ``` static bool has_ran_yet; if (!has_ran_yet) { has_ran_yet = true; startup_user(); ``` Comment for lines +11 – +14 @drashna: Not needed anymore. You can use keyboard_post_init_user now. Signed-off-by: Developer <anotherdeveloper@icloud.com>
Diffstat (limited to 'users/yet-another-developer/tap_dances.c')
-rw-r--r--users/yet-another-developer/tap_dances.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/users/yet-another-developer/tap_dances.c b/users/yet-another-developer/tap_dances.c
new file mode 100644
index 000000000..66dcc60fa
--- /dev/null
+++ b/users/yet-another-developer/tap_dances.c
@@ -0,0 +1,55 @@
1#include "tap_dances.h"
2
3void td_parenthesis (qk_tap_dance_state_t *state, void *user_data) {
4 if (state->count == 1) {
5// SEND_STRING ("\(");
6 tap_code(KC_QUOT);
7 reset_tap_dance (state);
8 }
9 else if (state->count == 2) {
10 SEND_STRING("()" SS_TAP(X_LEFT));
11 reset_tap_dance (state);
12 }
13 else if (state->count == 3) {
14 SEND_STRING("[]" SS_TAP(X_LEFT));
15 reset_tap_dance (state);
16 }
17 else if (state->count == 4) {
18 SEND_STRING("{}" SS_TAP(X_LEFT));
19 reset_tap_dance (state);
20 }
21 else if (state->count >= 5) {
22 SEND_STRING("<>" SS_TAP(X_LEFT));
23 reset_tap_dance (state);
24 }
25}
26
27void safe_reset(qk_tap_dance_state_t *state, void *user_data) {
28 if (state->count >= 3) {
29 // Reset the keyboard if you tap the key more than three times
30 reset_keyboard();
31 reset_tap_dance(state);
32 }
33}
34
35qk_tap_dance_action_t tap_dance_actions[] = {
36 [TD_RESET] = ACTION_TAP_DANCE_FN(safe_reset),
37 [TD_NUM1] = ACTION_TAP_DANCE_DOUBLE(KC_1, KC_4),
38 [TD_NUM2] = ACTION_TAP_DANCE_DOUBLE(KC_2, KC_5),
39 [TD_NUM3] = ACTION_TAP_DANCE_DOUBLE(KC_3, KC_6),
40 [TD_QT1] = ACTION_TAP_DANCE_DOUBLE(KC_QUOT, MC_QT1),
41 [TD_QT2] = ACTION_TAP_DANCE_DOUBLE(LSFT(KC_QUOT), MC_QT2),
42 [TD_QT3] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, MC_QT3),
43
44 [TD_EOL] = ACTION_TAP_DANCE_DOUBLE(KC_E, MC_EOL), // end of line
45 [TD_BOL] = ACTION_TAP_DANCE_DOUBLE(KC_A, MC_BOL), // beginning of line
46 [TD_NW] = ACTION_TAP_DANCE_DOUBLE(KC_F, MC_NW), // next word
47 [TD_PW] = ACTION_TAP_DANCE_DOUBLE(KC_B, MC_PW), // pevious word
48 [TD_DW] = ACTION_TAP_DANCE_DOUBLE(KC_W, MC_DW), // pevious word
49
50 [TD_SPC] = ACTION_TAP_DANCE_FN(td_parenthesis), // \(, (), [], {}, <>
51 [TD_PAR] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, MC_PAR), // ()
52 [TD_SQR] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, MC_SQR), // []
53 [TD_CUR] = ACTION_TAP_DANCE_DOUBLE(LSFT(KC_LCBR), MC_CUR),// {}
54 [TD_ABR] = ACTION_TAP_DANCE_DOUBLE(LSFT(KC_COMM), MC_ABR),//
55};