From 5f37b11f2c300a95e0e9e34517c5c29a3345be83 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Tue, 9 Aug 2016 11:03:12 +0100 Subject: [PATCH 01/17] changed order of bottom row of symbol layer to ease acess to brackets --- keyboards/planck/keymaps/callum/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/planck/keymaps/callum/keymap.c b/keyboards/planck/keymaps/callum/keymap.c index a747dcb159..ed187df1da 100644 --- a/keyboards/planck/keymaps/callum/keymap.c +++ b/keyboards/planck/keymaps/callum/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------------------------------------------------------------------------------. * | Del | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | ~ | | | + | [ | { | } | ] | = | \ | ` | | + * | | ~ | ` | + | = | | | \ | [ | ] | { | } | | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_SYMB] = { {KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_ESC }, {KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, - {_______, KC_TILD, KC_PIPE, KC_PLUS, KC_LBRC, KC_LCBR, KC_RCBR, KC_RBRC, KC_EQL, KC_BSLS, KC_GRV, _______}, + {_______, KC_TILD, KC_GRV, KC_PLUS, KC_EQL, KC_PIPE, KC_BSLS, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, From 725dd7328f9963959f72318af912ed66f5a5f513 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Tue, 9 Aug 2016 11:09:52 +0100 Subject: [PATCH 02/17] updated readme.md to reflect keymap changes --- keyboards/planck/keymaps/callum/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/planck/keymaps/callum/readme.md b/keyboards/planck/keymaps/callum/readme.md index d4f3449f15..030def7f77 100644 --- a/keyboards/planck/keymaps/callum/readme.md +++ b/keyboards/planck/keymaps/callum/readme.md @@ -31,9 +31,9 @@ On *macOS* I recommend using [Karabiner](https://pqrs.org/osx/karabiner/) and ti None of the modifiers are overwritten so that `shift-alt-arrows` etc work as expected. ## The `SYMB` layer -![](http://i.imgur.com/iuU144Y.png) +![](http://i.imgur.com/thh1ne2.png) -The symbol layer has all the numbers and their usual corresponding symbols in the first two rows, with the symbols on the home row since I use them more frequently than the numbers. The third row contains all the remaining symbols, with brackets in the centre; then normally shifted symbols to the left, and non shifted to the right, in order of most to least used. +The symbol layer has all the numbers and their usual corresponding symbols in the first two rows, with the symbols on the home row since I use them more frequently than the numbers. The third row contains all the remaining symbols, arranged roughly so that the most used symbols are accessible with the strongest fingers. `esc` and `del` are repeated here since I wanted to be able to reach either, one handed, with either hand. From 993d72b11fca8d50296570dc85e9354f8045c4a6 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Fri, 12 Aug 2016 21:05:52 +0100 Subject: [PATCH 03/17] added a lock screen key --- keyboards/planck/keymaps/callum/keymap.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/keyboards/planck/keymaps/callum/keymap.c b/keyboards/planck/keymaps/callum/keymap.c index ed187df1da..494ed30b06 100644 --- a/keyboards/planck/keymaps/callum/keymap.c +++ b/keyboards/planck/keymaps/callum/keymap.c @@ -20,7 +20,8 @@ enum planck_keycodes { BASE = SAFE_RANGE, MOVE, SYMB, - FUNC + FUNC, + LOCK }; // Fillers to make layering more clear @@ -87,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------------------------------------------------. * | F12 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | * |-----------------------------------------------------------------------------------. - * | | Play | Prev | Next | BL+ | | | | | | | | + * | | Play | Prev | Next | BL+ | | | Lock | | | | | * |------+------+------+------+------+------|------+------+------+------+------+------| * | | Mute | Vol- | Vol+ | BL- | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| @@ -96,7 +97,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FUNC] = { {KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11 }, - {_______, KC_MPLY, KC_MPRV, KC_MNXT, KC_PAUS, _______, _______, _______, _______, _______, _______, _______}, + {_______, KC_MPLY, KC_MPRV, KC_MNXT, KC_PAUS, _______, _______, LOCK, _______, _______, _______, _______}, {_______, KC_MUTE, KC_VOLD, KC_VOLU, KC_SLCK, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET } } @@ -133,6 +134,18 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case LOCK: + if (record->event.pressed) { + register_code(KC_RSFT); + register_code(KC_RGUI); + register_code(KC_POWER); + } else { + unregister_code(KC_POWER); + unregister_code(KC_RGUI); + unregister_code(KC_RSFT); + } + return false; + break; } return true; } From f512179e66e4d4dfbcc92c6ba1aaa1b6cf1ef12b Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Wed, 24 Aug 2016 13:17:01 +0200 Subject: [PATCH 04/17] ergodox: Update algernon's keymap to v1.6 Major changes include: Base layer changes ------------------ * The parentheses & bracket keys have been merged: tapping them results in `[` or `{` (if it was shifted), double tapping leads to `(`. * The `:;` and `-_` keys are now available on the base layer, on their **ADORE** location, too, just below `[{(`/`]})`. * The `Apps` key has been replaced by `F12`. * The `-`/`_` is no longer a tap-dance key. ADORE layer changes ------------------- * Adjustments were made to the **ADORE** layer, to separate some inconvenient combinations. Miscellaneous changes --------------------- * `LEAD u` now starts the symbolic unicode input system, instead of the OS-one. * The mouse acceleration keys on the **Navigation and Media* layer have been turned into toggles: tap them once to turn them on, until tapped again. Tapping an accelerator button will turn all the others off. * When the **ARROW** layer is on, the *red* and *blue* LEDs light up now. Heatmap ------- * The built-in keylogger has been greatly enhanced, it now outputs the pressed state, and the layer (Dvorak or ADORE). As such, the `ADORE_AUTOLOG` option has been removed, instead there is `AUTOLOG_ENABLE` now, which when enabled, makes the keylogger start when the keyboard boots. It defaults to off. * The heatmap generator received a lot of updates. Signed-off-by: Gergely Nagy --- keyboards/ergodox/keymaps/algernon/Makefile | 9 +- .../keymaps/algernon/images/adore-layer.png | Bin 93748 -> 93893 bytes .../keymaps/algernon/images/base-layer.png | Bin 95222 -> 95204 bytes keyboards/ergodox/keymaps/algernon/keymap.c | 498 ++++++------------ keyboards/ergodox/keymaps/algernon/readme.md | 67 ++- ...-layout.json => heatmap-layout.ADORE.json} | 110 ++-- ...layout.json => heatmap-layout.Dvorak.json} | 29 +- .../keymaps/algernon/tools/log-to-heatmap.py | 342 +++++++----- 8 files changed, 542 insertions(+), 513 deletions(-) rename keyboards/ergodox/keymaps/algernon/tools/{heatmap-adore-layout.json => heatmap-layout.ADORE.json} (91%) rename keyboards/ergodox/keymaps/algernon/tools/{heatmap-base-layout.json => heatmap-layout.Dvorak.json} (97%) diff --git a/keyboards/ergodox/keymaps/algernon/Makefile b/keyboards/ergodox/keymaps/algernon/Makefile index 00194857ac..7c2b3ad97c 100644 --- a/keyboards/ergodox/keymaps/algernon/Makefile +++ b/keyboards/ergodox/keymaps/algernon/Makefile @@ -1,22 +1,23 @@ BOOTMAGIC_ENABLE=no COMMAND_ENABLE=no SLEEP_LED_ENABLE=no -UNICODE_ENABLE=no FORCE_NKRO ?= yes DEBUG_ENABLE = no CONSOLE_ENABLE = no TAP_DANCE_ENABLE = yes KEYLOGGER_ENABLE ?= yes +UCIS_ENABLE = yes +MOUSEKEY_ENABLE ?= yes -ADORE_AUTOLOG ?= no +AUTOLOG_ENABLE ?= no ifeq (${FORCE_NKRO},yes) OPT_DEFS += -DFORCE_NKRO endif -ifeq (${ADORE_AUTOLOG},yes) +ifeq (${AUTOLOG_ENABLE},yes) KEYLOGGER_ENABLE = yes -OPT_DEFS += -DADORE_AUTOLOG +OPT_DEFS += -DAUTOLOG_ENABLE endif ifeq (${KEYLOGGER_ENABLE},yes) diff --git a/keyboards/ergodox/keymaps/algernon/images/adore-layer.png b/keyboards/ergodox/keymaps/algernon/images/adore-layer.png index 44ad8a1eb7560b552aa6010b2051fcabb00f01cd..3d0a5fb20cd426a3a79d1b581b1a84d1cd71a8c1 100644 GIT binary patch literal 93893 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 literal 93748 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

{4mc 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 #include "ergodox.h" #include "led.h" #include "debug.h" @@ -33,7 +34,6 @@ enum { // Buttons that do extra stuff A_GUI, A_PLVR, - A_ESC, A_MPN, // Function / number keys @@ -47,7 +47,6 @@ enum { KF_8, KF_9, KF_10, - KF_11, // =, F11 // Application select keys APP_SLK, // Slack @@ -62,6 +61,11 @@ enum { A_MDL, A_MDR, + // Mouse acceleration + A_ACL0, + A_ACL1, + A_ACL2, + // Hungarian layer keys HU_AA, // Á HU_OO, // Ó @@ -89,7 +93,6 @@ enum { enum { CT_CLN = 0, - CT_MNS, CT_TA, CT_LBP, CT_RBP @@ -102,7 +105,11 @@ uint16_t gui_timer = 0; uint16_t kf_timers[12]; #if KEYLOGGER_ENABLE +# ifdef AUTOLOG_ENABLE +bool log_enable = true; +# else bool log_enable = false; +# endif #endif bool time_travel = false; @@ -114,12 +121,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Base Layer * * ,-----------------------------------------------------. ,-----------------------------------------------------. - * | Next/Prev | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * | Next/Prev | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | F12 | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| - * | ~ | ' | , | . | P | Y | [ | | ] | F | G | C | R | L | \ | - * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | ~ | ' | , | . | P | Y | ( | | ) | F | G | C | R | L | \ | + * |-----------+------+------+------+------+------| [ | | ] |------+------+------+------+------+-----------| * | Tab/ARROW | A | O | E | U | I |------| |------| D | H | T | N | S | = / Arrow | - * |-----------+------+------+------+------+------| ( | | ) |------+------+------+------+------+-----------| + * |-----------+------+------+------+------+------| : | | - |------+------+------+------+------+-----------| * | Play/Pause| / | Q | J | K | X | | | | B | M | W | V | Z | Stop | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' * | | | | | : | | - | | | | | @@ -135,21 +142,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // left hand M(A_MPN) ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) -,KC_GRV ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,KC_LBRC +,KC_GRV ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,TD(CT_LBP) ,TD(CT_TA) ,KC_A ,KC_O ,KC_E ,KC_U ,KC_I -,KC_MPLY ,KC_SLSH ,KC_Q ,KC_J ,KC_K ,KC_X ,KC_LPRN +,KC_MPLY ,KC_SLSH ,KC_Q ,KC_J ,KC_K ,KC_X ,TD(CT_CLN) ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,TD(CT_CLN) ,F(F_ALT),F(F_GUI) ,F(F_CTRL) - ,KC_BSPC,F(F_SFT),M(A_ESC) + ,KC_BSPC,F(F_SFT),KC_ESC // right hand - ,KC_APP ,M(KF_6),M(KF_7) ,M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 - ,KC_RBRC ,KC_F ,KC_G ,KC_C ,KC_R ,KC_L ,KC_BSLS + ,KC_F12 ,M(KF_6),M(KF_7) ,M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,TD(CT_RBP),KC_F ,KC_G ,KC_C ,KC_R ,KC_L ,KC_BSLS ,KC_D ,KC_H ,KC_T ,KC_N ,KC_S ,KC_EQL - ,KC_RPRN ,KC_B ,KC_M ,KC_W ,KC_V ,KC_Z ,KC_MSTP - ,TD(CT_MNS),KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_MINS ,KC_B ,KC_M ,KC_W ,KC_V ,KC_Z ,KC_MSTP + ,KC_MINS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,OSL(NMDIA),KC_DEL ,KC_LEAD @@ -159,13 +166,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 1: Adore layer * * ,-----------------------------------------------------. ,-----------------------------------------------------. - * | Play/Pause| 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * | Play/Pause| 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | F12 | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| - * | `~ | X | W | K | L | M | ( | | ) | F | H | C | P | Y | \ | + * | `~ | Y | W | G | L | M | ( | | ) | F | H | C | P | X | \ | * |-----------+------+------+------+------+------| [ | | ] |------+------+------+------+------+-----------| * | Tab/Arrow | A | O | E | I | U |------| |------| D | R | T | N | S | = | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| - * | | Z | Q | ' | , | . | : | | - | B | G | V | J | / | | + * | | Z | Q | ' | , | . | : | | - | B | K | V | J | / | | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' * | | | | | | | | | | | | * `-----------------------------------' `-----------------------------------' @@ -180,20 +187,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [ADORE] = KEYMAP( // left hand KC_MPLY ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) -,KC_GRV ,KC_X ,KC_W ,KC_K ,KC_L ,KC_M ,TD(CT_LBP) +,KC_GRV ,KC_Y ,KC_W ,KC_G ,KC_L ,KC_M ,TD(CT_LBP) ,TD(CT_TA) ,KC_A ,KC_O ,KC_E ,KC_I ,KC_U ,KC_NO ,KC_Z ,KC_Q ,KC_QUOT,KC_COMM,KC_DOT ,TD(CT_CLN) ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,F(F_ALT),F(F_GUI) ,F(F_CTRL) - ,KC_BSPC,F(F_SFT),M(A_ESC) + ,KC_BSPC,F(F_SFT),KC_ESC // right hand - ,KC_APP ,M(KF_6),M(KF_7),M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 - ,TD(CT_RBP),KC_F ,KC_H ,KC_C ,KC_P ,KC_Y ,KC_BSLS + ,KC_F12 ,M(KF_6),M(KF_7),M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,TD(CT_RBP),KC_F ,KC_H ,KC_C ,KC_P ,KC_X ,KC_BSLS ,KC_D ,KC_R ,KC_T ,KC_N ,KC_S ,KC_EQL - ,TD(CT_MNS),KC_B ,KC_G ,KC_V ,KC_J ,KC_SLSH ,KC_NO + ,KC_MINS ,KC_B ,KC_K ,KC_V ,KC_J ,KC_SLSH ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,OSL(NMDIA),KC_DEL @@ -363,14 +370,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [NMDIA] = KEYMAP( // left hand - KC_ACL0 ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,LGUI(KC_L) -,KC_ACL1 ,KC_NO ,KC_HOME ,KC_UP ,KC_PGUP ,KC_NO ,KC_NO -,KC_ACL2 ,KC_NO ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_NO + M(A_ACL0) ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,LGUI(KC_L) +,M(A_ACL1) ,KC_NO ,KC_HOME ,KC_UP ,KC_PGUP ,KC_NO ,KC_NO +,M(A_ACL2) ,KC_NO ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_NO ,KC_MPLY ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_MUTE ,KC_VOLU ,KC_VOLD - ,KC_SPC,KC_ENTER,M(A_ESC) + ,KC_SPC,KC_ENTER,KC_ESC // right hand ,LGUI(KC_L),KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO @@ -439,7 +446,7 @@ const uint16_t PROGMEM fn_actions[] = { ,[F_CTRL] = ACTION_MODS_ONESHOT (MOD_LCTL) }; -void toggle_steno(int pressed) +static void toggle_steno(int pressed) { uint8_t layer = biton32(layer_state); @@ -462,7 +469,7 @@ void toggle_steno(int pressed) } } -macro_t *ang_do_hun (keyrecord_t *record, uint16_t accent, uint16_t hun_char) +static macro_t *ang_do_hun (keyrecord_t *record, uint16_t accent, uint16_t hun_char) { uint8_t need_shift = 0; uint8_t hold_shift = 0; @@ -507,46 +514,43 @@ macro_t *ang_do_hun (keyrecord_t *record, uint16_t accent, uint16_t hun_char) return MACRO_NONE; } -void ang_handle_kf (keyrecord_t *record, uint8_t id) +static bool from_appsel; + +static void ang_handle_kf (keyrecord_t *record, uint8_t id) { uint8_t code = id - KF_1; if (record->event.pressed) { kf_timers[code] = timer_read (); } else { - uint8_t kc; + uint8_t kc_base; - if (timer_elapsed (kf_timers[code]) > TAPPING_TERM) { - // Long press - kc = KC_F1 + code; - } else { - if (id == KF_11) - kc = KC_EQL; - else - kc = KC_1 + code; + if (from_appsel) { + from_appsel = false; + return; } - register_code (kc); - unregister_code (kc); + if (kf_timers[code] && timer_elapsed (kf_timers[code]) > TAPPING_TERM) { + // Long press + kc_base = KC_F1; + } else { + kc_base = KC_1; + } + kf_timers[code] = 0; + code += kc_base; + + register_code (code); + unregister_code (code); } } +static struct { + uint8_t idx; +} m_accel_state; + const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { switch(id) { - case A_ESC: - if (record->event.pressed) { - if ((get_oneshot_mods ()) && !has_oneshot_mods_timed_out ()) { - clear_oneshot_mods (); - } else { - register_code (KC_ESC); - } - layer_off (HUN); - } else { - unregister_code (KC_ESC); - } - break; - case A_MPN: if (record->event.pressed) { if (keyboard_report->mods & MOD_BIT(KC_LSFT) || @@ -588,6 +592,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case HU_UEE: return ang_do_hun (record, KC_EQL, KC_U); +#if MOUSEKEY_ENABLE /* Mouse movement */ case A_MUL: if (record->event.pressed) { @@ -633,6 +638,24 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) mousekey_send(); break; + case A_ACL0 ... A_ACL2: + if (record->event.pressed) { + uint8_t idx = id - A_ACL0; + if (m_accel_state.idx == id) { + mousekey_off(m_accel_state.idx - A_ACL0 + KC_ACL0); + m_accel_state.idx = 0; + } else { + if (m_accel_state.idx) { + mousekey_off(m_accel_state.idx - A_ACL0 + KC_ACL0); + m_accel_state.idx = 0; + } + mousekey_on(KC_ACL0 + idx); + m_accel_state.idx = id; + } + } + break; +#endif + /* Plover base */ case A_PLVR: toggle_steno(record->event.pressed); @@ -663,22 +686,34 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case APP_SLK: + from_appsel = true; return MACRODOWN(T(S), T(L), T(A), T(C), T(K), T(ENT), END); case APP_EMCS: + from_appsel = true; return MACRODOWN(T(G), T(N), T(U), T(SPC), T(E), T(M), T(A), T(C), T(S), T(SPC), T(2), T(4), T(ENT), END); case APP_TERM: - return MACRODOWN(T(T), T(E), T(R), T(M), T(ENT), END); + from_appsel = true; + if (!record->event.pressed) { + register_code(KC_ESC); + unregister_code(KC_ESC); + wait_ms(TAPPING_TERM + 25); + register_code(KC_DEL); + unregister_code(KC_DEL); + } + break; case APP_CHRM: + from_appsel = true; return MACRODOWN(T(C), T(H), T(R), T(O), T(M), T(ENT), END); case APP_MSIC: + from_appsel = true; return MACRODOWN(T(R), T(H), T(Y), T(T), T(H), T(M), T(B), T(O), T(X), T(ENT), END); /* Function keys */ - case KF_1 ... KF_11: + case KF_1 ... KF_10: ang_handle_kf (record, id); break; } @@ -686,12 +721,14 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO_NONE; }; -uint8_t is_adore = 0; +static uint8_t is_adore = 0; // Runs just one time when the keyboard initializes. void matrix_init_user(void) { uint8_t dl; + set_unicode_input_mode(UC_LNX); + ergodox_led_all_on(); for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { ergodox_led_all_set (i); @@ -709,120 +746,38 @@ void matrix_init_user(void) { dl = eeconfig_read_default_layer (); if (dl == (1UL << ADORE)) { is_adore = 1; -#if ADORE_AUTOLOG - log_enable = true; -#endif } }; LEADER_EXTERNS(); -void ang_do_unicode (void) { - register_code (KC_RCTL); - register_code (KC_RSFT); - register_code (KC_U); - unregister_code (KC_U); - unregister_code (KC_RSFT); - unregister_code (KC_RCTL); - wait_ms (100); -} +static void ang_tap (uint8_t code, ...) { + uint8_t kc = code; + va_list ap; -void ang_tap (uint16_t codes[]) { - for (int i = 0; codes[i] != 0; i++) { - register_code (codes[i]); - unregister_code (codes[i]); - wait_ms (50); - } + va_start(ap, code); + + do { + register_code(kc); + unregister_code(kc); + wait_ms(50); + kc = va_arg(ap, int); + } while (kc != 0); + va_end(ap); } #define TAP_ONCE(code) \ register_code (code); \ unregister_code (code) -void ang_tap_dance_bp_finished (qk_tap_dance_state_t *state, void *user_data) { - bool left, parens; - - if (state->count > 2) { - state->count = 0; - return; - } - - if (state->keycode == TD(CT_LBP)) - left = true; - else - left = false; - - if (state->count == 1) - parens = false; - else - parens = true; - - if (parens) { - register_code (KC_RSFT); - if (left) { - TAP_ONCE(KC_9); - } else { - TAP_ONCE(KC_0); - } - unregister_code (KC_RSFT); - } else { - if (left) { - TAP_ONCE (KC_LBRC); - } else { - TAP_ONCE (KC_RBRC); - } - } -} - -void ang_tap_dance_cln_finished (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - register_code (KC_RSFT); - register_code (KC_SCLN); - } else if (state->count == 2) { - register_code (KC_SCLN); - } -} - -void ang_tap_dance_cln_reset (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - unregister_code (KC_SCLN); - unregister_code (KC_RSFT); - } else if (state->count == 2) { - unregister_code (KC_SCLN); - } -} - -void ang_tap_dance_mns_finished (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - register_code (KC_MINS); - } else if (state->count == 2) { - register_code (KC_RSFT); - register_code (KC_MINS); - } -} - -void ang_tap_dance_mns_reset (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - unregister_code (KC_MINS); - } else if (state->count == 2) { - unregister_code (KC_RSFT); - unregister_code (KC_MINS); - } -} - typedef struct { bool layer_toggle; bool sticky; - bool finished_once; } td_ta_state_t; -void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { +static void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { td_ta_state_t *td_ta = (td_ta_state_t *) user_data; - if (td_ta->finished_once) { - return; - } - if (td_ta->sticky) { td_ta->sticky = false; td_ta->layer_toggle = false; @@ -830,7 +785,6 @@ void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { return; } - td_ta->finished_once = true; if (state->count == 1 && !state->pressed) { register_code (KC_TAB); td_ta->sticky = false; @@ -842,35 +796,29 @@ void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { } } -void ang_tap_dance_ta_reset (qk_tap_dance_state_t *state, void *user_data) { +static void ang_tap_dance_ta_reset (qk_tap_dance_state_t *state, void *user_data) { td_ta_state_t *td_ta = (td_ta_state_t *) user_data; if (!td_ta->layer_toggle) unregister_code (KC_TAB); if (!td_ta->sticky) layer_off (ARRW); - - td_ta->finished_once = false; } qk_tap_dance_action_t tap_dance_actions[] = { - [CT_CLN] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_cln_finished, ang_tap_dance_cln_reset) - ,[CT_MNS] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_mns_finished, ang_tap_dance_mns_reset) + [CT_CLN] = ACTION_TAP_DANCE_DOUBLE (KC_COLN, KC_SCLN) ,[CT_TA] = { .fn = { NULL, ang_tap_dance_ta_finished, ang_tap_dance_ta_reset }, - .user_data = (void *)&((td_ta_state_t) { false, false, false }) + .user_data = (void *)&((td_ta_state_t) { false, false }) } - ,[CT_LBP] = ACTION_TAP_DANCE_FN (ang_tap_dance_bp_finished) - ,[CT_RBP] = ACTION_TAP_DANCE_FN (ang_tap_dance_bp_finished) + ,[CT_LBP] = ACTION_TAP_DANCE_DOUBLE (KC_LBRC, KC_LPRN) + ,[CT_RBP] = ACTION_TAP_DANCE_DOUBLE (KC_RBRC, KC_RPRN) }; -static uint16_t uni[32]; -static uint8_t unicnt; -static bool unimagic = false; - // Runs constantly in the background, in a loop. void matrix_scan_user(void) { uint8_t layer = biton32(layer_state); + bool is_arrow = false; if (gui_timer && timer_elapsed (gui_timer) > TAPPING_TERM) unregister_code (KC_LGUI); @@ -893,13 +841,19 @@ void matrix_scan_user(void) { ergodox_right_led_2_set (LED_BRIGHTNESS_HI); } + if (layer_state & (1UL << ARRW)) { + ergodox_right_led_1_on (); + ergodox_right_led_3_on (); + is_arrow = true; + } + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { ergodox_right_led_1_set (LED_BRIGHTNESS_HI); ergodox_right_led_1_on (); } else { ergodox_right_led_1_set (LED_BRIGHTNESS_LO); - if (layer != NMDIA && layer != PLVR && layer != ADORE) + if (layer != NMDIA && layer != PLVR && layer != ADORE && !is_arrow) ergodox_right_led_1_off (); } @@ -919,7 +873,7 @@ void matrix_scan_user(void) { ergodox_right_led_3_on (); } else { ergodox_right_led_3_set (LED_BRIGHTNESS_LO); - if (layer != HUN && layer != PLVR && layer != ADORE) + if (layer != HUN && layer != PLVR && layer != ADORE && !is_arrow) ergodox_right_led_3_off (); } @@ -936,20 +890,17 @@ void matrix_scan_user(void) { } #endif + SEQ_ONE_KEY (KC_Q) { + register_code16 (LCTL(KC_1)); + unregister_code16 (LCTL(KC_1)); + } + SEQ_ONE_KEY (KC_T) { time_travel = !time_travel; } SEQ_ONE_KEY (KC_U) { - ang_do_unicode (); - } - - SEQ_TWO_KEYS (KC_LEAD, KC_U) { - unicnt = 0; - unimagic = true; - register_code(KC_RSFT); - TAP_ONCE(KC_U); - unregister_code(KC_RSFT); + qk_ucis_start(); } SEQ_ONE_KEY (KC_V) { @@ -958,25 +909,23 @@ void matrix_scan_user(void) { SEQ_ONE_KEY (KC_L) { /* λ */ - ang_do_unicode (); - - uint16_t codes[] = {KC_0, KC_3, KC_B, KC_B, KC_ENT, 0}; - ang_tap (codes); + unicode_input_start(); + register_hex(0x03bb); + unicode_input_finish(); } SEQ_ONE_KEY (KC_Y) { - uint16_t codes[] = {KC_BSLS, KC_O, KC_SLSH, 0}; - ang_tap (codes); + ang_tap (KC_BSLS, KC_O, KC_SLSH, 0); } SEQ_ONE_KEY (KC_S) { - ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); TAP_ONCE (KC_BSLS); register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); - ang_do_unicode (); TAP_ONCE (KC_3); TAP_ONCE (KC_0); TAP_ONCE (KC_C); TAP_ONCE (KC_4); TAP_ONCE (KC_SPC); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); TAP_ONCE (KC_SLSH); - ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); } SEQ_TWO_KEYS (KC_W, KC_M) { @@ -987,8 +936,7 @@ void matrix_scan_user(void) { wait_ms (1000); - uint16_t codes[] = {KC_M, KC_A, KC_X, KC_MINS, KC_F, KC_O, KC_C, KC_U, KC_S, KC_E, KC_D, KC_ENT, 0}; - ang_tap (codes); + ang_tap (KC_M, KC_A, KC_X, KC_MINS, KC_F, KC_O, KC_C, KC_U, KC_S, KC_E, KC_D, KC_ENT, 0); register_code (KC_LGUI); register_code (KC_UP); unregister_code (KC_UP); @@ -1013,13 +961,7 @@ void matrix_scan_user(void) { ergodox_right_led_2_off (); wait_ms (100); ergodox_right_led_1_off (); -#if ADORE_AUTOLOG - log_enable = true; -#endif } else { -#if ADORE_AUTOLOG - log_enable = false; -#endif is_adore = 0; default_layer_and (0); default_layer_or (1UL << BASE); @@ -1043,140 +985,38 @@ void matrix_scan_user(void) { static uint16_t last4[4]; -bool is_uni_seq(char *seq) { - uint8_t i; - - for (i = 0; seq[i]; i++) { - uint16_t code; - if (('1' <= seq[i]) && (seq[i] <= '9')) - code = seq[i] - '1' + KC_1; - else if (seq[i] == '0') - code = KC_0; - else - code = seq[i] - 'a' + KC_A; - - if (i > unicnt) - return false; - if (uni[i] != code) - return false; - } - - if (uni[i] == KC_ENT || uni[i] == KC_SPC) - return true; - - return false; -} - -uint16_t hex_to_keycode(uint8_t hex) -{ - if (hex == 0x0) { - return KC_0; - } else if (hex < 0xA) { - return KC_1 + (hex - 0x1); - } else { - return KC_A + (hex - 0xA); - } -} - -void register_hex(uint16_t hex) { - bool leading_zeros = true; - - for(int i = 3; i >= 0; i--) { - uint8_t digit = ((hex >> (i*4)) & 0xF); - if (digit != 0) - leading_zeros = false; - else if (leading_zeros) - continue; - register_code(hex_to_keycode(digit)); - unregister_code(hex_to_keycode(digit)); - wait_ms(10); - } -} - -typedef struct { - char *symbol; - uint16_t codes[4]; -} qk_ucis_symbol_t; - -static qk_ucis_symbol_t ucis_symbol_table[] = { - {"poop", {0x1, 0xf4a9, 0}}, - {"rofl", {0x1, 0xf923, 0}}, - {"kiss", {0x1, 0xf619, 0}}, - {"snowman", {0x2603, 0}}, - {NULL, {}} -}; - -bool process_record_ucis (uint16_t keycode, keyrecord_t *record) { - uint8_t i; - - if (!unimagic) - return true; - - if (!record->event.pressed) - return true; - - uni[unicnt] = keycode; - unicnt++; - - if (keycode == KC_BSPC) { - if (unicnt >= 2) { - unicnt-= 2; - return true; - } else { - unicnt--; - return false; - } - } - - if (keycode == KC_ENT || keycode == KC_SPC) { - bool symbol_found = false; - - for (i = unicnt; i > 0; i--) { - register_code (KC_BSPC); - unregister_code (KC_BSPC); - wait_ms(10); - } - - ang_do_unicode(); - wait_ms(10); - for (i = 0; ucis_symbol_table[i].symbol; i++) { - if (is_uni_seq (ucis_symbol_table[i].symbol)) { - symbol_found = true; - for (uint8_t j = 0; ucis_symbol_table[i].codes[j]; j++) { - register_hex(ucis_symbol_table[i].codes[j]); - } - break; - } - } - if (!symbol_found) { - for (i = 0; i < unicnt - 1; i++) { - uint8_t code; - - if (uni[i] > KF_1) - code = uni[i] - KF_1 + KC_1; - else - code = uni[i]; - TAP_ONCE(code); - wait_ms (10); - } - } - - unimagic = false; - return true; - } - return true; -} +const qk_ucis_symbol_t ucis_symbol_table[] = UCIS_TABLE +( + UCIS_SYM("poop", 0x1f4a9), + UCIS_SYM("rofl", 0x1f923), + UCIS_SYM("kiss", 0x1f619), + UCIS_SYM("snowman", 0x2603), + UCIS_SYM("coffee", 0x2615), + UCIS_SYM("heart", 0x2764), + UCIS_SYM("bolt", 0x26a1) +); bool process_record_user (uint16_t keycode, keyrecord_t *record) { #if KEYLOGGER_ENABLE if (log_enable) { - xprintf ("KL: col=%d, row=%d\n", record->event.key.col, - record->event.key.row); + xprintf ("KL: col=%02d, row=%02d, pressed=%d, layer=%s\n", record->event.key.col, + record->event.key.row, record->event.pressed, (is_adore) ? "ADORE" : "Dvorak"); } #endif - if (!process_record_ucis (keycode, record)) - return false; + if (keycode == KC_ESC && record->event.pressed) { + bool queue = true; + + if ((get_oneshot_mods ()) && !has_oneshot_mods_timed_out ()) { + clear_oneshot_mods (); + queue = false; + } + if (layer_state & (1UL<event.pressed) { uint8_t p; @@ -1188,15 +1028,13 @@ bool process_record_user (uint16_t keycode, keyrecord_t *record) { last4[3] = keycode; if (last4[0] == KC_D && last4[1] == KC_A && last4[2] == KC_T && last4[3] == KC_E) { - uint16_t codes[] = {KC_E, KC_SPC, KC_MINS, KC_D, KC_SPC, KC_QUOT, 0}; - ang_tap (codes); + ang_tap (KC_E, KC_SPC, KC_MINS, KC_D, KC_SPC, KC_QUOT, 0); register_code (KC_RSFT); register_code (KC_EQL); unregister_code (KC_EQL); unregister_code (KC_RSFT); - uint16_t codes2[] = {KC_4, KC_SPC, KC_D, KC_A, KC_Y, KC_S, KC_QUOT, 0}; - ang_tap (codes2); + ang_tap (KC_4, KC_SPC, KC_D, KC_A, KC_Y, KC_S, KC_QUOT, 0); return false; } @@ -1204,3 +1042,17 @@ bool process_record_user (uint16_t keycode, keyrecord_t *record) { return true; } + +void qk_ucis_symbol_fallback (void) { + for (uint8_t i = 0; i < qk_ucis_state.count - 1; i++) { + uint8_t code; + + if (qk_ucis_state.codes[i] > KF_1) + code = qk_ucis_state.codes[i] - KF_1 + KC_1; + else + code = qk_ucis_state.codes[i]; + register_code(code); + unregister_code(code); + wait_ms (10); + } +} diff --git a/keyboards/ergodox/keymaps/algernon/readme.md b/keyboards/ergodox/keymaps/algernon/readme.md index 26dfddbe6a..5e7adb3320 100644 --- a/keyboards/ergodox/keymaps/algernon/readme.md +++ b/keyboards/ergodox/keymaps/algernon/readme.md @@ -3,11 +3,15 @@ algernon's layout ======================= -This is an unconventional layout for the ErgoDox EZ. For more details about the history of the layout, see my [blog posts about my ErgoDox journey][blog-ergodox]. +This is an unconventional layout for the [ErgoDox EZ][ez]. For more details about the history of the layout, see my [blog posts about my ErgoDox journey][blog-ergodox]. + [ez]: https://ergodox-ez.com/ [blog-ergodox]: https://asylum.madhouse-project.org/blog/tags/ergodox/ -Some of the things in the layout only work when one uses Spacemacs and GNOME under Linux. Your mileage may vary. +Some of the things in the layout only work when one uses [Spacemacs][spacemacs] and [GNOME][gnome] under Linux. Your mileage may vary. + + [spacemacs]: http://spacemacs.org/ + [gnome]: https://www.gnome.org/ ## Table of Contents @@ -40,10 +44,10 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest * The `GUI` key is special, because when I double-tap it, it sends `GUI + w`, which pops up an application selector. It also switches to a one-shot layer, where the number row on the left half turns into app selector macros, for the most common things I usually want to switch to. Otherwise it behaves as on a normal layout. * The `ESC` key also doubles as a one-shot cancel key: if tapped while any of the one-shot modifiers are in-flight (as in, single-tapped, and not expired yet), it cancels all one-shot modifiers. It also cancels the **Hun** layer, if active. Otherwise it sends the usual keycode. * The **Media** and **Hun** layer keys are one-shot, the **STENO** key is a toggle. -* When holding any of the **Arrow** layer keys, the arrow layer activates while the layer key is held. Tapping the key produces the normal key. +* When holding the `Tab`/**Arrow** key, the arrow layer activates while the key is held. Tapping the key produces the normal, `Tab` key. Double-tapping it toggles the **Arrow** layer on until a third tap. * Tapping the `:` key once yields `:`, tapping it twice yields `;`. +* Tapping the `[{(`/`)}]` keys once yields `[` (or `{` when shifted), tapping them twice yields `(`. * The **Lead** key allows me to type in a sequence of keys, and trigger some actions: - - `LEAD u` enters unicode input mode, by sending the GTK+ key sequence that does this. - `LEAD l` uses the unicode input method to enter a `λ`. - `LEAD s` does a lot of magic to type in a shruggie: `¯\_(ツ)_/¯` - `LEAD y` types `\o/`. @@ -52,7 +56,7 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest - `LEAD v` prints the firmware version, the keyboard and the keymap. - `LEAD d` toggles logging keypress positions to the HID console. - `LEAD t` toggles time travel. Figuring out the current `date` is left as an exercise to the reader. - - `LEAD LEAD u` enters the [Unicode symbol input][#unicode-symbol-input] mode. + - `LEAD u` enters the [Unicode symbol input](#unicode-symbol-input) mode. ## ADORE layer @@ -91,6 +95,7 @@ For the layers, the following rules apply: * When the [ADORE layer](#adore-layer) is toggled on, LEDs will light up from left to right in a sequence, then turn off. When the layer is toggled off, the LEDs light up and turn off in the other direction. No LEDs are on while the layer is active. * When the [Hungarian layer](#hungarian-layer) is active, the *green* and *blue* LEDs are on. * When the [Navigation and media layer](#navigation-and-media-layer) is active, the *red* and *green* ones are on. +* When the **ARROW** layer is active, the *red* and *blue* ones are on. * For the [Steno layer](#steno-layer), all LEDs will be turned on. Unless noted otherwise, the layers use a dim light for the LEDs, while modifiers use a stronger one, and modifiers override any layer preferences. For example, when on the one-handed layer, with the left side active (*red* light blinking), if `Shift` is on, the *red* light will be constantly on. @@ -116,7 +121,7 @@ This is an experimental feature, and may or may not work reliably. When the keypress logging functionality is enabled (by `LEAD d`), the keyboard will output a line every time a key is pressed, containing the position of the key in the matrix. This allows one to collect this information, and build analytics over it, such as a heat map, including dead keys too. -Included with the firmware is a small tool that can parse these logs, and create a heatmap that one can import into [KLE][kle]. To use it, simply point `tools/log-to-heatmap.py` to a base layout file (one is included in the `tools/` directory), and the key position log. The latter one can create by running `hid-listen`, and redirecting its output to a file. +Included with the firmware is a small tool that can parse these logs, and create a heatmap that one can import into [KLE][kle]. To use it, either pipe the output of `hid_listen` into it, or pipe it an already saved log, and it will save the results into files in an output directory (given on the command-line). See the output of `tools/log-to-heatmap.py --help` for more information. [kle]: http://www.keyboard-layout-editor.com/ @@ -151,7 +156,35 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the # Changelog -## v1.5 - 2016-08-12 +## v1.6 + +*2016-08-24* + +### Base layer changes + +* The parentheses & bracket keys have been merged: tapping them results in `[` or `{` (if it was shifted), double tapping leads to `(`. +* The `:;` and `-_` keys are now available on the base layer, on their [ADORE](#adore-layer) location, too, just below `[{(`/`]})`. +* The `Apps` key has been replaced by `F12`. +* The `-`/`_` is no longer a tap-dance key. + +### ADORE layer changes + +* Adjustments were made to the [ADORE](#adore-layer) layer, to separate some inconvenient combinations. + +### Miscellaneous changes + +* `LEAD u` now starts the symbolic unicode input system, instead of the OS-one. +* The mouse acceleration keys on the [Navigation and Media](#navigation-and-media-layer) layer have been turned into toggles: tap them once to turn them on, until tapped again. Tapping an accelerator button will turn all the others off. +* When the **ARROW** layer is on, the *red* and *blue* LEDs light up now. + +### Heatmap + +* The built-in keylogger has been greatly enhanced, it now outputs the pressed state, and the layer (Dvorak or ADORE). As such, the `ADORE_AUTOLOG` option has been removed, instead there is `AUTOLOG_ENABLE` now, which when enabled, makes the keylogger start when the keyboard boots. It defaults to off. +* The heatmap generator received a lot of updates. + +## v1.5 + +*2016-08-12* * The **1HAND** layer has been removed. * A `Delete` key is now available on the right thumb cluster. @@ -161,7 +194,9 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the * On the **ARROW** layer, `Backspace` has been replaced by `Enter`. * There is some experimental support for entering Unicode symbols. -## v1.4 - 2016-07-29 +## v1.4 + +*2016-07-29* * When toggling the key logging on or off, the LEDs will do a little dance. * The keylogger is now optional, but enabled by default. Use `KEYLOGGER_ENABLE=no` on the `make` command line to disable it. @@ -169,14 +204,18 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the * The `-`/`_` key was turned into a tap-dance key too. * There is now a way to travel time with the keyboard, toggle the feature on by hitting `LEAD t`. -## v1.3 - 2016-07-06 +## v1.3 + +*2016-07-06* * Added support for logging keys, by pressing `LEAD d`. Also included is a tool to generate a [heatmap](#heatmap) out of the logs. * The arrow and navigation keys were rearranged again, and now require an additional key being held to activate. See the [base layer](#base-layer) for an image that shows where arrows are. * The **experimental** layer has been redone, and is now called [ADORE](#adore-layer), and as such, can be enabled by `LEAD a` now. * Switching between Dvorak and ADORE is now persisted into EEPROM, and survives a reboot. -## v1.2 - 2016-06-22 +## v1.2 + +*2016-06-22* * The forced NKRO mode can be easily toggled off at compile-time, to make the firmware compatible with [certain operating systems](#using-on-windows). * The `:;` key has changed behaviour: to access the `;` symbol, the key needs to be double-tapped, instead of shifted. @@ -187,7 +226,9 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the * On the **experimental** layer, the `L` and `Q`, and the `K` and `G` keys were swapped. * The [Steno](#steno-layer) layer gained a few more `#` and `*` keys, to make it easier on my fingers. -## v1.1 - 2016-06-14 +## v1.1 + +*2016-06-14* * The keyboard starts in NKRO mode, bootmagic and other things are disabled. * A [Steno](#steno-layer) layer was added, to be used with Plover. @@ -201,7 +242,9 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the - `:` now inputs `;` when shifted. * `ESC` cancels the [Hungarian](#hungarian-layer) layer too, not just modifiers. -## v1.0 - 2016-05-26 +## v1.0 + +*2016-05-26* Initial version. diff --git a/keyboards/ergodox/keymaps/algernon/tools/heatmap-adore-layout.json b/keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.ADORE.json similarity index 91% rename from keyboards/ergodox/keymaps/algernon/tools/heatmap-adore-layout.json rename to keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.ADORE.json index 544f61ce87..4dfa877a78 100644 --- a/keyboards/ergodox/keymaps/algernon/tools/heatmap-adore-layout.json +++ b/keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.ADORE.json @@ -75,9 +75,9 @@ "STENO", { "x": 4.5, - "f": 6 + "f": 3 }, - "", + "F12", { "c": "#7adabd", "a": 4, @@ -94,12 +94,20 @@ { "y": -0.875, "c": "#ffb2d2", - "f": 3, + "f": 9, + "a": 6, "w": 1.5 }, - "\n\n~\n`", + "\n\n", { - "t": "#0d0d0b" + "t": "#0d0d0b", + "f": 3, + "a": 4, + "fa": [ + 0, + 0, + 2 + ] }, "!\n1\nF1", { @@ -120,7 +128,7 @@ "t": "#000000", "a": 6 }, - "L", + "G", { "x": 10.5 }, @@ -132,16 +140,16 @@ "x": 2.5, "c": "#bfbad1", "t": "#0d0d0b", - "a": 4 + "a": 6 }, - ">\n.", + "W", { "x": 1, "c": "#7adabd", "t": "#000000", "a": 6 }, - "W", + "L", { "x": 8.5 }, @@ -164,14 +172,15 @@ { "c": "#93c9b7", "a": 4, + "fa": [0, 0, 0], "h": 1.5 }, - "{\n[", + "{\n(\n[", { "x": 4.5, "h": 1.5 }, - "}\n]", + "}\n)\n]", { "c": "#7adabd", "a": 6 @@ -183,21 +192,22 @@ "y": -0.875, "c": "#ffb07b", "t": "#0d0d0b", - "f": 6, + "f": 3, + "a": 4, "w": 1.5 }, - "\n\n", + "\n\n~\n`", { "c": "#ffb2d2", - "a": 4, + "a": 6, "f": 3 }, - "<\n,", + "Y", { "x": 14.5, "a": 6 }, - "Y", + "X", { "a": 4, "w": 1.5 @@ -300,15 +310,14 @@ "x": 6.5, "c": "#93c9b7", "t": "#000000", - "a": 7, "h": 1.5 }, - "(", + ";\n:", { "x": 4.5, "h": 1.5 }, - ")" + "_\n-" ], [ { @@ -320,7 +329,9 @@ }, "\"\n'", { - "x": 10.5 + "x": 10.5, + "a": 6, + "f": 3 }, "V" ], @@ -329,19 +340,22 @@ "y": -0.875, "x": 2.5, "c": "#bfbad1", - "t": "#0d0d0b" + "t": "#0d0d0b", + "a": 6 }, - "Z", + "Q", { "x": 1, "c": "#7adabd", - "t": "#000000" + "t": "#000000", + "a": 4 + }, + "<\n,", + { + "x": 8.5, + "a": 6 }, "K", - { - "x": 8.5 - }, - "G", { "x": 1, "c": "#bfbad1", @@ -354,11 +368,13 @@ "y": -0.875, "x": 5.5, "c": "#7adabd", - "t": "#000000" + "t": "#000000", + "a": 4 }, - "X", + ">\n.", { - "x": 6.5 + "x": 6.5, + "a": 6 }, "B" ], @@ -367,28 +383,32 @@ "y": -0.875, "c": "#ffb07b", "f": 9, - "w": 1.5 + "w": 1.5, + "g": true }, - "\n\n", + "", { "c": "#ffb2d2", "t": "#0d0d0b", - "a": 4, - "f": 3 + "a": 6, + "f": 3, + "g": false }, - "?\n/", + "Z", { "x": 14.5, - "a": 6 + "a": 4 }, - "Q", + "?\n/", { "c": "#ffb07b", "t": "#000000", "f": 9, - "w": 1.5 + "g": true, + "w": 1.5, + "a": 4 }, - "" + "" ], [ { @@ -414,14 +434,14 @@ { "x": 1, "c": "#d4872a", - "g": false, + "g": true, "a": 5 }, - ";\n:", + "", { "x": 8.5 }, - "_\n-", + "", { "x": 1, "c": "#d9dae0", @@ -503,13 +523,13 @@ }, "MEDIA", {}, - "1HAND" + "DEL" ], [ { "x": -3 }, - "LEAD", + "HUN", { "c": "#d4872a", "f": 9, @@ -528,6 +548,6 @@ "c": "#f9cd31", "f": 2 }, - "HUN" + "LEAD" ] ] diff --git a/keyboards/ergodox/keymaps/algernon/tools/heatmap-base-layout.json b/keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.Dvorak.json similarity index 97% rename from keyboards/ergodox/keymaps/algernon/tools/heatmap-base-layout.json rename to keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.Dvorak.json index 148bb1f23b..1248d36af7 100644 --- a/keyboards/ergodox/keymaps/algernon/tools/heatmap-base-layout.json +++ b/keyboards/ergodox/keymaps/algernon/tools/heatmap-layout.Dvorak.json @@ -75,9 +75,9 @@ "STENO", { "x": 4.5, - "f": 6 + "f": 3 }, - "", + "F12", { "c": "#7adabd", "a": 4, @@ -94,12 +94,21 @@ { "y": -0.875, "c": "#ffb2d2", - "f": 3, + "f": 6, + "a": 6, "w": 1.5 }, - "\n\n~\n`", + "\n\n", { - "t": "#0d0d0b" + "f": 3, + "t": "#0d0d0b", + "a": 4, + "fa": [ + 0, + 0, + 2 + ] + }, "!\n1\nF1", { @@ -167,12 +176,12 @@ "a": 4, "h": 1.5 }, - "{\n[", + "{\n(\n[", { "x": 4.5, "h": 1.5 }, - "}\n]", + "}\n)\n]", { "c": "#7adabd", "a": 6 @@ -184,10 +193,10 @@ "y": -0.875, "c": "#ffb07b", "t": "#0d0d0b", - "f": 6, + "f": 3, "w": 1.5 }, - "\n\n", + "\n\n~\n`", { "c": "#ffb2d2", "a": 4, @@ -503,7 +512,7 @@ }, "MEDIA", {}, - "1HAND" + "DEL" ], [ { diff --git a/keyboards/ergodox/keymaps/algernon/tools/log-to-heatmap.py b/keyboards/ergodox/keymaps/algernon/tools/log-to-heatmap.py index a13d12e81a..68585843be 100755 --- a/keyboards/ergodox/keymaps/algernon/tools/log-to-heatmap.py +++ b/keyboards/ergodox/keymaps/algernon/tools/log-to-heatmap.py @@ -3,143 +3,247 @@ import json import os import sys import re +import argparse from math import floor +from os.path import dirname -cr_coord_map = [ - [ - # Row 0 - [ 4, 0], [ 4, 2], [ 2, 0], [ 1, 0], [ 2, 2], [ 3, 0], [ 3, 2], - [ 3, 4], [ 3, 6], [ 2, 4], [ 1, 2], [ 2, 6], [ 4, 4], [ 4, 6], - ], - [ - # Row 1 - [ 8, 0], [ 8, 2], [ 6, 0], [ 5, 0], [ 6, 2], [ 7, 0], [ 7, 2], - [ 7, 4], [ 7, 6], [ 6, 4], [ 5, 2], [ 6, 6], [ 8, 4], [ 8, 6], - ], - [ - # Row 2 - [12, 0], [12, 2], [10, 0], [ 9, 0], [10, 2], [11, 0], [ ], - [ ], [11, 2], [10, 4], [ 9, 2], [10, 6], [12, 4], [12, 6], - ], - [ - # Row 3 - [17, 0], [17, 2], [15, 0], [14, 0], [15, 2], [16, 0], [13, 0], - [13, 2], [16, 2], [15, 4], [14, 2], [15, 6], [17, 4], [17, 6], - ], - [ - # Row 4 - [20, 0], [20, 2], [19, 0], [18, 0], [19, 2], [], [], [], [], - [19, 4], [18, 2], [19, 6], [20, 4], [20, 6], - ], - [ - # Row 5 - [ ], [23, 0], [22, 2], [22, 0], [22, 4], [21, 0], [21, 2], - [24, 0], [24, 2], [25, 0], [25, 4], [25, 2], [26, 0], [ ], - ], -] +class Heatmap(object): + coords = [ + [ + # Row 0 + [ 4, 0], [ 4, 2], [ 2, 0], [ 1, 0], [ 2, 2], [ 3, 0], [ 3, 2], + [ 3, 4], [ 3, 6], [ 2, 4], [ 1, 2], [ 2, 6], [ 4, 4], [ 4, 6], + ], + [ + # Row 1 + [ 8, 0], [ 8, 2], [ 6, 0], [ 5, 0], [ 6, 2], [ 7, 0], [ 7, 2], + [ 7, 4], [ 7, 6], [ 6, 4], [ 5, 2], [ 6, 6], [ 8, 4], [ 8, 6], + ], + [ + # Row 2 + [12, 0], [12, 2], [10, 0], [ 9, 0], [10, 2], [11, 0], [ ], + [ ], [11, 2], [10, 4], [ 9, 2], [10, 6], [12, 4], [12, 6], + ], + [ + # Row 3 + [17, 0], [17, 2], [15, 0], [14, 0], [15, 2], [16, 0], [13, 0], + [13, 2], [16, 2], [15, 4], [14, 2], [15, 6], [17, 4], [17, 6], + ], + [ + # Row 4 + [20, 0], [20, 2], [19, 0], [18, 0], [19, 2], [], [], [], [], + [19, 4], [18, 2], [19, 6], [20, 4], [20, 6], + ], + [ + # Row 5 + [ ], [23, 0], [22, 2], [22, 0], [22, 4], [21, 0], [21, 2], + [24, 0], [24, 2], [25, 0], [25, 4], [25, 2], [26, 0], [ ], + ], + ] -def set_attr_at(j, b, n, attr, fn, val): - blk = j[b][n] - if attr in blk: - blk[attr] = fn(blk[attr], val) - else: - blk[attr] = fn(None, val) + def set_attr_at(self, block, n, attr, fn, val): + blk = self.heatmap[block][n] + if attr in blk: + blk[attr] = fn(blk[attr], val) + else: + blk[attr] = fn(None, val) -def coord(col, row): - return cr_coord_map[row][col] + def coord(self, col, row): + return self.coords[row][col] -def set_attr(orig, new): - return new + @staticmethod + def set_attr(orig, new): + return new -def set_bg(j, (b, n), color): - set_attr_at(j, b, n, "c", set_attr, color) - #set_attr_at(j, b, n, "g", set_attr, False) + def set_bg(self, (block, n), color): + self.set_attr_at(block, n, "c", self.set_attr, color) + #self.set_attr_at(block, n, "g", self.set_attr, False) -def _set_tap_info(o, count, cap): - ns = 4 - o.count ("\n") - return o + "\n" * ns + "%.02f%%" % (float(count) / float(cap) * 100) + def set_tap_info(self, (block, n), count, cap): + def _set_tap_info(o, _count, _cap): + ns = 4 - o.count ("\n") + return o + "\n" * ns + "%.02f%%" % (float(_count) / float(_cap) * 100) -def set_tap_info(j, (b, n), count, cap): - j[b][n + 1] = _set_tap_info (j[b][n + 1], count, cap) + if not cap: + cap = 1 + self.heatmap[block][n + 1] = _set_tap_info (self.heatmap[block][n + 1], count, cap) -def heatmap_color (v): - colors = [ [0.3, 0.3, 1], [0.3, 1, 0.3], [1, 1, 0.3], [1, 0.3, 0.3]] - fb = 0 - if v <= 0: - idx1, idx2 = 0, 0 - elif v >= 1: - idx1, idx2 = len(colors) - 1, len(colors) - 1 - else: - val = v * (len(colors) - 1) - idx1 = int(floor(val)) - idx2 = idx1 + 1 - fb = val - float(idx1) + @staticmethod + def heatmap_color (v): + colors = [ [0.3, 0.3, 1], [0.3, 1, 0.3], [1, 1, 0.3], [1, 0.3, 0.3]] + fb = 0 + if v <= 0: + idx1, idx2 = 0, 0 + elif v >= 1: + idx1, idx2 = len(colors) - 1, len(colors) - 1 + else: + val = v * (len(colors) - 1) + idx1 = int(floor(val)) + idx2 = idx1 + 1 + fb = val - float(idx1) - r = (colors[idx2][0] - colors[idx1][0]) * fb + colors[idx1][0] - g = (colors[idx2][1] - colors[idx1][1]) * fb + colors[idx1][1] - b = (colors[idx2][2] - colors[idx1][2]) * fb + colors[idx1][2] + r = (colors[idx2][0] - colors[idx1][0]) * fb + colors[idx1][0] + g = (colors[idx2][1] - colors[idx1][1]) * fb + colors[idx1][1] + b = (colors[idx2][2] - colors[idx1][2]) * fb + colors[idx1][2] - r, g, b = [x * 255 for x in r, g, b] - return "#%02x%02x%02x" % (r, g, b) + r, g, b = [x * 255 for x in r, g, b] + return "#%02x%02x%02x" % (r, g, b) -# Load the keylog -def load_keylog(fname, restrict_row): - keylog = {} - total = 0 - with open(fname, "r") as f: - lines = f.readlines() - for line in lines: - m = re.search ('KL: col=(\d+), row=(\d+)', line) + def __init__(self, layout): + self.log = {} + self.total = 0 + self.max_cnt = 0 + self.layout = layout + + def update_log(self, (c, r)): + if not (c, r) in self.log: + self.log[(c, r)] = 0 + self.log[(c, r)] = self.log[(c, r)] + 1 + self.total = self.total + 1 + if self.max_cnt < self.log[(c, r)]: + self.max_cnt = self.log[(c, r)] + + def get_heatmap(self): + with open("%s/heatmap-layout.%s.json" % (dirname(sys.argv[0]), self.layout), "r") as f: + self.heatmap = json.load (f) + + ## Reset colors + for row in self.coords: + for coord in row: + if coord != []: + self.set_bg (coord, "#d9dae0") + + for (c, r) in self.log: + coords = self.coord(c, r) + b, n = coords + cap = self.max_cnt + if cap == 0: + cap = 1 + v = float(self.log[(c, r)]) / cap + self.set_bg (coords, self.heatmap_color (v)) + self.set_tap_info (coords, self.log[(c, r)], self.total) + return self.heatmap + + def get_stats(self): + usage = [ + # left hand + [0, 0, 0, 0, 0], + # right hand + [0, 0, 0, 0, 0] + ] + finger_map = [0, 0, 1, 2, 3, 4, 4] + for (c, r) in self.log: + if r == 5: # thumb cluster + if c <= 6: # left side + usage[0][4] = usage[0][4] + self.log[(c, r)] + else: + usage[1][4] = usage[1][4] + self.log[(c, r)] + else: + fc = c + hand = 0 + if fc >= 7: + fc = fc - 7 + hand = 1 + fm = finger_map[fc] + usage[hand][fm] = usage[hand][fm] + self.log[(c, r)] + hand_usage = [0, 0] + for f in usage[0]: + hand_usage[0] = hand_usage[0] + f + for f in usage[1]: + hand_usage[1] = hand_usage[1] + f + + total = self.total + if total == 0: + total = 1 + stats = { + "hands": { + "left": { + "usage": float(hand_usage[0]) / total * 100, + "fingers": { + "0 - pinky": 0, + "1 - ring": 0, + "2 - middle": 0, + "3 - index": 0, + "4 - thumb": 0, + } + }, + "right": { + "usage": float(hand_usage[1]) / total * 100, + "fingers": { + "0 - thumb": 0, + "1 - index": 0, + "2 - middle": 0, + "3 - ring": 0, + "4 - pinky": 0, + } + }, + } + } + + hmap = ['left', 'right'] + fmap = ['0 - pinky', '1 - ring', '2 - middle', '3 - index', '4 - thumb', + '0 - thumb', '1 - index', '2 - middle', '3 - ring', '4 - pinky'] + for hand_idx in range(len(usage)): + hand = usage[hand_idx] + for finger_idx in range(len(hand)): + stats['hands'][hmap[hand_idx]]['fingers'][fmap[finger_idx + hand_idx * 5]] = float(hand[finger_idx]) / total * 100 + return stats + +def dump_all(out_dir, heatmaps): + for layer in heatmaps.keys(): + if len(heatmaps[layer].log) == 0: + continue + + with open ("%s/%s.json" % (out_dir, layer), "w") as f: + json.dump(heatmaps[layer].get_heatmap(), f) + print >>sys.stderr, "%s stats:" % (layer) + json.dump (heatmaps[layer].get_stats(), sys.stderr, + indent = 4, sort_keys = True) + print >>sys.stderr, "" + print >>sys.stderr, "" + +def main(opts): + + heatmaps = {"Dvorak": Heatmap("Dvorak"), + "ADORE": Heatmap("ADORE") + } + cnt = 0 + restrict_row = opts.restrict_row + out_dir = opts.outdir + + while True: + line = sys.stdin.readline() + if not line: + break + m = re.search ('KL: col=(\d+), row=(\d+), pressed=(\d+), layer=(.*)', line) if not m: continue - (c, r) = (int(m.group (2)), int(m.group (1))) - if restrict_row != None and r != int(restrict_row): + + cnt = cnt + 1 + (c, r, l) = (int(m.group (2)), int(m.group (1)), m.group (4)) + if restrict_row != -1 and r != restrict_row: + continue + if c in opts.ignore_columns: continue - if (c, r) in keylog: - keylog[(c, r)] = keylog[(c, r)] + 1 - else: - keylog[(c, r)] = 1 - total = total + 1 - return total / 2, keylog -def l_flat(s): - f = s.split("\n") - return ", ".join (f) + heatmaps[l].update_log ((c, r)) -def main(base_fn, log_fn, restrict_row = None): + if opts.dump_interval != -1 and cnt >= opts.dump_interval: + cnt = 0 + dump_all(out_dir, heatmaps) - with open(base_fn, "r") as f: - layout = json.load (f) - - ## Reset colors - for row in cr_coord_map: - for col in row: - if col != []: - set_bg (layout, col, "#d9dae0") - #set_attr_at (layout, col[0], col[1], "g", set_attr, True) - - total, log = load_keylog (log_fn, restrict_row) - max_cnt = 0 - for (c, r) in log: - max_cnt = max(max_cnt, log[(c, r)]) - - # Create the heatmap - for (c, r) in log: - coords = coord(c, r) - b, n = coords - cap = max_cnt - v = float(log[(c, r)]) / cap - print >> sys.stderr, "%s => %d/%d => %f = %s" % (l_flat(layout[b][n+1]), log[(c,r)], cap, v, heatmap_color(v)) - set_bg (layout, coord(c, r), heatmap_color (v)) - set_tap_info (layout, coord (c, r), log[(c, r)], total) - - print json.dumps(layout) + dump_all (out_dir, heatmaps) if __name__ == "__main__": - if len(sys.argv) < 3: - print """Log to Heatmap -- creates a heatmap out of keyboard logs - -Usage: log-to-heatmap.py base-layout.json logfile [row] >layout.json""" - sys.exit (1) - main(*sys.argv[1:]) + parser = argparse.ArgumentParser (description = "keylog to heatmap processor") + parser.add_argument ('outdir', action = 'store', + help = 'Output directory') + parser.add_argument ('--row', dest = 'restrict_row', action = 'store', type = int, + default = -1, help = 'Restrict processing to this row only') + parser.add_argument ('--dump-interval', dest = 'dump_interval', action = 'store', type = int, + default = 100, help = 'Dump stats and heatmap at every Nth event, -1 for dumping at EOF only') + parser.add_argument ('--ignore-column', dest = 'ignore_columns', action = 'append', type = int, + default = [], help = 'Ignore the specified columns') + args = parser.parse_args() + main(args) From 5b58d7d1458502ad52b7a8e2be52afab17dc51a5 Mon Sep 17 00:00:00 2001 From: coderkun Date: Sun, 21 Aug 2016 19:31:34 +0200 Subject: [PATCH 05/17] =?UTF-8?q?Disable=20debugging=20for=20Ergodox=20key?= =?UTF-8?q?map=20=E2=80=9Ccoderkun=5Fneo2=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keyboards/ergodox/keymaps/coderkun_neo2/Makefile | 1 + keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/Makefile b/keyboards/ergodox/keymaps/coderkun_neo2/Makefile index 6c0a79b110..b0fe90ab1d 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/Makefile +++ b/keyboards/ergodox/keymaps/coderkun_neo2/Makefile @@ -1,2 +1,3 @@ SLEEP_LED_ENABLE = no UNICODE_ENABLE = yes +COMMAND_ENABLE = no diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c index 2ac06eef85..90651956af 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c @@ -1,5 +1,4 @@ #include "ergodox.h" -#include "debug.h" #include "action_layer.h" #include "led.h" #include "keymap_extras/keymap_neo2.h" From c78b44fb18194fb130ec3c49c38abc5afb6fee34 Mon Sep 17 00:00:00 2001 From: coderkun Date: Sun, 21 Aug 2016 20:39:09 +0200 Subject: [PATCH 06/17] =?UTF-8?q?Set=20Unicode=20input=20mode=20and=20over?= =?UTF-8?q?ride=20unicode=5Finput=5Fstart()=20method=20to=20keymap=20?= =?UTF-8?q?=E2=80=9Ccoderkun=5Fneo2=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c index 90651956af..b665a5f3ae 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c @@ -155,8 +155,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FMU] = 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,UC(0x2713),KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2715),KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2715),KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2713),KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_MS_L, KC_MS_U, @@ -244,6 +244,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) // Runs just one time when the keyboard initializes. void matrix_init_user(void) { + set_unicode_input_mode(UC_LNX); }; @@ -278,3 +279,14 @@ void matrix_scan_user(void) } }; + + +// Override Unicode start method to use NEO_U instead of KC_U +void unicode_input_start (void) { + register_code(KC_LCTL); + register_code(KC_LSFT); + register_code(NEO_U); + unregister_code(NEO_U); + unregister_code(KC_LSFT); + unregister_code(KC_LCTL); +}; From 137eb118e352201f7d324743e34ed57e6885b689 Mon Sep 17 00:00:00 2001 From: coderkun Date: Fri, 26 Aug 2016 13:26:16 +0200 Subject: [PATCH 07/17] =?UTF-8?q?Add=20box-drawing=20Unicode=20characters?= =?UTF-8?q?=20to=20keymap=20=E2=80=9Ccoderkun=5Fneo2=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c index b665a5f3ae..0eedecf3dd 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c @@ -137,11 +137,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ - * │ │ │ │ │ ✕ │ │ │ │ │ │ F9 │ F10 │ F11 │ F12 │ │ + * │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ │ F9 │ F10 │ F11 │ F12 │ │ * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ - * │ │ │ │ │ ✓ │ ├─────┤ ├─────┤ │ F5 │ F6 │ F7 │ F8 │ │ + * │ │ ├ │ ┼ │ ┤ │ ✓ │ ✕ ├─────┤ ├─────┤ │ F5 │ F6 │ F7 │ F8 │ │ * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ - * │ │ │ │ │ │ │ │ │ │ │ F1 │ F2 │ F3 │ F4 │ │ + * │ │ └ │ ┴ │ ┘ │ │ │ │ │ │ │ F1 │ F2 │ F3 │ F4 │ │ * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ @@ -155,9 +155,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FMU] = 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,UC(0x2715),KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2713),KC_TRNS, - KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502),KC_TRNS, + KC_TRNS, UC(0x251C),UC(0x253C),UC(0x2524),UC(0x2713),UC(0x2715), + KC_TRNS, UC(0x2514),UC(0x2534),UC(0x2518),KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_MS_L, KC_MS_U, KC_BTN1, From acda2b793f69c6e0e9b9667e9ebe8a0325eb5ecd Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Thu, 1 Sep 2016 08:32:47 +0200 Subject: [PATCH 08/17] tap-dance: Do not start a sequence on keyup There was an odd case, which confused the hell out of tap-dance: suppose you had a number of tap-dance keys, on a layer, and as part of the tap-dance, you turned that layer off - or had it on one-shot to begin with. In this case, the keydown event would trigger the tap-dance key, but the keyup would not. This had two funky consequences: - tap-dance did not correctly register that the dance has ended. - pressing any other tap-dance key would interrupt the previous tap-dance, and potentially input unwanted characters. To fix this, we simply do not start a tap-dance sequence on keyup, only when it is pressed. This way the previous sequence has enough time to time-out and finish properly, and we don't get confused. This fixes algernon/ergodox-layout#107. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_tap_dance.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index 07de3ecb8f..79ade4d000 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -65,9 +65,9 @@ bool process_tap_dance(uint16_t keycode, keyrecord_t *record) { highest_td = idx; action = &tap_dance_actions[idx]; - action->state.keycode = keycode; action->state.pressed = record->event.pressed; if (record->event.pressed) { + action->state.keycode = keycode; action->state.count++; action->state.timer = timer_read(); @@ -77,8 +77,9 @@ bool process_tap_dance(uint16_t keycode, keyrecord_t *record) { process_tap_dance_action_on_dance_finished (paction); reset_tap_dance (&paction->state); } + + last_td = keycode; } - last_td = keycode; break; From 8b2a235c8de7123187e0aa1dd950947f20a51f07 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Thu, 1 Sep 2016 18:14:39 +0100 Subject: [PATCH 09/17] changed order of modifiers after experimentation, updated readme --- keyboards/planck/keymaps/callum/keymap.c | 4 ++-- keyboards/planck/keymaps/callum/readme.md | 15 +++++---------- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/keyboards/planck/keymaps/callum/keymap.c b/keyboards/planck/keymaps/callum/keymap.c index 494ed30b06..572756a383 100644 --- a/keyboards/planck/keymaps/callum/keymap.c +++ b/keyboards/planck/keymaps/callum/keymap.c @@ -38,14 +38,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| Z | X | C | V | B | K | M | , | . | / |Shift | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Func | GUI | Alt | Ctrl | Symb |Enter |Space | Move | GUI | Alt | Ctrl |Caps | + * | Func | Ctrl | Alt | GUI | Symb |Enter |Space | Move | GUI | Alt | Ctrl |Caps | * `-----------------------------------------------------------------------------------' */ [_BASE] = { {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_MINS}, {KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT}, - {FUNC, KC_LGUI, KC_LALT, KC_LCTL, SYMB, KC_ENT, KC_SPC, MOVE, KC_RGUI, KC_RALT, KC_RCTL, KC_CAPS} + {FUNC, KC_LCTL, KC_LALT, KC_LGUI, SYMB, KC_ENT, KC_SPC, MOVE, KC_RGUI, KC_RALT, KC_RCTL, KC_CAPS} }, /* MOVE diff --git a/keyboards/planck/keymaps/callum/readme.md b/keyboards/planck/keymaps/callum/readme.md index 030def7f77..c7ad5d163c 100644 --- a/keyboards/planck/keymaps/callum/readme.md +++ b/keyboards/planck/keymaps/callum/readme.md @@ -2,24 +2,19 @@ This is a layout for the grid planck, built with a few ideals in mind. These ideals are just my opinion mind! The great thing about *qmk* is that we can all afford to have different opinions about what makes a good layout: -- Minimal response times should be maintained. i.e. keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided --- since they inevitably send their keycode later than a normal key, interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording. +- Minimal response times should be maintained. i.e. keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided — since they inevitably send their keycode later than a normal key, interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording. - The hands should never need to leave the home position. The usual culprit for this is the arrow cluster, so the arrow cluster should be as close to home as possible. - There should be two of every modifier (one on each side), since otherwise certain long key combinations become hard to make. - Backspace should be in the “capslock position” as God intended. -- The keyboard should be usable without any firmware changes on any operating system. In my case that means it should work on *Windows* and *Linux* without any software modifications, while I can change the behaviour slightly on *macOS* in software since that’s my home OS. The images reflect the intended use on *macOS* **after** minor software tweaks; which will be noted. We have four layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow cluster etc, a `SYMB` layer, with numbers and symbols; and a `FUNC` layer, with function keys and media keys. ## The `BASE` layer -![](http://i.imgur.com/aEXOlWl.png) +![](http://i.imgur.com/tVNI3SE.png) This is the default layer; in [colemak](https://colemak.com). `esc` and `del` are conspicuously absent but are especially easy to reach from either of the other main layers (see below). The `backspace` location is standard colemak. The `caps` key is still on the `BASE` layer but only because I don’t really use the bottom corners so there’s nothing else I would rather put there. Having `enter` on a thumb means I can still have `quote` immediately to the right of `O`, something that would have annoyed me endlessly otherwise. `minus` is in the upper right because I had an extra space and it’s probably my next most used key that didn’t yet have a home. -The `MOVE` and `SYMB` layers are reached by holding down the `move` and `symb` keys respectively. The `FUNC` layer is reached by holding down both the `move` and `symb` keys simultaneosly, *or* by holding down the `fn` key. The intended use is that whenever both hands are on the keyboard, the former method is used, and the latter is only used when, for example, reaching over to the keyboard with one hand to access the media controls. - -The `ctrl`, `alt`, `cmd` cluster is asymmetric around the centre so that at least one of each of the modifiers can be reached with the thumbs. The intended use is to always hit the left `cmd` and the right `ctrl`, unless an awkward key combination dictates otherwise. - -In firmware `ctrl` and `cmd`/`GUI` are swapped with respect to the image above --- I swap them to the illustrated location when using *macOS* and leave them be for *Windows* and *Linux*. (so that `cmd-z,x,c,v,...` becomes `ctrl-z,x,c,v,...` saving me some confusion) +The `MOVE` and `SYMB` layers are reached by holding down the `move` and `symb` keys respectively. The `FUNC` layer is reached by holding down both the `move` and `symb` keys simultaneously, *or* by holding down the `fn` key. The intended use is that whenever both hands are on the keyboard, the former method is used, and the latter is only used when, for example, reaching over to the keyboard with one hand to access the media controls. ## The `MOVE` layer ![](http://i.imgur.com/KXRSuHT.png) @@ -40,9 +35,9 @@ The symbol layer has all the numbers and their usual corresponding symbols in th Again none of the modifiers are overwritten so that shortcuts involving numbers or symbols work as expected. ## The `FUNC` layer -![](http://i.imgur.com/skxRZiH.png) +![](http://i.imgur.com/1VKFBBU.png) -The only thing of note here is that `bl+` and `bl-` are short for *backlight up* and *backlight down* respectively, and in firmware are actually `KC_PAUS` and `KC_SLCK` respectively, since *macOS* interprets these as the backlight keys. +The only things of note here are that `bl+` and `bl-` are short for *backlight up* and *backlight down*, and in firmware are actually `KC_PAUS` and `KC_SLCK` respectively, since *macOS* interprets these as the backlight keys. And that `lock` is currently a macro hard coded to turn off the screen on *macOS*. (By activating the shortcut `shift-cmd-power`.) ## Other changes from the default I have LEDs and sound disabled, simply because I have no need of them. \ No newline at end of file From 4c67ccc81ee8006190438c5f54cda871bcb2afa6 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Thu, 1 Sep 2016 18:30:49 +0100 Subject: [PATCH 10/17] changed some of the wording in the readme --- keyboards/planck/keymaps/callum/readme.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/planck/keymaps/callum/readme.md b/keyboards/planck/keymaps/callum/readme.md index c7ad5d163c..2d38e6355a 100644 --- a/keyboards/planck/keymaps/callum/readme.md +++ b/keyboards/planck/keymaps/callum/readme.md @@ -1,11 +1,11 @@ # callum’s planck layout -This is a layout for the grid planck, built with a few ideals in mind. These ideals are just my opinion mind! The great thing about *qmk* is that we can all afford to have different opinions about what makes a good layout: +This is a layout for the grid planck, built with a few ideals in mind: -- Minimal response times should be maintained. i.e. keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided — since they inevitably send their keycode later than a normal key, interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording. +- Minimal response times should be maintained. i.e. keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided — they inevitably send their keycode later than a normal key, interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording. - The hands should never need to leave the home position. The usual culprit for this is the arrow cluster, so the arrow cluster should be as close to home as possible. -- There should be two of every modifier (one on each side), since otherwise certain long key combinations become hard to make. -- Backspace should be in the “capslock position” as God intended. +- There should be two of every modifier (one on each side), otherwise certain long key combinations become hard to make. +- Backspace should be in the “capslock position” in the colemak tradition. We have four layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow cluster etc, a `SYMB` layer, with numbers and symbols; and a `FUNC` layer, with function keys and media keys. From e4167c8c53b0cf7c68192bbe4db368785f24b970 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Fri, 2 Sep 2016 09:03:39 +0100 Subject: [PATCH 11/17] fixed incorrect key combination for locking screen on macOS --- keyboards/planck/keymaps/callum/keymap.c | 4 ++-- keyboards/planck/keymaps/callum/readme.md | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/planck/keymaps/callum/keymap.c b/keyboards/planck/keymaps/callum/keymap.c index 572756a383..6c34311339 100644 --- a/keyboards/planck/keymaps/callum/keymap.c +++ b/keyboards/planck/keymaps/callum/keymap.c @@ -137,11 +137,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case LOCK: if (record->event.pressed) { register_code(KC_RSFT); - register_code(KC_RGUI); + register_code(KC_RCTL); register_code(KC_POWER); } else { unregister_code(KC_POWER); - unregister_code(KC_RGUI); + unregister_code(KC_RCTL); unregister_code(KC_RSFT); } return false; diff --git a/keyboards/planck/keymaps/callum/readme.md b/keyboards/planck/keymaps/callum/readme.md index 2d38e6355a..b70de3f1e2 100644 --- a/keyboards/planck/keymaps/callum/readme.md +++ b/keyboards/planck/keymaps/callum/readme.md @@ -14,7 +14,7 @@ We have four layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow c This is the default layer; in [colemak](https://colemak.com). `esc` and `del` are conspicuously absent but are especially easy to reach from either of the other main layers (see below). The `backspace` location is standard colemak. The `caps` key is still on the `BASE` layer but only because I don’t really use the bottom corners so there’s nothing else I would rather put there. Having `enter` on a thumb means I can still have `quote` immediately to the right of `O`, something that would have annoyed me endlessly otherwise. `minus` is in the upper right because I had an extra space and it’s probably my next most used key that didn’t yet have a home. -The `MOVE` and `SYMB` layers are reached by holding down the `move` and `symb` keys respectively. The `FUNC` layer is reached by holding down both the `move` and `symb` keys simultaneously, *or* by holding down the `fn` key. The intended use is that whenever both hands are on the keyboard, the former method is used, and the latter is only used when, for example, reaching over to the keyboard with one hand to access the media controls. +The `MOVE` and `SYMB` layers are reached by holding down the `move` and `symb` keys respectively. The `FUNC` layer is reached by holding down both the `move` and `symb` keys simultaneously, *or* by holding down the `fn` key. The intended use is that whenever both hands are on the keyboard, the former method is used, and the latter is only used when, for example, reaching over to the keyboard with one hand to access the media controls. ## The `MOVE` layer ![](http://i.imgur.com/KXRSuHT.png) @@ -37,7 +37,7 @@ Again none of the modifiers are overwritten so that shortcuts involving numbers ## The `FUNC` layer ![](http://i.imgur.com/1VKFBBU.png) -The only things of note here are that `bl+` and `bl-` are short for *backlight up* and *backlight down*, and in firmware are actually `KC_PAUS` and `KC_SLCK` respectively, since *macOS* interprets these as the backlight keys. And that `lock` is currently a macro hard coded to turn off the screen on *macOS*. (By activating the shortcut `shift-cmd-power`.) +The only things of note here are that `bl+` and `bl-` are short for *backlight up* and *backlight down*, and in firmware are actually `KC_PAUS` and `KC_SLCK` respectively, since *macOS* interprets these as the backlight keys. And that `lock` is currently a macro hard coded to turn off the screen on *macOS*. (By activating the shortcut `shift-ctrl-power`.) ## Other changes from the default -I have LEDs and sound disabled, simply because I have no need of them. \ No newline at end of file +I have LEDs and sound disabled, simply because I have no need of them. From 295ef0d9649b7482c380f38dd6157879df4af91d Mon Sep 17 00:00:00 2001 From: Major Koos Date: Fri, 2 Sep 2016 16:14:40 -0700 Subject: [PATCH 12/17] Add support for JD40 MKII PCB RGB Included. --- keyboards/jd40/Makefile | 74 +++++++++++ keyboards/jd40/config.h | 79 ++++++++++++ keyboards/jd40/jd40.c | 26 ++++ keyboards/jd40/jd40.h | 45 +++++++ keyboards/jd40/keymaps/default/keymap.c | 164 ++++++++++++++++++++++++ keyboards/jd40/readme.md | 17 +++ 6 files changed, 405 insertions(+) create mode 100644 keyboards/jd40/Makefile create mode 100644 keyboards/jd40/config.h create mode 100644 keyboards/jd40/jd40.c create mode 100644 keyboards/jd40/jd40.h create mode 100644 keyboards/jd40/keymaps/default/keymap.c create mode 100644 keyboards/jd40/readme.md diff --git a/keyboards/jd40/Makefile b/keyboards/jd40/Makefile new file mode 100644 index 0000000000..242748111c --- /dev/null +++ b/keyboards/jd40/Makefile @@ -0,0 +1,74 @@ + + +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# comment out to disable the options. +# +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 ?= yes # Console for debug(+400) +# COMMAND_ENABLE ?= yes # Commands for debug and configuration +KEYBOARD_LOCK_ENABLE ?= yes # Allow locking of keyboard via magic key +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +# SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality +# MIDI_ENABLE ?= YES # MIDI controls +# UNICODE_ENABLE ?= YES # Unicode +# BLUETOOTH_ENABLE ?= yes # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE ?= yes # Enable RGB Underglow + +ifndef QUANTUM_DIR + include ../../Makefile +endif + diff --git a/keyboards/jd40/config.h b/keyboards/jd40/config.h new file mode 100644 index 0000000000..e2594f4b37 --- /dev/null +++ b/keyboards/jd40/config.h @@ -0,0 +1,79 @@ +/* +Copyright 2012 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER geekhack +#define PRODUCT jd40v2 +#define DESCRIPTION t.m.k. keyboard firmware for JD40 MKII + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { F0, F1, F5, B4 } +#define MATRIX_COL_PINS { F4, D7, B5, B6, C6, C7, D4, D6, D5, D0, D1, D2 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +#define BACKLIGHT_LEVELS 3 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +#define RGB_DI_PIN D3 +#define RGBLIGHT_TIMER +#define RGBLED_NUM 12 // Number of LEDs +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 + +#endif diff --git a/keyboards/jd40/jd40.c b/keyboards/jd40/jd40.c new file mode 100644 index 0000000000..fa06356d97 --- /dev/null +++ b/keyboards/jd40/jd40.c @@ -0,0 +1,26 @@ +#include "jd40.h" + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + + // if (usb_led & (1<event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +void matrix_scan_user(void) { + +// Layer LED indicators +// ESC led on when in function layer, WASD cluster leds enabled when on arrow cluster + uint32_t layer = layer_state; + if (layer & (1<<1)) { + //gh60_wasd_leds_on(); + } else { + //gh60_wasd_leds_off(); + } + + if (layer & (1<<2)) { + //gh60_esc_led_on(); + } else { + //gh60_esc_led_off(); + } +}; + +#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) + +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { + switch (id) { + case RGBLED_TOGGLE: + //led operations + if (record->event.pressed) { + rgblight_toggle(); + } + break; + case RGBLED_INCREASE_HUE: + if (record->event.pressed) { + rgblight_increase_hue(); + } + break; + case RGBLED_DECREASE_HUE: + if (record->event.pressed) { + rgblight_decrease_hue(); + } + break; + case RGBLED_INCREASE_SAT: + if (record->event.pressed) { + rgblight_increase_sat(); + } + break; + case RGBLED_DECREASE_SAT: + if (record->event.pressed) { + rgblight_decrease_sat(); + } + break; + case RGBLED_INCREASE_VAL: + if (record->event.pressed) { + rgblight_increase_val(); + } + break; + case RGBLED_DECREASE_VAL: + if (record->event.pressed) { + rgblight_decrease_val(); + } + break; + case RGBLED_STEP_MODE: + if (record->event.pressed) { + rgblight_step(); + } + break; + static uint8_t shift_esc_shift_mask; + // Shift + ESC = ~ + case SHIFT_ESC: + shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK; + if (record->event.pressed) { + if (shift_esc_shift_mask) { + add_key(KC_GRV); + send_keyboard_report(); + } else { + add_key(KC_ESC); + send_keyboard_report(); + } + } else { + if (shift_esc_shift_mask) { + del_key(KC_GRV); + send_keyboard_report(); + } else { + del_key(KC_ESC); + send_keyboard_report(); + } + } + break; + } +}; diff --git a/keyboards/jd40/readme.md b/keyboards/jd40/readme.md new file mode 100644 index 0000000000..7daa0980eb --- /dev/null +++ b/keyboards/jd40/readme.md @@ -0,0 +1,17 @@ +## jd40 mkii keyboard firmware + + Pins: + MATRIX_ROW_PINS { F0, F1, F5, B4 } + MATRIX_COL_PINS { F4, D7, B5, B6, C6, C7, D4, D6, D5, D0, D1, D2 } + RGB_DI_PIN D3 + +====================== + +## Quantum MK Firmware + +For the full Quantum feature list, see [the parent readme.md](/readme.md). + +## Building + +Download or clone the whole firmware and navigate to the keyboards/jd40 folder. +Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Amtel Flip to program your .hex file. From 11224a00fe79bcba8ed596847000b7ad8118b95f Mon Sep 17 00:00:00 2001 From: Major Koos Date: Fri, 2 Sep 2016 16:42:40 -0700 Subject: [PATCH 13/17] Add rules.mk file --- keyboards/jd40/rules.mk | 69 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 keyboards/jd40/rules.mk diff --git a/keyboards/jd40/rules.mk b/keyboards/jd40/rules.mk new file mode 100644 index 0000000000..2f18fdf10d --- /dev/null +++ b/keyboards/jd40/rules.mk @@ -0,0 +1,69 @@ + + +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# comment out to disable the options. +# +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 ?= yes # Console for debug(+400) +# COMMAND_ENABLE ?= yes # Commands for debug and configuration +KEYBOARD_LOCK_ENABLE ?= yes # Allow locking of keyboard via magic key +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +# SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality +# MIDI_ENABLE ?= YES # MIDI controls +# UNICODE_ENABLE ?= YES # Unicode +# BLUETOOTH_ENABLE ?= yes # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE ?= yes # Enable RGB Underglow \ No newline at end of file From 13f3c73386da9b15b255b014f5da81cd51613ca1 Mon Sep 17 00:00:00 2001 From: Fred Sundvik Date: Sun, 4 Sep 2016 23:26:49 +0300 Subject: [PATCH 14/17] Fix the ldflags.txt and obj.txt checks There was a minor typo, which caused the files to not be generated and therefore the elf files were always linked. --- tmk_core/rules.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tmk_core/rules.mk b/tmk_core/rules.mk index 79fc7119a6..e4c8aecb2c 100644 --- a/tmk_core/rules.mk +++ b/tmk_core/rules.mk @@ -332,11 +332,13 @@ $1/compiler.txt: $1/force $$(CC) --version | cmp -s - $$@ || $$(CC) --version > $$@ endef +.PRECIOUS: $(MASTER_OUTPUT)/obj.txt $(MASTER_OUTPUT)/obj.txt: $(MASTER_OUTPUT)/force - echo '$(OBJ)' | cmp -s - $$@ || echo '$(OBJ)' > $$@ + echo '$(OBJ)' | cmp -s - $@ || echo '$(OBJ)' > $@ +.PRECIOUS: $(MASTER_OUTPUT)/ldflags.txt $(MASTER_OUTPUT)/ldflags.txt: $(MASTER_OUTPUT)/force - echo '$(LDFLAGS)' | cmp -s - $$@ || echo '$(LDFLAGS)' > $$@ + echo '$(LDFLAGS)' | cmp -s - $@ || echo '$(LDFLAGS)' > $@ # We have to use static rules for the .d files for some reason From bf5941b335268748ee7877fc24cdd538a9faacd0 Mon Sep 17 00:00:00 2001 From: Samuel Ryan Goodwin Date: Mon, 5 Sep 2016 15:53:52 +0200 Subject: [PATCH 15/17] Add my keymap. --- keyboards/planck/keymaps/sgoodwin/Makefile | 25 +++ keyboards/planck/keymaps/sgoodwin/keymap.c | 233 ++++++++++++++++++++ keyboards/planck/keymaps/sgoodwin/readme.md | 10 + 3 files changed, 268 insertions(+) create mode 100644 keyboards/planck/keymaps/sgoodwin/Makefile create mode 100644 keyboards/planck/keymaps/sgoodwin/keymap.c create mode 100644 keyboards/planck/keymaps/sgoodwin/readme.md diff --git a/keyboards/planck/keymaps/sgoodwin/Makefile b/keyboards/planck/keymaps/sgoodwin/Makefile new file mode 100644 index 0000000000..581e08cd02 --- /dev/null +++ b/keyboards/planck/keymaps/sgoodwin/Makefile @@ -0,0 +1,25 @@ + + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # 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) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = yes # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/sgoodwin/keymap.c b/keyboards/planck/keymaps/sgoodwin/keymap.c new file mode 100644 index 0000000000..4d5d3d7ef6 --- /dev/null +++ b/keyboards/planck/keymaps/sgoodwin/keymap.c @@ -0,0 +1,233 @@ +// This is sgoodwin's layout file for the Quantum project. +// It doesn't have Plover or Dvorak layers because he doesn't use that. +// It Also doesn't allow for swapping alt with CMD because that only happens in error. + +#include "planck.h" +#include "action_layer.h" +#ifdef AUDIO_ENABLE + #include "audio.h" +#endif +#include "eeconfig.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 1 +#define _COLEMAK 0 +#define _LOWER 3 +#define _RAISE 4 +#define _ADJUST 16 + +enum planck_keycodes { + COLEMAK = SAFE_RANGE, + QWERTY, + LOWER, + RAISE, + BACKLIT, +}; + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |SHEnt | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Hyper| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = { + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, + {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT(MOD_RSFT, KC_ENT) }, + {ALL_T(KC_NO), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |SHEnt | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Hyper| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = { + {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT(MOD_RSFT, KC_ENT) }, + {ALL_T(KC_NO), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = { + {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_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______}, + {BACKLIT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______}, + {BACKLIT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +}, + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|Audoff| | |Qwerty|Colemk| | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = { + {_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, + {_______, _______, _______, AU_ON, AU_OFF, _______, _______, QWERTY, COLEMAK, _______, _______, _______}, + {_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +} + + +}; + +#ifdef AUDIO_ENABLE + +float tone_startup[][2] = SONG(STARTUP_SOUND); +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +float tone_colemak[][2] = SONG(COLEMAK_SOUND); +float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); + +float tone_goodbye[][2] = SONG(GOODBYE_SOUND); +#endif + + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_qwerty, false, 0); + #endif + persistant_default_layer_set(1UL<<_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_colemak, false, 0); + #endif + persistant_default_layer_set(1UL<<_COLEMAK); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case BACKLIT: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + return false; + break; + } + return true; +} + +void matrix_init_user(void) { + #ifdef AUDIO_ENABLE + startup_user(); + #endif +} + +#ifdef AUDIO_ENABLE + +void startup_user() +{ + _delay_ms(20); // gets rid of tick + PLAY_NOTE_ARRAY(tone_startup, false, 0); +} + +void shutdown_user() +{ + PLAY_NOTE_ARRAY(tone_goodbye, false, 0); + _delay_ms(150); + stop_all_notes(); +} + +void music_on_user(void) +{ + music_scale_user(); +} + +void music_scale_user(void) +{ + PLAY_NOTE_ARRAY(music_scale, false, 0); +} + +#endif diff --git a/keyboards/planck/keymaps/sgoodwin/readme.md b/keyboards/planck/keymaps/sgoodwin/readme.md new file mode 100644 index 0000000000..dfa88f380d --- /dev/null +++ b/keyboards/planck/keymaps/sgoodwin/readme.md @@ -0,0 +1,10 @@ +# sgoodwin's Planck Layout + +Includes: + +1. No Dvorak or Plover +2. No alt-swapping +3. Right enter is shift when held down, enter when tapped. +4. Bottom left corner in normal layers is Hyper and not brightness control. +5. Brightness is instead in the bottom corner on raise/lower. + From e9ce4960c15066c14c775b1d769f1f89ec450787 Mon Sep 17 00:00:00 2001 From: Thomas Fitzsimmons Date: Mon, 5 Sep 2016 17:40:03 -0400 Subject: [PATCH 16/17] Add new ErgoDox EZ keymap, YORUIAN --- .../keymaps/yoruian/90-ergodox-yoruian.conf | 6 ++ keyboards/ergodox/keymaps/yoruian/Makefile | 13 +++ keyboards/ergodox/keymaps/yoruian/README | 102 ++++++++++++++++++ .../ergodox/keymaps/yoruian/ergodox_yoruian | 34 ++++++ keyboards/ergodox/keymaps/yoruian/keymap.c | 61 +++++++++++ keyboards/ergodox/keymaps/yoruian/yoruian.h | 61 +++++++++++ 6 files changed, 277 insertions(+) create mode 100644 keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf create mode 100644 keyboards/ergodox/keymaps/yoruian/Makefile create mode 100644 keyboards/ergodox/keymaps/yoruian/README create mode 100644 keyboards/ergodox/keymaps/yoruian/ergodox_yoruian create mode 100644 keyboards/ergodox/keymaps/yoruian/keymap.c create mode 100644 keyboards/ergodox/keymaps/yoruian/yoruian.h diff --git a/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf b/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf new file mode 100644 index 0000000000..c8a92c5c5b --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf @@ -0,0 +1,6 @@ +Section "InputClass" + Identifier "ErgoDox EZ" + MatchIsKeyboard "on" + MatchProduct "ErgoDox EZ ErgoDox EZ" + Option "XkbLayout" "ergodox_ez_yoruian" +EndSection diff --git a/keyboards/ergodox/keymaps/yoruian/Makefile b/keyboards/ergodox/keymaps/yoruian/Makefile new file mode 100644 index 0000000000..b43a24c611 --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/Makefile @@ -0,0 +1,13 @@ +ifndef QUANTUM_DIR + include ../../../../Makefile +endif + +install-xorg-configuration: + install -m 0664 90-$(KEYBOARD)-$(KEYMAP).conf \ + /etc/X11/xorg.conf.d/90-$(KEYBOARD)-$(KEYMAP).conf + install -m 0644 $(KEYBOARD)_$(KEYMAP) \ + /usr/share/X11/xkb/symbols/$(KEYBOARD)_$(KEYMAP) + +uninstall-xorg-configuration: + -rm -f /etc/X11/xorg.conf.d/90-$(KEYBOARD)-$(KEYMAP).conf + -rm -f /usr/share/X11/xkb/symbols/$(KEYBOARD)_$(KEYMAP) diff --git a/keyboards/ergodox/keymaps/yoruian/README b/keyboards/ergodox/keymaps/yoruian/README new file mode 100644 index 0000000000..99b41434ef --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/README @@ -0,0 +1,102 @@ + Snarfangel's YORUIAN for the ErgoDox EZ + ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ +DEFAULT +┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ ┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ +┃ ` │ ; │ : │ - │ / │ ( │ < ┃ ┃ > │ ) │ ^ │ * │ ~ │ Γ │ σ ┃ +┠───┼───┼───┼───┼───┼───┼───┨ ┠───┼───┼───┼───┼───┼───┼───┨ +┃ ⎋ │ . │ y │ o │ r │ ? │ ✦ ┃ ┃ ✦ │ j │ v │ d │ f │ w │ q ┃ +┠───┼───┼───┼───┼───┼───┤ ┃ ┃ ├───┼───┼───┼───┼───┼───┨ +┃ ⎈ │ u │ i │ a │ n │ ! ├───┨ ┠───┤ m │ h │ t │ s │ c │ ⎈ ┃ +┠───┼───┼───┼───┼───┼───┤ ❖ ┃ ┃ ❖ ├───┼───┼───┼───┼───┼───┨ +┃ λ │ ' │ " │ , │ _ │ = │ ┃ ┃ │ k │ l │ p │ g │ b │ x ┃ +┠───┼───┼───┼───┼───╆━━━┷━━━┛ ┗━━━┷━━━╅───┼───┼───┼───┼───┨ +┃ ⎀ │ E │ │ │ ◆ ┃ ┃ ◆ │ │ │ z │ ⎙ ┃ +┗━━━┷━━━┷━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┷━━━┷━━━┛ + ┏━━━┯━━━┓ ┏━━━┯━━━┓ + ┃ ⌫ │ ⌥ ┃ ┃ ⎄ │ ↹ ┃ + ┏━━━╃───┼───┨ ┠───┼───╄━━━┓ + ┃ │ │ ┃ ┃ │ │ ┃ + ┃ e │ ⇧ ├───┨ ┠───┤ ⏎ │ ␣ ┃ + ┃ │ │ ┃ ┃ │ │ ┃ + ┗━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┛ +SHIFTED +┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ ┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ +┃ 9 │ 7 │ 5 │ 3 │ 1 │ [ │ { ┃ ┃ } │ ] │ 0 │ 2 │ 4 │ 6 │ 8 ┃ +┠───┼───┼───┼───┼───┼───┼───┨ ┠───┼───┼───┼───┼───┼───┼───┨ +┃ │ * │ Y │ O │ R │ \ │ ┃ ┃ │ J │ V │ D │ F │ W │ Q ┃ +┠───┼───┼───┼───┼───┼───┤ ┃ ┃ ├───┼───┼───┼───┼───┼───┨ +┃ │ U │ I │ A │ N │ | ├───┨ ┠───┤ M │ H │ T │ S │ C │ ┃ +┠───┼───┼───┼───┼───┼───┤ ┃ ┃ ├───┼───┼───┼───┼───┼───┨ +┃ │ # │ $ │ @ │ & │ + │ ┃ ┃ │ K │ L │ P │ G │ B │ X ┃ +┠───┼───┼───┼───┼───╆━━━┷━━━┛ ┗━━━┷━━━╅───┼───┼───┼───┼───┨ +┃ │ │ │ │ ┃ ┃ │ │ │ Z │ ┃ +┗━━━┷━━━┷━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┷━━━┷━━━┛ + ┏━━━┯━━━┓ ┏━━━┯━━━┓ + ┃ │ ┃ ┃ │ ┃ + ┏━━━╃───┼───┨ ┠───┼───╄━━━┓ + ┃ │ │ ┃ ┃ │ │ ┃ + ┃ │ ├───┨ ┠───┤ │ ┃ + ┃ │ │ ┃ ┃ │ │ ┃ + ┗━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┛ +λ LAYER +┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ ┏━━━┯━━━┯━━━┯━━━┯━━━┯━━━┯━━━┓ +┃ │ │ │ │ │ │ ┃ ┃ │ │ ⑤ │ ⑥ │ ⑦ │ ⑧ │ ⑨ ┃ +┠───┼───┼───┼───┼───┼───┼───┨ ┠───┼───┼───┼───┼───┼───┼───┨ +┃ │ │ │ │ │ │ ┃ ┃ │ │ ① │ ② │ ③ │ ④ │ ⑩ ┃ +┠───┼───┼───┼───┼───┼───┤ ┃ ┃ ├───┼───┼───┼───┼───┼───┨ +┃ │ │ │ │ │ ├───┨ ┠───┤ ⎉ │ ← │ ↓ │ ↑ │ → │ ⑪ ┃ +┠───┼───┼───┼───┼───┼───┤ ┃ ┃ ├───┼───┼───┼───┼───┼───┨ +┃ λ │ │ │ │ │ │ ┃ ┃ │ │ ⇱ │ ⎘ │ ⎗ │ ⇲ │ ⑫ ┃ +┠───┼───┼───┼───┼───╆━━━┷━━━┛ ┗━━━┷━━━╅───┼───┼───┼───┼───┨ +┃ │ │ │ │ ┃ ┃ │ │ │ │ ┃ +┗━━━┷━━━┷━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┷━━━┷━━━┛ + ┏━━━┯━━━┓ ┏━━━┯━━━┓ + ┃ │ ┃ ┃ │ ┃ + ┏━━━╃───┼───┨ ┠───┼───╄━━━┓ + ┃ │ │ ┃ ┃ │ │ ┃ + ┃ │ ├───┨ ┠───┤ │ ┃ + ┃ │ │ ┃ ┃ │ │ ┃ + ┗━━━┷━━━┷━━━┛ ┗━━━┷━━━┷━━━┛ + +Installation (X only) +‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ + 1. Build and flash firmware as usual + + 2. sudo make install-xorg-configuration + + 3. Restart X + +Features +‾‾‾‾‾‾‾‾ + • E on the thumb + + • Emacs-friendly + + • Symmetric control keys for finger wear levelling + + • Greek and subscript dead keys + + • Compose key for arbitrary Unicode input via ~/.XCompose + +Don't Cares +‾‾‾‾‾‾‾‾‾‾‾ + • Easy migration from QWERTY + + • Compatbility with non-XKB systems + + • Mouse emulation + + • Media keys + +Acknowledgements +‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ +Snarfangel, for designing the layout. + +The GNU FreeFont project and Steve White, for adding new keyboard +symbols. + +Xah Lee, for http://xahlee.info/comp/unicode_computing_symbols.html + +Colophon +‾‾‾‾‾‾‾‾ +This file is best-viewed with an SVN version of GNU FreeFont Mono. diff --git a/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian b/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian new file mode 100644 index 0000000000..7343143948 --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian @@ -0,0 +1,34 @@ +partial alphanumeric_keys modifier_keys +xkb_symbols "ergodox_ez_yoruian" { + include "us" + name[Group1]= "English (yoruian-1.0.0)"; + + replace key { [ Multi_key, Multi_key ] }; + replace key { [ Hyper_L, Hyper_L ] }; + replace key { [ grave, 9 ] }; + replace key { [ semicolon, 7 ] }; + replace key { [ colon, 5 ] }; + replace key { [ minus, 3 ] }; + replace key { [ slash, 1 ] }; + replace key { [ asciicircum, 0 ] }; + replace key { [ percent, 2 ] }; + replace key { [ asciitilde, 4 ] }; + replace key { [ dead_greek, 6 ] }; + replace key { [ dead_caron, 8 ] }; + replace key { [ E, E ] }; + replace key { [ period, asterisk ] }; + replace key { [ question, backslash ] }; + replace key { [ exclam, bar ] }; + replace key { [ apostrophe, numbersign ] }; + replace key { [ quotedbl, dollar ] }; + replace key { [ comma, at ] }; + replace key { [ underscore, ampersand ] }; + replace key { [ equal, plus ] }; + replace key { [ parenleft, bracketleft ] }; + replace key { [ less, braceleft ] }; + replace key { [ greater, braceright ] }; + replace key { [ parenright, bracketright ] }; + + modifier_map none { }; + modifier_map Mod3 { }; +}; diff --git a/keyboards/ergodox/keymaps/yoruian/keymap.c b/keyboards/ergodox/keymaps/yoruian/keymap.c new file mode 100644 index 0000000000..d3635ddf3f --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/keymap.c @@ -0,0 +1,61 @@ +/* + * Copyright 2016 Thomas Fitzsimmons + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "yoruian.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = KEYMAP\ +(9, 7, 5, 3, 1, GRV, MINS, EQL, LBRC, 0, 2, 4, 6, 8, + ES, RBRC, Y, O, R, BSLS, P3, P3, J, V, D, F, W, Q, + LC, U, I, A, N, SCLN, M, H, T, S, C, RC, + FF, QUOT, COMM, DOT, SLSH, P0, LGUI, LGUI, K, L, P, G, B, X, + IN, P1, NO, NO, LALT, LALT, NO, NO, Z, PS, + BSPC, RALT, P2, TAB, + NO, NO, + E, LSFT, NO, NO, ENT, SPC), +[1] = KEYMAP\ +(TR, TR, TR, TR, TR, TR, TR, TR, TR, F5, F6, F7, F8, F9, + TR, TR, TR, TR, TR, TR, TR, TR, TR, F1, F2, F3, F4, FT, + TR, TR, TR, TR, TR, TR, PAUS, LEFT, DOWN, UP, RGHT, FE, + TR, TR, TR, TR, TR, TR, TR, TR, TR, HOME, PGDN, PGUP, END, FW, + TR, TR, TR, TR, TR, TR, TR, TR, TR, TR, + TR, TR, TR, TR, + TR, TR, + TR, TR, TR, TR, TR, TR), +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + return MACRO_NONE; +}; + +void matrix_init_user(void) { +}; + +void matrix_scan_user(void) { + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); +}; + +/* + * Local Variables: + * electric-indent-mode: nil + * End: + */ diff --git a/keyboards/ergodox/keymaps/yoruian/yoruian.h b/keyboards/ergodox/keymaps/yoruian/yoruian.h new file mode 100644 index 0000000000..1adcb7fd3f --- /dev/null +++ b/keyboards/ergodox/keymaps/yoruian/yoruian.h @@ -0,0 +1,61 @@ +/* + * Copyright 2016 Thomas Fitzsimmons + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" + +#undef KEYMAP +#define KEYMAP\ +( \ + /* Spacial positions. */ \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, \ + k20, k21, k22, k23, k24, k25, k28, k29, k2A, k2B, k2C, k2D, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, \ + k40, k41, k42, k43, k44, k49, k4A, k4B, k4C, k4D, \ + k55, k56, k57, k58, \ + k54, k59, \ + k53, k52, k51, k5C, k5B, k5A) \ + \ + /* Matrix positions. */ \ + { \ + { KC_##k00, KC_##k10, KC_##k20, KC_##k30, KC_##k40, KC_NO }, \ + { KC_##k01, KC_##k11, KC_##k21, KC_##k31, KC_##k41, KC_##k51 }, \ + { KC_##k02, KC_##k12, KC_##k22, KC_##k32, KC_##k42, KC_##k52 }, \ + { KC_##k03, KC_##k13, KC_##k23, KC_##k33, KC_##k43, KC_##k53 }, \ + { KC_##k04, KC_##k14, KC_##k24, KC_##k34, KC_##k44, KC_##k54 }, \ + { KC_##k05, KC_##k15, KC_##k25, KC_##k35, KC_NO, KC_##k55 }, \ + { KC_##k06, KC_##k16, KC_NO, KC_##k36, KC_NO, KC_##k56 }, \ + { KC_##k07, KC_##k17, KC_NO, KC_##k37, KC_NO, KC_##k57 }, \ + { KC_##k08, KC_##k18, KC_##k28, KC_##k38, KC_NO, KC_##k58 }, \ + { KC_##k09, KC_##k19, KC_##k29, KC_##k39, KC_##k49, KC_##k59 }, \ + { KC_##k0A, KC_##k1A, KC_##k2A, KC_##k3A, KC_##k4A, KC_##k5A }, \ + { KC_##k0B, KC_##k1B, KC_##k2B, KC_##k3B, KC_##k4B, KC_##k5B }, \ + { KC_##k0C, KC_##k1C, KC_##k2C, KC_##k3C, KC_##k4C, KC_##k5C }, \ + { KC_##k0D, KC_##k1D, KC_##k2D, KC_##k3D, KC_##k4D, KC_NO } \ + } + +#define KC_ES KC_ESC +#define KC_LC KC_LCTL +#define KC_RC KC_RCTL +#define KC_FF MO(1) +#define KC_IN KC_INS +#define KC_PS KC_PSCR +#define KC_TR KC_TRNS +#define KC_FT KC_F10 +#define KC_FE KC_F11 +#define KC_FW KC_F12 From ce53c0643d4eaf8f13ac1140d3bd91dfa5f90e22 Mon Sep 17 00:00:00 2001 From: Thomas Fitzsimmons Date: Tue, 6 Sep 2016 00:09:14 -0400 Subject: [PATCH 17/17] Fix ergodox_yoruian XKB naming --- keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf | 2 +- keyboards/ergodox/keymaps/yoruian/ergodox_yoruian | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf b/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf index c8a92c5c5b..ce4fce3b1d 100644 --- a/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf +++ b/keyboards/ergodox/keymaps/yoruian/90-ergodox-yoruian.conf @@ -2,5 +2,5 @@ Section "InputClass" Identifier "ErgoDox EZ" MatchIsKeyboard "on" MatchProduct "ErgoDox EZ ErgoDox EZ" - Option "XkbLayout" "ergodox_ez_yoruian" + Option "XkbLayout" "ergodox_yoruian" EndSection diff --git a/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian b/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian index 7343143948..0d13fbfd4c 100644 --- a/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian +++ b/keyboards/ergodox/keymaps/yoruian/ergodox_yoruian @@ -1,5 +1,5 @@ partial alphanumeric_keys modifier_keys -xkb_symbols "ergodox_ez_yoruian" { +xkb_symbols "ergodox_yoruian" { include "us" name[Group1]= "English (yoruian-1.0.0)";