summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2022-08-17 02:37:10 +0000
committerQMK Bot <hello@qmk.fm>2022-08-17 02:37:10 +0000
commitcfab3e2d6eb7d13ac940bcc46d5ab2880b46effc (patch)
treeafa2436250e046d07f14acff556ee0d1bd3db18f
parent77150d00acf12060cc1b31bcb978750d831910c6 (diff)
parenta1f0208797a2dc241707e4ff3120f847187823c6 (diff)
Merge remote-tracking branch 'origin/master' into develop
-rw-r--r--docs/feature_combo.md2
-rw-r--r--layouts/community/ortho_4x12/jotix/config.h4
-rw-r--r--layouts/community/ortho_4x12/jotix/keymap.c70
3 files changed, 30 insertions, 46 deletions
diff --git a/docs/feature_combo.md b/docs/feature_combo.md
index c0e10f09d5..42d965509b 100644
--- a/docs/feature_combo.md
+++ b/docs/feature_combo.md
@@ -326,7 +326,7 @@ bool process_combo_key_release(uint16_t combo_index, combo_t *combo, uint8_t key
326 326
327If you, for example, use multiple base layers for different key layouts, one for QWERTY, and another one for Colemak, you might want your combos to work from the same key positions on all layers. Defining the same combos again for another layout is redundant and takes more memory. The solution is to just check the keycodes from one layer. 327If you, for example, use multiple base layers for different key layouts, one for QWERTY, and another one for Colemak, you might want your combos to work from the same key positions on all layers. Defining the same combos again for another layout is redundant and takes more memory. The solution is to just check the keycodes from one layer.
328 328
329With `#define COMBO_ONLY_FROM_LAYER _LAYER_A` the combos' keys are always checked from layer `_LAYER_A` even though the active layer would be `_LAYER_B`. 329With `#define COMBO_ONLY_FROM_LAYER 0` in config.h, the combos' keys are always checked from layer `0`, even if other layers are active.
330 330
331## User callbacks 331## User callbacks
332 332
diff --git a/layouts/community/ortho_4x12/jotix/config.h b/layouts/community/ortho_4x12/jotix/config.h
deleted file mode 100644
index 9b2f4fb64d..0000000000
--- a/layouts/community/ortho_4x12/jotix/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
1// jotix ortho_4x12_layout config.h
2
3#define TAPPING_TOGGLE 2
4#define TAPPING_TERM 175 \ No newline at end of file
diff --git a/layouts/community/ortho_4x12/jotix/keymap.c b/layouts/community/ortho_4x12/jotix/keymap.c
index 393bb88863..421e6b3043 100644
--- a/layouts/community/ortho_4x12/jotix/keymap.c
+++ b/layouts/community/ortho_4x12/jotix/keymap.c
@@ -2,19 +2,17 @@
2 2
3enum layers { 3enum layers {
4 _QWERTY, 4 _QWERTY,
5 _TCURSOR,
5 _LOWER, 6 _LOWER,
6 _RAISE, 7 _RAISE,
7 _GAME,
8 _NUMPAD, 8 _NUMPAD,
9 _MOUSE,
10 _ADJUST, 9 _ADJUST,
11}; 10};
12 11
13#define LOWER MO(_LOWER) 12#define TCURSOR TG(_TCURSOR)
14#define RAISE MO(_RAISE) 13#define LOWER MO(_LOWER)
15#define GAME TG(_GAME) 14#define RAISE MO(_RAISE)
16#define NUMPAD TG(_NUMPAD) 15#define NUMPAD MO(_NUMPAD)
17#define MOUSE TG(_MOUSE)
18 16
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 17const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 18
@@ -26,10 +24,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
26// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 24// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
27 KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_ENT, 25 KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_ENT,
28// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 26// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
29 KC_LCTL,KC_LGUI,KC_LALT,KC_RALT,LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT,KC_DOWN,KC_UP, KC_RGHT 27 KC_LCTL,KC_LGUI,KC_LALT,NUMPAD, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT,KC_DOWN,KC_UP, KC_RGHT
30// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ 28// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
31), 29),
32 30
31[_TCURSOR] = LAYOUT_ortho_4x12 (
32// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
33 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
34// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
35 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
36// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
37 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_UP, _______,
38// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
39 _______,_______,_______,_______,_______,_______,_______,_______,KC_SLSH,KC_LEFT,KC_DOWN,KC_RGHT
40// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
41),
42
33[_LOWER] = LAYOUT_ortho_4x12 ( 43[_LOWER] = LAYOUT_ortho_4x12 (
34// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ 44// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
35 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, 45 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
@@ -54,49 +64,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
54// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ 64// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
55), 65),
56 66
57[_GAME] = LAYOUT_ortho_4x12 (
58// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
59 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
60// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
61 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
62// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
63 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_UP, _______,
64// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
65 _______,_______,_______,_______,_______,_______,_______,_______,KC_SLSH,KC_LEFT,KC_DOWN,KC_RGHT
66// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
67),
68
69[_NUMPAD] = LAYOUT_ortho_4x12 ( 67[_NUMPAD] = LAYOUT_ortho_4x12 (
70// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ 68// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
71 NUMPAD ,_______,_______,_______,_______,_______,_______,KC_P7, KC_P8, KC_P9, KC_PMNS,_______, 69 _______,KC_BTN1,KC_MS_U,KC_BTN2,KC_WH_U,_______,_______,KC_P7, KC_P8, KC_P9, KC_PMNS,_______,
72// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 70// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
73 _______,_______,_______,_______,_______,_______,_______,KC_P4, KC_P5, KC_P6, KC_PPLS,_______, 71 _______,KC_MS_L,KC_MS_D,KC_MS_R,KC_WH_D,_______,_______,KC_P4, KC_P5, KC_P6, KC_PPLS,_______,
74// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 72// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
75 _______,_______,_______,_______,_______,_______,_______,KC_P1, KC_P2, KC_P3, KC_PSLS,KC_PENT, 73 _______,_______,_______,_______,_______,_______,KC_NLCK,KC_P1, KC_P2, KC_P3, KC_PSLS,KC_PENT,
76// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 74// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
77 _______,_______,_______,_______,_______,_______,_______,_______,KC_P0, KC_PDOT,KC_PAST,_______ 75 _______,_______,_______,_______,_______,_______,_______,_______,KC_P0, KC_PDOT,KC_PAST,_______
78// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ 76// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
79), 77),
80 78
81[_MOUSE] = LAYOUT_ortho_4x12 (
82// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
83 MOUSE, KC_BTN1,KC_MS_U,KC_BTN2,KC_WH_U,_______,_______,_______,_______,_______,_______,_______,
84// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
85 _______,KC_MS_L,KC_MS_D,KC_MS_R,KC_WH_D,_______,_______,_______,_______,_______,_______,_______,
86// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
87 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
88// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
89 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______
90// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
91),
92
93[_ADJUST] = LAYOUT_ortho_4x12 ( 79[_ADJUST] = LAYOUT_ortho_4x12 (
94// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ 80// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
95 _______,RESET ,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, 81 _______,RESET ,_______,_______,RGB_TOG,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,_______,_______,_______,
96// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 82// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
97 _______,_______,_______,_______,_______,GAME ,_______,_______,_______,_______,_______,_______, 83 _______,_______,RGB_SAI,RGB_SAD,_______,_______,RGB_HUI,RGB_HUD,_______,_______,_______,_______,
98// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 84// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
99 _______,_______,_______,_______,_______,_______,NUMPAD, MOUSE, _______,_______,_______,_______, 85 _______,_______,_______,_______,_______,RGB_VAI,RGB_VAD,_______,RGB_MOD,RGB_RMOD,TCURSOR,_______,
100// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ 86// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
101 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ 87 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______
102// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ 88// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
@@ -104,10 +90,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
104}; 90};
105 91
106layer_state_t layer_state_set_user(layer_state_t state) { 92layer_state_t layer_state_set_user(layer_state_t state) {
107 state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); 93 state = update_tri_layer_state(state, _NUMPAD, _RAISE, _ADJUST);
108 #ifdef JOTANCK_LEDS 94 #ifdef JOTANCK_LEDS
109 writePin(JOTANCK_LED1, (get_highest_layer(state) == _MOUSE)); 95 writePin(JOTANCK_LED2, (IS_LAYER_ON(_TCURSOR)));
110 writePin(JOTANCK_LED2, (get_highest_layer(state) == _NUMPAD));
111 #endif 96 #endif
112 return state; 97 return state;
113} 98}
@@ -117,5 +102,8 @@ bool led_update_user(led_t led_state) {
117 if (!led_state.num_lock) { 102 if (!led_state.num_lock) {
118 tap_code(KC_NUMLOCK); 103 tap_code(KC_NUMLOCK);
119 } 104 }
105 #ifdef JOTANCK_LEDS
106 writePin(JOTANCK_LED1, led_state.caps_lock);
107 #endif
120 return true; 108 return true;
121} 109}