Move the documentation to `doc/plugin/LEDEffect-Chase.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/LEDEffect-Breathe.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/LEDEffect-BootGreeting.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/Hardware-Model01.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/Model01-TestMode.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/Macros.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/LEDEffect-SolidColor.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/LED-AlphaSquare.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/FocusSerial.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
This also merges the former `UPGRADING.md` into `doc/plugin/FocusSerial.md`.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Lots of things were already under the `kaleidoscope` namespace, but were in the
"wrong" directory. This big patchset moves everything under `kaleidoscope/`, and
namespaces `Layers_`. There are a few un-namespaced things, but because their
use is so widespread, and they're used so commonly, we don't want to namespace
those (like `handleKeyswitchEvent`), at least not yet.
As a minor side-effect, this moves a few global statics that were once in
`Layers.cpp` into the `Layer_` class itself, for clarity and encapsulation.
Non-namespaced headers that were used outside of Kaleidoscope itself will still
work, but will emit a compile-time warning.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/HostPowerManagement.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Move the documentation to `doc/plugin/EEPROM-Keymap.md`, sources under
`src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of
merging plugins into a single monorepo.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
If we have key coordinates set, we don't need to search the keymap, we can just
use the coordinates as-is.
Fixes#10.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to
date).
Also updated README.md to use `KALEIDOSCOPE_INIT_PLUGINS`.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the stable/experimental badge from README.md (because they aren't being
kept up to date), but add a Travis build status badge.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to
date).
While there, updated both the README and the example to not use the now-obsolete
`.enableWakeup` method.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Remove the IRC notifications from Travis (we're not using IRC anymore), and the
stable/experimental badge from README.md (because they aren't being kept up to date).
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
Several define directives could be replaced by constexpr variable
definitions. This adds type safety with no overhead costs.
Signed-off-by: Max Görner <max@familie-goerner.eu>
Instead of a low-level interface where one has to set the EEPROM-stored layers
and the lookup method separately, introduce a `setup` method that combines the
two in a much easier to grasp interface. It takes a layer number, and an
optional mode, and sets things up accordingly.
With this new setup procedure comes a new way of how the plugin works: instead
of being able to override the keymap in EEPROM, we extend it (or use a custom
implementation, for advanced use-cases). The default layer can still be set via
Focus, thus effectively overriding the keymap in PROGMEM. To better support
this, a new Focus command is introduced too: `keymap.roLayers`, which returns
the number of layers in PROGMEM.
The `keymap.transfer` Focus command is removed, because it can be done much more
reliably from the host side, building on top of `keymap.map`.
The rest of the lower-level interface is still there, though undocumented, for
advanced use-cases the new simplified setup does not fit.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
With upcoming EEPROMKeymap changes, saving the default layer will become an
important part of the keyboard settings. The new `default_layer` method provides
a way to set it programmatically, while the `settings.defaultLayer` Focus
command allows the user to set it via Focus.
The default layer - if set - is activated when the settings are sealed, either
directly or automatically.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>