X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=common%2Fkeymap.h;h=ee36eab83500f52ac31c036dd049e3bd555a5f80;hb=63c03dc137afe6600156a060b592662feaad0cdc;hp=7dfd6c2a1b66ba3bdbf6f2a23468823f79d08f48;hpb=62d1ebb91c7b381ce3d88aad9ee0b03bea9fce26;p=max%2Ftmk_keyboard.git
diff --git a/common/keymap.h b/common/keymap.h
index 7dfd6c2a..ee36eab8 100644
--- a/common/keymap.h
+++ b/common/keymap.h
@@ -20,9 +20,35 @@ along with this program. If not, see .
#include
#include
+#include "action.h"
-/* keycode in specific layer */
+// TODO: move to action.h?
+/* layer used currently */
+extern uint8_t current_layer;
+/* layer to return or start with */
+extern uint8_t default_layer;
+
+
+/* translates key_t to keycode */
+uint8_t keymap_key_to_keycode(uint8_t layer, key_t key);
+/* translates keycode to action */
+action_t keymap_keycode_to_action(uint8_t keycode);
+/* translates Fn keycode to action */
+action_t keymap_fn_to_action(uint8_t keycode);
+
+
+/* action for key */
+// TODO: should use struct key_t? move to action.h?
+action_t keymap_get_action(uint8_t layer, uint8_t row, uint8_t col);
+
+/* user defined special function */
+void keymap_call_function(keyrecord_t *record, uint8_t id, uint8_t opt);
+
+
+
+#ifndef NO_LEGACY_KEYMAP_SUPPORT
+/* keycode of key */
uint8_t keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t col);
/* layer to move during press Fn key */
@@ -30,5 +56,6 @@ uint8_t keymap_fn_layer(uint8_t fn_bits);
/* keycode to send when release Fn key without using */
uint8_t keymap_fn_keycode(uint8_t fn_bits);
+#endif
#endif