aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Shields <daniel.shields@bcs.org>2019-09-21 19:04:27 +0100
committerDrashna Jaelre <drashna@live.com>2019-09-21 11:04:27 -0700
commit63a0b1241d204873cd5156a959e913c602b0c386 (patch)
tree69ec7c084ed0ef26c50e23017ec32a3e483de679
parent75c97477874b9354a90b8b4eca2d3b1ecfc15435 (diff)
downloadqmk_firmware-63a0b1241d204873cd5156a959e913c602b0c386.tar.gz
qmk_firmware-63a0b1241d204873cd5156a959e913c602b0c386.zip
[Keymap] Move common code and configuration to userspace for dshields keymaps. (#6537)
-rw-r--r--keyboards/model01/keymaps/dshields/config.h26
-rw-r--r--keyboards/model01/keymaps/dshields/keymap.c28
-rw-r--r--keyboards/model01/keymaps/dshields/rules.mk3
-rw-r--r--keyboards/planck/keymaps/dshields/config.h29
-rw-r--r--keyboards/planck/keymaps/dshields/keymap.c29
-rw-r--r--users/dshields/config.h14
-rw-r--r--users/dshields/dshields.c30
-rw-r--r--users/dshields/dshields.h31
-rw-r--r--users/dshields/rules.mk (renamed from keyboards/planck/keymaps/dshields/rules.mk)0
9 files changed, 79 insertions, 111 deletions
diff --git a/keyboards/model01/keymaps/dshields/config.h b/keyboards/model01/keymaps/dshields/config.h
index 0896a1f45..fdb23d46b 100644
--- a/keyboards/model01/keymaps/dshields/config.h
+++ b/keyboards/model01/keymaps/dshields/config.h
@@ -1,30 +1,4 @@
1#pragma once 1#pragma once
2 2
3#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
4#define RGB_DIGITAL_RAIN_DROPS 18 3#define RGB_DIGITAL_RAIN_DROPS 18
5#define USB_MAX_POWER_CONSUMPTION 100
6#define ONESHOT_TAP_TOGGLE 2
7#define ONESHOT_TIMEOUT 3000
8
9#define MOUSEKEY_INTERVAL 20
10#define MOUSEKEY_DELAY 0
11#define MOUSEKEY_TIME_TO_MAX 40
12#define MOUSEKEY_MAX_SPEED 7
13#define MOUSEKEY_WHEEL_DELAY 0
14
15// dynamic macro keys
16#define DM_PLAY DYN_MACRO_PLAY1
17#define DM_STRT DYN_REC_START1
18#define DM_STOP DYN_REC_STOP
19
20// one-shot layer keys
21#define OSL_FUN OSL(FUN)
22
23// one-shot modifier keys
24#define OSMLCTL OSM(MOD_LCTL)
25#define OSMRCTL OSM(MOD_RCTL)
26#define OSMLALT OSM(MOD_LALT)
27#define OSMRALT OSM(MOD_RALT)
28#define OSMLSFT OSM(MOD_LSFT)
29#define OSMRSFT OSM(MOD_RSFT)
30 4
diff --git a/keyboards/model01/keymaps/dshields/keymap.c b/keyboards/model01/keymaps/dshields/keymap.c
index dedfd69b4..6b9a54132 100644
--- a/keyboards/model01/keymaps/dshields/keymap.c
+++ b/keyboards/model01/keymaps/dshields/keymap.c
@@ -1,4 +1,5 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2#include "dshields.h"
2 3
3enum { DEF, FUN }; 4enum { DEF, FUN };
4enum { DYNAMIC_MACRO_RANGE = SAFE_RANGE }; 5enum { DYNAMIC_MACRO_RANGE = SAFE_RANGE };
@@ -30,30 +31,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
30 ) 31 )
31}; 32};
32 33
33uint32_t layer_state_set_user(uint32_t state) {
34 switch (biton32(state)) {
35 case DEF:
36 set_all_leds_to(0,0,0);
37 break;
38 case FUN:
39 // TODO light the fn keys
40 // set_led_to(?, 0, 128, 0);
41 // set_led_to(?, 0, 128, 0);
42 break;
43 }
44 return state;
45}
46
47/*
48void matrix_init_user(void) {
49 eeconfig_init();
50};
51*/
52
53bool process_record_user(uint16_t keycode, keyrecord_t *record) {
54 if (!process_record_dynamic_macro(keycode, record)) {
55 return false;
56 }
57 return true;
58}
59
diff --git a/keyboards/model01/keymaps/dshields/rules.mk b/keyboards/model01/keymaps/dshields/rules.mk
deleted file mode 100644
index d3754cc1f..000000000
--- a/keyboards/model01/keymaps/dshields/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
1MOUSEKEY_ENABLE = yes
2EXTRAKEY_ENABLE = no
3CONSOLE_ENABLE = no
diff --git a/keyboards/planck/keymaps/dshields/config.h b/keyboards/planck/keymaps/dshields/config.h
index 8d90d0d2c..857c8164e 100644
--- a/keyboards/planck/keymaps/dshields/config.h
+++ b/keyboards/planck/keymaps/dshields/config.h
@@ -1,33 +1,4 @@
1#pragma once 1#pragma once
2 2
3#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
4#define RGB_DIGITAL_RAIN_DROPS 24 3#define RGB_DIGITAL_RAIN_DROPS 24
5#define USB_MAX_POWER_CONSUMPTION 100
6#define ONESHOT_TAP_TOGGLE 2
7#define ONESHOT_TIMEOUT 3000
8#define RETRO_TAPPING
9
10#define MOUSEKEY_INTERVAL 20
11#define MOUSEKEY_DELAY 0
12#define MOUSEKEY_TIME_TO_MAX 40
13#define MOUSEKEY_MAX_SPEED 7
14#define MOUSEKEY_WHEEL_DELAY 0
15
16// dynamic macro keys
17#define DM_PLAY DYN_MACRO_PLAY1
18#define DM_STRT DYN_REC_START1
19#define DM_STOP DYN_REC_STOP
20
21// one-shot layer keys
22#define OSL_RSE OSL(RSE)
23#define OSL_LWR OSL(LWR)
24#define OSL_FUN OSL(FUN)
25
26// one-shot modifier keys
27#define OSM_CTL OSM(MOD_LCTL)
28#define OSM_ALT OSM(MOD_LALT)
29#define OSM_SFT OSM(MOD_LSFT)
30
31// mod-tap keys
32#define MT_SPC SFT_T(KC_SPC)
33 4
diff --git a/keyboards/planck/keymaps/dshields/keymap.c b/keyboards/planck/keymaps/dshields/keymap.c
index 18e246a3e..18b026da4 100644
--- a/keyboards/planck/keymaps/dshields/keymap.c
+++ b/keyboards/planck/keymaps/dshields/keymap.c
@@ -1,27 +1,17 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2#include "config.h" 2#include "dshields.h"
3
4extern keymap_config_t keymap_config;
5 3
6enum planck_layers { DEF, LWR, RSE, FUN }; 4enum planck_layers { DEF, LWR, RSE, FUN };
7enum planck_keycodes { DYNAMIC_MACRO_RANGE = SAFE_RANGE }; 5enum planck_keycodes { DYNAMIC_MACRO_RANGE = SAFE_RANGE };
8 6
9#include "dynamic_macro.h" 7#include "dynamic_macro.h"
10 8
11#ifdef KEYBOARD_planck_light
12 #define LGT_TOG RGB_TOG
13 #define LGT_MOD RGB_MOD
14#else
15 #define LGT_TOG BL_TOGG
16 #define LGT_MOD BL_STEP
17#endif
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 9const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 [DEF] = LAYOUT_planck_grid( 10 [DEF] = LAYOUT_planck_grid(
21 KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P , 11 KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P ,
22 KC_A, KC_S, KC_D, KC_F, KC_G, KC_TAB, KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 12 KC_A, KC_S, KC_D, KC_F, KC_G, KC_TAB, KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
23 KC_Z, KC_X, KC_C, KC_V, KC_B, OSM_SFT, DM_PLAY, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, 13 KC_Z, KC_X, KC_C, KC_V, KC_B, OSMLSFT, DM_PLAY, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
24 OSM_CTL, KC_LGUI, OSM_ALT, OSL_FUN, OSL_LWR, MT_SPC, MT_SPC, OSL_RSE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT 14 OSMLCTL, KC_LGUI, OSMLALT, OSL_FUN, OSL_LWR, MT_SPC, MT_SPC, OSL_RSE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
25 ), 15 ),
26 [LWR] = LAYOUT_planck_grid( 16 [LWR] = LAYOUT_planck_grid(
27 KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, 17 KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,
@@ -43,16 +33,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
43 ) 33 )
44}; 34};
45 35
46/*
47void matrix_init_user(void) {
48 eeconfig_init();
49};
50*/
51
52bool process_record_user(uint16_t keycode, keyrecord_t *record) {
53 if (!process_record_dynamic_macro(keycode, record)) {
54 return false;
55 }
56 return true;
57}
58
diff --git a/users/dshields/config.h b/users/dshields/config.h
new file mode 100644
index 000000000..743f16f99
--- /dev/null
+++ b/users/dshields/config.h
@@ -0,0 +1,14 @@
1#pragma once
2
3#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
4#define USB_MAX_POWER_CONSUMPTION 100
5#define ONESHOT_TAP_TOGGLE 2
6#define ONESHOT_TIMEOUT 3000
7#define RETRO_TAPPING
8
9#define MOUSEKEY_INTERVAL 20
10#define MOUSEKEY_DELAY 0
11#define MOUSEKEY_TIME_TO_MAX 40
12#define MOUSEKEY_MAX_SPEED 7
13#define MOUSEKEY_WHEEL_DELAY 0
14
diff --git a/users/dshields/dshields.c b/users/dshields/dshields.c
new file mode 100644
index 000000000..6aff5c671
--- /dev/null
+++ b/users/dshields/dshields.c
@@ -0,0 +1,30 @@
1extern keymap_config_t keymap_config;
2
3/* uncomment to reset
4void matrix_init_user(void) {
5 eeconfig_init();
6};
7*/
8
9bool process_record_user(uint16_t keycode, keyrecord_t *record) {
10 if (!process_record_dynamic_macro(keycode, record)) {
11 return false;
12 }
13 return true;
14}
15
16// work in progress
17uint32_t layer_state_set_user(uint32_t state) {
18 switch (biton32(state)) {
19 case DEF:
20 set_all_leds_to(0,0,0);
21 break;
22 case FUN:
23 // TODO light the fn keys
24 // set_led_to(?, 0, 128, 0);
25 // set_led_to(?, 0, 128, 0);
26 break;
27 }
28 return state;
29}
30
diff --git a/users/dshields/dshields.h b/users/dshields/dshields.h
new file mode 100644
index 000000000..c746e74fb
--- /dev/null
+++ b/users/dshields/dshields.h
@@ -0,0 +1,31 @@
1#pragma once
2
3// dynamic macro keys
4#define DM_PLAY DYN_MACRO_PLAY1
5#define DM_STRT DYN_REC_START1
6#define DM_STOP DYN_REC_STOP
7
8// one-shot layer keys
9#define OSL_RSE OSL(RSE)
10#define OSL_LWR OSL(LWR)
11#define OSL_FUN OSL(FUN)
12
13// one-shot modifier keys
14#define OSMLCTL OSM(MOD_LCTL)
15#define OSMRCTL OSM(MOD_RCTL)
16#define OSMLALT OSM(MOD_LALT)
17#define OSMRALT OSM(MOD_RALT)
18#define OSMLSFT OSM(MOD_LSFT)
19#define OSMRSFT OSM(MOD_RSFT)
20
21// mod-tap keys
22#define MT_SPC SFT_T(KC_SPC)
23
24#ifdef KEYBOARD_planck_light
25 #define LGT_TOG RGB_TOG
26 #define LGT_MOD RGB_MOD
27#else
28 #define LGT_TOG BL_TOGG
29 #define LGT_MOD BL_STEP
30#endif
31
diff --git a/keyboards/planck/keymaps/dshields/rules.mk b/users/dshields/rules.mk
index a2bec4335..a2bec4335 100644
--- a/keyboards/planck/keymaps/dshields/rules.mk
+++ b/users/dshields/rules.mk