Skip to content

Commit c18adaf

Browse files
committedAug 15, 2019
(feat): better accessibility of arrow keys and different access to vim
- Reasons for change: - accidental switching into vim mode - hard access to arrow keys - New behavior: vim layer (with arrow keys) is active while holding down the previous UP_DOWN key, and stays active if the key is tapped three times in a row
1 parent d426d78 commit c18adaf

File tree

2 files changed

+6
-26
lines changed

2 files changed

+6
-26
lines changed
 

‎config.h

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#pragma once
2+
3+
#define TAPPING_TOGGLE 3

‎keymap.c

+3-26
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ enum custom_kcs {
3131
VIM_INSERT,
3232
ESC,
3333
VIM_ENT,
34-
UP_DOWN,
3534
CC_VNT
3635
};
3736

@@ -93,28 +92,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
9392
tap_code(KC_HOME);
9493
}
9594
break;
96-
case UP_DOWN: {
97-
static uint16_t kc;
98-
99-
if (record->event.pressed) {
100-
bool isShifted = get_mods() & MOD_MASK_SHIFT;
101-
102-
if (isShifted) {
103-
del_mods(MOD_MASK_SHIFT);
104-
kc = KC_DOWN;
105-
} else {
106-
kc = KC_UP;
107-
}
108-
109-
register_code(kc);
110-
111-
if (isShifted) {
112-
register_code(KC_LSFT);
113-
}
114-
} else {
115-
unregister_code(kc);
116-
}
117-
}
11895
}
11996
return true;
12097
}
@@ -123,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
123100
[_BASE] = LAYOUT(
124101
KC_TAB, KC_Q, KC_W, KC_E, LT(_RESET, KC_R), KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
125102
ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
126-
UP_DOWN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLASH,
103+
TT(_VIM), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLASH,
127104
KC_LCTL, CODING, ALT, KC_ENT, SFT_T(KC_SPC), FUNCTIONS
128105
),
129106

@@ -137,14 +114,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
137114
[_VIM] = LAYOUT(
138115
XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, VIM_INSERT, XXXXXXXX, XXXXXXXX, KC_LEFT,
139116
KC_ESC, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXXX, XXXXXXXX,
140-
BASE, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX,
117+
BASE, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, VIM,
141118
________, ________, ________, VIM_ENT, XXXXXXXX, ________
142119
),
143120

144121
[_CODING] = LAYOUT(
145122
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
146123
________, XXXXXXXX, XXXXXXXX, KC_MINS, KC_PLUS, KC_EQL, XXXXXXXX, KC_LBRC, KC_RBRC, XXXXXXXX, XXXXXXXX, XXXXXXXX,
147-
________, XXXXXXXX, XXXXXXXX, VIM, XXXXXXXX, XXXXXXXX, XXXXXXXX, KC_LPRN, KC_RPRN, XXXXXXXX, XXXXXXXX, ________,
124+
________, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX, KC_LPRN, KC_RPRN, XXXXXXXX, XXXXXXXX, ________,
148125
________, ________, ________, ________, ________, ________
149126
),
150127

0 commit comments

Comments
 (0)
Please sign in to comment.