|
@@ -5,11 +5,14 @@
|
|
|
|
|
|
// Layer names
|
|
|
#define BASE 0 // default layer
|
|
|
-#define FMU 1 // FMU layer
|
|
|
+#define PMQ 1 // poor manโs QWERTZ
|
|
|
+#define PMN 2 // poor manโs Neo
|
|
|
+#define FMU 3 // FMU layer
|
|
|
+#define NHL 4 // Neoโs software layer 4 rebuilt in Hardware
|
|
|
|
|
|
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
|
-/* Layer 0 (default)
|
|
|
+/* Layer 0: default
|
|
|
* โโโโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโโโ
|
|
|
* โ TAB โ 1 โ 2 โ 3 โ 4 โ 5 โ ` โ โ ยด โ 6 โ 7 โ 8 โ 9 โ 0 โ BKSPC โ
|
|
|
* โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
@@ -33,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
|
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
|
|
|
NEO_Y, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, KC_HOME,
|
|
|
NEO_L1_L, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O,
|
|
|
- KC_LSFT, NEO_UE, NEO_OE, NEO_AE, NEO_P, NEO_Z, KC_TRNS,
|
|
|
+ KC_LSFT, NEO_UE, NEO_OE, NEO_AE, NEO_P, NEO_Z, TG(PMQ),
|
|
|
KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,NEO_L2_L,
|
|
|
KC_LEFT, KC_UP,
|
|
|
KC_MINS,
|
|
@@ -42,13 +45,95 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
|
DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
|
|
KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS,
|
|
|
NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R,
|
|
|
- KC_TRNS, NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT,
|
|
|
+ TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT,
|
|
|
NEO_L2_R,KC_RGUI,MO(FMU),KC_RALT,KC_RCTL,
|
|
|
KC_DOWN, KC_RGHT,
|
|
|
KC_MINS,
|
|
|
MEH_T(KC_NO),KC_ENT,KC_SPC
|
|
|
),
|
|
|
-/* Layer 1 (F-keys, Mouse and Unicode)
|
|
|
+
|
|
|
+/* Layer 1: poor manโs QWERTZ
|
|
|
+ * based on kaimiโs layout
|
|
|
+ * โโโโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโโโ
|
|
|
+ * โ TAB โ 1 โ 2 โ 3 โ 4 โ 5 โ ` โ โ ยด โ 6 โ 7 โ 8 โ 9 โ 0 โ BKSPC โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ C โ P โ T โ F โ K โ L โ HOM โ โ END โ B โ A โ S โ G โ V โ Y โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโ
โโโโโโค E โ โ โโโโโโโโโโโโโ
โโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ Mod3 โ D โ H โ ร โ O โ I โโโโโโโค โโโโโโโค U โ - โ Z โ E โ X โ Mod3 โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโโโโโโโค(TL2)โ โ(TL3)โโโโโโโโโโโโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ LSHFT โ ร โ Q โ R โ W โ N โ โ โ โ J โ M โ , โ . โ แบ โ Shift โ
|
|
|
+ * โโโฌโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโดโโโโโโ โโโโโโโดโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโฌโโ
|
|
|
+ * โ CTL โ ALT โ MO1 โ Win โ MO4 โ โ M04 โ Win โ MO1 โ Alt โ CTL โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ โ โ
|
|
|
+ * โโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ โ โ
|
|
|
+ * โ SPC โ RTN โโโโโโโค โโโโโโโค RTN โ SPC โ
|
|
|
+ * โ โ โ HYP โ โ MEH โ โ โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโ โโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ */
|
|
|
+[PMQ] = KEYMAP(
|
|
|
+ // left hand
|
|
|
+ KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
|
|
|
+ DE_C, DE_P, DE_T, DE_F, DE_K, DE_L, KC_HOME,
|
|
|
+ NEO_L1_L, DE_D, DE_H, DE_OE, DE_O, DE_I,
|
|
|
+ KC_LSFT, DE_AE, DE_Q, DE_R, DE_W, DE_N, KC_TRNS,
|
|
|
+ KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,MO(NHL),
|
|
|
+ KC_LEFT, KC_UP,
|
|
|
+ KC_MINS,
|
|
|
+ KC_SPC, KC_ENT, ALL_T(KC_NO),
|
|
|
+ // right hand
|
|
|
+ DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
|
|
+ KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y,
|
|
|
+ DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R,
|
|
|
+ KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT,
|
|
|
+ MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL,
|
|
|
+ KC_DOWN, KC_RGHT,
|
|
|
+ KC_MINS,
|
|
|
+ MEH_T(KC_NO),KC_ENT,KC_SPC
|
|
|
+ ),
|
|
|
+
|
|
|
+/* Layer 2: poor manโs Neo
|
|
|
+ * based on kaimiโs layout
|
|
|
+ * โโโโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโโโ
|
|
|
+ * โ TAB โ 1 โ 2 โ 3 โ 4 โ 5 โ ` โ โ ยด โ 6 โ 7 โ 8 โ 9 โ 0 โ BKSPC โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ Y โ X โ V โ L โ C โ W โ HOM โ โ END โ K โ H โ G โ F โ Q โ ร โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโ
โโโโโโค E โ โ โโโโโโโโโโโโโ
โโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ Mod3 โ U โ I โ A โ E โ O โโโโโโโค โโโโโโโค S โ N โ R โ T โ D โ Mod3 โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโโโโโโโค(TL2)โ โ(TL3)โโโโโโโโโโโโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ LSHFT โ ร โ ร โ ร โ P โ Z โ โ โ โ B โ M โ , โ . โ J โ Shift โ
|
|
|
+ * โโโฌโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโดโโโโโโ โโโโโโโดโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโฌโโ
|
|
|
+ * โ CTL โ ALT โ MO1 โ Win โ MO4 โ โ M04 โ Win โ MO1 โ Alt โ CTL โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ โ โ
|
|
|
+ * โโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ โ โ
|
|
|
+ * โ SPC โ RTN โโโโโโโค โโโโโโโค RTN โ SPC โ
|
|
|
+ * โ โ โ HYP โ โ MEH โ โ โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโ โโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ */
|
|
|
+[PMN] = KEYMAP(
|
|
|
+ KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
|
|
|
+ DE_Y, DE_X, DE_V, DE_L, DE_C, DE_W, KC_HOME,
|
|
|
+ KC_NO, DE_U, DE_I, DE_A, DE_E, DE_O,
|
|
|
+ KC_LSFT, DE_UE, DE_OE, DE_AE, DE_P, DE_Z, KC_TRNS,
|
|
|
+ KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,MO(NHL),
|
|
|
+ KC_LEFT, KC_UP,
|
|
|
+ KC_MINS,
|
|
|
+ KC_SPC, KC_ENT, ALL_T(KC_NO),
|
|
|
+ // right hand
|
|
|
+ DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
|
|
+ KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS,
|
|
|
+ DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO,
|
|
|
+ KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT,
|
|
|
+ MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL,
|
|
|
+ KC_DOWN, KC_RGHT,
|
|
|
+ KC_MINS,
|
|
|
+ MEH_T(KC_NO),KC_ENT,KC_SPC
|
|
|
+ ),
|
|
|
+
|
|
|
+/* Layer 3: F-keys, Mouse and Unicode
|
|
|
* โโโโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโโโ
|
|
|
* โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
|
|
|
* โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
@@ -87,10 +172,55 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
|
KC_BTN2,
|
|
|
KC_TRNS, KC_TRNS,KC_TRNS
|
|
|
),
|
|
|
+
|
|
|
+/* Layer 4: Neoโs software layer 4 rebuilt in Hardware
|
|
|
+ * based on kaimiโs layout
|
|
|
+ * โโโโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโฌโโโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ โ PgUpโ BSpcโ โ โ Del โ PgDnโ โ โ โ โ 7 โ 8 โ 9 โ + โ โ โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโ
โโโโโโค โ โ โโโโโโโโโโโโโ
โโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ โ Homeโ โ โ โ โ โ โ End โโโโโโโค โโโโโโโค โ 4 โ 5 โ 6 โ , โ . โ
|
|
|
+ * โโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโโโโโโโโโโโค(TL2)โ โ(TL3)โโโโโโโโโโโโโโโโโโโผโโโโโโผโโโโโโผโโโโโโโโค
|
|
|
+ * โ โ Esc โ Tab โ Ins โ Ret โ Undoโ โ โ โ โ 1 โ 2 โ 3 โ โ โ
|
|
|
+ * โโโฌโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโดโโโโโโ โโโโโโโดโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโผโโโโโโฌโโ
|
|
|
+ * โ โ โ(MO1)โ โ(MO4)โ โ(MO4)โ โ(MO1)โ โ โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโฌโโโโโโ โโโโโโโดโโโโโโดโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ * โ โ โ โ โ โ
|
|
|
+ * โโโโโโโผโโโโโโผโโโโโโค โโโโโโโผโโโโโโผโโโโโโ
|
|
|
+ * โ โ โ โ โ โ โ โ
|
|
|
+ * โ โ โโโโโโโค โโโโโโโค โ โ
|
|
|
+ * โ โ โ โ โ โ โ โ
|
|
|
+ * โโโโโโโดโโโโโโดโโโโโโ โโโโโโโดโโโโโโดโโโโโโ
|
|
|
+ */
|
|
|
+[NHL] = KEYMAP(
|
|
|
+ // left hand
|
|
|
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
|
+ KC_NO, KC_PGUP,KC_BSPC,KC_UP, KC_DELT,KC_PGDN,KC_NO,
|
|
|
+ KC_NO, KC_HOME,KC_LEFT,KC_DOWN,KC_RGHT,KC_END,
|
|
|
+ KC_NO, KC_ESC, KC_TAB, KC_INS, KC_ENT, KC_UNDO,KC_TRNS,
|
|
|
+ KC_NO, KC_NO, KC_TRNS,KC_NO, KC_TRNS,
|
|
|
+ KC_NO, KC_NO,
|
|
|
+ KC_NO,
|
|
|
+ KC_NO, KC_NO, KC_NO,
|
|
|
+ // right hand
|
|
|
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
|
+ KC_NO, KC_NO, KC_7, KC_8, KC_9, DE_PLUS,DE_MINS,
|
|
|
+ KC_NO, KC_4, KC_5, KC_6, KC_COMM,KC_DOT,
|
|
|
+ KC_TRNS, KC_NO, KC_1, KC_2, KC_3, KC_NO, KC_NO,
|
|
|
+ KC_TRNS,KC_NO, KC_TRNS,KC_NO, KC_NO,
|
|
|
+ KC_NO, KC_NO,
|
|
|
+ KC_NO,
|
|
|
+ KC_NO, KC_NO, KC_NO
|
|
|
+ ),
|
|
|
};
|
|
|
|
|
|
const uint16_t PROGMEM fn_actions[] = {
|
|
|
- [1] = ACTION_LAYER_TAP_TOGGLE(FMU)
|
|
|
+ [BASE] = ACTION_FUNCTION(BASE),
|
|
|
+ [PMQ] = ACTION_FUNCTION(PMQ),
|
|
|
+ [PMN] = ACTION_FUNCTION(PMN),
|
|
|
+ [FMU] = ACTION_LAYER_TAP_TOGGLE(FMU),
|
|
|
+ [NHL] = ACTION_LAYER_TAP_TOGGLE(NHL)
|
|
|
};
|
|
|
|
|
|
|
|
@@ -129,6 +259,13 @@ void * matrix_scan_user(void)
|
|
|
switch (layer) {
|
|
|
case FMU:
|
|
|
ergodox_right_led_1_on();
|
|
|
+ break;
|
|
|
+ case PMQ:
|
|
|
+ ergodox_right_led_2_on();
|
|
|
+ break;
|
|
|
+ case PMN:
|
|
|
+ ergodox_right_led_3_on();
|
|
|
+ break;
|
|
|
default:
|
|
|
ergodox_board_led_off();
|
|
|
break;
|