From 0064f1f84cf8470beb32557145dc5d1b9c977fc8 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 30 Jul 2016 08:46:01 -0500 Subject: Moved my Ergodox keymap to match upstream changes --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 374 +++++++++++++++++++++ .../ergodox/keymaps/replicaJunction/readme.md | 5 + 2 files changed, 379 insertions(+) create mode 100644 keyboards/ergodox/keymaps/replicaJunction/keymap.c create mode 100644 keyboards/ergodox/keymaps/replicaJunction/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c new file mode 100644 index 0000000000..bc5cbc643b --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -0,0 +1,374 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +/* + * Keyboard: Ergodox + * Keymap: replicaJunction + * Version: 1.1 + * + * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * have both keyboards, so I've designed these layouts in an effort to make switching between the + * two as easy as possible. + * + * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found + * here: https://colemakmods.github.io/mod-dh/ + */ + +#define _CO 0 // Colemak +#define _DV 1 // Dvorak +#define _QW 2 // QWERTY +#define _ME 3 // media keys +#define _NU 4 // numpad +#define _EX 5 // extend +#define _GA 6 // mouse overlay for gaming + +#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at + +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | Left | Right| + * ,------|------|------| |------+------+------. + * |Shift/| Ctrl/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | + * `--------------------' `--------------------' + */ + +[_CO] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + + KC_LCTL, KC_LALT, + KC_HOME, + SFT_T(KC_BSPC), CTL_T(KC_DEL), MO(_NU), + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, + KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, + MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) + ), + + /* + * Keymap: Dvorak layout + * + * The right index backspace is a nod to my TypeMatrix keyboard, which has + * Backspace in the center. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | _ME | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | PgDn | | | + * `--------------------' `--------------------' + */ + +// _DV +[_DV] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, + KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(_ME), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(_NU,KC_SPC) + ), + + /* + * Keymap: QWERTY layout. + * + * This is optimized for gaming, not typing, so there aren't as many macros + * as the Dvorak layer. Some of the keys have also been moved to "game- + * like" locations, such as making the spacebar available to the left thumb, + * and repositioning the arrow keys at the bottom right corner. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtrl| ` | \ |CtlShf| _NU | | ~_GA | / | Left | Down | Right| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | _ME | ~_GA | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | _NU/ | + * | Space| LAlt |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +[_QW] = KEYMAP( // Layer1: QWERTY + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), + + KC_LCTL,KC_LALT, + KC_HOME, + KC_SPC, KC_LALT, KC_END, + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, + TG(_GA),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + + MO(_ME),TG(_GA), + KC_PGUP, + KC_PGDN,KC_ENT,LT(_NU,KC_SPC) + ), + +/* + * Keymap: Numbers and symbols + * + * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. + * That's why the Num Lock key exists on this layer - just in case. + * + * This layer also contains the layout switches. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |NumLck| | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_NU] = KEYMAP( + // left hand + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, + _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, + RESET, DF(_QW), DF(_DV), DF(_CO), _______, + + KC_NLCK,_______, + _______, + _______,_______,_______, + // right hand + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, KC_SLSH, KC_P7, KC_P8, KC_P9, KC_PAST, _______, + KC_PIPE, KC_P4, KC_P5, KC_P6, KC_PMNS, _______, + _______, KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PPLS, _______, + KC_P0, KC_PDOT, KC_EQL, _______, _______, + + _______, _______, + _______, + _______, _______, _______ + ), + + /* + * Keymap: Extend + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_EX] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______ + ), + + /* + * Keymap: Gaming + * + * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |MClick| | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | ~_GA| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------|RClick|LClick| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_GA] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, + _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + KC_BTN3, _______, _______, _______, _______, + _______, _______, + _______, + _______, KC_BTN2, KC_BTN1 + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(_NU) // FN1 - Momentary Layer 1 (Numbers and symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + 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); + // uint8_t default_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 _CO: + ergodox_right_led_1_on(); + break; + case _QW: + ergodox_right_led_2_on(); + break; + case _NU: + ergodox_right_led_3_on(); + break; + case _GA: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/replicaJunction/readme.md b/keyboards/ergodox/keymaps/replicaJunction/readme.md new file mode 100644 index 0000000000..8c4c03353a --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/readme.md @@ -0,0 +1,5 @@ +# replicaJunction - Ergodox (EZ) Layout + +I designed this layout, along with my complimentary Atreus layout, to address the challenge of having an Ergodox as my primary home keyboard and an Atreus as my primary work board. I wanted a layout that provided symbols in comfortable locations on both keyboards - but didn't require me to learn two separate sets of symbols for the two keyboards. + +I had originally used several keys as dual-role keys, where a tap would send a keypress and a long press and hold would trigger a different layer. However, after several months of experimenting with those ideas, I've begun moving away from that design due to performance. It's very hard to strike a balance between the time it takes to press a key normally while typing and the "delay" in the typing motion needed to trigger the alternate layer. I was frequently getting strange characters and artifacts because I pressed the function key + the symbol key too quickly, and the layer never shifted. \ No newline at end of file -- cgit v1.2.1 From fdb8a4cd658e940587f552e348a5c0b2732ffcba Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 21:28:31 -0500 Subject: Created keymap-specific config.h --- keyboards/ergodox/keymaps/replicaJunction/config.h | 63 ++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 keyboards/ergodox/keymaps/replicaJunction/config.h (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h new file mode 100644 index 0000000000..d03e193db9 --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -0,0 +1,63 @@ +/* +Config file - Ergodox QMK with replicaJunction layout + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef KEYBOARDS_ERGODOX_CONFIG_H_ +#define KEYBOARDS_ERGODOX_CONFIG_H_ + +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_MAX_SPEED 3 +#define MOUSEKEY_TIME_TO_MAX 10 + +#define TAPPING_TOGGLE 1 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +#define TAPPING_TERM 200 +#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) + +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + +// I don't have any locking keys, so I don't need these features + + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ + +//#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +//#define LOCKING_RESYNC_ENABLE + +/* Prevent modifiers from sticking when switching layers */ +#define PREVENT_STUCK_MODIFIERS + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ + keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ +) + +#ifdef SUBPROJECT_ez + #include "ez/config.h" +#endif +#ifdef SUBPROJECT_infinity + #include "infinity/config.h" +#endif + + +#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ -- cgit v1.2.1 From ea8638b9440ca9e8cf99437b01c69c5f9e7693d5 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 21:29:22 -0500 Subject: Changed left thumb back to Ctrl/Alt Removed Shift from left thumb --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index bc5cbc643b..6c8333ab07 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -1,7 +1,3 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" - /* * Keyboard: Ergodox * Keymap: replicaJunction @@ -16,6 +12,10 @@ * here: https://colemakmods.github.io/mod-dh/ */ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" + #define _CO 0 // Colemak #define _DV 1 // Dvorak #define _QW 2 // QWERTY @@ -26,9 +26,6 @@ #define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * Keymap: Colemak-ModDH @@ -42,12 +39,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| LAlt | | Left | Right| * ,------|------|------| |------+------+------. - * |Shift/| Ctrl/| Home | | Up | Alt/| _NU/ | + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | * | BkSp | Del |------| |------| Enter| Space| * | | | _NU | | Down | | | * `--------------------' `--------------------' @@ -59,11 +56,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, KC_LCTL, KC_LALT, KC_HOME, - SFT_T(KC_BSPC), CTL_T(KC_DEL), MO(_NU), + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, -- cgit v1.2.1 From fe7b46579c05d4aa19d88bc61b8b04967a914f39 Mon Sep 17 00:00:00 2001 From: Daniel Date: Wed, 10 Aug 2016 19:37:59 -0500 Subject: completes first-pass at base layer --- .../ergodox/keymaps/common-nighthawk/keymap.c | 183 +++++++++++++++++++++ 1 file changed, 183 insertions(+) create mode 100644 keyboards/ergodox/keymaps/common-nighthawk/keymap.c (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c new file mode 100644 index 0000000000..f222ad839c --- /dev/null +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -0,0 +1,183 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Esc | x | x | x | x | x | Home | | End | x | x | x | x | x | `~ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp | Y | U | I | O | P |Bks/Ctrl| + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| + * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| + * |_/LShift| Z | X | C | V | B | | | | N | M | ,< | .> | /? | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Alt | x | x | x | Left | |Right | x | x | x | Alt | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | x | x | | x | x | + * ,------|------|------| |------+--------+------. + * | | | x | | x | | | + * | ~L1 | x |------| |------| x | ~L1 | + * | | |Teensy| |Teensy| | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_1, KC_1, KC_1, KC_1, KC_HOME, + CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + SFT_T(KC_UNDS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, + KC_1, KC_1, + KC_1, + KC_FN1, KC_1, RESET, + // right hand + KC_END, KC_1, KC_1, KC_1, KC_1, KC_1, KC_GRV, + KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSLS), + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_1, KC_1, + KC_1, + RESET, KC_1, KC_FN1 + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_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, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, 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_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + 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) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; -- cgit v1.2.1 From 916d12f9fab526d55bb864479520901635756f80 Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 12 Aug 2016 14:37:13 -0500 Subject: completes first-pass at symbol layer --- .../ergodox/keymaps/common-nighthawk/keymap.c | 72 +++++++++++----------- 1 file changed, 36 insertions(+), 36 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index f222ad839c..34fae9ac3a 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | x | x | | x | x | * ,------|------|------| |------+--------+------. * | | | x | | x | | | - * | ~L1 | x |------| |------| x | ~L1 | + * |Sp/~L1| L2 |------| |------| L2 |Sp/~L1| * | | |Teensy| |Teensy| | | * `--------------------' `----------------------' */ @@ -33,36 +33,36 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_1, KC_1, KC_HOME, - CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - SFT_T(KC_UNDS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, - KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, - KC_1, KC_1, - KC_1, - KC_FN1, KC_1, RESET, + KC_ESC, KC_1, KC_1, KC_1, KC_1, KC_1, KC_HOME, + CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + SFT_T(KC_UNDS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, + KC_1, KC_1, + KC_1, + LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, KC_1, KC_1, KC_1, KC_1, KC_1, KC_GRV, - KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSLS), - KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_END, KC_1, KC_1, KC_1, KC_1, KC_1, KC_GRV, + KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, KC_1, KC_1, KC_1, - RESET, KC_1, KC_FN1 + RESET, TG(MDIA), LT(SYMB, KC_SPC) ), /* Keymap 1: Symbol Layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * | | ! | ^ | { | ( | [ | | | | = | 7 | 8 | 9 | 0 | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * | | & | $ | } | ) | ] |------| |------| + | 4 | 5 | 6 | * | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * | | \ | # | @ | % | | | | | | - | 1 | 2 | 3 | / | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | . | 0 | = | | + * | | | | | | | | | . | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -75,28 +75,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // SYMBOLS [SYMB] = KEYMAP( // left hand - M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, - KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, - KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_EXLM, KC_CIRC, KC_LCBR, KC_LPRN, KC_LBRC, KC_TRNS, + KC_TRNS, KC_AMPR, KC_DLR, KC_RCBR, KC_RPRN, KC_RBRC, + KC_TRNS, KC_BSLS, KC_HASH, KC_AT, KC_PERC, KC_PIPE, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, - KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, - KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_TRNS, KC_EQL, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_PLUS, KC_4, KC_5, KC_6, KC_ASTR, KC_TRNS, + KC_TRNS, KC_MINS, KC_1, KC_2, KC_3, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_DOT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | + * |Version | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | | | MsUp | | | | | | | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // MEDIA AND MOUSE [MDIA] = KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + M(0), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, 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, -- cgit v1.2.1 From 558bf2ed07ff04455b509c81a4f3312f5dbd308c Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 12 Aug 2016 19:27:44 -0500 Subject: completes first-pass at media layer --- .../ergodox/keymaps/common-nighthawk/keymap.c | 30 +++++++++++----------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 34fae9ac3a..7c232246da 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -11,13 +11,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | Esc | x | x | x | x | x | Home | | End | x | x | x | x | x | `~ | + * | Esc | x | x | x | _ | x | Home | | End | x | Esc | x | x | x | `~ | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp | Y | U | I | O | P |Bks/Ctrl| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| - * |_/LShift| Z | X | C | V | B | | | | N | M | ,< | .> | /? | RShift | + * |[/LShift| Z | X | C | V | B | | | | N | M | ,< | .> | /? |]/RShift| * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | Alt | x | x | x | Left | |Right | x | x | x | Alt | * `----------------------------------' `----------------------------------' @@ -33,19 +33,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_1, KC_1, KC_HOME, + KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, KC_1, KC_HOME, CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - SFT_T(KC_UNDS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + SFT_T(KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, KC_1, KC_1, KC_1, LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, KC_1, KC_1, KC_1, KC_1, KC_1, KC_GRV, + KC_END, KC_1, KC_ESC, KC_1, KC_1, KC_1, KC_GRV, KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RBRC), KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, KC_1, KC_1, KC_1, @@ -98,13 +98,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * |Version | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | + * | | | | MsUp | | | | | | Play | Prev | Next | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * | | |MsLeft|MsDown|MsRght| |------| |------| | Lclk | Rclk | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | + * | | | | | | | | | | Mute |VolDn |VolUp | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -120,16 +120,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, 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_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WBAK -- cgit v1.2.1 From 8019a074cfe39e2bf04c35bb5fb40c9ff9cda9a4 Mon Sep 17 00:00:00 2001 From: Daniel Date: Sun, 14 Aug 2016 20:43:05 -0500 Subject: minor tweaks to numpad and media layer --- .../ergodox/keymaps/common-nighthawk/keymap.c | 50 +++++++++++----------- 1 file changed, 24 insertions(+), 26 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 7c232246da..d57f665317 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -22,34 +22,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | Alt | x | x | x | Left | |Right | x | x | x | Alt | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | x | x | | x | x | + * |CapLok| x | | x | Del | * ,------|------|------| |------+--------+------. * | | | x | | x | | | * |Sp/~L1| L2 |------| |------| L2 |Sp/~L1| * | | |Teensy| |Teensy| | | * `--------------------' `----------------------' */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, KC_1, KC_HOME, - CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - SFT_T(KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, - KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, - KC_1, KC_1, - KC_1, - LT(SYMB, KC_SPC), TG(MDIA), RESET, + KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, KC_1, KC_HOME, + CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + SFT_T(KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, + KC_CAPS, KC_1, + KC_1, + LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, KC_1, KC_ESC, KC_1, KC_1, KC_1, KC_GRV, - KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), - KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RBRC), - KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, - KC_1, KC_1, + KC_END, KC_1, KC_ESC, KC_1, KC_1, KC_1, KC_GRV, + KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RBRC), + KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_1, KC_DEL, KC_1, - RESET, TG(MDIA), LT(SYMB, KC_SPC) + RESET, TG(MDIA), LT(SYMB, KC_SPC) ), /* Keymap 1: Symbol Layer * @@ -62,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | \ | # | @ | % | | | | | | - | 1 | 2 | 3 | / | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | . | | | + * | | | | | | | 0 | 0 | . | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -88,7 +86,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_EQL, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_PLUS, KC_4, KC_5, KC_6, KC_ASTR, KC_TRNS, KC_TRNS, KC_MINS, KC_1, KC_2, KC_3, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_DOT, KC_TRNS, KC_TRNS, + KC_0, KC_0, KC_DOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -98,11 +96,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * |Version | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | Play | Prev | Next | | | | + * | | | xx | MsUp | xx | | | | | Play | Prev | Next | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | Lclk | Rclk | | | | + * | | |MsLeft|MsDown|MsRght| |------| |------| xx | Lclk | Rclk | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | Mute |VolDn |VolUp | | | | + * | | | xx | xx | xx | | | | | Mute |VolDn |VolUp | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -117,9 +115,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // MEDIA AND MOUSE [MDIA] = KEYMAP( M(0), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_NO, KC_MS_U, KC_NO, KC_TRNS, 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_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -127,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, + KC_NO, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, -- cgit v1.2.1 From 0c598f53c18419a10b143098b57a431c5545f906 Mon Sep 17 00:00:00 2001 From: Daniel Date: Thu, 1 Sep 2016 23:37:52 -0600 Subject: adds Hyper key. improves media layer. first attempt at tap dance. --- .../ergodox/keymaps/common-nighthawk/keymap.c | 75 ++++++++++++---------- 1 file changed, 41 insertions(+), 34 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index d57f665317..919b7946cd 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -11,43 +11,48 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | Esc | x | x | x | _ | x | Home | | End | x | Esc | x | x | x | `~ | + * | Esc | x | x | x | _ | Hypr | Home | | End | Hypr | Esc | x | x | x | `~ | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp | Y | U | I | O | P |Bks/Ctrl| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| - * |[/LShift| Z | X | C | V | B | | | | N | M | ,< | .> | /? |]/RShift| + * | Sft//[ | Z | X | C | V | B | | | | N | M | ,< | .> | /? |]/RShift| * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | Alt | x | x | x | Left | |Right | x | x | x | Alt | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * |CapLok| x | | x | Del | + * | Mute | VolUp| | Play | Del | * ,------|------|------| |------+--------+------. - * | | | x | | x | | | + * | | | VolDn| | Next | | | * |Sp/~L1| L2 |------| |------| L2 |Sp/~L1| - * | | |Teensy| |Teensy| | | + * | | |Teensy| | Prev | | | * `--------------------' `----------------------' */ + /* TO DO: turn on third light when shifted */ + /* consider turning caplock back on. but maybe not. */ + /* get less key presses for ShiftIt going with MEH or CAG */ + /* make all letter keys KC_NO for the media layer */ + /* add the mouse wheel up and down */ [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, KC_1, KC_HOME, - CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - SFT_T(KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, - KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, - KC_CAPS, KC_1, - KC_1, - LT(SYMB, KC_SPC), TG(MDIA), RESET, + KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, ALL_T(KC_NO), KC_HOME, + CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, + KC_MUTE, KC_VOLU, + KC_VOLD, + LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, KC_1, KC_ESC, KC_1, KC_1, KC_1, KC_GRV, - KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), - KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RBRC), - KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, - KC_1, KC_DEL, - KC_1, - RESET, TG(MDIA), LT(SYMB, KC_SPC) + KC_END, ALL_T(KC_NO), KC_ESC, KC_1, KC_1, KC_1, KC_GRV, + KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_RBRC), + KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_MPLY, KC_DEL, + KC_MNXT, + KC_MPRV, TG(MDIA), LT(SYMB, KC_SPC) ), /* Keymap 1: Symbol Layer * @@ -96,11 +101,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * |Version | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | xx | MsUp | xx | | | | | Play | Prev | Next | | | | + * | | | | | | | | | | | WhDn | WhUp | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| xx | Lclk | Rclk | | | | + * | | | | R-Ck | L-Ck | |------| |------| MsLt | MsDn | MsUp | MsRt | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | xx | xx | xx | | | | | Mute |VolDn |VolUp | | | | + * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -115,19 +120,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // MEDIA AND MOUSE [MDIA] = KEYMAP( M(0), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_NO, KC_MS_U, KC_NO, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN1, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, - KC_NO, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_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_WH_D, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MS_LEFT, KC_MS_DOWN, KC_MS_UP, KC_MS_RIGHT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WBAK @@ -168,7 +173,7 @@ void matrix_scan_user(void) { switch (layer) { // TODO: Make this relevant to the ErgoDox EZ. case 1: - ergodox_right_led_1_on(); + ergodox_right_led_3_on(); break; case 2: ergodox_right_led_2_on(); @@ -177,5 +182,7 @@ void matrix_scan_user(void) { // none break; } - + if (keyboard_report->mods & MOD_BIT(KC_LSFT)) { + ergodox_right_led_1_on (); + } }; -- cgit v1.2.1 From 250f096144529d6dbea4ae138da108440481ff22 Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 2 Sep 2016 14:35:15 -0600 Subject: adds tap dance and macro to move underscore and l- and r- brackets to base layer. --- .../ergodox/keymaps/common-nighthawk/Makefile | 6 ++ .../ergodox/keymaps/common-nighthawk/keymap.c | 76 +++++++++++++++------- 2 files changed, 57 insertions(+), 25 deletions(-) create mode 100644 keyboards/ergodox/keymaps/common-nighthawk/Makefile (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/Makefile b/keyboards/ergodox/keymaps/common-nighthawk/Makefile new file mode 100644 index 0000000000..fafa40c43d --- /dev/null +++ b/keyboards/ergodox/keymaps/common-nighthawk/Makefile @@ -0,0 +1,6 @@ +SUBPROJECT_DEFAULT = ez +TAP_DANCE_ENABLE = yes + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 919b7946cd..9744313700 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -7,17 +7,34 @@ #define SYMB 1 // symbols #define MDIA 2 // media keys +//Tap Dance Declarations +enum { + TD_J_LBRC = 0, + TD_K_RBRC, + TD_Y_ESC, +}; + +//Tap Dance Definitions +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_J_LBRC] = ACTION_TAP_DANCE_DOUBLE(KC_J, KC_LBRC), + [TD_K_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_K, KC_RBRC), + [TD_Y_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Y, KC_ESC) +}; + +//Macro Declarations +static uint16_t sunds_timer; + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. * | Esc | x | x | x | _ | Hypr | Home | | End | Hypr | Esc | x | x | x | `~ | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp | Y | U | I | O | P |Bks/Ctrl| + * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp |Y 2Esc| U | I | O | P |Bks/Ctrl| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| + * | '"/Cmd | A | S | D | F | G |------| |------| H | J 2[ | K 2] | L | ;: |Entr/Cmd| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| - * | Sft//[ | Z | X | C | V | B | | | | N | M | ,< | .> | /? |]/RShift| + * | _/Shft | Z | X | C | V | B | | | | N | M | ,< | .> | /? | _/Shft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | Alt | x | x | x | Left | |Right | x | x | x | Alt | * `----------------------------------' `----------------------------------' @@ -29,27 +46,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | |Teensy| | Prev | | | * `--------------------' `----------------------' */ - /* TO DO: turn on third light when shifted */ - /* consider turning caplock back on. but maybe not. */ - /* get less key presses for ShiftIt going with MEH or CAG */ - /* make all letter keys KC_NO for the media layer */ - /* add the mouse wheel up and down */ [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, ALL_T(KC_NO), KC_HOME, - CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_LBRC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, - KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, - KC_MUTE, KC_VOLU, - KC_VOLD, - LT(SYMB, KC_SPC), TG(MDIA), RESET, + KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, ALL_T(KC_NO), KC_HOME, + CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + M(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, + KC_MUTE, KC_VOLU, + KC_VOLD, + LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, ALL_T(KC_NO), KC_ESC, KC_1, KC_1, KC_1, KC_GRV, - KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), - KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_RBRC), - KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_END, ALL_T(KC_NO), KC_ESC, KC_1, KC_1, KC_1, KC_GRV, + KC_PGUP, TD(TD_Y_ESC), KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), + KC_H, TD(TD_J_LBRC), TD(TD_K_RBRC), KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, M(1), + KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, KC_MPLY, KC_DEL, KC_MNXT, KC_MPRV, TG(MDIA), LT(SYMB, KC_SPC) @@ -148,10 +160,24 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) // MACRODOWN only works in this function switch(id) { case 0: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + + case 1: + if (record->event.pressed) { + sunds_timer = timer_read(); + register_code (KC_LSFT); + } else { + if (timer_elapsed (sunds_timer) < TAPPING_TERM) { + register_code (KC_MINS); + unregister_code (KC_MINS); + } + unregister_code (KC_LSFT); + } + break; + } return MACRO_NONE; }; -- cgit v1.2.1 From b807867f955f95f832901b9d0cc0eed97ab8cea0 Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 6 Sep 2016 21:56:27 -0600 Subject: moves brackets from J/K to U/I to remove block of common vim sequence. --- keyboards/ergodox/keymaps/common-nighthawk/keymap.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 9744313700..ab0dcfece2 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -9,15 +9,15 @@ //Tap Dance Declarations enum { - TD_J_LBRC = 0, - TD_K_RBRC, + TD_U_LBRC = 0, + TD_I_RBRC, TD_Y_ESC, }; //Tap Dance Definitions qk_tap_dance_action_t tap_dance_actions[] = { - [TD_J_LBRC] = ACTION_TAP_DANCE_DOUBLE(KC_J, KC_LBRC), - [TD_K_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_K, KC_RBRC), + [TD_U_LBRC] = ACTION_TAP_DANCE_DOUBLE(KC_U, KC_LBRC), + [TD_I_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_I, KC_RBRC), [TD_Y_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Y, KC_ESC) }; @@ -30,9 +30,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | Esc | x | x | x | _ | Hypr | Home | | End | Hypr | Esc | x | x | x | `~ | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp |Y 2Esc| U | I | O | P |Bks/Ctrl| + * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp |Y 2Esc| U 2[ | I 2] | O | P |Bks/Ctrl| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | '"/Cmd | A | S | D | F | G |------| |------| H | J 2[ | K 2] | L | ;: |Entr/Cmd| + * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| * | _/Shft | Z | X | C | V | B | | | | N | M | ,< | .> | /? | _/Shft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -58,8 +58,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand KC_END, ALL_T(KC_NO), KC_ESC, KC_1, KC_1, KC_1, KC_GRV, - KC_PGUP, TD(TD_Y_ESC), KC_U, KC_I, KC_O, KC_P, CTL_T(KC_BSPC), - KC_H, TD(TD_J_LBRC), TD(TD_K_RBRC), KC_L, KC_SCOLON, GUI_T(KC_ENT), + KC_PGUP, TD(TD_Y_ESC), TD(TD_U_LBRC), TD(TD_I_RBRC), KC_O, KC_P, CTL_T(KC_BSPC), + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, M(1), KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, KC_MPLY, KC_DEL, -- cgit v1.2.1 From a9c8f2f5b888e18857bc2987c4b5058912404abe Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 16:44:26 -0500 Subject: Reduced TAPPING_TERM to 150 Also removed duplicate definition of PREVENT_STUCK_MODIFIERS --- keyboards/ergodox/keymaps/replicaJunction/config.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h index d03e193db9..c620349ad0 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/config.h +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -28,12 +28,9 @@ along with this program. If not, see . /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST -#define TAPPING_TERM 200 +#define TAPPING_TERM 150 #define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - // I don't have any locking keys, so I don't need these features @@ -44,6 +41,7 @@ along with this program. If not, see . //#define LOCKING_RESYNC_ENABLE /* Prevent modifiers from sticking when switching layers */ +/* Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers */ #define PREVENT_STUCK_MODIFIERS /* key combination for command */ -- cgit v1.2.1 From d9db5395b3f11728926dcde77046a5ac7bff0123 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 16:51:40 -0500 Subject: Updated layout to 1.2 - lots of changes Rewrote QWERTY to make it a first-class citizen instead of just a glorified game layer. Added a lot of keys to Extend layer to bring it in line with my Atreus. Plenty of other changes too. --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 186 ++++++++------------- 1 file changed, 74 insertions(+), 112 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 6c8333ab07..7c2b051f97 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -1,7 +1,7 @@ /* * Keyboard: Ergodox * Keymap: replicaJunction - * Version: 1.1 + * Version: 1.2 * * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now @@ -17,14 +17,22 @@ #include "action_layer.h" #define _CO 0 // Colemak -#define _DV 1 // Dvorak -#define _QW 2 // QWERTY -#define _ME 3 // media keys -#define _NU 4 // numpad -#define _EX 5 // extend -#define _GA 6 // mouse overlay for gaming +#define _QW 1 // QWERTY +#define _ME 2 // media keys +#define _NU 3 // numpad +#define _EX 4 // extend +#define _GA 5 // mouse overlay for gaming -#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at +// Some quick aliases, just to make it look pretty +#define _______ KC_TRNS +#define KCX_CGR LCTL(KC_GRV) +#define KCX_LST LSFT(KC_TAB) +#define KX_COPY LCTL(KC_C) +#define KX_CUT LCTL(KC_X) +#define KX_PAST LCTL(KC_V) +#define KX_UNDO LCTL(KC_Z) + +; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* @@ -33,16 +41,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * | Tab | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * | LCtl | A | R | S | T | G |------| |------| M | N | E | I | O | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | Left | Right| + * | LCtrl| ~GA | | Left | Right| * ,------|------|------| |------+------+------. * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | * | BkSp | Del |------| |------| Enter| Space| @@ -53,12 +61,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_LCTL,KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, - KC_LCTL, KC_LALT, + KC_LCTL, TG(_GA), KC_HOME, CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand @@ -73,56 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), - /* - * Keymap: Dvorak layout - * - * The right index backspace is a nod to my TypeMatrix keyboard, which has - * Backspace in the center. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | RAlt | - * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | PgDn | | | - * `--------------------' `--------------------' - */ - -// _DV -[_DV] = KEYMAP( - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, - KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), - - KC_LCTL, KC_LALT, - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, - KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, - KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, - KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, - - MO(_ME), KC_RALT, - KC_PGUP, - KC_PGDN, KC_ENT, LT(_NU,KC_SPC) - ), - /* * Keymap: QWERTY layout. * @@ -132,45 +90,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * and repositioning the arrow keys at the bottom right corner. * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * | LShift | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | - * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| - * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LCtrl| ` | \ |CtlShf| _NU | | ~_GA | / | Left | Down | Right| + * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | [ | ] | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | ~_GA | + * | LCtrl| ~GA | | Left | Right| * ,------|------|------| |------+------+------. - * | | | Home | | PgUp | | _NU/ | - * | Space| LAlt |------| |------| Enter| Space| - * | | | End | | PgDn | | | + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | * `--------------------' `--------------------' */ [_QW] = KEYMAP( // Layer1: QWERTY // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), - KC_LCTL,KC_LALT, - KC_HOME, - KC_SPC, KC_LALT, KC_END, + KC_LCTL,TG(_GA), + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU) // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, - KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, - KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, - KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, - TG(_GA),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + KC_BSLS, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, + MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, - MO(_ME),TG(_GA), - KC_PGUP, - KC_PGDN,KC_ENT,LT(_NU,KC_SPC) + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), /* @@ -190,10 +148,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | + * | |QWERTY|Colemk| | | | 0 | . | = | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * |NumLck| | | | | + * |NumLck| RESET| | | | * ,------|------|------| |------+------+------. * | | | | | | | | * | | |------| |------| | | @@ -206,9 +164,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, - RESET, DF(_QW), DF(_DV), DF(_CO), _______, + _______, DF(_QW), DF(_CO), _______, _______, - KC_NLCK,_______, + KC_NLCK,RESET, _______, _______,_______,_______, // right hand @@ -227,13 +185,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Keymap: Extend * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | + * | | F11 | F12 | F13 | F14 | F15 | Mute | | | F16 | F17 | F18 | F19 | F20 | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | + * | | | | | | Ctrl`| Vol | | | PgUp | Home | Up | End | Del | | + * |--------+------+------+------+------+------| Up | | |------+------+------+------+------+--------| + * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | PrntScr| + * |--------+------+------+------+------+------| Vol | | |------+------+------+------+------+--------| + * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -244,23 +202,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | |------| |------| | | * | | | | | | | | * `--------------------' `--------------------' + * + * Ctrl+` is a keyboard shortcut for the program ConEmu, which provides a Quake-style drop-down command prompt. + * */ [_EX] = KEYMAP( // left hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, + _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_MUTE, + _______, _______, _______, _______, _______, KCX_CGR, KC_VOLU, + _______, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, + _______, KX_UNDO, KX_CUT, KX_COPY, _______, KX_PAST, KC_VOLD, _______, _______, _______, _______, _______, _______,_______, _______, _______,_______,_______, // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, + _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_PSCR, + _______, KCX_LST, KC_TAB, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -270,7 +231,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * Keymap: Gaming * - * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * Provides a mouse overlay for the right hand, and also moves some "gamer friendly" keys to the left, such as space. + * This layer also removes a lot of dual-role keys, as when gaming, it's nicer not to need to keep track of those. * * ,--------------------------------------------------. ,--------------------------------------------------. * | | | | | | | | | | | | | | | | @@ -281,13 +243,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | |MClick| | | | | + * | LCtrl| | | | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | ~_GA| + * | | ~_GA | | |MClick| * ,------|------|------| |------+------+------. * | | | | | | | | - * | | |------| |------|RClick|LClick| + * | Space| |------| |------|RClick|LClick| * | | | | | | | | * `--------------------' `--------------------' */ @@ -297,19 +259,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, + KC_LCTL, _______, _______, _______, _______, _______,_______, _______, - _______,_______,_______, + KC_SPC, _______,_______, // right hand _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_BTN3, _______, _______, _______, _______, - _______, _______, + _______, _______, _______, _______, _______, + _______, KC_BTN3, _______, _______, KC_BTN2, KC_BTN1 ), -- cgit v1.2.1 From c67f6ee872561358c1f4d29b2e36087b03080253 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:03:27 -0500 Subject: Added Menu key (the rclick menu) --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 7c2b051f97..f57e7373f4 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -189,9 +189,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | | | | | Ctrl`| Vol | | | PgUp | Home | Up | End | Del | | * |--------+------+------+------+------+------| Up | | |------+------+------+------+------+--------| - * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | PrntScr| + * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | Menu | * |--------+------+------+------+------+------| Vol | | |------+------+------+------+------+--------| - * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| | + * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| PrntScr| * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -220,8 +220,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_PSCR, - _______, KCX_LST, KC_TAB, _______, _______, KC_INS, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, + _______, KCX_LST, KC_TAB, _______, _______, KC_INS, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, -- cgit v1.2.1 From 07149812889e433ce684b14666e89e27264a41ce Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:19:07 -0500 Subject: Fixed typo --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index f57e7373f4..f3a2e95138 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -118,7 +118,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,TG(_GA), KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU) + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, -- cgit v1.2.1 From 80fe2ea676d54d917209567a346963ab9fd93614 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:23:25 -0500 Subject: Switched Tab and Ctrl back --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index f3a2e95138..eaa7810706 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -41,9 +41,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Tab | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LCtl | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -61,8 +61,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_LCTL,KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LCTL,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LShift | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | + * | LCtrl | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| @@ -111,8 +111,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QW] = KEYMAP( // Layer1: QWERTY // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LCTL,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), -- cgit v1.2.1 From 1455a44a449378c55e178ac20d37146ab5132e7c Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:41:36 -0500 Subject: Added = to match Atreus --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index eaa7810706..d467c56b4e 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| ~GA | | Left | Right| @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, KC_LEFT, KC_RGHT, KC_UP, @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | V | B | | | | N | M | , | . | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | [ | ] | + * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | = | \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| ~GA | | Left | Right| @@ -124,7 +124,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_BSLS, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, KC_LEFT, KC_RGHT, KC_UP, -- cgit v1.2.1 From 825563f34d233728b03e5311cc0d77c40123c1cb Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:56:09 -0500 Subject: Moved Extend tab and ^tab --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index d467c56b4e..949a713baf 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -26,7 +26,7 @@ // Some quick aliases, just to make it look pretty #define _______ KC_TRNS #define KCX_CGR LCTL(KC_GRV) -#define KCX_LST LSFT(KC_TAB) +#define KX_STAB LSFT(KC_TAB) #define KX_COPY LCTL(KC_C) #define KX_CUT LCTL(KC_X) #define KX_PAST LCTL(KC_V) @@ -221,7 +221,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, - _______, KCX_LST, KC_TAB, _______, _______, KC_INS, KC_PSCR, + _______, _______, KX_STAB, KC_TAB, _______, KC_INS, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, -- cgit v1.2.1 From a2adff94bb52b5fb7c50b90716255ccfae9f53c3 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 18:05:22 -0500 Subject: Reversed tilde and grave --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 949a713baf..610fa5856c 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -144,9 +144,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | + * | | # | $ | ( | ) | ~ |------| |------| | | 4 | 5 | 6 | - | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | + * | | % | ^ | [ | ] | ` | | | | \ | 1 | 2 | 3 | + | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | |QWERTY|Colemk| | | | 0 | . | = | | | * `----------------------------------' `----------------------------------' @@ -162,8 +162,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, - _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, - _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, + _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, _______, _______, DF(_QW), DF(_CO), _______, _______, KC_NLCK,RESET, -- cgit v1.2.1 From 896c1e6f1efbc7827249872ef64261facec484c5 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 18:19:09 -0500 Subject: Added a bit more detail to header --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 51 ++++++++++++---------- 1 file changed, 27 insertions(+), 24 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 610fa5856c..b7a14c10c8 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -8,6 +8,10 @@ * have both keyboards, so I've designed these layouts in an effort to make switching between the * two as easy as possible. * + * I've also tried to make use of the extra keys on the Ergodox in as logical of a manner as possible, + * adding to the layers in the Atreus config without disturbing what's there already. This allows for + * things like F11-F20, the Application (Menu) key, and better media key placement. + * * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found * here: https://colemakmods.github.io/mod-dh/ */ @@ -35,29 +39,28 @@ ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - * Keymap: Colemak-ModDH - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| ~GA | | Left | Right| - * ,------|------|------| |------+------+------. - * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | Down | | | - * `--------------------' `--------------------' - */ - + /* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| ~GA | | Left | Right| + * ,------|------|------| |------+------+------. + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | + * `--------------------' `--------------------' + */ [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, @@ -131,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), -/* + /* * Keymap: Numbers and symbols * * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. -- cgit v1.2.1 From abee80929880f0813149eb458f968666a18dd6cc Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 18 Nov 2016 11:11:08 -0600 Subject: moves brackets to top row. --- keyboards/ergodox/keymaps/common-nighthawk/keymap.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index ab0dcfece2..14ed257ee0 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | Esc | x | x | x | _ | Hypr | Home | | End | Hypr | Esc | x | x | x | `~ | + * | Esc | x | x | x | Esc | Hypr | Home | | End | Esc | [ | ] | x | `~ | `~ | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp |Y 2Esc| U 2[ | I 2] | O | P |Bks/Ctrl| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_UNDS, ALL_T(KC_NO), KC_HOME, + KC_ESC, KC_1, KC_1, KC_1, KC_ESC, ALL_T(KC_NO), KC_HOME, CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, M(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_VOLD, LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, ALL_T(KC_NO), KC_ESC, KC_1, KC_1, KC_1, KC_GRV, + KC_END, KC_ESC, KC_LBRC, KC_RBRC, KC_1, KC_GRV, KC_GRV, KC_PGUP, TD(TD_Y_ESC), TD(TD_U_LBRC), TD(TD_I_RBRC), KC_O, KC_P, CTL_T(KC_BSPC), KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, M(1), @@ -71,11 +71,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | ^ | { | ( | [ | | | | = | 7 | 8 | 9 | 0 | | + * | | ! | ^ | [ | ( | { | | | | = | 7 | 8 | 9 | 0 | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | & | $ | } | ) | ] |------| |------| + | 4 | 5 | 6 | * | | + * | | & | $ | ] | ) | } |------| |------| + | 4 | 5 | 6 | * | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | \ | # | @ | % | | | | | | - | 1 | 2 | 3 | / | | + * | | \ | @ | # | % | | | | | | - | 1 | 2 | 3 | / | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | 0 | 0 | . | | | * `----------------------------------' `----------------------------------' @@ -91,9 +91,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [SYMB] = KEYMAP( // left hand KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS, KC_EXLM, KC_CIRC, KC_LCBR, KC_LPRN, KC_LBRC, KC_TRNS, - KC_TRNS, KC_AMPR, KC_DLR, KC_RCBR, KC_RPRN, KC_RBRC, - KC_TRNS, KC_BSLS, KC_HASH, KC_AT, KC_PERC, KC_PIPE, KC_TRNS, + KC_TRNS, KC_EXLM, KC_CIRC, KC_LBRC, KC_LPRN, KC_LCBR, KC_TRNS, + KC_TRNS, KC_AMPR, KC_DLR, KC_RBRC, KC_RPRN, KC_RCBR, + KC_TRNS, KC_BSLS, KC_AT, KC_HASH, KC_PERC, KC_PIPE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, -- cgit v1.2.1 From a94eb16bd7d06bcb55136fa67c2b3ec99f146c72 Mon Sep 17 00:00:00 2001 From: Daniel Date: Sun, 27 Nov 2016 16:12:32 -0600 Subject: removes the double actions from the metakeys. --- .../ergodox/keymaps/common-nighthawk/keymap.c | 32 ++++++++++------------ 1 file changed, 15 insertions(+), 17 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 14ed257ee0..be12debba3 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -11,14 +11,12 @@ enum { TD_U_LBRC = 0, TD_I_RBRC, - TD_Y_ESC, }; //Tap Dance Definitions qk_tap_dance_action_t tap_dance_actions[] = { [TD_U_LBRC] = ACTION_TAP_DANCE_DOUBLE(KC_U, KC_LBRC), - [TD_I_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_I, KC_RBRC), - [TD_Y_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_Y, KC_ESC) + [TD_I_RBRC] = ACTION_TAP_DANCE_DOUBLE(KC_I, KC_RBRC) }; //Macro Declarations @@ -28,43 +26,43 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | Esc | x | x | x | Esc | Hypr | Home | | End | Esc | [ | ] | x | `~ | `~ | + * | _ | x | x | _ | Esc | Hypr | Home | | End | Hypr | [ | ] | x | `~ | Bks | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * |Tab/Ctrl| Q | W | E | R | T | Up | | PgUp |Y 2Esc| U 2[ | I 2] | O | P |Bks/Ctrl| + * |Ctrl/Tab| Q | W | E | R | T | Up | | PgUp | Y | U 2[ | I 2] | O | P | Ctrl | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | '"/Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| + * | Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| - * | _/Shft | Z | X | C | V | B | | | | N | M | ,< | .> | /? | _/Shft | + * | Shft | Z | X | C | V | B | | | | N | M | ,< | .> | /? | Shft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | Alt | x | x | x | Left | |Right | x | x | x | Alt | + * | Alt | x | x | x | Left | |Right | Bks | x | x | Alt | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | Mute | VolUp| | Play | Del | * ,------|------|------| |------+--------+------. * | | | VolDn| | Next | | | - * |Sp/~L1| L2 |------| |------| L2 |Sp/~L1| + * |Sp/~L1| L2 |------| |------| L2 |'"/~L1| * | | |Teensy| | Prev | | | * `--------------------' `----------------------' */ [BASE] = KEYMAP( // layer 0 : default // left hand - KC_ESC, KC_1, KC_1, KC_1, KC_ESC, ALL_T(KC_NO), KC_HOME, + KC_UNDS, KC_1, KC_1, KC_UNDS, KC_ESC, ALL_T(KC_NO), KC_HOME, CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, - M(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, + KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, KC_MUTE, KC_VOLU, KC_VOLD, LT(SYMB, KC_SPC), TG(MDIA), RESET, // right hand - KC_END, KC_ESC, KC_LBRC, KC_RBRC, KC_1, KC_GRV, KC_GRV, - KC_PGUP, TD(TD_Y_ESC), TD(TD_U_LBRC), TD(TD_I_RBRC), KC_O, KC_P, CTL_T(KC_BSPC), + KC_END, ALL_T(KC_NO), KC_LBRC, KC_RBRC, KC_1, KC_GRV, KC_BSPC, + KC_PGUP, KC_Y, TD(TD_U_LBRC), TD(TD_I_RBRC), KC_O, KC_P, KC_LCTRL, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), - KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, M(1), - KC_RGHT, KC_1, KC_1, KC_1, KC_RALT, + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_RGHT, KC_BSPC, KC_1, KC_1, KC_RALT, KC_MPLY, KC_DEL, KC_MNXT, - KC_MPRV, TG(MDIA), LT(SYMB, KC_SPC) + KC_MPRV, TG(MDIA), LT(SYMB, KC_QUOT) ), /* Keymap 1: Symbol Layer * -- cgit v1.2.1 From 1f52dbcac01c37157c29038334e1f7b5be9bd4aa Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 6 Dec 2016 14:15:23 -0600 Subject: removes double-tab brackets and adds back quot to left cmd. --- keyboards/ergodox/keymaps/common-nighthawk/keymap.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index be12debba3..5a1e46b7b0 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -26,37 +26,37 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | _ | x | x | _ | Esc | Hypr | Home | | End | Hypr | [ | ] | x | `~ | Bks | + * | _ | x | x | _ | Esc | Hypr | Home | | End | Hypr | [ | ] | `~ | `~ | Bks | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * |Ctrl/Tab| Q | W | E | R | T | Up | | PgUp | Y | U 2[ | I 2] | O | P | Ctrl | + * |Ctrl/Tab| Q | W | E | R | T | Up | | PgUp | Y | U | I | O | P | Ctrl | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Cmd | A | S | D | F | G |------| |------| H | J | K | L | ;: |Entr/Cmd| + * | Cmd/"' | A | S | D | F | G |------| |------| H | J | K | L | ;: |Cmd/Entr| * |--------+------+------+------+------+------| Down | | PgDn |------+------+------+------+------+--------| * | Shft | Z | X | C | V | B | | | | N | M | ,< | .> | /? | Shft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | Alt | x | x | x | Left | |Right | Bks | x | x | Alt | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | Mute | VolUp| | Play | Del | + * |Teensy| VolUp| | Play | Del | * ,------|------|------| |------+--------+------. * | | | VolDn| | Next | | | * |Sp/~L1| L2 |------| |------| L2 |'"/~L1| - * | | |Teensy| | Prev | | | + * | | | Mute | | Prev | | | * `--------------------' `----------------------' */ [BASE] = KEYMAP( // layer 0 : default // left hand KC_UNDS, KC_1, KC_1, KC_UNDS, KC_ESC, ALL_T(KC_NO), KC_HOME, CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, + GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, - KC_MUTE, KC_VOLU, + RESET, KC_VOLU, KC_VOLD, - LT(SYMB, KC_SPC), TG(MDIA), RESET, + LT(SYMB, KC_SPC), TG(MDIA), KC_MUTE, // right hand - KC_END, ALL_T(KC_NO), KC_LBRC, KC_RBRC, KC_1, KC_GRV, KC_BSPC, - KC_PGUP, KC_Y, TD(TD_U_LBRC), TD(TD_I_RBRC), KC_O, KC_P, KC_LCTRL, + KC_END, ALL_T(KC_NO), KC_LBRC, KC_RBRC, KC_GRV, KC_GRV, KC_BSPC, + KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LCTRL, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, GUI_T(KC_ENT), KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RGHT, KC_BSPC, KC_1, KC_1, KC_RALT, -- cgit v1.2.1 From ebe351a6905d5031d5383b4ad7fe551e0e844d52 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Thu, 15 Dec 2016 07:22:31 +0800 Subject: enable brackets using the - key on the right, and cleanups --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index f3d02f688d..3d7e1893c9 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), MO(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, KC_PGUP, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_D, KC_H, KC_T, KC_N, KC_S, LT(BRACKETS,KC_MINS), KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(TD_SHIFT_CAPSLOCK), // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), RCTL(KC_W), @@ -209,12 +209,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BRACKETS] = KEYMAP( // left hand - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,M(OPEN_CLOSE_CURLY), M(OPEN_CLOSE_PAREN),M(OPEN_CLOSE_BRACKET), KC_TRNS,KC_TRNS, + KC_TRNS,KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, KC_LCBR, KC_RCBR, KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, // right hand -- cgit v1.2.1 From eb588d630cdaf6be8ad7514c4b22025aefaa6992 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Wed, 28 Dec 2016 19:27:48 +0100 Subject: ergodox: Update algernon's keymap to v1.10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Miscellaneous ============= * `µ` can now be entered with UCIS. * `™` can now be entered with UCIS. Tools ===== * `tools/hid-commands` can now find Banshee, and prefers it over Kodi. * `tools/hid-commands` can now find Chrome too, not juts Chromium. Signed-off-by: Gergely Nagy --- keyboards/ergodox/keymaps/algernon/NEWS.md | 14 ++++++++++++++ keyboards/ergodox/keymaps/algernon/keymap.c | 8 ++++---- keyboards/ergodox/keymaps/algernon/tools/hid-commands | 5 +++-- 3 files changed, 21 insertions(+), 6 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/algernon/NEWS.md b/keyboards/ergodox/keymaps/algernon/NEWS.md index e11998998c..ee9d606708 100644 --- a/keyboards/ergodox/keymaps/algernon/NEWS.md +++ b/keyboards/ergodox/keymaps/algernon/NEWS.md @@ -1,5 +1,19 @@ +## v1.10 + +*2016-12-28* + +### Miscellaneous + +* `µ` can now be entered with UCIS. +* `™` can now be entered with UCIS. + +### Tools + +* `tools/hid-commands` can now find Banshee, and prefers it over Kodi. +* `tools/hid-commands` can now find Chrome too, not juts Chromium. + ## v1.9 *2016-10-16* diff --git a/keyboards/ergodox/keymaps/algernon/keymap.c b/keyboards/ergodox/keymaps/algernon/keymap.c index bad2403378..b615f3f5fd 100644 --- a/keyboards/ergodox/keymaps/algernon/keymap.c +++ b/keyboards/ergodox/keymaps/algernon/keymap.c @@ -96,8 +96,6 @@ enum { uint16_t gui_timer = 0; -uint16_t kf_timers[12]; - #if KEYLOGGER_ENABLE # ifdef AUTOLOG_ENABLE bool log_enable = true; @@ -786,7 +784,7 @@ static void ang_tap_dance_tmux_pane_select (qk_tap_dance_state_t *state, void *u if (state->count >= 2) { kc = KC_Z; } - + register_code(KC_LALT); register_code(KC_SPC); unregister_code(KC_SPC); @@ -1040,7 +1038,9 @@ const qk_ucis_symbol_t ucis_symbol_table[] = UCIS_TABLE UCIS_SYM("heart", 0x2764), UCIS_SYM("bolt", 0x26a1), UCIS_SYM("pi", 0x03c0), - UCIS_SYM("mouse", 0x1f401) + UCIS_SYM("mouse", 0x1f401), + UCIS_SYM("micro", 0x00b5), + UCIS_SYM("tm", 0x2122) ); bool process_record_user (uint16_t keycode, keyrecord_t *record) { diff --git a/keyboards/ergodox/keymaps/algernon/tools/hid-commands b/keyboards/ergodox/keymaps/algernon/tools/hid-commands index a29d38f414..54ca7556ab 100755 --- a/keyboards/ergodox/keymaps/algernon/tools/hid-commands +++ b/keyboards/ergodox/keymaps/algernon/tools/hid-commands @@ -16,7 +16,8 @@ _cmd_appsel () { } cmd_appsel_music () { - wmctrl -x -a rhythmbox || wmctrl -x -a spotify || wmctrl -x -a kodi || true + wmctrl -x -a rhythmbox || wmctrl -x -a spotify || \ + wmctrl -x -a banshee || wmctrl -x -a kodi || true xdotool key Escape } @@ -33,7 +34,7 @@ cmd_appsel_term () { } cmd_appsel_chrome () { - _cmd_appsel chromium + _cmd_appsel chrom } cmd_appsel_start () { -- cgit v1.2.1 From acffbb480f616f87889698230c35284cc54c45dd Mon Sep 17 00:00:00 2001 From: Daniel Date: Sun, 1 Jan 2017 20:09:30 -0700 Subject: adds dedicated double-quote key. --- keyboards/ergodox/keymaps/common-nighthawk/keymap.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c index 5a1e46b7b0..debf384f3d 100644 --- a/keyboards/ergodox/keymaps/common-nighthawk/keymap.c +++ b/keyboards/ergodox/keymaps/common-nighthawk/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand KC_UNDS, KC_1, KC_1, KC_UNDS, KC_ESC, ALL_T(KC_NO), KC_HOME, CTL_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, - GUI_T(KC_QUOT), KC_A, KC_S, KC_D, KC_F, KC_G, + M(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, KC_LALT, KC_1, KC_1, KC_1, KC_LEFT, RESET, KC_VOLU, @@ -166,13 +166,17 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case 1: if (record->event.pressed) { sunds_timer = timer_read(); - register_code (KC_LSFT); + register_code (KC_LGUI); } else { if (timer_elapsed (sunds_timer) < TAPPING_TERM) { - register_code (KC_MINS); - unregister_code (KC_MINS); + unregister_code (KC_LGUI); + register_code (KC_LSFT); + register_code (KC_QUOT); + unregister_code (KC_QUOT); + unregister_code (KC_LSFT); + register_code (KC_LGUI); } - unregister_code (KC_LSFT); + unregister_code (KC_LGUI); } break; -- cgit v1.2.1 From b23a963becf9a77f59130e015fcd226db2068849 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Mon, 2 Jan 2017 19:12:06 +0100 Subject: Added the deadcyclo layout --- keyboards/ergodox/keymaps/deadcyclo/keymap.c | 273 ++++++++++++++++++++++++++ keyboards/ergodox/keymaps/deadcyclo/readme.md | 10 + 2 files changed, 283 insertions(+) create mode 100644 keyboards/ergodox/keymaps/deadcyclo/keymap.c create mode 100644 keyboards/ergodox/keymaps/deadcyclo/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c new file mode 100644 index 0000000000..edd8ca6e1c --- /dev/null +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -0,0 +1,273 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys +#define NAVG 3 // navigation + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + RGB_SLD +}; + +// TODO: Get rid of of keys I don't want. Make others that I do. Set up lots of makros (Using hyper (and meh)) keys (where to put them?) +// TODO: Need to change hotkeys for lastpass, and potentially make my own keys for them on one of my layers +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Esc/L3 | 1 | 2 | 3 | 4 | 5 | 6 | | 6 | 7 | 8 | 9 | 0 | - | =/L3 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab/L1 | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \/L1 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LCtrl | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ctrl/'| + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Lalt | Ralt | | Lalt | Ralt | [ | ] | ~/L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | Home | | PgUp | Ins | + * ,------|------|------| |------+--------+------. + * | | | End | | PgDn | | | + * | Space| TAB |------| |------| BSPC |Enter | + * | | | [ | | ] | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_RALT,KC_LALT, + ALT_T(KC_APP), KC_HOME, + KC_END, + KC_SPC,KC_TAB,KC_LBRC, + // right hand + KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, LT(NAVG,KC_EQL), + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_LALT, KC_RALT,KC_LBRC,KC_RBRC, LT(SYMB,KC_TILD), + KC_PGUP, KC_INS, + KC_PGDN, + KC_RBRC,KC_BSPC, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| DEL | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_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, + // right hand + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_DEL, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, 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_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), + +/* Keymap 3: Navigation TODO: Printscreen, pg up down, home, end, others? Insert for example + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Version| | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | up | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | left | down | right| |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// NAVIGATION +[NAVG] = KEYMAP( + VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, 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[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + } + return MACRO_NONE; +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // dynamically generate these. + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + case RGB_SLD: + if (record->event.pressed) { + #ifdef RGBLIGHT_ENABLE + rgblight_mode(1); + #endif + } + return false; + break; + } + return true; +} + +// 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 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + case 3: + ergodox_right_led_3_on(); + break; + case 4: + ergodox_right_led_1_on(); // TODO: Make a fourth layer + ergodox_right_led_3_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md new file mode 100644 index 0000000000..9155074409 --- /dev/null +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -0,0 +1,10 @@ +# ErgoDox EZ 1337 configuration + +Custom layout based on the default layout. Intended for interational users of us intl-altgr layout. Note that +some common keys might be missing, as this layout is intented to be used on *nix systems by users familiar +with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are +unfamiliar with tiling window managers) as much as possibly. + +# Changelog + +- 02.01.2017 Added delete key on second layer -- cgit v1.2.1 From a85aefd27af5d890d9e2dbf25513b84bfef8dfb0 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 3 Jan 2017 15:09:25 +0100 Subject: fix version macro making layer 3 sticky on deadcyclo layout --- keyboards/ergodox/keymaps/deadcyclo/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index edd8ca6e1c..d75c805bfe 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -148,7 +148,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 3: Navigation TODO: Printscreen, pg up down, home, end, others? Insert for example * * ,--------------------------------------------------. ,--------------------------------------------------. - * | Version| | | | | | | | | | | | | | | + * | | VER | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | | | up | | | | | | | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -168,7 +168,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // NAVIGATION [NAVG] = KEYMAP( - VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, -- cgit v1.2.1 From 0bd03d698c26d95dee11d12a1723976bb470c24a Mon Sep 17 00:00:00 2001 From: ishigoya Date: Fri, 6 Jan 2017 16:41:14 +0900 Subject: new file: keyboards/ergodox/keymaps/ishigoya-jp/keymap.c --- keyboards/ergodox/keymaps/ishigoya-jp/keymap.c | 962 +++++++++++++++++++++++++ 1 file changed, 962 insertions(+) create mode 100644 keyboards/ergodox/keymaps/ishigoya-jp/keymap.c (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c b/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c new file mode 100644 index 0000000000..e582e8a1f5 --- /dev/null +++ b/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c @@ -0,0 +1,962 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_jp.h" + +static uint16_t start; + +#define BASE 0 // EN layer +#define JP 1 // Japanese +#define JPXON 2 // JP + Fn +#define JPKAZARI 3 // JP + KAZARI +#define JPTOPROW 4 // JP + TOPROW +#define JPTRKZ 5 // JP + TOPROW + KAZARI +#define NUM 6 // Numbers + +#define CTLSHFT 1 +#define CUTCOPY 2 + +//kana macro definitions start here + +#define JPVU 4 +#define JPNU 6 +#define JPKO 7 +#define JPSA 8 +#define JPKE 9 +#define JPHE 10 +#define JPSHI 11 +#define JPKA 12 +#define JPKI 13 +#define JPSU 14 +#define JPSO 15 +#define JPHI 16 +#define JPCHI 17 +#define JPFU 18 +#define JPSE 19 +#define JPTSU 20 +#define JPKU 21 +#define JPTE 22 +#define JPTA 23 +#define JPTO 24 +#define JPHA 25 +#define JPHO 26 +#define JPXKE 27 +#define JPXU 28 +#define JPXKA 29 +#define JPXA 30 +#define JPXO 31 +#define JPGO 32 +#define JPZA 33 +#define JPGE 34 +#define JPBE 35 +#define JPYU 36 +#define JPJI 37 +#define JPGA 38 +#define JPGI 39 +#define JPZU 40 +#define JPZO 41 +#define JPBI 42 +#define JPDI 43 +#define JPZE 44 +#define JPDU 45 +#define JPGU 46 +#define JPYA 47 +#define JPYO 48 +#define JPDE 49 +#define JPDA 50 +#define JPDO 51 +#define JPBA 52 +#define JPBO 53 +#define JPRI 54 +#define JPRE 55 +#define JPRA 56 +#define JPNA 57 +#define JPNO 58 +#define JPMI 59 +#define JPMU 60 +#define JPME 61 +#define JPNE 62 +#define JPMA 63 +#define JPXTU 64 +#define JPWA 65 +#define JPRU 66 +#define JPWO 67 +#define JPNI 68 +#define JPNN 69 +#define JPMO 70 +#define JPRO 71 +#define JPXE 72 +#define JPXI 73 +#define JPXYU 74 +#define JPXYA 75 +#define JPXYO 76 +#define JPPE 77 +#define JPPU 78 +#define JPPI 79 +#define JPPA 80 +#define JPPO 81 +#define JPBU 82 + +// kana macro definitions end here + +#define SHIFT 86 +#define KAZARI 87 +#define JPFN 88 //shifts to JPXON layer +#define TOJPLOUT 89 +#define TOENL 90 +#define TOJPL 91 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * + * ,----------------------------------------------------. ,--------------------------------------------------. + * | En / 和 | | ^ | % | | |Selall| | Undo | | $ | @ | LT | UP | RT | + * |----------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | D | R | W | B | Cut | | PgUP | J | F | U | P | DN | \ | + * |----------+------+------+------+------+------| Copy | | |------+------+------+------+------+--------| + * | / | A | S | H | T | G |------| |------| Y | N | E | O | I | , | + * |----------+------+------+------+------+------|Paste | | PgDN |------+------+------+------+------+--------| + * | Ctl+Shft | Z | X | M | C | V | | | | . | L | K | ' | ? | tmux | + * `----------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtrl | LGui | Alt| _ | Esc | |MouseL|MouseR| - | ~ | Ctrl | + * `------------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |MidMs | Del | | VolUp| Mute | + * ,------|------|------| |------+--------+------. + * | | | | | VolDn| | | + * | Space| Shift|------| |------| Backsp |Enter | + * | | | Num | | Esc | | | + * `--------------------' `----------------------' + * + * + * tmux prefix set to C-b + * + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + M(TOJPLOUT), KC_NO, KC_EQL, LSFT(KC_5), KC_NO, KC_NO, LCTL(KC_A), + KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, M(CUTCOPY), + KC_SLSH, KC_A, KC_S, KC_H, KC_T, KC_G, + M(CTLSHFT), KC_Z, KC_X, KC_M, KC_C, KC_V, LCTL(KC_V), + KC_RCTL, KC_LGUI, KC_LALT,JP_UNDS,KC_LCTL, + KC_BTN3, KC_DEL, + KC_NO, + KC_SPC,KC_LSFT,F(1), + // right hand + LCTL(KC_Z), KC_NO, LSFT(KC_4), JP_AT, KC_LEFT, KC_UP, KC_RIGHT, + KC_PGUP, KC_J, KC_F, KC_U, KC_P, KC_DOWN, LSFT(KC_3), + KC_Y, KC_N, KC_E, KC_O, KC_I, KC_COMMA, + KC_PGDN, KC_DOT, KC_L, KC_K, LSFT(KC_7), KC_QUES, LCTL(KC_B), + KC_BTN1, KC_BTN2,KC_MINS,JP_TILD, KC_RCTL, + KC_VOLU, KC_MUTE, + KC_VOLD, + KC_SPC,KC_BSLS, KC_ENT + ), +/* Keymap 1: Japanese + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | En / 和| | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |   nu | ko | sa | he | ke | | | | fu | se | tsu | ku | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | to | shi | ka | ki | su |------| |------| a | ha | te | ta | u | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | mu | so | hi | chi | me | | | | | ma | ho | i | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | shift| fn |------| |------| |kazari| + * | | | Num | | | | | + * `--------------------' `--------------------' + * + * + * + */ +[JP] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(JPNU), M(JPKO), M(JPSA), M(JPHE), M(JPKE), KC_TRNS, + KC_TRNS, M(JPTO), M(JPSHI), M(JPKA), M(JPKI), M(JPSU), + KC_TRNS, M(JPMU), M(JPSO), M(JPHI), M(JPCHI), M(JPME), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_NO, + M(SHIFT), M(JPFN), F(1), + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(JPFU), M(JPSE), M(JPTSU), M(JPKU), KC_TRNS, KC_TRNS, + KC_A, M(JPHA), M(JPTE), M(JPTA), KC_U, KC_TRNS, + KC_TRNS, KC_TRNS, M(JPMA), M(JPHO), KC_I, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,M(KAZARI) +), +/* Keymap 2: Japanese with Fn + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |   | xe | | | xke | | | | xya | | xtsu | xo | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | xka | | |------| |------| xa | xyo | | | xu | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | xi | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * + * + */ +[JPXON] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, M(JPXE), KC_NO, M(JPXKE), KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, M(JPXKA), KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_TRNS, KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, M(JPXYA), KC_NO, M(JPXTU), M(JPXO), KC_NO, KC_NO, + M(JPXA), M(JPXYO), M(JPXYU), KC_NO, M(JPXU), KC_NO, + KC_NO, KC_NO,KC_NO, KC_NO, M(JPXI), KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO +), +/* Keymap 3: Japanese with kazari + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |   | go | za | be | ge | | | | bu | ze | du | gu | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | do | ji | ga | gi | zu |------| |------| | ba | de | da | vu | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | zo | bi | di | | | | | | | bo | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * + * + */ +[JPKAZARI] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, M(JPGO), M(JPZA), M(JPBE), M(JPGE), KC_NO, + KC_NO, M(JPDO), M(JPJI), M(JPGA), M(JPGI), M(JPZU), + KC_NO, KC_NO, M(JPZO), M(JPBI), M(JPDI), KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + M(SHIFT), KC_NO, KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, M(JPBU), M(JPZE), M(JPDU), M(JPGU), KC_NO, KC_NO, + KC_NO, M(JPBA), M(JPDE), M(JPDA), M(JPVU), KC_NO, + KC_NO, KC_NO, KC_NO, M(JPBO), KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS +), +/* Keymap 4: Japanese with Toprow + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |   | e | - | re | | | | | ya | ne | ru | o | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | ra | ri | na | no | mi |------| |------| wa | yo | yu | ni | nn | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | mo | ro | wo | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * + * + */ +[JPTOPROW] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_E, KC_MINS, M(JPRE), KC_NO, KC_NO, + KC_NO, M(JPRA), M(JPRI), M(JPNA), M(JPNO), M(JPMI), + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_NO, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, M(JPYA), M(JPNE), M(JPRU), KC_O, KC_NO, KC_NO, + M(JPWA), M(JPYO), M(JPYU), M(JPNI), M(JPNN), KC_NO, + KC_NO, KC_NO, M(JPMO), M(JPRO), M(JPWO), KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, M(KAZARI) +), + +/* Keymap 5: Japanese with Toprow and Kazari + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |   | | | pe | | | | | pu | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | pa | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | pi | | | | | | | | po | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * + * + */ +[JPTRKZ] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, M(JPPE),KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, M(JPPI), KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_NO, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, M(JPPU), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, M(JPPA), KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, M(JPPO), KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS +), +/* Keymap 6: Number Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | " | [ | ] | | | | | % | 7 | 8 | 9 | | F12 | + * |--------+------+------+------+------+------| ; | | |------+------+------+------+------+--------| + * | | | / | + | { | } |------| |------| ! | 4 | 5 | 6 | 0 | , | + * |--------+------+------+------+------+------| : | | & |------+------+------+------+------+--------| + * | | | * | - | ( | ) | | | | . | 1 | 2 | 3 | ? | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | # | | < | = | > | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| Back | Ent | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Numbers +[NUM] = KEYMAP( + // left hand + KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, + KC_NO, KC_NO, KC_NO, JP_DQT, KC_RBRACKET, KC_BSPC, KC_SCLN, + KC_NO, KC_NO, KC_SLSH, JP_PLUS, LSFT(KC_RBRACKET), JP_RCBR, + KC_NO, KC_NO, JP_ASTR, KC_MINS, LSFT(KC_8), LSFT(KC_9), JP_COLN, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_HASH, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS, + // right hand + KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + LSFT(KC_JYEN), KC_PERC, KC_7, KC_8, KC_9, KC_NO, KC_F12, + KC_EXLM, KC_4, KC_5, KC_6, KC_0, KC_COMM, + LSFT(KC_6), KC_DOT, KC_1, KC_2, KC_3, KC_QUES, KC_NO, + KC_LT,JP_EQL, KC_GT, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_SPC, KC_BSLS, KC_DOT +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_MOMENTARY(NUM) // FN1 - Momentary Layer 6 (Numbers) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + + // MACRO only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + case CTLSHFT: + if (record->event.pressed) { + return MACRO( D(LSFT), D(LCTL), END); + } else { + return MACRO( U(LSFT), U(LCTL), END); + } + break; + case CUTCOPY: + if (record->event.pressed) { + start = timer_read(); + } else { + if (timer_elapsed(start) > 150) { + return MACRO( D(LCTL), T(X), U(LCTL), END); + } else { + return MACRO( D(LCTL), T(C), U(LCTL), END); + } + } + break; + + // kana macros start here + + case JPVU: + if (record->event.pressed) { + return MACRO( I(1), T(V), T(U), END); + } + break; + case JPNU: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(U), END); + } + break; + case JPKO: + if (record->event.pressed) { + return MACRO( I(1), T(K), T(O), END); + } + break; + case JPSA: + if (record->event.pressed) { + return MACRO( I(1), T(S), T(A), END); + } + break; + case JPKE: + if (record->event.pressed) { + return MACRO( I(1), T(K), T(E), END); + } + break; + case JPHE: + if (record->event.pressed) { + return MACRO( I(1), T(H), T(E), END); + } + break; + case JPSHI: + if (record->event.pressed) { + return MACRO( I(1), T(S), T(H), T(I), END); + } + break; + case JPKA: + if (record->event.pressed) { + return MACRO( I(1), T(K), T(A), END); + } + break; + case JPKI: + if (record->event.pressed) { + return MACRO( I(1), T(K), T(I), END); + } + break; + case JPSU: + if (record->event.pressed) { + return MACRO( I(1), T(S), T(U), END); + } + break; + case JPSO: + if (record->event.pressed) { + return MACRO( I(1), T(S), T(O), END); + } + break; + case JPHI: + if (record->event.pressed) { + return MACRO( I(1), T(H), T(I), END); + } + break; + case JPCHI: + if (record->event.pressed) { + return MACRO( I(1), T(C), T(H), T(I), END); + } + break; + case JPFU: + if (record->event.pressed) { + return MACRO( I(1), T(F), T(U), END); + } + break; + case JPSE: + if (record->event.pressed) { + return MACRO( I(1), T(S), T(E), END); + } + break; + case JPTSU: + if (record->event.pressed) { + return MACRO( I(1), T(T), T(S), T(U), END); + } + break; + case JPKU: + if (record->event.pressed) { + return MACRO( I(1), T(K), T(U), END); + } + break; + case JPTE: + if (record->event.pressed) { + return MACRO( I(1), T(T), T(E), END); + } + break; + case JPTA: + if (record->event.pressed) { + return MACRO( I(1), T(T), T(A), END); + } + break; + case JPTO: + if (record->event.pressed) { + return MACRO( I(1), T(T), T(O), END); + } + break; + case JPHA: + if (record->event.pressed) { + return MACRO( I(1), T(H), T(A), END); + } + break; + case JPHO: + if (record->event.pressed) { + return MACRO( I(1), T(H), T(O), END); + } + break; + case JPXKE: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(K), T(E), END); + } + break; + case JPXU: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(U), END); + } + break; + case JPXKA: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(K), T(A), END); + } + break; + case JPXA: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(A), END); + } + break; + case JPXO: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(O), END); + } + break; + case JPGO: + if (record->event.pressed) { + return MACRO( I(1), T(G), T(O), END); + } + break; + case JPZA: + if (record->event.pressed) { + return MACRO( I(1), T(Z), T(A), END); + } + break; + case JPGE: + if (record->event.pressed) { + return MACRO( I(1), T(G), T(E), END); + } + break; + case JPBE: + if (record->event.pressed) { + return MACRO( I(1), T(B), T(E), END); + } + break; + case JPYU: + if (record->event.pressed) { + return MACRO( I(1), T(Y), T(U), END); + } + break; + case JPJI: + if (record->event.pressed) { + return MACRO( I(1), T(J), T(I), END); + } + break; + case JPGA: + if (record->event.pressed) { + return MACRO( I(1), T(G), T(A), END); + } + break; + case JPGI: + if (record->event.pressed) { + return MACRO( I(1), T(G), T(I), END); + } + break; + case JPZU: + if (record->event.pressed) { + return MACRO( I(1), T(Z), T(U), END); + } + break; + case JPZO: + if (record->event.pressed) { + return MACRO( I(1), T(Z), T(O), END); + } + break; + case JPBI: + if (record->event.pressed) { + return MACRO( I(1), T(B), T(I), END); + } + break; + case JPDI: + if (record->event.pressed) { + return MACRO( I(1), T(D), T(I), END); + } + break; + case JPZE: + if (record->event.pressed) { + return MACRO( I(1), T(Z), T(E), END); + } + break; + case JPDU: + if (record->event.pressed) { + return MACRO( I(1), T(D), T(U), END); + } + break; + case JPGU: + if (record->event.pressed) { + return MACRO( I(1), T(G), T(U), END); + } + break; + case JPYA: + if (record->event.pressed) { + return MACRO( I(1), T(Y), T(A), END); + } + break; + case JPYO: + if (record->event.pressed) { + return MACRO( I(1), T(Y), T(O), END); + } + break; + case JPDE: + if (record->event.pressed) { + return MACRO( I(1), T(D), T(E), END); + } + break; + case JPDA: + if (record->event.pressed) { + return MACRO( I(1), T(D), T(A), END); + } + break; + case JPDO: + if (record->event.pressed) { + return MACRO( I(1), T(D), T(O), END); + } + break; + case JPBA: + if (record->event.pressed) { + return MACRO( I(1), T(B), T(A), END); + } + break; + case JPBO: + if (record->event.pressed) { + return MACRO( I(1), T(B), T(O), END); + } + break; + case JPRI: + if (record->event.pressed) { + return MACRO( I(1), T(R), T(I), END); + } + break; + case JPRE: + if (record->event.pressed) { + return MACRO( I(1), T(R), T(E), END); + } + break; + case JPRA: + if (record->event.pressed) { + return MACRO( I(1), T(R), T(A), END); + } + break; + case JPNA: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(A), END); + } + break; + case JPNO: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(O), END); + } + break; + case JPMI: + if (record->event.pressed) { + return MACRO( I(1), T(M), T(I), END); + } + break; + case JPMU: + if (record->event.pressed) { + return MACRO( I(1), T(M), T(U), END); + } + break; + case JPME: + if (record->event.pressed) { + return MACRO( I(1), T(M), T(E), END); + } + break; + case JPNE: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(E), END); + } + break; + case JPMA: + if (record->event.pressed) { + return MACRO( I(1), T(M), T(A), END); + } + break; + case JPXTU: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(T), T(U), END); + } + break; + case JPWA: + if (record->event.pressed) { + return MACRO( I(1), T(W), T(A), END); + } + break; + case JPRU: + if (record->event.pressed) { + return MACRO( I(1), T(R), T(U), END); + } + break; + case JPWO: + if (record->event.pressed) { + return MACRO( I(1), T(W), T(O), END); + } + break; + case JPNI: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(I), END); + } + break; + case JPNN: + if (record->event.pressed) { + return MACRO( I(1), T(N), T(N), END); + } + break; + case JPMO: + if (record->event.pressed) { + return MACRO( I(1), T(M), T(O), END); + } + break; + case JPRO: + if (record->event.pressed) { + return MACRO( I(1), T(R), T(O), END); + } + break; + case JPXE: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(E), END); + } + break; + case JPXI: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(I), END); + } + break; + case JPXYU: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(Y), T(U), END); + } + break; + case JPXYA: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(Y), T(A), END); + } + break; + case JPXYO: + if (record->event.pressed) { + return MACRO( I(1), T(X), T(Y), T(O), END); + } + break; + case JPPE: + if (record->event.pressed) { + return MACRO( I(1), T(P), T(E), END); + } + break; + case JPPU: + if (record->event.pressed) { + return MACRO( I(1), T(P), T(U), END); + } + break; + case JPPI: + if (record->event.pressed) { + return MACRO( I(1), T(P), T(I), END); + } + break; + case JPPA: + if (record->event.pressed) { + return MACRO( I(1), T(P), T(A), END); + } + break; + case JPPO: + if (record->event.pressed) { + return MACRO( I(1), T(P), T(O), END); + } + break; + case JPBU: + if (record->event.pressed) { + return MACRO( I(1), T(B), T(U), END); + } + break; + + // kana macros end here + + break; + case SHIFT: + if (record->event.pressed) { + start = timer_read(); + if (layer_state == (1<event.pressed) { + start = timer_read(); + if (layer_state == (1<event.pressed) { + start = timer_read(); + layer_state = (1<event.pressed) { + if (default_layer_state == (1<event.pressed) { + default_layer_state = (1<event.pressed) { + default_layer_state = (1< Date: Fri, 6 Jan 2017 17:53:04 +0900 Subject: new file: keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-enL.png new file: keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-jpL.png new file: keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-numL.png modified: keyboards/ergodox/keymaps/ishigoya-jp/keymap.c new file: keyboards/ergodox/keymaps/ishigoya-jp/readme.md --- .../ishigoya-jp/img/keyboard-layout-enL.png | Bin 0 -> 84725 bytes .../ishigoya-jp/img/keyboard-layout-jpL.png | Bin 0 -> 82660 bytes .../ishigoya-jp/img/keyboard-layout-numL.png | Bin 0 -> 72923 bytes keyboards/ergodox/keymaps/ishigoya-jp/keymap.c | 6 +-- keyboards/ergodox/keymaps/ishigoya-jp/readme.md | 54 +++++++++++++++++++++ 5 files changed, 57 insertions(+), 3 deletions(-) create mode 100755 keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-enL.png create mode 100755 keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-jpL.png create mode 100755 keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-numL.png create mode 100644 keyboards/ergodox/keymaps/ishigoya-jp/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-enL.png b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-enL.png new file mode 100755 index 0000000000..e6aec35bff Binary files /dev/null and b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-enL.png differ diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-jpL.png b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-jpL.png new file mode 100755 index 0000000000..69a1f69482 Binary files /dev/null and b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-jpL.png differ diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-numL.png b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-numL.png new file mode 100755 index 0000000000..8b2cce5e6d Binary files /dev/null and b/keyboards/ergodox/keymaps/ishigoya-jp/img/keyboard-layout-numL.png differ diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c b/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c index e582e8a1f5..c219ce8840 100644 --- a/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c +++ b/keyboards/ergodox/keymaps/ishigoya-jp/keymap.c @@ -484,7 +484,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case JPSHI: if (record->event.pressed) { - return MACRO( I(1), T(S), T(H), T(I), END); + return MACRO( I(1), T(S), T(I), END); } break; case JPKA: @@ -514,7 +514,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case JPCHI: if (record->event.pressed) { - return MACRO( I(1), T(C), T(H), T(I), END); + return MACRO( I(1), T(T), T(I), END); } break; case JPFU: @@ -529,7 +529,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case JPTSU: if (record->event.pressed) { - return MACRO( I(1), T(T), T(S), T(U), END); + return MACRO( I(1), T(T), T(U), END); } break; case JPKU: diff --git a/keyboards/ergodox/keymaps/ishigoya-jp/readme.md b/keyboards/ergodox/keymaps/ishigoya-jp/readme.md new file mode 100644 index 0000000000..9ee557335e --- /dev/null +++ b/keyboards/ergodox/keymaps/ishigoya-jp/readme.md @@ -0,0 +1,54 @@ +This is a dual English-Japanese keymap that utilises a thumb-shift system for Japanese input. You can read more about this layout on my blog [here](https://ishigoya.com). + +### Some Editing Necessary +The system I created this on is a Chromebook, and uses a Japanese keymap, so some of the key mappings may not be the same as those on your system. In particular, the Escape key on layer 0 is mapped to KC_LCTL. + +### Layouts +------ +#### English layer - layer 0 +The English layout is a modified Workman layout, and is pictured below: + +![English layout](img/keyboard-layout-enL.png) + +Some of the punctuation keys have been moved to a separate number/symbol layer. + +#### Number / Symbol layer - layer 6 + +The Number / Symbol layer is reachable through a ACTION_LAYER_MOMENTARY function. The blue LED is illuminated when this layer is active. It is accessible from the English or Japanese layers. + +![Number layout](img/keyboard-layout-numL.png) + +#### Japanese layers - layers 1-5 + +There are 5 layers involved in Japanese input. The TOJPLOUT macro is mapped to the En / 和 button, and switches default layer between layer 0 (English) and 1 (main Japanese layer). When layer 1 is the default layer, the red LED is on. It also outputs the ZKHK button to change the input method language. + +On keypress, strings of romaji characters are output by the keyboard using macros, and these simulate the input of individual keys on a latin keyboard. + +![Japanese layout](img/keyboard-layout-jpL.png) + +Layer 1 is the JP layer. Keys on this layer correspond to singleton keys, or keys on the bottom row where a key is shared. For example, pressing the "ふ や" key outputs `ふ` (or "fu"). + +Layer 2 is the JPXON layer, and is active while holding the Fn key. This prints keys that are prefaced by "x" when writing in romaji. For example, pressing the "ふ や" key while holding the Fn key outputs `ゃ` (or "xya"). + +Layer 3 is the JPKAZARI layer, and is active while holding the 飾り key. This provides letters with dakuten. For example, pressing the "ふ や" key while holding the 飾り key outputs `ぶ` (or "bu"). + +Layer 4 is the JPTOPROW layer, and is active while holding the シフト key. Keys on this line correspond to top row keys on shared keys in the image. For example, pressing the "ふ や" key while holding the シフト key outputs `や` (or "ya"). + +Layer 5 is the JPTRKZ layer, and is active while holding both the シフト key and the 飾り key. This layer contains handakuten keys. For example, pressing the "ふ や" while holding both the シフト key and the 飾り key outputs `ぷ` (or "pu"). + +I've also separated out the #define sections and the macros required for kana for easy copying, in case anyone else should wish to make a kana-based layout. + +When tapped, the シフト key acts as a space key, and the 飾り key acts as a return key. This allows them to function as 変換 and 無変換, respectively, in many IMEs. + +Furthermore the Fn key, when tapped, acts as an F7 key, providing easy switching to katakana in many IMEs. + +### Other features +The cut/copy button gives copy functionality on a short press, and cut functionality on a long press. + +The tmux prefix button outputs Control-B. + +The Control & Shift key acts as holding the control and shift keys at the same time. + +SelAll outputs Control-A. + +Undo outputs Control-Z. -- cgit v1.2.1 From 6fba925f413ca6cbd164f8023e83e8529f7af02a Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 6 Jan 2017 17:07:58 -0600 Subject: Fixed key not matching its diagram --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index b7a14c10c8..c9213553c1 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -117,7 +117,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), + KC_LGUI,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), KC_LCTL,TG(_GA), KC_HOME, -- cgit v1.2.1 From 5ce7ec9ea5f120b791c03273b4ce5ce69e4b6c8d Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 6 Jan 2017 17:08:14 -0600 Subject: Increased TAPPING_TERM to 200 --- keyboards/ergodox/keymaps/replicaJunction/config.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h index c620349ad0..d32b46e4e6 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/config.h +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -28,7 +28,9 @@ along with this program. If not, see . /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST -#define TAPPING_TERM 150 +// MS the button needs to be held before a tap becomes a hold (default: 200) +#define TAPPING_TERM 200 + #define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) // I don't have any locking keys, so I don't need these features -- cgit v1.2.1 From db1aec159d37748de7413816a377dc5b63111c71 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:20:25 +0100 Subject: Added layer images to deadcyclo layout readme --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 0 -> 79741 bytes .../deadcyclo/images/deadcyclo-layer-1-symbols.png | Bin 0 -> 55349 bytes .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 0 -> 50926 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 0 -> 43551 bytes keyboards/ergodox/keymaps/deadcyclo/readme.md | 26 +++++++++++++++++++++ 5 files changed, 26 insertions(+) create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png new file mode 100644 index 0000000000..4208c5189f Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png new file mode 100644 index 0000000000..ccda70e39a Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png new file mode 100644 index 0000000000..481e63e324 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png new file mode 100644 index 0000000000..9ebba67340 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 9155074409..07e8e62a38 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -5,6 +5,32 @@ some common keys might be missing, as this layout is intented to be used on *nix with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are unfamiliar with tiling window managers) as much as possibly. +# Layouts + +All layer images created using [keyboard-layout-editor](http://www.keyboard-layout-editor.com/) + +## Base layer + +[![Base layer](images/deadcyclo-base-layout.png)](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) + +## Layer 1 - Symbols + +[![Layer 1 - Symbols](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) + +## Layer 2 - Media and Mouse + +[![Layer 2 - Media and Mouse](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) + +## Layer 3 - Navigation + +[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) + # Changelog - 02.01.2017 Added delete key on second layer +- 10.01.2017 Added layer images to readme + +# TODO + +- Add unicode support (direct input and indirect? see algernon layout for examples) +- Add descriptions below each layer image of any special functions/keys -- cgit v1.2.1 From c4fca8b6bc06178ad578dbc4be67d579a3f4d59a Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:23:59 +0100 Subject: Fixed incorrect layer image in deadcyclo readme --- keyboards/ergodox/keymaps/deadcyclo/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 07e8e62a38..809dd6eb56 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -23,7 +23,7 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo ## Layer 3 - Navigation -[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) +[![Layer 3 - Navigation](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) # Changelog -- cgit v1.2.1 From aa0939b5ef410e3003cc52383046a5d2dd0744f5 Mon Sep 17 00:00:00 2001 From: Bryan Hernandez Date: Fri, 13 Jan 2017 21:35:09 -0600 Subject: Added Bryan's keymap --- keyboards/ergodox/keymaps/bryan/keymap.c | 226 +++++++++++++++++++++++++++++++ 1 file changed, 226 insertions(+) create mode 100644 keyboards/ergodox/keymaps/bryan/keymap.c (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/bryan/keymap.c b/keyboards/ergodox/keymaps/bryan/keymap.c new file mode 100644 index 0000000000..572cea8cda --- /dev/null +++ b/keyboards/ergodox/keymaps/bryan/keymap.c @@ -0,0 +1,226 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + RGB_SLD +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------------. ,--------------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | Cmd,Shft,[ | | Cmd,Shft,] | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------------| |------------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |BkSp/Cmd| A | S | D | F | G |------------| |------------| H | J | K | L |; / L2|' / Cmd | + * |--------+------+------+------+------+------| Hyper | | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |Ctrl/Esc|PgUp| | App | LGui | + * ,------|------|------| |------+--------+------. + * | | | PgDn | | Home | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | Esc | | Alt | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, M(2), + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + GUI_T(KC_BSPC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + CTL_T(KC_ESC),KC_PGUP, + KC_PGDN, + KC_SPC,KC_BSPC, KC_ESC, + // right hand + M(3), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_LALT,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | <- | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_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, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, M(1), KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +// KC_COMM, KC_MINS + +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, 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_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + } + return MACRO_NONE; +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // dynamically generate these. + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + case RGB_SLD: + if (record->event.pressed) { + #ifdef RGBLIGHT_ENABLE + rgblight_mode(1); + #endif + } + return false; + break; + } + return true; +} + +// 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) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; -- cgit v1.2.1 From 1ac15e6b3a6c43669d5b107e4ca550d2aa7c284c Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Tue, 17 Jan 2017 20:34:05 +0800 Subject: put shell nav under tab, introduce an OSL for the brackets layer --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 3d7e1893c9..2a64331dbb 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -58,18 +58,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), - MO(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, + LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), // thumb cluster - MO(BRACKETS), RCTL(KC_S), + MO(MOUSE), RCTL(KC_S), RCTL(KC_DEL), KC_BSPC,RCTL(KC_BSPC),KC_DEL, // right hand KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, KC_PGUP, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, - KC_D, KC_H, KC_T, KC_N, KC_S, LT(BRACKETS,KC_MINS), + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(TD_SHIFT_CAPSLOCK), // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), RCTL(KC_W), @@ -406,6 +406,7 @@ void matrix_scan_user(void) { switch (layer) { case NUMBER: case SYMBOL: + case BRACKETS: ergodox_right_led_2_on(); break; case KEY_NAV: -- cgit v1.2.1 From 072237bce814fd49765be7f5a6fcb57821c1e31d Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Thu, 19 Jan 2017 22:45:30 +0800 Subject: introduce shell_layer --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 34 ++++++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 2a64331dbb..c4b99d55a0 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -6,7 +6,8 @@ #include "action_code.h" #define BASE 0 // default layer -#define SHELL_NAV 1 +#define SHELL_LAYER 1 +#define SHELL_NAV 2 #define KEY_NAV 3 // key navigation layer #define KEY_SEL 4 // key selection layer #define NUMBER 5 // number layer @@ -58,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), @@ -80,6 +81,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), +// permanent shell layer - meant to be used while in a terminal +[SHELL_LAYER] = KEYMAP( + // left hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,M(SCREEN_COPY_MODE), M(SCREEN_PASTE),M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), + KC_TAB, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RCTL(KC_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,LALT(KC_DOT), + // bottom row + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + // thumb cluster + LALT(KC_B),LALT(KC_F), + LALT(KC_D), + KC_TRNS,RCTL(KC_W),KC_TRNS, + // right hand + RCTL(KC_C), KC_LEFT, KC_RIGHT, RCTL(KC_U), RCTL(KC_K), KC_TRNS, KC_TRNS, + KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + // bottom row + M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, KC_TRNS, + // thumb cluster + KC_TRNS, KC_TRNS, + KC_TRNS, + MEH(KC_V), KC_TRNS, KC_TRNS +), + // shell navigation layer [SHELL_NAV] = KEYMAP( // left hand @@ -246,7 +273,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MEH(KC_S), MEH(KC_T), MEH(KC_U), MEH(KC_V), MEH(KC_X), MEH(KC_6), MEH(KC_7), MEH(KC_8), - MEH(KC_9), MEH(KC_Y), MEH(KC_Z) + MEH(KC_9), TO(BASE), TO(SHELL_LAYER) ), @@ -407,6 +434,7 @@ void matrix_scan_user(void) { case NUMBER: case SYMBOL: case BRACKETS: + //case SHELL_LAYER: ergodox_right_led_2_on(); break; case KEY_NAV: -- cgit v1.2.1 From 01e750a37230fd7df9ef57a9d1564bde4bee6da6 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 21 Jan 2017 23:15:37 +0800 Subject: couple of changes to the shell layer --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index c4b99d55a0..2bb5bcd12b 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -100,11 +100,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // bottom row - M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, KC_TRNS, + M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, MEH(KC_V), // thumb cluster - KC_TRNS, KC_TRNS, - KC_TRNS, - MEH(KC_V), KC_TRNS, KC_TRNS + KC_LEFT, KC_RIGHT, + KC_HOME, + KC_END, KC_TRNS, KC_TRNS ), // shell navigation layer -- cgit v1.2.1 From cbb1927d6f7511d7778239e02d834f392b83dd25 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 16:22:40 +0100 Subject: Add Swiss German layout for Ergodox EZ - Add Swiss German layout for Ergodox EZ based on default layout for Ergodox EZ. - Minor changes in the event loop to prevent flashing of leds. --- .../keymaps/swissgerman_ez/keyboard-layout.json | 417 ++++++++++++++++++++ .../keymaps/swissgerman_ez/keyboard-layout.png | Bin 0 -> 75633 bytes .../keymaps/swissgerman_ez/keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../swissgerman_ez/keyboard-layout_2_3.json | 429 +++++++++++++++++++++ keyboards/ergodox/keymaps/swissgerman_ez/keymap.c | 260 +++++++++++++ keyboards/ergodox/keymaps/swissgerman_ez/readme.md | 15 + 6 files changed, 1121 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json new file mode 100644 index 0000000000..7a0397f72a --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png new file mode 100644 index 0000000000..aff6af8513 Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png new file mode 100644 index 0000000000..835816b53c Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json new file mode 100644 index 0000000000..e3d3660573 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json @@ -0,0 +1,429 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5, + "t": "#b81c1c" + }, + "F3", + { + "x": 10.5 + }, + "F8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "F2", + { + "x": 1 + }, + "F4", + { + "x": 8.5 + }, + "F7", + { + "x": 1 + }, + "F9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "F5", + { + "t": "#000000", + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "F6" + ], + [ + { + "y": -0.875, + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\nFlash", + { + "t": "#b81c1c" + }, + "F1", + { + "x": 14.5 + }, + "F10", + { + "t": "#b81c1c\n\n\n#529151", + "w": 1.5 + }, + "F11\n\n\nFlash" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "{\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c new file mode 100644 index 0000000000..c6717abff5 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c @@ -0,0 +1,260 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L | / L2| / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*KC_TRNS,KC_TRNS*/, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG( "ul" ); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + break; + case 1: + ergodox_right_led_1_on(); + + ergodox_board_led_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + break; + case 2: + ergodox_right_led_2_on(); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_3_off(); + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); + +} diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md new file mode 100644 index 0000000000..039a08588a --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md @@ -0,0 +1,15 @@ +# ErgoDox EZ Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version based on default layout. + -- cgit v1.2.1 From bf0b355bc820a017544860a5b90e405f45e66592 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 16:24:41 +0100 Subject: Add Swiss German layout for Ergodox Infinity - Add Swiss German layout for Ergodox Infinity based on default layout for Ergodox EZ. - Minor changes in the event loop to prevent flashing display background lights. --- .../swissgerman_infinity/keyboard-layout.json | 417 ++++++++++++++++++++ .../swissgerman_infinity/keyboard-layout.png | Bin 0 -> 75633 bytes .../swissgerman_infinity/keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../swissgerman_infinity/keyboard-layout_2_3.json | 429 +++++++++++++++++++++ .../ergodox/keymaps/swissgerman_infinity/keymap.c | 252 ++++++++++++ .../ergodox/keymaps/swissgerman_infinity/readme.md | 14 + 6 files changed, 1112 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json new file mode 100644 index 0000000000..7a0397f72a --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png new file mode 100644 index 0000000000..aff6af8513 Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png new file mode 100644 index 0000000000..835816b53c Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json new file mode 100644 index 0000000000..e3d3660573 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json @@ -0,0 +1,429 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5, + "t": "#b81c1c" + }, + "F3", + { + "x": 10.5 + }, + "F8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "F2", + { + "x": 1 + }, + "F4", + { + "x": 8.5 + }, + "F7", + { + "x": 1 + }, + "F9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "F5", + { + "t": "#000000", + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "F6" + ], + [ + { + "y": -0.875, + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\nFlash", + { + "t": "#b81c1c" + }, + "F1", + { + "x": 14.5 + }, + "F10", + { + "t": "#b81c1c\n\n\n#529151", + "w": 1.5 + }, + "F11\n\n\nFlash" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "{\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c new file mode 100644 index 0000000000..0ccb7f47e3 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c @@ -0,0 +1,252 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" +#include "visualizer/lcd_backlight.h" +#include "string.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L | / L2| / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*KC_TRNS,KC_TRNS*/, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG("ul"); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + lcd_backlight_hal_color(0, 0, 0); + break; + case 1: + lcd_backlight_hal_color(5000, 0, 0); + break; + case 2: + lcd_backlight_hal_color(0, 5000, 0); + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); + +} diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md new file mode 100644 index 0000000000..1c35f74732 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md @@ -0,0 +1,14 @@ +# ErgoDox Infinity Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version. -- cgit v1.2.1 From 4cf0f7dd16d60aef363e91977597334017e60924 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 21 Jan 2017 23:42:23 +0800 Subject: make shell layer more compatible with default layer --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 31 +++++++++++----------- 1 file changed, 16 insertions(+), 15 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 2bb5bcd12b..7ed0c7f125 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, - KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), + OSM(MOD_LSFT), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), // thumb cluster MO(MOUSE), RCTL(KC_S), @@ -81,30 +81,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), -// permanent shell layer - meant to be used while in a terminal + +// permanent shell layer - meant to be used while in a terminal. only the top keys are overriden [SHELL_LAYER] = KEYMAP( // left hand - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,M(SCREEN_COPY_MODE), M(SCREEN_PASTE),M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), - KC_TAB, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RCTL(KC_R), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,LALT(KC_DOT),RCTL(KC_R),RCTL(KC_C), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,LALT(KC_DOT), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // bottom row KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // thumb cluster - LALT(KC_B),LALT(KC_F), - LALT(KC_D), - KC_TRNS,RCTL(KC_W),KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, // right hand - RCTL(KC_C), KC_LEFT, KC_RIGHT, RCTL(KC_U), RCTL(KC_K), KC_TRNS, KC_TRNS, - KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RCTL(KC_W), LALT(KC_B),LALT(KC_F), KC_LEFT, KC_RIGHT, LALT(KC_D), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // bottom row - M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, MEH(KC_V), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // thumb cluster - KC_LEFT, KC_RIGHT, - KC_HOME, - KC_END, KC_TRNS, KC_TRNS + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS ), // shell navigation layer -- cgit v1.2.1 From c26c81c7f3973b2b4e085b53d37ef6fbddd66c9e Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:20:47 +0100 Subject: Merged keymap for Ergodox EZ & Infinity - Merged keymap for Ergodox EZ & Infinity into one single keymap using pre-processor macros. --- .../keymaps/swissgerman/keyboard-layout.json | 417 ++++++++++++++++++++ .../keymaps/swissgerman/keyboard-layout.png | Bin 0 -> 75633 bytes .../keymaps/swissgerman/keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../keymaps/swissgerman/keyboard-layout_2_3.json | 429 +++++++++++++++++++++ keyboards/ergodox/keymaps/swissgerman/keymap.c | 275 +++++++++++++ keyboards/ergodox/keymaps/swissgerman/readme.md | 15 + 6 files changed, 1136 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json new file mode 100644 index 0000000000..7a0397f72a --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png new file mode 100644 index 0000000000..aff6af8513 Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png new file mode 100644 index 0000000000..835816b53c Binary files /dev/null and b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json new file mode 100644 index 0000000000..e3d3660573 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json @@ -0,0 +1,429 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5, + "t": "#b81c1c" + }, + "F3", + { + "x": 10.5 + }, + "F8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "F2", + { + "x": 1 + }, + "F4", + { + "x": 8.5 + }, + "F7", + { + "x": 1 + }, + "F9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "F5", + { + "t": "#000000", + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "F6" + ], + [ + { + "y": -0.875, + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\nFlash", + { + "t": "#b81c1c" + }, + "F1", + { + "x": 14.5 + }, + "F10", + { + "t": "#b81c1c\n\n\n#529151", + "w": 1.5 + }, + "F11\n\n\nFlash" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "{\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c new file mode 100644 index 0000000000..a969393bba --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -0,0 +1,275 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" +#include "string.h" + +#ifdef SUBPROJECT_infinity +#include "visualizer/lcd_backlight.h" +#endif + + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L | / L2| / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*KC_TRNS,KC_TRNS*/, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG( "ul" ); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(0, 0, 0); + #endif + break; + case 1: + ergodox_right_led_1_on(); + + ergodox_board_led_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(5000, 0, 0); + #endif + break; + case 2: + ergodox_right_led_2_on(); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_3_off(); + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(0, 5000, 0); + #endif + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); +} diff --git a/keyboards/ergodox/keymaps/swissgerman/readme.md b/keyboards/ergodox/keymaps/swissgerman/readme.md new file mode 100644 index 0000000000..49889cd658 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/readme.md @@ -0,0 +1,15 @@ +# ErgoDox Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version based on default layout. + -- cgit v1.2.1 From 250628de04aabd65d6465c5a6afe48332e8d7f53 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:22:24 +0100 Subject: Removed Ergodox EZ & Infinity specific keymaps - Removed the keymaps for Swiss German spefic for Ergodox EZ and Infinity after previously merging them. --- .../keymaps/swissgerman_ez/keyboard-layout.json | 417 -------------------- .../keymaps/swissgerman_ez/keyboard-layout.png | Bin 75633 -> 0 bytes .../keymaps/swissgerman_ez/keyboard-layout_1_2.png | Bin 54604 -> 0 bytes .../swissgerman_ez/keyboard-layout_2_3.json | 429 --------------------- keyboards/ergodox/keymaps/swissgerman_ez/keymap.c | 260 ------------- keyboards/ergodox/keymaps/swissgerman_ez/readme.md | 15 - .../swissgerman_infinity/keyboard-layout.json | 417 -------------------- .../swissgerman_infinity/keyboard-layout.png | Bin 75633 -> 0 bytes .../swissgerman_infinity/keyboard-layout_1_2.png | Bin 54604 -> 0 bytes .../swissgerman_infinity/keyboard-layout_2_3.json | 429 --------------------- .../ergodox/keymaps/swissgerman_infinity/keymap.c | 252 ------------ .../ergodox/keymaps/swissgerman_infinity/readme.md | 14 - 12 files changed, 2233 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keymap.c delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/readme.md delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json deleted file mode 100644 index 7a0397f72a..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json +++ /dev/null @@ -1,417 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5 - }, - "#\n3", - { - "x": 10.5 - }, - "*\n8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@\n2", - { - "x": 1 - }, - "$\n4", - { - "x": 8.5 - }, - "&\n7", - { - "x": 1 - }, - "(\n9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "%\n5", - { - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "a": 4 - }, - "^\n6" - ], - [ - { - "y": -0.875, - "w": 1.5 - }, - "°\n§", - "!\n1", - { - "x": 14.5 - }, - ")\n0", - { - "w": 1.5 - }, - "?\n'\n\n'" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "E", - { - "x": 10.5 - }, - "I" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "W", - { - "x": 1 - }, - "R", - { - "x": 8.5 - }, - "U", - { - "x": 1 - }, - "O" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "T", - { - "c": "#b56b6b", - "a": 6, - "h": 1.5 - }, - "Toggle Code Layer", - { - "x": 4.5, - "h": 1.5 - }, - "Toggle Code Layer", - { - "c": "#cccccc", - "a": 4 - }, - "Y" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Delete", - { - "a": 4 - }, - "Q", - { - "x": 14.5 - }, - "P", - { - "w": 1.5 - }, - "è\nü\n\n[" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "D", - { - "x": 10.5 - }, - "K" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "S", - { - "x": 1 - }, - "F", - { - "x": 8.5 - }, - "J", - { - "x": 1 - }, - "L" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "G", - { - "x": 6.5 - }, - "H" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Backspace", - { - "c": "#79c777", - "a": 4 - }, - "A\n\nLyr3", - { - "x": 14.5 - }, - "é\nö\nLyr3", - { - "c": "#748adb", - "w": 1.5 - }, - "à\nä\nCmd\n{" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc", - "a": 6, - "h": 1.5 - }, - "Hyper", - { - "x": 4.5, - "h": 1.5 - }, - "Meh" - ], - [ - { - "y": -0.75, - "x": 3.5, - "a": 4 - }, - "C", - { - "x": 10.5 - }, - ";\n," - ], - [ - { - "y": -0.875, - "x": 2.5, - "c": "#748adb" - }, - "X\n\nAlt", - { - "x": 1, - "c": "#cccccc" - }, - "V", - { - "x": 8.5 - }, - "M", - { - "x": 1, - "c": "#748adb" - }, - ":\n.\nAlt" - ], - [ - { - "y": -0.875, - "x": 5.5, - "c": "#cccccc" - }, - "B", - { - "x": 6.5 - }, - "N" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Shift", - { - "c": "#748adb", - "a": 4 - }, - "Z\n\nCtrl", - { - "x": 14.5 - }, - "_\n-\nCtrl", - { - "c": "#cccccc", - "a": 6, - "w": 1.5 - }, - "Shift" - ], - [ - { - "y": -0.375, - "x": 3.5, - "a": 7 - }, - "", - { - "x": 10.5 - }, - "" - ], - [ - { - "y": -0.875, - "x": 2.5, - "a": 4 - }, - "£\n$\n\n}", - { - "x": 1, - "a": 7 - }, - "", - { - "x": 10.5, - "a": 6 - }, - "AltGr" - ], - [ - { - "y": -0.9950000000000001, - "x": 14, - "a": 7 - }, - "" - ], - [ - { - "y": -0.7549999999999999, - "x": 0.5, - "c": "#b56b6b", - "a": 4 - }, - ">\n<\nCode Layer\n\\", - { - "c": "#cccccc" - }, - "`\n^\n\n~", - { - "x": 14.5 - }, - "!\n¨\n\n]", - { - "c": "#b56b6b" - }, - "\n\nCode Layer" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1, - "c": "#748adb" - }, - "Apps\nAlt", - { - "c": "#cccccc", - "a": 6 - }, - "Win / Cmd" - ], - [ - { - "h": 2 - }, - "Space", - { - "h": 2 - }, - "Back Space", - "Home" - ], - [ - { - "x": 2 - }, - "End" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "Alt", - { - "c": "#748adb", - "a": 4 - }, - "Esc\nCtrl" - ], - [ - { - "x": -3, - "c": "#cccccc", - "a": 6 - }, - "Pg Up", - { - "h": 2 - }, - "Tab", - { - "h": 2 - }, - "Enter" - ], - [ - { - "x": -3 - }, - "Pg Dn" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png deleted file mode 100644 index aff6af8513..0000000000 Binary files a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png deleted file mode 100644 index 835816b53c..0000000000 Binary files a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json deleted file mode 100644 index e3d3660573..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json +++ /dev/null @@ -1,429 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5, - "t": "#b81c1c" - }, - "F3", - { - "x": 10.5 - }, - "F8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "F2", - { - "x": 1 - }, - "F4", - { - "x": 8.5 - }, - "F7", - { - "x": 1 - }, - "F9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "F5", - { - "t": "#000000", - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "F6" - ], - [ - { - "y": -0.875, - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\nFlash", - { - "t": "#b81c1c" - }, - "F1", - { - "x": 14.5 - }, - "F10", - { - "t": "#b81c1c\n\n\n#529151", - "w": 1.5 - }, - "F11\n\n\nFlash" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "{\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@", - { - "x": 1 - }, - "}", - { - "x": 8.5 - }, - "7", - { - "x": 1 - }, - "9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "|", - { - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "!", - { - "x": 14.5 - }, - "*", - { - "w": 1.5 - }, - "F12" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151" - }, - "(\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "5" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" - }, - "$\n\n\n", - { - "x": 1 - }, - ")\n\n\n", - { - "x": 8.5, - "t": "#b81c1c" - }, - "4", - { - "x": 1 - }, - "6" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "`", - { - "x": 6.5 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "#", - { - "x": 14.5 - }, - "+", - { - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\n" - ], - [ - { - "y": -0.625, - "x": 6.5, - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "" - ], - [ - { - "y": -0.75, - "x": 3.5, - "t": "#b81c1c", - "a": 4 - }, - "[", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - "2\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c" - }, - "^", - { - "x": 1 - }, - "]", - { - "x": 8.5 - }, - "1", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "3\n\n\n" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "~", - { - "x": 6.5 - }, - "&" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "%", - { - "x": 14.5 - }, - "\\", - { - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nleft click", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - ".\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#000000", - "a": 7 - }, - "", - { - "x": 1, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nright click", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "?\n\n\n", - { - "x": 1, - "t": "#b81c1c" - }, - "0" - ], - [ - { - "y": -0.75, - "x": 0.5, - "t": "#000000", - "a": 7 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "EPRM RST", - { - "x": 14.5, - "t": "#000000", - "a": 7 - }, - "", - "" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "", - "" - ], - [ - { - "h": 2 - }, - "", - { - "h": 2 - }, - "", - "" - ], - [ - { - "x": 2 - }, - "" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "", - "" - ], - [ - { - "x": -3 - }, - "", - { - "h": 2 - }, - "", - { - "t": "#000000\n\n\n#529151", - "a": 4, - "h": 2 - }, - "\n\n\nWeb back" - ], - [ - { - "x": -3, - "t": "#000000", - "a": 7 - }, - "" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c deleted file mode 100644 index c6717abff5..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c +++ /dev/null @@ -1,260 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" -#include "version.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys - -#define EPRM M(1) // Macro 1: Reset EEPROM -#define HTML_LI M(10) -#define HTML_UL M(11) -#define HTML_OL M(12) -#define HTML_CODE M(13) - -#define SEND_TAG(TAG) do {\ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING("&"); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - go_back_based_on_tag(TAG); \ - } while (0) - -void send_key(uint16_t keycode); -void go_back_based_on_tag(char* tag); -void send_larger_than(void); - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L | / L2| / Cmd | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | | ~L1 | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | App | LGui | | Alt |Ctrl/Esc| - * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | - * `--------------------' `----------------------' - */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* -[BASE] = KEYMAP( // layer 0 : default - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), - LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, KC_LEFT,KC_RGHT, - ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, - // right hand - KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), - MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, - KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, - KC_LALT,CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | EPRM | | | | | ? | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, - KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*KC_TRNS,KC_TRNS*/, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, - KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, - ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 2: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | RESET | | | | | | | | | | | | | | RESET | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | |H_UL | |H_OL | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, - KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_WBAK -), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case 1: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; - case 10: - if (record->event.pressed) { - SEND_TAG("li"); - } - break; - case 11: - if (record->event.pressed) { - SEND_TAG( "ul" ); - } - break; - case 12: - if (record->event.pressed) { - SEND_TAG("ol"); - } - break; - case 13: - if (record->event.pressed) { - SEND_TAG("code"); - } - 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); - - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 0: - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - break; - case 1: - ergodox_right_led_1_on(); - - ergodox_board_led_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - break; - case 2: - ergodox_right_led_2_on(); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_3_off(); - break; - default: - // none - break; - } - -}; - -void send_key(uint16_t keycode) { - register_code(keycode); - unregister_code(keycode); -} - -void go_back_based_on_tag(char* tag) { - const int BRACKETS_AND_SLASH_LENGTH = 3; - - for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { - send_key(KC_LEFT); - } -} - -void send_larger_than() { - register_code(KC_LSFT); - send_key(KC_NONUS_BSLASH); - unregister_code(KC_LSFT); - -} diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md deleted file mode 100644 index 039a08588a..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md +++ /dev/null @@ -1,15 +0,0 @@ -# ErgoDox EZ Swiss German Configuration - -Swiss German keyboard layout based on the Ergodox EZ default layout. - -Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). - -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) - -![Layout Layer 0](keyboard-layout.png) -![Layout Layer 1&2](keyboard-layout_1_2.png) - -## Changelog -* Jan 21, 2017: - * Initial version based on default layout. - diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json deleted file mode 100644 index 7a0397f72a..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json +++ /dev/null @@ -1,417 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5 - }, - "#\n3", - { - "x": 10.5 - }, - "*\n8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@\n2", - { - "x": 1 - }, - "$\n4", - { - "x": 8.5 - }, - "&\n7", - { - "x": 1 - }, - "(\n9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "%\n5", - { - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "a": 4 - }, - "^\n6" - ], - [ - { - "y": -0.875, - "w": 1.5 - }, - "°\n§", - "!\n1", - { - "x": 14.5 - }, - ")\n0", - { - "w": 1.5 - }, - "?\n'\n\n'" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "E", - { - "x": 10.5 - }, - "I" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "W", - { - "x": 1 - }, - "R", - { - "x": 8.5 - }, - "U", - { - "x": 1 - }, - "O" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "T", - { - "c": "#b56b6b", - "a": 6, - "h": 1.5 - }, - "Toggle Code Layer", - { - "x": 4.5, - "h": 1.5 - }, - "Toggle Code Layer", - { - "c": "#cccccc", - "a": 4 - }, - "Y" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Delete", - { - "a": 4 - }, - "Q", - { - "x": 14.5 - }, - "P", - { - "w": 1.5 - }, - "è\nü\n\n[" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "D", - { - "x": 10.5 - }, - "K" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "S", - { - "x": 1 - }, - "F", - { - "x": 8.5 - }, - "J", - { - "x": 1 - }, - "L" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "G", - { - "x": 6.5 - }, - "H" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Backspace", - { - "c": "#79c777", - "a": 4 - }, - "A\n\nLyr3", - { - "x": 14.5 - }, - "é\nö\nLyr3", - { - "c": "#748adb", - "w": 1.5 - }, - "à\nä\nCmd\n{" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc", - "a": 6, - "h": 1.5 - }, - "Hyper", - { - "x": 4.5, - "h": 1.5 - }, - "Meh" - ], - [ - { - "y": -0.75, - "x": 3.5, - "a": 4 - }, - "C", - { - "x": 10.5 - }, - ";\n," - ], - [ - { - "y": -0.875, - "x": 2.5, - "c": "#748adb" - }, - "X\n\nAlt", - { - "x": 1, - "c": "#cccccc" - }, - "V", - { - "x": 8.5 - }, - "M", - { - "x": 1, - "c": "#748adb" - }, - ":\n.\nAlt" - ], - [ - { - "y": -0.875, - "x": 5.5, - "c": "#cccccc" - }, - "B", - { - "x": 6.5 - }, - "N" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Shift", - { - "c": "#748adb", - "a": 4 - }, - "Z\n\nCtrl", - { - "x": 14.5 - }, - "_\n-\nCtrl", - { - "c": "#cccccc", - "a": 6, - "w": 1.5 - }, - "Shift" - ], - [ - { - "y": -0.375, - "x": 3.5, - "a": 7 - }, - "", - { - "x": 10.5 - }, - "" - ], - [ - { - "y": -0.875, - "x": 2.5, - "a": 4 - }, - "£\n$\n\n}", - { - "x": 1, - "a": 7 - }, - "", - { - "x": 10.5, - "a": 6 - }, - "AltGr" - ], - [ - { - "y": -0.9950000000000001, - "x": 14, - "a": 7 - }, - "" - ], - [ - { - "y": -0.7549999999999999, - "x": 0.5, - "c": "#b56b6b", - "a": 4 - }, - ">\n<\nCode Layer\n\\", - { - "c": "#cccccc" - }, - "`\n^\n\n~", - { - "x": 14.5 - }, - "!\n¨\n\n]", - { - "c": "#b56b6b" - }, - "\n\nCode Layer" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1, - "c": "#748adb" - }, - "Apps\nAlt", - { - "c": "#cccccc", - "a": 6 - }, - "Win / Cmd" - ], - [ - { - "h": 2 - }, - "Space", - { - "h": 2 - }, - "Back Space", - "Home" - ], - [ - { - "x": 2 - }, - "End" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "Alt", - { - "c": "#748adb", - "a": 4 - }, - "Esc\nCtrl" - ], - [ - { - "x": -3, - "c": "#cccccc", - "a": 6 - }, - "Pg Up", - { - "h": 2 - }, - "Tab", - { - "h": 2 - }, - "Enter" - ], - [ - { - "x": -3 - }, - "Pg Dn" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png deleted file mode 100644 index aff6af8513..0000000000 Binary files a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png deleted file mode 100644 index 835816b53c..0000000000 Binary files a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json deleted file mode 100644 index e3d3660573..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json +++ /dev/null @@ -1,429 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5, - "t": "#b81c1c" - }, - "F3", - { - "x": 10.5 - }, - "F8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "F2", - { - "x": 1 - }, - "F4", - { - "x": 8.5 - }, - "F7", - { - "x": 1 - }, - "F9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "F5", - { - "t": "#000000", - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "F6" - ], - [ - { - "y": -0.875, - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\nFlash", - { - "t": "#b81c1c" - }, - "F1", - { - "x": 14.5 - }, - "F10", - { - "t": "#b81c1c\n\n\n#529151", - "w": 1.5 - }, - "F11\n\n\nFlash" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "{\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@", - { - "x": 1 - }, - "}", - { - "x": 8.5 - }, - "7", - { - "x": 1 - }, - "9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "|", - { - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "!", - { - "x": 14.5 - }, - "*", - { - "w": 1.5 - }, - "F12" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151" - }, - "(\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "5" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" - }, - "$\n\n\n", - { - "x": 1 - }, - ")\n\n\n", - { - "x": 8.5, - "t": "#b81c1c" - }, - "4", - { - "x": 1 - }, - "6" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "`", - { - "x": 6.5 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "#", - { - "x": 14.5 - }, - "+", - { - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\n" - ], - [ - { - "y": -0.625, - "x": 6.5, - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "" - ], - [ - { - "y": -0.75, - "x": 3.5, - "t": "#b81c1c", - "a": 4 - }, - "[", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - "2\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c" - }, - "^", - { - "x": 1 - }, - "]", - { - "x": 8.5 - }, - "1", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "3\n\n\n" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "~", - { - "x": 6.5 - }, - "&" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "%", - { - "x": 14.5 - }, - "\\", - { - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nleft click", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - ".\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#000000", - "a": 7 - }, - "", - { - "x": 1, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nright click", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "?\n\n\n", - { - "x": 1, - "t": "#b81c1c" - }, - "0" - ], - [ - { - "y": -0.75, - "x": 0.5, - "t": "#000000", - "a": 7 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "EPRM RST", - { - "x": 14.5, - "t": "#000000", - "a": 7 - }, - "", - "" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "", - "" - ], - [ - { - "h": 2 - }, - "", - { - "h": 2 - }, - "", - "" - ], - [ - { - "x": 2 - }, - "" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "", - "" - ], - [ - { - "x": -3 - }, - "", - { - "h": 2 - }, - "", - { - "t": "#000000\n\n\n#529151", - "a": 4, - "h": 2 - }, - "\n\n\nWeb back" - ], - [ - { - "x": -3, - "t": "#000000", - "a": 7 - }, - "" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c deleted file mode 100644 index 0ccb7f47e3..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c +++ /dev/null @@ -1,252 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" -#include "version.h" -#include "visualizer/lcd_backlight.h" -#include "string.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys - -#define EPRM M(1) // Macro 1: Reset EEPROM -#define HTML_LI M(10) -#define HTML_UL M(11) -#define HTML_OL M(12) -#define HTML_CODE M(13) - -#define SEND_TAG(TAG) do {\ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING("&"); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - go_back_based_on_tag(TAG); \ - } while (0) - -void send_key(uint16_t keycode); -void go_back_based_on_tag(char* tag); -void send_larger_than(void); - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L | / L2| / Cmd | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | | ~L1 | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | App | LGui | | Alt |Ctrl/Esc| - * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | - * `--------------------' `----------------------' - */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* -[BASE] = KEYMAP( // layer 0 : default - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), - LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, KC_LEFT,KC_RGHT, - ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, - // right hand - KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), - MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, - KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, - KC_LALT,CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | EPRM | | | | | ? | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, - KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*KC_TRNS,KC_TRNS*/, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, - KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, - ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 2: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | RESET | | | | | | | | | | | | | | RESET | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | |H_UL | |H_OL | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, - KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_WBAK -), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case 1: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; - case 10: - if (record->event.pressed) { - SEND_TAG("li"); - } - break; - case 11: - if (record->event.pressed) { - SEND_TAG("ul"); - } - break; - case 12: - if (record->event.pressed) { - SEND_TAG("ol"); - } - break; - case 13: - if (record->event.pressed) { - SEND_TAG("code"); - } - 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); - - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 0: - ergodox_board_led_off(); - lcd_backlight_hal_color(0, 0, 0); - break; - case 1: - lcd_backlight_hal_color(5000, 0, 0); - break; - case 2: - lcd_backlight_hal_color(0, 5000, 0); - break; - default: - // none - break; - } - -}; - -void send_key(uint16_t keycode) { - register_code(keycode); - unregister_code(keycode); -} - -void go_back_based_on_tag(char* tag) { - const int BRACKETS_AND_SLASH_LENGTH = 3; - - for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { - send_key(KC_LEFT); - } -} - -void send_larger_than() { - register_code(KC_LSFT); - send_key(KC_NONUS_BSLASH); - unregister_code(KC_LSFT); - -} diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md deleted file mode 100644 index 1c35f74732..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md +++ /dev/null @@ -1,14 +0,0 @@ -# ErgoDox Infinity Swiss German Configuration - -Swiss German keyboard layout based on the Ergodox EZ default layout. - -Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). - -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) - -![Layout Layer 0](keyboard-layout.png) -![Layout Layer 1&2](keyboard-layout_1_2.png) - -## Changelog -* Jan 21, 2017: - * Initial version. -- cgit v1.2.1 From 6b5cd656fd32033d1b5d117381208cd6708721ed Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:55:18 +0100 Subject: Correct layout description of ergodox swissgerman - Added missing HTML macros to media layer. --- .../keymaps/swissgerman/keyboard-layout_1_2.png | Bin 54604 -> 56347 bytes .../keymaps/swissgerman/keyboard-layout_2_3.json | 31 +++++++++++---------- 2 files changed, 16 insertions(+), 15 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png index 835816b53c..e0a4553690 100644 Binary files a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png and b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png differ diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json index e3d3660573..332f8f3b5d 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json @@ -97,18 +97,20 @@ }, "}", { - "x": 8.5 + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" }, - "7", + "7\n\n\nHTML ul", { "x": 1 }, - "9" + "9\n\n\nHTML ol" ], [ { "y": -0.875, - "x": 5.5 + "x": 5.5, + "t": "#b81c1c" }, "|", { @@ -158,16 +160,14 @@ }, "(\n\n\n", { - "x": 10.5, - "t": "#b81c1c" + "x": 10.5 }, - "5" + "5\n\n\nHTML li" ], [ { "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" + "x": 2.5 }, "$\n\n\n", { @@ -237,13 +237,12 @@ { "y": -0.75, "x": 3.5, - "t": "#b81c1c", + "t": "#b81c1c\n\n\n#529151", "a": 4 }, - "[", + "[\n\n\nHTML code", { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" + "x": 10.5 }, "2\n\n\n" ], @@ -255,11 +254,13 @@ }, "^", { - "x": 1 + "x": 1, + "t": "#b81c1c\n\n\n#529151" }, "]", { - "x": 8.5 + "x": 8.5, + "t": "#b81c1c" }, "1", { -- cgit v1.2.1 From eb6abb6305d66033b67a9860b57b21765b5b46bb Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:58:28 +0100 Subject: Renamed JSON source of Ergodox Swiss German - Renamed the JSON source files for the layout description of the Ergodox Swiss German keymap --- .../keymaps/swissgerman/keyboard-layout_1_2.json | 430 +++++++++++++++++++++ .../keymaps/swissgerman/keyboard-layout_2_3.json | 430 --------------------- keyboards/ergodox/keymaps/swissgerman/readme.md | 2 +- 3 files changed, 431 insertions(+), 431 deletions(-) create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json new file mode 100644 index 0000000000..332f8f3b5d --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json @@ -0,0 +1,430 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5, + "t": "#b81c1c" + }, + "F3", + { + "x": 10.5 + }, + "F8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "F2", + { + "x": 1 + }, + "F4", + { + "x": 8.5 + }, + "F7", + { + "x": 1 + }, + "F9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "F5", + { + "t": "#000000", + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "F6" + ], + [ + { + "y": -0.875, + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\nFlash", + { + "t": "#b81c1c" + }, + "F1", + { + "x": 14.5 + }, + "F10", + { + "t": "#b81c1c\n\n\n#529151", + "w": 1.5 + }, + "F11\n\n\nFlash" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "{\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "7\n\n\nHTML ul", + { + "x": 1 + }, + "9\n\n\nHTML ol" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5 + }, + "5\n\n\nHTML li" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151", + "a": 4 + }, + "[\n\n\nHTML code", + { + "x": 10.5 + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "]", + { + "x": 8.5, + "t": "#b81c1c" + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json deleted file mode 100644 index 332f8f3b5d..0000000000 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json +++ /dev/null @@ -1,430 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5, - "t": "#b81c1c" - }, - "F3", - { - "x": 10.5 - }, - "F8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "F2", - { - "x": 1 - }, - "F4", - { - "x": 8.5 - }, - "F7", - { - "x": 1 - }, - "F9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "F5", - { - "t": "#000000", - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "F6" - ], - [ - { - "y": -0.875, - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\nFlash", - { - "t": "#b81c1c" - }, - "F1", - { - "x": 14.5 - }, - "F10", - { - "t": "#b81c1c\n\n\n#529151", - "w": 1.5 - }, - "F11\n\n\nFlash" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "{\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@", - { - "x": 1 - }, - "}", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "7\n\n\nHTML ul", - { - "x": 1 - }, - "9\n\n\nHTML ol" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "|", - { - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "!", - { - "x": 14.5 - }, - "*", - { - "w": 1.5 - }, - "F12" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151" - }, - "(\n\n\n", - { - "x": 10.5 - }, - "5\n\n\nHTML li" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "$\n\n\n", - { - "x": 1 - }, - ")\n\n\n", - { - "x": 8.5, - "t": "#b81c1c" - }, - "4", - { - "x": 1 - }, - "6" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "`", - { - "x": 6.5 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "#", - { - "x": 14.5 - }, - "+", - { - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\n" - ], - [ - { - "y": -0.625, - "x": 6.5, - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "" - ], - [ - { - "y": -0.75, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151", - "a": 4 - }, - "[\n\n\nHTML code", - { - "x": 10.5 - }, - "2\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c" - }, - "^", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "]", - { - "x": 8.5, - "t": "#b81c1c" - }, - "1", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "3\n\n\n" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "~", - { - "x": 6.5 - }, - "&" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "%", - { - "x": 14.5 - }, - "\\", - { - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nleft click", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - ".\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#000000", - "a": 7 - }, - "", - { - "x": 1, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nright click", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "?\n\n\n", - { - "x": 1, - "t": "#b81c1c" - }, - "0" - ], - [ - { - "y": -0.75, - "x": 0.5, - "t": "#000000", - "a": 7 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "EPRM RST", - { - "x": 14.5, - "t": "#000000", - "a": 7 - }, - "", - "" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "", - "" - ], - [ - { - "h": 2 - }, - "", - { - "h": 2 - }, - "", - "" - ], - [ - { - "x": 2 - }, - "" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "", - "" - ], - [ - { - "x": -3 - }, - "", - { - "h": 2 - }, - "", - { - "t": "#000000\n\n\n#529151", - "a": 4, - "h": 2 - }, - "\n\n\nWeb back" - ], - [ - { - "x": -3, - "t": "#000000", - "a": 7 - }, - "" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman/readme.md b/keyboards/ergodox/keymaps/swissgerman/readme.md index 49889cd658..b1061c1dd1 100644 --- a/keyboards/ergodox/keymaps/swissgerman/readme.md +++ b/keyboards/ergodox/keymaps/swissgerman/readme.md @@ -4,7 +4,7 @@ Swiss German keyboard layout based on the Ergodox EZ default layout. Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) +Diagram sources: [default layer](keyboard-layout.json), [layer 1 & 2](keyboard-layout_1_2.json) ![Layout Layer 0](keyboard-layout.png) ![Layout Layer 1&2](keyboard-layout_1_2.png) -- cgit v1.2.1 From 803a861b4e5cce8da2f1260273ee5d918b0f58a7 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 22 Jan 2017 10:32:17 +0800 Subject: document BRACKETS and SHELL_LAYER --- keyboards/ergodox/keymaps/dvorak_programmer/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md index 3e4a2545b8..54da74f7f2 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/README.md +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -7,18 +7,23 @@ Layers ------ * BASE: this is where you type. +* SHELL_LAYER: this is a permanent layer which I use when I don't need the F keys and gives me bash shortcuts on the top row. * SHELL_NAV: hold down the Tab key to access shell/terminal navigation shorcuts such as forward/backward word, history, Ctrl+C, screen tab movement. * KEY_NAV: arrow key movement with backward/forward word support, and copy/paste. * KEY_SEL: same as above, but every movement shift-selects. * NUMBER: keypad layer. * SYMBOL: all the symbols. -* BRACKET: special brackets-only layer for programming +* BRACKET: special brackets-only layer for programming. Activated by pressing left capslock (OSL) * SHORTCUTS: sends Hyper keys for Autohotkey to interpret. I use this to switch between specific apps. * MOUSE: use mouse keys Updates ------- +2017/01/22: +* Made brackets toggle an OSL on the left capslock +* Added SHELL_LAYER + 2016/12/10: * toggle for brackets layer is now on left thumb cluster. -- cgit v1.2.1 From 3fd9aa3660331b05144f9cf7cebb60bef32a352f Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:30:18 +0100 Subject: SG Ergodox layout: Add
macro to media layer - Added
macro to media layer of Swiss German layout for Ergodox --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index a969393bba..54a8299cbd 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -18,6 +18,7 @@ #define HTML_UL M(11) #define HTML_OL M(12) #define HTML_CODE M(13) +#define HTML_BR M(14) #define SEND_TAG(TAG) do {\ send_key(KC_NONUS_BSLASH); \ @@ -30,6 +31,13 @@ go_back_based_on_tag(TAG); \ } while (0) +#define SEND_SHORT_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + SEND_STRING("&"); \ + send_larger_than(); \ + } while (0) + void send_key(uint16_t keycode); void go_back_based_on_tag(char* tag); void send_larger_than(void); @@ -130,7 +138,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | + * | | |H_CODE| |H_BR | | | | | | | Prev | Next | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | * `----------------------------------' `----------------------------------' @@ -147,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, HTML_BR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, @@ -202,6 +210,10 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) SEND_TAG("code"); } break; + case 14: + if (record->event.pressed) { + SEND_SHORT_TAG("br"); + } } return MACRO_NONE; }; -- cgit v1.2.1 From 5c4a73d788470a3fc53b8dd06b808cc662d37795 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:32:40 +0100 Subject: SG Ergodox layout: Add ENTER to left keyboard - Swiss German Ergodox layout: Added ENTER key to left keyboard half on media layer such that the enter key is available on both halves to be able to flash both halves without an additional keyboard. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 54a8299cbd..93e36d0326 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, + KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), @@ -145,7 +145,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-------------. ,-------------. * | | | | | | * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| + * |Enter | | | | | |Brwser| * | | |------| |------| |Back | * | | | | | | | | * `--------------------' `--------------------' -- cgit v1.2.1 From c2c8a120228fe8b8bfc15f05f4a39f35f6372b08 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:35:24 +0100 Subject: SG Ergodox layout: Minor code formatting changes - Swiss German Ergodox layout: Removed unnecessary spaces. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 93e36d0326..3f90c4e63f 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -197,7 +197,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case 11: if (record->event.pressed) { - SEND_TAG( "ul" ); + SEND_TAG("ul"); } break; case 12: -- cgit v1.2.1 From afd2c2ee9eac95869b8f9366f8861baf64444509 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:43:46 +0100 Subject: SG Ergodox layout: Fixed ENTER key mapping - Swiss German Ergodox layout: Additional ENTER key was mapped to wrong layer and keyboard half. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 3f90c4e63f..2291fb651a 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_ENT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), @@ -159,7 +159,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, + KC_ENT, KC_TRNS, KC_TRNS, // right hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, -- cgit v1.2.1 From 08c192caea1d0c1815b86461705f23d96f010e76 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:57:58 +0100 Subject: SG Ergodox layout: Updated layout documentation - Swiss German Ergodox layout: Updated layout documentation based on previous layout changes. --- .../keymaps/swissgerman/keyboard-layout.json | 4 +++- .../keymaps/swissgerman/keyboard-layout_1_2.json | 12 +++++++++--- .../keymaps/swissgerman/keyboard-layout_1_2.png | Bin 56347 -> 58099 bytes 3 files changed, 12 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json index 7a0397f72a..6958952b48 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json @@ -1,6 +1,8 @@ [ { - "backcolor": "#ffffff" + "backcolor": "#ffffff", + "name": "Ergodox Swiss German Layout - Base Layer", + "author": "Andreas Schmidt (https://github.com/remigius42)" }, [ { diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json index 332f8f3b5d..38a728514f 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json @@ -1,6 +1,8 @@ [ { - "backcolor": "#ffffff" + "backcolor": "#ffffff", + "name": "Ergodox Swiss German Layout - Symbol & Media Layer", + "author": "Andreas Schmidt (https://github.com/remigius42)" }, [ { @@ -257,7 +259,7 @@ "x": 1, "t": "#b81c1c\n\n\n#529151" }, - "]", + "]\n\n\nHTML br", { "x": 8.5, "t": "#b81c1c" @@ -378,10 +380,14 @@ ], [ { + "t": "#000000\n\n\n#529151", + "a": 4, "h": 2 }, - "", + "\n\n\nEnter", { + "t": "#000000", + "a": 7, "h": 2 }, "", diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png index e0a4553690..54c4a7587c 100644 Binary files a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png and b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png differ -- cgit v1.2.1 From 3c32e38036fda17be4ff86235565fe4ac88cba33 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 24 Jan 2017 19:10:35 +0100 Subject: [deadcyclo layout] Added support for ergodox ez shine --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 79741 -> 96046 bytes .../deadcyclo/images/deadcyclo-layer-1-symbols.png | Bin 55349 -> 79904 bytes keyboards/ergodox/keymaps/deadcyclo/keymap.c | 29 ++++++++++++++------- keyboards/ergodox/keymaps/deadcyclo/readme.md | 25 +++++++++++++++--- 4 files changed, 40 insertions(+), 14 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png index 4208c5189f..a70e375596 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png index ccda70e39a..5adb7ac774 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index d75c805bfe..208f671620 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LCTL, LT(MDIA, KC_A), KC_S, KC_D, KC_F, KC_G, KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_RALT,KC_LALT, ALT_T(KC_APP), KC_HOME, @@ -75,11 +75,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | . | 0 | = | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | | + * |Toggle|Animat| | Hue+ | Hue- | * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| DEL | | - * | | | | | | | | + * |Bright|Bright|Solid | | | | | + * |ness- |ness+ |------| |------| DEL | | + * | | | | | EPRM | | | * `--------------------' `--------------------' */ // SYMBOLS @@ -90,18 +90,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_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, + RGB_TOG,RGB_MOD, + RGB_SLD, + RGB_VAD,RGB_VAI,KC_TRNS, // right hand KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, + RGB_HUD, RGB_HUI, KC_TRNS, - KC_TRNS, KC_DEL, KC_TRNS + EPRM, KC_DEL, KC_TRNS ), /* Keymap 2: Media and mouse keys * @@ -254,12 +254,21 @@ void matrix_scan_user(void) { switch (layer) { case 1: ergodox_right_led_1_on(); + #ifdef RGBLIGHT_ENABLE + rgblight_setrgb(0xff,0x00,0x00); + #endif break; case 2: ergodox_right_led_2_on(); + #ifdef RGBLIGHT_ENABLE + rgblight_setrgb(0x00,0xff,0x00); + #endif break; case 3: ergodox_right_led_3_on(); + #ifdef RGBLIGHT_ENABLE + rgblight_setrgb(0x00,0x00,0xff); + #endif break; case 4: ergodox_right_led_1_on(); // TODO: Make a fourth layer diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 809dd6eb56..a937cfceb0 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -1,9 +1,11 @@ # ErgoDox EZ 1337 configuration -Custom layout based on the default layout. Intended for interational users of us intl-altgr layout. Note that -some common keys might be missing, as this layout is intented to be used on *nix systems by users familiar -with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are -unfamiliar with tiling window managers) as much as possibly. +Custom layout based on the default layout. Intended for interational +users of us intl-altgr layout. Note that some common keys might be +missing, as this layout is intented to be used on *nix systems by +users familiar with their system. The layout is geared towards +avoiding using the rat (mouse for those of you who are unfamiliar with +tiling window managers) as much as possibly. # Layouts @@ -13,6 +15,19 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo [![Base layer](images/deadcyclo-base-layout.png)](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) +The base layer here is marked with the us international alt-gr layout, +including characters bound to what on an iso keyboard would be alt-gr +and on an ansi keyboard right alt. + +Regular (and irregular) modifier keys are marked with a yellowish +gray. Layer moderators are marked with blue, red and green, which are +the same colors each layer displays on the LEDs when active. + +All of the layer switch keys, except for the two center keys marked L1 +TOG, are dual purpose. Hence for example the top left key produces ESC +if tapped, and temporarilly toggles L3 when hold down. The two center +L1 TOG keys toggle L1 on and off for more permanent layer toggling. + ## Layer 1 - Symbols [![Layer 1 - Symbols](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) @@ -29,8 +44,10 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo - 02.01.2017 Added delete key on second layer - 10.01.2017 Added layer images to readme +- 24.01.2017 Added support for Ergodox Shine. Added secondary L2 switch key on left hand # TODO - Add unicode support (direct input and indirect? see algernon layout for examples) - Add descriptions below each layer image of any special functions/keys +- Move Navigation keys to Layer 2 on right side, add a layer switch to L2 on left side as well, and use L3 for unicode stuff -- cgit v1.2.1 From 37ed3d13a4d99c9880f713de497f84efbe937bdf Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 24 Jan 2017 21:54:34 +0100 Subject: [deadcyclo layout] Added unicode layer --- keyboards/ergodox/keymaps/deadcyclo/Makefile | 1 + .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 50926 -> 62258 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 43551 -> 58407 bytes keyboards/ergodox/keymaps/deadcyclo/keymap.c | 91 +++++++++++++++++---- keyboards/ergodox/keymaps/deadcyclo/readme.md | 33 ++++++-- 5 files changed, 98 insertions(+), 27 deletions(-) create mode 100644 keyboards/ergodox/keymaps/deadcyclo/Makefile (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/Makefile b/keyboards/ergodox/keymaps/deadcyclo/Makefile new file mode 100644 index 0000000000..039f07c8e3 --- /dev/null +++ b/keyboards/ergodox/keymaps/deadcyclo/Makefile @@ -0,0 +1 @@ +UNICODE_ENABLE = yes diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png index 481e63e324..a267ff23d2 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png index 9ebba67340..6d73495c1c 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index 208f671620..c14ca6959d 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -12,7 +12,10 @@ enum custom_keycodes { PLACEHOLDER = SAFE_RANGE, // can always be here EPRM, VRSN, - RGB_SLD + RGB_SLD, + SHRUG, + YAY, + HUG }; // TODO: Get rid of of keys I don't want. Make others that I do. Set up lots of makros (Using hyper (and meh)) keys (where to put them?) @@ -103,14 +106,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, EPRM, KC_DEL, KC_TRNS ), -/* Keymap 2: Media and mouse keys +/* Keymap 2: Media, mouse and navigation * * ,--------------------------------------------------. ,--------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | + * | | | | MsUp | | | | | | | | Up | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * | | |MsLeft|MsDown|MsRght| |------| |------| | Left | Down | Right| | Play | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | | | | | | | Prev | Next | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -124,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | * `--------------------' `--------------------' */ -// MEDIA AND MOUSE +// MEDIA , MOUSE and NAVIGATION [MDIA] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, @@ -135,24 +138,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WBAK ), -/* Keymap 3: Navigation TODO: Printscreen, pg up down, home, end, others? Insert for example +/* Keymap 3: Unicode * * ,--------------------------------------------------. ,--------------------------------------------------. * | | VER | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | up | | | | | | | | | | | | + * | | Shrug| yay | hug | | | | | | ■ | λ | → | ➙ | ▻ | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | left | down | right| |------| |------| | | | | | | + * | | | | | | |------| |------| | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -166,11 +169,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | * `--------------------' `--------------------' */ -// NAVIGATION +// Unicode [NAVG] = KEYMAP( KC_TRNS, VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, + KC_TRNS, SHRUG, YAY, HUG, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -178,7 +181,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, // right hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, UC(0x25a0), UC(0x03bb), UC(0x2192), UC(0x2799), UC(0x25bb), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -192,6 +195,25 @@ const uint16_t PROGMEM fn_actions[] = { [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) }; +static void ang_tap (uint16_t code, ...) { + uint16_t kc = code; + va_list ap; + + va_start(ap, code); + + do { + register_code16(kc); + unregister_code16(kc); + wait_ms(50); + kc = va_arg(ap, int); + } while (kc != 0); + va_end(ap); +} + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { // MACRODOWN only works in this function @@ -233,13 +255,46 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case SHRUG: + if (record->event.pressed) { + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); + TAP_ONCE (KC_BSLS); + register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); + TAP_ONCE (KC_SLSH); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + } + return false; + break; + case YAY: + if (record->event.pressed) { + ang_tap (KC_BSLS, KC_O, KC_SLSH, 0); + } + return false; + break; + case HUG: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0f3c); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x3064); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x0f3d); unicode_input_finish(); + unicode_input_start(); register_hex(0x3064); unicode_input_finish(); + } + return false; + break; } return true; } // Runs just one time when the keyboard initializes. void matrix_init_user(void) { - + set_unicode_input_mode(UC_LNX); }; // Runs constantly in the background, in a loop. diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index a937cfceb0..5426057e99 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -28,26 +28,41 @@ TOG, are dual purpose. Hence for example the top left key produces ESC if tapped, and temporarilly toggles L3 when hold down. The two center L1 TOG keys toggle L1 on and off for more permanent layer toggling. -## Layer 1 - Symbols +## Layer 1 - Symbols and RGB -[![Layer 1 - Symbols](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) +[![Layer 1 - Symbols and RGB](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) -## Layer 2 - Media and Mouse +The Symbols and RGB layer contains function keys, commonly used +symbols, a numpad and if you have the new Ergodox Ez shine keys for +controlling various RGB-led functions. In addition, it provides an up +and a down key for easy scrolling. RGB controller keys are yellow. -[![Layer 2 - Media and Mouse](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) +## Layer 2 - Media, Mouse and Navigation -## Layer 3 - Navigation +[![Layer 2 - Media, Mouse and Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) -[![Layer 3 - Navigation](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) +The Media, Mouse and unicode layer contains special keys for moving +the mouse and clicking on it with the keyboard. In addition it +provides standard media control keys, and default arrow keys. + +## Layer 3 - Unicode + +[![Layer 3 - Unicode](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) + +The unicode layer provides keys for directly typing unicode (utf-8) # Changelog - 02.01.2017 Added delete key on second layer - 10.01.2017 Added layer images to readme - 24.01.2017 Added support for Ergodox Shine. Added secondary L2 switch key on left hand +- 24.01.2017 Added unicode keys. Added shrug hug and yay. Moved Navigation to layer 2 # TODO -- Add unicode support (direct input and indirect? see algernon layout for examples) -- Add descriptions below each layer image of any special functions/keys -- Move Navigation keys to Layer 2 on right side, add a layer switch to L2 on left side as well, and use L3 for unicode stuff +- Add support for unicode by name? (See algernon layout for example) +- Add macros for lots of stuff. (Lastpass cli, pushbullet cli, other push service cli, linode cli, more?) +- Make macros for gnu screen and i3wm +- Look into the app launch macros in algernon keymap +- Make other smileys like shrug and yay ¯\_(ツ)_/¯ and \o/ and others (see amon others [http://dongerlist.com](http://dongerlist.com) + -- cgit v1.2.1 From 8af48194f211ed30910e5fc4f7abc3195a5fb16f Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Wed, 25 Jan 2017 15:16:38 +0100 Subject: [deadcyclo layout] Added lotsof new emojis and some new unicode keys --- .../images/deadcyclo-layer-3-navigation.png | Bin 58407 -> 55517 bytes keyboards/ergodox/keymaps/deadcyclo/keymap.c | 188 +++++++++++++++++++-- keyboards/ergodox/keymaps/deadcyclo/readme.md | 1 + 3 files changed, 178 insertions(+), 11 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png index 6d73495c1c..e60c3e59ee 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index c14ca6959d..7578c723d5 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -15,7 +15,22 @@ enum custom_keycodes { RGB_SLD, SHRUG, YAY, - HUG + HUG, + SMILE, + SMILE2, + HMM1, + HMM2, + BEAR1, + BEAR2, + FUU, + EGGY1, + EGGY2, + FACE1, + FACE2, + UHU, + SMRK1, + SMRK2, + LOVE }; // TODO: Get rid of of keys I don't want. Make others that I do. Set up lots of makros (Using hyper (and meh)) keys (where to put them?) @@ -153,13 +168,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | | VER | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | Shrug| yay | hug | | | | | | ■ | λ | → | ➙ | ▻ | | + * | | shrug| yay | hug | smile|smile2| | | | ■ | λ | → | ➙ | ▻ | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | | | | | | + * | | hmm1 | hmm2 | bear1| bear2| fuu |------| |------| ☺ | ☻ | ☹ | ♡ | ♥ | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | + * | | eggy1| eggy2| face1| face2| uhu | | | | ❤ | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | | | | + * | | smrk1| smrk2| love | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -172,18 +187,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Unicode [NAVG] = KEYMAP( KC_TRNS, VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, SHRUG, YAY, HUG, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, SHRUG, YAY, HUG, SMILE, SMILE2, KC_TRNS, + KC_TRNS, HMM1, HMM2, BEAR1, BEAR2, FUU, + KC_TRNS, EGGY1, EGGY2, FACE1, FACE2, UHU, KC_TRNS, + KC_TRNS, SMRK1, SMRK2, LOVE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, UC(0x25a0), UC(0x03bb), UC(0x2192), UC(0x2799), UC(0x25bb), KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, + UC(0x263a), UC(0x263b), UC(0x2639), UC(0x2661), UC(0x2665), KC_TRNS, + KC_TRNS, UC(0x2764), KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -288,6 +303,157 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case SMILE: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + } + return false; + break; + case SMILE2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case HMM1: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + } + return false; + break; + case HMM2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case BEAR1: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0295); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x0294); unicode_input_finish(); + } + return false; + break; + case BEAR2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case FUU: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x256d); unicode_input_finish(); + unicode_input_start(); register_hex(0x2229); unicode_input_finish(); + unicode_input_start(); register_hex(0x256e); unicode_input_finish(); + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + unicode_input_start(); register_hex(0x256d); unicode_input_finish(); + unicode_input_start(); register_hex(0x2229); unicode_input_finish(); + unicode_input_start(); register_hex(0x256e); unicode_input_finish(); + } + return false; + break; + case EGGY1: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x256f); unicode_input_finish(); + unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); + unicode_input_start(); register_hex(0x25a1); unicode_input_finish(); + unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); + unicode_input_start(); register_hex(0xff09); unicode_input_finish(); + unicode_input_start(); register_hex(0x256f); unicode_input_finish(); + } + return false; + break; + case EGGY2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0020); unicode_input_finish(); + unicode_input_start(); register_hex(0x309c); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x309c); unicode_input_finish(); + unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case FACE1: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case FACE2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case UHU: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x2299); unicode_input_finish(); + unicode_input_start(); register_hex(0xfe4f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2299); unicode_input_finish(); + } + return false; + break; + case SMRK1: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x032e); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + } + return false; + break; + case SMRK2: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x032e); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + } + return false; + break; + case LOVE: + if (record->event.pressed) { + unicode_input_start(); register_hex(0x2665); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2665); unicode_input_finish(); + } + return false; + break; } return true; } diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 5426057e99..2ca5e822c1 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -57,6 +57,7 @@ The unicode layer provides keys for directly typing unicode (utf-8) - 10.01.2017 Added layer images to readme - 24.01.2017 Added support for Ergodox Shine. Added secondary L2 switch key on left hand - 24.01.2017 Added unicode keys. Added shrug hug and yay. Moved Navigation to layer 2 +- 25.01.2017 Added lots of new emojis and some unicode keys # TODO -- cgit v1.2.1 From c9ca36800884f63cf67d55565824bad0cb6d9be3 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Thu, 26 Jan 2017 01:52:43 -0500 Subject: replace jackhumbert with qmk --- keyboards/ergodox/keymaps/ab/readme.md | 2 +- keyboards/ergodox/keymaps/algernon/readme.md | 4 ++-- keyboards/ergodox/keymaps/german-kinergo/readme.md | 2 +- keyboards/ergodox/keymaps/mclennon_osx/README.md | 2 +- keyboards/ergodox/keymaps/pvinis/Readme.md | 2 +- keyboards/ergodox/keymaps/supercoder/readme.md | 2 +- keyboards/ergodox/keymaps/win10_writers-block/readme.md | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ab/readme.md b/keyboards/ergodox/keymaps/ab/readme.md index 6b1ac2be35..62e08e1629 100644 --- a/keyboards/ergodox/keymaps/ab/readme.md +++ b/keyboards/ergodox/keymaps/ab/readme.md @@ -8,7 +8,7 @@ Beginner's keymap emulates standard QWERTY keyboard for beginners. Once you get * Easy on beginners. It has everything you need for your day to day usage. #### Cons -* Keys are not ergonomically placed to take full advantage of Ergodox-EZ. Take a look at this [Default Keymap](https://github.com/jackhumbert/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/readme.md) +* Keys are not ergonomically placed to take full advantage of Ergodox-EZ. Take a look at this [Default Keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/readme.md) * While multiple layers are possible, beginner's keymap only uses one additional layer for mouse, function and volume keys. #### Notes diff --git a/keyboards/ergodox/keymaps/algernon/readme.md b/keyboards/ergodox/keymaps/algernon/readme.md index 015bd7cd32..3783eadf16 100644 --- a/keyboards/ergodox/keymaps/algernon/readme.md +++ b/keyboards/ergodox/keymaps/algernon/readme.md @@ -121,10 +121,10 @@ There is a very small tool in `tools/layer-notify`, that listens to the HID cons To make my workflow easier, this layout is maintained in [its own repository][algernon:ez-layout]. To build it, you will need the [QMK][qmk] firmware checked out, and this repo either checked out to something like `keyboards/ergodox_ez/algernon-master`. One way to achieve that is this: [algernon:ez-layout]: https://github.com/algernon/ergodox-layout - [qmk]: https://github.com/jackhumbert/qmk_firmware + [qmk]: https://github.com/qmk/qmk_firmware ``` -$ git clone https://github.com/jackhumbert/qmk_firmware.git +$ git clone https://github.com/qmk/qmk_firmware.git $ cd qmk_firmware $ git clone https://github.com/algernon/ergodox-layout.git \ keyboards/ergodox/keymaps/algernon-master diff --git a/keyboards/ergodox/keymaps/german-kinergo/readme.md b/keyboards/ergodox/keymaps/german-kinergo/readme.md index 557d85a8a4..beb74cf750 100644 --- a/keyboards/ergodox/keymaps/german-kinergo/readme.md +++ b/keyboards/ergodox/keymaps/german-kinergo/readme.md @@ -2,7 +2,7 @@ This layout is inspired by the "kinesis-qwerty-mod" from benblazak's [ergodox-firmware](https://github.com/benblazak/ergodox-firmware), as well as by the "german" layout from the -[qmk_firmware](https://github.com/jackhumbert/qmk_firmware). +[qmk_firmware](https://github.com/qmk/qmk_firmware). The goal was to have a layout that is pretty close to an ordinary German keyboard, so I don't have to make adjustments on the operating system level and I keep some of the muscle memory to use a regular keyboard. diff --git a/keyboards/ergodox/keymaps/mclennon_osx/README.md b/keyboards/ergodox/keymaps/mclennon_osx/README.md index 60980d043d..28cdb7c108 100644 --- a/keyboards/ergodox/keymaps/mclennon_osx/README.md +++ b/keyboards/ergodox/keymaps/mclennon_osx/README.md @@ -2,4 +2,4 @@ This keymapping is designed to be reasonably familiar to an ordinary Mac keyboard while taking advantage of the Ergodox EZ's features. Caps lock instead enables a layer which allows a user to use HJKL as arrow keys and to control media. Shift and control have additional mappings on S and D to provide easier access while holding down caps lock. -If you choose to compile this yourself, be sure to compile with `#define PREVENT_STUCK_MODIFIERS` in your `config.h`. Firmware built using [qmk_firmware](https://github.com/jackhumbert/qmk_firmware/). +If you choose to compile this yourself, be sure to compile with `#define PREVENT_STUCK_MODIFIERS` in your `config.h`. Firmware built using [qmk_firmware](https://github.com/qmk/qmk_firmware/). diff --git a/keyboards/ergodox/keymaps/pvinis/Readme.md b/keyboards/ergodox/keymaps/pvinis/Readme.md index 2a4a0c8f3d..af27210541 100644 --- a/keyboards/ergodox/keymaps/pvinis/Readme.md +++ b/keyboards/ergodox/keymaps/pvinis/Readme.md @@ -59,7 +59,7 @@ I have two commented out layers that are just templates, so I can easily create # Building ``` -$ git clone https://github.com/jackhumbert/qmk_firmware.git +$ git clone https://github.com/qmk/qmk_firmware.git $ cd qmk_firmware/keyboards/ergodox/keymaps/pvinis $ make ``` diff --git a/keyboards/ergodox/keymaps/supercoder/readme.md b/keyboards/ergodox/keymaps/supercoder/readme.md index 8ef96eddf6..df39ac7a94 100644 --- a/keyboards/ergodox/keymaps/supercoder/readme.md +++ b/keyboards/ergodox/keymaps/supercoder/readme.md @@ -22,7 +22,7 @@ your own: [hex]: https://raw.githubusercontent.com/algernon/ergodox-supercoder/master/supercoder.hex ``` -$ git clone https://github.com/jackhumbert/qmk_firmware.git +$ git clone https://github.com/qmk/qmk_firmware.git $ cd qmk_firmware/keyboards/ergodox $ git clone https://github.com/algernon/ergodox-supercoder.git keymaps/supercoder $ make KEYMAP=supercoder diff --git a/keyboards/ergodox/keymaps/win10_writers-block/readme.md b/keyboards/ergodox/keymaps/win10_writers-block/readme.md index e51e3c48fc..83f91bce28 100644 --- a/keyboards/ergodox/keymaps/win10_writers-block/readme.md +++ b/keyboards/ergodox/keymaps/win10_writers-block/readme.md @@ -90,7 +90,7 @@ Your LEDs will change to indicate your layer. You'll know you are in the base la To build, you will need the [QMK][qmk] firmware checked out. from there, dive into `keyboards/ergodox/keymaps/win10_writers-block/` -[qmk]: https://github.com/jackhumbert/qmk_firmware +[qmk]: https://github.com/qmk/qmk_firmware ``` $ make keyboard=ergodox keymap=win10_writers-block -- cgit v1.2.1 From fffe76a7b7e3a1da58fb8e948b33df1fd9cdbf63 Mon Sep 17 00:00:00 2001 From: Albert Pretorius Date: Thu, 26 Jan 2017 20:07:47 +0000 Subject: albert ergodox keymap --- keyboards/ergodox/keymaps/albert/Makefile | 5 + keyboards/ergodox/keymaps/albert/config.h | 12 + keyboards/ergodox/keymaps/albert/keymap.c | 661 +++++++++++++++++++++++++++++ keyboards/ergodox/keymaps/albert/readme.md | 188 ++++++++ 4 files changed, 866 insertions(+) create mode 100644 keyboards/ergodox/keymaps/albert/Makefile create mode 100644 keyboards/ergodox/keymaps/albert/config.h create mode 100644 keyboards/ergodox/keymaps/albert/keymap.c create mode 100644 keyboards/ergodox/keymaps/albert/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/albert/Makefile b/keyboards/ergodox/keymaps/albert/Makefile new file mode 100644 index 0000000000..eb8544afef --- /dev/null +++ b/keyboards/ergodox/keymaps/albert/Makefile @@ -0,0 +1,5 @@ +COMMAND_ENABLE = no # Commands for debug and configuration + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/ergodox/keymaps/albert/config.h b/keyboards/ergodox/keymaps/albert/config.h new file mode 100644 index 0000000000..e6d3631172 --- /dev/null +++ b/keyboards/ergodox/keymaps/albert/config.h @@ -0,0 +1,12 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +/* using UK layout for space-cadet-shift */ +#define LSPO_KEY KC_9 +#define RSPC_KEY KC_0 + +#define LEADER_TIMEOUT 800 // leader key sequence timeout in millis + +#endif diff --git a/keyboards/ergodox/keymaps/albert/keymap.c b/keyboards/ergodox/keymaps/albert/keymap.c new file mode 100644 index 0000000000..dfbb311bda --- /dev/null +++ b/keyboards/ergodox/keymaps/albert/keymap.c @@ -0,0 +1,661 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#include + +/* use UK keymap */ + +#define UK_HASH KC_NONUS_HASH +#define UK_BSLS KC_NONUS_BSLASH +#define UK_PIPE LSFT(UK_BSLS) + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define NUMB 2 // numbers and hex +#define CRSR 3 // cursor keys +#define MOUS 4 // mouse keys +#define KEYW 5 // keyword macros +#define EMAC 6 // emacs + +// my macros +#define UM_ECET M(0) // { } +#define UM_0x M(1) +#define UM_PUB M(2) +#define UM_PRO M(3) +#define UM_PRV M(4) +#define UM_CLS M(5) +#define UM_STR M(6) +#define UM_RET M(7) +#define UM_INC M(8) +#define UM_OBJ M(9) +#define UM_GITLOG M(10) +#define UM_GOODM M(11) +#define UM_NAMESP M(12) +#define UM_EMTR M(14) // emacs toggle read-only +#define UM_EMWR M(15) // emacs write buffer (save) +#define UM_EMUN M(16) // emacs undo +#define UM_EMRE M(17) // emacs redo +#define UM_EMPB M(18) // emacs previous buffer +#define UM_EMNB M(19) // emacs next buffer +#define UM_GOODN M(20) +#define UM_ECETS M(22) // { }; +#define UM_TMPL M(23) +#define UM_TYPN M(24) +#define UM_CONT M(25) +#define UM_BREAK M(26) +#define UM_CONST M(27) +#define UM_SMILY M(28) +#define UM_SADF M(29) +#define UM_SCARF M(30) +#define UM_DECAF M(31) +#define UM_OPER M(32) +#define UM_NULP M(33) +#define UM_EXTR M(34) +#define UM_VIRT M(35) +#define UM_EMFB M(36) // emacs font bigger +#define UM_EMFS M(37) // emacs font smaller +#define UM_VOLAT M(38) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Base layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | SfLt | | SfRt | 6 | 7 | 8 | 9 | 0 | BkSp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | Del | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps/L2| A | S | D | F | G |------| |------| H | J | K | L | ; |Enter/L2| + * |--------+------+------+------+------+------| L6 | | L6 |------+------+------+------+------+--------| + * | LSft/( | Z | X | C | V/L3 | B/L4 | | | | N/L4 | M/L3 | , | . | / | RSft/) | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Ctrl/[| Alt/]| # | Left |Right | | Up | Down | - | Alt/[|Ctrl/]| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | L2 | lead | | lead | Ins | + * ,------|------|------| |------+------+------. + * | Space| BkSp | Home | | PgUp | Enter|Space | + * | / | / |------| |------| / | / | + * | Ctrl | Alt |End/L5| |PDn/L5| Alt | Ctrl | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LSFT(KC_LEFT), + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MO(SYMB), + LT(NUMB, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSPO, KC_Z, KC_X, KC_C, LT(CRSR, KC_V), LT(MOUS, KC_B), MO(EMAC), + CTL_T(KC_LBRC), ALT_T(KC_RBRC), UK_HASH, KC_LEFT, KC_RGHT, + TG(NUMB), KC_LEAD, + KC_HOME, + CTL_T(KC_SPC), ALT_T(KC_BSPC), LT(KEYW, KC_END), + // right hand + LSFT(KC_RGHT), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + MO(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DELT, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(NUMB, KC_ENT), + MO(EMAC), LT(MOUS, KC_N), LT(CRSR, KC_M), KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, + KC_UP, KC_DOWN, KC_MINS, ALT_T(KC_LBRC), CTL_T(KC_RBRC), + KC_LEAD, KC_INS, + KC_PGUP, + LT(KEYW, KC_PGDN), ALT_T(KC_ENT), CTL_T(KC_SPC) + ), +/* Keymap 1: Symbol Layer with F keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ## | F1 | F2 | F3 | F4 | F5 | ## | | ## | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | ## | ! | " | £ | $ | % | ## | | ## | - | + | = | @ | ~ | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ## | ^ | & | * | _ | # |------| |------| { | } | ; | ' | # | ## | + * |--------+------+------+------+------+------| ## | | ## |------+------+------+------+------+--------| + * | ## | \ | | | ` | - | / | | | | [ | ] | < | > | ? | ## | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ## | ## | ## | ## | ## | | ## | ## | ## | ## | ## | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | ## | ## | | ## | ## | + * ,------|------|------| |------+------+------. + * | | | ## | | ## | | | + * | ## | ## |------| |------| ## | ## | + * | | | ## | | ## | | | + * `--------------------' `--------------------' + */ +[SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_EXLM, LSFT(KC_2), LSFT(KC_3), LSFT(KC_4), LSFT(KC_5), KC_TRNS, + KC_TRNS, LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_MINS), UK_HASH, + KC_TRNS, UK_BSLS, UK_PIPE, KC_GRV, KC_MINS, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_MINS, KC_PLUS, KC_EQL, LSFT(KC_QUOT), LSFT(UK_HASH), KC_F12, + KC_LCBR, KC_RCBR, KC_SCLN, KC_QUOT, UK_HASH, KC_TRNS, + KC_TRNS, KC_LBRC, KC_RBRC, LSFT(KC_COMM), LSFT(KC_DOT), LSFT(KC_SLSH), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +/* Keymap 2: Numerics and hex + * + * ,---------------------------------------------------. ,--------------------------------------------------. + * | ## | A | B | C | D | E | F | | A | B | C | D | E | F | ## | + * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | ## | * | 7 | 8 | 9 | * | 0x | | 0x | * | 7 | 8 | 9 | * | ## | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ## | / | 4 | 5 | 6 | / |------| |------| / | 4 | 5 | 6 | / | ## | + * |---------+------+------+------+------+------| ## | | ## |------+------+------+------+------+--------| + * | ## | - | 1 | 2 | 3 | - | | | | - | 1 | 2 | 3 | - | ## | + * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | = | + | 0 | , | . | | 0 | , | . | + | = | + * `-----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | ## | ## | | ## | ## | + * ,------|------|------| |------+------+------. + * | | | ## | | ## | | | + * | ## | ## |------| |------| ## | ## | + * | | | ## | | ## | | | + * `--------------------' `--------------------' + */ +[NUMB] = KEYMAP( + // left hand + KC_TRNS, KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, + KC_TRNS, KC_ASTR, KC_7, KC_8, KC_9, KC_ASTR, UM_0x, + KC_TRNS, KC_SLSH, KC_4, KC_5, KC_6, KC_SLSH, + KC_TRNS, KC_MINS, KC_1, KC_2, KC_3, KC_MINS, KC_TRNS, + KC_EQL, KC_PLUS, KC_0, KC_COMM, KC_DOT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, KC_TRNS, + UM_0x, KC_ASTR, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, + KC_SLSH, KC_4, KC_5, KC_6, KC_SLSH, KC_TRNS, + KC_TRNS, KC_MINS, KC_1, KC_2, KC_3, KC_MINS, KC_TRNS, + KC_0, KC_COMM, KC_DOT, KC_PLUS, KC_EQL, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +/* Keymap 3: Cursor movement + * + * ,---------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | | Home | | Up | | PgUp | | | | PgUp | | Up | | Home | | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | End | Left | Down | Right| PgDn |------| |------| PgDn | Left | Down | Right| End | | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ## | Up | | Down | ## | | | | | | ## | Down | | Up | ## | + * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Left | Down | Right| | | | | | Left | Down | Right| + * `-----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | ## | ## |------| |------| ## | ## | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[CRSR] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_HOME, KC_NO, KC_UP, KC_NO, KC_PGUP, KC_NO, + KC_NO, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, + KC_TRNS, KC_UP, KC_NO, KC_DOWN, KC_TRNS, KC_NO, KC_NO, + KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_TRNS, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_PGUP, KC_NO, KC_UP, KC_NO, KC_HOME, KC_NO, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_NO, + KC_NO, KC_NO, KC_TRNS, KC_DOWN, KC_NO, KC_UP, KC_TRNS, + KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_TRNS, KC_TRNS + ), +/* Keymap 4: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Lclk | MsUp | Rclk | | | | | | Lclk | MsUp | Rclk | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| |MsLeft|MsDown|MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Lclk | MsUp | Rclk |MsDown| | ## | | | | ## | |MsDown| Lclk | MsUp | Rclk | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |MsLeft|MsDown|MsRight | | | | |MsLeft|MsDown|MsRght| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[MOUS] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_BTN1, KC_MS_U, KC_BTN2, KC_NO, KC_NO, + KC_NO, KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, + KC_BTN1, KC_MS_U, KC_BTN2, KC_MS_D, KC_NO, KC_TRNS, KC_NO, + KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_NO, + 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_BTN1, KC_MS_U, KC_BTN2, KC_NO, KC_NO, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_NO, + KC_NO, KC_TRNS, KC_NO, KC_MS_D, KC_BTN1, KC_MS_U, KC_BTN2, + KC_NO, KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO + ), +/* Keymap 5: Keywords + * + * ,---------------------------------------------------. ,--------------------------------------------------. + * | | | | scarf| sadf | smily| | | | decaf| | | | | | + * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | | const| volat| oper | ret | tmpl | | | | typen| cont | prv | pro | pub | | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | str | obj | | gitl |------| |------| | | | nulp | | | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | extr | cls | virt | break| | | |namesp| goodm| goodn| | | | + * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | inc | | | | | | | | | + * `-----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | ecet | ecets| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | ## | | ## | | | + * `--------------------' `--------------------' + */ +[KEYW] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, UM_SCARF, UM_SADF, UM_SMILY, KC_NO, + KC_NO, UM_CONST, UM_VOLAT, UM_OPER, UM_RET, UM_TMPL, KC_NO, + KC_NO, KC_NO, UM_STR, UM_OBJ, KC_NO, UM_GITLOG, + KC_NO, KC_NO, UM_EXTR, UM_CLS, UM_VIRT, UM_BREAK, KC_NO, + KC_NO, KC_NO, UM_INC, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS, + // right hand + KC_NO, UM_DECAF, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, UM_TYPN, UM_CONT, UM_PRV, UM_PRO, UM_PUB, KC_NO, + KC_NO, KC_NO, KC_NO, UM_NULP, KC_NO, KC_NO, + KC_NO, UM_NAMESP, UM_GOODM, UM_GOODN, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + UM_ECET, UM_ECETS, + KC_NO, + KC_TRNS, KC_NO, KC_NO + ), +/* Keymap 6: emacs + * + * ,---------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | empb | | emnb | emfs | emfb | | | | | + * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | | emtr | | | | | | | | emun | emre | w-up | | | | + * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | emwr | | | |------| |------| |w-left|w-down|w-rght| | | + * |---------+------+------+------+------+------| ## | | ## |------+------+------+------+------+--------| + * | | | | | | | | | | | |w-down| | | | + * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `-----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[EMAC] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, UM_EMPB, + KC_NO, UM_EMTR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, UM_EMWR, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, + // right hand + UM_EMNB, UM_EMFS, UM_EMFB, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, UM_EMUN, UM_EMRE, LSFT(KC_UP), KC_NO, KC_NO, KC_NO, + KC_NO, LSFT(KC_LEFT), LSFT(KC_DOWN), LSFT(KC_RGHT), KC_NO, KC_NO, + KC_TRNS, KC_NO, KC_NO, LSFT(KC_DOWN), KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO + ), +}; + +enum next_key_down_up { + NK_DOWN_UP, + NK_DOWN, + NK_UP // a bit of a hack, this works as long as NK_UP < KC_A +}; + +void send_keystrokes(uint8_t key, ...) +{ + va_list vl; + va_start(vl, key); + enum next_key_down_up nkdu = NK_DOWN_UP; + while (key != KC_NO) { + if (key < KC_A) { + nkdu = key; + } else { + switch (nkdu) { + case NK_DOWN_UP: + register_code(key); + case NK_UP: + unregister_code(key); + break; + case NK_DOWN: + register_code(key); + } + nkdu = NK_DOWN_UP; + } + key = va_arg(vl, int); + } + va_end(vl); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: // { } + if (record->event.pressed) { + return MACRO(T(ENT), D(LSFT), T(LBRC), U(LSFT), T(ENT), + D(LSFT), T(RBRC), U(LSFT), T(UP), + T(TAB), END); + } + break; + case 1: + if (record->event.pressed) { + return MACRO(T(0), T(X), END); + } + break; + case 2: + if (record->event.pressed) { + SEND_STRING("public"); + } + break; + case 3: + if (record->event.pressed) { + SEND_STRING("protected"); + } + break; + case 4: + if (record->event.pressed) { + SEND_STRING("private"); + } + break; + case 5: // class + if (record->event.pressed) { + return MACRO(T(C), T(L), T(A), T(S), T(S), T(ENT), + D(LSFT), T(LBRC), U(LSFT), T(ENT), + T(P), T(U), T(B), T(L), T(I), T(C), + D(LSFT), T(SCLN), U(LSFT), T(ENT), T(ENT), + T(P), T(R), T(I), T(V), T(A), T(T), T(E), + D(LSFT), T(SCLN), U(LSFT), T(ENT), + D(LSFT), T(RBRC), U(LSFT), T(SCLN), T(ENT), + T(UP), T(UP), T(UP), T(UP), T(UP), T(UP), T(UP), + T(END), T(SPC), END); + } + break; + case 6: // struct + if (record->event.pressed) { + return MACRO(T(S), T(T), T(R), T(U), T(C), T(T), T(ENT), + D(LSFT), T(LBRC), U(LSFT), T(ENT), + D(LSFT), T(RBRC), U(LSFT), T(SCLN), T(ENT), + T(UP), T(UP), T(UP), T(UP), + T(END), T(SPC), END); + } + break; + case 7: + if (record->event.pressed) { + SEND_STRING("return"); + } + break; + case 8: // #include + if (record->event.pressed) { + return MACRO(T(NONUS_HASH), T(I), T(N), T(C), T(L), T(U), T(D), T(E), END); + } + break; + case 9: + if (record->event.pressed) { + SEND_STRING("objdump -CT -x -d"); + } + break; + case 10: + if (record->event.pressed) { + SEND_STRING("git log --oneline --graph --decorate=short"); + } + break; + case 11: + if (record->event.pressed) { + SEND_STRING("good morning"); + } + break; + case 12: + if (record->event.pressed) { + SEND_STRING("namespace"); + } + break; + case 14: // emacs toggle read-only + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), T(Q), U(LCTL), END); + } + break; + case 15: // emacs write buffer + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), T(S), U(LCTL), END); + } + break; + case 16: // emacs undo + if (record->event.pressed) { + return MACRO(D(LCTL), D(LSFT), T(MINS), U(LSFT), U(LCTL), END); + } + break; + case 17: // emacs redo + if (record->event.pressed) { + return MACRO(D(LALT), D(LSFT), T(MINS), U(LSFT), U(LALT), END); + } + break; + case 18: // emacs previous buffer + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), U(LCTL), T(LEFT), END); + } + break; + case 19: // emacs next buffer + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), U(LCTL), T(RGHT), END); + } + break; + case 20: + if (record->event.pressed) { + SEND_STRING("good night"); + } + break; + case 22: // { }; + if (record->event.pressed) { + return MACRO(T(ENT), D(LSFT), T(LBRC), U(LSFT), T(ENT), + D(LSFT), T(RBRC), U(LSFT), T(SCLN), T(UP), + T(TAB), END); + } + break; + case 23: + if (record->event.pressed) { + SEND_STRING("template"); + } + break; + case 24: + if (record->event.pressed) { + SEND_STRING("typename"); + } + break; + case 25: + if (record->event.pressed) { + SEND_STRING("continue"); + return MACRO(T(SCLN), END); + } + break; + case 26: + if (record->event.pressed) { + SEND_STRING("break"); + return MACRO(T(SCLN), END); + } + break; + case 27: + if (record->event.pressed) { + SEND_STRING("const"); + } + break; + case 28: + if (record->event.pressed) { + SEND_STRING(":-)"); + } + break; + case 29: + if (record->event.pressed) { + SEND_STRING(":-("); + } + break; + case 30: // dazed + if (record->event.pressed) { + send_keystrokes(NK_DOWN, KC_LSFT, KC_8, KC_MINS, KC_8, NK_UP, KC_LSFT, KC_NO); + } + break; + case 31: // decaf + if (record->event.pressed) { + send_keystrokes(NK_DOWN, KC_LSFT, KC_C, KC_9, KC_MINS, KC_0, NK_UP, KC_LSFT, KC_NO); + } + break; + case 32: + if (record->event.pressed) { + SEND_STRING("operator"); + } + break; + case 33: + if (record->event.pressed) { + SEND_STRING("nullptr"); + } + break; + case 34: + if (record->event.pressed) { + SEND_STRING("extern"); + } + break; + case 35: + if (record->event.pressed) { + SEND_STRING("virtual"); + } + break; + case 36: // emacs font smaller + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), T(EQL), U(LCTL), END); + } + break; + case 37: // emacs font bigger + if (record->event.pressed) { + return MACRO(D(LCTL), T(X), T(MINS), U(LCTL), END); + } + break; + case 38: + if (record->event.pressed) { + SEND_STRING("volatile"); + } + break; + } + return MACRO_NONE; +} + +LEADER_EXTERNS(); + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + LEADER_DICTIONARY() { + leading = false; + leader_end(); + + SEQ_TWO_KEYS(KC_G, KC_A) { + SEND_STRING("git add ."); + } + SEQ_TWO_KEYS(KC_G, KC_D) { + SEND_STRING("git diff"); + } + SEQ_THREE_KEYS(KC_G, KC_D, KC_S) { + SEND_STRING("git diff --staged"); + } + SEQ_TWO_KEYS(KC_G, KC_L) { + SEND_STRING("git log"); + } + SEQ_THREE_KEYS(KC_G, KC_L, KC_O) { + SEND_STRING("git log --oneline"); + } + SEQ_TWO_KEYS(KC_G, KC_F) { + SEND_STRING("git fetch"); + } + SEQ_TWO_KEYS(KC_G, KC_O) { + SEND_STRING("git checkout"); + } + SEQ_TWO_KEYS(KC_G, KC_P) { + SEND_STRING("git pull"); + } + SEQ_TWO_KEYS(KC_G, KC_S) { + SEND_STRING("git status"); + } + SEQ_TWO_KEYS(KC_G, KC_C) { + SEND_STRING("git commit -m ''"); + send_keystrokes(KC_LEFT, KC_NO); + } + SEQ_THREE_KEYS(KC_G, KC_C, KC_A) { + SEND_STRING("git commit --amend"); + } + + SEQ_TWO_KEYS(KC_C, KC_C) { + SEND_STRING("const_cast<>"); + send_keystrokes(KC_LEFT, KC_NO); + } + SEQ_TWO_KEYS(KC_C, KC_D) { + SEND_STRING("dynamic_cast<>"); + send_keystrokes(KC_LEFT, KC_NO); + } + SEQ_TWO_KEYS(KC_C, KC_R) { + SEND_STRING("reinterpret_cast<>"); + send_keystrokes(KC_LEFT, KC_NO); + } + SEQ_TWO_KEYS(KC_C, KC_S) { + SEND_STRING("static_cast<>"); + send_keystrokes(KC_LEFT, KC_NO); + } + + SEQ_ONE_KEY(KC_SLSH) { + send_keystrokes(KC_SLSH, NK_DOWN, KC_LSFT, KC_8, KC_8, NK_UP, KC_LSFT, KC_ENT, + NK_DOWN, KC_LSFT, KC_8, NK_UP, KC_LSFT, KC_ENT, + NK_DOWN, KC_LSFT, KC_8, NK_UP, KC_LSFT, KC_SLSH, KC_UP, KC_END, KC_SPC, + KC_NO); + } + } +} diff --git a/keyboards/ergodox/keymaps/albert/readme.md b/keyboards/ergodox/keymaps/albert/readme.md new file mode 100644 index 0000000000..e20e047ac6 --- /dev/null +++ b/keyboards/ergodox/keymaps/albert/readme.md @@ -0,0 +1,188 @@ +# ErgoDox EZ Configuration for typing like a boss. + +This layout has 7 layers: +0. Base layers +1. Symbols and F-keys +2. Number pad (with hexadecimal) +3. Cursor keys +4. Mouse movement and clicks +5. Keyword macros +6. Emacs + +There are also some leader keys defined for frequently used commands (git etc). + +## The layers + +Double hashes (`##`) indicate transparent keys (`KC_TRNS`) and blanks indicate no key (`KC_NO`). + +### 0. Base layer + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| ESC | 1 | 2 | 3 | 4 | 5 | SfLt | | SfRt | 6 | 7 | 8 | 9 | 0 | BkSp | +|--------|------|------|------|------|-------------| |------|------|------|------|------|------|--------| +| Tab | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | Del | +|--------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| Caps/L2| A | S | D | F | G |------| |------| H | J | K | L | ; |Enter/L2| +|--------|------|------|------|------|------| L6 | | L6 |------|------|------|------|------|--------| +| LSft/( | Z | X | C | V/L3 | B/L4 | | | | N/L4 | M/L3 | , | . | / | RSft/) | +`--------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + |Ctrl/[| Alt/]| # | Left |Right | | Up | Down | - | Alt/[|Ctrl/]| + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | L2 | lead | | lead | Ins | + ,------|------|------| |------|------|------. + | Space| BkSp | Home | | PgUp | Enter|Space | + | / | / |------| |------| / | / | + | Ctrl | Alt |End/L5| |PDn/L5| Alt | Ctrl | + `--------------------' `--------------------' +``` + +Space Cadet shift is enabled. Ctrl and Alt doubles up as normal keys when tapped. +SfLt and SfRt sends Shift + left and Shift + Right respectively - for use with emacs with `windmove-default-keybindings`. +Caps and Enter may be held down to activate layer 2 (hexadecimal number pad). +Please see `matrix_scan_user` function in `keymap.c` for list of commands available via `lead` key. + +### 1. Symbols and F-keys + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| ## | F1 | F2 | F3 | F4 | F5 | ## | | ## | F6 | F7 | F8 | F9 | F10 | F11 | +|--------|------|------|------|------|------|------| |------|------|------|------|------|------|--------| +| ## | ! | " | £ | $ | % | ## | | ## | - | + | = | @ | ~ | F12 | +|--------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| ## | ^ | & | * | _ | # |------| |------| { | } | ; | ' | # | ## | +|--------|------|------|------|------|------| ## | | ## |------|------|------|------|------|--------| +| ## | \ | | | ` | - | / | | | | [ | ] | < | > | ? | ## | +`--------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + | ## | ## | ## | ## | ## | | ## | ## | ## | ## | ## | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | ## | ## | | ## | ## | + ,------|------|------| |------|------|------. + | | | ## | | ## | | | + | ## | ## |------| |------| ## | ## | + | | | ## | | ## | | | + `--------------------' `--------------------' +``` + +### 2. Number pad (with hexadecimal) + +``` +,---------------------------------------------------. ,--------------------------------------------------. +| ## | A | B | C | D | E | F | | A | B | C | D | E | F | ## | +|---------|------|------|------|------|------|------| |------|------|------|------|------|------|--------| +| ## | * | 7 | 8 | 9 | * | 0x | | 0x | * | 7 | 8 | 9 | * | ## | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| ## | / | 4 | 5 | 6 | / |------| |------| / | 4 | 5 | 6 | / | ## | +|---------|------|------|------|------|------| ## | | ## |------|------|------|------|------|--------| +| ## | - | 1 | 2 | 3 | - | | | | - | 1 | 2 | 3 | - | ## | +`---------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + | = | + | 0 | , | . | | 0 | , | . | + | = | + `-----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | ## | ## | | ## | ## | + ,------|------|------| |------|------|------. + | | | ## | | ## | | | + | ## | ## |------| |------| ## | ## | + | | | ## | | ## | | | + `--------------------' `--------------------' +``` + +### 3. Cursor keys + +``` +,---------------------------------------------------. ,--------------------------------------------------. +| | | | | | | | | | | | | | | | +|---------|------|------|------|------|------|------| |------|------|------|------|------|------|--------| +| | Home | | Up | | PgUp | | | | PgUp | | Up | | Home | | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| | End | Left | Down | Right| PgDn |------| |------| PgDn | Left | Down | Right| End | | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| ## | Up | | Down | ## | | | | | | ## | Down | | Up | ## | +`---------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + | Left | Down | Right| | | | | | Left | Down | Right| + `-----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------|------|------. + | | | | | | | | + | ## | ## |------| |------| ## | ## | + | | | | | | | | + `--------------------' `--------------------' +``` + +### 4. Mouse movement and clicks + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| | | | | | | | | | | | | | | | +|--------|------|------|------|------|-------------| |------|------|------|------|------|------|--------| +| | | Lclk | MsUp | Rclk | | | | | | Lclk | MsUp | Rclk | | | +|--------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| | |MsLeft|MsDown|MsRght| |------| |------| |MsLeft|MsDown|MsRght| | | +|--------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| Lclk | MsUp | Rclk |MsDown| | ## | | | | ## | |MsDown| Lclk | MsUp | Rclk | +`--------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + |MsLeft|MsDown|MsRight | | | | |MsLeft|MsDown|MsRght| + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------|------|------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' +``` + +### 5. Keyword macros + +``` +,---------------------------------------------------. ,--------------------------------------------------. +| | | | scarf| sadf | smily| | | | decaf| | | | | | +|---------|------|------|------|------|------|------| |------|------|------|------|------|------|--------| +| | const| volat| oper | ret | tmpl | | | | typen| cont | prv | pro | pub | | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| | | str | obj | | gitl |------| |------| | | | nulp | | | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| | | extr | cls | virt | break| | | |namesp| goodm| goodn| | | | +`---------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + | | | inc | | | | | | | | | + `-----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | ecet | ecets| + ,------|------|------| |------|------|------. + | | | | | | | | + | | |------| |------| | | + | | | ## | | ## | | | + `--------------------' `--------------------' +``` +Please see `keymap.c` for the keywords/commands. +Some are const, volatile, operator, return, template, typename, continue, private, +protected, public, struct, class, extern, virtual, break, namespace. +Also a git log command I use a lot (`git log --oneline --graph --decorate=short` (I know git can be configured but that is boring)). + +### 6. Emacs + +``` +,---------------------------------------------------. ,--------------------------------------------------. +| | | | | | | empb | | emnb | emfs | emfb | | | | | +|---------|------|------|------|------|------|------| |------|------|------|------|------|------|--------| +| | emtr | | | | | | | | emun | emre | w-up | | | | +|---------|------|------|------|------|------| | | |------|------|------|------|------|--------| +| | | emwr | | | |------| |------| |w-left|w-down|w-rght| | | +|---------|------|------|------|------|------| ## | | ## |------|------|------|------|------|--------| +| | | | | | | | | | | |w-down| | | | +`---------|------|------|------|------|-------------' `-------------|------|------|------|------|--------' + | | | | | | | | | | | | + `-----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------|------|------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' +``` +Some emacs shortcuts like toggle read/write mode (emtr), write file (emwr), previous-buffer (empb), +next-buffer (emnb), smaller font(emfs), larger font (emfb), undo (emun), redo (emre) and switching between windows in a frame. -- cgit v1.2.1 From 13fa63b19223fea024fc6a395041ecc2419caa1d Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Fri, 27 Jan 2017 13:53:02 +0100 Subject: [deadcyclo layout] Added more unicode keys and ibus unicode compose trigger keys --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 96046 -> 79488 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 55517 -> 58886 bytes keyboards/ergodox/keymaps/deadcyclo/keymap.c | 42 ++++++++++----------- keyboards/ergodox/keymaps/deadcyclo/readme.md | 7 +++- 4 files changed, 26 insertions(+), 23 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png index a70e375596..2c03af5818 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png index e60c3e59ee..c8c90cf5c4 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index 7578c723d5..bfbf17be12 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |Grv/L1| '" |AltShf| Lalt | Ralt | | Lalt | Ralt | [ | ] | ~/L1 | + * |Grv/L1| UNI |AltShf| Lalt | Ralt | | Lalt | Ralt | [ | UNI | ~/L1 | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | App | Home | | PgUp | Ins | @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), KC_LCTL, LT(MDIA, KC_A), KC_S, KC_D, KC_F, KC_G, KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_RALT,KC_LALT, + LT(SYMB,KC_GRV),LCTL(LSFT(KC_U)), LALT(KC_LSFT), KC_RALT,KC_LALT, ALT_T(KC_APP), KC_HOME, KC_END, KC_SPC,KC_TAB,KC_LBRC, @@ -74,12 +74,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, - KC_LALT, KC_RALT,KC_LBRC,KC_RBRC, LT(SYMB,KC_TILD), + KC_LALT, KC_RALT,KC_LBRC,LCTL(LSFT(KC_U)), LT(SYMB,KC_TILD), KC_PGUP, KC_INS, KC_PGDN, KC_RBRC,KC_BSPC, KC_ENT ), -/* Keymap 1: Symbol Layer +/* Keymap 1: Symbol Layer LCTL(LSFT(KC_U)) * * ,--------------------------------------------------. ,--------------------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | F6 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | @@ -166,18 +166,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 3: Unicode * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | VER | | | | | | | | | | | | | | + * | | ┌ | ┐ | └ | ┘ | │ | ─ | | ╔ | ╗ | ╚ | ╝ | ║ | ═ | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | shrug| yay | hug | smile|smile2| | | | ■ | λ | → | ➙ | ▻ | | + * | | shrug| yay | hug | smile|smile2| | | | ■ | λ | → | ➙ | ▻ | █ | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | hmm1 | hmm2 | bear1| bear2| fuu |------| |------| ☺ | ☻ | ☹ | ♡ | ♥ | | + * | | hmm1 | hmm2 | bear1| bear2| fuu |------| |------| ☺ | ☻ | ☹ | ♡ | ♥ | ░ | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | eggy1| eggy2| face1| face2| uhu | | | | ❤ | | | | | | + * | | eggy1| eggy2| face1| face2| uhu | | | | ❤ | ☐ | ☑ | ☒ | ✓ | ▄ | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | smrk1| smrk2| love | | | | | | | | + * | | smrk1| smrk2| love | VER | | ✔ | ✗ | ✘ | ● | ▀ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | | + * | | | | ▒ | ▓ | * ,------|------|------| |------+------+------. * | | | | | | | | * | | |------| |------| | | @@ -186,23 +186,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // Unicode [NAVG] = KEYMAP( - KC_TRNS, VRSN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), KC_TRNS, SHRUG, YAY, HUG, SMILE, SMILE2, KC_TRNS, KC_TRNS, HMM1, HMM2, BEAR1, BEAR2, FUU, KC_TRNS, EGGY1, EGGY2, FACE1, FACE2, UHU, KC_TRNS, - KC_TRNS, SMRK1, SMRK2, LOVE, KC_TRNS, - KC_TRNS, KC_TRNS, + KC_TRNS, SMRK1, SMRK2, LOVE, VRSN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, UC(0x25a0), UC(0x03bb), UC(0x2192), UC(0x2799), UC(0x25bb), KC_TRNS, - UC(0x263a), UC(0x263b), UC(0x2639), UC(0x2661), UC(0x2665), KC_TRNS, - KC_TRNS, UC(0x2764), KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS + UC(0x2554), UC(0x2557), UC(0x255a), UC(0x255d), UC(0x2551), UC(0x2550), KC_TRNS, + KC_TRNS, UC(0x25a0), UC(0x03bb), UC(0x2192), UC(0x2799), UC(0x25bb), UC(0x2588), + UC(0x263a), UC(0x263b), UC(0x2639), UC(0x2661), UC(0x2665), UC(0x2591), + KC_TRNS, UC(0x2764), UC(0x2610), UC(0x2611), UC(0x2612), UC(0x2713), UC(0x2584), + UC(0x2714), UC(0x2717), UC(0x2718), UC(0x25cf), UC(0x2580), + UC(0x2592), UC(0x2593), + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 2ca5e822c1..fa41f0ec16 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -28,6 +28,10 @@ TOG, are dual purpose. Hence for example the top left key produces ESC if tapped, and temporarilly toggles L3 when hold down. The two center L1 TOG keys toggle L1 on and off for more permanent layer toggling. +The UNI keys enter the linux ibus unicode composer mode +(ie. Ctrl+Shift+u). Use this to enter unicode characters. Hit the key, +type in the unicode hex value, and hit enter. + ## Layer 1 - Symbols and RGB [![Layer 1 - Symbols and RGB](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) @@ -58,12 +62,11 @@ The unicode layer provides keys for directly typing unicode (utf-8) - 24.01.2017 Added support for Ergodox Shine. Added secondary L2 switch key on left hand - 24.01.2017 Added unicode keys. Added shrug hug and yay. Moved Navigation to layer 2 - 25.01.2017 Added lots of new emojis and some unicode keys +- 27.01.2017 Added new unicode keys and shortcut for ibus unicode composer key (CTRL+SHIFT+U) # TODO -- Add support for unicode by name? (See algernon layout for example) - Add macros for lots of stuff. (Lastpass cli, pushbullet cli, other push service cli, linode cli, more?) - Make macros for gnu screen and i3wm - Look into the app launch macros in algernon keymap -- Make other smileys like shrug and yay ¯\_(ツ)_/¯ and \o/ and others (see amon others [http://dongerlist.com](http://dongerlist.com) -- cgit v1.2.1 From 93c1bfa646bd4d53c065df1a1a7e457d49df7e31 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Fri, 27 Jan 2017 23:55:33 +0800 Subject: dual capslock functionality, activating shell nav or brackets --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 23 +++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 7ed0c7f125..6757355c8c 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -35,7 +35,9 @@ #define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 15 #define SEMICOLON_NEWLINE 16 #define END_NEWLINE 17 +#define DUAL_CAPSLOCK 18 +static uint16_t capslock_timer; const uint16_t PROGMEM fn_actions[] = { [1] = ACTION_LAYER_TAP_TOGGLE(KEY_NAV), // FN1 - keynav layer @@ -59,8 +61,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), - OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + M(DUAL_CAPSLOCK), KC_A, KC_O, KC_E, KC_U, KC_I, OSM(MOD_LSFT), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), // thumb cluster @@ -395,7 +397,22 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) if (record->event.pressed) { return MACRO( T(END), T(ENTER), END); } - break; + break; + case DUAL_CAPSLOCK: + if (record->event.pressed) { + if(timer_elapsed(capslock_timer) < 100) { + // activate SHELL_NAV + layer_on(SHELL_NAV); + } else { + layer_on(BRACKETS); + } + } else { + layer_off(SHELL_NAV); + layer_off(BRACKETS); + capslock_timer = timer_read(); + } + break; + } return MACRO_NONE; -- cgit v1.2.1 From a1c53d0f9356fa711ed0ffaaf61b564c8521a761 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 28 Jan 2017 09:42:55 +0800 Subject: documented dual mode capslock --- .../ergodox/keymaps/dvorak_programmer/README.md | 4 +++- .../ergodox/keymaps/dvorak_programmer/keymap.c | 26 ---------------------- 2 files changed, 3 insertions(+), 27 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md index 54da74f7f2..09f30c04fc 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/README.md +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -7,7 +7,6 @@ Layers ------ * BASE: this is where you type. -* SHELL_LAYER: this is a permanent layer which I use when I don't need the F keys and gives me bash shortcuts on the top row. * SHELL_NAV: hold down the Tab key to access shell/terminal navigation shorcuts such as forward/backward word, history, Ctrl+C, screen tab movement. * KEY_NAV: arrow key movement with backward/forward word support, and copy/paste. * KEY_SEL: same as above, but every movement shift-selects. @@ -20,6 +19,9 @@ Layers Updates ------- +2017/01/28: +* Made the capslock key a dual momentary layer activation for BRACKETS and SHELL_NAV. One keypress held down for BRACKETS, one keypress, released and then held down for SHELL_NAV + 2017/01/22: * Made brackets toggle an OSL on the left capslock * Added SHELL_LAYER diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 6757355c8c..dd87bcb2c9 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -6,7 +6,6 @@ #include "action_code.h" #define BASE 0 // default layer -#define SHELL_LAYER 1 #define SHELL_NAV 2 #define KEY_NAV 3 // key navigation layer #define KEY_SEL 4 // key selection layer @@ -84,31 +83,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -// permanent shell layer - meant to be used while in a terminal. only the top keys are overriden -[SHELL_LAYER] = KEYMAP( - // left hand - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,LALT(KC_DOT),RCTL(KC_R),RCTL(KC_C), - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - // bottom row - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - // thumb cluster - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - RCTL(KC_W), LALT(KC_B),LALT(KC_F), KC_LEFT, KC_RIGHT, LALT(KC_D), KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - // bottom row - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - // thumb cluster - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), // shell navigation layer [SHELL_NAV] = KEYMAP( -- cgit v1.2.1 From f6feee8167bcffdeed7e816effd1c095b056965e Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 28 Jan 2017 09:45:13 +0800 Subject: eliminate references to shell_layer --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index dd87bcb2c9..4a2ffcce44 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -250,7 +250,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MEH(KC_S), MEH(KC_T), MEH(KC_U), MEH(KC_V), MEH(KC_X), MEH(KC_6), MEH(KC_7), MEH(KC_8), - MEH(KC_9), TO(BASE), TO(SHELL_LAYER) + MEH(KC_9), MEH(KC_Y), MEH(KC_Z) ), -- cgit v1.2.1 From f400ac1d7d8ee968016fc1a3e84a053612fe07cc Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Mon, 30 Jan 2017 15:45:16 +0100 Subject: [deadcyclo layout] fixed failing tests --- keyboards/ergodox/keymaps/deadcyclo/keymap.c | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index bfbf17be12..610dd7ffb7 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -210,21 +210,6 @@ const uint16_t PROGMEM fn_actions[] = { [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) }; -static void ang_tap (uint16_t code, ...) { - uint16_t kc = code; - va_list ap; - - va_start(ap, code); - - do { - register_code16(kc); - unregister_code16(kc); - wait_ms(50); - kc = va_arg(ap, int); - } while (kc != 0); - va_end(ap); -} - #define TAP_ONCE(code) \ register_code (code); \ unregister_code (code) @@ -284,7 +269,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { break; case YAY: if (record->event.pressed) { - ang_tap (KC_BSLS, KC_O, KC_SLSH, 0); + SEND_STRING ("\\o/"); } return false; break; -- cgit v1.2.1 From f70758622bc8be92987deac7163303cfe9b4f8b3 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Mon, 30 Jan 2017 19:42:27 +0100 Subject: [deadcyclo layout] Refactoring. Use custom functions and macros --- keyboards/ergodox/keymaps/deadcyclo/keymap.c | 503 ++++++++++++++------------- 1 file changed, 266 insertions(+), 237 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index 610dd7ffb7..5774511cc7 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -8,11 +8,21 @@ #define MDIA 2 // media keys #define NAVG 3 // navigation -enum custom_keycodes { - PLACEHOLDER = SAFE_RANGE, // can always be here +enum macros { + RUN +}; + +enum function_ids { + EMOJI, + EMOJI2, EPRM, VRSN, RGB_SLD, + GO_GROUP +}; + +/* opt can only be 0-15 */ +enum emojis { SHRUG, YAY, HUG, @@ -28,13 +38,56 @@ enum custom_keycodes { FACE1, FACE2, UHU, - SMRK1, + SMRK1 +}; + +enum emojis2 { SMRK2, LOVE }; -// TODO: Get rid of of keys I don't want. Make others that I do. Set up lots of makros (Using hyper (and meh)) keys (where to put them?) +enum progmem_ids { + EMOJI_SHRUG, + EMOJI_YAY, + EMOJI_HUG, + EMOJI_SMILE, + EMOJI_SMILE2, + EMOJI_HMM1, + EMOJI_HMM2, + EMOJI_BEAR1, + EMOJI_BEAR2, + EMOJI_FUU, + EMOJI_EGGY1, + EMOJI_EGGY2, + EMOJI_FACE1, + EMOJI_FACE2, + EMOJI_UHU, + EMOJI_SMRK1, + EMOJI_SMRK2, + EMOJI_LOVE, + F_EPRM, + F_VRSN, + F_RGB_SLD, + I3_GO_GROUP_10, + I3_GO_GROUP_1, + I3_GO_GROUP_2, + I3_GO_GROUP_3, + I3_GO_GROUP_4, + I3_GO_GROUP_5, + I3_GO_GROUP_6, + I3_GO_GROUP_7, + I3_GO_GROUP_8, + I3_GO_GROUP_9, +}; + +// TODO: Finish the macros for i3 (Macros should potentially be own function instead to make things easier? some of them at least, f. ex. the ones that use 1-0 keys so we can have a single switch) + +// TODO: Do stuff with hyper and meh keys +// TODO: Add macros for lots of stuff. (Lastpass cli, pushbullet cli, other push service cli, linode cli, more?) +// TODO: Make macros for gnu screen and i3wm // TODO: Need to change hotkeys for lastpass, and potentially make my own keys for them on one of my layers +// TODO: Look into using tap dance +// TODO: Use leader key for stuff. See https://github.com/qmk/qmk_firmware/wiki const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * @@ -47,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |Grv/L1| UNI |AltShf| Lalt | Ralt | | Lalt | Ralt | [ | UNI | ~/L1 | + * |Grv/L1| UNI |AltShf| Lalt | Ralt | | Lalt | Ralt | LEAD | UNI | ~/L1 | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | App | Home | | PgUp | Ins | @@ -61,7 +114,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), KC_LCTL, LT(MDIA, KC_A), KC_S, KC_D, KC_F, KC_G, KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), @@ -74,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, - KC_LALT, KC_RALT,KC_LBRC,LCTL(LSFT(KC_U)), LT(SYMB,KC_TILD), + KC_LALT, KC_RALT,KC_LEAD,LCTL(LSFT(KC_U)), LT(SYMB,KC_TILD), KC_PGUP, KC_INS, KC_PGDN, KC_RBRC,KC_BSPC, KC_ENT @@ -109,7 +162,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, RGB_TOG,RGB_MOD, - RGB_SLD, + F(F_RGB_SLD), RGB_VAD,RGB_VAI,KC_TRNS, // right hand KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, @@ -119,14 +172,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, RGB_HUD, RGB_HUI, KC_TRNS, - EPRM, KC_DEL, KC_TRNS + F(F_EPRM), KC_DEL, KC_TRNS ), /* Keymap 2: Media, mouse and navigation * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | + * | | gg(1)| | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | Up | | | | + * | | | | MsUp | RUN | | | | | | | Up | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | |MsLeft|MsDown|MsRght| |------| |------| | Left | Down | Right| | Play | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -144,8 +197,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // MEDIA , MOUSE and NAVIGATION [MDIA] = KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, F(I3_GO_GROUP_1), F(I3_GO_GROUP_2), F(I3_GO_GROUP_3), F(I3_GO_GROUP_4), F(I3_GO_GROUP_5), F(I3_GO_GROUP_6), +KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, 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_BTN1, KC_BTN2, @@ -153,7 +206,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + F(I3_GO_GROUP_6), F(I3_GO_GROUP_7), F(I3_GO_GROUP_8), F(I3_GO_GROUP_9), F(I3_GO_GROUP_10), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, @@ -179,7 +232,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-------------. ,-------------. * | | | | ▒ | ▓ | * ,------|------|------| |------+------+------. - * | | | | | | | | + * | | | | | | | | * | | |------| |------| | | * | | | | | | | | * `--------------------' `--------------------' @@ -187,10 +240,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Unicode [NAVG] = KEYMAP( KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), - KC_TRNS, SHRUG, YAY, HUG, SMILE, SMILE2, KC_TRNS, - KC_TRNS, HMM1, HMM2, BEAR1, BEAR2, FUU, - KC_TRNS, EGGY1, EGGY2, FACE1, FACE2, UHU, KC_TRNS, - KC_TRNS, SMRK1, SMRK2, LOVE, VRSN, + KC_TRNS, F(EMOJI_SHRUG), F(EMOJI_YAY), F(EMOJI_HUG), F(EMOJI_SMILE), F(EMOJI_SMILE2), KC_TRNS, + KC_TRNS, F(EMOJI_HMM1), F(EMOJI_HMM2), F(EMOJI_BEAR1), F(EMOJI_BEAR2), F(EMOJI_FUU), + KC_TRNS, F(EMOJI_EGGY1), F(EMOJI_EGGY2), F(EMOJI_FACE1), F(EMOJI_FACE2), F(EMOJI_UHU), KC_TRNS, + KC_TRNS, F(EMOJI_SMRK1), F(EMOJI_SMRK2), F(EMOJI_LOVE), F(F_VRSN), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -207,242 +260,219 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) + [EMOJI_SHRUG] = ACTION_FUNCTION_OPT(EMOJI, SHRUG), + [EMOJI_YAY] = ACTION_FUNCTION_OPT(EMOJI, YAY), + [EMOJI_HUG] = ACTION_FUNCTION_OPT(EMOJI,HUG), + [EMOJI_SMILE] = ACTION_FUNCTION_OPT(EMOJI,SMILE), + [EMOJI_SMILE2] = ACTION_FUNCTION_OPT(EMOJI,SMILE2), + [EMOJI_HMM1] = ACTION_FUNCTION_OPT(EMOJI,HMM1), + [EMOJI_HMM2] = ACTION_FUNCTION_OPT(EMOJI,HMM2), + [EMOJI_BEAR1] = ACTION_FUNCTION_OPT(EMOJI,BEAR1), + [EMOJI_BEAR2] = ACTION_FUNCTION_OPT(EMOJI,BEAR2), + [EMOJI_FUU] = ACTION_FUNCTION_OPT(EMOJI,FUU), + [EMOJI_EGGY1] = ACTION_FUNCTION_OPT(EMOJI,EGGY1), + [EMOJI_EGGY2] = ACTION_FUNCTION_OPT(EMOJI,EGGY2), + [EMOJI_FACE1] = ACTION_FUNCTION_OPT(EMOJI,FACE1), + [EMOJI_FACE2] = ACTION_FUNCTION_OPT(EMOJI,FACE2), + [EMOJI_UHU] = ACTION_FUNCTION_OPT(EMOJI,UHU), + [EMOJI_SMRK1] = ACTION_FUNCTION_OPT(EMOJI,SMRK1), + [EMOJI_SMRK2] = ACTION_FUNCTION_OPT(EMOJI2,SMRK2), + [EMOJI_LOVE] = ACTION_FUNCTION_OPT(EMOJI2,LOVE), + [F_EPRM] = ACTION_FUNCTION(EPRM), + [F_VRSN] = ACTION_FUNCTION(VRSN), + [F_RGB_SLD] = ACTION_FUNCTION(RGB_SLD), + [I3_GO_GROUP_10]= ACTION_FUNCTION_OPT(GO_GROUP,0), + [I3_GO_GROUP_1] = ACTION_FUNCTION_OPT(GO_GROUP,1), + [I3_GO_GROUP_2] = ACTION_FUNCTION_OPT(GO_GROUP,2), + [I3_GO_GROUP_3] = ACTION_FUNCTION_OPT(GO_GROUP,3), + [I3_GO_GROUP_4] = ACTION_FUNCTION_OPT(GO_GROUP,4), + [I3_GO_GROUP_5] = ACTION_FUNCTION_OPT(GO_GROUP,5), + [I3_GO_GROUP_6] = ACTION_FUNCTION_OPT(GO_GROUP,6), + [I3_GO_GROUP_7] = ACTION_FUNCTION_OPT(GO_GROUP,7), + [I3_GO_GROUP_8] = ACTION_FUNCTION_OPT(GO_GROUP,8), + [I3_GO_GROUP_9] = ACTION_FUNCTION_OPT(GO_GROUP,9), }; #define TAP_ONCE(code) \ register_code (code); \ unregister_code (code) -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case 1: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; - } - return MACRO_NONE; -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - // dynamically generate these. +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { + if (record->event.pressed) { + switch(id) { case EPRM: - if (record->event.pressed) { - eeconfig_init(); - } - return false; + eeconfig_init(); break; case VRSN: - if (record->event.pressed) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - return false; + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); break; case RGB_SLD: - if (record->event.pressed) { - #ifdef RGBLIGHT_ENABLE - rgblight_mode(1); - #endif - } - return false; +#ifdef RGBLIGHT_ENABLE + rgblight_mode(1); +#endif break; - case SHRUG: - if (record->event.pressed) { - unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - TAP_ONCE (KC_BSLS); - register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); - unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); - TAP_ONCE (KC_SLSH); - unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + case GO_GROUP: + register_code(KC_LCTL); TAP_ONCE(KC_I); unregister_code(KC_LCTL); + TAP_ONCE(KC_G); + if (opt == 0) { + TAP_ONCE(39); + } else { + TAP_ONCE(29+opt); } - return false; break; - case YAY: - if (record->event.pressed) { - SEND_STRING ("\\o/"); + case EMOJI: + switch(opt) { + case SHRUG: + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); + TAP_ONCE (KC_BSLS); + register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); + TAP_ONCE (KC_SLSH); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + break; + case YAY: + SEND_STRING ("\\o/"); + break; + case HUG: + unicode_input_start(); register_hex(0x0f3c); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x3064); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); + TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0x0f3d); unicode_input_finish(); + unicode_input_start(); register_hex(0x3064); unicode_input_finish(); + break; + case SMILE: + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + break; + case SMILE2: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0298); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case HMM1: + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + break; + case HMM2: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case BEAR1: + unicode_input_start(); register_hex(0x0295); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x0294); unicode_input_finish(); + break; + case BEAR2: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); + unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case FUU: + unicode_input_start(); register_hex(0x256d); unicode_input_finish(); + unicode_input_start(); register_hex(0x2229); unicode_input_finish(); + unicode_input_start(); register_hex(0x256e); unicode_input_finish(); + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + unicode_input_start(); register_hex(0x256d); unicode_input_finish(); + unicode_input_start(); register_hex(0x2229); unicode_input_finish(); + unicode_input_start(); register_hex(0x256e); unicode_input_finish(); + break; + case EGGY1: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x256f); unicode_input_finish(); + unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); + unicode_input_start(); register_hex(0x25a1); unicode_input_finish(); + unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); + unicode_input_start(); register_hex(0xff09); unicode_input_finish(); + unicode_input_start(); register_hex(0x256f); unicode_input_finish(); + break; + case EGGY2: + unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x0020); unicode_input_finish(); + unicode_input_start(); register_hex(0x309c); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x309c); unicode_input_finish(); + unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case FACE1: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x002d); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case FACE2: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x005f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2022); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case UHU: + unicode_input_start(); register_hex(0x2299); unicode_input_finish(); + unicode_input_start(); register_hex(0xfe4f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2299); unicode_input_finish(); + break; + case SMRK1: + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x032e); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + break; } - return false; - break; - case HUG: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0f3c); unicode_input_finish(); - TAP_ONCE (KC_SPC); - unicode_input_start(); register_hex(0x3064); unicode_input_finish(); - TAP_ONCE (KC_SPC); - unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); - TAP_ONCE (KC_SPC); - unicode_input_start(); register_hex(0x0f3d); unicode_input_finish(); - unicode_input_start(); register_hex(0x3064); unicode_input_finish(); - } - return false; - break; - case SMILE: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0298); unicode_input_finish(); - unicode_input_start(); register_hex(0x203f); unicode_input_finish(); - unicode_input_start(); register_hex(0x0298); unicode_input_finish(); - } - return false; - break; - case SMILE2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x0298); unicode_input_finish(); - unicode_input_start(); register_hex(0x203f); unicode_input_finish(); - unicode_input_start(); register_hex(0x0298); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case HMM1: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); - } - return false; - break; - case HMM2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case BEAR1: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0295); unicode_input_finish(); - unicode_input_start(); register_hex(0x2022); unicode_input_finish(); - unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); - unicode_input_start(); register_hex(0x2022); unicode_input_finish(); - unicode_input_start(); register_hex(0x0294); unicode_input_finish(); - } - return false; - break; - case BEAR2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); - unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); - unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case FUU: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x256d); unicode_input_finish(); - unicode_input_start(); register_hex(0x2229); unicode_input_finish(); - unicode_input_start(); register_hex(0x256e); unicode_input_finish(); - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x002d); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x002d); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - unicode_input_start(); register_hex(0x256d); unicode_input_finish(); - unicode_input_start(); register_hex(0x2229); unicode_input_finish(); - unicode_input_start(); register_hex(0x256e); unicode_input_finish(); - } - return false; - break; - case EGGY1: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x256f); unicode_input_finish(); - unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); - unicode_input_start(); register_hex(0x25a1); unicode_input_finish(); - unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); - unicode_input_start(); register_hex(0xff09); unicode_input_finish(); - unicode_input_start(); register_hex(0x256f); unicode_input_finish(); - } - return false; - break; - case EGGY2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x0020); unicode_input_finish(); - unicode_input_start(); register_hex(0x309c); unicode_input_finish(); - unicode_input_start(); register_hex(0x002d); unicode_input_finish(); - unicode_input_start(); register_hex(0x309c); unicode_input_finish(); - unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case FACE1: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x002d); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x002d); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case FACE2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x2022); unicode_input_finish(); - unicode_input_start(); register_hex(0x005f); unicode_input_finish(); - unicode_input_start(); register_hex(0x2022); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case UHU: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x2299); unicode_input_finish(); - unicode_input_start(); register_hex(0xfe4f); unicode_input_finish(); - unicode_input_start(); register_hex(0x2299); unicode_input_finish(); - } - return false; - break; - case SMRK1: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x005e); unicode_input_finish(); - unicode_input_start(); register_hex(0x032e); unicode_input_finish(); - unicode_input_start(); register_hex(0x005e); unicode_input_finish(); - } - return false; - break; - case SMRK2: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x0028); unicode_input_finish(); - unicode_input_start(); register_hex(0x005e); unicode_input_finish(); - unicode_input_start(); register_hex(0x032e); unicode_input_finish(); - unicode_input_start(); register_hex(0x005e); unicode_input_finish(); - unicode_input_start(); register_hex(0x0029); unicode_input_finish(); - } - return false; - break; - case LOVE: - if (record->event.pressed) { - unicode_input_start(); register_hex(0x2665); unicode_input_finish(); - unicode_input_start(); register_hex(0x203f); unicode_input_finish(); - unicode_input_start(); register_hex(0x2665); unicode_input_finish(); - } - return false; break; + case EMOJI2: + switch(opt) { + case SMRK2: + unicode_input_start(); register_hex(0x0028); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x032e); unicode_input_finish(); + unicode_input_start(); register_hex(0x005e); unicode_input_finish(); + unicode_input_start(); register_hex(0x0029); unicode_input_finish(); + break; + case LOVE: + unicode_input_start(); register_hex(0x2665); unicode_input_finish(); + unicode_input_start(); register_hex(0x203f); unicode_input_finish(); + unicode_input_start(); register_hex(0x2665); unicode_input_finish(); + break; + } + break; + } } - return true; } +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + if (record->event.pressed) { + switch(id) { + case RUN: + return MACRO( D(LCTL), T(I), U(LCTL), T(R), END ); + break; + } + } + return MACRO_NONE; +}; + // Runs just one time when the keyboard initializes. void matrix_init_user(void) { set_unicode_input_mode(UC_LNX); @@ -450,7 +480,6 @@ 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(); -- cgit v1.2.1 From 4c3630dc1778129438440986f14731dcb7244262 Mon Sep 17 00:00:00 2001 From: Matthias Schmitt Date: Mon, 30 Jan 2017 23:10:28 +0100 Subject: update my neo2 keymap --- keyboards/ergodox/keymaps/software_neo2/keymap.c | 64 +++++++++++++----------- 1 file changed, 34 insertions(+), 30 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/software_neo2/keymap.c b/keyboards/ergodox/keymaps/software_neo2/keymap.c index 41ace403d7..571ca062cd 100644 --- a/keyboards/ergodox/keymaps/software_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/software_neo2/keymap.c @@ -1,7 +1,8 @@ #include "ergodox.h" #include "debug.h" +#include "led.h" #include "action_layer.h" -#include "keymap_neo2.h" +#include "keymap_extras/keymap_neo2.h" // Layer names #define BASE 0 // default layer @@ -11,45 +12,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ^ | 1 | 2 | 3 | 4 | 5 | Play | | Next | 6 | 7 | 8 | 9 | 0 |BackSpce| + * | Del | 1 | 2 | 3 | 4 | 5 | Play | | Next | 6 | 7 | 8 | 9 | 0 | ß | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | X | V | L | C | W | L1 | | L1 | K | H | G | F | Q | ß | + * | Tab | X | V | L | C | W | Esc | | Esc | K | H | G | F | Q | Y | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Caps | U | I | A | E | O |------| |------| S | N | R | T | D | Y | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Ü/Ctrl| Ö/C-S| Ä/Alt| P | Z | | | | B | M | , | . | J | RShift | + * | NeoL1 | U | I | A | E | O |------| |------| S | N | R | T | D | NeoR1 | + * |--------+------+------+------+------+------| L1 | | L1 |------+------+------+------+------+--------| + * | LShift |Ü/Ctrl| Ö/Win| Ä/Alt| P | Z | | | | B | M | , | . | J | RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | L1 | Home | PgDn | PgUp | End | | Right| Down | Up | Left | Esc | + * |NeoL2 | Home | PgDn | PgUp | End | | Right| Down | Up | Left | NeoR2| * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. + * ,-------------. ,---------------. * | App | LGui | | Alt |Ctrl/Esc| * ,------+------+------| |------+--------+------. - * | | |NeoL2 | |NeoL2 | | | - * | Tab |Backsp|------| |------| Space |Enter | - * | |ace |NeoL1 | |NeoL1 | | | + * | | | Enter| |Delete| | | + * | Space|Backsp|------| |------| Enter |Space | + * | |ace | Tab | | Esc | | | * `--------------------' `----------------------' */ // If it accepts an argument (i.e, is a function), it doesn't need KC_. // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - KC_CIRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MPLY, - KC_DELT, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, TG(1), - KC_CAPS, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O, - KC_LSFT, CTL_T(NEO_UE), C_S_T(NEO_OE), ALT_T(NEO_AE), NEO_P, NEO_Z, ALL_T(KC_NO), - DE_LESS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, - ALT_T(KC_APP),KC_LGUI, - NEO_L2_L, - KC_TAB,KC_BSPC,NEO_L1_L, + KC_DELT, NEO_1, NEO_2, NEO_3, NEO_4, NEO_5, KC_MPLY, + KC_TAB, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, KC_ESC, + NEO_L1_L, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O, + KC_LSFT, CTL_T(NEO_UE), GUI_T(NEO_OE), ALT_T(NEO_AE), NEO_P, NEO_Z, TG(1), + NEO_L2_L, KC_HOME, KC_PGDN, KC_PGUP, KC_END, + C_S_T(KC_ESC),KC_LGUI, + KC_ENT, + KC_SPC,KC_BSPC,KC_TAB, // right hand - KC_MNXT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - TG(1), NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, - NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_Y, - MEH_T(KC_NO),NEO_B, NEO_M, KC_COMM, KC_DOT, NEO_J, KC_RSFT, - KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_ESC, - KC_LALT,CTL_T(KC_ESC), - NEO_L2_R, - NEO_L1_R,KC_SPC, KC_ENT + KC_MNXT, NEO_6, NEO_7, NEO_8, NEO_9, NEO_0, NEO_SS, + KC_ESC, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_Y, + NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R, + TG(1), NEO_B, NEO_M, NEO_COMM, NEO_DOT, NEO_J, KC_RSFT, + KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, NEO_L2_R, + KC_LALT,KC_RGUI, + KC_DELT, + KC_ESC,KC_ENT, KC_SPC ), /* Keymap 1: Media and mouse keys * @@ -127,13 +128,16 @@ void matrix_scan_user(void) { ergodox_right_led_1_off(); ergodox_right_led_2_off(); ergodox_right_led_3_off(); + ergodox_board_led_off(); + + if (host_keyboard_leds() & (1< Date: Wed, 1 Feb 2017 13:46:00 +0800 Subject: increase timeout for dual mode caps key --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 4a2ffcce44..4594a7698e 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -374,7 +374,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case DUAL_CAPSLOCK: if (record->event.pressed) { - if(timer_elapsed(capslock_timer) < 100) { + if(timer_elapsed(capslock_timer) < 300) { // activate SHELL_NAV layer_on(SHELL_NAV); } else { -- cgit v1.2.1 From 3faf06c880ef5fedb4dfaaef2bc35d75c392a076 Mon Sep 17 00:00:00 2001 From: Nikolaus Wittenstein Date: Fri, 3 Feb 2017 21:06:43 -0500 Subject: Fix compile warnings in egodox robot_test_layout Fixes the warning "right shift count >= width of type" by adding UL to the end of constants. --- keyboards/ergodox/keymaps/robot_test_layout/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/robot_test_layout/keymap.c b/keyboards/ergodox/keymaps/robot_test_layout/keymap.c index 480be177f0..e9e2597d7e 100644 --- a/keyboards/ergodox/keymaps/robot_test_layout/keymap.c +++ b/keyboards/ergodox/keymaps/robot_test_layout/keymap.c @@ -68,7 +68,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_FF0000: if (record->event.pressed) { #ifdef RGBLIGHT_ENABLE - EZ_RGB(0xff0000); + EZ_RGB(0xff0000UL); register_code(KC_1); unregister_code(KC_1); #endif } @@ -77,7 +77,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_00FF00: if (record->event.pressed) { #ifdef RGBLIGHT_ENABLE - EZ_RGB(0x00ff00); + EZ_RGB(0x00ff00UL); register_code(KC_2); unregister_code(KC_2); #endif } @@ -86,7 +86,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_0000FF: if (record->event.pressed) { #ifdef RGBLIGHT_ENABLE - EZ_RGB(0x0000ff); + EZ_RGB(0x0000ffUL); register_code(KC_3); unregister_code(KC_3); #endif } @@ -95,7 +95,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_FFFFFF: if (record->event.pressed) { #ifdef RGBLIGHT_ENABLE - EZ_RGB(0xffffff); + EZ_RGB(0xffffffUL); register_code(KC_4); unregister_code(KC_4); #endif } -- cgit v1.2.1 From 101465b6edf98ed1a09b2f4db28c6be66b3f52fb Mon Sep 17 00:00:00 2001 From: Nikolaus Wittenstein Date: Fri, 3 Feb 2017 21:09:50 -0500 Subject: Add missing header to ergodox ordinary keymap --- keyboards/ergodox/keymaps/ordinary/keymap.c | 1 + 1 file changed, 1 insertion(+) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index 302c41cc8d..5c01d96784 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -1,5 +1,6 @@ #include "ergodox.h" #include "led.h" +#include "mousekey.h" #include "debug.h" #include "action_layer.h" #include "action_util.h" -- cgit v1.2.1 From 2b95f41b912c9bf6c4582b45cabd3fe41bd20711 Mon Sep 17 00:00:00 2001 From: Rob Rogers Date: Thu, 9 Feb 2017 09:08:50 -0600 Subject: [Typo] correct link to default keymap in readme. --- keyboards/ergodox/keymaps/ab/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ab/readme.md b/keyboards/ergodox/keymaps/ab/readme.md index 62e08e1629..4ad80efe6f 100644 --- a/keyboards/ergodox/keymaps/ab/readme.md +++ b/keyboards/ergodox/keymaps/ab/readme.md @@ -8,7 +8,7 @@ Beginner's keymap emulates standard QWERTY keyboard for beginners. Once you get * Easy on beginners. It has everything you need for your day to day usage. #### Cons -* Keys are not ergonomically placed to take full advantage of Ergodox-EZ. Take a look at this [Default Keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/readme.md) +* Keys are not ergonomically placed to take full advantage of Ergodox-EZ. Take a look at this [Default Keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox/keymaps/default/readme.md) * While multiple layers are possible, beginner's keymap only uses one additional layer for mouse, function and volume keys. #### Notes -- cgit v1.2.1 From 420a032e8d0a7e0391b1899dcc2c7bd8f6c4ac45 Mon Sep 17 00:00:00 2001 From: luc wastiaux Date: Fri, 10 Feb 2017 21:44:27 +0800 Subject: made left shift an MO for SHELL_NAV --- .../ergodox/keymaps/dvorak_programmer/Makefile | 2 +- .../ergodox/keymaps/dvorak_programmer/README.md | 3 ++ .../ergodox/keymaps/dvorak_programmer/keymap.c | 49 +++------------------- 3 files changed, 9 insertions(+), 45 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/Makefile b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile index 3c65e25e19..91b1ae597e 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/Makefile +++ b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile @@ -4,5 +4,5 @@ SLEEP_LED_ENABLE=no FORCE_NKRO ?= yes DEBUG_ENABLE = no CONSOLE_ENABLE = no -TAP_DANCE_ENABLE = yes +TAP_DANCE_ENABLE = no MOUSEKEY_ENABLE = yes diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md index 09f30c04fc..42723ea170 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/README.md +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -19,6 +19,9 @@ Layers Updates ------- +2017/02/10: +* Made left shift an MO for SHELL_NAV, and symbol+right shift CAPSLOCK + 2017/01/28: * Made the capslock key a dual momentary layer activation for BRACKETS and SHELL_NAV. One keypress held down for BRACKETS, one keypress, released and then held down for SHELL_NAV diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 4594a7698e..2fef048b5e 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -34,24 +34,6 @@ #define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 15 #define SEMICOLON_NEWLINE 16 #define END_NEWLINE 17 -#define DUAL_CAPSLOCK 18 - -static uint16_t capslock_timer; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(KEY_NAV), // FN1 - keynav layer - [2] = ACTION_LAYER_TAP_TOGGLE(NUMBER), // FN2 - number layer - [3] = ACTION_MODS_ONESHOT(MOD_LSFT), // FN3 - shift modifier / oneshot - [4] = ACTION_MODS_ONESHOT(MOD_LCTL), // FN4 - ctrl modifier / oneshot - [5] = ACTION_MODS_ONESHOT(MOD_LALT), // FN5 - alt modifier / oneshot -}; - -//Tap Dance Declarations -enum { - TD_SHIFT_CAPSLOCK = 0, - TD_BRK_LEFT = 1, - TD_BRK_RIGHT = 2 -}; @@ -61,9 +43,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), - M(DUAL_CAPSLOCK), KC_A, KC_O, KC_E, KC_U, KC_I, - OSM(MOD_LSFT), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), - OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), + MO(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, + MO(SHELL_NAV), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), + OSL(SHORTCUTS),OSM(MOD_LCTL), OSM(MOD_LALT),OSL(SYMBOL),MO(NUMBER), // thumb cluster MO(MOUSE), RCTL(KC_S), RCTL(KC_DEL), @@ -72,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, KC_PGUP, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, - KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(TD_SHIFT_CAPSLOCK), + KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, OSM(MOD_LSFT), // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), RCTL(KC_W), // thumb cluster @@ -246,7 +228,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MEH(KC_F7), MEH(KC_F8), MEH(KC_F9), MEH(KC_F10), MEH(KC_F11), MEH(KC_F12), M(SWITCH_NDS), KC_TRNS, MEH(KC_A), MEH(KC_B), MEH(KC_C), MEH(KC_D), MEH(KC_E), MEH(KC_F), MEH(KC_G), MEH(KC_H), MEH(KC_I), MEH(KC_J), MEH(KC_K), MEH(KC_L), - KC_TRNS, MEH(KC_M), MEH(KC_N), MEH(KC_O), MEH(KC_P), MEH(KC_Q), MEH(KC_R), + KC_TRNS, MEH(KC_M), MEH(KC_N), MEH(KC_O), MEH(KC_P), MEH(KC_Q), KC_CAPSLOCK, MEH(KC_S), MEH(KC_T), MEH(KC_U), MEH(KC_V), MEH(KC_X), MEH(KC_6), MEH(KC_7), MEH(KC_8), @@ -372,20 +354,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO( T(END), T(ENTER), END); } break; - case DUAL_CAPSLOCK: - if (record->event.pressed) { - if(timer_elapsed(capslock_timer) < 300) { - // activate SHELL_NAV - layer_on(SHELL_NAV); - } else { - layer_on(BRACKETS); - } - } else { - layer_off(SHELL_NAV); - layer_off(BRACKETS); - capslock_timer = timer_read(); - } - break; } @@ -406,13 +374,6 @@ void led_set_user(uint8_t usb_led) { } } -qk_tap_dance_action_t tap_dance_actions[] = { - [TD_SHIFT_CAPSLOCK] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPSLOCK), - [TD_BRK_LEFT] = ACTION_TAP_DANCE_DOUBLE (KC_LPRN, KC_LCBR), - [TD_BRK_RIGHT] = ACTION_TAP_DANCE_DOUBLE (KC_RPRN, KC_RCBR) - -}; - // Runs constantly in the background, in a loop. void matrix_scan_user(void) { -- cgit v1.2.1 From 5f8535b356e66975e20f1a573ab104db75f8b33c Mon Sep 17 00:00:00 2001 From: luc wastiaux Date: Mon, 13 Feb 2017 07:16:01 +0800 Subject: change thumb cluster key to be shift --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 2fef048b5e..ae4fd444d1 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -47,8 +47,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(SHELL_NAV), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),OSM(MOD_LCTL), OSM(MOD_LALT),OSL(SYMBOL),MO(NUMBER), // thumb cluster - MO(MOUSE), RCTL(KC_S), - RCTL(KC_DEL), + OSM(MOD_LSFT), RCTL(KC_S), + RCTL(KC_DEL), KC_BSPC,RCTL(KC_BSPC),KC_DEL, // right hand KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, -- cgit v1.2.1 From 3bf6c43de779e0790b85eef4a78c9ecc17cd06dc Mon Sep 17 00:00:00 2001 From: luc wastiaux Date: Mon, 13 Feb 2017 07:46:07 +0800 Subject: updated readme --- keyboards/ergodox/keymaps/dvorak_programmer/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md index 42723ea170..36722469fe 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/README.md +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -20,7 +20,7 @@ Updates ------- 2017/02/10: -* Made left shift an MO for SHELL_NAV, and symbol+right shift CAPSLOCK +* Made left shift an MO for SHELL_NAV, and symbol+right shift CAPSLOCK. Made all modifiers OSM. 2017/01/28: * Made the capslock key a dual momentary layer activation for BRACKETS and SHELL_NAV. One keypress held down for BRACKETS, one keypress, released and then held down for SHELL_NAV -- cgit v1.2.1 From c05509895208c078401b610eddf85cbc0c5e5a25 Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Tue, 14 Feb 2017 22:30:07 -0600 Subject: The Ordinary Layout now has more symbols on the Symbols layer! So useful! --- .../ergodox/keymaps/ordinary/ordinary-symbol.png | Bin 101255 -> 89582 bytes .../ergodox/keymaps/ordinary/ordinary-symbol.txt | 22 ++++++++++----------- 2 files changed, 11 insertions(+), 11 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png index dd90863295..8cd92cee14 100644 Binary files a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png and b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png differ diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt index 001bf370d8..f64503ecbd 100644 --- a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt +++ b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt @@ -10,18 +10,18 @@ [{y:-0.875,x:2.5,c:"#bbddbb"},"$",{x:1},")",{x:8.5,c:"#89b087"},"4",{x:1},"6"], [{y:-0.875,x:5.5,c:"#bbddbb"},"`",{x:6.5},"/"], [{y:-0.875,c:"#000000",t:"#007d00",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#bbddbb",t:"#000000"},"#",{x:14.5,c:"#89b087"},"*",{c:"#000000",t:"#007d00",w:1.5},"\n\nSymbols\n\n\n\n\nShift"], -[{y:-0.625,x:6.5,c:"#ff8500",t:"#000000",fa:[0,0,0,1],h:1.5},"Tab >\n\n\nTab",{x:4.5,h:1.5},"< Tab\n\n\nShift Tab"], -[{y:-0.75,x:3.5,c:"#bbddbb"},"[",{x:10.5,c:"#89b087"},"2"], +[{y:-0.625,x:6.5,c:"#bbddbb",t:"#000000",a:6,h:1.5},"'",{x:4.5,h:1.5},"\""], +[{y:-0.75,x:3.5,a:4},"[",{x:10.5,c:"#89b087"},"2"], [{y:-0.875,x:2.5,c:"#bbddbb"},"^",{x:1},"]",{x:8.5,c:"#89b087"},"1",{x:1},"3"], [{y:-0.875,x:5.5,c:"#bbddbb"},"~",{x:6.5},"\\"], [{y:-0.875,c:"#c6c600",t:"#9e0000",w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#bbddbb",t:"#000000"},"%",{x:14.5,c:"#89b087"},"-",{c:"#c6c600",t:"#9e0000",w:1.5},"\n\nCapitals\n\n\n\n\nShift"], -[{y:-0.375,x:3.5,c:"#dddd77",t:"#000000"},"Option\n\n\nLAlt",{x:10.5,c:"#89b087"},"."], -[{y:-0.875,x:2.5,c:"#dddd77"},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5,c:"#89b087"},"0",{x:1},"="], -[{y:-0.75,x:0.5,c:"#dddd77"},"Ctrl\n\n\nLCtrl","Meh",{x:14.5,c:"#89b087"},"+","Enter"], -[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#ff8500"},"Left","Right"], -[{h:2},"Space",{h:2},"Enter","Up"], -[{x:2},"Down"], -[{r:-30,rx:13,y:-1,x:-3},"Home","End"], -[{x:-3},"Page\n\n\n\n\n\nUp",{h:2},"< Del\n\n\nBackspace",{h:2},"Del >\n\n\nDelete"], -[{x:-3},"Page\n\n\n\n\n\nDown"] +[{y:-0.375,x:3.5,c:"#bbddbb",t:"#000000"},"<",{x:10.5,c:"#89b087"},"."], +[{y:-0.875,x:2.5,c:"#bbddbb"},"*",{x:1,a:5},">",{x:8.5,c:"#89b087",a:4},"0",{x:1},"="], +[{y:-0.75,x:0.5,c:"#bbddbb"},";","&",{x:14.5,c:"#89b087"},"+","Enter"], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#737373",a:7},"",""], +[{c:"#bbddbb",h:2},"+",{h:2},"=",{c:"#737373"},""], +[{x:2,c:"#bbddbb"},"!="], +[{r:-30,rx:13,y:-1,x:-3,c:"#737373"},"",""], +[{x:-3},"",{c:"#bbddbb",h:2},"_",{h:2},"-"], +[{x:-3},"->"] -- cgit v1.2.1 From 1e096981468d75cb38ae97866b0a12b884caa77e Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Tue, 14 Feb 2017 22:31:54 -0600 Subject: All my friends us The Ordinary Layout because it doesn't force you to change you typing habits --- .../ergodox/keymaps/ordinary/ordinary-media.png | Bin 123435 -> 123523 bytes .../ergodox/keymaps/ordinary/ordinary-media.txt | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-media.png b/keyboards/ergodox/keymaps/ordinary/ordinary-media.png index 5ff3f53385..491f698d80 100644 Binary files a/keyboards/ergodox/keymaps/ordinary/ordinary-media.png and b/keyboards/ergodox/keymaps/ordinary/ordinary-media.png differ diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-media.txt b/keyboards/ergodox/keymaps/ordinary/ordinary-media.txt index e1467b22e1..67b7840b52 100644 --- a/keyboards/ergodox/keymaps/ordinary/ordinary-media.txt +++ b/keyboards/ergodox/keymaps/ordinary/ordinary-media.txt @@ -15,10 +15,10 @@ [{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nDnLeft",{x:1},"Mouse\n\n\n\n\n\nDnRgt",{x:8.5,c:"#1e8fff"},"End",{x:1},"Page\n\n\n\n\n\nDown"], [{y:-0.875,x:5.5,c:"#9977ee"},"Mute",{x:6.5,c:"#737373",a:7},""], [{y:-0.875,c:"#c6c600",t:"#9e0000",a:4,w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#737373",t:"#000000",a:7},"",{x:14.5},"",{c:"#c6c600",t:"#9e0000",a:4,w:1.5},"\n\nCapitals\n\n\n\n\nShift"], -[{y:-0.375,x:3.5,c:"#0066cc",t:"#000000"},"Middle\n\n\n\n\n\nClick",{x:10.5,c:"#1e8fff",fa:[0,0,0,1]},"Delete\n\n\nOption"], -[{y:-0.875,x:2.5,c:"#0066cc"},"Left\n\n\n\n\n\nClick",{x:1},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#1e8fff"},"Insert\n\n\nCmd",{x:1,c:"#dddd77"},"Hyper"], -[{y:-0.75,x:0.5},"Ctrl\n\n\nLCtrl","Meh",{x:14.5},"Meh","Crtl\n\n\nRCtrl"], -[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#6633ee"},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"], +[{y:-0.375,x:3.5,c:"#0066cc",t:"#000000"},"Middle\n\n\n\n\n\nClick",{x:10.5,c:"#1e8fff"},"Delete"], +[{y:-0.875,x:2.5,c:"#0066cc"},"Left\n\n\n\n\n\nClick",{x:1},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#1e8fff"},"Insert",{x:1,c:"#737373",a:7},""], +[{y:-0.75,x:0.5},"","",{x:14.5},"",""], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#6633ee",a:4,fa:[0,0,0,1]},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"], [{h:2},"< Web\n\n\nBrowser",{h:2},"Web >\n\n\nBrowser","Search\n\n\nBrowser"], [{x:2},"Home\n\n\nBrowser"], [{r:-30,rx:13,y:-1,x:-3},"Prev\n\n\nAudio\n\n\nTrack","Next\n\n\nAudio\n\n\nTrack"], -- cgit v1.2.1 From e006b4a600379e30918235c4cdf58f7678ccd1d4 Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Tue, 14 Feb 2017 22:32:31 -0600 Subject: The Ordinary Layout has a feature for one-handed chorded typing --- .../ergodox/keymaps/ordinary/ordinary-base.png | Bin 98200 -> 120512 bytes .../ergodox/keymaps/ordinary/ordinary-base.txt | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-base.png b/keyboards/ergodox/keymaps/ordinary/ordinary-base.png index 831db4f5d3..18c6c4ab2f 100644 Binary files a/keyboards/ergodox/keymaps/ordinary/ordinary-base.png and b/keyboards/ergodox/keymaps/ordinary/ordinary-base.png differ diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-base.txt b/keyboards/ergodox/keymaps/ordinary/ordinary-base.txt index 7763c3d37e..4fc11faf94 100644 --- a/keyboards/ergodox/keymaps/ordinary/ordinary-base.txt +++ b/keyboards/ergodox/keymaps/ordinary/ordinary-base.txt @@ -7,10 +7,10 @@ [{y:-0.875,x:5.5},"T",{h:1.5},"{\n\n\n\n\n\n[",{x:4.5,h:1.5},"}\n\n\n\n\n\n]","Y"], [{y:-0.875,c:"#c6c600",t:"#002299",w:1.5},"Media\n\nTab\n\n\n\nShift",{c:"#cccccc",t:"#000000"},"Q",{x:14.5},"P",{c:"#c6c600",t:"#002299",w:1.5},"|\n\\\nMedia\n\n\n\n\nShift"], [{y:-0.375,x:3.5,c:"#cccccc",t:"#000000"},"D",{x:10.5},"K"], -[{y:-0.875,x:2.5},"S",{x:1},"F",{x:8.5},"J",{x:1},"L"], +[{y:-0.875,x:2.5},"S",{x:1,fa:[0,0,0,1]},"F\n\n\nreverse",{x:8.5},"J\n\n\nreverse",{x:1},"L"], [{y:-0.875,x:5.5},"G",{x:6.5},"H"], -[{y:-0.875,c:"#c6c600",t:"#007d00",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#cccccc",t:"#000000"},"A",{x:14.5},":\n;",{c:"#c6c600",t:"#007d00",w:1.5},"\"\n'\nSymbols\n\n\n\n\nShift"], -[{y:-0.625,x:6.5,c:"#ff8500",t:"#000000",fa:[0,0,0,1],h:1.5},"< Tab\n\n\nShift Tab",{x:4.5,h:1.5},"Tab >\n\n\nTab"], +[{y:-0.875,c:"#c6c600",t:"#007d00",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#cccccc",t:"#000000"},"A\n\n\nreverse",{x:14.5},":\n;\n\nreverse",{c:"#c6c600",t:"#007d00",w:1.5},"\"\n'\nSymbols\n\n\n\n\nShift"], +[{y:-0.625,x:6.5,c:"#ff8500",t:"#000000",h:1.5},"< Tab\n\n\nShift Tab",{x:4.5,h:1.5},"Tab >\n\n\nTab"], [{y:-0.75,x:3.5,c:"#cccccc"},"C",{x:10.5},"<\n,"], [{y:-0.875,x:2.5},"X",{x:1},"V",{x:8.5},"M",{x:1},">\n."], [{y:-0.875,x:5.5},"B",{x:6.5},"N"], -- cgit v1.2.1 From 54785c1976590dc3081f06ca49747dfcb6ecd3b3 Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Tue, 14 Feb 2017 22:47:11 -0600 Subject: The Ordinary Layout is boring, normal, typical, expected. --- keyboards/ergodox/keymaps/ordinary/keymap.c | 146 +++++++++++++++++++-------- keyboards/ergodox/keymaps/ordinary/readme.md | 33 ++++-- 2 files changed, 125 insertions(+), 54 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index 5c01d96784..b79f0f0645 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -9,6 +9,7 @@ #define SYMB 1 // symbols layer #define MDIA 2 // media layer #define SPEC 3 // special layer +#define RBASE 4 // reverse default layer #define LSymb 10 // left symbol-shift key #define LMdia 11 // left media-shift key @@ -17,15 +18,21 @@ #define RMdia 14 // right media-shift key #define RSpec 15 // right special-shift key +#define NotEq 16 // != macro +#define Point 17 // -> macro + #define MUL 20 // mouse up left #define MUR 21 // mouse up right #define MDL 22 // mouse down left #define MDR 23 // mouse down right + + /* - * The Ordinary Layout for the Ergodox EZ keyboard, v4.20 + * The Ordinary Layout for the Ergodox EZ keyboard, v5 * - * Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com + * Modifications from the default Ergodox EZ layout + * by Nicholas Keene ergodoxez@nicholaskeene.com * * No rights reserved. This software is in the public domain. * Credit me if you are friendly but if you're a jerk don't bother. @@ -44,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \| Media | * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| - * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | '" Symbol | + * | Symbol | ^A | S | D | ^F | G |------| |------| H | ^J | K | L | ^; | '" Symbol | * |------------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+------------| * | Capitals | Z | X | C | V | B | -Tab | | | N | M | , | . | / | Capitals | * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' @@ -60,24 +67,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [BASE] = KEYMAP( // left hand - F(LSpec) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC -,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC -,M(LSymb) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G -,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) -,KC_LCTL ,KC_MEH ,KC_HYPR,KC_LALT,KC_LGUI + F(LSpec) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC +,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC +,M(LSymb) ,LT(RBASE, KC_A),KC_S ,KC_D ,LT(RBASE, KC_F) ,KC_G +,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) +,KC_SCLN ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI ,KC_HOME,KC_END ,KC_PGUP ,KC_BSPC,KC_DEL ,KC_PGDN // right hand - ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) - ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) - ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,F(RSymb) - ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT - ,KC_RGUI,KC_RALT,KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) + ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) + ,KC_H ,LT(RBASE, KC_J),KC_K ,KC_L ,LT(RBASE,KC_SCLN),F(RSymb) + ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT + ,KC_RGUI ,KC_RALT,KC_HYPR,KC_MEH ,KC_RCTL ,KC_LEFT ,KC_RGHT ,KC_UP ,KC_DOWN ,KC_ENT ,KC_SPC - ), +), /******* Symbols Layer ************************************************************************************************* * @@ -90,35 +97,35 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' - * | LCtrl | Meh |Hyper | LAlt | LGui | | 0 | . | = | + | Ent | + * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' * ,-------------. ,-------------. - * | Left | Right| | Home | End | + * ||||||||||||||| ||||||||||||||| * ,------|------|------| |------+------+------. - * | | | Up | | PgUp | | | - * |Space |Enter |------| |------|BackSp| Del | - * | | | Down | | PgDn | | | + * | Plus | Equal|||||||| |||||||| Under| Dash | + * | | |------| |------| Score| | + * | + | = | != | | -> | _ | - | * `--------------------' `--------------------' */ [SYMB] = KEYMAP( // left hand - KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC -,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) -,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV -,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB -,KC_LCTL ,KC_MEH ,KC_HYPR ,KC_LALT ,KC_LGUI - ,KC_LEFT ,KC_RGHT - ,KC_UP - ,KC_SPC ,KC_ENT ,KC_DOWN + KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC +,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) +,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV +,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB +,KC_LCTL ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) + ,KC_NO ,KC_NO + ,KC_NO + ,KC_PLUS ,KC_EQL ,M(NotEq) // right hand - ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS - ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS - ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS - ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS - ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT - ,KC_HOME ,KC_END - ,KC_PGUP - ,KC_PGDN ,KC_BSPC ,KC_DEL + ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS + ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS + ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS + ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS + ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT + ,KC_NO ,KC_NO + ,KC_NO + ,M(Point) ,LSFT(KC_MINS),KC_MINS ), /******* Media Layer ******************************************************************************************************* @@ -132,7 +139,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' - * |LCtrl| Meh | MClick | LClick | R Click| |Cmd/Insrt|Optn/Del | Hyper | Meh |RCtrl| + * | | | MClick | LClick | R Click| | Insert | Del | | | | * `---------------------------------------------' `---------------------------------------------' * ,-------------. ,-------------. * | Stop |Refrsh| | Prev | Next | @@ -148,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_POWER ,M(MUL) ,KC_MS_U ,M(MUR) ,KC_VOLU ,KC_WH_U ,KC_TRNS ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD ,KC_TRNS ,KC_NO ,M(MDL) ,KC_MS_D ,M(MDR) ,KC_MUTE ,KC_WH_D -,KC_LCTL ,KC_MEH ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 +,KC_NO ,KC_NO ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 ,KC_WSTP ,KC_WREF ,KC_WSCH ,KC_WBAK ,KC_NO ,KC_WHOM @@ -157,7 +164,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_WH_U ,KC_PSCR ,KC_HOME ,KC_UP ,KC_PGUP ,KC_MAIL ,KC_TRNS ,KC_NLCK ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_MYCM ,KC_TRNS ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_TRNS - ,GUI_T(KC_INS),ALT_T(KC_DEL),KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_INS ,KC_DEL ,KC_NO ,KC_NO ,KC_NO ,KC_MPRV ,KC_MNXT ,KC_VOLU ,KC_VOLD ,KC_MSTP ,KC_MPLY @@ -203,7 +210,49 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS - ) +), + +/******* Reverse Base Layer ********************************************************************************************* + * + * ,------------------------------------------------------. ,------------------------------------------------------. + * | =+ | 0 | 9 | 8 | 7 | 6 | - | | Esc | 5 | 4 | 3 | 2 | 1 | `~ | + * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| + * | \| | P | O | I | U | Y | ] | | [ | T | R | E | W | Q | Tab | + * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| + * | | ; | L | K | J | H |------| |------| G | F | D | S | A | '" | + * |------------+------+------+------+------+------| Tab | |Shift |------+------+------+------+------+------------| + * | Capitals | / | . | , | M | N | | | -Tab | B | V | C | X | Z | Capitals | + * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' + * | LCtrl | Meh |Hyper | LAlt | LGui | | RGui | RAlt | Hyper| Meh | RCtrl | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | Left | Right| | Home | End | + * ,------|------|------| |------+------+------. + * | | | Up | | PgUp | | | + * |Space |Enter |------| |------|BackSp| Del | + * | | | Down | | PgDn | | | + * `--------------------' `--------------------' + */ +[RBASE] = KEYMAP( +// left hand + KC_EQL ,KC_0 ,KC_9 ,KC_8 ,KC_7 ,KC_6 ,KC_MINS +,KC_BSLS ,KC_P ,KC_O ,KC_I ,KC_U ,KC_Y ,KC_RBRC +,KC_NO ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H +,KC_RSFT ,KC_SLSH ,KC_DOT ,KC_COMM,KC_M ,KC_N ,KC_TAB +,KC_RCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_RALT,KC_RGUI + ,KC_LEFT ,KC_RGHT + ,KC_UP + ,KC_SPC ,KC_ENT ,KC_DOWN + // right hand + ,KC_ESC ,KC_5 ,KC_4 ,KC_3 ,KC_2 ,KC_1 ,KC_GRV + ,KC_LBRC ,KC_T ,KC_R ,KC_E ,KC_W ,KC_Q ,KC_TAB + ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,F(LSymb) + ,LSFT(KC_TAB),KC_B ,KC_V ,KC_C ,KC_X ,KC_Z ,KC_LSFT + ,KC_LGUI,KC_LALT,KC_HYPR ,KC_MEH,KC_LCTL + ,KC_HOME ,KC_END + ,KC_PGUP + ,KC_PGDN ,KC_BSPC ,KC_DEL +) }; const uint16_t PROGMEM fn_actions[] = { @@ -227,14 +276,13 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { switch(id) { // There are two shift keys for each layer so we increment a layer_shift var when one - // is pressed and decrement when one is released. If both are pressed at the same time - // then the layer is locked (or unlocked). The shift counts are bound between 0 and 2 + // is pressed and decrement when one is released. The shift counts are bound between 0 and 2 // only because sometimes rapid pressing led to irregular events; this way the states // are self healing during use. case LSymb: // if (record->event.pressed) { // when the LSymb button is pressed - if(++symb_shift > 2) mdia_shift = 2; // increment the symb shift count, max two + if(++symb_shift > 2) symb_shift = 2; // increment the symb shift count, max two if(spec_shift) symb_lock = !symb_lock; // if the Special layer is on, toggle the shift lock layer_on(SYMB); // in any case, turn on the Symbols layer } else { // when the LSymb button is released @@ -264,7 +312,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case LSpec: if (record->event.pressed) { // when the LSpec button is pressed - if(symb_shift) symb_lock == !symb_lock; // if another layer button is engaged, then + if(symb_shift) symb_lock = !symb_lock; // if another layer button is engaged, then else if(mdia_shift) mdia_lock = !mdia_lock; // lock that layer, be it caps or symb or mdia else if (record->tap.count && !record->tap.interrupted && (!spec_shift)) { register_code(KC_GRV); // otherwise, if it's an uninterrupted tap, emit a char @@ -340,6 +388,18 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) } break; + case NotEq: + if (record->event.pressed) { + return MACRO( I(30), T(EXLM), T(EQL), END ); // + } + break; + + case Point: + if (record->event.pressed) { + return MACRO( I(30), T(MINS), T(DOT), END ); // + } + break; + // mouse diagonals case MUL: // mouse up left diff --git a/keyboards/ergodox/keymaps/ordinary/readme.md b/keyboards/ergodox/keymaps/ordinary/readme.md index 820b80b454..313b726bad 100644 --- a/keyboards/ergodox/keymaps/ordinary/readme.md +++ b/keyboards/ergodox/keymaps/ordinary/readme.md @@ -11,10 +11,11 @@ no rights reserved, use for any purposes, credit me if you are a nice person ## The Base Layout ## * *White Keys* are all the normal characters and symbols in all the normal locations (except for the brackets). -* *Modifier Keys* are light yellow and in the traditional location: Control, Option, Command, plus Hyper and Meh. +* *Modifier Keys* are light yellow and in the traditional locationn at the bottom of the keyboard: Control, Option, Command, plus Hyper and Meh. * *Shift Keys* are dark yellow, found on the outsides of the keyboard. Capitals Shift (traditional shift) is found in the usual place and above that is found Symbol Shift, Media Shift, and Special Shift (Shift Lock). * Several of the shift keys double for entry of characters which would typically be in those locations. * *Thumb Keys* shown in orange are for text navigation and manipulation. +* The keys under pinky fingers and index fingers will *reverse* the keyboard layout. * *Escape* is red and it is always found in that location no matter what. ![Ordinary base layout](ordinary-base.png) @@ -23,16 +24,20 @@ The four big orange keys are arranged differently than in the default Ergodox EZ The Forward Tab and Backward Tab keys are in their locations mostly because I ended up with two extra buttons and needed something to do with them. My muscle memory from using the Truly Ergonomic Keyboard makes me look for the Tab key with my right index finger, so it is handy to have this redundant Tab, and the idea with the Backward Tab key is that it becomes easy to navigate text fields in forms, or to indent/unindent code. +#### Reversing The Base Layout #### + +The Ordinary Layout can be used to perform one-handed chorded text input. If you hold down the key under either index finger or either pinky finger (A, F, J and Semicolon), the whole base layout reverses order. Most keys are _mirrored_ but the delete keys are merely *translated* to preserve directionality. Pro-tip: This feature is particularly handly for bringing the Enter key to the left hand when the right hand is using the mouse. + ## The Symbols Layer ## * *Symbols* shown in light green. All kinds of brackets are available on this layer. Ampersand and Pipe justapose each other. Pipe, slash, and backslash are arranged in a column. -* *F-Keys* are bright green and overlay the row of numerals. +* *F-Keys* are bright green and overlay the row of numerals. This layer has F1-F10, higher *F-Keys* are on the Symbols layer. * *Number pad* in dark green under the right hand includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads so that NumLock is not needed. -* *Thumb keys* on this layer are the *reverse* of the orange keys on the base layer, with the keys either mirrored or shifted. This is powerful! Often I find myself using the mouse with my right hand, and the left hand needs to press Enter. Instead of reaching the left hand over to the right side of the keyboard, now I simply tap Symbols to reverse the turquoise keys, and Enter is right where it should be. ![Ordinary symbol layout](ordinary-symbol.png) The Symbols Layer is based on the Coder Layer from the default Ergodox EZ layout. I slightly rearranged the symbols, added some symbols, expanded the number pad, and straightened out the F-Keys. It's very handy to have the symbols directly underneath the normal typing keys. +* The dark gray keys do nothing in case you bump them by accident. ## The Media Layer ## @@ -42,7 +47,7 @@ The Symbols Layer is based on the Coder Layer from the default Ergodox EZ layout * Higher-order *F-Keys* are shown in bright green overylaying the numerals. * *Application Keys* to control web browsers and audio players are dark purple but don't get too excited because these have weak support on operating systems I've looked at. Good luck. * The light purple keys are various operating system keys such as NumLock and Mute and a button to navigate to My Computer (usually your home dir). -* The dark gray keys do nothing in case you bump them by accident +* The dark gray keys do nothing in case you bump them by accident. ![Ordinary media layout](ordinary-media.png) @@ -64,27 +69,33 @@ Multiple layers can be turned on at once. The Capitals layer will affect charact The Special Shift layer is mostly used to lock the shift keys but in order to make this layout more _ordinary_ there are a few special sequences which put some keys near their most common traditional locations. -### Escape ### +#### Escape #### -The One True Location for the Escape key is segregated way up on the top left of the keyboard. The Ergodox does not have a physical button in such a location and the nearest one is home to the tilde (er, grave) which is commonly found there. In the Ordinary layout the Escape key is found on all layers in the prominent location in the corner next to the 5, which is easy to remember, and yet it isn't natural for those of us with muscle memory flicking our wrists up and to the left looking for Escape. +The One True Location for an Escape key is separated from the rest of the keys, way up on the top left of the keyboard. The Ergodox does not have a physical button in such a location, however, and the nearest one is home to the tilde (er, *grave*) which is commonly found there. In the Ordinary layout the Escape key is found on all layers in the prominent location in the corner next to the 5, which is easy to remember, and yet it isn't natural for those of us with muscle memory flicking our wrists up and to the left looking for Escape. -The Ordinary layout offers as a consolation prize a Special sequence for Escape: Special Shift + 1. This is natural so you can tap the top left button, then the button next to it and get Escape. This gesture works in all layers. +The Ordinary layout offers as a consolation prize, a Special sequence for Escape: **Special Shift + 1**. This is natural so you can tap the top left button, then the button next to it and get Escape. This gesture works in all layers. -### Backspace ### +#### Backspace #### -At the top right corner of the Ergodox EZ you can a gesture similar to the special Escape sequence using the 0 key to produce a Backspace. Users of this keyboard and this layout are well advised to learn to use their thumbs for deleting text, but sometimes you are doing other computery things and just want to flick your digits up to the right and press backspace a bunch times. +At the top right corner of the Ergodox EZ you can do **Special Shift + 0** to produce a Backspace. Users of this keyboard and this layout are well advised to learn to use their thumbs for deleting text, but sometimes you are doing other computery things and just want to flick your digits up to the right and press backspace a bunch times. -### Other Characters ### +#### Other Characters #### The Escape and Backspace special sequences are so useful why not have a few more? You can find dash under 9, left bracket under o, and right bracket under p. That's pretty much all the characters from the top right corner of the keyboard which moved to make room for the columnar layout. +## Errata ## + +Some of the symbols on the Symbols layer are produced by the keyboard by "capitalizing" another symbol (such as *!* from *1*) so when you type that key you will notice the Capitals Shift red LED turn on. + **** -The Ordinary Layout for the Ergodox EZ keyboard, v4.20 +The Ordinary Layout for the Ergodox EZ keyboard, v5 Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com No rights reserved. This software is in the public domain. Credit me if you are friendly but if you're a jerk don't bother. +Keyboard layout images were created with http://www.keyboard-layout-editor.com/ by Ian Prest my thanks to that free service + Details: readme.md https://github.com/nrrkeene/qmk_firmware/tree/master/keyboards/ergodox/keymaps/ordinary -- cgit v1.2.1 From af942f2e57023a469d2f617839b3b7cb7eec798a Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Wed, 15 Feb 2017 22:33:04 -0600 Subject: The Ordinary Layout is the best one, the one you are looking for. Really. Check it out. --- keyboards/ergodox/keymaps/ordinary/keymap.c | 46 ++++++++++++++------- .../ergodox/keymaps/ordinary/ordinary-symbol.png | Bin 89582 -> 90642 bytes .../ergodox/keymaps/ordinary/ordinary-symbol.txt | 12 +++--- keyboards/ergodox/keymaps/ordinary/readme.md | 14 +++---- 4 files changed, 43 insertions(+), 29 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index b79f0f0645..8f17ee276a 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -19,7 +19,9 @@ #define RSpec 15 // right special-shift key #define NotEq 16 // != macro -#define Point 17 // -> macro +#define GrtEq 17 // >= macro +#define LesEq 18 // <= macro +#define DeRef 19 // -> macro #define MUL 20 // mouse up left #define MUR 21 // mouse up right @@ -71,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC ,M(LSymb) ,LT(RBASE, KC_A),KC_S ,KC_D ,LT(RBASE, KC_F) ,KC_G ,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) -,KC_SCLN ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI +,KC_LCTL ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI ,KC_HOME,KC_END ,KC_PGUP ,KC_BSPC,KC_DEL ,KC_PGDN @@ -100,9 +102,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' * ,-------------. ,-------------. - * ||||||||||||||| ||||||||||||||| + * | |||| | |||| | | |||| | |||| | * ,------|------|------| |------+------+------. - * | Plus | Equal|||||||| |||||||| Under| Dash | + * | Plus | Equal| |||| | | |||| | Under| Dash | * | | |------| |------| Score| | * | + | = | != | | -> | _ | - | * `--------------------' `--------------------' @@ -113,8 +115,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) ,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV ,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB -,KC_LCTL ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) - ,KC_NO ,KC_NO +,KC_SCLN ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) + ,M(GrtEq),M(LesEq) ,KC_NO ,KC_PLUS ,KC_EQL ,M(NotEq) // right hand @@ -125,21 +127,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT ,KC_NO ,KC_NO ,KC_NO - ,M(Point) ,LSFT(KC_MINS),KC_MINS + ,M(DeRef) ,LSFT(KC_MINS),KC_MINS ), /******* Media Layer ******************************************************************************************************* * * ,---------------------------------------------------------------. ,---------------------------------------------------------------. - * | | F11 | F12 | F13 | F14 | F15 | Esc | | | F16 | F17 | F18 | F19 | F20 | | + * | | F11 | F12 | F13 | F14 | F15 | Esc | | |||| | F16 | F17 | F18 | F19 | F20 | | * |------+---------+---------+---------+---------+----------------| |------+---------+---------+---------+---------+---------+------| * | |Shut Down|MouseUpLf|Mouse Up |MouseUpRg|Volume Up|Scroll| |Scroll|PrintScrn| Home | Up | PgUp | Mail | | * |------+---------+---------+---------+---------+---------| Up | | Up |---------+---------+---------+---------+---------+------| * | | Sleep |MouseLeft|MouseDown|MouseRght|Volume Dn|------| |------| Num Lock| Left | Down | Right | MyComp | | * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| - * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | + * | | |||| |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | |||| | End | Down | PgDn | |||| | | * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' - * | | | MClick | LClick | R Click| | Insert | Del | | | | + * | ||| | |||| | MClick | LClick | R Click| | Insert | Del | |||| | |||| | ||| | * `---------------------------------------------' `---------------------------------------------' * ,-------------. ,-------------. * | Stop |Refrsh| | Prev | Next | @@ -219,7 +221,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| * | \| | P | O | I | U | Y | ] | | [ | T | R | E | W | Q | Tab | * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| - * | | ; | L | K | J | H |------| |------| G | F | D | S | A | '" | + * | '" | ; | L | K | J | H |------| |------| G | F | D | S | A | | * |------------+------+------+------+------+------| Tab | |Shift |------+------+------+------+------+------------| * | Capitals | / | . | , | M | N | | | -Tab | B | V | C | X | Z | Capitals | * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' @@ -237,7 +239,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand KC_EQL ,KC_0 ,KC_9 ,KC_8 ,KC_7 ,KC_6 ,KC_MINS ,KC_BSLS ,KC_P ,KC_O ,KC_I ,KC_U ,KC_Y ,KC_RBRC -,KC_NO ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H +,KC_QUOT ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H ,KC_RSFT ,KC_SLSH ,KC_DOT ,KC_COMM,KC_M ,KC_N ,KC_TAB ,KC_RCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_RALT,KC_RGUI ,KC_LEFT ,KC_RGHT @@ -246,7 +248,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand ,KC_ESC ,KC_5 ,KC_4 ,KC_3 ,KC_2 ,KC_1 ,KC_GRV ,KC_LBRC ,KC_T ,KC_R ,KC_E ,KC_W ,KC_Q ,KC_TAB - ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,F(LSymb) + ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,KC_NO ,LSFT(KC_TAB),KC_B ,KC_V ,KC_C ,KC_X ,KC_Z ,KC_LSFT ,KC_LGUI,KC_LALT,KC_HYPR ,KC_MEH,KC_LCTL ,KC_HOME ,KC_END @@ -390,13 +392,25 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case NotEq: if (record->event.pressed) { - return MACRO( I(30), T(EXLM), T(EQL), END ); // + return MACRO( I(10), D(LSFT), T(EXLM), U(LSFT), T(EQL), END ); // != } break; - case Point: + case GrtEq: if (record->event.pressed) { - return MACRO( I(30), T(MINS), T(DOT), END ); // + return MACRO( I(10), D(LSFT), T(COMM), U(LSFT), T(EQL), END ); // <= + } + break; + + case LesEq: + if (record->event.pressed) { + return MACRO( I(10), D(LSFT), T(DOT), U(LSFT), T(EQL), END ); // >= + } + break; + + case DeRef: + if (record->event.pressed) { + return MACRO( I(10), T(MINS), D(LSFT), T(DOT), U(LSFT), END ); // -> } break; diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png index 8cd92cee14..1277f74837 100644 Binary files a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png and b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png differ diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt index f64503ecbd..65eca9d6a5 100644 --- a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt +++ b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt @@ -16,12 +16,12 @@ [{y:-0.875,x:5.5,c:"#bbddbb"},"~",{x:6.5},"\\"], [{y:-0.875,c:"#c6c600",t:"#9e0000",w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#bbddbb",t:"#000000"},"%",{x:14.5,c:"#89b087"},"-",{c:"#c6c600",t:"#9e0000",w:1.5},"\n\nCapitals\n\n\n\n\nShift"], [{y:-0.375,x:3.5,c:"#bbddbb",t:"#000000"},"<",{x:10.5,c:"#89b087"},"."], -[{y:-0.875,x:2.5,c:"#bbddbb"},"*",{x:1,a:5},">",{x:8.5,c:"#89b087",a:4},"0",{x:1},"="], +[{y:-0.875,x:2.5,c:"#bbddbb"},"*",{x:1},">",{x:8.5,c:"#89b087"},"0",{x:1},"="], [{y:-0.75,x:0.5,c:"#bbddbb"},";","&",{x:14.5,c:"#89b087"},"+","Enter"], -[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#737373",a:7},"",""], -[{c:"#bbddbb",h:2},"+",{h:2},"=",{c:"#737373"},""], -[{x:2,c:"#bbddbb"},"!="], -[{r:-30,rx:13,y:-1,x:-3,c:"#737373"},"",""], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#bbddbb"},"<=",">="], +[{a:7,h:2},"+",{h:2},"=",{c:"#737373"},""], +[{x:2,c:"#bbddbb",a:4},"!="], +[{r:-30,rx:13,y:-1,x:-3,c:"#737373",a:7},"",""], [{x:-3},"",{c:"#bbddbb",h:2},"_",{h:2},"-"], -[{x:-3},"->"] +[{x:-3,a:4},"->"] diff --git a/keyboards/ergodox/keymaps/ordinary/readme.md b/keyboards/ergodox/keymaps/ordinary/readme.md index 313b726bad..927356892e 100644 --- a/keyboards/ergodox/keymaps/ordinary/readme.md +++ b/keyboards/ergodox/keymaps/ordinary/readme.md @@ -10,13 +10,13 @@ no rights reserved, use for any purposes, credit me if you are a nice person ## The Base Layout ## -* *White Keys* are all the normal characters and symbols in all the normal locations (except for the brackets). -* *Modifier Keys* are light yellow and in the traditional locationn at the bottom of the keyboard: Control, Option, Command, plus Hyper and Meh. -* *Shift Keys* are dark yellow, found on the outsides of the keyboard. Capitals Shift (traditional shift) is found in the usual place and above that is found Symbol Shift, Media Shift, and Special Shift (Shift Lock). +* *White Keys* are all the normal characters and symbols in all the normal locations (except for the brackets, and who touch-types brackets?). +* *Modifier Keys* are light yellow and in the traditional locationn at the bottom of the keyboard: Control, Option, Command, plus Hyper and Meh. Modifier keys are only found on the base layout. +* *Shift Keys* are dark yellow, found on the outsides of the keyboard. Capitals Shift (traditional Shift) is found in the usual place and above that are Symbol Shift, Media Shift, and Special Shift (Shift Lock). * Several of the shift keys double for entry of characters which would typically be in those locations. * *Thumb Keys* shown in orange are for text navigation and manipulation. * The keys under pinky fingers and index fingers will *reverse* the keyboard layout. -* *Escape* is red and it is always found in that location no matter what. +* *Escape* is red and it is always found in that location (*except* when the layout is reversed). ![Ordinary base layout](ordinary-base.png) @@ -26,18 +26,18 @@ The Forward Tab and Backward Tab keys are in their locations mostly because I en #### Reversing The Base Layout #### -The Ordinary Layout can be used to perform one-handed chorded text input. If you hold down the key under either index finger or either pinky finger (A, F, J and Semicolon), the whole base layout reverses order. Most keys are _mirrored_ but the delete keys are merely *translated* to preserve directionality. Pro-tip: This feature is particularly handly for bringing the Enter key to the left hand when the right hand is using the mouse. +The Ordinary Layout can be used to perform one-handed chorded text input. If you hold down the key under either index finger or either pinky finger (A, F, J and Semicolon), the whole base layout reverses order. Most keys are _mirrored_ but the delete keys, home/end, and left/right arrow keys are merely *translated* to preserve directionality. Pro-tip: This feature is particularly handly for bringing the Enter key to the left hand when the right hand is using the mouse. ## The Symbols Layer ## * *Symbols* shown in light green. All kinds of brackets are available on this layer. Ampersand and Pipe justapose each other. Pipe, slash, and backslash are arranged in a column. * *F-Keys* are bright green and overlay the row of numerals. This layer has F1-F10, higher *F-Keys* are on the Symbols layer. * *Number pad* in dark green under the right hand includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads so that NumLock is not needed. +* The dark gray keys do nothing in case you bump them by accident. ![Ordinary symbol layout](ordinary-symbol.png) The Symbols Layer is based on the Coder Layer from the default Ergodox EZ layout. I slightly rearranged the symbols, added some symbols, expanded the number pad, and straightened out the F-Keys. It's very handy to have the symbols directly underneath the normal typing keys. -* The dark gray keys do nothing in case you bump them by accident. ## The Media Layer ## @@ -85,7 +85,7 @@ The Escape and Backspace special sequences are so useful why not have a few more ## Errata ## -Some of the symbols on the Symbols layer are produced by the keyboard by "capitalizing" another symbol (such as *!* from *1*) so when you type that key you will notice the Capitals Shift red LED turn on. +Some of the symbols on the Symbols layer are produced by the keyboard by "capitalizing" another character (such as *!* from *1*) so when you type that key you will notice the Capitals Shift red LED turn on. **** -- cgit v1.2.1 From 7606f784ddd2f276827ed2131d8d4f12047d7f4f Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Wed, 15 Feb 2017 23:02:30 -0600 Subject: This is the best layout, really, come look --- keyboards/ergodox/keymaps/ordinary/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index 8f17ee276a..1dfdf7e624 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -96,8 +96,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | | - * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| - * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | + * |-----------+------+------+------+------+------| ' | | " |------+------+------+------+------+-----------| + * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | - | | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' @@ -114,7 +114,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC ,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) ,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV -,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB +,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_QUOT ,KC_SCLN ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) ,M(GrtEq),M(LesEq) ,KC_NO @@ -123,7 +123,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS - ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS + ,LSFT(KC_QUOT),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT ,KC_NO ,KC_NO ,KC_NO -- cgit v1.2.1 From d99f03a1a60877ac18bfcceb3e9aff3796a4464b Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Wed, 15 Feb 2017 23:11:04 -0600 Subject: The Ordinary Layout has all the keys in the right places. --- keyboards/ergodox/keymaps/ordinary/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/ordinary/readme.md b/keyboards/ergodox/keymaps/ordinary/readme.md index 927356892e..e13cb7ec86 100644 --- a/keyboards/ergodox/keymaps/ordinary/readme.md +++ b/keyboards/ergodox/keymaps/ordinary/readme.md @@ -30,7 +30,7 @@ The Ordinary Layout can be used to perform one-handed chorded text input. If you ## The Symbols Layer ## -* *Symbols* shown in light green. All kinds of brackets are available on this layer. Ampersand and Pipe justapose each other. Pipe, slash, and backslash are arranged in a column. +* *Symbols* shown in light green. All kinds of brackets are available on this layer. Ampersand and Pipe juxtapose each other. Pipe, slash, and backslash are arranged in a column. * *F-Keys* are bright green and overlay the row of numerals. This layer has F1-F10, higher *F-Keys* are on the Symbols layer. * *Number pad* in dark green under the right hand includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads so that NumLock is not needed. * The dark gray keys do nothing in case you bump them by accident. -- cgit v1.2.1 From 49e72632d2200fc3bf71d5ced2aa43058da3b2e0 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Thu, 16 Feb 2017 13:13:38 -0500 Subject: remove more warnings --- keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | 2 ++ keyboards/ergodox/keymaps/twey/keymap.c | 1 + 2 files changed, 3 insertions(+) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c index b62b14449f..aaf75d58f2 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c @@ -312,6 +312,8 @@ uint16_t hex_to_keycode(uint8_t hex) return NEO_E; case 0xF: return NEO_F; + default: + return KC_NO; } } } diff --git a/keyboards/ergodox/keymaps/twey/keymap.c b/keyboards/ergodox/keymaps/twey/keymap.c index 5deacd63f5..1ecbce4661 100644 --- a/keyboards/ergodox/keymaps/twey/keymap.c +++ b/keyboards/ergodox/keymaps/twey/keymap.c @@ -205,6 +205,7 @@ void matrix_init_user(void) { // Runs constantly in the background, in a loop. void matrix_scan_user(void) { + __attribute__ ((unused)) uint32_t layer0 = layer_state & (1UL << 0), layer1 = layer_state & (1UL << 1), layer2 = layer_state & (1UL << 2), -- cgit v1.2.1 From b9fce164906195d8fa6eff4b1e5e080b43b63b30 Mon Sep 17 00:00:00 2001 From: Nathan Kessler Date: Mon, 20 Feb 2017 22:31:40 -0500 Subject: Add dvorak_emacs_software layout for ergodox --- .../ergodox/keymaps/dvorak_emacs_software/keymap.c | 166 +++++++++++++++++++++ .../keymaps/dvorak_emacs_software/readme.md | 74 +++++++++ 2 files changed, 240 insertions(+) create mode 100755 keyboards/ergodox/keymaps/dvorak_emacs_software/keymap.c create mode 100644 keyboards/ergodox/keymaps/dvorak_emacs_software/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/dvorak_emacs_software/keymap.c b/keyboards/ergodox/keymaps/dvorak_emacs_software/keymap.c new file mode 100755 index 0000000000..a2bc15c991 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak_emacs_software/keymap.c @@ -0,0 +1,166 @@ +#include "ergodox.h" +#include "keymap_dvorak.h" +#include "debug.h" +#include "action_layer.h" + +/****************************************************************************************** + * DVORAK LAYOUT (see http://djelibeibi.unex.es/dvorak/) + * Layer 1: auxiliary keys + * Layer 2: full qwerty layout + *****************************************************************************************/ + +// LAYERS +#define BASE 0 // dvorak layout (default) +#define AUX 1 // auxiliary keys + +// MACROS +/* #define OBRACE 0 // key { or shift */ +/* #define CBRACE 1 // key } or shift */ +/* #define OBRACK 2 // key [ or left alt */ +/* #define CBRACK 3 // key ] or left alt */ +/* #define CAPS 4 // caps lock */ + +// LEDS +#define USB_LED_NUM_LOCK 0 +#define USB_LED_CAPS_LOCK 1 +#define USB_LED_SCROLL_LOCK 2 +#define USB_LED_COMPOSE 3 +#define USB_LED_KANA 4 + +// TIMERS +#define KEY_TAP_FAST 85 +#define KEY_TAP_SLOW 95 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Base layer + * Keys with double values (like Esc/Ctrl) correspond to the 'tapped' key and the 'held' key, respectively + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | Esc | | Esc | 6 | 7 | 8 | 9 | 0 | = / + | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ~ |" / ' |, / < |. / > | P | Y | [ | | ] | F | G | C | H | L | / / ? | + * |--------+------+------+------+------+------| { | | } |------+------+------+------+------+--------| + * | Tab | A | O | E |U/LSft| I/L1 |------| |------| D/L1|R/RSft| T | N | S | - / _ | + * |--------+------+------+------+------+------| LGUI | | LGUI |------+------+------+------+------+--------| + * | {/LSft |; / : | Q | J | K | X | | | | B | M | W | V | Z | }/RSft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | ~L1 | | ~L1 | | | \ / || | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | HOME | END | | LEFT | RIGHT| + * ,------|------|------| |------+--------+------. + * | BSPC | DEL | PGUP | | UP | SPACE |RETURN| + * | / | / |------| |------| / | / | + * | LCTL | LALT |PGDWN | | DOWN | LALT | LCTL | + * `--------------------' `----------------------' + * + */ +[BASE] = KEYMAP( + // left hand + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_TILD, DV_QUOT, DV_COMM,DV_DOT, DV_P, DV_Y, DV_LBRC, + KC_TAB, DV_A, DV_O, DV_E, SFT_T(DV_U), LT(AUX, DV_I), + SFT_T(DV_LBRC), DV_SCLN, DV_Q, DV_J, DV_K, DV_X, KC_LGUI, + KC_NO, KC_NO, KC_NO, KC_NO, MO(AUX), + KC_HOME, KC_END, + KC_PGUP, + CTL_T(KC_BSPC), ALT_T(KC_DEL), KC_PGDN, + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, DV_EQL, + DV_RBRC, DV_F, DV_G, DV_C, DV_R, DV_L, DV_SLSH, + LT(AUX, DV_D), SFT_T(DV_H), DV_T, DV_N, DV_S, DV_MINS, + KC_LGUI, DV_B, DV_M, DV_W, DV_V, DV_Z, SFT_T(DV_RBRC), + MO(AUX), KC_NO, KC_NO, KC_BSLS, KC_NO, + KC_LEFT, KC_RIGHT, + KC_UP, + KC_DOWN, ALT_T(KC_ENT), CTL_T(KC_SPC) + ), +/* Keymap 1: Aux layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | VolUp | | | | | | SLEEP | PWR | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | VolDn | F1 | F2 | F3 | F4 | | | | | | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | F5 | F6 | F7 | F8 | TRANS|------| |------|TRANS | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | |PSCR |------+-----aan+------+------+------+--------| + * | TRANS | F9 | F10 | F11 | F12 | | | | | | 1 | 2 | 3 | / | TRANS | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |CTRL-S|CTRL-Z|CTRL-X|CTRL-C| TRANS| | TRANS| . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | TRANS| TRANS| | TRANS| TRANS| + * ,------|------|------| |------+------+------. + * | | | TRANS| | TRANS| | | + * |TRANS |TRANS |------| |------| TRANS| TRANS| + * | | | TRANS| | TRANS| | | + * `--------------------' `--------------------' + */ +[AUX] = KEYMAP( + // left hand + KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, + KC_VOLD, KC_F1, KC_F2, KC_F3, KC_F4, KC_NO, KC_NO, + KC_NO , KC_F5, KC_F6, KC_F7, KC_F8, KC_TRNS, + KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, + LCTL(DV_S), LCTL(DV_Z), LCTL(DV_X), LCTL(DV_C), KC_TRNS, + KC_TRNS , KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_PWR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_7, KC_8, KC_9, KC_PAST, KC_NO, + KC_TRNS, KC_4, KC_5, KC_6, KC_PPLS, KC_NO, + KC_PSCR, KC_NO, KC_1, KC_2, KC_3, KC_PSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_PEQL, KC_NO, + KC_TRNS , KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(AUX) // FN1 - Momentary Layer 1 (Aux) +}; + + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + 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 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } +} diff --git a/keyboards/ergodox/keymaps/dvorak_emacs_software/readme.md b/keyboards/ergodox/keymaps/dvorak_emacs_software/readme.md new file mode 100644 index 0000000000..0e1e94ffe1 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak_emacs_software/readme.md @@ -0,0 +1,74 @@ +# Ergodox Dvorak Layout with emacs binding in mind - software version + +This configuration is the same as the dvorak_emacs layout, but using a sofware dvorak configuration +instead of a firmware configuration. This layout is for those who run their computer in dvorak mode. + + * Control & Alt key on the thumbs (activated if pressed with another key). + * In the same way, "U" and "R" are the shift modifier if pressed with another key. + * "I" and "D" set the layer 1 for the auxiliary keys if pressed with another key. + * Software layout set to english. + +## Keymap Layers + - L0: dvorak with some customizations (see layout below) + - L1: auxiliary keys (includes function keys, numpad...) + + +### Keymap 0: Base layer +Keys with double values (like U/LSft) correspond to the 'tapped' key and the 'held' key, respectively + +

+
+,--------------------------------------------------.           ,--------------------------------------------------.
+|        |   1  |   2  |   3  |   4  |   5  |  Esc |           |  Esc |   6  |   7  |   8  |   9  |   0  |   =    |
+|--------|------|------|------|------|-------------|           |------|------|------|------|------|------|--------|
+|   ~    |  '   |   ,  |   .  |   P  |   Y  |   [  |           |   ]  |   F  |   G  |   C  |   H  |   L  |   /    |
+|--------|------|------|------|------|------|   {  |           |   }  |------|------|------|------|------|--------|
+|  Tab   |   A  |   O  |   E  |U/LSft| I/L1 |------|           |------|  D/L1|R/RSft|   T  |   N  |   S  |   -    |
+|--------|------|------|------|------|------| LGUI |           | LGUI |------|------|------|------|------|--------|
+| {/LSft |   ;  |   Q  |   J  |   K  |   X  |      |           |      |   B  |   M  |   W  |   V  |   Z  | }/RSft |
+`--------|------|------|------|------|-------------'           `-------------|------|------|------|------|--------'
+  |      |      |      |      | ~L1  |                                       | ~L1  |      |      |   \  |      |
+  `----------------------------------'                                       `----------------------------------'
+                                       ,-------------.       ,-------------.
+                                       | HOME |  END |       | LEFT | RIGHT|
+                                ,------|------|------|       |------|--------|------.
+                                | BSPC |  DEL | PGUP |       |  UP  | SPACE  |RETURN|
+                                |  /   |  /   |------|       |------|   /    |  /   |
+                                | LCTL | LALT |PGDWN |       | DOWN | LALT   | LCTL |
+                                `--------------------'       `----------------------'
+
+
+ +### Keymap 1: Aux layer + +

+
+,--------------------------------------------------.           ,--------------------------------------------------.
+|  VolUp |      |      |      |      |      | SLEEP            | PWR  |      |      |      |      |      |        |
+|--------|------|------|------|------|-------------|           |------|------|------|------|------|------|--------|
+|  VolDn |  F1  |  F2  |  F3  |  F4  |      |      |           |      |      |   7  |   8  |   9  |   *  |        |
+|--------|------|------|------|------|------|      |           |      |------|------|------|------|------|--------|
+|        |  F5  |  F6  |  F7  |  F8  | TRANS|------|           |------|TRANS |   4  |   5  |   6  |   +  |        |
+|--------|------|------|------|------|------|      |           |PSCR  |------|------|------|------|------|--------|
+|  TRANS |  F9  |  F10 |  F11 |  F12 |      |      |           |      |      |   1  |   2  |   3  |   /  |  TRANS |
+`--------|------|------|------|------|-------------'           `-------------|------|------|------|------|--------'
+  |CTRL-S|CTRL-Z|CTRL-X|CTRL-C| TRANS|                                       | TRANS|    . |   0  |   =  |      |
+  `----------------------------------'                                       `----------------------------------'
+                                       ,-------------.       ,-------------.
+                                       | TRANS| TRANS|       | TRANS| TRANS|
+                                ,------|------|------|       |------|------|------.
+                                |      |      | TRANS|       | TRANS|      |      |
+                                |TRANS |TRANS |------|       |------| TRANS| TRANS|
+                                |      |      | TRANS|       | TRANS|      |      |
+                                `--------------------'       `--------------------'
+
+
+ + + +## Generation of .hex file +> In the "qmk_firmware/keyboards/ergodox" directory. + +> Execute "make dvorak_emacs". Then the hex file "ergodox_ez_dvorak_emacs.hex" is in the root directory : "qmk_firmware". + +> Flash with `teensy_loader` binary -- cgit v1.2.1 From 138b89e1a169290b783548085c64f8dd13cc4175 Mon Sep 17 00:00:00 2001 From: Date: Mon, 27 Feb 2017 00:16:55 +0100 Subject: Add colemak_programmer --- .../ergodox/keymaps/colemak_programmer/Makefile | 1 + .../colemak_programmer/colemak_programmer_001.jpg | Bin 0 -> 301259 bytes .../colemak_programmer/colemak_programmer_002.jpg | Bin 0 -> 235864 bytes .../ergodox/keymaps/colemak_programmer/keymap.c | 256 +++++++++++++++++++++ .../ergodox/keymaps/colemak_programmer/readme.md | 21 ++ 5 files changed, 278 insertions(+) create mode 100644 keyboards/ergodox/keymaps/colemak_programmer/Makefile create mode 100644 keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_001.jpg create mode 100644 keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_002.jpg create mode 100644 keyboards/ergodox/keymaps/colemak_programmer/keymap.c create mode 100644 keyboards/ergodox/keymaps/colemak_programmer/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/colemak_programmer/Makefile b/keyboards/ergodox/keymaps/colemak_programmer/Makefile new file mode 100644 index 0000000000..91b77c77ab --- /dev/null +++ b/keyboards/ergodox/keymaps/colemak_programmer/Makefile @@ -0,0 +1 @@ +TAP_DANCE_ENABLE = no \ No newline at end of file diff --git a/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_001.jpg b/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_001.jpg new file mode 100644 index 0000000000..de24d93734 Binary files /dev/null and b/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_001.jpg differ diff --git a/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_002.jpg b/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_002.jpg new file mode 100644 index 0000000000..15f8ec8c40 Binary files /dev/null and b/keyboards/ergodox/keymaps/colemak_programmer/colemak_programmer_002.jpg differ diff --git a/keyboards/ergodox/keymaps/colemak_programmer/keymap.c b/keyboards/ergodox/keymaps/colemak_programmer/keymap.c new file mode 100644 index 0000000000..1caccc5c29 --- /dev/null +++ b/keyboards/ergodox/keymaps/colemak_programmer/keymap.c @@ -0,0 +1,256 @@ +#include "ergodox.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * MEH: Alt+Control+Shift + * HYPER: Alt+Control+Shift+Gui + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` ~ | 1 ! | 2 @ | 3 # | 4 $ | 5 % | 6 ^ | | 7 & | 8 * | 9 ( | 0 ) | - _ | = + | Backsp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TAB | Q | W | F | P | G |TG(3) | |TG(4) | J | L | U | Y | ; : | ' " | + * |--------+------+------+------+------+------|F-lck | |N-lck |------+------+------+------+------+--------| + * | CAPS | A | R | S | T | D |------| |------| H | N | E | I | O | ENT | + * |--------+------+------+------+------+------| MEH | | MEH |------+------+------+------+------+--------| + * | Shift | Z | X | C | V | B | | | | K | M | , < | . > | UP | Shift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCTL | LCTL | LGUI | LALT | LGUI | | RALT | RCTL | LEFT | DOWN | RIGHT| + * `----------------------------------' `----------------------------------' + * ,--------------. ,--------------. + * | Esc | App | | Ins | Del | + * ,------|------|-------| |------+-------+------. + * | | | Home | | PgUp | | | + * | MO(2)| MO(4)|-------| |------| Space |Space | + * |symbol|N-Lock| End | | PgDn | | | + * `---------------------' `---------------------' + */ +[0] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, TG(3), + KC_CAPS, KC_A, KC_R, KC_S, KC_T, KC_D, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MEH, + KC_LCTL, KC_LCTL, KC_LGUI, KC_LALT, KC_LGUI, + + KC_ESC, KC_APP, + KC_HOME, + MO(2), MO(4), KC_END, + + // right hand + KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + TG(4), KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_QUOT, + KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT, + KC_MEH, KC_K, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, + + KC_INS, KC_DEL, + KC_PGUP, + KC_PGDN, KC_SPC, KC_SPC + ), + +/* Keymap 1: QWERTY layer (games) + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | Q | W | E | R | T | | | | Y | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | A | S | D | F | G |------| |------| H | J | K | L | ; | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Z | X | C | V | B | | | | N | M | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+--------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `----------------------' + */ +[1] = KEYMAP( // layer 1: QWERTY layer (games) + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_TRNS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_TRNS, + KC_TRNS, KC_N, KC_M, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + +/* Keymap 2: Symbol Layer +* +* ,--------------------------------------------------. ,--------------------------------------------------. +* | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | | +* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +* | | | | + | < | % | # | DF(1)| | | & | [ | ] | \ | : | " | +* |--------+------+------+------+------+------|QWERTY| | |------+------+------+------+------+--------| +* | | ! | - | > | = | @ |------| |------| * | { | } | / | ? | | +* |--------+------+------+------+------+------| DF(0)| | |------+------+------+------+------+--------| +* | | NUBS | NUHS | / | $ | ^ |COLEMAK | | | | ( | ) | | | | +* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' +* | | | | | | | | | | | | +* `----------------------------------' `----------------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | | | | | | | +* | | |------| |------| | | +* | | | | | | | | +* `--------------------' `--------------------' +*/ +// SYMBOLS +[2] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS, KC_PIPE, KC_PLUS, KC_LT, KC_PERC, KC_HASH, DF(1), + KC_LBRC, KC_EXCLAIM, KC_MINUS, KC_GT, KC_EQUAL, KC_AT, + KC_TRNS, KC_NUBS, KC_NUHS, KC_SLSH, KC_DOLLAR, KC_CIRC, DF(0), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + KC_TRNS, KC_AMPERSAND, KC_LBRC, KC_RBRC, KC_BSLS, KC_COLN, KC_DQT, + KC_ASTERISK, KC_LCBR, KC_RCBR, KC_SLSH, KC_QUES, KC_TRNS, + KC_TRNS, KC_PIPE, KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 3: + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | HYPR | | HYPR | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------ |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// F-keys +[3] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HYPR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_HYPR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 4: Numlock + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | |P-SCRE|S-LOCK|PAUSE | |NLOCK | CALC | = | / | * | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | Vol+ | 7 | 8 | 9 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| Vol- | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | HYPR | | HYPR | Mute | 1 | 2 | 3 |Enter | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | 0 | . | RCTL | RCTL | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------ |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[4] = KEYMAP( + RESET, KC_LSFT, KC_LSFT, KC_SYSREQ, KC_PSCR, KC_SLCK, KC_PAUSE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HYPR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_NLCK, KC_CALC, KC_PEQL, KC_PSLS, KC_PAST, KC_LSFT, KC_TRNS, + KC_TRNS, KC_VOLU, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, + KC_VOLD, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, + KC_HYPR, KC_MUTE, KC_P1, KC_P2, KC_P3, KC_PENT, KC_TRNS, + KC_TRNS, KC_P0, KC_PDOT, KC_RCTL, KC_RCTL, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +}; + + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + static uint8_t state; + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + + //reduce LED on time to 1/6th because LEDs are too strong + if (++state < 6) return; + state = 0; + + //bit 1: default layer 1 - QWERTY + if (default_layer_state & (1UL << 1)) ergodox_right_led_1_on(); + + uint8_t layer = biton32(layer_state); + + //layer 2 : Symbols (& Fs) + //if (layer == 2) ergodox_right_led_2_on(); + + //layer 3 : F-lock + if (layer == 3) ergodox_right_led_2_on(); + + //layer 4 : Num-lock + if (layer == 4) ergodox_right_led_3_on(); +}; diff --git a/keyboards/ergodox/keymaps/colemak_programmer/readme.md b/keyboards/ergodox/keymaps/colemak_programmer/readme.md new file mode 100644 index 0000000000..fae5e3553e --- /dev/null +++ b/keyboards/ergodox/keymaps/colemak_programmer/readme.md @@ -0,0 +1,21 @@ +# ErgoDox EZ colemak_programmer + +## Features + +* Qwerty and colemak 2 in 1 + * Use DF() macro to swap the bottom layer so it behaves literally as collemak or qwerty + * Graphical creator did not allow this so I had to use TO(0) and TO(1) on the picture +* Symbol layer programmers friendly + * Not only symbols are easy to access but common combination are easy too: ->, =>, !=, etc. +* Windows and Mac + * The extra repeated Win key is very handy on Mac +* Numlock + +I came to this layout after several iterations. It is not the ultimate best ergonomic layout but it is the best if you switch back and forth between ergodox and laptops. + +## Notes +* The Quote and Enter can be swapped +* If you use sculpted key caps try turning the bottom key 180 degrees so it became very comfortable to type with thumb. + +![Default](colemak_programer_001.jpg) +![Default](colemak_programer_002.jpg) \ No newline at end of file -- cgit v1.2.1 From bbbd49a1754c9b8cf2f69ca427fa5fe5630644f4 Mon Sep 17 00:00:00 2001 From: Date: Mon, 27 Feb 2017 00:27:57 +0100 Subject: Ammend readme.md --- keyboards/ergodox/keymaps/colemak_programmer/readme.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/colemak_programmer/readme.md b/keyboards/ergodox/keymaps/colemak_programmer/readme.md index fae5e3553e..db0cc5777a 100644 --- a/keyboards/ergodox/keymaps/colemak_programmer/readme.md +++ b/keyboards/ergodox/keymaps/colemak_programmer/readme.md @@ -17,5 +17,7 @@ I came to this layout after several iterations. It is not the ultimate best ergo * The Quote and Enter can be swapped * If you use sculpted key caps try turning the bottom key 180 degrees so it became very comfortable to type with thumb. -![Default](colemak_programer_001.jpg) -![Default](colemak_programer_002.jpg) \ No newline at end of file +Alternatively view the [graphical creator version](http://configure.ergodox-ez.com/keyboard_layouts/kmevwm/edit) but beware it is not the same due to the creator limitations. + +![Default](colemak_programmer_001.jpg) +![Default](colemak_programmer_002.jpg) \ No newline at end of file -- cgit v1.2.1 From 38cf08697b571e5efd55428a4682e248295091fb Mon Sep 17 00:00:00 2001 From: Gunther Gruber Date: Mon, 27 Feb 2017 09:55:24 +0100 Subject: small changes in guni.c keymap to work with new qmk_firmware packet --- keyboards/ergodox/keymaps/guni/keymap.c | 177 ++++++++++++++++++++++++++++++++ 1 file changed, 177 insertions(+) create mode 100644 keyboards/ergodox/keymaps/guni/keymap.c (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/guni/keymap.c b/keyboards/ergodox/keymaps/guni/keymap.c new file mode 100644 index 0000000000..f33829b8a4 --- /dev/null +++ b/keyboards/ergodox/keymaps/guni/keymap.c @@ -0,0 +1,177 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "bootloader.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + KEYMAP( // layer 0 : default + // left hand + KC_EQL , KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, + KC_FN25 , KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_FN27 , KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGUP, + KC_LGUI , KC_GRV,KC_LEFT,KC_RGHT,KC_LALT, + KC_NO , KC_NO , + KC_NO , + KC_BSPC,KC_DEL ,KC_FN23, + // right hand + KC_RBRC , KC_6, KC_7 , KC_8, KC_9, KC_0, KC_MINS, + KC_END , KC_Y, KC_U , KC_I, KC_O, KC_P, KC_FN28, + KC_H , KC_J, KC_K , KC_L, KC_SCLN,KC_FN30, + KC_PGDN , KC_N, KC_M , KC_COMM,KC_DOT, KC_SLSH,KC_FN29, + KC_RALT , KC_DOWN,KC_UP, KC_NO ,KC_RGUI, + KC_NO , KC_NO, + KC_NO , + KC_FN29,KC_ENT ,KC_SPC + ), + + KEYMAP( // layer 1 : function and symbol keys + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS,KC_AT,KC_UNDS ,KC_LBRC,KC_RBRC,KC_CIRC ,KC_TRNS, + KC_TRNS,KC_BSLS,KC_SLSH,KC_LCBR ,KC_RCBR ,KC_ASTR, + KC_TRNS,KC_HASH ,KC_DLR ,KC_PIPE ,KC_TILD ,KC_GRV ,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1, + // right hand + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_TRNS,KC_EXLM,LSFT(KC_COMM),LSFT(KC_DOT),KC_EQL,KC_AMPR, KC_TRNS, + LSFT(KC_SLSH),KC_LPRN,KC_RPRN,KC_MINS,LSFT(KC_SCLN),KC_TRNS, + KC_TRNS,KC_PLUS,LSFT(KC_5),LSFT(KC_QUOT),KC_QUOT,KC_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 + ), + + KEYMAP( // layer 2: navigation + // left hand + KC_NO,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_PGUP,KC_HOME,KC_UP ,KC_END,KC_NO ,KC_TRNS, + KC_TRNS,KC_PGDN,KC_LEFT,KC_DOWN,KC_RGHT,KC_NO, + KC_TRNS,KC_NO, KC_NO, KC_NO, KC_NO,KC_NO,KC_NO, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1 , + // right hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS ,KC_TRNS, KC_HOME, KC_TRNS, KC_TRNS, KC_END ,KC_TRNS, + KC_NO, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,KC_TRNS, + KC_TRNS,KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP,KC_TRNS, + KC_LEFT, KC_DOWN,KC_RGHT,KC_PGDN,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + KEYMAP( // layer 3 : teensy bootloader functions + // left hand + KC_FN0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1 , + // right hand + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + + + KEYMAP( // layer 4: numpad + // left hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS,KC_NLCK,KC_PSLS,KC_PAST,KC_PAST,KC_PMNS,KC_BSPC, + KC_TRNS,KC_NO, KC_P7, KC_P8, KC_P9, KC_PMNS,KC_BSPC, + KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS,KC_PENT, + KC_TRNS,KC_NO, KC_P1, KC_P2, KC_P3, KC_PPLS,KC_PENT, + KC_P0, KC_PDOT,KC_SLSH,KC_PENT,KC_PENT, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + +}; + +/* id for user defined functions */ +enum function_id { + TEENSY_KEY, +}; + +/* + * Fn action definition + */ +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_FUNCTION(TEENSY_KEY), // FN0 - Teensy key + [1] = ACTION_LAYER_SET(0, ON_PRESS), + //[11] = ACTION_MODS_KEY(MOD_LSFT, KC_COMM), + //[12] = ACTION_MODS_KEY(MOD_LSFT, KC_DOT), + + //[14] = ACTION_MODS_KEY(MOD_LSFT, KC_SLSH), + //[17] = ACTION_MODS_KEY(MOD_LSFT, KC_SCLN), + //[20] = ACTION_MODS_KEY(MOD_LSFT, KC_5), + //[21] = ACTION_MODS_KEY(MOD_LSFT, KC_QUOT), + [23] = ACTION_LAYER_SET(3, ON_PRESS), + [24] = ACTION_LAYER_SET(2, ON_PRESS), + [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_TAB), + [26] = ACTION_LAYER_SET(1, ON_PRESS), + [27] = ACTION_LAYER_TAP_KEY(1, KC_CAPS), + [28] = ACTION_MODS_TAP_KEY(MOD_RCTL,KC_BSLS), + //[29] = ACTION_LAYER_TOGGLE(4), + [29] = ACTION_MODS_TAP_KEY(MOD_RSFT,KC_ESC), + [30] = ACTION_LAYER_TAP_KEY(1, KC_QUOT), + [31] = ACTION_LAYER_MOMENTARY(2), + //[] = ACTION_LAYER_TAP_KEY(4, KC_S), +}; + + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + + +void action_function(keyrecord_t *event, uint8_t id, uint8_t opt) +{ + + if (id == TEENSY_KEY) { + clear_keyboard(); + print("\n\nJump to bootloader... "); + _delay_ms(250); + bootloader_jump(); // should not return + print("not supported.\n"); + } +} -- cgit v1.2.1 From cd1eb8d24649662dcc1e916634beb481c98173d7 Mon Sep 17 00:00:00 2001 From: Gunther Gruber Date: Wed, 8 Mar 2017 11:13:19 +0100 Subject: added readme file --- keyboards/ergodox/keymaps/guni/readme.txt | 133 ++++++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 keyboards/ergodox/keymaps/guni/readme.txt (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/guni/readme.txt b/keyboards/ergodox/keymaps/guni/readme.txt new file mode 100644 index 0000000000..93ae5f0567 --- /dev/null +++ b/keyboards/ergodox/keymaps/guni/readme.txt @@ -0,0 +1,133 @@ +My main layout (Layer 0) is based on qwerty. I tried to fit the layout of the kinesis keyboard onto the ergodox. Furthermore I did some tweaks. +The other layers are seldom used. Except the F Keys and the teensy key. As I own a ergodox I cant press the reset button, so i need a key to send the teensy into reprogram mode. +There is a layer with symbols a numpad. These layers are seldom used. Except the F Keys and the teensy key. As I own a ergodox I need a key to reprogram, because I can't access the reset button. + +I am a linux user and need the esc key and str keys often therefore it is easyly accessed. Switching console str+alt+tab+f2 (layer 2 and 2) is tricky but you get it after a while. +As I live in germany and need to type umlaut frquently, i mapped the CAPS to the meta key, and swapped ' and ". So I can type ö with CAPS o + ¨. no need to press o+SHIFT+' +As a note for linux users i use str+p to get last command, instead of using the cursor keys. + +HOWTO to convert CAPS to Meta-Key and swap ' with " + +* create file with following content +.Xmodmap + clear Lock + keycode 48 = quotedbl apostrophe quotedbl apostrophe + keycode 66 = Multi_key + +* apply with +xmodmap .Xmodmap + +* convert to xkbmap +xkbcomp $DISPLAY $HOME/.xkbmap + +* automatic startup each time you startup x +echo 'xkbcomp $HOME/.xkbmap $DISPLAY' >> ~/.xinitrc + + KEYMAP( // layer 0 : default + // left hand + KC_EQL , KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, + KC_FN25 , KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_FN27 , KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGUP, + KC_LGUI , KC_GRV,KC_LEFT,KC_RGHT,KC_LALT, + KC_NO , KC_NO , + KC_NO , + KC_BSPC,KC_DEL ,KC_FN23, + // right hand + KC_RBRC , KC_6, KC_7 , KC_8, KC_9, KC_0, KC_MINS, + KC_END , KC_Y, KC_U , KC_I, KC_O, KC_P, KC_FN28, + KC_H , KC_J, KC_K , KC_L, KC_SCLN,KC_FN30, + KC_PGDN , KC_N, KC_M , KC_COMM,KC_DOT, KC_SLSH,KC_FN29, + KC_RALT , KC_DOWN,KC_UP, KC_NO ,KC_RGUI, + KC_NO , KC_NO, + KC_NO , + KC_FN29,KC_ENT ,KC_SPC + ), + + KEYMAP( // layer 1 : function and symbol keys + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS,KC_AT,KC_UNDS ,KC_LBRC,KC_RBRC,KC_CIRC ,KC_TRNS, + KC_TRNS,KC_BSLS,KC_SLSH,KC_LCBR ,KC_RCBR ,KC_ASTR, + KC_TRNS,KC_HASH ,KC_DLR ,KC_PIPE ,KC_TILD ,KC_GRV ,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1, + // right hand + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_TRNS,KC_EXLM,LSFT(KC_COMM),LSFT(KC_DOT),KC_EQL,KC_AMPR, KC_TRNS, + LSFT(KC_SLSH),KC_LPRN,KC_RPRN,KC_MINS,LSFT(KC_SCLN),KC_TRNS, + KC_TRNS,KC_PLUS,LSFT(KC_5),LSFT(KC_QUOT),KC_QUOT,KC_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 + ), + + KEYMAP( // layer 2: navigation + // left hand + KC_NO,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_PGUP,KC_HOME,KC_UP ,KC_END,KC_NO ,KC_TRNS, + KC_TRNS,KC_PGDN,KC_LEFT,KC_DOWN,KC_RGHT,KC_NO, + KC_TRNS,KC_NO, KC_NO, KC_NO, KC_NO,KC_NO,KC_NO, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1 , + // right hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS ,KC_TRNS, KC_HOME, KC_TRNS, KC_TRNS, KC_END ,KC_TRNS, + KC_NO, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,KC_TRNS, + KC_TRNS,KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP,KC_TRNS, + KC_LEFT, KC_DOWN,KC_RGHT,KC_PGDN,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + KEYMAP( // layer 3 : teensy bootloader functions + // left hand + KC_FN0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_FN1 , + // right hand + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + + + KEYMAP( // layer 4: numpad + // left hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS,KC_NLCK,KC_PSLS,KC_PAST,KC_PAST,KC_PMNS,KC_BSPC, + KC_TRNS,KC_NO, KC_P7, KC_P8, KC_P9, KC_PMNS,KC_BSPC, + KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS,KC_PENT, + KC_TRNS,KC_NO, KC_P1, KC_P2, KC_P3, KC_PPLS,KC_PENT, + KC_P0, KC_PDOT,KC_SLSH,KC_PENT,KC_PENT, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS + ), + +}; + + -- cgit v1.2.1 From 8cc70f4d9dd75e4efb186ec71ee4a3a7a0dd4587 Mon Sep 17 00:00:00 2001 From: Lukas Stiebig Date: Wed, 8 Mar 2017 20:58:55 +0100 Subject: Added german-lukas Added my keymap called germman-lukas. --- keyboards/ergodox/keymaps/german-lukas/keymap.c | 235 ++++++++++++++++++++++++ 1 file changed, 235 insertions(+) create mode 100644 keyboards/ergodox/keymaps/german-lukas/keymap.c (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/german-lukas/keymap.c b/keyboards/ergodox/keymaps/german-lukas/keymap.c new file mode 100644 index 0000000000..f6709595ec --- /dev/null +++ b/keyboards/ergodox/keymaps/german-lukas/keymap.c @@ -0,0 +1,235 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_german.h" + +// Layer names +#define BASE 0 // default layer +#define SYMB 1 // symbol layer +#define MDIA 2 // media keys +#define SHRT 3 // shortcut layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Caps | 1 | 2 | 3 | 4 | 5 |X ` X| | PRSC | 6 | 7 | 8 | 9 | 0 | ß | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | Ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Esc | A | S | D | F | G |------| |------| H | J | K | L | Ö | Ä/L2 | + * |--------+------+------+------+------+------| L2 | | L2 |------+------+------+------+------+--------| + * | LShift | Y | X | C | V | B | | | | N | M | , | . | - | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | ^ | < | LEFT | RIGHT| | Up | Down | # | + | LCA | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | CTRL | ALT | | Alt |Ctrl/Esc| + * ,------+------+------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Del |------| |------| Bkspc | Enter| + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_CAPS, KC_1, KC_2, KC_3, KC_4, KC_5, DE_ACUT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, DE_Y, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LGUI, DE_CIRC, DE_LESS, KC_LEFT, KC_RIGHT, + KC_LCTRL, KC_LALT, + KC_HOME, + KC_SPC ,KC_DELT,KC_END, + // right hand + KC_PSCREEN, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(MDIA), DE_Z, KC_U, KC_I, KC_O, KC_P, LT(SHRT,DE_UE), + KC_H, KC_J, KC_K, KC_L, DE_OE, LT(MDIA,DE_AE), + MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, DE_MINS, KC_RSFT, + KC_UP, KC_DOWN, DE_HASH, DE_PLUS, LCA_T(KC_NO), + KC_RALT, KC_RCTRL, + KC_PGUP, + KC_PGDN, KC_BSPC, KC_ENT + ), + +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,DE_EXLM,DE_AT, DE_LCBR,DE_RCBR,DE_PIPE,KC_TRNS, + KC_TRNS,DE_HASH,DE_DLR, DE_LPRN,DE_RPRN,DE_GRV, + KC_TRNS,DE_PERC,DE_CIRC,DE_LBRC,DE_RBRC,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, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, DE_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, DE_PLUS, KC_TRNS, + KC_TRNS, DE_AMPR, KC_1, KC_2, KC_3, DE_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, DE_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Lclk | MsUp | Rclk | | | | | |VolDwn| Mute |VolUp | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Btn4 |MsLeft|MsDown|MsRght| Btn5 |------| |------| | Prev | Stop | Play | Next | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |WhRght|WhDown| WhUp |WhLeft|WhClk | | | |BwSrch|BwBack|BwHome|BwRefr|BwFwd | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | |MsAcl0|MsAcl1|MsAcl2| | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Back |Forwd | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + // left hand + KC_TRNS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS, + KC_TRNS, KC_BTN4, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN5, + KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN3, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ACL0, KC_ACL1, KC_ACL2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, KC_TRNS, + // right hand + KC_TRNS, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11, + KC_TRNS, KC_TRNS, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_F12, + KC_TRNS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_TRNS, + KC_TRNS, KC_WSCH, KC_WBAK, KC_WHOM, KC_WREF, KC_WFWD, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_WBAK, KC_WFWD +), + +/* Keymap 3: Linux shortcuts + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |LCA-F1|LCA-F2|LCA-F3|LCA-F4|LCA-F5| | | |LCA-F6|LCA-F7|LCA-F8|LCA-F9| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |LCA-Le| |LCA-Ri| |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | |LCA-Le|LCA-Ri| | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[SHRT] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, LCA(KC_F1), LCA(KC_F2), LCA(KC_F3), LCA(KC_F4), LCA(KC_F5), KC_TRNS, + KC_TRNS, KC_TRNS, LCA(KC_LEFT), KC_TRNS, LCA(KC_RIGHT), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, LCA(KC_LEFT), LCA(KC_RIGHT), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, LCA(KC_F6), LCA(KC_F7), LCA(KC_F8), LCA(KC_F9), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + LCA(KC_UP), LCA(KC_DOWN), KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + 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 SYMB: + ergodox_right_led_1_on(); + break; + case MDIA: + ergodox_right_led_2_on(); + break; + case SHRT: + ergodox_right_led_3_on(); + break; + default: + ergodox_board_led_off(); + break; + } + +}; -- cgit v1.2.1 From 2f5143e219c8410cfaeeadb87782b3dc212aa3b9 Mon Sep 17 00:00:00 2001 From: Lukas Stiebig Date: Wed, 8 Mar 2017 21:09:51 +0100 Subject: Corrected the description of the layer Corrected the description of the Shortcuts layer. --- keyboards/ergodox/keymaps/german-lukas/keymap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/german-lukas/keymap.c b/keyboards/ergodox/keymaps/german-lukas/keymap.c index f6709595ec..c6e9f2f900 100644 --- a/keyboards/ergodox/keymaps/german-lukas/keymap.c +++ b/keyboards/ergodox/keymaps/german-lukas/keymap.c @@ -162,8 +162,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | * `--------------------' `--------------------' */ -// MEDIA AND MOUSE +// Shortcuts [SHRT] = KEYMAP( + // left hand KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LCA(KC_F1), LCA(KC_F2), LCA(KC_F3), LCA(KC_F4), LCA(KC_F5), KC_TRNS, KC_TRNS, KC_TRNS, LCA(KC_LEFT), KC_TRNS, LCA(KC_RIGHT), KC_TRNS, -- cgit v1.2.1 From 34fa8fd5d3f0c46135f22d5d24b098c9e7117b67 Mon Sep 17 00:00:00 2001 From: Lukas Stiebig Date: Wed, 8 Mar 2017 21:14:16 +0100 Subject: readme Added a readme.md file for the keymap german-lukas. --- keyboards/ergodox/keymaps/german-lukas/README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 keyboards/ergodox/keymaps/german-lukas/README.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/german-lukas/README.md b/keyboards/ergodox/keymaps/german-lukas/README.md new file mode 100644 index 0000000000..3566b4ee64 --- /dev/null +++ b/keyboards/ergodox/keymaps/german-lukas/README.md @@ -0,0 +1,12 @@ +# About this keymap + +This keymap is based on the qwertz layout. +It has a key for pressing the left control and the left alt key at once. + +Linux makes a difference between AltGr and Control + Alt. Some keybindings are easier to press now. + +Also, I added a layer for pressing Control + Alt + F-Keys very fast. + +# Layer + +Each layer in the *keymap.c*-file has a comment showing the mappings of the layer. -- cgit v1.2.1 From 7c7a77d4bf8f35cd7f59119be0e95b5d28063988 Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Wed, 8 Mar 2017 19:43:10 -0500 Subject: Tweaks keymap to reset on boot --- keyboards/ergodox/keymaps/reset_eeprom/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/reset_eeprom/keymap.c b/keyboards/ergodox/keymaps/reset_eeprom/keymap.c index f708454ce2..8d68976585 100644 --- a/keyboards/ergodox/keymaps/reset_eeprom/keymap.c +++ b/keyboards/ergodox/keymaps/reset_eeprom/keymap.c @@ -111,7 +111,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // Runs just one time when the keyboard initializes. void matrix_init_user(void) { - + eeconfig_init(); }; -- cgit v1.2.1 From f75c7266a3c30a44e16a831e383baba97fc07eca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Tr=C3=BCmper?= Date: Sat, 11 Mar 2017 00:02:39 +0100 Subject: working but some documentation needed --- .../keymaps/neo2_on_qwerz_hardware/keymap.c | 407 +++++++++++++++++++++ .../keymaps/neo2_on_qwerz_hardware/keymap.md | 188 ++++++++++ 2 files changed, 595 insertions(+) create mode 100644 keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c create mode 100644 keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md (limited to 'keyboards/ergodox/keymaps') 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----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + -- cgit v1.2.1 From 303f5aed41aac700b6cbc5a2ce06a872d5b85d88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Tr=C3=BCmper?= Date: Sat, 11 Mar 2017 10:31:22 +0100 Subject: change layer 3 on right thumb back to layer 1 --- keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c index cfc51a4e46..0401966005 100644 --- a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c +++ b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .-----+-----+-----! !-----+-----+-----. * ! ! | | ! | ! ! * ! CTL ! !-ALT-! !-CTL-! ! ALT ! - * |ENTER|MO(1)| TAB | !ESC |MO(3)|SPACE| + * |ENTER|MO(1)| TAB | !ESC |MO(1)|SPACE| * '-----------------' '-----------------' */ [L0] = KEYMAP( @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /*-*/ /*-*/ 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) + CTL_T(KC_ESC), MO(1), ALT_T(KC_SPACE) ), /* * .------------------------------------.------------------------------------. -- cgit v1.2.1 From edb8fcc8102ae86807b70750e57db0de9d49047c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Tr=C3=BCmper?= Date: Sat, 11 Mar 2017 11:44:39 +0100 Subject: update documentation --- .../keymaps/neo2_on_qwerz_hardware/keymap.c | 75 +++++++++--------- .../keymaps/neo2_on_qwerz_hardware/keymap.md | 90 ++++++++++++---------- 2 files changed, 86 insertions(+), 79 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c index 0401966005..ab2464c424 100644 --- a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c +++ b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c @@ -5,7 +5,7 @@ #define UM 0 #define L0 0 // layer_0 -#define L1 1 // layer_1 +#define L1 1 // layer_1 #define L2 2 // layer_2 #define L3 3 // layer_3 #define L4 4 // layer_4 @@ -14,24 +14,25 @@ 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(1)|SPACE| - * '-----------------' '-----------------' + .------------------------------------.------------------------------------. + |ESC | 1 | 2 | 3 | 4 | 5 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | Y | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | 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(1)|SPACE| + '-----------------' '-----------------' */ [L0] = KEYMAP( KC_ESC, DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, @@ -52,24 +53,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { CTL_T(KC_ESC), MO(1), 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| | - * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------' '------------------------' - * .-----------. .-----------. - * | | | ! | | - * .-----+-----+-----! !-----+-----+-----. - * ! ! | | ! | ! ! - * ! ! !-----! !-----! ! ! - * | | | | ! | | | - * '-----------------' '-----------------' + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | € | _ | [ | ] | | | | ! | < | > | = | & | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | \ | / | { | } | * |-----!-----! ? | ( | ) | - | : | @ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | # | $ | | | ~ | | | | + | % | " | ' | ; | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' */ [L1] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md index fdcc86a497..d9fcda9661 100644 --- a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md +++ b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md @@ -1,54 +1,57 @@ -# 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 +# Neo2 for ErgoDox on QWERTZ +# +# Description +This layout is ment to be used on PCs with DE-de with an additional guest keyboard. E.g. on your PC at work you can use your ergodox with neo but a second keybord is plugged in so your coworkers can enter a few signs if necessary. I live in Germany, so this is my usecase. +# Layers +[Layer0](#layer-0) +Letters, modifiers and volume -Tested with python 2.7 and python 3.4 +[Layer1](#layer-1) +Symbols +[Layer2](#layer-2) +Motion, digits and next/prev Song -# Layout Config +[Layer3](#layer-3) +F1 to F12 and mouse actions - { - "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 - } +[Layer4](#layer-4) +not used +[Layer5](#layer-5) +not used -# Layers +[Layer6](#layer-6) +not used ## Layer 0 .------------------------------------.------------------------------------. - |ESC | 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + |ESC | 1 | 2 | 3 | 4 | 5 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - |TAB | X | V | L | C | W | | | K | H | G | F | Q | SS | + |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | !-----+----+----+----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 | + |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | J |RSFT | '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - |LCTL|LGUI|LCTL|MO(3)|MO(2)| !MO(2)|MO(3)|APP |RALT|RCTL| + |LCTL|LGUI|LALT|MO(3)|MO(2)| !MO(2)|MO(3)|APP |RALT|RCTL| '------------------------' '------------------------' .-----------. .-----------. - | | | ! | | + |VOL- |VOL+ | !MUTE |PLAY | .-----+-----+-----! !-----+-----+-----. ! ! | | ! | ! ! - ! ! !-----! !-----! ! ! - |ENTER|MO(3)|LGUI | !RCTL |MO(1)|SPACE| + ! ! |-----| !-----| ! ! + ! CTL ! ! ALT ! ! CTL ! ! ALT ! + |ENTER|MO(1)| TAB | !ESC |MO(1)|SPACE| '-----------------' '-----------------' + +* Left side ESC, TAB, [SymbolLayer], Shift, Ctr, Gui(Windows key), and Alt like normal QWERTZ with neo2. +* Space on right side of left half for mous activity so you don't have to leave the mouse for Space. +* Top row of thumb keys is hard to reach for me, so I put media control on there. +* Thumb keys make use of modifier/tap. E.g. if you tap the Enter key it will be Enter. If you keep it pressed down it will be Ctr. The hold action is written on top of the tap action. +* The small middle thumb keys are not used, es well as the 1.5 sized ones on the left side of the right half. ## Layer 1 @@ -56,11 +59,11 @@ Tested with python 2.7 and python 3.4 .------------------------------------.------------------------------------. | | | | | | | | | | | | | | | !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | |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| | + | | # | $ | | | ~ | | | | + | % | " | ' | ; | | '-----+----+----+----+----+----------'----------+----+----+----+----+-----' | | | | | | ! | | | | | '------------------------' '------------------------' @@ -76,15 +79,15 @@ Tested with python 2.7 and python 3.4 ## Layer 2 .------------------------------------.------------------------------------. - | | | | | | | | | | | | | |PEQL | + | | | | | | | | | | | | | | | !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | |PGUP|BSPC| UP |DEL |PGDN| | | | 7 | 8 | 9 |PAST|PSLS | + | |PGUP|BSPC| UP |DEL |PGDN| | | | 7 | 8 | 9 | | | !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | |HOME|LEFT|DOWN|RGHT|END |-----!-----! | 4 | 5 | 6 |PMNS| | + | |HOME|LEFT|DOWN|RGHT|END |-----!-----! | 4 | 5 | 6 | | | !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | | | | | | | | | | 1 | 2 | 3 |PPLS| | + | | | |PREV|NEXT| | | | | 1 | 2 | 3 | | | '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - | | | | | | ! | |PCMM|PDOT|PENT| + | | | | | | ! | | | | | '------------------------' '------------------------' .-----------. .-----------. | | | ! | | @@ -101,11 +104,11 @@ Tested with python 2.7 and python 3.4 .------------------------------------.------------------------------------. | | F1 | F2 | F3 | F4 | F5 | F6 | | | | | | | | !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | | F7 | F8 | F9 | F10| F11| F12 | | | | | | | | + | | 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| | | | | | | | | | '-----+----+----+----+----+----------'----------+----+----+----+----+-----' | | | | | | ! | | | | | '------------------------' '------------------------' @@ -116,7 +119,10 @@ Tested with python 2.7 and python 3.4 ! ! !-----! !-----! ! ! | | | | ! | | | '-----------------' '-----------------' - +* M_A Mouse acceleration +* M_B Mouse button +* M_C Mouse cursor +* M_W Mouse wheel ## Layer 4 -- cgit v1.2.1 From e3f934ed919f75f27379dcf8b1316fa0ed8e78c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Tr=C3=BCmper?= Date: Sat, 11 Mar 2017 12:09:30 +0100 Subject: remove typo from folder name --- .../keymaps/neo2_on_qwertz_hardware/keymap.c | 408 +++++++++++++++++++++ .../keymaps/neo2_on_qwertz_hardware/keymap.md | 194 ++++++++++ .../keymaps/neo2_on_qwerz_hardware/keymap.c | 408 --------------------- .../keymaps/neo2_on_qwerz_hardware/keymap.md | 194 ---------- 4 files changed, 602 insertions(+), 602 deletions(-) create mode 100644 keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.c create mode 100644 keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.md delete mode 100644 keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c delete mode 100644 keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.c b/keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.c new file mode 100644 index 0000000000..ab2464c424 --- /dev/null +++ b/keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.c @@ -0,0 +1,408 @@ +#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 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | Y | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | 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(1)|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(1), ALT_T(KC_SPACE) +), +/* + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | € | _ | [ | ] | | | | ! | < | > | = | & | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | \ | / | { | } | * |-----!-----! ? | ( | ) | - | : | @ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | # | $ | | | ~ | | | | + | % | " | ' | ; | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + */ +[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_qwertz_hardware/keymap.md b/keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.md new file mode 100644 index 0000000000..d9fcda9661 --- /dev/null +++ b/keyboards/ergodox/keymaps/neo2_on_qwertz_hardware/keymap.md @@ -0,0 +1,194 @@ +# Neo2 for ErgoDox on QWERTZ +# +# Description +This layout is ment to be used on PCs with DE-de with an additional guest keyboard. E.g. on your PC at work you can use your ergodox with neo but a second keybord is plugged in so your coworkers can enter a few signs if necessary. I live in Germany, so this is my usecase. +# Layers +[Layer0](#layer-0) +Letters, modifiers and volume + +[Layer1](#layer-1) +Symbols + +[Layer2](#layer-2) +Motion, digits and next/prev Song + +[Layer3](#layer-3) +F1 to F12 and mouse actions + +[Layer4](#layer-4) +not used + +[Layer5](#layer-5) +not used + +[Layer6](#layer-6) +not used + + +## Layer 0 + + .------------------------------------.------------------------------------. + |ESC | 1 | 2 | 3 | 4 | 5 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | Y | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | 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(1)|SPACE| + '-----------------' '-----------------' + +* Left side ESC, TAB, [SymbolLayer], Shift, Ctr, Gui(Windows key), and Alt like normal QWERTZ with neo2. +* Space on right side of left half for mous activity so you don't have to leave the mouse for Space. +* Top row of thumb keys is hard to reach for me, so I put media control on there. +* Thumb keys make use of modifier/tap. E.g. if you tap the Enter key it will be Enter. If you keep it pressed down it will be Ctr. The hold action is written on top of the tap action. +* The small middle thumb keys are not used, es well as the 1.5 sized ones on the left side of the right half. + + +## Layer 1 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | € | _ | [ | ] | | | | ! | < | > | = | & | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | \ | / | { | } | * |-----!-----! ? | ( | ) | - | : | @ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | # | $ | | | ~ | | | | + | % | " | ' | ; | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 2 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | |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 | + '-----------------' '-----------------' + + + +## Layer 3 + + .------------------------------------.------------------------------------. + | | 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| | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' +* M_A Mouse acceleration +* M_B Mouse button +* M_C Mouse cursor +* M_W Mouse wheel + +## 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----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + diff --git a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c b/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c deleted file mode 100644 index ab2464c424..0000000000 --- a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.c +++ /dev/null @@ -1,408 +0,0 @@ -#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 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | - !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | Y | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | 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(1)|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(1), ALT_T(KC_SPACE) -), -/* - .------------------------------------.------------------------------------. - | | | | | | | | | | | | | | | - !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | | € | _ | [ | ] | | | | ! | < | > | = | & | | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | | \ | / | { | } | * |-----!-----! ? | ( | ) | - | : | @ | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | | # | $ | | | ~ | | | | + | % | " | ' | ; | | - '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------' '------------------------' - .-----------. .-----------. - | | | ! | | - .-----+-----+-----! !-----+-----+-----. - ! ! | | ! | ! ! - ! ! !-----! !-----! ! ! - | | | | ! | | | - '-----------------' '-----------------' - */ -[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 deleted file mode 100644 index d9fcda9661..0000000000 --- a/keyboards/ergodox/keymaps/neo2_on_qwerz_hardware/keymap.md +++ /dev/null @@ -1,194 +0,0 @@ -# Neo2 for ErgoDox on QWERTZ -# -# Description -This layout is ment to be used on PCs with DE-de with an additional guest keyboard. E.g. on your PC at work you can use your ergodox with neo but a second keybord is plugged in so your coworkers can enter a few signs if necessary. I live in Germany, so this is my usecase. -# Layers -[Layer0](#layer-0) -Letters, modifiers and volume - -[Layer1](#layer-1) -Symbols - -[Layer2](#layer-2) -Motion, digits and next/prev Song - -[Layer3](#layer-3) -F1 to F12 and mouse actions - -[Layer4](#layer-4) -not used - -[Layer5](#layer-5) -not used - -[Layer6](#layer-6) -not used - - -## Layer 0 - - .------------------------------------.------------------------------------. - |ESC | 1 | 2 | 3 | 4 | 5 | ´ | ` | 6 | 7 | 8 | 9 | 0 | ^ | - !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - |TAB | X | V | L | C | W |Print| | K | H | G | F | Q | ß | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | Y | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - |LSFT | ü | ö | ä | P | Z |SPACE| | B | M | , | . | 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(1)|SPACE| - '-----------------' '-----------------' - -* Left side ESC, TAB, [SymbolLayer], Shift, Ctr, Gui(Windows key), and Alt like normal QWERTZ with neo2. -* Space on right side of left half for mous activity so you don't have to leave the mouse for Space. -* Top row of thumb keys is hard to reach for me, so I put media control on there. -* Thumb keys make use of modifier/tap. E.g. if you tap the Enter key it will be Enter. If you keep it pressed down it will be Ctr. The hold action is written on top of the tap action. -* The small middle thumb keys are not used, es well as the 1.5 sized ones on the left side of the right half. - - -## Layer 1 - - .------------------------------------.------------------------------------. - | | | | | | | | | | | | | | | - !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | | € | _ | [ | ] | | | | ! | < | > | = | & | | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | | \ | / | { | } | * |-----!-----! ? | ( | ) | - | : | @ | - !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! - | | # | $ | | | ~ | | | | + | % | " | ' | ; | | - '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------' '------------------------' - .-----------. .-----------. - | | | ! | | - .-----+-----+-----! !-----+-----+-----. - ! ! | | ! | ! ! - ! ! !-----! !-----! ! ! - | | | | ! | | | - '-----------------' '-----------------' - - -## Layer 2 - - .------------------------------------.------------------------------------. - | | | | | | | | | | | | | | | - !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! - | |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 | - '-----------------' '-----------------' - - - -## Layer 3 - - .------------------------------------.------------------------------------. - | | 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| | | | | | | | | | - '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------' '------------------------' - .-----------. .-----------. - | | | ! | | - .-----+-----+-----! !-----+-----+-----. - ! ! | | ! | ! ! - ! ! !-----! !-----! ! ! - | | | | ! | | | - '-----------------' '-----------------' -* M_A Mouse acceleration -* M_B Mouse button -* M_C Mouse cursor -* M_W Mouse wheel - -## 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----+----+----+-----! - | | | | | | | | | | | | | | | - '-----+----+----+----+----+----------'----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------' '------------------------' - .-----------. .-----------. - | | | ! | | - .-----+-----+-----! !-----+-----+-----. - ! ! | | ! | ! ! - ! ! !-----! !-----! ! ! - | | | | ! | | | - '-----------------' '-----------------' - -- cgit v1.2.1 From e66b31a648080ec7dde4a265014bf71dfd6a4114 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Sat, 11 Mar 2017 12:22:38 +0100 Subject: [deadcyclo layout] Added second unicode layer, more sane layer switches --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 79488 -> 97053 bytes .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 62258 -> 66254 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 58886 -> 0 bytes .../deadcyclo/images/deadcyclo-layer-3-unicode.png | Bin 0 -> 73624 bytes .../images/deadcyclo-layer-4-unicode-2.png | Bin 0 -> 66132 bytes keyboards/ergodox/keymaps/deadcyclo/keymap.c | 84 ++++++++++++++++----- keyboards/ergodox/keymaps/deadcyclo/readme.md | 9 ++- 7 files changed, 73 insertions(+), 20 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-unicode.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-4-unicode-2.png (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png index 2c03af5818..273a49778e 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png index a267ff23d2..798952aa91 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png deleted file mode 100644 index c8c90cf5c4..0000000000 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-unicode.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-unicode.png new file mode 100644 index 0000000000..0c6473abbd Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-unicode.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-4-unicode-2.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-4-unicode-2.png new file mode 100644 index 0000000000..4488e1b37b Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-4-unicode-2.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/keymap.c b/keyboards/ergodox/keymaps/deadcyclo/keymap.c index 5774511cc7..243ce94e98 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/keymap.c +++ b/keyboards/ergodox/keymaps/deadcyclo/keymap.c @@ -5,8 +5,9 @@ #define BASE 0 // default layer #define SYMB 1 // symbols -#define MDIA 2 // media keys -#define NAVG 3 // navigation +#define MDIA 2 // media keys and navigation +#define UNI 3 // unicode 1 +#define UNI2 4 // unicode 2 enum macros { RUN @@ -94,11 +95,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | Esc/L3 | 1 | 2 | 3 | 4 | 5 | 6 | | 6 | 7 | 8 | 9 | 0 | - | =/L3 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Tab/L1 | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \/L1 | + * | Tab/L1 | Q | W | E | R | T | L1 | | L2 | Y | U | I | O | P | \/L1 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LCtrl | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ctrl/'| + * | LCtrl | A | S | D | F | G |------| |------| H | J | K | L | ; | ctrl/'| * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * | LShift |Z / L4|X / L2| C | V | B | | | | N | M | , |. / L2|/ / L4| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * |Grv/L1| UNI |AltShf| Lalt | Ralt | | Lalt | Ralt | LEAD | UNI | ~/L1 | * `----------------------------------' `----------------------------------' @@ -114,25 +115,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - LT(NAVG,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + LT(UNI,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, LT(SYMB,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_LCTL, LT(MDIA, KC_A), KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, LT(4, KC_Z), LT(MDIA, KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), LT(SYMB,KC_GRV),LCTL(LSFT(KC_U)), LALT(KC_LSFT), KC_RALT,KC_LALT, ALT_T(KC_APP), KC_HOME, KC_END, KC_SPC,KC_TAB,KC_LBRC, // right hand - KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, LT(NAVG,KC_EQL), - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),CTL_T(KC_QUOT), - MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, LT(UNI,KC_EQL), + TG(MDIA), KC_Y, KC_U, KC_I, KC_O, KC_P, LT(SYMB, KC_BSLS), + KC_H, KC_J, KC_K, KC_L, KC_SCLN,CTL_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,LT(MDIA, KC_DOT), LT(UNI2, KC_SLSH), KC_RSFT, KC_LALT, KC_RALT,KC_LEAD,LCTL(LSFT(KC_U)), LT(SYMB,KC_TILD), KC_PGUP, KC_INS, KC_PGDN, - KC_RBRC,KC_BSPC, KC_ENT + KC_RBRC,KC_BSPC, KC_ENT ), -/* Keymap 1: Symbol Layer LCTL(LSFT(KC_U)) +/* Keymap 1: Symbol Layer LCTL(LSFT(KC_U)) * * ,--------------------------------------------------. ,--------------------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | F6 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | @@ -177,13 +178,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 2: Media, mouse and navigation * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | gg(1)| | | | | | | | | | | | | | + * | | gg(1)| gg(2)| gg(3)| gg(4)| gg(5)| gg(6)| | gg(6)| gg(7)| gg(8)| gg(9)| gg(0)| | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | | | MsUp | RUN | | | | | | | Up | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | |MsLeft|MsDown|MsRght| |------| |------| | Left | Down | Right| | Play | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | + * | | | | | | | | | | | Prev | Next | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | * `----------------------------------' `----------------------------------' @@ -209,7 +210,7 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, F(I3_GO_GROUP_6), F(I3_GO_GROUP_7), F(I3_GO_GROUP_8), F(I3_GO_GROUP_9), F(I3_GO_GROUP_10), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -238,7 +239,7 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, * `--------------------' `--------------------' */ // Unicode -[NAVG] = KEYMAP( +[UNI] = KEYMAP( KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), KC_TRNS, F(EMOJI_SHRUG), F(EMOJI_YAY), F(EMOJI_HUG), F(EMOJI_SMILE), F(EMOJI_SMILE2), KC_TRNS, KC_TRNS, F(EMOJI_HMM1), F(EMOJI_HMM2), F(EMOJI_BEAR1), F(EMOJI_BEAR2), F(EMOJI_FUU), @@ -257,6 +258,48 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), + +/* Keymap 4: Unicode 2 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | ¹ | ² | ³ | ⁴ | ⁵ | ⁶ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | ℃ | ™ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ₁ | ₂ | ₃ | ₄ | ₅ | ₆ | | ₆ | ₇ | ₈ | ₉ | ₀ | ⁄ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | ⅞ | ⅝ | ⅜ | ⅛ | ⅚ |------| |------| ⅓ | ⅒ | ⅑ | ⅐ | ¾ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | ⅗ | ⅖ | ⅕ | ⅔ | | ¼ | ⅙ | ⅘ | ½ | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Unicode 2 +[UNI2] = KEYMAP( + KC_TRNS, UC(0x00b9), UC(0x00b2), UC(0x00b3), UC(0x2074), UC(0x2075), UC(0x2076), + KC_TRNS, UC(0x2081), UC(0x2082), UC(0x2083), UC(0x2084), UC(0x2085), UC(0x2086), + KC_TRNS, UC(0x215e), UC(0x215d), UC(0x215c), UC(0x215b), UC(0x215a), + KC_TRNS, KC_TRNS, KC_TRNS, UC(0x2157), UC(0x2156), UC(0x2155), UC(0x2154), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + UC(0x2076), UC(0x2077), UC(0x2078), UC(0x2079), UC(0x2070), UC(0x2103), UC(0x2122), + UC(0x2086), UC(0x2087), UC(0x2088), UC(0x2089), UC(0x2080), UC(0x2044), KC_TRNS, + UC(0x2153), UC(0x2152), UC(0x2151), UC(0x2150), UC(0x00be), KC_TRNS, + UC(0x00bc), UC(0x2159), UC(0x2158), UC(0x00bd), KC_TRNS, KC_TRNS, 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[] = { @@ -506,8 +549,11 @@ void matrix_scan_user(void) { #endif break; case 4: - ergodox_right_led_1_on(); // TODO: Make a fourth layer + ergodox_right_led_1_on(); ergodox_right_led_3_on(); + #ifdef RGBLIGHT_ENABLE + rgblight_setrgb(0xff,0x00,0xff); + #endif break; default: // none diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index fa41f0ec16..c839f99c90 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -51,10 +51,16 @@ provides standard media control keys, and default arrow keys. ## Layer 3 - Unicode -[![Layer 3 - Unicode](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) +[![Layer 3 - Unicode](images/deadcyclo-layer-3-unicode.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) The unicode layer provides keys for directly typing unicode (utf-8) +## Layer 4 - Unicode 2 + +[![Layer 43 - Unicode](images/deadcyclo-layer-4-unicode-2.png)](http://www.keyboard-layout-editor.com/#/gists/7b2241110ab8311d9668a0798f3baf4a) + +The unicode 2 layer provides keys for directly typing unicode (utf-8) + # Changelog - 02.01.2017 Added delete key on second layer @@ -63,6 +69,7 @@ The unicode layer provides keys for directly typing unicode (utf-8) - 24.01.2017 Added unicode keys. Added shrug hug and yay. Moved Navigation to layer 2 - 25.01.2017 Added lots of new emojis and some unicode keys - 27.01.2017 Added new unicode keys and shortcut for ibus unicode composer key (CTRL+SHIFT+U) +- 11.03.2017 Added additional unicode layer. Moved some layer switch keys to more sane locations # TODO -- cgit v1.2.1 From 0d71e631ed5f06b28a83528ed4de3c0f7f90d1ea Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Sat, 11 Mar 2017 12:27:46 +0100 Subject: [deadcyclo layout] fix an error in layer illustration --- .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 66254 -> 65740 bytes 1 file changed, 0 insertions(+), 0 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png index 798952aa91..5930e38aca 100644 Binary files a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ -- cgit v1.2.1 From 2e34d4bd85cc748c48e907154ea438f3d9653430 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Wed, 15 Mar 2017 10:57:24 -0400 Subject: update for infinity --- keyboards/ergodox/keymaps/guni/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/guni/keymap.c b/keyboards/ergodox/keymaps/guni/keymap.c index f33829b8a4..9d9191f627 100644 --- a/keyboards/ergodox/keymaps/guni/keymap.c +++ b/keyboards/ergodox/keymaps/guni/keymap.c @@ -170,7 +170,7 @@ void action_function(keyrecord_t *event, uint8_t id, uint8_t opt) if (id == TEENSY_KEY) { clear_keyboard(); print("\n\nJump to bootloader... "); - _delay_ms(250); + wait_ms(250); bootloader_jump(); // should not return print("not supported.\n"); } -- cgit v1.2.1 From b6b85ed41397440417106309bcf2b7ef2b617976 Mon Sep 17 00:00:00 2001 From: mattdibi Date: Tue, 28 Mar 2017 09:56:07 +0200 Subject: Added italian layout --- keyboards/ergodox/keymaps/italian/L0.PNG | Bin 0 -> 152470 bytes keyboards/ergodox/keymaps/italian/L1.PNG | Bin 0 -> 130416 bytes keyboards/ergodox/keymaps/italian/L2.PNG | Bin 0 -> 126006 bytes keyboards/ergodox/keymaps/italian/keymap.c | 223 ++++++++++++++++++++++++++++ keyboards/ergodox/keymaps/italian/readme.md | 15 ++ 5 files changed, 238 insertions(+) create mode 100644 keyboards/ergodox/keymaps/italian/L0.PNG create mode 100644 keyboards/ergodox/keymaps/italian/L1.PNG create mode 100644 keyboards/ergodox/keymaps/italian/L2.PNG create mode 100644 keyboards/ergodox/keymaps/italian/keymap.c create mode 100644 keyboards/ergodox/keymaps/italian/readme.md (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/italian/L0.PNG b/keyboards/ergodox/keymaps/italian/L0.PNG new file mode 100644 index 0000000000..491a4f3883 Binary files /dev/null and b/keyboards/ergodox/keymaps/italian/L0.PNG differ diff --git a/keyboards/ergodox/keymaps/italian/L1.PNG b/keyboards/ergodox/keymaps/italian/L1.PNG new file mode 100644 index 0000000000..17c5ffc67b Binary files /dev/null and b/keyboards/ergodox/keymaps/italian/L1.PNG differ diff --git a/keyboards/ergodox/keymaps/italian/L2.PNG b/keyboards/ergodox/keymaps/italian/L2.PNG new file mode 100644 index 0000000000..c0aa9e9d38 Binary files /dev/null and b/keyboards/ergodox/keymaps/italian/L2.PNG differ diff --git a/keyboards/ergodox/keymaps/italian/keymap.c b/keyboards/ergodox/keymaps/italian/keymap.c new file mode 100644 index 0000000000..e4c7a569cb --- /dev/null +++ b/keyboards/ergodox/keymaps/italian/keymap.c @@ -0,0 +1,223 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + RGB_SLD +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | \ | 1 | 2 | 3 | 4 | 5 | ESC | | T2 | 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | TT1 | | TT1 | Y | U | I | O | P | è | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps | A | S | D | F | G |------| |------| H | J | K | L | ò | à | + * |--------+------+------+------+------+------| Alt | | Alt |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | ù |-/RShift| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + } + return MACRO_NONE; +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // dynamically generate these. + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + case RGB_SLD: + if (record->event.pressed) { + #ifdef RGBLIGHT_ENABLE + rgblight_mode(1); + #endif + } + return false; + break; + } + return true; +} + +// 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) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/italian/readme.md b/keyboards/ergodox/keymaps/italian/readme.md new file mode 100644 index 0000000000..979ce0f5b8 --- /dev/null +++ b/keyboards/ergodox/keymaps/italian/readme.md @@ -0,0 +1,15 @@ +# ErgoDox EZ Default Configuration + +## Changelog + +* Dec 2016: + * Added LED keys + * Refreshed layout graphic, comes from http://configure.ergodox-ez.com now. +* Sep 22, 2016: + * Created a new key in layer 1 (bottom-corner key) that resets the EEPROM. +* Feb 2, 2016 (V1.1): + * Made the right-hand quote key double as Cmd/Win on hold. So you get ' when you tap it, " when you tap it with Shift, and Cmd or Win when you hold it. You can then use it as a modifier, or just press and hold it for a moment (and then let go) to send a single Cmd or Win keystroke (handy for opening the Start menu on Windows). + +This is what we ship with out of the factory. :) The image says it all: + +![Default](default_firmware_v1.2-2.png) -- cgit v1.2.1 From 512eb5e1d5edd39e3e46f8201b57d8fd17084408 Mon Sep 17 00:00:00 2001 From: mattdibi Date: Tue, 28 Mar 2017 10:10:24 +0200 Subject: Updated readme --- keyboards/ergodox/keymaps/italian/readme.md | 79 +++++++++++++++++++++++++---- 1 file changed, 68 insertions(+), 11 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/italian/readme.md b/keyboards/ergodox/keymaps/italian/readme.md index 979ce0f5b8..f9d012135a 100644 --- a/keyboards/ergodox/keymaps/italian/readme.md +++ b/keyboards/ergodox/keymaps/italian/readme.md @@ -1,15 +1,72 @@ -# ErgoDox EZ Default Configuration +# ErgoDox Italian layout -## Changelog +## Layer 0 +```sh + + ,--------------------------------------------------. ,--------------------------------------------------. + | \ | 1 | 2 | 3 | 4 | 5 | ESC | | T2 | 6 | 7 | 8 | 9 | 0 | ' | + |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + | Tab | Q | W | E | R | T | TT1 | | TT1 | Y | U | I | O | P | è | + |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + | Caps | A | S | D | F | G |------| |------| H | J | K | L | ò | à | + |--------+------+------+------+------+------| Alt | | Alt |------+------+------+------+------+--------| + | LShift | Z | X | C | V | B | | | | N | M | , | . | ù |-/RShift| + `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | Date: Tue, 28 Mar 2017 10:13:29 +0200 Subject: Fixed italian kymap readme --- keyboards/ergodox/keymaps/italian/readme.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/italian/readme.md b/keyboards/ergodox/keymaps/italian/readme.md index f9d012135a..75dd3c29d7 100644 --- a/keyboards/ergodox/keymaps/italian/readme.md +++ b/keyboards/ergodox/keymaps/italian/readme.md @@ -1,7 +1,7 @@ # ErgoDox Italian layout ## Layer 0 -```sh +``` ,--------------------------------------------------. ,--------------------------------------------------. | \ | 1 | 2 | 3 | 4 | 5 | ESC | | T2 | 6 | 7 | 8 | 9 | 0 | ' | @@ -24,7 +24,7 @@ ``` ## Layer 1 -```sh +``` ,--------------------------------------------------. ,--------------------------------------------------. |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | @@ -47,7 +47,7 @@ ``` ## Layer 1 -```sh +``` ,--------------------------------------------------. ,--------------------------------------------------. | | | | | | | | | | | | | | | | -- cgit v1.2.1 From 221b27c508b3870de725e720222a6281770b5f98 Mon Sep 17 00:00:00 2001 From: mattdibi Date: Tue, 28 Mar 2017 10:15:18 +0200 Subject: Fixed layout title in ergodox ez italian keymap --- keyboards/ergodox/keymaps/italian/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/italian/readme.md b/keyboards/ergodox/keymaps/italian/readme.md index 75dd3c29d7..215c24a5af 100644 --- a/keyboards/ergodox/keymaps/italian/readme.md +++ b/keyboards/ergodox/keymaps/italian/readme.md @@ -46,7 +46,7 @@ `--------------------' `--------------------' ``` -## Layer 1 +## Layer 2 ``` ,--------------------------------------------------. ,--------------------------------------------------. -- cgit v1.2.1 From 2104900030c4a0d0a5d71c9900804dec229a375d Mon Sep 17 00:00:00 2001 From: mattdibi Date: Tue, 28 Mar 2017 10:19:25 +0200 Subject: Removed images from ergodox ez italian layout --- keyboards/ergodox/keymaps/italian/L0.PNG | Bin 152470 -> 0 bytes keyboards/ergodox/keymaps/italian/L1.PNG | Bin 130416 -> 0 bytes keyboards/ergodox/keymaps/italian/L2.PNG | Bin 126006 -> 0 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/italian/L0.PNG delete mode 100644 keyboards/ergodox/keymaps/italian/L1.PNG delete mode 100644 keyboards/ergodox/keymaps/italian/L2.PNG (limited to 'keyboards/ergodox/keymaps') diff --git a/keyboards/ergodox/keymaps/italian/L0.PNG b/keyboards/ergodox/keymaps/italian/L0.PNG deleted file mode 100644 index 491a4f3883..0000000000 Binary files a/keyboards/ergodox/keymaps/italian/L0.PNG and /dev/null differ diff --git a/keyboards/ergodox/keymaps/italian/L1.PNG b/keyboards/ergodox/keymaps/italian/L1.PNG deleted file mode 100644 index 17c5ffc67b..0000000000 Binary files a/keyboards/ergodox/keymaps/italian/L1.PNG and /dev/null differ diff --git a/keyboards/ergodox/keymaps/italian/L2.PNG b/keyboards/ergodox/keymaps/italian/L2.PNG deleted file mode 100644 index c0aa9e9d38..0000000000 Binary files a/keyboards/ergodox/keymaps/italian/L2.PNG and /dev/null differ -- cgit v1.2.1