Browse Source

KabeDon98E Refactor (#14778)

Co-authored-by: Joel Challis <git@zvecr.com>
James Young 3 năm trước cách đây
mục cha
commit
78509658e6

+ 110 - 105
keyboards/kabedon/kabedon98e/info.json

@@ -1,112 +1,117 @@
 {
 {
-    "keyboard_name": "KabeDon98E", 
-    "url": "", 
-    "maintainer": "370490639", 
+    "keyboard_name": "KabeDon98E",
+    "url": "",
+    "maintainer": "370490639",
     "layouts": {
     "layouts": {
         "LAYOUT": {
         "LAYOUT": {
             "layout": [
             "layout": [
-			{"label":"Esc", "x":0, "y":0},
-			{"label":"F1", "x":1.5, "y":0},
-			{"label":"F2", "x":2.5, "y":0},
-			{"label":"F3", "x":3.5, "y":0},
-			{"label":"F4", "x":4.5, "y":0},
-			{"label":"F5", "x":6.25, "y":0},
-			{"label":"F6", "x":7.25, "y":0},
-			{"label":"F7", "x":8.25, "y":0},
-			{"label":"F8", "x":9.25, "y":0},
-			{"label":"F9", "x":11, "y":0},
-			{"label":"F10", "x":12, "y":0},
-			{"label":"F11", "x":13, "y":0},
-			{"label":"F12", "x":14, "y":0},
-			{"label":"Delete", "x":15.5, "y":0},
-			{"label":"Insert", "x":17, "y":0},
-			{"label":"Mute", "x":18.5, "y":0},			
-			{"label":"~", "x":0, "y":1.5},
-			{"label":"!", "x":1, "y":1.5},
-			{"label":"@", "x":2, "y":1.5},
-			{"label":"#", "x":3, "y":1.5},
-			{"label":"$", "x":4, "y":1.5},
-			{"label":"%", "x":5, "y":1.5},
-			{"label":"^", "x":6, "y":1.5},
-			{"label":"&", "x":7, "y":1.5},
-			{"label":"*", "x":8, "y":1.5},
-			{"label":"(", "x":9, "y":1.5},
-			{"label":")", "x":10, "y":1.5},
-			{"label":"_", "x":11, "y":1.5},
-			{"label":"+", "x":12, "y":1.5},
-			{"label":"Backspace", "x":13, "y":1.5, "w":2},
-			{"label":"Num Lock", "x":15.4, "y":1.5},
-			{"label":"/", "x":16.4, "y":1.5},
-			{"label":"*", "x":17.4, "y":1.5},
-			{"label":"-", "x":18.4, "y":1.5},			
-			{"label":"Home", "x":19.8, "y":1.5},			
-			{"label":"Tab", "x":0, "y":2.5, "w":1.5},
-			{"label":"Q", "x":1.5, "y":2.5},
-			{"label":"W", "x":2.5, "y":2.5},
-			{"label":"E", "x":3.5, "y":2.5},
-			{"label":"R", "x":4.5, "y":2.5},
-			{"label":"T", "x":5.5, "y":2.5},
-			{"label":"Y", "x":6.5, "y":2.5},
-			{"label":"U", "x":7.5, "y":2.5},
-			{"label":"I", "x":8.5, "y":2.5},
-			{"label":"O", "x":9.5, "y":2.5},
-			{"label":"P", "x":10.5, "y":2.5},
-			{"label":"{", "x":11.5, "y":2.5},
-			{"label":"}", "x":12.5, "y":2.5},
-			{"label":"|", "x":13.5, "y":2.5, "w":1.5},
-			{"label":"7", "x":15.4, "y":2.5},
-			{"label":"8", "x":16.4, "y":2.5},
-			{"label":"9", "x":17.4, "y":2.5},
-			{"label":"+", "x":18.4, "y":2.5, "h":2},			
-			{"label":"End", "x":19.8, "y":2.5},			
-			{"label":"Caps Lock", "x":0, "y":3.5, "w":1.75},
-			{"label":"A", "x":1.75, "y":3.5},
-			{"label":"S", "x":2.75, "y":3.5},
-			{"label":"D", "x":3.75, "y":3.5},
-			{"label":"F", "x":4.75, "y":3.5},
-			{"label":"G", "x":5.75, "y":3.5},
-			{"label":"H", "x":6.75, "y":3.5},
-			{"label":"J", "x":7.75, "y":3.5},
-			{"label":"K", "x":8.75, "y":3.5},
-			{"label":"L", "x":9.75, "y":3.5},
-			{"label":":", "x":10.75, "y":3.5},
-			{"label":"\"", "x":11.75, "y":3.5},
-			{"label":"Enter", "x":12.75, "y":3.5, "w":2.25},
-			{"label":"4", "x":15.4, "y":3.5},
-			{"label":"5", "x":16.4, "y":3.5},
-			{"label":"6", "x":17.4, "y":3.5},						
-			{"label":"Shift", "x":0, "y":4.5, "w":2.25},
-			{"label":"Z", "x":2.25, "y":4.5},
-			{"label":"X", "x":3.25, "y":4.5},
-			{"label":"C", "x":4.25, "y":4.5},
-			{"label":"V", "x":5.25, "y":4.5},
-			{"label":"B", "x":6.25, "y":4.5},
-			{"label":"N", "x":7.25, "y":4.5},
-			{"label":"M", "x":8.25, "y":4.5},
-			{"label":"<", "x":9.25, "y":4.5},
-			{"label":">", "x":10.25, "y":4.5},
-			{"label":"?", "x":11.25, "y":4.5},
-			{"label":"Shift", "x":12.25, "y":4.5, "w":1.75},
-			{"label":"Up", "x":14.2, "y":4.7},
-			{"label":"1", "x":15.4, "y":4.5},
-			{"label":"2", "x":16.4, "y":4.5},
-			{"label":"3", "x":17.4, "y":4.5},
-			{"label":"Enter", "x":18.4, "y":4.5, "h":2},						
-			{"label":"Pgup", "x":19.8, "y":4.5},						
-			{"label":"Ctrl", "x":0, "y":5.5, "w":1.25},
-			{"label":"Win", "x":1.25, "y":5.5},
-			{"label":"Alt", "x":2.25, "y":5.5},
-			{"label":"MO(1)", "x":3.25, "y":5.5},
-			{"label":"Space", "x":4.25, "y":5.5, "w":6.25},
-			{"label":"Alt", "x":10.5, "y":5.5, "w":1.25},
-			{"label":"Ctrl", "x":11.75, "y":5.5, "w":1.25},
-			{"label":"Left", "x":13.2, "y":5.7},
-			{"label":"Down", "x":14.2, "y":5.7},
-			{"label":"Right", "x":15.2, "y":5.7},
-			{"label":"0", "x":16.4, "y":5.5},
-			{"label":".", "x":17.4, "y":5.5},
-			{"label":"Pgdn", "x":19.8, "y":5.5}
-			]
+                {"label":"Esc", "x":0, "y":0.5},
+                {"label":"F1", "x":1.667, "y":0.5},
+                {"label":"F2", "x":2.667, "y":0.5},
+                {"label":"F3", "x":3.667, "y":0.5},
+                {"label":"F4", "x":4.667, "y":0.5},
+                {"label":"F5", "x":6.333, "y":0.5},
+                {"label":"F6", "x":7.333, "y":0.5},
+                {"label":"F7", "x":8.333, "y":0.5},
+                {"label":"F8", "x":9.333, "y":0.5},
+                {"label":"F9", "x":11.0, "y":0.5},
+                {"label":"F10", "x":12.0, "y":0.5},
+                {"label":"F11", "x":13.0, "y":0.5},
+                {"label":"F12", "x":14.0, "y":0.5},
+                {"label":"Delete", "x":15.5, "y":0.5},
+                {"label":"Home", "x":16.9, "y":0, "w":0.6, "h":0.5},
+                {"label":"Insert", "x":17.0, "y":0.5},
+                {"label":"End", "x":17.5, "y":0, "w":0.6, "h":0.5},
+                {"label":"PgUp", "x":18.4, "y":0, "w":0.6, "h":0.5},
+                {"label":"Mute", "x":18.5, "y":0.5},
+                {"label":"PgDn", "x":19, "y":0, "w":0.6, "h":0.5},
+
+                {"label":"~", "x":0, "y":1.75},
+                {"label":"!", "x":1, "y":1.75},
+                {"label":"@", "x":2, "y":1.75},
+                {"label":"#", "x":3, "y":1.75},
+                {"label":"$", "x":4, "y":1.75},
+                {"label":"%", "x":5, "y":1.75},
+                {"label":"^", "x":6, "y":1.75},
+                {"label":"&", "x":7, "y":1.75},
+                {"label":"*", "x":8, "y":1.75},
+                {"label":"(", "x":9, "y":1.75},
+                {"label":")", "x":10, "y":1.75},
+                {"label":"_", "x":11, "y":1.75},
+                {"label":"+", "x":12, "y":1.75},
+                {"label":"Backspace", "x":13, "y":1.75, "w":2},
+                {"label":"Num Lock", "x":15.5, "y":1.75},
+                {"label":"/", "x":16.5, "y":1.75},
+                {"label":"*", "x":17.5, "y":1.75},
+                {"label":"-", "x":18.5, "y":1.75},
+
+                {"label":"Tab", "x":0, "y":2.75, "w":1.5},
+                {"label":"Q", "x":1.5, "y":2.75},
+                {"label":"W", "x":2.5, "y":2.75},
+                {"label":"E", "x":3.5, "y":2.75},
+                {"label":"R", "x":4.5, "y":2.75},
+                {"label":"T", "x":5.5, "y":2.75},
+                {"label":"Y", "x":6.5, "y":2.75},
+                {"label":"U", "x":7.5, "y":2.75},
+                {"label":"I", "x":8.5, "y":2.75},
+                {"label":"O", "x":9.5, "y":2.75},
+                {"label":"P", "x":10.5, "y":2.75},
+                {"label":"{", "x":11.5, "y":2.75},
+                {"label":"}", "x":12.5, "y":2.75},
+                {"label":"|", "x":13.5, "y":2.75, "w":1.5},
+                {"label":"7", "x":15.5, "y":2.75},
+                {"label":"8", "x":16.5, "y":2.75},
+                {"label":"9", "x":17.5, "y":2.75},
+
+                {"label":"Caps Lock", "x":0, "y":3.75, "w":1.75},
+                {"label":"A", "x":1.75, "y":3.75},
+                {"label":"S", "x":2.75, "y":3.75},
+                {"label":"D", "x":3.75, "y":3.75},
+                {"label":"F", "x":4.75, "y":3.75},
+                {"label":"G", "x":5.75, "y":3.75},
+                {"label":"H", "x":6.75, "y":3.75},
+                {"label":"J", "x":7.75, "y":3.75},
+                {"label":"K", "x":8.75, "y":3.75},
+                {"label":"L", "x":9.75, "y":3.75},
+                {"label":":", "x":10.75, "y":3.75},
+                {"label":"\"", "x":11.75, "y":3.75},
+                {"label":"Enter", "x":12.75, "y":3.75, "w":2.25},
+                {"label":"4", "x":15.5, "y":3.75},
+                {"label":"5", "x":16.5, "y":3.75},
+                {"label":"6", "x":17.5, "y":3.75},
+                {"label":"+", "x":18.5, "y":2.75, "h":2},
+
+                {"label":"Shift", "x":0, "y":4.75, "w":2.25},
+                {"label":"Z", "x":2.25, "y":4.75},
+                {"label":"X", "x":3.25, "y":4.75},
+                {"label":"C", "x":4.25, "y":4.75},
+                {"label":"V", "x":5.25, "y":4.75},
+                {"label":"B", "x":6.25, "y":4.75},
+                {"label":"N", "x":7.25, "y":4.75},
+                {"label":"M", "x":8.25, "y":4.75},
+                {"label":"<", "x":9.25, "y":4.75},
+                {"label":">", "x":10.25, "y":4.75},
+                {"label":"?", "x":11.25, "y":4.75},
+                {"label":"Shift", "x":12.25, "y":4.75, "w":1.75},
+                {"label":"\u2191", "x":14.25, "y":5},
+                {"label":"1", "x":15.5, "y":4.75},
+                {"label":"2", "x":16.5, "y":4.75},
+                {"label":"3", "x":17.5, "y":4.75},
+
+                {"label":"Ctrl", "x":0, "y":5.75, "w":1.25},
+                {"label":"Win", "x":1.25, "y":5.75},
+                {"label":"Alt", "x":2.25, "y":5.75},
+                {"label":"MO(1)", "x":3.25, "y":5.75},
+                {"label":"Space", "x":4.25, "y":5.75, "w":6.25},
+                {"label":"Alt", "x":10.5, "y":5.75, "w":1.25},
+                {"label":"Ctrl", "x":11.75, "y":5.75, "w":1.25},
+                {"label":"\u2190", "x":13.25, "y":6},
+                {"label":"\u2193", "x":14.25, "y":6},
+                {"label":"\u2192", "x":15.25, "y":6},
+                {"label":"0", "x":16.5, "y":5.75},
+                {"label":".", "x":17.5, "y":5.75},
+                {"label":"Enter", "x":18.5, "y":4.75, "h":2}
+            ]
         }
         }
     }
     }
 }
 }

+ 39 - 0
keyboards/kabedon/kabedon98e/kabedon98e.c

@@ -14,3 +14,42 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
  */
 #include "kabedon98e.h"
 #include "kabedon98e.h"
+
+static uint8_t encoder_state[ENCODERS] = {0};
+static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
+static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
+
+void encoder_action_unregister(void) {
+    for (int index = 0; index < ENCODERS; ++index) {
+        if (encoder_state[index]) {
+            keyevent_t encoder_event = (keyevent_t) {
+                .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
+                .pressed = false,
+                .time = (timer_read() | 1)
+            };
+            encoder_state[index] = 0;
+            action_exec(encoder_event);
+        }
+    }
+}
+
+void encoder_action_register(uint8_t index, bool clockwise) {
+    keyevent_t encoder_event = (keyevent_t) {
+        .key = clockwise ? encoder_cw[index] : encoder_ccw[index],
+        .pressed = true,
+        .time = (timer_read() | 1)
+    };
+    encoder_state[index] = (clockwise ^ 1) | (clockwise << 1);
+    action_exec(encoder_event);
+}
+
+void matrix_scan_kb(void) {
+    encoder_action_unregister();
+    matrix_scan_user();
+}
+
+bool encoder_update_kb(uint8_t index, bool clockwise) {
+    if (!encoder_update_user(index, clockwise)) { return false; }
+    encoder_action_register(index, clockwise);
+    return true;
+};

+ 40 - 19
keyboards/kabedon/kabedon98e/kabedon98e.h

@@ -17,26 +17,47 @@
 
 
 #include "quantum.h"
 #include "quantum.h"
 
 
-#define XXXX KC_NO
+#define XXX KC_NO
+
+/*                                                                   ┌──┬──┐ ┌──┬──┐
+ *                                                                   │00│20│ │60│80│
+ *                                                                   └──┴──┘ └──┴──┘
+ *                                                                    \─en1┘ └en2─/
+ * ┌───┐   ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┐ ┌───┐ ┌───┐
+ * │10 │   │01 │11 │02 │12 │ │03 │13 │04 │14 │ │05 │15 │16 │17 │ │57 │ │48 │ │40 │
+ * └───┘   └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┘ └───┘ └───┘
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┬───┐
+ * │30 │21 │31 │22 │32 │23 │33 │24 │34 │25 │35 │26 │36 │37     │ │39 │49 │4A │5A │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤
+ * │50   │41 │51 │42 │52 │43 │53 │44 │54 │45 │55 │46 │56 │47   │ │59 │69 │6A │   │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┤   │
+ * │70    │61 │71 │62 │72 │63 │73 │64 │74 │65 │75 │66 │77      │ │79 │89 │8A │7A │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘ ├───┼───┼───┼───┤
+ * │90      │91 │82 │92 │83 │93 │84 │94 │85 │95 │86 │97    │┌───┐│99 │A9 │9A │   │
+ * ├────┬───┼───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴──┬───┘│88 │└───┼───┼───┤   │
+ * │B0  │A1 │B1 │B3 │B2                      │B5  │A7  │┌───┼───┼───┐│B9 │AA │BA │
+ * └────┴───┴───┴───┴────────────────────────┴────┴────┘│B7 │A8 │B8 │└───┴───┴───┘
+ *                                                      └───┴───┴───┘
+ */
 
 
 #define LAYOUT( \
 #define LAYOUT( \
-    KB00,   KA01, KB01, KA02, KB02,    KA03, KB03, KA04, KB04,    KA05, KB05, KB06, KB07,     KF07,    KE08,    KE00,        \
-    KD00, KC01, KD01, KC02, KD02, KC03, KD03, KC04, KD04, KC05, KD05, KC06, KD06,   KD07,     KD09, KE09, KE10, KF10,  KA00, \
-    KF00, KE01, KF01, KE02, KF02, KE03, KF03, KE04, KF04, KE05, KF05, KE06, KF06,   KE07,     KF09, KG09, KG10,        KC00, \
-    KH00, KG01, KH01, KG02, KH02, KG03, KH03, KG04, KH04, KG05, KH05, KG06,      KH07,        KH09, KI09, KI10, KH10,        \
-    KJ00, KJ01, KI02, KJ02, KI03, KJ03, KI04, KJ04, KI05, KJ05, KI06,       KJ07,     KI08,   KJ09, KK09, KJ10,        KG00, \
-    KL00, KK01, KL01, KL03,               KL02,                 KL05,   KK07,   KL07, KK08, KL08,   KL09, KK10, KL10,  KI00  \
+    K10,   K01, K11, K02, K12,    K03, K13, K04, K14,   K05, K15, K16, K17,      K57,  K00,K48,K20,  K60,K40,K80, \
+    K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K37,      K39, K49, K4A, K5A, \
+    K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56,   K47,      K59, K69, K6A,      \
+    K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66,      K77,        K79, K89, K8A, K7A, \
+    K90, K91, K82, K92, K83, K93, K84, K94, K85, K95, K86,      K97,      K88,   K99, KA9, K9A,      \
+    KB0, KA1, KB1, KB3,              KB2,             KB5,   KA7,    KB7, KA8, KB8,   KB9, KAA, KBA  \
 ) { \
 ) { \
-  { KA00,  KA01,  KA02,  KA03,  KA04,  KA05,  XXXX,  XXXX,  XXXX,  XXXX,  XXXX }, \
-  { KB00,  KB01,  KB02,  KB03,  KB04,  KB05,  KB06,  KB07,  XXXX,  XXXX,  XXXX }, \
-  { KC00,  KC01,  KC02,  KC03,  KC04,  KC05,  KC06,  XXXX,  XXXX,  XXXX,  XXXX }, \
-  { KD00,  KD01,  KD02,  KD03,  KD04,  KD05,  KD06,  KD07,  XXXX,  KD09,  XXXX }, \
-  { KE00,  KE01,  KE02,  KE03,  KE04,  KE05,  KE06,  KE07,  KE08,  KE09,  KE10 }, \
-  { KF00,  KF01,  KF02,  KF03,  KF04,  KF05,  KF06,  KF07,  XXXX,  KF09,  KF10 }, \
-  { KG00,  KG01,  KG02,  KG03,  KG04,  KG05,  KG06,  XXXX,  XXXX,  KG09,  KG10 }, \
-  { KH00,  KH01,  KH02,  KH03,  KH04,  KH05,  XXXX,  KH07,  XXXX,  KH09,  KH10 }, \
-  { KI00,  XXXX,  KI02,  KI03,  KI04,  KI05,  KI06,  XXXX,  KI08,  KI09,  KI10 }, \
-  { KJ00,  KJ01,  KJ02,  KJ03,  KJ04,  KJ05,  XXXX,  KJ07,  XXXX,  KJ09,  KJ10 }, \
-  { XXXX,  KK01,  XXXX,  XXXX,  XXXX,  XXXX,  XXXX,  KK07,  KK08,  KK09,  KK10 }, \
-  { KL00,  KL01,  KL02,  KL03,  XXXX,  KL05,  XXXX,  KL07,  KL08,  KL09,  KL10 }  \
+  { K00,  K01,  K02,  K03,  K04,  K05,  XXX,  XXX,  XXX,  XXX,  XXX }, \
+  { K10,  K11,  K12,  K13,  K14,  K15,  K16,  K17,  XXX,  XXX,  XXX }, \
+  { K20,  K21,  K22,  K23,  K24,  K25,  K26,  XXX,  XXX,  XXX,  XXX }, \
+  { K30,  K31,  K32,  K33,  K34,  K35,  K36,  K37,  XXX,  K39,  XXX }, \
+  { K40,  K41,  K42,  K43,  K44,  K45,  K46,  K47,  K48,  K49,  K4A }, \
+  { K50,  K51,  K52,  K53,  K54,  K55,  K56,  K57,  XXX,  K59,  K5A }, \
+  { K60,  K61,  K62,  K63,  K64,  K65,  K66,  XXX,  XXX,  K69,  K6A }, \
+  { K70,  K71,  K72,  K73,  K74,  K75,  XXX,  K77,  XXX,  K79,  K7A }, \
+  { K80,  XXX,  K82,  K83,  K84,  K85,  K86,  XXX,  K88,  K89,  K8A }, \
+  { K90,  K91,  K92,  K93,  K94,  K95,  XXX,  K97,  XXX,  K99,  K9A }, \
+  { XXX,  KA1,  XXX,  XXX,  XXX,  XXX,  XXX,  KA7,  KA8,  KA9,  KAA }, \
+  { KB0,  KB1,  KB2,  KB3,  XXX,  KB5,  XXX,  KB7,  KB8,  KB9,  KBA }  \
 }
 }

