diff options
author | Ryan <[email protected]> | 2020-03-09 15:37:10 +1100 |
---|---|---|
committer | GitHub <[email protected]> | 2020-03-09 15:37:10 +1100 |
commit | 6c8d815f2eec970a685aaf25a977fb2a04f53b8f (patch) | |
tree | 313a22ddfd1978f0bbc2557af8b1420b03830773 /quantum/keymap_extras/keymap_colemak.h | |
parent | 2271da00bc246c0791ec7c54bc496691ede71784 (diff) | |
download | qmk_firmware-6c8d815f2eec970a685aaf25a977fb2a04f53b8f.tar.gz qmk_firmware-6c8d815f2eec970a685aaf25a977fb2a04f53b8f.zip |
Update Dvorak, Colemak and Workman keycode aliases (#8217)0.8.23
* Update Dvorak, Colemak and Workman keycode aliases
* Add missing shifted keycode aliases for Workman
Diffstat (limited to 'quantum/keymap_extras/keymap_colemak.h')
-rw-r--r-- | quantum/keymap_extras/keymap_colemak.h | 201 |
1 files changed, 134 insertions, 67 deletions
diff --git a/quantum/keymap_extras/keymap_colemak.h b/quantum/keymap_extras/keymap_colemak.h index 166deeea42..a080f03b3d 100644 --- a/quantum/keymap_extras/keymap_colemak.h +++ b/quantum/keymap_extras/keymap_colemak.h @@ -13,78 +13,145 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef KEYMAP_COLEMAK_H -#define KEYMAP_COLEMAK_H -#include "keymap.h" -// For software implementation of colemak -#define CM_Q KC_Q -#define CM_W KC_W -#define CM_F KC_E -#define CM_P KC_R -#define CM_G KC_T -#define CM_J KC_Y -#define CM_L KC_U -#define CM_U KC_I -#define CM_Y KC_O -#define CM_SCLN KC_P +#pragma once -#define CM_A KC_A -#define CM_R KC_S -#define CM_S KC_D -#define CM_T KC_F -#define CM_D KC_G -#define CM_H KC_H -#define CM_N KC_J -#define CM_E KC_K -#define CM_I KC_L -#define CM_O KC_SCLN -#define CM_COLN LSFT(CM_SCLN) +#include "keymap.h" -#define CM_Z KC_Z -#define CM_X KC_X -#define CM_C KC_C -#define CM_V KC_V -#define CM_B KC_B -#define CM_K KC_N -#define CM_M KC_M -#define CM_COMM KC_COMM -#define CM_DOT KC_DOT -#define CM_SLSH KC_SLSH +// clang-format off -// Make it easy to support these in macros -// TODO: change macro implementation so these aren't needed -#define KC_CM_Q CM_Q -#define KC_CM_W CM_W -#define KC_CM_F CM_F -#define KC_CM_P CM_P -#define KC_CM_G CM_G -#define KC_CM_J CM_J -#define KC_CM_L CM_L -#define KC_CM_U CM_U -#define KC_CM_Y CM_Y -#define KC_CM_SCLN CM_SCLN +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ Q │ W │ F │ P │ G │ J │ L │ U │ Y │ ; │ [ │ ] │ \ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ A │ R │ S │ T │ D │ H │ N │ E │ I │ O │ ' │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ Z │ X │ C │ V │ B │ K │ M │ , │ . │ / │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define CM_GRV KC_GRV // ` +#define CM_1 KC_1 // 1 +#define CM_2 KC_2 // 2 +#define CM_3 KC_3 // 3 +#define CM_4 KC_4 // 4 +#define CM_5 KC_5 // 5 +#define CM_6 KC_6 // 6 +#define CM_7 KC_7 // 7 +#define CM_8 KC_8 // 8 +#define CM_9 KC_9 // 9 +#define CM_0 KC_0 // 0 +#define CM_MINS KC_MINS // - +#define CM_EQL KC_EQL // = +// Row 2 +#define CM_Q KC_Q // Q +#define CM_W KC_W // W +#define CM_F KC_E // F +#define CM_P KC_R // P +#define CM_G KC_T // G +#define CM_J KC_Y // J +#define CM_L KC_U // L +#define CM_U KC_I // U +#define CM_Y KC_O // Y +#define CM_SCLN KC_P // ; +#define CM_LBRC KC_LBRC // [ +#define CM_RBRC KC_RBRC // ] +#define CM_BSLS KC_BSLS // (backslash) +// Row 3 +#define CM_A KC_A // A +#define CM_R KC_S // R +#define CM_S KC_D // S +#define CM_T KC_F // T +#define CM_D KC_G // D +#define CM_H KC_H // H +#define CM_N KC_J // N +#define CM_E KC_K // E +#define CM_I KC_L // I +#define CM_O KC_SCLN // O +#define CM_QUOT KC_QUOT // ' +// Row 4 +#define CM_Z KC_Z // Z +#define CM_X KC_X // X +#define CM_C KC_C // C +#define CM_V KC_V // V +#define CM_B KC_B // B +#define CM_K KC_N // K +#define CM_M KC_M // M +#define CM_COMM KC_COMM // , +#define CM_DOT KC_DOT // . +#define CM_SLSH KC_SLSH // / -#define KC_CM_A CM_A -#define KC_CM_R CM_R -#define KC_CM_S CM_S -#define KC_CM_T CM_T -#define KC_CM_D CM_D -#define KC_CM_H CM_H -#define KC_CM_N CM_N -#define KC_CM_E CM_E -#define KC_CM_I CM_I -#define KC_CM_O CM_O +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ │ │ │ : │ { │ } │ | │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ " │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ │ │ │ │ │ │ │ < │ > │ ? │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define CM_TILD S(CM_GRV) // ~ +#define CM_EXLM S(CM_1) // ! +#define CM_AT S(CM_2) // @ +#define CM_HASH S(CM_3) // # +#define CM_DLR S(CM_4) // $ +#define CM_PERC S(CM_5) // % +#define CM_CIRC S(CM_6) // ^ +#define CM_AMPR S(CM_7) // & +#define CM_ASTR S(CM_8) // * +#define CM_LPRN S(CM_9) // ( +#define CM_RPRN S(CM_0) // ) +#define CM_UNDS S(CM_MINS) // _ +#define CM_PLUS S(CM_EQL) // + +// Row 2 +#define CM_COLN S(CM_SCLN) // : +#define CM_LCBR S(CM_LBRC) // { +#define CM_RCBR S(CM_RBRC) // } +#define CM_PIPE S(CM_BSLS) // | +// Row 3 +#define CM_DQUO S(CM_QUOT) // " +// Row 4 +#define CM_LABK S(CM_COMM) // < +#define CM_RABK S(CM_DOT) // > +#define CM_QUES S(CM_SLSH) // / -#define KC_CM_Z CM_Z -#define KC_CM_X CM_X -#define KC_CM_C CM_C -#define KC_CM_V CM_V -#define KC_CM_B CM_B -#define KC_CM_K CM_K -#define KC_CM_M CM_M +// DEPRECATED +#define KC_CM_Q CM_Q +#define KC_CM_W CM_W +#define KC_CM_F CM_F +#define KC_CM_P CM_P +#define KC_CM_G CM_G +#define KC_CM_J CM_J +#define KC_CM_L CM_L +#define KC_CM_U CM_U +#define KC_CM_Y CM_Y +#define KC_CM_SCLN CM_SCLN +#define KC_CM_A CM_A +#define KC_CM_R CM_R +#define KC_CM_S CM_S +#define KC_CM_T CM_T +#define KC_CM_D CM_D +#define KC_CM_H CM_H +#define KC_CM_N CM_N +#define KC_CM_E CM_E +#define KC_CM_I CM_I +#define KC_CM_O CM_O +#define KC_CM_Z CM_Z +#define KC_CM_X CM_X +#define KC_CM_C CM_C +#define KC_CM_V CM_V +#define KC_CM_B CM_B +#define KC_CM_K CM_K +#define KC_CM_M CM_M #define KC_CM_COMM CM_COMM -#define KC_CM_DOT CM_DOT +#define KC_CM_DOT CM_DOT #define KC_CM_SLSH CM_SLSH - -#endif |