Include `action_tapping.h`, so the keymap does not have to define a
`TAPPING_TERM` for us, and we can use the default.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
When entering unicode codes, use some delay, so the OS has time to
process the information. This is not needed on all systems, but some
seem to require it.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
It turns out that register_hex32 did not work reliably, and some systems
only allow 7 chars after the unicode magic sequence, while others allow
8. To remedy the situation, store the codes as strings, and type those
in instead of doing bit shifting magic.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
Extract out the part of `qk_ucis_start` that inputs the placeholder
symbol, and make it weak, so it can be overridden.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
If the symbol name being entered is longer than the max, stop recording
it, and stop processing keycodes apart from the ones that can delete,
finish or cancel the sequence.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
The purpose of this change is to allow keymaps to specify a dictionary
of unicode symbol name to code mappings, and let the person at the
keyboard enter unicode symbols by name.
This is done by having a way to trigger unicode symbol input mode, when
all keys are cached until Esc, Enter or Space are pressed. Once that
happens, we try to look up the symbol from our lookup table. If found,
we erase back, and type the unicode magic in to get that symbol. If not
found, we still erase back, start unicode input mode, and replay what
the user typed in.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
This moves the unicode input start / end sequences into their own
functions, so keymaps and other functionality can build on it too.
At the same time, it changes how the Linux variant works, to match
reality: CTRL+SHIFT must be unregistered too, and we close the thing
with a Space instead.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
In the header, this was defined as `set_unicode_input_mode`, but the
implementation had `set_unicode_mode` for a name. Changed the
implementation to match the header.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
Major changes include:
* The **1HAND** layer has been removed.
* A `Delete` key is now available on the right thumb cluster.
* The **ADORE** layer received a major update, see the updated layout
image.
* It is now possible to enable automatic logging for the **ADORE**
layer, by setting the `ADORE_AUTOLOG` makefile variable to `yes` when
compiling the keymap. It is off by default.
* The `~` key and the `Media Next/Prev` key have been swapped on
the **base** layer.
* On the **ARROW** layer, `Backspace` has been replaced by `Enter`.
* There is some experimental support for entering Unicode symbols.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>