From a9ad5c55c8fcfbd98b6208b31f8313f7f5940fa1 Mon Sep 17 00:00:00 2001 From: Charles Maresh Date: Wed, 3 Feb 2016 17:05:49 -0600 Subject: [PATCH 1/6] Disable console for improved performance Commenting out the line is the only way to disable the console, as the value of CONSOLE_ENABLE isn't checked. There are only checks for its existence; setting it to `yes` or `no` doesn't change the compilation. --- keyboard/ergodox_ez/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboard/ergodox_ez/Makefile b/keyboard/ergodox_ez/Makefile index 8066c7bb4b6..5dfcca2c803 100644 --- a/keyboard/ergodox_ez/Makefile +++ b/keyboard/ergodox_ez/Makefile @@ -93,7 +93,7 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512 BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) MOUSEKEY_ENABLE = yes # Mouse keys(+4700) EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) +# CONSOLE_ENABLE = yes # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration CUSTOM_MATRIX = yes # Custom matrix file for the ErgoDox EZ SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend From 2ae39aaa86ad23b315f1ffce89497bee0d805bdc Mon Sep 17 00:00:00 2001 From: Guyon Cumby Date: Thu, 4 Feb 2016 12:09:25 -0500 Subject: [PATCH 2/6] Update QUICK_START.md Fix ErgoDox EZ readme.md link --- QUICK_START.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QUICK_START.md b/QUICK_START.md index 6be377db3c5..948308ca11e 100644 --- a/QUICK_START.md +++ b/QUICK_START.md @@ -20,6 +20,6 @@ See [doc/keymap.md](tmk_core/doc/keymap.md). ## Flashing the firmware -The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](keyboard/ergodox_ez/README.md) gives a great example. +The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](keyboard/ergodox_ez/readme.md) gives a great example. If you want to program via the command line you can uncomment the ['modifyvm'] lines in the Vagrantfile to enable the USB passthrough into Linux and then program using the command line tools like dfu-util/dfu-programmer or you can install the Teensy CLI version. From c29ad125a7a58d5a2ced0a619165204136da9019 Mon Sep 17 00:00:00 2001 From: Fernando Mendonca Date: Fri, 5 Feb 2016 01:50:54 +0100 Subject: [PATCH 3/6] Fix 2 macros in the Nordic keymap By testing I found out that, at least on Linux using the Swedish layout, two macros present on this file were wrong, for the backslash and pipe keys. Jack helped me find the correct combination for the backslash and that led me to the right one for pipe. --- quantum/keymap_extras/keymap_nordic.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/quantum/keymap_extras/keymap_nordic.h b/quantum/keymap_extras/keymap_nordic.h index 02a704216a9..7ef41fb7917 100644 --- a/quantum/keymap_extras/keymap_nordic.h +++ b/quantum/keymap_extras/keymap_nordic.h @@ -48,12 +48,12 @@ #define NO_LBRC ALGR(KC_8) #define NO_RBRC ALGR(KC_9) #define NO_RCBR ALGR(KC_0) -#define NO_PIPE ALGR(NO_ACUT) +#define NO_PIPE ALGR(KC_NUBS) #define NO_EURO ALGR(KC_E) #define NO_TILD ALGR(NO_QUOT) -#define NO_BSLS ALGR(NO_LESS) +#define NO_BSLS ALGR(KC_MINS) #define NO_MU ALGR(KC_M) -#endif \ No newline at end of file +#endif From 1b0d0c684872e0a2fbd0d8efaa1a156afee8a028 Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Fri, 5 Feb 2016 16:22:21 +0200 Subject: [PATCH 4/6] Tweaks symbol layer (see changleog) --- .../erez_experimental/erez_experimental.hex | Bin 66176 -> 50418 bytes .../keymaps/erez_experimental/keymap.c | 52 +++++++++--------- .../keymaps/erez_experimental/readme.md | 10 ++++ 3 files changed, 36 insertions(+), 26 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex index d18d061b9650faf597ce762d4f662cea8ad298cb..9eadea20b997706685d1b197e6d8d8ba1f325baa 100644 GIT binary patch literal 50418 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 DQ3c+< literal 66176 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 diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c index 667078517cf..6d757d132f2 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c @@ -38,14 +38,14 @@ 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_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_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, - ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, + KC_EQL, 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, 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, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,TG(SYMB),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_BSLS, @@ -54,20 +54,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, KC_LALT, CTL_T(KC_ESC), KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT + KC_PGDN,LT(SYMB, KC_TAB), KC_ENT ), /* Keymap 1: Symbol Layer * * ,--------------------------------------------------. ,--------------------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * | | 1 | 2 | 3 | 4 | | | | | | | = | | | F12 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * | | 5 | 6 | 7 | 8 | 9 |------| |------| & | - | _ | ; | + | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * | | ( | ) | [ | ] | 0 | | | | | | ( | ) | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | . | 0 | = | | + * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -80,20 +80,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_TRNS, KC_TRNS, + KC_TRNS, KC_5, KC_6, KC_7, KC_8, KC_9, + KC_TRNS, KC_LPRN,KC_RPRN,KC_LBRC, KC_RBRC, KC_0, KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,LCTL(KC_PGDN), LCTL(KC_PGUP), + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand. Sending KC_P instead of Semicolon because I use Colemak in software. 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_EQL, KC_TRNS, KC_TRNS, KC_F12, + KC_AMPR, KC_MINS,KC_UNDS, KC_P, KC_PLUS, KC_TRNS, + KC_TRNS, KC_PIPE, KC_LPRN,KC_RPRN, KC_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, KC_TRNS diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md index 1ec3400696b..d7332a97bfd 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md @@ -4,6 +4,16 @@ This is my personal layout which I use to test out ideas which may or may not ma Changelog: +## Feb 5, 2016: + +* A whole new design for the symbol layer. Specifically: + * Put the minus, underscore, and semicolon right in the homerow for the right hand + * Parens are in better places for me + * The arrow keys now send Ctrl-PgUp and Ctrl-PgDn, for switching browser tabs with the arrows when in symbol layer + * Tab (right-hand outer thumb key) now does double duty to toggle symbol layer when held down + * Backspace (left-hand outer thumb key) now just toggles symbol layer (I wasn't using it as a backspace) + + ## Jan 19, 2016: * Made J into dual-action key (Alt when held down), to make Alt-tab more ergonomic. From 3c683aa9f23288ddada760fb49abcc5fa7324f5e Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Fri, 5 Feb 2016 16:28:24 +0200 Subject: [PATCH 5/6] Fixes CM_SCLN and updates docs for Colemak --- README.md | 4 +- .../erez_experimental/erez_experimental.hex | Bin 50418 -> 50418 bytes .../keymaps/erez_experimental/keymap.c | 7 +- quantum/keymap_extras/keymap_colemak.h | 62 +++++++++--------- 4 files changed, 37 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 9c476e507ac..e02fba91369 100644 --- a/README.md +++ b/README.md @@ -138,9 +138,9 @@ Note: Using macros to have your keyboard send passwords for you is a bad idea. Everything is assuming you're in Qwerty (in software) by default, but there is built-in support for using a Colemak or Dvorak layout by including this at the top of your keymap: - #include "keymap_.h" + #include -Where is "colemak" or "dvorak". After including this line, you will get access to: +If you use Dvorak, use `keymap_dvorak.h` instead of `keymap_colemak.h` for this line. After including this line, you will get access to: * `CM_*` for all of the Colemak-equivalent characters * `DV_*` for all of the Dvorak-equivalent characters diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex index 9eadea20b997706685d1b197e6d8d8ba1f325baa..a9f1942a6f8e026a40d73c11822c91eb5609b66c 100644 GIT binary patch delta 60 zcmey=$^5C4dBaT>H75f@AT%&`F)%O!(ypewTvkBZ(AfYeU<#A~(k8Bx|FeiOxw&o@ IXT7~201ZVDvj6}9 delta 60 zcmey=$^5C4dBaT>HCF>eAT%&`F)%O!(ym6lTvkBZ(AfYeU<#A~(k4!m|FeiO85nLB IXT7~201P}3h5!Hn diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c index 6d757d132f2..3dbefe9498a 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c @@ -1,3 +1,4 @@ +#include #include "ergodox_ez.h" #include "debug.h" #include "action_layer.h" @@ -84,14 +85,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_TRNS, KC_TRNS, KC_TRNS, KC_5, KC_6, KC_7, KC_8, KC_9, KC_TRNS, KC_LPRN,KC_RPRN,KC_LBRC, KC_RBRC, KC_0, KC_TRNS, - KC_TRNS, KC_TRNS,KC_TRNS,LCTL(KC_PGDN), LCTL(KC_PGUP), + KC_TRNS, KC_TRNS,KC_TRNS,LCTL(KC_PGUP), LCTL(KC_PGDN), KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, - // right hand. Sending KC_P instead of Semicolon because I use Colemak in software. + // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_TRNS, KC_TRNS,KC_EQL, KC_TRNS, KC_TRNS, KC_F12, - KC_AMPR, KC_MINS,KC_UNDS, KC_P, KC_PLUS, KC_TRNS, + KC_AMPR, KC_MINS,KC_UNDS, CM_SCLN, KC_PLUS, KC_TRNS, KC_TRNS, KC_PIPE, KC_LPRN,KC_RPRN, KC_3, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/quantum/keymap_extras/keymap_colemak.h b/quantum/keymap_extras/keymap_colemak.h index 87df01ab586..8a418c6159e 100644 --- a/quantum/keymap_extras/keymap_colemak.h +++ b/quantum/keymap_extras/keymap_colemak.h @@ -24,7 +24,7 @@ #define CM_E KC_K #define CM_I KC_L #define CM_O KC_SCLN -#define CM_SCLN LSFT(CM_SCLN) +#define CM_COLN LSFT(CM_SCLN) #define CM_Z KC_Z #define CM_X KC_X @@ -39,37 +39,37 @@ // Make it easy to support these in macros // TODO: change macro implementation so these aren't needed -#define KC_CM_Q CM_Q -#define KC_CM_W CM_W -#define KC_CM_F CM_F -#define KC_CM_P CM_P -#define KC_CM_G CM_G -#define KC_CM_J CM_J -#define KC_CM_L CM_L -#define KC_CM_U CM_U -#define KC_CM_Y CM_Y -#define KC_CM_SCLN CM_SCLN +#define KC_CM_Q CM_Q +#define KC_CM_W CM_W +#define KC_CM_F CM_F +#define KC_CM_P CM_P +#define KC_CM_G CM_G +#define KC_CM_J CM_J +#define KC_CM_L CM_L +#define KC_CM_U CM_U +#define KC_CM_Y CM_Y +#define KC_CM_SCLN CM_SCLN -#define KC_CM_A CM_A -#define KC_CM_R CM_R -#define KC_CM_S CM_S -#define KC_CM_T CM_T -#define KC_CM_D CM_D -#define KC_CM_H CM_H -#define KC_CM_N CM_N -#define KC_CM_E CM_E -#define KC_CM_I CM_I -#define KC_CM_O CM_O +#define KC_CM_A CM_A +#define KC_CM_R CM_R +#define KC_CM_S CM_S +#define KC_CM_T CM_T +#define KC_CM_D CM_D +#define KC_CM_H CM_H +#define KC_CM_N CM_N +#define KC_CM_E CM_E +#define KC_CM_I CM_I +#define KC_CM_O CM_O -#define KC_CM_Z CM_Z -#define KC_CM_X CM_X -#define KC_CM_C CM_C -#define KC_CM_V CM_V -#define KC_CM_B CM_B -#define KC_CM_K CM_K -#define KC_CM_M CM_M -#define KC_CM_COMM CM_COMM -#define KC_CM_DOT CM_DOT -#define KC_CM_SLSH CM_SLSH +#define KC_CM_Z CM_Z +#define KC_CM_X CM_X +#define KC_CM_C CM_C +#define KC_CM_V CM_V +#define KC_CM_B CM_B +#define KC_CM_K CM_K +#define KC_CM_M CM_M +#define KC_CM_COMM CM_COMM +#define KC_CM_DOT CM_DOT +#define KC_CM_SLSH CM_SLSH #endif From 832575f2e799acb09bb64b17b81766bd134800d6 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Fri, 5 Feb 2016 19:06:25 -0500 Subject: [PATCH 6/6] Update PCB_GUIDE.md --- keyboard/planck/PCB_GUIDE.md | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboard/planck/PCB_GUIDE.md b/keyboard/planck/PCB_GUIDE.md index a7a0f7fb18d..3daf0e0092f 100644 --- a/keyboard/planck/PCB_GUIDE.md +++ b/keyboard/planck/PCB_GUIDE.md @@ -14,6 +14,7 @@ If you're using homebrew, you can use the following commands: brew tap osx-cross/avr brew install avr-libc + brew install dfu-programmer Otherwise, these instructions will work: