Gergely Nagy 8a9bf1f165 | 7 years ago | |
---|---|---|
.. | ||
ez | 7 years ago | |
infinity | 7 years ago | |
keymaps | 7 years ago | |
Makefile | 7 years ago | |
config.h | 7 years ago | |
ergodox.c | 7 years ago | |
ergodox.h | 7 years ago | |
readme.md | 7 years ago |
There are two main ways you could customize the ErgoDox (EZ and Infinity)
This does not work for Infinity ErgoDox yet, you need to compile the firmware according to the instructions below
teensy-loader-cli
), so you may prefer to use this.This requires a little bit of familiarity with coding. If you are just compiling an existing keymap and don't want to create your own, you can skip step 4, 5 and 8.
Go to https://github.com/jackhumbert/qmk_firmware and read the readme at the base of this repository, top to bottom. Then come back here :)
Clone the repository (download it)
Set up a build environment as per the build guide
brew tap osx-cross/avr && brew install avr-libc
Copy keyboards/ergodox/keymaps/default/keymap.c
into keymaps/your_name/keymap.c
(for example, keymaps/german/keymap.c
)
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.
Compile your firmware by running make keymap=keymap_name
. For example, make keymap=german
. This will result in a hex file, which will be called ergodox_ez_keymap_name.hex
, e.g. ergodox_ez_german.hex
. For Infinity ErgoDox you need to add subproject=infinity
to the make command.
ErgoDox EZ - Flash this hex file using the Teensy loader as described in step 4 in the "Easy Way" above. If you prefer you can automatically flash the hex file after successful build by running make teensy keymap=keymap_name
.
Infinity ErgoDox - Flash the firmware by running make dfu-util keymap=keymap_name subproject=infinity
Submit your work as a pull request to this repository, so others can also use it. :) See below on specifics.
Good luck! :)
The ErgoDox 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. To make it easy for these people to use your layout, I recommend submitting your PR in the following format.
keymaps/german
in this example).keymap.c
- this is your actual keymap file; please update the ASCII comments in the file so they correspond with what you did.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. :)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
.
That file contains a big list of all of the special, fancy keys (like, being able to send % on its own and whatnot).
If you want to send a plain vanilla key, you can look up its code under doc/keycode.txt
. That's where all the boring keys hang out.