summaryrefslogtreecommitdiff
path: root/keyboards/roadkit/keymaps/default/keymap.c
diff options
context:
space:
mode:
authorJohn M Daly <jmdaly@gmail.com>2017-02-27 21:42:25 -0500
committerJohn M Daly <jmdaly@gmail.com>2017-02-28 11:17:18 -0500
commite12b1a237cd4e9ce4191efb13987871a91b5916e (patch)
tree5aa351cf1a7dffe92c422baae3a85918aee2f208 /keyboards/roadkit/keymaps/default/keymap.c
parent4583955914fcefbfd69297f2e2b157c744884dc4 (diff)
downloadqmk_firmware-e12b1a237cd4e9ce4191efb13987871a91b5916e.tar.gz
qmk_firmware-e12b1a237cd4e9ce4191efb13987871a91b5916e.zip
Add initial version of TheVan Keyboards Roadkit Firmware
Diffstat (limited to 'keyboards/roadkit/keymaps/default/keymap.c')
-rw-r--r--keyboards/roadkit/keymaps/default/keymap.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/keyboards/roadkit/keymaps/default/keymap.c b/keyboards/roadkit/keymaps/default/keymap.c
new file mode 100644
index 0000000000..3fc18915a8
--- /dev/null
+++ b/keyboards/roadkit/keymaps/default/keymap.c
@@ -0,0 +1,49 @@
+#include "roadkit.h"
+#include "action_layer.h"
+#include "eeconfig.h"
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+
+#define _NP 0
+
+// Macro name shortcuts
+#define NUMPAD M(_NP)
+
+// Fillers to make layering more clear
+#define _______ KC_TRNS
+#define XXXXXXX KC_NO
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_NP] = /* Numpad */
+ KEYMAP(KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, \
+ KC_KP_4, KC_KP_5, KC_KP_6, \
+ KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_ENTER, \
+ KC_KP_0, KC_KP_DOT),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+
+};
+
+void persistant_default_layer_set(uint16_t default_layer) {
+ eeconfig_update_default_layer(default_layer);
+ default_layer_set(default_layer);
+}
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ switch(id) {
+ case _NP:
+ if (record->event.pressed) {
+ persistant_default_layer_set(1UL<<_NP);
+ }
+ break;
+ }
+ return MACRO_NONE;
+};