+ 18 - 55
keyboards/kabedon/kabedon98e/keymaps/default/keymap.c

@@ -45,64 +45,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                                      └──┘└──┘└──┘
                                                      └──┘└──┘└──┘
  */
  */
 [_BASE] = LAYOUT(
 [_BASE] = LAYOUT(
-	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_DEL,      KC_INS, 		 KC_MUTE, 
-	KC_GRV,  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_BSPC,     KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,   KC_HOME,
-	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_BSLS,     KC_P7,   KC_P8,   KC_P9,              KC_END,
-	KC_CAPS, KC_A,   KC_S,   KC_D,   KC_F,   KC_G,   KC_H,   KC_J,   KC_K,    KC_L,    KC_SCLN,  KC_QUOT,       KC_ENT,           KC_P4,   KC_P5,   KC_P6,   KC_PPLS,  
-	KC_LSFT, KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,   KC_COMM, KC_DOT,  KC_SLSH,        KC_RSFT,       KC_UP,      KC_P1,   KC_P2,   KC_P3,              KC_PGUP,
-	KC_LCTL, KC_LGUI, KC_LALT, MO(1),                KC_SPC,                         KC_RALT,    KC_RCTL,   KC_LEFT,  KC_DOWN,  KC_RGHT,   KC_P0,   KC_PDOT, KC_PENT,   KC_PGDN),
+    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_DEL,  KC_HOME, KC_INS,  KC_END,  KC_PGUP, KC_MUTE, KC_PGDN,
+    KC_GRV,  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_BSPC,          KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
+    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_BSLS,          KC_P7,   KC_P8,   KC_P9,
+    KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,           KC_P4,   KC_P5,   KC_P6,   KC_PPLS,
+    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,          KC_RSFT,     KC_UP,        KC_P1,   KC_P2,   KC_P3,
+    KC_LCTL, KC_LGUI, KC_LALT, MO(1),                     KC_SPC,                             KC_RALT, KC_RCTL,     KC_LEFT, KC_DOWN, KC_RGHT,      KC_P0,   KC_PDOT, KC_PENT),
 
 
 [_FN] = LAYOUT(
 [_FN] = LAYOUT(
-	KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, 
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,     KC_TRNS,         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,        KC_TRNS,     RGB_VAI,  KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS, 
-	KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                     KC_TRNS,                     RGB_TOG,  RGB_MOD,    RGB_HUI, RGB_VAD, RGB_HUD,  KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS),
+    KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,     RGB_VAI,      KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            RGB_TOG, RGB_MOD,     RGB_HUI, RGB_VAD, RGB_HUD,      KC_TRNS, KC_TRNS, KC_TRNS),
 
 
 [_FN1] = LAYOUT(
 [_FN1] = LAYOUT(
-	KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, 
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,     KC_TRNS,         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,        KC_TRNS,     KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                     KC_TRNS,                     KC_TRNS,  KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS)
-	
-};
-
-static uint8_t encoder_state[ENCODERS] = {0};
-static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
-static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
-
-void encoder_action_unregister(void) {
-    for (int index = 0; index < ENCODERS; ++index) {
-        if (encoder_state[index]) {
-            keyevent_t encoder_event = (keyevent_t) {
-                .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
-                .pressed = false,
-                .time = (timer_read() | 1)
-            };
-            encoder_state[index] = 0;
-            action_exec(encoder_event);
-        }
-    }
-}
-
-void encoder_action_register(uint8_t index, bool clockwise) {
-    keyevent_t encoder_event = (keyevent_t) {
-        .key = clockwise ? encoder_cw[index] : encoder_ccw[index],
-        .pressed = true,
-        .time = (timer_read() | 1)
-    };
-    encoder_state[index] = (clockwise ^ 1) | (clockwise << 1);
-    action_exec(encoder_event);
-}
-
-void matrix_scan_user(void) {
-    encoder_action_unregister();
-}
+    KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,     KC_TRNS,      KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS,     KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS, KC_TRNS, KC_TRNS)
 
 
-bool encoder_update_user(uint8_t index, bool clockwise) {
-    encoder_action_register(index, clockwise);
-    return true;
 };
 };

