From f284bc6af9995453fc7be2e94ae134bc42b90204 Mon Sep 17 00:00:00 2001 From: Jonathan Arnett Date: Sun, 9 Oct 2016 11:36:52 -0400 Subject: Switched to momentary Also updated the style of these lines slightly to match the style of the default keymap --- keyboards/ergodox/keymaps/j3rn/keymap.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/ergodox/keymaps/j3rn/keymap.c b/keyboards/ergodox/keymaps/j3rn/keymap.c index e6f6cf44ec..d913ea4a5e 100644 --- a/keyboards/ergodox/keymaps/j3rn/keymap.c +++ b/keyboards/ergodox/keymaps/j3rn/keymap.c @@ -36,21 +36,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MINS, CTL_T(KC_ESC), 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_FN1, KC_LALT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + MO(SYMB), KC_LALT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, ALT_T(KC_APP), KC_HOME, KC_END, - KC_SPC, KC_LGUI, KC_FN2, + KC_SPC,KC_LGUI,MO(MDIA), // right hand KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_EQL, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, MO(SYMB), - KC_PGUP, CTL_T(KC_ESC), + KC_PGUP, CTL_T(KC_ESC), KC_PGDN, - KC_FN1, KC_TAB, KC_ENT + MO(SYMB),KC_TAB, KC_ENT ), /* Keymap 1: Symbol Layer * -- cgit v1.2.1 From 28dfaa20f51eae0f0f3f433401f054b9fbb3eb6d Mon Sep 17 00:00:00 2001 From: twentylives Date: Tue, 18 Oct 2016 22:27:36 +0300 Subject: adding dvorak hebrew layout --- keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c | 225 +++++++++++++++++++++ keyboards/ergodox/keymaps/dvorak-hebrew/readme.md | 5 + .../ergodox/keymaps/dvorak-hebrew/twentylives.png | Bin 0 -> 124212 bytes 3 files changed, 230 insertions(+) create mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c create mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/readme.md create mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c b/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c new file mode 100644 index 0000000000..f3dc8c387d --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c @@ -0,0 +1,225 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define HEB 1 // Hebrew-Dvorak +#define NUM 2 // symbols +#define NAV 3 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic Dvorak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Hebrew | 1 | 2 | 3 | 4 | 5 |ALT+S | |B.tick| 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TAB | ' | , | . | P | Y | LCK2 | | | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| LCK1 | | |------+------+------+------+------+--------| + * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RSHIFT | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |FN2 | COPY | CUT | PASTE| FN1 | | [ | ] | \ | UNDO | CTRL+A | + * `----------------------------------' `------------------------------------' + * ,-------------. ,-------------. +* | DEL | WIN+D| | END | HOME | + * ,------|------|------| |------+--------+------. + * | | | SUPER| | PgUp | | | + * | BACK | CTRL |------| |------| Enter |SPACE | + * | SPACE| | ALT | | PgDn | | | + * `--------------------' `----------------------' + */ +[BASE] = KEYMAP( // layer 0 : default + // left hand + TG(HEB), KC_1, KC_2, KC_3, KC_4, KC_5, LALT(KC_LSFT), + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(NUM), + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, TG(NAV), + MO(NUM), LCTL(KC_C), LCTL(KC_X), LCTL(KC_V), MO(NAV), + KC_DEL, KC_TRNS, + KC_LGUI, + KC_BSPC, KC_LCTL, KC_LALT, + // right hand + KC_GRV, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_TRNS, 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_TRNS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LBRC, KC_RBRC, KC_BSLS, LCTL(KC_Z), LCTL(KC_A), + KC_END, KC_HOME, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ), +/* Keymap 1: Hebrew Dvorak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Hebrew | 1 | 2 | 3 | 4 | 5 |ALT+S | |B.tick| 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TAB | ' | , | . | P | Y | LCK2 | | | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| LCK1 | | |------+------+------+------+------+--------| + * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RSHIFT | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |FN2 | COPY | CUT | PASTE| FN1 | | [ | ] | \ | UNDO | CTRL+A | + * `----------------------------------' `------------------------------------' + * ,-------------. ,-------------. +* | DEL | WIN+D| | END | HOME | + * ,------|------|------| |------+--------+------. + * | | | SUPER| | PgUp | | | + * | BACK | CTRL |------| |------| Enter |SPACE | + * | SPACE| | ALT | | PgDn | | | + * `--------------------' `----------------------' + */ +[HEB] = KEYMAP( // layer 0 : default + // left hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_W, KC_QUOT, KC_SLSH, 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_E, KC_O, KC_P, KC_TRNS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_MPLY, + KC_TRNS, KC_N, KC_M, KC_COMM, KC_DOT, 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 + ), + /* Keymap 2: Numpad Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | NMLK | P/ | P* | P- | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | P+ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | P+ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | ENTER| | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | 0 | . | ENTER| | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUM] = 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, + // right hand + KC_TRNS, KC_TRNS, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_TRNS, + KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, KC_TRNS, + KC_P0, KC_P0, KC_DOT, KC_PENT, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 3: Arrows and Mouse Navigation Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | MUTE | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | F11 | | VOL | | | UP | | | | + * |--------+------+------+------+------+------| | | + |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | LEFT | DOWN | RIGHT| | | + * |--------+------+------+------+------+------| F12 | | VOL |------+------+------+------+------+--------| + * | | | | | | | | | - | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Lclk | Rclk | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | PL/PS| | + * ,------|------|------| |------+------+------. + * | | | | | NEXT | | | + * | | |------| |------| | | + * | | | | | PREV | | | + * `--------------------' `--------------------' + */ +[NAV] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_F11, + 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_F12, + 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_MUTE, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_VOLU, 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_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MPLY, KC_TRNS, + KC_MNXT, + KC_MPRV, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(NAV) // 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) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + case 3: + ergodox_right_led_3_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md new file mode 100644 index 0000000000..18c99dcfd5 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md @@ -0,0 +1,5 @@ +#Dvorak-Hebrew + +*This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. +*The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. +*these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use 'hebrew-hw-dvorak' as os layout. diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png b/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png new file mode 100644 index 0000000000..904391f222 Binary files /dev/null and b/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png differ -- cgit v1.2.1 From 31193b9cffb25464c4fe4dbaf0dd8ee1dfa0a191 Mon Sep 17 00:00:00 2001 From: 20lives Date: Tue, 18 Oct 2016 22:33:42 +0300 Subject: Update readme.md --- keyboards/ergodox/keymaps/dvorak-hebrew/readme.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md index 18c99dcfd5..edb52d6adf 100644 --- a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md +++ b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md @@ -1,5 +1,7 @@ #Dvorak-Hebrew *This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. + *The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. -*these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use 'hebrew-hw-dvorak' as os layout. + +these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. -- cgit v1.2.1 From 48eb5112b5972472ce8da735a50b9631029af001 Mon Sep 17 00:00:00 2001 From: 20lives Date: Tue, 18 Oct 2016 22:35:05 +0300 Subject: Update readme.md --- keyboards/ergodox/keymaps/dvorak-hebrew/readme.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md index edb52d6adf..9f0b45371e 100644 --- a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md +++ b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md @@ -1,7 +1,9 @@ #Dvorak-Hebrew -*This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. +* This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. -*The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. +* The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. -these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. +* these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. + +![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png?raw=true) -- cgit v1.2.1 From 65c1127b4906d7ea691529ebf779b57039622b65 Mon Sep 17 00:00:00 2001 From: twentylives Date: Wed, 19 Oct 2016 20:23:10 +0300 Subject: update pics and readme --- keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c | 225 --------------------- keyboards/ergodox/keymaps/dvorak-hebrew/readme.md | 9 - .../ergodox/keymaps/dvorak-hebrew/twentylives.png | Bin 124212 -> 0 bytes .../twentylives_dvorak_with_hebrew/keymap.c | 213 +++++++++++++++++++ .../twentylives_dvorak_with_hebrew/keymap.png | Bin 0 -> 119825 bytes .../twentylives_dvorak_with_hebrew/keymap2.png | Bin 0 -> 292705 bytes .../twentylives_dvorak_with_hebrew/readme.md | 10 + 7 files changed, 223 insertions(+), 234 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c delete mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/readme.md delete mode 100644 keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png create mode 100644 keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c create mode 100644 keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.png create mode 100644 keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap2.png create mode 100644 keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c b/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c deleted file mode 100644 index f3dc8c387d..0000000000 --- a/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.c +++ /dev/null @@ -1,225 +0,0 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" - -#define BASE 0 // default layer -#define HEB 1 // Hebrew-Dvorak -#define NUM 2 // symbols -#define NAV 3 // media keys - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic Dvorak layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | Hebrew | 1 | 2 | 3 | 4 | 5 |ALT+S | |B.tick| 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | ' | , | . | P | Y | LCK2 | | | F | G | C | R | L | / | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| LCK1 | | |------+------+------+------+------+--------| - * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RSHIFT | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |FN2 | COPY | CUT | PASTE| FN1 | | [ | ] | \ | UNDO | CTRL+A | - * `----------------------------------' `------------------------------------' - * ,-------------. ,-------------. -* | DEL | WIN+D| | END | HOME | - * ,------|------|------| |------+--------+------. - * | | | SUPER| | PgUp | | | - * | BACK | CTRL |------| |------| Enter |SPACE | - * | SPACE| | ALT | | PgDn | | | - * `--------------------' `----------------------' - */ -[BASE] = KEYMAP( // layer 0 : default - // left hand - TG(HEB), KC_1, KC_2, KC_3, KC_4, KC_5, LALT(KC_LSFT), - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(NUM), - KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, TG(NAV), - MO(NUM), LCTL(KC_C), LCTL(KC_X), LCTL(KC_V), MO(NAV), - KC_DEL, KC_TRNS, - KC_LGUI, - KC_BSPC, KC_LCTL, KC_LALT, - // right hand - KC_GRV, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, - KC_TRNS, 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_TRNS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, - KC_LBRC, KC_RBRC, KC_BSLS, LCTL(KC_Z), LCTL(KC_A), - KC_END, KC_HOME, - KC_PGUP, - KC_PGDN, KC_ENT, KC_SPC - ), -/* Keymap 1: Hebrew Dvorak layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | Hebrew | 1 | 2 | 3 | 4 | 5 |ALT+S | |B.tick| 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | ' | , | . | P | Y | LCK2 | | | F | G | C | R | L | / | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| LCK1 | | |------+------+------+------+------+--------| - * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RSHIFT | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |FN2 | COPY | CUT | PASTE| FN1 | | [ | ] | \ | UNDO | CTRL+A | - * `----------------------------------' `------------------------------------' - * ,-------------. ,-------------. -* | DEL | WIN+D| | END | HOME | - * ,------|------|------| |------+--------+------. - * | | | SUPER| | PgUp | | | - * | BACK | CTRL |------| |------| Enter |SPACE | - * | SPACE| | ALT | | PgDn | | | - * `--------------------' `----------------------' - */ -[HEB] = KEYMAP( // layer 0 : default - // left hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_W, KC_QUOT, KC_SLSH, 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_E, KC_O, KC_P, KC_TRNS, - KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_MPLY, - KC_TRNS, KC_N, KC_M, KC_COMM, KC_DOT, 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 - ), - /* Keymap 2: Numpad Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | NMLK | P/ | P* | P- | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | 7 | 8 | 9 | P+ | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | 4 | 5 | 6 | P+ | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | 1 | 2 | 3 | ENTER| | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | 0 | 0 | . | ENTER| | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -[NUM] = 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, - // right hand - KC_TRNS, KC_TRNS, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_TRNS, - KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, KC_TRNS, - KC_P0, KC_P0, KC_DOT, KC_PENT, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 3: Arrows and Mouse Navigation Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | MUTE | F6 | F7 | F8 | F9 | F10 | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | F11 | | VOL | | | UP | | | | - * |--------+------+------+------+------+------| | | + |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | LEFT | DOWN | RIGHT| | | - * |--------+------+------+------+------+------| F12 | | VOL |------+------+------+------+------+--------| - * | | | | | | | | | - | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | Lclk | Rclk | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | PL/PS| | - * ,------|------|------| |------+------+------. - * | | | | | NEXT | | | - * | | |------| |------| | | - * | | | | | PREV | | | - * `--------------------' `--------------------' - */ -[NAV] = KEYMAP( - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_F11, - 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_F12, - 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_MUTE, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, - KC_VOLU, 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_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, - KC_MPLY, KC_TRNS, - KC_MNXT, - KC_MPRV, KC_TRNS, KC_TRNS -), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(NAV) // 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) { - // TODO: Make this relevant to the ErgoDox EZ. - case 1: - ergodox_right_led_1_on(); - break; - case 2: - ergodox_right_led_2_on(); - break; - case 3: - ergodox_right_led_3_on(); - break; - default: - // none - break; - } - -}; diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md b/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md deleted file mode 100644 index 9f0b45371e..0000000000 --- a/keyboards/ergodox/keymaps/dvorak-hebrew/readme.md +++ /dev/null @@ -1,9 +0,0 @@ -#Dvorak-Hebrew - -* This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. - -* The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. - -* these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. - -![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png?raw=true) diff --git a/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png b/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png deleted file mode 100644 index 904391f222..0000000000 Binary files a/keyboards/ergodox/keymaps/dvorak-hebrew/twentylives.png and /dev/null differ diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c new file mode 100644 index 0000000000..ae0e9c87e7 --- /dev/null +++ b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c @@ -0,0 +1,213 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + +/* Keymap 0: Basic Dvorak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Hebrew | 1 | 2 | 3 | 4 | 5 |ALT+S | |B.tick| 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TAB | ' | , | . | P | Y | LCK2 | | | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| LCK1 | | |------+------+------+------+------+--------| + * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RSHIFT | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |FN2 | COPY | CUT | PASTE| FN1 | | [ | ] | \ | UNDO | CTRL+A | + * `----------------------------------' `------------------------------------' + * ,-------------. ,-------------. +* | DEL | | | END | HOME | + * ,------|------|------| |------+--------+------. + * | | | SUPER| | PgUp | | | + * | BACK | CTRL |------| |------| Enter |SPACE | + * | SPACE| | ALT | | PgDn | | | + * `--------------------' `----------------------' + */ +[0] = KEYMAP( + TG(1), KC_1, KC_2, KC_3, KC_4, KC_5, LALT(KC_LSHIFT), + KC_TAB, KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, TG(3), + KC_ESCAPE, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSHIFT, KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, TG(2), + MO(3), KC_COPY, KC_CUT, KC_PASTE, MO(2), + KC_DELETE, KC_TRNS, + KC_LGUI, + KC_BSPACE,CTL_T(KC_NO),KC_LALT, + + KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLASH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINUS, + KC_TRNS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSHIFT, + KC_LBRACKET, KC_RBRACKET, KC_BSLASH, KC_UNDO, LCTL(KC_A), + KC_END, KC_HOME, + KC_PGUP, + KC_PGDOWN, KC_ENTER, KC_SPACE +), + + /* Keymap 1: Hebrew layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[1] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_W, KC_QUOTE, KC_SLASH, 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, + + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_Y, KC_U, KC_E, KC_O, KC_P, KC_TRNS, + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_TRNS, + KC_TRNS, KC_N, KC_M, KC_COMMA, KC_DOT, 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 +), + +/* Keymap 2: Arrows ,Mouse Navigation and F Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | F11 | | | UP | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | LEFT | DOWN | RIGHT| | | + * |--------+------+------+------+------+------| | | F12 |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Lclk | Rclk | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[2] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_LEFT, KC_MS_DOWN, 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_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_F11, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, + KC_F12, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MS_BTN1, KC_MS_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + /* Keymap 3: Numpad Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | NMLK | P/ | P* | P- | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | P+ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | P+ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | ENTER| | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | 0 | . | ENTER| | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[3] = 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, + // Right Hand + KC_TRNS, KC_TRNS, KC_LOCKING_NUM, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_TRNS, + KC_TRNS, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_KP_1, KC_KP_2, KC_KP_3, KC_ENTER, KC_TRNS, + KC_KP_0, KC_KP_0, KC_KP_DOT, KC_ENTER, 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(1) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + } + return MACRO_NONE; +}; + +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(); + default: + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.png b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.png new file mode 100644 index 0000000000..82c81dcaed Binary files /dev/null and b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.png differ diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap2.png b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap2.png new file mode 100644 index 0000000000..ec8e7494d4 Binary files /dev/null and b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap2.png differ diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md new file mode 100644 index 0000000000..071472fd4f --- /dev/null +++ b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md @@ -0,0 +1,10 @@ +#Dvorak-Hebrew + +* This layout solves the problem of Dvorak Keyboard with OS QWERTY, which when you change to hebrew all the letters scrumble, the second layer is the Hebrew (top left button), which you can use on any computer, Plug and play. + +* The Hebrew layout itself solve another problem with the different locations of punctuation on Dvorak/Hebrew with few minor changes, it's based on Yuval Rabinovich's layout which you can find here : http://heboard.wordpress.com for regular QWERTY keyboards and for other operation systems. + +* these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. + +![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.png) +![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/keymap2.png) -- cgit v1.2.1 From 464af700eb8c5cc8dd72f36767cc2c0b975a9284 Mon Sep 17 00:00:00 2001 From: 20lives Date: Wed, 19 Oct 2016 20:26:58 +0300 Subject: fix readme --- keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md index 071472fd4f..99b8182f59 100644 --- a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md +++ b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/readme.md @@ -6,5 +6,5 @@ * these are only good when using a public computer or one you can't change settings on, because you need to change both keyboard layout and os layout each time you change language. A better solution is to use [hebrew-hw-dvorak](https://github.com/20lives/hebrew-hw-dvorak) as os layout. -![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/keymap.png) -![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/dvorak-hebrew/keymap2.png) +![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.png) +![layout image](https://github.com/20lives/qmk_firmware/blob/master/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap2.png) -- cgit v1.2.1 From 7090c99adfef29863b0c114c55003c4b7fa77a6a Mon Sep 17 00:00:00 2001 From: twentylives Date: Thu, 20 Oct 2016 11:07:14 +0300 Subject: fixed base layer = key --- keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c index ae0e9c87e7..720714c984 100644 --- a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c +++ b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_BSPACE,CTL_T(KC_NO),KC_LALT, - KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQUAL, KC_TRNS, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLASH, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINUS, KC_TRNS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSHIFT, -- cgit v1.2.1 From 8727976a1a6d0a1e6749f093828b23265c59a39a Mon Sep 17 00:00:00 2001 From: twentylives Date: Fri, 21 Oct 2016 12:13:44 +0300 Subject: fixed copy-cut-paste buttons --- .../ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c index 720714c984..c9dc43c561 100644 --- a/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c +++ b/keyboards/ergodox/keymaps/twentylives_dvorak_with_hebrew/keymap.c @@ -28,11 +28,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `----------------------' */ [0] = KEYMAP( - TG(1), KC_1, KC_2, KC_3, KC_4, KC_5, LALT(KC_LSHIFT), - KC_TAB, KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, TG(3), - KC_ESCAPE, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSHIFT, KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, TG(2), - MO(3), KC_COPY, KC_CUT, KC_PASTE, MO(2), + TG(1), KC_1, KC_2, KC_3, KC_4, KC_5, LALT(KC_LSHIFT), + KC_TAB, KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, TG(3), + KC_ESCAPE, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSHIFT, KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, TG(2), + MO(3), LCTL(KC_C), LCTL(KC_X), LCTL(KC_V), MO(2), KC_DELETE, KC_TRNS, KC_LGUI, KC_BSPACE,CTL_T(KC_NO),KC_LALT, -- cgit v1.2.1 From 5fa44c594f8d1ad9dbfe93060a3370fc971d93dd Mon Sep 17 00:00:00 2001 From: Priyadi Iman Nurcahyo Date: Sat, 22 Oct 2016 18:47:51 +0700 Subject: Update priyadi's keymap for Planck; added readme --- keyboards/planck/keymaps/priyadi/keymap.c | 142 +++++++++++++++++------------ keyboards/planck/keymaps/priyadi/readme.md | 12 ++- 2 files changed, 97 insertions(+), 57 deletions(-) diff --git a/keyboards/planck/keymaps/priyadi/keymap.c b/keyboards/planck/keymaps/priyadi/keymap.c index dd8652d348..4b20f71f2b 100644 --- a/keyboards/planck/keymaps/priyadi/keymap.c +++ b/keyboards/planck/keymaps/priyadi/keymap.c @@ -5,24 +5,24 @@ #include "action_layer.h" #ifdef AUDIO_ENABLE #include "audio.h" + #include "musical_notes.h" #endif #include "eeconfig.h" #include "process_unicode.h" +#include "quantum.h" extern keymap_config_t keymap_config; -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _COLEMAK 1 -#define _WORKMAN 2 -#define _PUNC 9 -#define _NUM 10 -#define _FUNC 11 -#define _EMOJI 12 -#define _ADJUST 16 +enum layers { + _QWERTY, + _COLEMAK, + _WORKMAN, + _PUNC, + _NUM, + _FUNC, + _EMOJI, + _GUI, +}; enum planck_keycodes { // layouts @@ -35,6 +35,7 @@ enum planck_keycodes { NUM, FUNC, EMOJI, + GUI, // os switchers LINUX, @@ -43,10 +44,12 @@ enum planck_keycodes { }; // Fillers to make layering clearer + #define _______ KC_TRNS #define XXXXXXX KC_NO // unicode map + enum unicode_name { GRIN, // grinning face 😊 TJOY, // tears of joy 😂 @@ -147,6 +150,18 @@ const uint32_t PROGMEM unicode_map[] = { [SKULL] = 0x1F480, }; + +// hybrid shift - = +// #undef KC_LSFT +// #define KC_LSFT MT(MOD_LSFT, KC_MINS) +// #undef KC_RSFT +// #define KC_RSFT MT(MOD_LSFT, KC_EQL) + + +// hybrid right-gui & scroll lock (mapped to Compose in OS) +#undef KC_RCTL +#define KC_RCTL MT(MOD_LCTL, KC_SLCK) + // keymaps const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -189,11 +204,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Workman * ,-----------------------------------------------------------------------------------. - * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | R | S | T | D | H | N | E | I | O |Enter | + * | Esc | A | S | H | T | G | Y | N | E | O | I |Enter | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | K | M | , | . | / |Shift | + * | Shift| Z | X | M | C | V | K | K | , | . | / |Shift | * |------+------+------+------+------+------+------+------+------+------+------+------| * | Ctrl | GUI | Alt | Punc | Num | Space | Func |Emoji |AltGr | GUI | Ctrl | * `-----------------------------------------------------------------------------------' @@ -207,56 +222,56 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Punc * ,-----------------------------------------------------------------------------------. - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | ` | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | ` | | | | | | | | _ | + | { | } | " | + * | | | \ | - | = | < | > | ( | ) | ' | | | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | \ | - | = | [ | ] | ' | + * | | | | | _ | + | { | } | [ | ] | " | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | < | > | | + * | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ [_PUNC] = { - {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, - {KC_GRV, _______, _______, _______, _______, _______, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_DQUO}, - {_______, _______, _______, _______, _______, _______, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT}, - {_______, _______, _______, _______, _______, KC_SPC, KC_SPC, _______, _______, KC_LABK, KC_RABK, _______} + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_GRV }, + {XXXXXXX, XXXXXXX, KC_BSLS, KC_MINS, KC_EQL, KC_LABK, KC_RABK, KC_LPRN, KC_RPRN, KC_QUOT, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_DQUO, XXXXXXX, XXXXXXX}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, /* Num * ,-----------------------------------------------------------------------------------. - * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * | ^ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | @ | A | B | C | [ | ] | 4 | 5 | 6 | : |Enter | + * | Esc | @ | A | B | C | ( | ) | 4 | 5 | 6 | : |Enter | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | D | E | F | & | # | 1 | 2 | 3 | | | + * | & | # | D | E | F | [ | ] | 1 | 2 | 3 | / | * | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | x | | | | 0 | , | . | | | + * | | | | x | | | 0 | , | . | + | - | * `-----------------------------------------------------------------------------------' */ [_NUM] = { - {_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - { KC_ESC, KC_AT, S(KC_A), S(KC_B), S(KC_C), KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_COLN, KC_BSLS}, - {_______, _______, S(KC_D), S(KC_E), S(KC_F), KC_AMPR, KC_HASH, KC_1, KC_2, KC_3, _______, _______}, - {_______, _______, KC_X, _______, _______, KC_SPC, KC_SPC, KC_0, KC_COMM,KC_KP_DOT,_______, _______} + {KC_CIRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + { KC_ESC, KC_AT, S(KC_A), S(KC_B), S(KC_C), KC_LPRN, KC_RPRN, KC_4, KC_5, KC_6, KC_COLN, KC_ENT}, + {KC_AMPR, KC_HASH, S(KC_D), S(KC_E), S(KC_F), KC_LBRC, KC_RBRC, KC_1, KC_2, KC_3, KC_SLSH, KC_ASTR}, + {_______, _______, _______, KC_X, _______, KC_SPC, KC_SPC, KC_0, KC_COMM, KC_DOT, KC_PLUS, KC_MINS} }, /* Func * ,-----------------------------------------------------------------------------------. - * | | F1 | F2 | F3 | F4 | | | PgUp | Up | PgDn | PgUp | Bksp | + * | | F1 | F2 | F3 | F4 | | | PgUp | Up | PgDn | PgUp | Del | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | F5 | F6 | F7 | F8 | | | Left | Down | Right| PgDn | | + * | | F5 | F6 | F7 | F8 |PrtSc | | Left | Down | Right| PgDn | Ins | * |------+------+------+------+------+------|------+------+------+------+------+------| * | | F9 | F10 | F11 | F12 | | | | Home | End | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | |Print | + * | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ [_FUNC] = { - {_______, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, KC_PGUP, KC_UP, KC_PGDN, KC_PGUP, KC_BSPC}, - {_______, KC_F5, KC_F6, KC_F7, KC_F8, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______}, - {_______, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_HOME, KC_END, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,KC_PSCREEN} + {XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_PGUP, KC_UP, KC_PGDN, KC_PGUP, KC_DEL}, + {XXXXXXX, KC_F5, KC_F6, KC_F7, KC_F8,KC_PSCREEN,XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_INS}, + {_______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, XXXXXXX, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, /* Emoji @@ -274,27 +289,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {X(HART2), X(CRY2),X(WEARY),X(EYERT),X(SMIRK), X(TJOY),X(RECYC),X(UNAMU),X(MUSIC),X(OKHND),X(PENSV), X(PHEW)}, {X(THMUP), X(PRAY),X(SMILE),X(SMIL2),X(FLUSH), X(GRIN),X(HEART), X(BYE), X(KISS),X(CELEB), X(COOL),X(NOEVS)}, {X(THMDN),X(SLEEP), X(CLAP), X(CRY), X(VIC),X(BHART), X(SUN),X(SMEYE), X(WINK), X(MOON),X(CONFU),X(NOEVH)}, - { X(POO), X(EYES),X(HUNRD),X(TONGU),X(SKULL),X(HORNS), X(HALO), X(FEAR), _______,X(YUMMY),X(DISAP),X(NOEVK)} + { X(POO), X(EYES),X(HUNRD), _______,X(SKULL),X(HORNS), X(HALO), X(FEAR), _______,X(YUMMY),X(DISAP),X(NOEVK)} }, -/* Adjust +/* GUI * ,-----------------------------------------------------------------------------------. - * | | |Linux | Win | OSX | | |Qwerty|Colemk|Workmm| | | + * | | D1 | D2 | D3 | D4 | D5 | D6 | D7 | D8 | D9 | D10 | | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | | | | | + * |Linux | | Vol- | Mute | Vol+ | | | D- | | D+ | |Qwerty| * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | + * | Win | | Prev | Play | Next | | | | | | |Colmak| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | OSX | | | | | BL- | BL+ | | | | |Workmn| * `-----------------------------------------------------------------------------------' */ -[_ADJUST] = { - {_______, _______, LINUX, WIN, OSX, _______, _______, QWERTY, COLEMAK, WORKMAN, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} -} - +[_GUI] = { + {_______, LGUI(KC_1),LGUI(KC_2),LGUI(KC_3),LGUI(KC_4),LGUI(KC_5),LGUI(KC_6),LGUI(KC_7),LGUI(KC_8),LGUI(KC_9),LGUI(KC_0), _______}, + { LINUX, _______, KC_VOLD, KC_MUTE, KC_VOLU,_______,_______,KC_WWW_BACK,_______,KC_WWW_FORWARD,_______, QWERTY}, + { WIN, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, COLEMAK}, + { OSX, _______, _______, _______, _______, BL_DEC, BL_INC, _______, _______, _______, _______, WORKMAN} +}, }; @@ -304,6 +318,10 @@ float tone_qwerty[][2] = SONG(QWERTY_SOUND); float tone_colemak[][2] = SONG(COLEMAK_SOUND); float tone_workman[][2] = SONG(DVORAK_SOUND); float tone_goodbye[][2] = SONG(GOODBYE_SOUND); +float tone_linux[][2] = SONG(CAPS_LOCK_ON_SOUND); +float tone_windows[][2] = SONG(SCROLL_LOCK_ON_SOUND); +float tone_osx[][2] = SONG(NUM_LOCK_ON_SOUND); +float tone_click[][2] = SONG(MUSICAL_NOTE(_F3, 2)); #endif void persistant_default_layer_set(uint16_t default_layer) { @@ -312,6 +330,9 @@ void persistant_default_layer_set(uint16_t default_layer) { } bool process_record_user(uint16_t keycode, keyrecord_t *record) { + // faux clicky + if (record->event.pressed) PLAY_NOTE_ARRAY(tone_click, false, 0); + switch (keycode) { case QWERTY: if (record->event.pressed) { @@ -343,20 +364,20 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case PUNC: if (record->event.pressed) { layer_on(_PUNC); - update_tri_layer(_PUNC, _EMOJI, _ADJUST); + update_tri_layer(_PUNC, _EMOJI, _GUI); } else { layer_off(_PUNC); - update_tri_layer(_PUNC, _EMOJI, _ADJUST); + update_tri_layer(_PUNC, _EMOJI, _GUI); } return false; break; case EMOJI: if (record->event.pressed) { layer_on(_EMOJI); - update_tri_layer(_PUNC, _EMOJI, _ADJUST); + update_tri_layer(_PUNC, _EMOJI, _GUI); } else { layer_off(_EMOJI); - update_tri_layer(_PUNC, _EMOJI, _ADJUST); + update_tri_layer(_PUNC, _EMOJI, _GUI); } return false; break; @@ -378,14 +399,23 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { break; case LINUX: set_unicode_input_mode(UC_LNX); + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_linux, false, 0); + #endif return false; break; case WIN: set_unicode_input_mode(UC_WIN); + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_windows, false, 0); + #endif return false; break; case OSX: set_unicode_input_mode(UC_OSX); + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_osx, false, 0); + #endif return false; break; } diff --git a/keyboards/planck/keymaps/priyadi/readme.md b/keyboards/planck/keymaps/priyadi/readme.md index de2f25e537..99bdd9d9b6 100644 --- a/keyboards/planck/keymaps/priyadi/readme.md +++ b/keyboards/planck/keymaps/priyadi/readme.md @@ -1 +1,11 @@ -# Priyadi's Planck Layout \ No newline at end of file +# Priyadi's Planck Layout + +Features: + +- Supports QWERTY, Colemak and Workman layouts. +- Cursor and nav cluster on home row. +- Hybrid number row and numpad, located on home row. +- Number layer supports hexadecimal input. +- Left and right side modifiers. +- Emoji layer. An entire layer filled with common emojis. +- Faux-clickey (poor man's replacement for Cherry blue switches) \ No newline at end of file -- cgit v1.2.1 From 53a2bf92159e76ed44b675b1c97f20b782679e7f Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 22 Oct 2016 22:22:34 +0800 Subject: added dvorak programmer layout --- .gitignore | 3 +- .../ergodox/keymaps/dvorak_programmer/keymap.c | 380 +++++++++++++++++++++ 2 files changed, 382 insertions(+), 1 deletion(-) create mode 100644 keyboards/ergodox/keymaps/dvorak_programmer/keymap.c diff --git a/.gitignore b/.gitignore index 1abaeb2177..f66a961fd1 100644 --- a/.gitignore +++ b/.gitignore @@ -30,4 +30,5 @@ CMakeLists.txt .browse.VC.db* *.stackdump util/Win_Check_Output.txt -.vscode \ No newline at end of file +.vscode +.stfolder diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c new file mode 100644 index 0000000000..82182df0d3 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -0,0 +1,380 @@ + +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "action_code.h" + +#define BASE 0 // default layer +#define SHELL_NAV 1 +#define KEY_NAV 3 // key navigation layer +#define KEY_SEL 4 // key selection layer +#define NUMBER 5 // number layer +#define SYMBOL 6 +#define BRACKETS 7 +#define SHORTCUTS 8 + +// macros +#define MC_COPY_LINE 0 +#define MC_CUT_LINE 1 +#define MC_PASTE_LINE 2 +#define MC_NEW_SEARCH_TAB 3 +#define SCREEN_TAB_LEFT 4 +#define SCREEN_TAB_RIGHT 5 +#define SCREEN_NEW_TAB 6 +#define SWITCH_NDS 7 +#define SCREEN_COPY_MODE 8 +#define SCREEN_PASTE 9 +#define OPEN_CLOSE_PAREN 10 +#define OPEN_CLOSE_BRACKET 11 +#define OPEN_CLOSE_CURLY 12 +#define OPEN_CLOSE_SINGLE_QUOTE 13 +#define OPEN_CLOSE_DOUBLE_QUOTE 14 +#define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 15 +#define SEMICOLON_NEWLINE 16 + + +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 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// base layer +[BASE] = KEYMAP( // layer 0 : default + // 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), + 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), + // thumb cluster + MO(BRACKETS), 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, KC_MINS, + KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_FN3, + // lower keys - browser tab control + RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), RCTL(KC_K), RCTL(KC_W), + // thumb cluster + LALT(KC_LEFT), LALT(KC_RIGHT), + KC_END, + KC_CAPSLOCK,KC_ENT, KC_SPC + ), + + +// shell navigation layer +[SHELL_NAV] = 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, + // bottom row + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + // thumb cluster + KC_TRNS,KC_TRNS, + LALT(KC_D), + KC_TRNS,RCTL(KC_W),KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RCTL(KC_L), RCTL(KC_W), KC_HOME, KC_UP, KC_END, LALT(KC_D), RCTL(KC_R), + LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), LALT(KC_DOT), + RCTL(KC_C), RCTL(KC_U), M(SCREEN_COPY_MODE), M(SCREEN_PASTE), HYPR(KC_V), RCTL(KC_K), M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), + // 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, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +// key navigation layer +[KEY_NAV] = 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, + // 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 + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_PGDN, KC_HOME, KC_UP, KC_END, KC_PGUP, M(MC_COPY_LINE), + RCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, RCTL(KC_RIGHT), M(MC_CUT_LINE), + KC_TRNS, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_TRNS, M(MC_PASTE_LINE), + // 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 +), + +// key selection layer +[KEY_SEL] = 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, + // 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 + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RSFT(KC_PGUP), RSFT(KC_PGDN), RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP), M(MC_COPY_LINE), + RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), M(MC_CUT_LINE), + RSFT(KC_PGDN), KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_TRNS, M(MC_PASTE_LINE), + // 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 +), + +// number layer +[NUMBER] = 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, + // 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 + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, + KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, KC_TRNS, + KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_COLN, KC_TRNS, + // bottom row + KC_0, KC_DOT, KC_COMMA, KC_TRNS, KC_TRNS, + // thumb cluster + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +[SYMBOL] = KEYMAP( + // left hand + KC_NO,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS,KC_TRNS, M(OPEN_CLOSE_PAREN), KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, + KC_TRNS,KC_TRNS, M(OPEN_CLOSE_BRACKET), KC_LBRC, KC_RBRC, M(OPEN_CLOSE_DOUBLE_QUOTE), + KC_TRNS,M(SEMICOLON_NEWLINE),M(OPEN_CLOSE_CURLY), KC_LCBR, KC_RCBR, M(OPEN_CLOSE_SINGLE_QUOTE),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_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, KC_TRNS, + KC_TRNS, KC_PLUS, KC_AMPR, KC_ASTR, KC_GRAVE,KC_TILD, KC_TRNS, + KC_MINS, KC_DLR, KC_PERC, KC_CIRC, KC_PIPE, KC_TRNS, + KC_TRNS, KC_EQUAL,KC_EXLM, KC_AT, KC_HASH, KC_TRNS, KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +[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, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS, M(OPEN_CLOSE_PAREN), KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, + M(OPEN_CLOSE_BRACKET), KC_LBRC, KC_RBRC, M(OPEN_CLOSE_DOUBLE_QUOTE), KC_TRNS, KC_TRNS, + KC_TRNS, M(OPEN_CLOSE_CURLY), KC_LCBR, KC_RCBR, M(OPEN_CLOSE_SINGLE_QUOTE), KC_TRNS, KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +[SHORTCUTS] = KEYMAP( + // left hand + KC_NO, HYPR(KC_F1), HYPR(KC_F2), HYPR(KC_F3), HYPR(KC_F4), HYPR(KC_F5), HYPR(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_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 + HYPR(KC_F7), HYPR(KC_F8), HYPR(KC_F9), HYPR(KC_F10), HYPR(KC_F11), HYPR(KC_F12), M(SWITCH_NDS), + KC_TRNS, HYPR(KC_A), HYPR(KC_B), HYPR(KC_C), HYPR(KC_D), HYPR(KC_E), HYPR(KC_F), + HYPR(KC_G), HYPR(KC_H), HYPR(KC_I), HYPR(KC_J), HYPR(KC_K), HYPR(KC_L), + KC_TRNS, HYPR(KC_M), HYPR(KC_N), HYPR(KC_O), HYPR(KC_P), HYPR(KC_Q), HYPR(KC_R), + RCTL(KC_LBRC), RCTL(KC_RBRC),KC_TRNS, LCTL(LGUI(KC_LEFT)), LCTL(LGUI(KC_RIGHT)), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +}; + + + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case MC_COPY_LINE: + if (record->event.pressed) { + return MACRO( T(HOME), D(LSFT), T(END), U(LSFT), D(LCTL), T(C), U(LCTL), END); + } + break; + case MC_CUT_LINE: + if (record->event.pressed) { + return MACRO( T(HOME), D(LSFT), T(END), U(LSFT), D(LCTL), T(X), U(LCTL), END); + } + break; + case MC_PASTE_LINE: + if (record->event.pressed) { + return MACRO( T(END), T(ENTER), D(LCTL), T(V), U(LCTL), END); + } + break; + case MC_NEW_SEARCH_TAB: + if (record->event.pressed) { + return MACRO( D(LCTL), T(T), T(K), U(LCTL), END); + } + break; + case SCREEN_TAB_LEFT: + if (record->event.pressed) { + return MACRO( D(LCTL), T(A), U(LCTL), T(P), END); + } + break; + case SCREEN_TAB_RIGHT: + if (record->event.pressed) { + return MACRO( D(LCTL), T(A), U(LCTL), T(N), END); + } + break; + case SCREEN_NEW_TAB: + if (record->event.pressed) { + return MACRO( D(LCTL), T(A), U(LCTL), T(C), END); + } + break; + case SCREEN_COPY_MODE: + if (record->event.pressed) { + return MACRO( D(LCTL), T(A), U(LCTL), T(ESC), END); + } + break; + case SCREEN_PASTE: + if (record->event.pressed) { + return MACRO( D(LCTL), T(A), U(LCTL), T(RBRC), END); + } + break; + case SWITCH_NDS: + if (record->event.pressed) { + return MACRO( D(LSFT), T(F11), U(LSFT), W(500), D(LALT), T(TAB), U(LALT), END); + } + break; + case OPEN_CLOSE_PAREN: + if (record->event.pressed) { + return MACRO( D(LSFT), T(LPRN), T(RPRN), U(LSFT), T(LEFT), END); + } + break; + case OPEN_CLOSE_BRACKET: + if (record->event.pressed) { + return MACRO( T(LBRC), T(RBRC), T(LEFT), END); + } + break; + case OPEN_CLOSE_CURLY: + if (record->event.pressed) { + return MACRO( D(LSFT), T(LCBR), T(RCBR), U(LSFT), T(LEFT), END); + } + break; + case OPEN_CLOSE_SINGLE_QUOTE: + if (record->event.pressed) { + return MACRO( T(QUOT), T(QUOT), T(LEFT), END); + } + break; + case OPEN_CLOSE_DOUBLE_QUOTE: + if (record->event.pressed) { + return MACRO( D(LSFT), T(QUOT), T(QUOT), U(LSFT), T(LEFT), END); + } + break; + case SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND: + if (record->event.pressed) { + return MACRO( T(UP), T(HOME), D(LALT), T(D), U(LALT), END); + } + break; + case SEMICOLON_NEWLINE: + if (record->event.pressed) { + return MACRO( T(END), T(SCLN), T(ENTER), END); + } + break; + + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + + return; +}; + +void led_set_user(uint8_t usb_led) { + if (usb_led & (1< Date: Sat, 22 Oct 2016 22:29:05 +0800 Subject: change include files --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 82182df0d3..1b2175512e 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -1,5 +1,6 @@ -#include "ergodox_ez.h" +#include "ergodox.h" +#include "led.h" #include "debug.h" #include "action_layer.h" #include "action_code.h" -- cgit v1.2.1 From e0c9ec54ddb5e7c26378e8742790140a90bd7bcd Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 22 Oct 2016 22:39:24 +0800 Subject: add tap-dance support, make right shift double-tap=caplock --- keyboards/ergodox/keymaps/dvorak_programmer/Makefile | 2 ++ keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 keyboards/ergodox/keymaps/dvorak_programmer/Makefile diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/Makefile b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile new file mode 100644 index 0000000000..20364897b6 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile @@ -0,0 +1,2 @@ +SLEEP_LED_ENABLE=no +TAP_DANCE_ENABLE = yes diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 1b2175512e..ebc88c3d39 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -42,6 +42,19 @@ const uint16_t PROGMEM fn_actions[] = { [5] = ACTION_MODS_ONESHOT(MOD_LALT), // FN5 - alt modifier / oneshot }; +//Tap Dance Declarations +enum { + TD_SHIFT_CAPSLOCK = 0 +}; + +//Tap Dance Definitions +qk_tap_dance_action_t tap_dance_actions[] = { + //Tap once for Esc, twice for Caps Lock + [TD_SHIFT_CAPSLOCK] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPSLOCK) +// Other declarations would go here, separated by commas, if you have them +}; + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // base layer [BASE] = KEYMAP( // layer 0 : default @@ -59,7 +72,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, KC_FN3, + 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), RCTL(KC_K), RCTL(KC_W), // thumb cluster -- cgit v1.2.1 From 97e31068482c925eb2a193cf3babac41796e244b Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 23 Oct 2016 00:11:16 +0800 Subject: type brackets in symbol layer, using bottom row --- keyboards/ergodox/keymaps/dvorak_programmer/Makefile | 6 ++++++ keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 20 ++++++++++++-------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/Makefile b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile index 20364897b6..1fd6cb9ffd 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/Makefile +++ b/keyboards/ergodox/keymaps/dvorak_programmer/Makefile @@ -1,2 +1,8 @@ +BOOTMAGIC_ENABLE=no +COMMAND_ENABLE=no SLEEP_LED_ENABLE=no +FORCE_NKRO ?= yes +DEBUG_ENABLE = no +CONSOLE_ENABLE = no TAP_DANCE_ENABLE = yes +MOUSEKEY_ENABLE = no diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index ebc88c3d39..ac876c7c43 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -44,15 +44,11 @@ const uint16_t PROGMEM fn_actions[] = { //Tap Dance Declarations enum { - TD_SHIFT_CAPSLOCK = 0 + TD_SHIFT_CAPSLOCK = 0, + TD_BRK_LEFT = 1, + TD_BRK_RIGHT = 2 }; -//Tap Dance Definitions -qk_tap_dance_action_t tap_dance_actions[] = { - //Tap once for Esc, twice for Caps Lock - [TD_SHIFT_CAPSLOCK] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPSLOCK) -// Other declarations would go here, separated by commas, if you have them -}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -203,7 +199,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_PLUS, KC_AMPR, KC_ASTR, KC_GRAVE,KC_TILD, KC_TRNS, KC_MINS, KC_DLR, KC_PERC, KC_CIRC, KC_PIPE, KC_TRNS, KC_TRNS, KC_EQUAL,KC_EXLM, KC_AT, KC_HASH, KC_TRNS, KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_LBRC, KC_RBRC, TD(TD_BRK_LEFT), TD(TD_BRK_RIGHT), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -365,6 +361,14 @@ 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 64ac74cab65c364a6eab33bd602eb4c3f594930c Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 23 Oct 2016 00:44:34 +0800 Subject: remove brackets layer, replace a few shortcuts on thumb cluster --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 43 +++++++--------------- 1 file changed, 13 insertions(+), 30 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index ac876c7c43..ef22b7096d 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -11,8 +11,7 @@ #define KEY_SEL 4 // key selection layer #define NUMBER 5 // number layer #define SYMBOL 6 -#define BRACKETS 7 -#define SHORTCUTS 8 +#define SHORTCUTS 7 // macros #define MC_COPY_LINE 0 @@ -32,6 +31,7 @@ #define OPEN_CLOSE_DOUBLE_QUOTE 14 #define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 15 #define SEMICOLON_NEWLINE 16 +#define END_NEWLINE 17 const uint16_t PROGMEM fn_actions[] = { @@ -61,8 +61,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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), - RCTL(KC_DEL), + RCTL(KC_F), 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, @@ -72,9 +72,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), RCTL(KC_K), RCTL(KC_W), // thumb cluster - LALT(KC_LEFT), LALT(KC_RIGHT), - KC_END, - KC_CAPSLOCK,KC_ENT, KC_SPC + M(SEMICOLON_NEWLINE), M(END_NEWLINE), + KC_TRNS, + KC_TRNS,KC_ENT, KC_SPC ), @@ -205,28 +205,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS ), -[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, - // right hand - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, - KC_TRNS, M(OPEN_CLOSE_PAREN), KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, - M(OPEN_CLOSE_BRACKET), KC_LBRC, KC_RBRC, M(OPEN_CLOSE_DOUBLE_QUOTE), KC_TRNS, KC_TRNS, - KC_TRNS, M(OPEN_CLOSE_CURLY), KC_LCBR, KC_RCBR, M(OPEN_CLOSE_SINGLE_QUOTE), KC_TRNS, KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), - - [SHORTCUTS] = KEYMAP( // left hand KC_NO, HYPR(KC_F1), HYPR(KC_F2), HYPR(KC_F3), HYPR(KC_F4), HYPR(KC_F5), HYPR(KC_F6), @@ -242,7 +220,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, HYPR(KC_A), HYPR(KC_B), HYPR(KC_C), HYPR(KC_D), HYPR(KC_E), HYPR(KC_F), HYPR(KC_G), HYPR(KC_H), HYPR(KC_I), HYPR(KC_J), HYPR(KC_K), HYPR(KC_L), KC_TRNS, HYPR(KC_M), HYPR(KC_N), HYPR(KC_O), HYPR(KC_P), HYPR(KC_Q), HYPR(KC_R), - RCTL(KC_LBRC), RCTL(KC_RBRC),KC_TRNS, LCTL(LGUI(KC_LEFT)), LCTL(LGUI(KC_RIGHT)), + LALT(KC_LEFT),LALT(KC_RIGHT),KC_F5, LCTL(LGUI(KC_LEFT)), LCTL(LGUI(KC_RIGHT)), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -342,6 +320,11 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO( T(END), T(SCLN), T(ENTER), END); } break; + case END_NEWLINE: + if (record->event.pressed) { + return MACRO( T(END), T(ENTER), END); + } + break; } return MACRO_NONE; -- cgit v1.2.1 From 14ac397d5db1758b5dda87571415754f9c267987 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 23 Oct 2016 00:47:58 +0800 Subject: add up/down keys on thumb clusters --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index ef22b7096d..0539374f87 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -73,8 +73,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), RCTL(KC_K), RCTL(KC_W), // thumb cluster M(SEMICOLON_NEWLINE), M(END_NEWLINE), - KC_TRNS, - KC_TRNS,KC_ENT, KC_SPC + KC_UP, + KC_DOWN,KC_ENT, KC_SPC ), -- cgit v1.2.1 From 919caaccb75981ebdbba9630b4d850804ffd8fa0 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 23 Oct 2016 11:44:16 +0800 Subject: adding readme --- keyboards/ergodox/keymaps/dvorak_programmer/README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 keyboards/ergodox/keymaps/dvorak_programmer/README.md diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md new file mode 100644 index 0000000000..a4580fe064 --- /dev/null +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -0,0 +1,15 @@ +Dvorak Programmer Layout +======================== + +This is a dvorak-only layout. The overall philosophy is that the left hand contains a number of layer-switching shortcuts, and the right hand key codes vary based on the layer selected. + +Layers +------ + +* BASE: this is where you type. +* 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 as well as brackets at the bottom. +* SHORTCUTS: sends Hyper keys for Autohotkey to interpret. I use this to switch between specific apps. -- cgit v1.2.1 From c6f6172fd5dd70b7d82a1c4e0fd2fe1b55571e0c Mon Sep 17 00:00:00 2001 From: Priyadi Iman Nurcahyo Date: Sun, 23 Oct 2016 19:35:06 +0700 Subject: Use WinCompose unicode input method instead of HexNumpad --- keyboards/planck/keymaps/priyadi/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/planck/keymaps/priyadi/keymap.c b/keyboards/planck/keymaps/priyadi/keymap.c index 4b20f71f2b..6e7f4e7355 100644 --- a/keyboards/planck/keymaps/priyadi/keymap.c +++ b/keyboards/planck/keymaps/priyadi/keymap.c @@ -405,7 +405,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; case WIN: - set_unicode_input_mode(UC_WIN); + set_unicode_input_mode(UC_WINC); #ifdef AUDIO_ENABLE PLAY_NOTE_ARRAY(tone_windows, false, 0); #endif -- cgit v1.2.1 From 055247f35da4fb6c2e8c944292210240cd2d6ec5 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Wed, 26 Oct 2016 21:00:58 +0800 Subject: re-introduce brackets layer --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 26 ++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 0539374f87..5100115a64 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -11,7 +11,8 @@ #define KEY_SEL 4 // key selection layer #define NUMBER 5 // number layer #define SYMBOL 6 -#define SHORTCUTS 7 +#define BRACKETS 7 +#define SHORTCUTS 8 // macros #define MC_COPY_LINE 0 @@ -56,7 +57,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, - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + LT(BRACKETS,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), @@ -205,6 +206,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS ), +[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, + // right hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, M(OPEN_CLOSE_BRACKET),M(OPEN_CLOSE_PAREN),M(OPEN_CLOSE_CURLY),KC_TRNS,KC_TRNS, + KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, 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, KC_TRNS +), + [SHORTCUTS] = KEYMAP( // left hand KC_NO, HYPR(KC_F1), HYPR(KC_F2), HYPR(KC_F3), HYPR(KC_F4), HYPR(KC_F5), HYPR(KC_F6), -- cgit v1.2.1 From 552f469dfc0368682151e3e97aba856e4ff75526 Mon Sep 17 00:00:00 2001 From: Sergey Lebedev Date: Sat, 29 Oct 2016 22:08:11 +0300 Subject: Add link to article about Unicode Hex Input in readme For me it wasn't clear what is `Unicode Hex Input`, that article clarifies it (at least for me). --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 9264f9376f..60a94d7d6d 100644 --- a/readme.md +++ b/readme.md @@ -906,7 +906,7 @@ In `quantum/keymap_extras/`, you'll see various language files - these work the ## Unicode support -You can currently send 4 hex digits with your OS-specific modifier key (RALT for OSX with the "Unicode Hex Input" layout) - this is currently limited to supporting one OS at a time, and requires a recompile for switching. 8 digit hex codes are being worked on. The keycode function is `UC(n)`, where *n* is a 4 digit hexidecimal. Enable from the Makefile. +You can currently send 4 hex digits with your OS-specific modifier key (RALT for OSX with the "Unicode Hex Input" layout, see [this article](http://www.poynton.com/notes/misc/mac-unicode-hex-input.html) to learn more) - this is currently limited to supporting one OS at a time, and requires a recompile for switching. 8 digit hex codes are being worked on. The keycode function is `UC(n)`, where *n* is a 4 digit hexidecimal. Enable from the Makefile. ## Backlight Breathing -- cgit v1.2.1 From d956dd12481dfda5b26cd12da618838038d0229c Mon Sep 17 00:00:00 2001 From: Fred Sundvik Date: Sun, 30 Oct 2016 17:03:01 +0200 Subject: Run each sumbmake in a separate shell This will fix the situation where the commandline gets too long when there are many keyboards and keymaps. --- Makefile | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 0aaf585786..66c0ff30f4 100644 --- a/Makefile +++ b/Makefile @@ -32,7 +32,9 @@ ABS_ROOT_MAKEFILE := $(abspath $(ROOT_MAKEFILE)) ABS_STARTING_DIR := $(dir $(ABS_STARTING_MAKEFILE)) ABS_ROOT_DIR := $(dir $(ABS_ROOT_MAKEFILE)) STARTING_DIR := $(subst $(ABS_ROOT_DIR),,$(ABS_STARTING_DIR)) -TEST_DIR := $(ROOT_DIR)/.build/test +BUILD_DIR := $(ROOT_DIR)/.build +TEST_DIR := $(BUILD_DIR)/test +ERROR_FILE := $(BUILD_DIR)/error_occured MAKEFILE_INCLUDED=yes @@ -460,8 +462,21 @@ endef include $(ROOT_DIR)/message.mk -RUN_COMMAND = \ -$(COMMAND_$(SILENT_MODE)_$(COMMAND)) +# The empty line is important here, as it will force a new shell to be created for each command +# Otherwise the command line will become too long with a lot of keyboards and keymaps +define RUN_COMMAND ++error_occured=0;\ +$(COMMAND_$(SILENT_MODE)_$(COMMAND))\ +if [ $$error_occured -gt 0 ]; then echo $$error_occured > $(ERROR_FILE); fi; + + +endef +define RUN_TEST ++error_occured=0;\ +$($(TEST)_COMMAND))\ +if [ $$error_occured -gt 0 ]; then echo $$error_occured > $(ERROR_FILE); fi; + +endef # Allow specifying just the subproject, in the keyboard directory, which will compile all keymaps SUBPROJECTS := $(notdir $(patsubst %/Makefile,%,$(wildcard ./*/Makefile))) @@ -481,17 +496,17 @@ $(SUBPROJECTS): %: %-allkm *) printf "$(MSG_SUBMODULE_DIRTY)";break;; \ esac \ done + rm -f $(ERROR_FILE) > /dev/null 2>&1 $(eval $(call PARSE_RULE,$@)) $(eval $(call SET_SILENT_MODE)) # Run all the commands in the same shell, notice the + at the first line # it has to be there to allow parallel execution of the submake # This always tries to compile everything, even if error occurs in the middle # But we return the error code at the end, to trigger travis failures - +error_occured=0; \ - $(foreach COMMAND,$(COMMANDS),$(RUN_COMMAND)) \ - if [ $$error_occured -gt 0 ]; then printf "$(MSG_ERRORS)" & exit $$error_occured; fi;\ - $(foreach TEST,$(TESTS),$($(TEST)_COMMAND)) \ - if [ $$error_occured -gt 0 ]; then printf "$(MSG_ERRORS)" & exit $$error_occured; fi;\ + $(foreach COMMAND,$(COMMANDS),$(RUN_COMMAND)) + if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi; + $(foreach TEST,$(TESTS),$(RUN_TEST)) + if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi; # All should compile everything .PHONY: all -- cgit v1.2.1 From d5270af1118a86cc8aaf795005941ad980a0d128 Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Tue, 1 Nov 2016 10:03:58 -0400 Subject: Implements dedicated text zoom keys --- keyboards/ergodox/keymaps/erez_experimental/keymap.c | 6 +++--- keyboards/ergodox/keymaps/erez_experimental/readme.md | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/keyboards/ergodox/keymaps/erez_experimental/keymap.c b/keyboards/ergodox/keymaps/erez_experimental/keymap.c index 47e40aa557..4804959d63 100644 --- a/keyboards/ergodox/keymaps/erez_experimental/keymap.c +++ b/keyboards/ergodox/keymaps/erez_experimental/keymap.c @@ -11,7 +11,7 @@ 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 | - | + * | = | 1 | 2 | 3 | 4 | 5 |Ctrl- | | Ctrl+| 6 | 7 | 8 | 9 | 0 | - | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Otherwise, it needs KC_* [BASE] = KEYMAP( // layer 0 : default // left hand - KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, LCTL(KC_MINS), KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSPO, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_LBRC), @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_HOME, KC_SPC,KC_LEAD,KC_END, // right hand - KC_RGHT, KC_6,KC_7, KC_8, KC_9, KC_0, KC_MINS, + LCTL(KC_EQL), 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,ALT_T(KC_J),KC_K, KC_L, LT(MDIA,KC_SCLN),GUI_T(KC_QUOT), MEH_T(KC_RBRC),KC_N,KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSPC, diff --git a/keyboards/ergodox/keymaps/erez_experimental/readme.md b/keyboards/ergodox/keymaps/erez_experimental/readme.md index 66acfa187b..f0738d9a70 100644 --- a/keyboards/ergodox/keymaps/erez_experimental/readme.md +++ b/keyboards/ergodox/keymaps/erez_experimental/readme.md @@ -4,6 +4,10 @@ This is my personal layout which I use to test out ideas which may or may not ma Changelog: +## Nov 1, 2016: + +* Adds dedicated text zooming keys in inner corners + ## May 24, 2016: * Implements Leader key example -- cgit v1.2.1