Some values that can never, ever, change were held in local
variables, rather than in PROGMEM. Fixed.
Change "pressed" to a signed int so the test for < 0 makes
sense, and to avoid possible weird failure modes in the
case where a key release comes in when pressed is already
zero. (Shouldn't happen, sure, but computers are weird.)
A lot of things in process_steno had external linkage for no
particular reason. They've been marked static. Stuff still
builds.
Distinguish between currently-held keys and keys that have
been held, and expose these values through a nicely-named API
so other code could, say, check on the current set of steno
chording in order to make displays. Also in passing fix up the
"state" value having external linkage so it could clash with
other people's variable declarations.
The API also provides hooks for key processing and steno chord
events, so you can monitor those events without having to
run in matrix_scan_user and recheck the values directly. Also
document these.
There is no path through processing a key that doesn't
end with a return false, so the nested return foo() are
gone and we just return false.
* change diverge 3 KC_KEYMAP to LAYOUT
* Change KEYMAP to LAYOUT for handwired arrow pad
* change M10A to LAYOUT for m10-a
* Change KC_KEYMAP to LAYOUT_kc and KEYMAP to LAYOUT for mf68
* change KC_KEYMAP to LAYOUT for nano
* Refactor to LAYOUT
* refactor to LAYOUT-ansi and LAYOUT_iso for s65
* LAYOUT conversions for lfkkeyboards
* missed a few renames
* mini1800 for lfkeyobards support of LAYOUT
* Added support for rev3 of the Atom47
* Updated Atom47 readme's
* Fix redefine error on rev2 and add maartenwut's keymap
* Fix redefine error on LEdiodes keymap
* fixed comment typo
* Fixes invalid capitalization
Uppercase yes is invalid, so make treats it as no, which is
confusing when it seems like it should have found the method
definition for unicode.
* Own keymap, comma in mitosis
Own keymap is qwerty, workman, numbers, punctuation, function/mouse
layers, gaming, unicode, numberpad.
There are some small differences:
1) FN+WASD are an arrow cluster
2) FN+Z (Start media player) and FN+] (Start Calculator) are not mapped
3) FN+GHJKL are Backlight controls
4) An FN2 layer exists for future growth
5) The CAPS key is maped as FN2, for CAPS Lock use FN+CAPS
* rename KEYMAP to LAYOUT_ALL
* Standard Layout Eagle Refactor
New layout LAYOUT_EAGLE
Got standard layout backspace working
* Remove split right shift support for standard layout eagle
* add back the KC_NO for split right shift
* Remove KC_NO from bottom row to support standard 60 layout
* Fix formatting issues with mechmerlin keymap
* remove extra KC_NO from split right shift in LAYOUT_EAGLE
* Preliminary checkin for new layout LAYOUT_VIPER
* Remove some of the KC_NO from the layout
* Fix formatting
* missed a KC_NO for the LAYOUT_EAGLE
* remove KC_NO from enter key of LAYOUT_VIPER
* some more formatting changes
* Default 60 with split left right shift and backspace
* add info.json layouts to match the new LAYOUTs
* change formatting of LAYOUT names
* propogate renames to info.json
* Change global config.h settings
* Make Shift LED brighter
* Compatibility Tweaks
* Update ASCII art and layer comments
* Add comments about MOD layer
* Change ASCII art for reset, since it was out of date
* Use Overwatch theme for Workman layer
* Fix RGB define comments
* Make sure RGB set list matches
* Stop all notes for custom Faux Click
* Switch to OSM for everything, and remove RGB Sleep
* Never use KEYMAP now
* Only enable RGB Sleep on Non-Ergodox boards
* Cleanup do to new rgblight_list.h file
* Add redirect message for RGB codes
* Update userspace documentation
* Cleanup of Userspace
Add unicode support, and cleaned up comments for ifdef statements
* Remove unneeded slashes
* Unicode handling
* Force NKRO
Add info.json
Change KEYMAP to LAYOUT_ALL to better reflect that this is a
LAYOUT that fits ALL the possible positions for switches.
We will need to make better LAYOUTS for the future.
* Initial commit: Get things compiling
* port the custom matrix code
* Update readme
* make second layer fully transparent
* populate config.h identifiers with more correct information
* Add in switch backlight support
* Enable backlight LEDs, and change pin for RGB
* port TMK version over
* remove all that TMK stuff, it didn't work lol
* Updated readme
* Fix keymap
- Change KEYMAP to LAYOUT
- Adjust formatting of table
* Edit readme to reflect NOTES
* add info.json for QMK configurator support
* Replaced placeholder with MechMerlin
This reverts the changes in #2491, so that Travis will hopefully return to automatic incrementing.
But this includes the layout and userspace excepts, as well.
This finishes fixing #2314, which mostly copies the firmware when compiling.
However, it misses `:teensy`, `:avrdude` and most importantly, `:production`
* Added cpeters1982 keymap folder in lets_split
* Deleted tap dance. need to research error
* Changed keymap to better facilitate SpaceFn
* Trying to get backlighting to work
* Added RGB backlight support
* cleared some cache files per Drashna's instructions
* mitosis/datagrok: make qwerty the default layout
* mitosis/datagrok: update readme to match qwerty default
* mitosis:datagrok: remove redundant name for transparent
meh, decided i don't need an extra key to represent "key that is
transparent because it's a modifier on a layer below." it's a maintenance
burden when moving other keys around
* mitosis:datagrok: add num lock on Blue + QWERTY T
* mitosis:datagrok: tap lshift = tab
we use tab completion a lot so let's get it onto an unmodified key somehow
* mitosis:datagrok: update readme
* mitosis:datagrok: improve notes in README
* mitosis:datagrok: note numlock in README
* configure layer 0 layout for xd60 as ANSI 60%
* update keymap with function key immediately right of spacebar;
shuffle mapping in function layer to my liking
* update readme