forked from kofal.net/zmk
Implement raise/lower for default keymap.
* Properly allow includes for keymaps to allow defining custom keycodes, and then adding them to the keymap.overlay file. * Fix keymap.c loading after build refactor. * Fix for deactivating a layer working properly. * Fix default keymap to put transparent in proper spots to make raise/lower keycodes work as expected. * Add custom raise/lower keycode handling to default keymap.
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
|
||||
#define CC_RAIS ZC_CSTM(1)
|
||||
#define CC_LOWR ZC_CSTM(2)
|
||||
@@ -1,7 +1,34 @@
|
||||
|
||||
#include <zmk/keys.h>
|
||||
#include <zmk/keymap.h>
|
||||
#include <keymap.h>
|
||||
|
||||
bool zmk_handle_key_user(struct zmk_key_event *key_event)
|
||||
{
|
||||
switch (key_event->key)
|
||||
{
|
||||
case CC_LOWR:
|
||||
if (key_event->pressed)
|
||||
{
|
||||
zmk_keymap_layer_activate(1);
|
||||
}
|
||||
else
|
||||
{
|
||||
zmk_keymap_layer_deactivate(1);
|
||||
}
|
||||
|
||||
return false;
|
||||
case CC_RAIS:
|
||||
if (key_event->pressed)
|
||||
{
|
||||
zmk_keymap_layer_activate(2);
|
||||
}
|
||||
else
|
||||
{
|
||||
zmk_keymap_layer_deactivate(2);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <keymap.h>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
@@ -14,22 +15,22 @@
|
||||
compatible = "zmk,layers";
|
||||
|
||||
default: layer_0 {
|
||||
label = "Default";
|
||||
label = "DEFAULT";
|
||||
keys =
|
||||
<
|
||||
KC_A KC_B
|
||||
KC_C ZC_CSTM(1)
|
||||
CC_RAIS CC_LOWR
|
||||
>;
|
||||
};
|
||||
|
||||
lower: layer_1 {
|
||||
label = "Lower";
|
||||
keys = <KC_D KC_C KC_B KC_A>;
|
||||
label = "LOWER";
|
||||
keys = <KC_D KC_C ZC_TRNS ZC_TRNS>;
|
||||
};
|
||||
|
||||
raise: layer_2 {
|
||||
label = "Raise";
|
||||
keys = <KC_C KC_D KC_A KC_B>;
|
||||
label = "RAISE";
|
||||
keys = <KC_C KC_D ZC_TRNS ZC_TRNS>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user