diff --git a/keyboard/ergodox_ez/Makefile b/keyboard/ergodox_ez/Makefile index 03c806131d..8066c7bb4b 100644 --- a/keyboard/ergodox_ez/Makefile +++ b/keyboard/ergodox_ez/Makefile @@ -31,15 +31,14 @@ SRC = ergodox_ez.c \ matrix.c ifdef KEYMAP - SRC := keymaps/keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP)/keymap.c $(SRC) else - SRC := keymaps/keymap_default.c $(SRC) + SRC := keymaps/default/keymap.c $(SRC) endif CONFIG_H = config.h # MCU name -#MCU = at90usb1287 MCU = atmega32u4 # Processor frequency. diff --git a/keyboard/ergodox_ez/keymaps/keymap_andrew_osx.hex b/keyboard/ergodox_ez/keymaps/andrew_osx/andrew_osx.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_andrew_osx.hex rename to keyboard/ergodox_ez/keymaps/andrew_osx/andrew_osx.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_andrew_osx.c b/keyboard/ergodox_ez/keymaps/andrew_osx/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_andrew_osx.c rename to keyboard/ergodox_ez/keymaps/andrew_osx/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/coderkun_neo2/coderkun_neo2.hex b/keyboard/ergodox_ez/keymaps/coderkun_neo2/coderkun_neo2.hex new file mode 100644 index 0000000000..c4804d4830 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/coderkun_neo2/coderkun_neo2.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_coderkun_neo2.c b/keyboard/ergodox_ez/keymaps/coderkun_neo2/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_coderkun_neo2.c rename to keyboard/ergodox_ez/keymaps/coderkun_neo2/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/keymap_dave.hex b/keyboard/ergodox_ez/keymaps/dave/dave.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_dave.hex rename to keyboard/ergodox_ez/keymaps/dave/dave.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_dave.c b/keyboard/ergodox_ez/keymaps/dave/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_dave.c rename to keyboard/ergodox_ez/keymaps/dave/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/keymap_default.hex b/keyboard/ergodox_ez/keymaps/default/default.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default.hex rename to keyboard/ergodox_ez/keymaps/default/default.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_default.png b/keyboard/ergodox_ez/keymaps/default/default.png similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default.png rename to keyboard/ergodox_ez/keymaps/default/default.png diff --git a/keyboard/ergodox_ez/keymaps/keymap_default_highres.png b/keyboard/ergodox_ez/keymaps/default/default_highres.png similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default_highres.png rename to keyboard/ergodox_ez/keymaps/default/default_highres.png diff --git a/keyboard/ergodox_ez/keymaps/keymap_default.c b/keyboard/ergodox_ez/keymaps/default/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default.c rename to keyboard/ergodox_ez/keymaps/default/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/default/readme.md b/keyboard/ergodox_ez/keymaps/default/readme.md new file mode 100644 index 0000000000..a1a8ad44f8 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# ErgoDox EZ Default Configuration + +This is what we ship with out of the factory. :) The image says it all: + +![Default](default_highres.png) diff --git a/keyboard/ergodox_ez/keymaps/keymap_default_osx.hex b/keyboard/ergodox_ez/keymaps/default_osx/default_osx.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default_osx.hex rename to keyboard/ergodox_ez/keymaps/default_osx/default_osx.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_default_osx_highres.png b/keyboard/ergodox_ez/keymaps/default_osx/default_osx_highres.png similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default_osx_highres.png rename to keyboard/ergodox_ez/keymaps/default_osx/default_osx_highres.png diff --git a/keyboard/ergodox_ez/keymaps/keymap_default_osx.c b/keyboard/ergodox_ez/keymaps/default_osx/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_default_osx.c rename to keyboard/ergodox_ez/keymaps/default_osx/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/default_osx/readme.md b/keyboard/ergodox_ez/keymaps/default_osx/readme.md new file mode 100644 index 0000000000..aa749aac90 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/default_osx/readme.md @@ -0,0 +1,8 @@ +# The OSX Friendly Version of the Default Firmware + +So, I took the default firmware and just made a couple of tweaks that make it easier to use with OS X: + +1. The Cmd key is now on the right side, making Cmd+Space easier. +2. The media keys work on OSX (But not on Windows). + +![default osx](default_osx_highres.png) diff --git a/keyboard/ergodox_ez/keymaps/dragon788/dragon788.hex b/keyboard/ergodox_ez/keymaps/dragon788/dragon788.hex new file mode 100644 index 0000000000..36adaad1dc Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/dragon788/dragon788.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_dragon788.c b/keyboard/ergodox_ez/keymaps/dragon788/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_dragon788.c rename to keyboard/ergodox_ez/keymaps/dragon788/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/dvorak/dvorak.hex b/keyboard/ergodox_ez/keymaps/dvorak/dvorak.hex new file mode 100644 index 0000000000..8e1ac3f21b Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/dvorak/dvorak.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_dvorak.png b/keyboard/ergodox_ez/keymaps/dvorak/dvorak.png similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_dvorak.png rename to keyboard/ergodox_ez/keymaps/dvorak/dvorak.png diff --git a/keyboard/ergodox_ez/keymaps/keymap_dvorak.c b/keyboard/ergodox_ez/keymaps/dvorak/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_dvorak.c rename to keyboard/ergodox_ez/keymaps/dvorak/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex new file mode 100644 index 0000000000..d18d061b96 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_erez_experimental.c b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_erez_experimental.c rename to keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md new file mode 100644 index 0000000000..1ec3400696 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md @@ -0,0 +1,11 @@ +# Erez's experimental layout + +This is my personal layout which I use to test out ideas which may or may not make it onto the default layout we ship with. It's based off the default layout, with various tweaks. + +Changelog: + +## Jan 19, 2016: + +* Made J into dual-action key (Alt when held down), to make Alt-tab more ergonomic. +* Made ' into dual-action key (Win/Cmd when held down). + diff --git a/keyboard/ergodox_ez/keymaps/german/german.hex b/keyboard/ergodox_ez/keymaps/german/german.hex new file mode 100644 index 0000000000..a2f30d7cb6 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/german/german.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_german.c b/keyboard/ergodox_ez/keymaps/german/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_german.c rename to keyboard/ergodox_ez/keymaps/german/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/j3rn/j3rn.hex b/keyboard/ergodox_ez/keymaps/j3rn/j3rn.hex new file mode 100644 index 0000000000..61af86e722 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/j3rn/j3rn.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_j3rn.c b/keyboard/ergodox_ez/keymaps/j3rn/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_j3rn.c rename to keyboard/ergodox_ez/keymaps/j3rn/keymap.c diff --git a/keyboard/ergodox_ez/keymap_j3rn_README.md b/keyboard/ergodox_ez/keymaps/j3rn/readme.md similarity index 100% rename from keyboard/ergodox_ez/keymap_j3rn_README.md rename to keyboard/ergodox_ez/keymaps/j3rn/readme.md diff --git a/keyboard/ergodox_ez/keymaps/jack/jack.hex b/keyboard/ergodox_ez/keymaps/jack/jack.hex new file mode 100644 index 0000000000..5651572ab0 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/jack/jack.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_jack.c b/keyboard/ergodox_ez/keymaps/jack/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_jack.c rename to keyboard/ergodox_ez/keymaps/jack/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/jgarr/jgarr.hex b/keyboard/ergodox_ez/keymaps/jgarr/jgarr.hex new file mode 100644 index 0000000000..f87413b56d Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/jgarr/jgarr.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_jgarr.c b/keyboard/ergodox_ez/keymaps/jgarr/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_jgarr.c rename to keyboard/ergodox_ez/keymaps/jgarr/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/kastyle/kastyle.hex b/keyboard/ergodox_ez/keymaps/kastyle/kastyle.hex new file mode 100644 index 0000000000..8c5409ac62 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/kastyle/kastyle.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_kastyle.c b/keyboard/ergodox_ez/keymaps/kastyle/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_kastyle.c rename to keyboard/ergodox_ez/keymaps/kastyle/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_de.c b/keyboard/ergodox_ez/keymaps/keymap_osx_de.c deleted file mode 100644 index cc9076eec8..0000000000 --- a/keyboard/ergodox_ez/keymaps/keymap_osx_de.c +++ /dev/null @@ -1,277 +0,0 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" -#include "keymap_extras/keymap_german_osx.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys -#define CRSR 3 // media keys -#define NUMB 4 // number keys - -#define M_CTRL_CMDV 1 -#define M_CTRL_CMDC 2 -#define M_MEH_SH_ACUT 3 - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 |CMD-V | |CMD-C | 6 | 7 | 8 | 9 | 0 | ß | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | L3 | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/L2 | - * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| - * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | ! | ? | | | | | \ | [ | ] | | | # | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | . | ! | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,DE_LESS,DE_MORE,DE_EXLM,DE_QST, KC_TRNS,KC_TRNS, - KC_TRNS,DE_HASH,DE_DLR, DE_BSLS,DE_SLSH,KC_DOT, - KC_TRNS,KC_TRNS,DE_LESS,DE_PERC,DE_PIPE,DE_TILD,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_DEL,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12, - DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS, - KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, - KC_TRNS,KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 2: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | Play | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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_TRNS, - KC_TRNS, KC_WH_L, KC_WH_U, KC_WH_D, KC_WH_R, KC_BTN3, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - 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_MPLY, - 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_MUTE, KC_MPRV, KC_MNXT, KC_UP, KC_TRNS, - KC_VOLU, KC_VOLD, KC_LEFT, KC_DOWN, KC_RIGHT, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_WBAK -), -// Cursor layer -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_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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, - KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -//number pad -KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, KC_TRNS, - KC_TRNS, LSFT(KC_6), KC_1, KC_2, KC_3, LSFT(KC_7), KC_TRNS, - KC_0,KC_DOT, KC_0, KC_EQL, 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), // FN1 - Momentary Layer 1 (Symbols) - [2] = ACTION_LAYER_TAP_TOGGLE(CRSR) // FN2 - Momentary Layer 2 (Cursors) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - static uint16_t start; - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - case 1: - if (record->event.pressed) { - start = timer_read(); - return MACRO(D(LCTRL), END); - } else { - if (timer_elapsed(start) > 150) { - return MACRO(U(LCTRL), END); - } else { - return MACRO(U(LCTRL), D(LGUI), T(V), U(LGUI), END); - } - } - break; - case 2: - if (record->event.pressed) { - start = timer_read(); - return MACRO(D(LCTRL),END); - } else { - if (timer_elapsed(start) > 150){ - return MACRO(U(LCTRL),END); - } else { - return MACRO(U(LCTRL),D(LGUI),T(C),U(LGUI),END); - } - } - break; - case 3: - if (record->event.pressed) { - start = timer_read(); - return MACRO(D(LCTRL),D(LSFT),D(LALT),END); - } else { - if (timer_elapsed(start) > 150){ - return MACRO(U(LCTRL),U(LSFT),U(LALT),END); - } else { - return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END); //cannot use DE_ACUT here, as macro needs KC_ prefix - } - } - 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; - case 4: - ergodox_right_led_1_on(); - ergodox_right_led_3_on(); - //ergodox_board_led_on(); - break; - default: - // none - break; - } - -}; diff --git a/keyboard/ergodox_ez/keymaps/keymap_kines-ish.c b/keyboard/ergodox_ez/keymaps/kines-ish/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_kines-ish.c rename to keyboard/ergodox_ez/keymaps/kines-ish/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/kines-ish/kines-ish.hex b/keyboard/ergodox_ez/keymaps/kines-ish/kines-ish.hex new file mode 100644 index 0000000000..eea5130bde Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/kines-ish/kines-ish.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_kines-ish_README.md b/keyboard/ergodox_ez/keymaps/kines-ish/readme.md similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_kines-ish_README.md rename to keyboard/ergodox_ez/keymaps/kines-ish/readme.md diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_de.hex rename to keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_de_highres.png b/keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_de_highres.png rename to keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_de_README.md b/keyboard/ergodox_ez/keymaps/osx_de/readme.md similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_de_README.md rename to keyboard/ergodox_ez/keymaps/osx_de/readme.md diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_de_adnw_koy.c b/keyboard/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_de_adnw_koy.c rename to keyboard/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy.hex b/keyboard/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy.hex new file mode 100644 index 0000000000..403076335a Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_fr.c b/keyboard/ergodox_ez/keymaps/osx_fr/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_fr.c rename to keyboard/ergodox_ez/keymaps/osx_fr/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_fr.hex b/keyboard/ergodox_ez/keymaps/osx_fr/osx_fr.hex similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_fr.hex rename to keyboard/ergodox_ez/keymaps/osx_fr/osx_fr.hex diff --git a/keyboard/ergodox_ez/keymaps/keymap_osx_kinesis_pnut.c b/keyboard/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_osx_kinesis_pnut.c rename to keyboard/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/keymap_plover.c b/keyboard/ergodox_ez/keymaps/plover/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_plover.c rename to keyboard/ergodox_ez/keymaps/plover/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/plover/plover.hex b/keyboard/ergodox_ez/keymaps/plover/plover.hex new file mode 100644 index 0000000000..53b0747d7e Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/plover/plover.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_software_neo2.c b/keyboard/ergodox_ez/keymaps/software_neo2/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_software_neo2.c rename to keyboard/ergodox_ez/keymaps/software_neo2/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/software_neo2/software_neo2.hex b/keyboard/ergodox_ez/keymaps/software_neo2/software_neo2.hex new file mode 100644 index 0000000000..8cf730c8f4 Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/software_neo2/software_neo2.hex differ diff --git a/keyboard/ergodox_ez/keymaps/keymap_workman_osx_mdw.c b/keyboard/ergodox_ez/keymaps/workman_osx_mdw/keymap.c similarity index 100% rename from keyboard/ergodox_ez/keymaps/keymap_workman_osx_mdw.c rename to keyboard/ergodox_ez/keymaps/workman_osx_mdw/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/workman_osx_mdw/workman_osx_mdw.hex b/keyboard/ergodox_ez/keymaps/workman_osx_mdw/workman_osx_mdw.hex new file mode 100644 index 0000000000..e6fe6a368b Binary files /dev/null and b/keyboard/ergodox_ez/keymaps/workman_osx_mdw/workman_osx_mdw.hex differ diff --git a/keyboard/ergodox_ez/README.md b/keyboard/ergodox_ez/readme.md similarity index 53% rename from keyboard/ergodox_ez/README.md rename to keyboard/ergodox_ez/readme.md index 51f1e2aa5a..a41a29e1ad 100644 --- a/keyboard/ergodox_ez/README.md +++ b/keyboard/ergodox_ez/readme.md @@ -17,14 +17,25 @@ This requires a little bit of familiarity with coding. 2. Clone the repository (download it) 3. Set up a build environment as per [pjrc.com/teensy/gcc.html](https://www.pjrc.com/teensy/gcc.html) - Using a Mac and have homebrew? just run `brew tap osx-cross/avr && brew install avr-libc` -4. Copy `keymaps/keymap_default.c` into `keymaps/keymap_your_name.c` (for example, `keymaps/keymap_german.c`) -5. Edit this file, changing keycodes to your liking (see "Finding the keycodes you need" below). Try to edit the comments as well, so the "text graphics" represent your layout correctly. -6. Compile your firmware by running `make clean` followed by `make KEYMAP=your_name`. Note that you must omit the `keymap_` prefix for your filename in this command -- for example, `make KEYMAP=german`. This will result in a hex file, which will always be called `ergodox_ez.hex`, regardless of your keymap name. +4. Copy `keymaps/default/keymap.c` into `keymaps/your_name/keymap.c` (for example, `keymaps/german/keymap.c`) +5. Edit this file, changing keycodes to your liking (see "Finding the keycodes you need" below). Try to edit the comments as well, so the "text graphics" represent your layout correctly. See below for more tips on sharing your work. +6. Compile your firmware by running `make clean` followed by `make KEYMAP=your_name`. For example, `make KEYMAP=german`. This will result in a hex file, which will always be called `ergodox_ez.hex`, regardless of your keymap name. 6. Flash this hex file using the [Teensy loader](https://www.pjrc.com/teensy/loader.html) as described in step 4 in the "Easy Way" above. -7. Submit your work as a pull request to this repository, so others can also use it. :) +7. Submit your work as a pull request to this repository, so others can also use it. :) See below on specifics. Good luck! :) +## Contributing your keymap + +The ErgoDox EZ firmware is open-source, so it would be wonderful to have your contribution! Within a very short time after launching we already amassed almost 20 user-contributed keymaps, with all sorts of creative improvements and tweaks. This is very valuable for people who aren't comfortable coding, but do want to customize their ErgoDox EZ. To make it easy for these people to use your layout, I recommend submitting your PR in the following format. + +1. All work goes inside your keymap subdirectory (`keymaps/german` in this example). +2. `keymap.c` - this is your actual keymap file; please update the ASCII comments in the file so they correspond with what you did. +3. `german.hex` - a compiled version of your keymap. Commit it to the repo with `git add -f` as hex files are ignored by default. This allows people to just download your hex file and flash it without having to set up a build toolchain to make it. +3. `readme.md` - a Readme file, which GitHub would display by default when people go to your directory. Explain what's different about your keymap, what you tweaked or how it works. No specific format to follow, just communicate what you did. :) +4. Any graphics you wish to add. This is absolutely not a must. If you feel like it, you can use [Keyboard Layout Editor](http://keyboard-layout-editor.com) to make something and grab a screenshot, but it's really not a must. If you do have graphics, your Readme can just embed the graphic as a link, just like I did with the default layout. + + ## Finding the keycodes you need Let's say you want a certain key in your layout to send a colon; to figure out what keycode to use to make it do that, you're going to need `quantum/keymap_common.h`. diff --git a/keyboard/ergodox_ez/reference_compiled_default_firmware.hex b/keyboard/ergodox_ez/reference_compiled_default_firmware.hex deleted file mode 100644 index 69577c549c..0000000000 Binary files a/keyboard/ergodox_ez/reference_compiled_default_firmware.hex and /dev/null differ