2012-04-24 21:17:06 +02:00
|
|
|
# Documentation : layout
|
|
|
|
|
2012-04-25 08:22:20 +02:00
|
|
|
Different layouts are included by modifying a variable in the makefile.
|
|
|
|
|
|
|
|
To write a new one:
|
|
|
|
* You must implement everything defined in <layout.h>. Take a look at existing
|
|
|
|
layouts.
|
|
|
|
* The number of layers must be defined in the layout *.h file.
|
|
|
|
* Use `0` for no-operation (unused) keys.
|
|
|
|
* See <matrix.md> for how the key matrix maps to hardware.
|
|
|
|
* See </src/lib/_usb/keyboard-usage-page--short-names.h> for available
|
|
|
|
keycodes.
|
|
|
|
* See </src/key-functions.c> for what functions keys can call.
|
|
|
|
|
|
|
|
|
2012-04-24 21:17:06 +02:00
|
|
|
## notes
|
|
|
|
|
|
|
|
* Assuming 560 bytes for everything else in RAM space, there's 2000 bytes left
|
|
|
|
for the layout. This should be enough for about 7 layers. Watch your RAM
|
|
|
|
usage if you're getting close.
|
|
|
|
|
|
|
|
* The layout matricies could be moved to flash memory (program space, instead
|
2012-04-25 08:22:20 +02:00
|
|
|
of data space) in order to save RAM, but that doesn't seem necessary at the
|
|
|
|
moment. It would also be slightly slower, though that probably shouldn't
|
|
|
|
be a concern.
|
|
|
|
|
2012-04-24 21:17:06 +02:00
|
|
|
|
|
|
|
-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
Copyright © 2012 Ben Blazak <benblazak.dev@gmail.com>
|
|
|
|
Released under The MIT License (MIT) (see "license.md")
|
|
|
|
Project located at <https://github.com/benblazak/ergodox-firmware>
|
|
|
|
|