From 54785c1976590dc3081f06ca49747dfcb6ecd3b3 Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Tue, 14 Feb 2017 22:47:11 -0600 Subject: The Ordinary Layout is boring, normal, typical, expected. --- keyboards/ergodox/keymaps/ordinary/keymap.c | 146 ++++++++++++++++++++-------- 1 file changed, 103 insertions(+), 43 deletions(-) (limited to 'keyboards/ergodox/keymaps/ordinary/keymap.c') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index 5c01d9678..b79f0f064 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -9,6 +9,7 @@ #define SYMB 1 // symbols layer #define MDIA 2 // media layer #define SPEC 3 // special layer +#define RBASE 4 // reverse default layer #define LSymb 10 // left symbol-shift key #define LMdia 11 // left media-shift key @@ -17,15 +18,21 @@ #define RMdia 14 // right media-shift key #define RSpec 15 // right special-shift key +#define NotEq 16 // != macro +#define Point 17 // -> macro + #define MUL 20 // mouse up left #define MUR 21 // mouse up right #define MDL 22 // mouse down left #define MDR 23 // mouse down right + + /* - * The Ordinary Layout for the Ergodox EZ keyboard, v4.20 + * The Ordinary Layout for the Ergodox EZ keyboard, v5 * - * Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com + * Modifications from the default Ergodox EZ layout + * by Nicholas Keene ergodoxez@nicholaskeene.com * * No rights reserved. This software is in the public domain. * Credit me if you are friendly but if you're a jerk don't bother. @@ -44,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \| Media | * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| - * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | '" Symbol | + * | Symbol | ^A | S | D | ^F | G |------| |------| H | ^J | K | L | ^; | '" Symbol | * |------------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+------------| * | Capitals | Z | X | C | V | B | -Tab | | | N | M | , | . | / | Capitals | * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' @@ -60,24 +67,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [BASE] = KEYMAP( // left hand - F(LSpec) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC -,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC -,M(LSymb) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G -,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) -,KC_LCTL ,KC_MEH ,KC_HYPR,KC_LALT,KC_LGUI + F(LSpec) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC +,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC +,M(LSymb) ,LT(RBASE, KC_A),KC_S ,KC_D ,LT(RBASE, KC_F) ,KC_G +,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) +,KC_SCLN ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI ,KC_HOME,KC_END ,KC_PGUP ,KC_BSPC,KC_DEL ,KC_PGDN // right hand - ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) - ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) - ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,F(RSymb) - ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT - ,KC_RGUI,KC_RALT,KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) + ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) + ,KC_H ,LT(RBASE, KC_J),KC_K ,KC_L ,LT(RBASE,KC_SCLN),F(RSymb) + ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT + ,KC_RGUI ,KC_RALT,KC_HYPR,KC_MEH ,KC_RCTL ,KC_LEFT ,KC_RGHT ,KC_UP ,KC_DOWN ,KC_ENT ,KC_SPC - ), +), /******* Symbols Layer ************************************************************************************************* * @@ -90,35 +97,35 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' - * | LCtrl | Meh |Hyper | LAlt | LGui | | 0 | . | = | + | Ent | + * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' * ,-------------. ,-------------. - * | Left | Right| | Home | End | + * ||||||||||||||| ||||||||||||||| * ,------|------|------| |------+------+------. - * | | | Up | | PgUp | | | - * |Space |Enter |------| |------|BackSp| Del | - * | | | Down | | PgDn | | | + * | Plus | Equal|||||||| |||||||| Under| Dash | + * | | |------| |------| Score| | + * | + | = | != | | -> | _ | - | * `--------------------' `--------------------' */ [SYMB] = KEYMAP( // left hand - KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC -,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) -,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV -,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB -,KC_LCTL ,KC_MEH ,KC_HYPR ,KC_LALT ,KC_LGUI - ,KC_LEFT ,KC_RGHT - ,KC_UP - ,KC_SPC ,KC_ENT ,KC_DOWN + KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC +,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) +,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV +,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB +,KC_LCTL ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) + ,KC_NO ,KC_NO + ,KC_NO + ,KC_PLUS ,KC_EQL ,M(NotEq) // right hand - ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS - ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS - ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS - ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS - ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT - ,KC_HOME ,KC_END - ,KC_PGUP - ,KC_PGDN ,KC_BSPC ,KC_DEL + ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS + ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS + ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS + ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS + ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT + ,KC_NO ,KC_NO + ,KC_NO + ,M(Point) ,LSFT(KC_MINS),KC_MINS ), /******* Media Layer ******************************************************************************************************* @@ -132,7 +139,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' - * |LCtrl| Meh | MClick | LClick | R Click| |Cmd/Insrt|Optn/Del | Hyper | Meh |RCtrl| + * | | | MClick | LClick | R Click| | Insert | Del | | | | * `---------------------------------------------' `---------------------------------------------' * ,-------------. ,-------------. * | Stop |Refrsh| | Prev | Next | @@ -148,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_POWER ,M(MUL) ,KC_MS_U ,M(MUR) ,KC_VOLU ,KC_WH_U ,KC_TRNS ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD ,KC_TRNS ,KC_NO ,M(MDL) ,KC_MS_D ,M(MDR) ,KC_MUTE ,KC_WH_D -,KC_LCTL ,KC_MEH ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 +,KC_NO ,KC_NO ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 ,KC_WSTP ,KC_WREF ,KC_WSCH ,KC_WBAK ,KC_NO ,KC_WHOM @@ -157,7 +164,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_WH_U ,KC_PSCR ,KC_HOME ,KC_UP ,KC_PGUP ,KC_MAIL ,KC_TRNS ,KC_NLCK ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_MYCM ,KC_TRNS ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_TRNS - ,GUI_T(KC_INS),ALT_T(KC_DEL),KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_INS ,KC_DEL ,KC_NO ,KC_NO ,KC_NO ,KC_MPRV ,KC_MNXT ,KC_VOLU ,KC_VOLD ,KC_MSTP ,KC_MPLY @@ -203,7 +210,49 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS - ) +), + +/******* Reverse Base Layer ********************************************************************************************* + * + * ,------------------------------------------------------. ,------------------------------------------------------. + * | =+ | 0 | 9 | 8 | 7 | 6 | - | | Esc | 5 | 4 | 3 | 2 | 1 | `~ | + * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| + * | \| | P | O | I | U | Y | ] | | [ | T | R | E | W | Q | Tab | + * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| + * | | ; | L | K | J | H |------| |------| G | F | D | S | A | '" | + * |------------+------+------+------+------+------| Tab | |Shift |------+------+------+------+------+------------| + * | Capitals | / | . | , | M | N | | | -Tab | B | V | C | X | Z | Capitals | + * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' + * | LCtrl | Meh |Hyper | LAlt | LGui | | RGui | RAlt | Hyper| Meh | RCtrl | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | Left | Right| | Home | End | + * ,------|------|------| |------+------+------. + * | | | Up | | PgUp | | | + * |Space |Enter |------| |------|BackSp| Del | + * | | | Down | | PgDn | | | + * `--------------------' `--------------------' + */ +[RBASE] = KEYMAP( +// left hand + KC_EQL ,KC_0 ,KC_9 ,KC_8 ,KC_7 ,KC_6 ,KC_MINS +,KC_BSLS ,KC_P ,KC_O ,KC_I ,KC_U ,KC_Y ,KC_RBRC +,KC_NO ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H +,KC_RSFT ,KC_SLSH ,KC_DOT ,KC_COMM,KC_M ,KC_N ,KC_TAB +,KC_RCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_RALT,KC_RGUI + ,KC_LEFT ,KC_RGHT + ,KC_UP + ,KC_SPC ,KC_ENT ,KC_DOWN + // right hand + ,KC_ESC ,KC_5 ,KC_4 ,KC_3 ,KC_2 ,KC_1 ,KC_GRV + ,KC_LBRC ,KC_T ,KC_R ,KC_E ,KC_W ,KC_Q ,KC_TAB + ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,F(LSymb) + ,LSFT(KC_TAB),KC_B ,KC_V ,KC_C ,KC_X ,KC_Z ,KC_LSFT + ,KC_LGUI,KC_LALT,KC_HYPR ,KC_MEH,KC_LCTL + ,KC_HOME ,KC_END + ,KC_PGUP + ,KC_PGDN ,KC_BSPC ,KC_DEL +) }; const uint16_t PROGMEM fn_actions[] = { @@ -227,14 +276,13 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { switch(id) { // There are two shift keys for each layer so we increment a layer_shift var when one - // is pressed and decrement when one is released. If both are pressed at the same time - // then the layer is locked (or unlocked). The shift counts are bound between 0 and 2 + // is pressed and decrement when one is released. The shift counts are bound between 0 and 2 // only because sometimes rapid pressing led to irregular events; this way the states // are self healing during use. case LSymb: // if (record->event.pressed) { // when the LSymb button is pressed - if(++symb_shift > 2) mdia_shift = 2; // increment the symb shift count, max two + if(++symb_shift > 2) symb_shift = 2; // increment the symb shift count, max two if(spec_shift) symb_lock = !symb_lock; // if the Special layer is on, toggle the shift lock layer_on(SYMB); // in any case, turn on the Symbols layer } else { // when the LSymb button is released @@ -264,7 +312,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case LSpec: if (record->event.pressed) { // when the LSpec button is pressed - if(symb_shift) symb_lock == !symb_lock; // if another layer button is engaged, then + if(symb_shift) symb_lock = !symb_lock; // if another layer button is engaged, then else if(mdia_shift) mdia_lock = !mdia_lock; // lock that layer, be it caps or symb or mdia else if (record->tap.count && !record->tap.interrupted && (!spec_shift)) { register_code(KC_GRV); // otherwise, if it's an uninterrupted tap, emit a char @@ -340,6 +388,18 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) } break; + case NotEq: + if (record->event.pressed) { + return MACRO( I(30), T(EXLM), T(EQL), END ); // + } + break; + + case Point: + if (record->event.pressed) { + return MACRO( I(30), T(MINS), T(DOT), END ); // + } + break; + // mouse diagonals case MUL: // mouse up left -- cgit v1.2.3 From af942f2e57023a469d2f617839b3b7cb7eec798a Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Wed, 15 Feb 2017 22:33:04 -0600 Subject: The Ordinary Layout is the best one, the one you are looking for. Really. Check it out. --- keyboards/ergodox/keymaps/ordinary/keymap.c | 46 ++++++++++++++------- .../ergodox/keymaps/ordinary/ordinary-symbol.png | Bin 89582 -> 90642 bytes .../ergodox/keymaps/ordinary/ordinary-symbol.txt | 12 +++--- keyboards/ergodox/keymaps/ordinary/readme.md | 14 +++---- 4 files changed, 43 insertions(+), 29 deletions(-) (limited to 'keyboards/ergodox/keymaps/ordinary/keymap.c') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index b79f0f064..8f17ee276 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -19,7 +19,9 @@ #define RSpec 15 // right special-shift key #define NotEq 16 // != macro -#define Point 17 // -> macro +#define GrtEq 17 // >= macro +#define LesEq 18 // <= macro +#define DeRef 19 // -> macro #define MUL 20 // mouse up left #define MUR 21 // mouse up right @@ -71,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC ,M(LSymb) ,LT(RBASE, KC_A),KC_S ,KC_D ,LT(RBASE, KC_F) ,KC_G ,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) -,KC_SCLN ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI +,KC_LCTL ,MEH_T(KC_NO) ,ALL_T(KC_NO),KC_LALT,KC_LGUI ,KC_HOME,KC_END ,KC_PGUP ,KC_BSPC,KC_DEL ,KC_PGDN @@ -100,9 +102,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' * ,-------------. ,-------------. - * ||||||||||||||| ||||||||||||||| + * | |||| | |||| | | |||| | |||| | * ,------|------|------| |------+------+------. - * | Plus | Equal|||||||| |||||||| Under| Dash | + * | Plus | Equal| |||| | | |||| | Under| Dash | * | | |------| |------| Score| | * | + | = | != | | -> | _ | - | * `--------------------' `--------------------' @@ -113,8 +115,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) ,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV ,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB -,KC_LCTL ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) - ,KC_NO ,KC_NO +,KC_SCLN ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) + ,M(GrtEq),M(LesEq) ,KC_NO ,KC_PLUS ,KC_EQL ,M(NotEq) // right hand @@ -125,21 +127,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT ,KC_NO ,KC_NO ,KC_NO - ,M(Point) ,LSFT(KC_MINS),KC_MINS + ,M(DeRef) ,LSFT(KC_MINS),KC_MINS ), /******* Media Layer ******************************************************************************************************* * * ,---------------------------------------------------------------. ,---------------------------------------------------------------. - * | | F11 | F12 | F13 | F14 | F15 | Esc | | | F16 | F17 | F18 | F19 | F20 | | + * | | F11 | F12 | F13 | F14 | F15 | Esc | | |||| | F16 | F17 | F18 | F19 | F20 | | * |------+---------+---------+---------+---------+----------------| |------+---------+---------+---------+---------+---------+------| * | |Shut Down|MouseUpLf|Mouse Up |MouseUpRg|Volume Up|Scroll| |Scroll|PrintScrn| Home | Up | PgUp | Mail | | * |------+---------+---------+---------+---------+---------| Up | | Up |---------+---------+---------+---------+---------+------| * | | Sleep |MouseLeft|MouseDown|MouseRght|Volume Dn|------| |------| Num Lock| Left | Down | Right | MyComp | | * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| - * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | + * | | |||| |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | |||| | End | Down | PgDn | |||| | | * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' - * | | | MClick | LClick | R Click| | Insert | Del | | | | + * | ||| | |||| | MClick | LClick | R Click| | Insert | Del | |||| | |||| | ||| | * `---------------------------------------------' `---------------------------------------------' * ,-------------. ,-------------. * | Stop |Refrsh| | Prev | Next | @@ -219,7 +221,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| * | \| | P | O | I | U | Y | ] | | [ | T | R | E | W | Q | Tab | * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| - * | | ; | L | K | J | H |------| |------| G | F | D | S | A | '" | + * | '" | ; | L | K | J | H |------| |------| G | F | D | S | A | | * |------------+------+------+------+------+------| Tab | |Shift |------+------+------+------+------+------------| * | Capitals | / | . | , | M | N | | | -Tab | B | V | C | X | Z | Capitals | * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' @@ -237,7 +239,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand KC_EQL ,KC_0 ,KC_9 ,KC_8 ,KC_7 ,KC_6 ,KC_MINS ,KC_BSLS ,KC_P ,KC_O ,KC_I ,KC_U ,KC_Y ,KC_RBRC -,KC_NO ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H +,KC_QUOT ,LT(RBASE, KC_SCLN) ,KC_L ,KC_K ,LT(RBASE, KC_J) ,KC_H ,KC_RSFT ,KC_SLSH ,KC_DOT ,KC_COMM,KC_M ,KC_N ,KC_TAB ,KC_RCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_RALT,KC_RGUI ,KC_LEFT ,KC_RGHT @@ -246,7 +248,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand ,KC_ESC ,KC_5 ,KC_4 ,KC_3 ,KC_2 ,KC_1 ,KC_GRV ,KC_LBRC ,KC_T ,KC_R ,KC_E ,KC_W ,KC_Q ,KC_TAB - ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,F(LSymb) + ,KC_G ,LT(RBASE, KC_F),KC_D ,KC_S ,LT(RBASE, KC_A) ,KC_NO ,LSFT(KC_TAB),KC_B ,KC_V ,KC_C ,KC_X ,KC_Z ,KC_LSFT ,KC_LGUI,KC_LALT,KC_HYPR ,KC_MEH,KC_LCTL ,KC_HOME ,KC_END @@ -390,13 +392,25 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) case NotEq: if (record->event.pressed) { - return MACRO( I(30), T(EXLM), T(EQL), END ); // + return MACRO( I(10), D(LSFT), T(EXLM), U(LSFT), T(EQL), END ); // != } break; - case Point: + case GrtEq: if (record->event.pressed) { - return MACRO( I(30), T(MINS), T(DOT), END ); // + return MACRO( I(10), D(LSFT), T(COMM), U(LSFT), T(EQL), END ); // <= + } + break; + + case LesEq: + if (record->event.pressed) { + return MACRO( I(10), D(LSFT), T(DOT), U(LSFT), T(EQL), END ); // >= + } + break; + + case DeRef: + if (record->event.pressed) { + return MACRO( I(10), T(MINS), D(LSFT), T(DOT), U(LSFT), END ); // -> } break; diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png index 8cd92cee1..1277f7483 100644 Binary files a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png and b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.png differ diff --git a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt index f64503ecb..65eca9d6a 100644 --- a/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt +++ b/keyboards/ergodox/keymaps/ordinary/ordinary-symbol.txt @@ -16,12 +16,12 @@ [{y:-0.875,x:5.5,c:"#bbddbb"},"~",{x:6.5},"\\"], [{y:-0.875,c:"#c6c600",t:"#9e0000",w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#bbddbb",t:"#000000"},"%",{x:14.5,c:"#89b087"},"-",{c:"#c6c600",t:"#9e0000",w:1.5},"\n\nCapitals\n\n\n\n\nShift"], [{y:-0.375,x:3.5,c:"#bbddbb",t:"#000000"},"<",{x:10.5,c:"#89b087"},"."], -[{y:-0.875,x:2.5,c:"#bbddbb"},"*",{x:1,a:5},">",{x:8.5,c:"#89b087",a:4},"0",{x:1},"="], +[{y:-0.875,x:2.5,c:"#bbddbb"},"*",{x:1},">",{x:8.5,c:"#89b087"},"0",{x:1},"="], [{y:-0.75,x:0.5,c:"#bbddbb"},";","&",{x:14.5,c:"#89b087"},"+","Enter"], -[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#737373",a:7},"",""], -[{c:"#bbddbb",h:2},"+",{h:2},"=",{c:"#737373"},""], -[{x:2,c:"#bbddbb"},"!="], -[{r:-30,rx:13,y:-1,x:-3,c:"#737373"},"",""], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#bbddbb"},"<=",">="], +[{a:7,h:2},"+",{h:2},"=",{c:"#737373"},""], +[{x:2,c:"#bbddbb",a:4},"!="], +[{r:-30,rx:13,y:-1,x:-3,c:"#737373",a:7},"",""], [{x:-3},"",{c:"#bbddbb",h:2},"_",{h:2},"-"], -[{x:-3},"->"] +[{x:-3,a:4},"->"] diff --git a/keyboards/ergodox/keymaps/ordinary/readme.md b/keyboards/ergodox/keymaps/ordinary/readme.md index 313b726ba..927356892 100644 --- a/keyboards/ergodox/keymaps/ordinary/readme.md +++ b/keyboards/ergodox/keymaps/ordinary/readme.md @@ -10,13 +10,13 @@ no rights reserved, use for any purposes, credit me if you are a nice person ## The Base Layout ## -* *White Keys* are all the normal characters and symbols in all the normal locations (except for the brackets). -* *Modifier Keys* are light yellow and in the traditional locationn at the bottom of the keyboard: Control, Option, Command, plus Hyper and Meh. -* *Shift Keys* are dark yellow, found on the outsides of the keyboard. Capitals Shift (traditional shift) is found in the usual place and above that is found Symbol Shift, Media Shift, and Special Shift (Shift Lock). +* *White Keys* are all the normal characters and symbols in all the normal locations (except for the brackets, and who touch-types brackets?). +* *Modifier Keys* are light yellow and in the traditional locationn at the bottom of the keyboard: Control, Option, Command, plus Hyper and Meh. Modifier keys are only found on the base layout. +* *Shift Keys* are dark yellow, found on the outsides of the keyboard. Capitals Shift (traditional Shift) is found in the usual place and above that are Symbol Shift, Media Shift, and Special Shift (Shift Lock). * Several of the shift keys double for entry of characters which would typically be in those locations. * *Thumb Keys* shown in orange are for text navigation and manipulation. * The keys under pinky fingers and index fingers will *reverse* the keyboard layout. -* *Escape* is red and it is always found in that location no matter what. +* *Escape* is red and it is always found in that location (*except* when the layout is reversed). ![Ordinary base layout](ordinary-base.png) @@ -26,18 +26,18 @@ The Forward Tab and Backward Tab keys are in their locations mostly because I en #### Reversing The Base Layout #### -The Ordinary Layout can be used to perform one-handed chorded text input. If you hold down the key under either index finger or either pinky finger (A, F, J and Semicolon), the whole base layout reverses order. Most keys are _mirrored_ but the delete keys are merely *translated* to preserve directionality. Pro-tip: This feature is particularly handly for bringing the Enter key to the left hand when the right hand is using the mouse. +The Ordinary Layout can be used to perform one-handed chorded text input. If you hold down the key under either index finger or either pinky finger (A, F, J and Semicolon), the whole base layout reverses order. Most keys are _mirrored_ but the delete keys, home/end, and left/right arrow keys are merely *translated* to preserve directionality. Pro-tip: This feature is particularly handly for bringing the Enter key to the left hand when the right hand is using the mouse. ## The Symbols Layer ## * *Symbols* shown in light green. All kinds of brackets are available on this layer. Ampersand and Pipe justapose each other. Pipe, slash, and backslash are arranged in a column. * *F-Keys* are bright green and overlay the row of numerals. This layer has F1-F10, higher *F-Keys* are on the Symbols layer. * *Number pad* in dark green under the right hand includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads so that NumLock is not needed. +* The dark gray keys do nothing in case you bump them by accident. ![Ordinary symbol layout](ordinary-symbol.png) The Symbols Layer is based on the Coder Layer from the default Ergodox EZ layout. I slightly rearranged the symbols, added some symbols, expanded the number pad, and straightened out the F-Keys. It's very handy to have the symbols directly underneath the normal typing keys. -* The dark gray keys do nothing in case you bump them by accident. ## The Media Layer ## @@ -85,7 +85,7 @@ The Escape and Backspace special sequences are so useful why not have a few more ## Errata ## -Some of the symbols on the Symbols layer are produced by the keyboard by "capitalizing" another symbol (such as *!* from *1*) so when you type that key you will notice the Capitals Shift red LED turn on. +Some of the symbols on the Symbols layer are produced by the keyboard by "capitalizing" another character (such as *!* from *1*) so when you type that key you will notice the Capitals Shift red LED turn on. **** -- cgit v1.2.3 From 7606f784ddd2f276827ed2131d8d4f12047d7f4f Mon Sep 17 00:00:00 2001 From: Nicholas Keene Date: Wed, 15 Feb 2017 23:02:30 -0600 Subject: This is the best layout, really, come look --- keyboards/ergodox/keymaps/ordinary/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/ergodox/keymaps/ordinary/keymap.c') diff --git a/keyboards/ergodox/keymaps/ordinary/keymap.c b/keyboards/ergodox/keymaps/ordinary/keymap.c index 8f17ee276..1dfdf7e62 100644 --- a/keyboards/ergodox/keymaps/ordinary/keymap.c +++ b/keyboards/ergodox/keymaps/ordinary/keymap.c @@ -96,8 +96,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | | * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | | - * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| - * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | + * |-----------+------+------+------+------+------| ' | | " |------+------+------+------+------+-----------| + * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | - | | * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' * | ; | & | * | < | > | | 0 | . | = | + | Enter | * `-----------------------------------' `-----------------------------------' @@ -114,7 +114,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC ,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) ,KC_TRNS ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV -,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB +,KC_TRNS ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_QUOT ,KC_SCLN ,KC_AMPR ,KC_ASTR ,LSFT(KC_COMM),LSFT(KC_DOT) ,M(GrtEq),M(LesEq) ,KC_NO @@ -123,7 +123,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS - ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS + ,LSFT(KC_QUOT),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT ,KC_NO ,KC_NO ,KC_NO -- cgit v1.2.3