diff options
| -rw-r--r-- | keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c | 407 | ||||
| -rw-r--r-- | keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md | 188 | 
2 files changed, 595 insertions, 0 deletions
| diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c new file mode 100644 index 0000000000..cfc51a4e46 --- /dev/null +++ b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c @@ -0,0 +1,407 @@ +#include "ergodox.h" +#include "action_layer.h" +#include "keymap_extras/keymap_german.h" + +#define UM 0 + +#define L0   0      // layer_0 +#define L1   1      // layer_1 +#define L2   2      // layer_2 +#define L3   3      // layer_3 +#define L4   4      // layer_4 +#define L5   5      // layer_5 +#define L6   6      // layer_6 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * .------------------------------------.------------------------------------. + * |ESC  | 1  | 2  | 3  | 4  | 5  |ACUT | GRV | 6  | 7  | 8  | 9  | 0  |CIRC | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |TAB  | X  | V  | L  | C  | W  |Print|     | K  | H  | G  | F  | Q  |  SS | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |MO(1)| U  | I  | A  | E  | O  |-----!-----! S  | N  | R  | T  | D  | Y   | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |LSFT | UE | OE | AE | P  | Z  |SPACE|     | B  | M  |COMM| DOT| J  |RSFT | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |LCTL|LGUI|LALT|MO(3)|MO(2)|                   !MO(2)|MO(3)|APP |RALT|RCTL| + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |VOL- |VOL+ | !MUTE |PLAY | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   ! CTL !     !-ALT-! !-CTL-!     ! ALT ! + *                   |ENTER|MO(1)| TAB | !ESC  |MO(3)|SPACE| + *                   '-----------------' '-----------------' + */ +[L0] = KEYMAP( + KC_ESC,  DE_1,    DE_2,     DE_3,    DE_4,     DE_5,    DE_ACUT, + KC_TAB,  DE_X,    DE_V,     DE_L,    DE_C,     DE_W,    KC_PSCR, + MO(1),   DE_U,    DE_I,     DE_A,    DE_E,     DE_O, + KC_LSFT, DE_UE,   DE_OE,    DE_AE,   DE_P,     DE_Z,    KC_SPACE, + KC_LCTL, KC_LGUI, KC_LALT,  MO(3),   MO(2), + /*-*/    /*-*/    /*-*/     /*-*/    /*-*/     KC_VOLD, KC_VOLU, + /*-*/    /*-*/    /*-*/     /*-*/    /*-*/     /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/     /*-*/    CTL_T(KC_ENTER), MO(1),   ALT_T(KC_TAB), + DE_GRV,  DE_6,    DE_7,     DE_8,    DE_9,     DE_0,    DE_CIRC, + KC_TRNS, DE_K,    DE_H,     DE_G,    DE_F,     DE_Q,    DE_SS, + /*-*/    DE_S,    DE_N,     DE_R,    DE_T,     DE_D,    DE_Y, + KC_TRNS, DE_B,    DE_M,     DE_COMM, DE_DOT,   DE_J,    KC_RSFT, + /*-*/    /*-*/    MO(2),    MO(3),   KC_APP,   KC_RALT, KC_RCTL, + KC_MUTE, KC_MPLY, + KC_TRNS, + CTL_T(KC_ESC), MO(3),   ALT_T(KC_SPACE) +), +/* + * .------------------------------------.------------------------------------. + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     |EURO|UNDS|LBRC|RBRC|    |     |     |EXLM|LESS|MORE|EQL |AMPR|     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |BSLS|SLSH|LCBR|RCBR|ASTR|-----!-----!QST |LPRN|RPRN|MINS|COLN| AT  | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |HASH|DLR |PIPE|TILD|    |     |     |PLUS|PERC|DQOT|QUOT|SCLN|     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |     | + *                   '-----------------' '-----------------' + */ +[L1] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, DE_EURO, DE_UNDS, DE_LBRC, DE_RBRC, KC_TRNS, KC_TRNS, + KC_TRNS, DE_BSLS, DE_SLSH, DE_LCBR, DE_RCBR, DE_ASTR, + KC_TRNS, DE_HASH, DE_DLR,  DE_PIPE, DE_TILD, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, DE_EXLM, DE_LESS, DE_MORE, DE_EQL,  DE_AMPR, KC_TRNS, + /*-*/    DE_QST,  DE_LPRN, DE_RPRN, DE_MINS, DE_COLN, DE_AT, + KC_TRNS, DE_PLUS, DE_PERC, DE_DQOT, DE_QUOT, DE_SCLN, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     |PGUP|BSPC| UP |DEL |PGDN|     |     |    |  7 |  8 |  9 |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |HOME|LEFT|DOWN|RGHT|END |-----!-----!    |  4 |  5 |  6 |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |PREV|NEXT|    |     |     |    |  1 |  2 |  3 |    |     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |  0  | + *                   '-----------------' '-----------------' + */ +[L2] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_PGUP, KC_BSPC, KC_UP,   KC_DEL,  KC_PGDN, KC_TRNS, + KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, DE_7,    DE_8,    DE_9,    KC_TRNS, KC_TRNS, + /*-*/    KC_TRNS, DE_4,    DE_5,    DE_6,    KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, DE_1,    DE_2,    DE_3,    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, DE_0 +), +/* + * .------------------------------------.------------------------------------. + * |     | F1 | F2 | F3 | F4 | F5 | F6  |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     | F7 | F8 | F9 | F10| F11| F12 |     |    |M_WU|M_CU|M_WD|    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |M_B5 |M_B4|M_B3|M_B2|M_B1|    |-----!-----!    |M_CL|M_CD|M_CR|    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |M_A2|M_A1|M_A0|    |     |     |    |    |    |    |    |     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |     | + *                   '-----------------' '-----------------' + */ +[L3] = KEYMAP( + KC_TRNS, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6, + KC_TRNS, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12, + KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_BTN1, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ACL2, KC_ACL1, KC_ACL0, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_WH_U, KC_MS_U, KC_WH_D, KC_TRNS, KC_TRNS, + /*-*/    KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |     | + *                   '-----------------' '-----------------' + */ +[L4] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |     | + *                   '-----------------' '-----------------' + */ +[L5] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | + * !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! + * |     |    |    |    |    |    |     |     |    |    |    |    |    |     | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + *  |    |    |    |    |    |                     !    |    |    |    |    | + *  '------------------------'                     '------------------------' + *                         .-----------. .-----------. + *                         |     |     | !     |     | + *                   .-----+-----+-----! !-----+-----+-----. + *                   !     !     |     | !     |     !     ! + *                   !     !     !-----! !-----!     !     ! + *                   |     |     |     | !     |     |     | + *                   '-----------------' '-----------------' + */ +[L6] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, + /*-*/    /*-*/    /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/    /*-*/    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = {}; + +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 +#define UC_MODE_OSX 2 + +// TODO: allow default mode to be configured +static uint16_t unicode_mode = UC_MODE_WIN; + +uint16_t hextokeycode(uint8_t hex) { +    if (hex == 0x0) { +        return KC_P0; +    } +    if (hex < 0xA) { +        return KC_P1 + (hex - 0x1); +    } +    return KC_A + (hex - 0xA); +} + +void unicode_action_function(uint16_t hi, uint16_t lo) { +    switch (unicode_mode) { +    case UC_MODE_WIN: +        register_code(KC_LALT); + +        register_code(KC_PPLS); +        unregister_code(KC_PPLS); + +        register_code(hextokeycode((hi & 0xF0) >> 4)); +        unregister_code(hextokeycode((hi & 0xF0) >> 4)); +        register_code(hextokeycode((hi & 0x0F))); +        unregister_code(hextokeycode((hi & 0x0F))); +        register_code(hextokeycode((lo & 0xF0) >> 4)); +        unregister_code(hextokeycode((lo & 0xF0) >> 4)); +        register_code(hextokeycode((lo & 0x0F))); +        unregister_code(hextokeycode((lo & 0x0F))); + +        unregister_code(KC_LALT); +        break; +    case UC_MODE_LINUX: +        register_code(KC_LCTL); +        register_code(KC_LSFT); + +        register_code(KC_U); +        unregister_code(KC_U); + +        register_code(hextokeycode((hi & 0xF0) >> 4)); +        unregister_code(hextokeycode((hi & 0xF0) >> 4)); +        register_code(hextokeycode((hi & 0x0F))); +        unregister_code(hextokeycode((hi & 0x0F))); +        register_code(hextokeycode((lo & 0xF0) >> 4)); +        unregister_code(hextokeycode((lo & 0xF0) >> 4)); +        register_code(hextokeycode((lo & 0x0F))); +        unregister_code(hextokeycode((lo & 0x0F))); + +        unregister_code(KC_LCTL); +        unregister_code(KC_LSFT); +        break; +    case UC_MODE_OSX: +        break; +    } +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { +    if (!record->event.pressed) { +        return MACRO_NONE; +    } +    // MACRODOWN only works in this function +    switch(id) { +        case UM: +            unicode_mode = (unicode_mode + 1) % 2; +            break; + + +        default: +            break; +    } +    return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { +    uint8_t layer = biton32(layer_state); + +    ergodox_board_led_off(); +    ergodox_right_led_1_off(); +    ergodox_right_led_2_off(); +    ergodox_right_led_3_off(); +    switch (layer) { +        case L1: +            ergodox_right_led_1_on(); +            break; +        case L2: +            ergodox_right_led_2_on(); +            break; +        case L3: +            ergodox_right_led_3_on(); +            break; +        case L4: +            ergodox_right_led_1_on(); +            ergodox_right_led_2_on(); +            break; +        case L5: +            ergodox_right_led_1_on(); +            ergodox_right_led_3_on(); +            break; +        // case L6: +        //     ergodox_right_led_2_on(); +        //     ergodox_right_led_3_on(); +        //     break; +        // case L7: +        //     ergodox_right_led_1_on(); +        //     ergodox_right_led_2_on(); +        //     ergodox_right_led_3_on(); +        //     break; +        default: +            ergodox_board_led_off(); +            break; +    } +}; diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md new file mode 100644 index 0000000000..fdcc86a497 --- /dev/null +++ b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md @@ -0,0 +1,188 @@ +# ManuNeo Ergodox Keyboard Layout + +Compile this file to a `keymap.c` file using `compile_keymap.py` + +    python compile_keymap.py keymaps/german-manuneo/keymap.md + +Tested with python 2.7 and python 3.4 + + +# Layout Config + +    { +        "layout": "ergodox_ez", +        "keymaps_includes": [ +            "ergodox.h", +            "action_layer.h", +            "keymap_common.h", +            "keymap_extras/keymap_german.h", +        ], +        "key_prefixes": ["DE_", "KC_"], +        "macros": { +            // TODO: implement macros +            // "MUC": "", +        }, +        // TODO: implement default unicode mode +    } + + +# Layers + + +## Layer 0 + +    .------------------------------------.------------------------------------. +    |ESC  | 1  | 2  | 3  | 4  | 5  |ACUT | GRV | 6  | 7  | 8  | 9  | 0  |CIRC | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |TAB  | X  | V  | L  | C  | W  |     |     | K  | H  | G  | F  | Q  |  SS | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |MO(1)| U  | I  | A  | E  | O  |-----!-----! S  | N  | R  | T  | D  | Y   | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |LSFT | UE | OE | AE | P  | Z  |SPACE|     | B  | M  |COMM| DOT| J  |RSFT | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |LCTL|LGUI|LCTL|MO(3)|MO(2)|                   !MO(2)|MO(3)|APP |RALT|RCTL| +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |ENTER|MO(3)|LGUI | !RCTL |MO(1)|SPACE| +                      '-----------------' '-----------------' + + +## Layer 1 + +    .------------------------------------.------------------------------------. +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     |EURO|UNDS|LBRC|RBRC|    |     |     |EXLM|LESS|MORE|EQL |AMPR|     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |BSLS|SLSH|LCBR|RCBR|ASTR|-----!-----!QST |LPRN|RPRN|MINS|COLN| AT  | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |HASH|DLR |PIPE|TILD|    |     |     |PLUS|PERC|DQOT|QUOT|SCLN|     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |    |    |    | +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |     | +                      '-----------------' '-----------------' + + +## Layer 2 + +    .------------------------------------.------------------------------------. +    |     |    |    |    |    |    |     |     |    |    |    |    |    |PEQL | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     |PGUP|BSPC| UP |DEL |PGDN|     |     |    |  7 |  8 |  9 |PAST|PSLS | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |HOME|LEFT|DOWN|RGHT|END |-----!-----!    |  4 |  5 |  6 |PMNS|     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |  1 |  2 |  3 |PPLS|     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |PCMM|PDOT|PENT| +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |  0  | +                      '-----------------' '-----------------' + + + +## Layer 3 + +    .------------------------------------.------------------------------------. +    |     | F1 | F2 | F3 | F4 | F5 | F6  |     |    |    |    |    |    |     | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     | F7 | F8 | F9 | F10| F11| F12 |    |    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |    |    |    | +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |     | +                      '-----------------' '-----------------' + + +## Layer 4 + + + +    .------------------------------------.------------------------------------. +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |    |    |    | +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |     | +                      '-----------------' '-----------------' + + +## Layer 5 + + +    .------------------------------------.------------------------------------. +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |    |    |    | +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |     | +                      '-----------------' '-----------------' + + +## Layer 6 + +    .------------------------------------.------------------------------------. +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |-----!-----!    |    |    |    |    |     | +    !-----+----+----+----x----x----!     !     !----x----x----+----+----+-----! +    |     |    |    |    |    |    |     |     |    |    |    |    |    |     | +    '-----+----+----+----+----+----------'----------+----+----+----+----+-----' +     |    |    |    |    |    |                     !    |    |    |    |    | +     '------------------------'                     '------------------------' +                            .-----------. .-----------. +                            |     |     | !     |     | +                      .-----+-----+-----! !-----+-----+-----. +                      !     !     |     | !     |     !     ! +                      !     !     !-----! !-----!     !     ! +                      |     |     |     | !     |     |     | +                      '-----------------' '-----------------' + | 
