aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/gmmk/pro/ansi/keymaps/jonavin/keymap.c17
-rw-r--r--keyboards/gmmk/pro/ansi/keymaps/jonavin/readme.md3
-rw-r--r--keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk1
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/keymap.c13
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/readme.md1
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/rules.mk1
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/keymap.c35
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/readme.md12
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/rules.mk1
-rw-r--r--users/jonavin/config.h1
-rw-r--r--users/jonavin/jonavin.c12
-rw-r--r--users/jonavin/jonavin.h4
-rw-r--r--users/jonavin/readme.md14
-rw-r--r--users/jonavin/rules.mk3
14 files changed, 93 insertions, 25 deletions
diff --git a/keyboards/gmmk/pro/ansi/keymaps/jonavin/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/jonavin/keymap.c
index f37abfac3..0d318885f 100644
--- a/keyboards/gmmk/pro/ansi/keymaps/jonavin/keymap.c
+++ b/keyboards/gmmk/pro/ansi/keymaps/jonavin/keymap.c
@@ -124,10 +124,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
124 rgb_matrix_set_color(LED_L1, RGB_GREEN); 124 rgb_matrix_set_color(LED_L1, RGB_GREEN);
125 rgb_matrix_set_color(LED_L2, RGB_GREEN); 125 rgb_matrix_set_color(LED_L2, RGB_GREEN);
126 } 126 }
127 if (!IS_HOST_LED_ON(USB_LED_NUM_LOCK)) { // on if NUM lock is OFF 127
128 rgb_matrix_set_color(LED_L3, RGB_MAGENTA); 128 #ifdef INVERT_NUMLOCK_INDICATOR
129 rgb_matrix_set_color(LED_L4, RGB_MAGENTA); 129 if (!IS_HOST_LED_ON(USB_LED_NUM_LOCK)) { // on if NUM lock is OFF
130 } 130 rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
131 rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
132 }
133 #else
134 if (IS_HOST_LED_ON(USB_LED_NUM_LOCK)) { // Normal, on if NUM lock is ON
135 rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
136 rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
137 }
138 #endif // INVERT_NUMLOCK_INDICATOR
139
131 if (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) { 140 if (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) {
132 rgb_matrix_set_color(LED_L5, RGB_RED); 141 rgb_matrix_set_color(LED_L5, RGB_RED);
133 rgb_matrix_set_color(LED_L6, RGB_RED); 142 rgb_matrix_set_color(LED_L6, RGB_RED);
diff --git a/keyboards/gmmk/pro/ansi/keymaps/jonavin/readme.md b/keyboards/gmmk/pro/ansi/keymaps/jonavin/readme.md
index 2aa910e0c..6e8d6ba8a 100644
--- a/keyboards/gmmk/pro/ansi/keymaps/jonavin/readme.md
+++ b/keyboards/gmmk/pro/ansi/keymaps/jonavin/readme.md
@@ -44,6 +44,9 @@ TD_LSFT_CAPSLOCK_ENABLE = yes
44IDLE_TIMEOUT_ENABLE = yes 44IDLE_TIMEOUT_ENABLE = yes
45 - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically 45 - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
46 46
47INVERT_NUMLOCK_INDICATOR
48 - inverts the Num lock indicator, LED is on when num lokc is off
49
47COLEMAK_LAYER_ENABLE = yes 50COLEMAK_LAYER_ENABLE = yes
48 - Enabled optional 5th layer for COLEMAK layout 51 - Enabled optional 5th layer for COLEMAK layout
49 - Use Shift and encoder to enter 5th layer, right led indicator lights up BLUE 52 - Use Shift and encoder to enter 5th layer, right led indicator lights up BLUE
diff --git a/keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk b/keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk
index 81b84eea7..90ea42dee 100644
--- a/keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk
+++ b/keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk
@@ -9,3 +9,4 @@ STARTUP_NUMLOCK_ON = yes
9ENCODER_DEFAULTACTIONS_ENABLE = no 9ENCODER_DEFAULTACTIONS_ENABLE = no
10 10
11COLEMAK_LAYER_ENABLE = yes #Enable Colemak layer / set to no to disable 11COLEMAK_LAYER_ENABLE = yes #Enable Colemak layer / set to no to disable
12INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c b/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c
index 415f554e2..81b8497ca 100644
--- a/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c
+++ b/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c
@@ -89,6 +89,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
89 enum custom_rgblight_layers 89 enum custom_rgblight_layers
90 { 90 {
91 _rgbCAPS, 91 _rgbCAPS,
92 _rgbNUMLOCK,
92 _rgbWINLOCK, 93 _rgbWINLOCK,
93 _rgbFN, 94 _rgbFN,
94 _rgbNUMPAD, 95 _rgbNUMPAD,
@@ -98,7 +99,9 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
98 const rgblight_segment_t PROGMEM _rgb_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS( 99 const rgblight_segment_t PROGMEM _rgb_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
99 {14, 1, HSV_RED} // Light 4 LEDs, starting with LED 6 100 {14, 1, HSV_RED} // Light 4 LEDs, starting with LED 6
100 ); 101 );
101 const rgblight_segment_t PROGMEM _rgb_winlock_layer[] = RGBLIGHT_LAYER_SEGMENTS( 102 const rgblight_segment_t PROGMEM _rgb_numlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
103 {15, 1, HSV_BLUE}
104 ); const rgblight_segment_t PROGMEM _rgb_winlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
102 {13, 1, HSV_PURPLE} // Light 4 LEDs, starting with LED 6 105 {13, 1, HSV_PURPLE} // Light 4 LEDs, starting with LED 6
103 ); 106 );
104 const rgblight_segment_t PROGMEM _rgb_fn_layer[] = RGBLIGHT_LAYER_SEGMENTS( 107 const rgblight_segment_t PROGMEM _rgb_fn_layer[] = RGBLIGHT_LAYER_SEGMENTS(
@@ -113,6 +116,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
113 116
114 const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST( 117 const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST(
115 _rgb_capslock_layer, 118 _rgb_capslock_layer,
119 _rgb_numlock_layer,
116 _rgb_winlock_layer, 120 _rgb_winlock_layer,
117 _rgb_fn_layer, 121 _rgb_fn_layer,
118 _rgb_numpad_layer 122 _rgb_numpad_layer
@@ -120,6 +124,13 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
120 124
121 bool led_update_user(led_t led_state) { 125 bool led_update_user(led_t led_state) {
122 rgblight_set_layer_state(_rgbCAPS, led_state.caps_lock); 126 rgblight_set_layer_state(_rgbCAPS, led_state.caps_lock);
127
128 #ifdef INVERT_NUMLOCK_INDICATOR
129 rgblight_set_layer_state(_rgbNUMLOCK, !led_state.num_lock); // inverse numlock indicator override
130 #else
131 rgblight_set_layer_state(_rgbNUMLOCK, led_state.num_lock); // normal, light LED when numlock on
132 #endif // INVERT_NUMLOCK_INDICATOR
133
123 rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui); 134 rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui);
124 return true; 135 return true;
125 } 136 }
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/readme.md b/keyboards/keebio/quefrency/keymaps/jonavin/readme.md
index 4833c5b62..dad817e8e 100644
--- a/keyboards/keebio/quefrency/keymaps/jonavin/readme.md
+++ b/keyboards/keebio/quefrency/keymaps/jonavin/readme.md
@@ -17,6 +17,7 @@
17 - additional RGB function key binds to arrow on Fn layer 17 - additional RGB function key binds to arrow on Fn layer
18 - Add capslock indicator, win key lock indicator 18 - Add capslock indicator, win key lock indicator
19 - Fn and layer 2 indicators using RGB underglow 19 - Fn and layer 2 indicators using RGB underglow
20 - Inverted NUM lock indicator (light on when NUM lock is off when INVERT_NUMLOCK_INDICATOR = yes in rules.mk)
20 21
21rules.mk OPTIONS - Active features from userspace 22rules.mk OPTIONS - Active features from userspace
22STARTUP_NUMLOCK_ON = yes 23STARTUP_NUMLOCK_ON = yes
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk b/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk
index f27873bb8..ac2865f60 100644
--- a/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk
+++ b/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk
@@ -7,3 +7,4 @@ TAP_DANCE_ENABLE = yes
7 7
8TD_LSFT_CAPSLOCK_ENABLE = yes 8TD_LSFT_CAPSLOCK_ENABLE = yes
9STARTUP_NUMLOCK_ON = yes 9STARTUP_NUMLOCK_ON = yes
10INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/keymap.c b/keyboards/mechwild/obe/keymaps/jonavin/keymap.c
index b5b082965..9e667fba1 100644
--- a/keyboards/mechwild/obe/keymaps/jonavin/keymap.c
+++ b/keyboards/mechwild/obe/keymaps/jonavin/keymap.c
@@ -19,7 +19,7 @@
19 19
20#ifdef RGBLIGHT_ENABLE 20#ifdef RGBLIGHT_ENABLE
21 // Custom RGB Colours 21 // Custom RGB Colours
22 #define RGB_OBE_BOW 0x00, 0xE4, 0xFF // colour for matching keycaps 22 #define HSV_OBE_BOW 180, 100, 100 // colour for matching keycaps
23#endif // RGBLIGHT_ENABLE 23#endif // RGBLIGHT_ENABLE
24 24
25const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 25const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -28,8 +28,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
28 KC_MUTE, KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL, 28 KC_MUTE, KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL,
29 KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, 29 KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
30 KC_PGDN, TT(_RAISE), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, 30 KC_PGDN, TT(_RAISE), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
31 KC_LSFTCAPSWIN,KC_Z, KC_X, KC_C, KC_V, KC_B, LT(_LOWER,KC_B), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, KC_RSFT, 31 KC_LSFTCAPSWIN,KC_Z, KC_X, KC_C, KC_V, KC_B, LT(_LOWER,KC_B), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_SFTUP,KC_RSFT,
32 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN1), LT(_RAISE,KC_SPC), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT 32 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN1), KC_RAISESPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
33 ), 33 ),
34 [_FN1] = LAYOUT( 34 [_FN1] = LAYOUT(
35 KC_NO, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_INS, 35 KC_NO, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_INS,
@@ -39,18 +39,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
39 KC_TRNS,KC_WINLCK,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_END 39 KC_TRNS,KC_WINLCK,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_END
40 ), 40 ),
41 [_LOWER] = LAYOUT( 41 [_LOWER] = LAYOUT(
42 KC_NO, KC_TILD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_TRNS, KC_DEL, 42 EEP_RST, KC_TILD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_TRNS, KC_DEL,
43 RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, EMO_TEARS, EMO_SAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_TOG, 43 RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, EMO_TEARS, EMO_SAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_TOG,
44 RGB_HUD, KC_NO, KC_NO, EMO_SHRUG,KC_NO, KC_NO, KC_NO, KC_NO, EMO_JOY, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, 44 RGB_HUD, KC_NO, KC_NO, EMO_SHRUG,KC_NO, KC_NO, KC_NO, KC_NO, EMO_JOY, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
45 KC_NO, KC_NO, KC_NO, EMO_CONFUSE,KC_NO,KC_NO,KC_TRNS,EMO_NERVOUS,KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, KC_TRNS, 45 KC_NO, KC_NO, KC_NO, EMO_CONFUSE,KC_NO,KC_NO,KC_TRNS,EMO_NERVOUS, KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, KC_TRNS,
46 KC_TRNS, KC_APP, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SPD, RGB_RMOD, RGB_SPI 46 KC_TRNS, KC_APP, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SPD, RGB_RMOD,RGB_SPI
47 ), 47 ),
48 [_RAISE] = LAYOUT( 48 [_RAISE] = LAYOUT(
49 KC_NO, KC_TILD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_PSLS, KC_DEL, 49 KC_NO, KC_GRV, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_PSLS, KC_DEL,
50 KC_NO, KC_NO, KC_HOME,KC_UP, KC_END, KC_PGUP, KC_NO, KC_TAB, KC_P4, KC_P5, KC_P6, KC_NO, KC_NO, KC_NO, KC_PEQL, 50 KC_VOLU, KC_NO, KC_HOME,KC_UP, KC_END, KC_PGUP, KC_NO, KC_TAB, KC_P4, KC_P5, KC_P6, KC_NO, KC_NO, KC_NO, KC_PEQL,
51 KC_NO, TT(_RAISE),KC_LEFT,KC_DOWN, KC_RGHT, KC_PGDN, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT, 51 KC_VOLD,TT(_RAISE),KC_LEFT,KC_DOWN,KC_RGHT, KC_PGDN, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT,
52 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_P0, KC_00, KC_NO, KC_PDOT, KC_PSLS, CT_PGUP, KC_TRNS, 52 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_P0, KC_00, KC_NO, KC_PDOT, KC_PSLS, CT_PGUP, KC_TRNS,
53 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CT_HOME, CT_PGDN, CT_END 53 KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CT_HOME, CT_PGDN, CT_END
54 ) 54 )
55}; 55};
56 56
@@ -58,8 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
58 58
59 enum custom_rgblight_layers 59 enum custom_rgblight_layers
60 { 60 {
61 _rgbWINLOCK, 61 _rgbWINLOCK, _rgbFN,
62 _rgbFN,
63 _rgbLOWER, 62 _rgbLOWER,
64 _rgbRAISE 63 _rgbRAISE
65 }; 64 };
@@ -91,7 +90,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
91 90
92 bool led_update_user(led_t led_state) { 91 bool led_update_user(led_t led_state) {
93 rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui); 92 rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui);
94 return true; 93 writePin(LED_CAPS_LOCK_PIN, led_state.caps_lock);
94 #ifdef INVERT_NUMLOCK_INDICATOR
95 writePin(LED_NUM_LOCK_PIN, !led_state.num_lock); // inverse numlock indicator override
96 #else
97 writePin(LED_NUM_LOCK_PIN, led_state.num_lock); // normal, light LED when numlock on
98 #endif // INVERT_NUMLOCK_INDICATOR
99 return false;
95 } 100 }
96 101
97 layer_state_t layer_state_set_user(layer_state_t state) { 102 layer_state_t layer_state_set_user(layer_state_t state) {
@@ -106,8 +111,8 @@ void keyboard_post_init_keymap(void) {
106 // keyboard_post_init_user() moved to userspace 111 // keyboard_post_init_user() moved to userspace
107 #ifdef RGBLIGHT_ENABLE 112 #ifdef RGBLIGHT_ENABLE
108 rgblight_enable_noeeprom(); 113 rgblight_enable_noeeprom();
109 rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); 114 rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
110 rgblight_setrgb(RGB_OBE_BOW); // Default startup colour 115 rgblight_sethsv_noeeprom(HSV_OBE_BOW); // Default startup colour
111 rgblight_layers = _rgb_layers; 116 rgblight_layers = _rgb_layers;
112 #endif 117 #endif
113} 118}
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/readme.md b/keyboards/mechwild/obe/keymaps/jonavin/readme.md
index d60958a4e..f903a36f1 100644
--- a/keyboards/mechwild/obe/keymaps/jonavin/readme.md
+++ b/keyboards/mechwild/obe/keymaps/jonavin/readme.md
@@ -1,9 +1,10 @@
1# Jonavin's MechWild Orange Boy Ergo keymap 1# Jonavin's MechWild Orange Boy Ergo keymap
2 2
3--> This keymap makes user of user/jonavin userspace 3--> This keymap makes use of user/jonavin userspace
4 4
5Features 5Features
6 - Split spacebars, Split Backspace 6 - Split spacebars, Split Backspace
7 - Inverted Num Lock indicator (LED on when num lock if off)
7 - RGB Winlock indicator (requires LED stripto be installed) 8 - RGB Winlock indicator (requires LED stripto be installed)
8 - RGB Layer indicators: FN/MO1 - Purple; LOWER/MO2 - Yellow; RAISE/MO3/NumPad - Green 9 - RGB Layer indicators: FN/MO1 - Purple; LOWER/MO2 - Yellow; RAISE/MO3/NumPad - Green
9 - quick demo https://youtu.be/gR1awbsouLk 10 - quick demo https://youtu.be/gR1awbsouLk
@@ -11,11 +12,12 @@ Features
11- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer 12- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer
12- Implement Win key lock using Fn+Win 13- Implement Win key lock using Fn+Win
13- Layer 2 (LOWER) when right B is held -- for emoticons 14- Layer 2 (LOWER) when right B is held -- for emoticons
14- Layer 2 RGB functions 15- Layer 2 RGB functions, and EEPROM Reset
15- Layer 3 (RAISE) mod on Caps Lock with double-tap to switch to this layer, double tap to switch back 16- Layer 3 (RAISE) mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
16 - provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry 17 - provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry
17 - left spacebar Backspace 18 - left spacebar Backspace
18- add double tap of Left Shift to toggle Caps Lock 19- add double tap of Left Shift to toggle Caps Lock
20- Up arrow is also Shift when held
19 21
20 22
21rules.mk OPTIONS - Active features from userspace 23rules.mk OPTIONS - Active features from userspace
@@ -41,6 +43,8 @@ IDLE_TIMEOUT_ENABLE = yes
41EMOTICON_ENABLE 43EMOTICON_ENABLE
42 - adds EMO_ keycodes for text emojis 44 - adds EMO_ keycodes for text emojis
43 45
46INVERT_NUMLOCK_INDICATOR
47 - inverts the Num lock indicator, LED is on when num lokc is off
48
44## All layers diagram 49## All layers diagram
45![image](https://user-images.githubusercontent.com/71780717/135770721-ab263532-f645-4903-99cb-749549944e15.png) 50![image](https://user-images.githubusercontent.com/71780717/137356366-6b23c71b-9499-473e-a1e3-c65644135fc6.png)
46
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/rules.mk b/keyboards/mechwild/obe/keymaps/jonavin/rules.mk
index e371b6349..008d0e1de 100644
--- a/keyboards/mechwild/obe/keymaps/jonavin/rules.mk
+++ b/keyboards/mechwild/obe/keymaps/jonavin/rules.mk
@@ -9,3 +9,4 @@ TD_LSFT_CAPSLOCK_ENABLE = yes
9STARTUP_NUMLOCK_ON = yes 9STARTUP_NUMLOCK_ON = yes
10ENCODER_DEFAULTACTIONS_ENABLE = yes 10ENCODER_DEFAULTACTIONS_ENABLE = yes
11EMOTICON_ENABLE = yes 11EMOTICON_ENABLE = yes
12INVERT_NUMLOCK_INDICATOR = yes
diff --git a/users/jonavin/config.h b/users/jonavin/config.h
index 440d222df..7b6e335e3 100644
--- a/users/jonavin/config.h
+++ b/users/jonavin/config.h
@@ -23,6 +23,7 @@
23#define GRAVE_ESC_CTRL_OVERRIDE // Always send Escape if Control is pressed 23#define GRAVE_ESC_CTRL_OVERRIDE // Always send Escape if Control is pressed
24 24
25#define TAPPING_TERM 180 25#define TAPPING_TERM 180
26#define TAPPING_TERM_PER_KEY
26 27
27#ifdef RGB_MATRIX_ENABLE 28#ifdef RGB_MATRIX_ENABLE
28 #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR 29 #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR
diff --git a/users/jonavin/jonavin.c b/users/jonavin/jonavin.c
index 1a0760ea8..367601dfb 100644
--- a/users/jonavin/jonavin.c
+++ b/users/jonavin/jonavin.c
@@ -341,6 +341,18 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
341}; 341};
342 342
343 343
344uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
345 switch (keycode) {
346 case KC_SFTUP:
347 return 300;
348 case KC_RAISESPC:
349 case KC_LOWERSPC:
350 return 450;
351 default:
352 return TAPPING_TERM;
353 }
354}
355
344// Turn on/off NUM LOCK if current state is different 356// Turn on/off NUM LOCK if current state is different
345void activate_numlock(bool turn_on) { 357void activate_numlock(bool turn_on) {
346 if (IS_HOST_LED_ON(USB_LED_NUM_LOCK) != turn_on) { 358 if (IS_HOST_LED_ON(USB_LED_NUM_LOCK) != turn_on) {
diff --git a/users/jonavin/jonavin.h b/users/jonavin/jonavin.h
index feaf6b6a1..21b972ed7 100644
--- a/users/jonavin/jonavin.h
+++ b/users/jonavin/jonavin.h
@@ -55,6 +55,10 @@ enum custom_user_keycodes {
55#define CT_PGDN RCTL(KC_PGDN) 55#define CT_PGDN RCTL(KC_PGDN)
56#define CT_HOME RCTL(KC_HOME) 56#define CT_HOME RCTL(KC_HOME)
57#define CT_END RCTL(KC_END) 57#define CT_END RCTL(KC_END)
58#define KC_SFTUP RSFT_T(KC_UP) // Shift when held, Up arrow when tapped
59#define KC_RAISESPC LT(_RAISE,KC_SPC) // _RAISE layer mod when held, space when tapped
60#define KC_LOWERSPC LT(_LOWER,KC_SPC) // _LOWER layer mod when held, space when tapped
61
58 62
59#ifdef TD_LSFT_CAPSLOCK_ENABLE 63#ifdef TD_LSFT_CAPSLOCK_ENABLE
60 // Tap Dance Definitions 64 // Tap Dance Definitions
diff --git a/users/jonavin/readme.md b/users/jonavin/readme.md
index 9fccb8c73..1b064ddc3 100644
--- a/users/jonavin/readme.md
+++ b/users/jonavin/readme.md
@@ -32,6 +32,9 @@ KEYCODES:
32- CT_PGDN Ctrl-PgDn 32- CT_PGDN Ctrl-PgDn
33- CT_HOME Ctrl-HOme 33- CT_HOME Ctrl-HOme
34- CT_END Ctrl-End 34- CT_END Ctrl-End
35- KC_SFTUP RShift when held, Up arrow when tapped
36- KC_RAISESPC _RAISE layer mod when held, space when tapped
37- KC_LOWERSPC _LOWER layer mod when held, space when tapped
35- 38-
36 When EMOTICON_ENABLE = yes 39 When EMOTICON_ENABLE = yes
37- EMO_SHRUG `\_("/)_/` 40- EMO_SHRUG `\_("/)_/`
@@ -39,6 +42,7 @@ KEYCODES:
39- EMD_TEARS (T_T) 42- EMD_TEARS (T_T)
40- EMO_NERVOUS (~_~;) 43- EMO_NERVOUS (~_~;)
41- EMO_JOY (^o^) 44- EMO_JOY (^o^)
45- EMO_SAD :'-(
42 46
43 47
44AVAILABLE ENCODER ACTIONS: 48AVAILABLE ENCODER ACTIONS:
@@ -79,7 +83,15 @@ IDLE_TIMEOUT_ENABLE = yes
79- Enables Timer functionality; for RGB idle timeouts that can be changed dynamically 83- Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
80- When enabled, use this in the keymap for an additional matrix processing: void matrix_scan_keymap(void) 84- When enabled, use this in the keymap for an additional matrix processing: void matrix_scan_keymap(void)
81 85
82- Functions: 86EMOTICON_ENABLE
87- adds EMO_ keycodes for text emojis
88
89INVERT_NUMLOCK_INDICATOR
90- inverts the Num lock indicator, LED is on when num lock is off
91
92
93FUNCTIONS
94------------------------
83- u16int_t get_timeout_threshold(void) // returns the current timeout threshold 95- u16int_t get_timeout_threshold(void) // returns the current timeout threshold
84- void timeout_update_threshold(bool increase) // change threshold: true = increase, false = decrease 96- void timeout_update_threshold(bool increase) // change threshold: true = increase, false = decrease
85- void timeout_reset_timer(void) // resets timer (put in process_record_user if you override it) 97- void timeout_reset_timer(void) // resets timer (put in process_record_user if you override it)
diff --git a/users/jonavin/rules.mk b/users/jonavin/rules.mk
index eb279f629..646002124 100644
--- a/users/jonavin/rules.mk
+++ b/users/jonavin/rules.mk
@@ -17,3 +17,6 @@ endif
17ifeq ($(strip $(EMOTICON_ENABLE)), yes) 17ifeq ($(strip $(EMOTICON_ENABLE)), yes)
18 OPT_DEFS += -DEMOTICON_ENABLE 18 OPT_DEFS += -DEMOTICON_ENABLE
19endif 19endif
20ifeq ($(strip $(INVERT_NUMLOCK_INDICATOR)), yes)
21 OPT_DEFS += -DINVERT_NUMLOCK_INDICATOR
22endif