Commit Graph

19 Commits

Author SHA1 Message Date
Kyle Brown
d2407e9bd8 Massive update for all boards 2020-11-13 23:27:48 -08:00
Josh Klar
2c4e866024 Initial attempt to merge internal_state with kmk_keyboard. Seems to work on Plank so far
fix formatting

Example of new "Extension"/plugin system, using LED

Cleanup of RGB code

staticmethod to proper, normal methods

Needs cleanup, but: migrate Leader to Extension API

remove useless self reurns

fix an AttributeError with Leader key removal

Checkpoint from the weekend: split as an Extension (not working or done yet)

wip
2020-11-13 23:27:48 -08:00
Josh Klar
666c0a4f08 Rename KeyboardConfig to KMKKeyboard - prepping for later merge with InternalState 2019-07-25 01:30:55 -07:00
Josh Klar
5c0c13e8d0 Prepare for Black autoformatting: dependencies, string staging, single-quote string override 2019-07-24 23:03:13 -07:00
Josh Klar
1e9625ae0e Rename "Firmware" to "KeyboardConfig" for clarity in main.py and to illustrate separation of KeyboardConfig/InternalState 2019-07-24 21:25:10 -07:00
Josh Klar
0b364cf7f1 Resolves #121: Use flattened keymaps, which can visually represent the logical layout, rather than the physical wiring 2019-05-12 17:47:16 -07:00
Josh Klar
848afb7801 Allow pre/post on_press/on_release handlers to be attached to all keys (example provided) 2019-02-18 15:08:07 -08:00
Josh Klar
bcdc97a56b More keymap updates 2018-12-29 16:52:44 -08:00
Josh Klar
ea63c888d6 Oops, never fixed MY OWN LAYOUT. So many bugs.... 2018-12-29 15:57:30 -08:00
Josh Klar
e5c8f5587d Merge unicode handlers with the others. Prove arbitrary Macros are now doable in userspace 2018-12-29 07:10:11 -08:00
Josh Klar
8a21b4135d Restore Unicode Macro support 2018-12-29 06:58:08 -08:00
Josh Klar
57239e3163 Everything necessary to get this to boot finally. Planck types! 2018-12-29 06:03:31 -08:00
Josh Klar
d6a0538009 kmk.consts: rename UnicodeModes => UnicodeMode
This brings this naming into consistency with both fellow consts in the
same file (ex. LeaderMode is singular) as well as the variables in which
the consts are usually used (usually a `Firmware.unicode_mode` attribute
in a keymap).
2018-12-04 17:03:13 -08:00
Josh Klar
94ac6d0cbd Merge master and reconcile tapdance with splits
This took a bit of brain surgery to firmware.py that deserves its own
commit message beyond the default merge commit message - tl;dr though,
it appears to work fine.
2018-11-05 21:15:23 -08:00
Josh Klar
d117005d8d Add press-and-hold support to TapDance, and clean up various ways of mangling key press states. Remove pending_keys entirely, replaced with a callback timeout) 2018-10-25 21:58:26 -07:00
Josh Klar
b0f8c58828 Beginnings of basic tap dance 2018-10-25 21:58:25 -07:00
Josh Klar
2d1290a12c Add LeaderMode.TIMEOUT (QMK default Leader mode)
This allows leader sequences to "time out" rather than requiring an
Enter keypress to end.

This also rolls back some unnecessary changes from #72 to the matrix
scanner for performance reasons.

In theory we can use this in the future for Tap Dance support (#40)

Resolves #1
Resolves #37
2018-10-19 01:49:37 -07:00
Josh Klar
54f7117712 Resolves #38: Add KC.DEBUG to toggle log spew at runtime 2018-10-19 00:58:17 -07:00
Josh Klar
16c82b1c0c OMEGA REFACTOR! Perf grind basically complete.
Resolves #70, Resolves #67

Still needs some regression testing in general, and a definite
regression is that rotary encoders are no longer (for the immediate time
being) supported.

Moves to a much simpler internal state tracking system, and FAR lighter
matrix scan.

Removes MicroPython support entirely.
2018-10-16 22:21:45 -07:00