+ 18 - 55
keyboards/kabedon/kabedon98e/keymaps/via/keymap.c

@@ -45,64 +45,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                                      └──┘└──┘└──┘
                                                      └──┘└──┘└──┘
  */
  */
 [_BASE] = LAYOUT(
 [_BASE] = LAYOUT(
-	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_DEL,      KC_INS, 		 KC_MUTE, 
-	KC_GRV,  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_BSPC,     KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,   KC_HOME,
-	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_BSLS,     KC_P7,   KC_P8,   KC_P9,              KC_END,
-	KC_CAPS, KC_A,   KC_S,   KC_D,   KC_F,   KC_G,   KC_H,   KC_J,   KC_K,    KC_L,    KC_SCLN,  KC_QUOT,       KC_ENT,           KC_P4,   KC_P5,   KC_P6,   KC_PPLS,  
-	KC_LSFT, KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,   KC_COMM, KC_DOT,  KC_SLSH,        KC_RSFT,       KC_UP,      KC_P1,   KC_P2,   KC_P3,              KC_PGUP,
-	KC_LCTL, KC_LGUI, KC_LALT, MO(1),                KC_SPC,                         KC_RALT,    KC_RCTL,   KC_LEFT,  KC_DOWN,  KC_RGHT,   KC_P0,   KC_PDOT, KC_PENT,   KC_PGDN),
+    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_DEL,  KC_HOME, KC_INS,  KC_END,  KC_PGUP, KC_MUTE, KC_PGDN,
+    KC_GRV,  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_BSPC,          KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
+    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_BSLS,          KC_P7,   KC_P8,   KC_P9,
+    KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,           KC_P4,   KC_P5,   KC_P6,   KC_PPLS,
+    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,          KC_RSFT,     KC_UP,        KC_P1,   KC_P2,   KC_P3,
+    KC_LCTL, KC_LGUI, KC_LALT, MO(1),                     KC_SPC,                             KC_RALT, KC_RCTL,     KC_LEFT, KC_DOWN, KC_RGHT,      KC_P0,   KC_PDOT, KC_PENT),
 
 
 [_FN] = LAYOUT(
 [_FN] = LAYOUT(
-	KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, 
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,     KC_TRNS,         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,        KC_TRNS,     RGB_VAI,  KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS, 
-	KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                     KC_TRNS,                     RGB_TOG,  RGB_MOD,    RGB_HUI, RGB_VAD, RGB_HUD,  KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS),
+    KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,     RGB_VAI,      KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            RGB_TOG, RGB_MOD,     RGB_HUI, RGB_VAD, RGB_HUD,      KC_TRNS, KC_TRNS, KC_TRNS),
 
 
 [_FN1] = LAYOUT(
 [_FN1] = LAYOUT(
-	KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, 
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,     KC_TRNS,         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   
-	KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,        KC_TRNS,     KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS,            KC_TRNS,
-	KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                     KC_TRNS,                     KC_TRNS,  KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS)
-	
-};
-
-static uint8_t encoder_state[ENCODERS] = {0};
-static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
-static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
-
-void encoder_action_unregister(void) {
-    for (int index = 0; index < ENCODERS; ++index) {
-        if (encoder_state[index]) {
-            keyevent_t encoder_event = (keyevent_t) {
-                .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
-                .pressed = false,
-                .time = (timer_read() | 1)
-            };
-            encoder_state[index] = 0;
-            action_exec(encoder_event);
-        }
-    }
-}
-
-void encoder_action_register(uint8_t index, bool clockwise) {
-    keyevent_t encoder_event = (keyevent_t) {
-        .key = clockwise ? encoder_cw[index] : encoder_ccw[index],
-        .pressed = true,
-        .time = (timer_read() | 1)
-    };
-    encoder_state[index] = (clockwise ^ 1) | (clockwise << 1);
-    action_exec(encoder_event);
-}
-
-void matrix_scan_user(void) {
-    encoder_action_unregister();
-}
+    KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,     KC_TRNS,      KC_TRNS, KC_TRNS, KC_TRNS,
+    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS,     KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS, KC_TRNS, KC_TRNS)
 
 
-bool encoder_update_user(uint8_t index, bool clockwise) {
-    encoder_action_register(index, clockwise);
-    return true;
 };
 };