From 711809fdac9773f224c2251ecdcc49d4acd581f1 Mon Sep 17 00:00:00 2001 From: Thomas Anderson Date: Fri, 29 Apr 2016 14:42:31 -0700 Subject: [PATCH] Finalized my personal layout --- .../ergodox_ez/keymaps/techtomas/keymap.c | 231 ++++++++++++++++++ .../keymaps/techtomas/techtomas.hex | Bin 0 -> 51240 bytes 2 files changed, 231 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/techtomas/keymap.c create mode 100644 keyboard/ergodox_ez/keymaps/techtomas/techtomas.hex diff --git a/keyboard/ergodox_ez/keymaps/techtomas/keymap.c b/keyboard/ergodox_ez/keymaps/techtomas/keymap.c new file mode 100644 index 0000000000..b7d3b9a116 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/techtomas/keymap.c @@ -0,0 +1,231 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media +#define CNTL 3 // control layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | L1/` | 1 | 2 | 3 | 4 | 5 |CmdSpc| | - | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * |Meh/Tab | Q | W | E | R | T | STab | | L3 | Y | U | I | O | P | Meh/\ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Hyp/Esc | L3/A | S | D | F | G |------| |------| H | J | K | L | L2/; | Hyp/' | + * |--------+------+------+------+------+------| Tab | |AltGui|------+------+------+------+------+--------| + * | LShift | L3/Z | X | C | V | B | | | | N | M | , | . | L2// | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |LCtrl | LAlt | LGui |Left |Right | | UP | Down | [ | ] | L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtl | LGui | | LAlt |ShfGui| + * ,-------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Backsp|Delete|------| |------| Enter | Space | + * | | | End | | PgDn | | | + * `--------------------' `-----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + LT(SYMB,KC_GRV), KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_SPC), + MEH_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, S(KC_TAB), + ALL_T(KC_ESC), LT(CNTL,KC_A), KC_S, KC_D, KC_F, KC_G, + KC_LSFT, LT(CNTL,KC_Z), KC_X, KC_C, KC_V, KC_B, KC_TAB, + KC_LCTL, KC_LALT, KC_LGUI, KC_LEFT, KC_RIGHT, + KC_LCTL, KC_LGUI, + KC_HOME, + KC_BSPC, KC_DELETE, KC_END, + // right hand + KC_MINS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_FN3, KC_Y, KC_U, KC_I, KC_O, KC_P, MEH_T(KC_BSLS), + KC_H, KC_J, KC_K, KC_L, LT(MDIA,KC_SCLN), ALL_T(KC_QUOT), + LALT(KC_LGUI), KC_N, KC_M, KC_COMM, KC_DOT, LT(MDIA,KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, + KC_LALT, S(KC_LGUI), + KC_PGUP, + KC_PGDN,KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | < | | > | : | 7 | 8 | 9 | / | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| ; | 4 | 5 | 6 | * | Prnt | + * |--------+------+------+------+------+------| F14 | | F15 |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | - | Entr | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | . | = | + | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,S(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_F14, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + S(KC_DOT), KC_COLN, KC_7, KC_8, KC_9, KC_BSLS, KC_F12, + KC_SCLN, KC_4, KC_5, KC_6, KC_ASTR, KC_PSCR, + KC_F15, KC_AMPR, KC_1, KC_2, KC_3, KC_MINS, KC_ENT, + KC_0, KC_DOT, KC_EQL, KC_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Prev | Next | | Prev | Next | + * ,------|------|------| |------+------+------. + * | | | VolUp| | VolUp| | | + * | Play | Mute |------| |------| Mute | Play | + * | | | VolDn| | VolDn| | | + * `--------------------' `--------------------' + */ +// Control +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MPRV, KC_MNXT, + KC_VOLU, + KC_MPLY, KC_MUTE, KC_VOLD, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MPRV, KC_MNXT, + KC_VOLU, + KC_VOLD, KC_MUTE, KC_MPLY +), +/* Keymap 3: Control Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Sleep | | | | | | Pwr | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| Lclk |------| |------| Lft | Down | Up | Right| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | Rclk | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Control +[CNTL] = KEYMAP( + KC_SLEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PWR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN1, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), + [2] = ACTION_LAYER_TAP_TOGGLE(MDIA), + [3] = ACTION_LAYER_TAP_TOGGLE(CNTL) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + case 3: + ergodox_right_led_3_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/techtomas/techtomas.hex b/keyboard/ergodox_ez/keymaps/techtomas/techtomas.hex new file mode 100644 index 0000000000000000000000000000000000000000..8aa849208f149eac81aedadee4c3cd1655410229 GIT binary patch literal 51240 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%0D6#~(kv5Ex@7+h`e0*#p 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 literal 0 HcmV?d00001