summaryrefslogtreecommitdiff
path: root/users/drashna/template.c
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2018-08-29 10:42:15 -0700
committerJack Humbert <jack.humb@gmail.com>2018-08-29 13:42:15 -0400
commite4bbe057f2620ee24c3a78cb758cdfa7c4bd7abf (patch)
tree7bba9941bd9e1058d3105d2df312cb0006e56eba /users/drashna/template.c
parent661ca4440cc42f3b60697e98985c44b0571ccfc1 (diff)
Yet another update to drashna keymaps and userspace (#3787)
* Make tap function inline * Use better makefile keyboard detection * Remove Copy-Paste macro * Add F11/F12 to Iris * Minor tweaks to userspace config * Set audio clicky randomness to 1.5 * Set NO_DEBUG to only be set if console is not enabled * Move NO_MUSIC_MODE to userspace config.h * Reduce Ergodox Debounce * Add Planck Light config * Use OSM for ortho 4x12 * Music Mode changes for planck light * Cleanup do to shutdown user and other fixes in Master * Add and use 'shutdown_user' fzunction * Remove global NO_MUSIC_MODE define * Add NO_MUSIC_MODE to individual keymaps * Change layer colors * Remove NO_PRINT and NO_DEBUG from userspace config.h Since these are automatically disabled if the console isn't enabled. * Remove backlight code if backlight isn't enabled * Remove Twinkle from Ergodox * Disable RGB twinkling and enable PSM * Clean up RGB matrix code * Clean up planck light indicators * Clean up tap code * Rules cleanup for ortho 4x12 * Fix up userspace template * Revert "Clean up tap code" This reverts commit 09f64d6d67aa021c3b5ac86a9a739a5ca2b9c1ec. * Organize includes * userspace cleanup * Fix modifier spelling error * Fix userspace rules * Disable Permissive Hold again * Minor clean up * Fix Tap stuff * Viterbi Updates for file size
Diffstat (limited to 'users/drashna/template.c')
-rw-r--r--users/drashna/template.c97
1 files changed, 69 insertions, 28 deletions
diff --git a/users/drashna/template.c b/users/drashna/template.c
index 20dbb96d7f..e6b50c961b 100644
--- a/users/drashna/template.c
+++ b/users/drashna/template.c
@@ -1,7 +1,5 @@
-#include "drashna.h"
-#include "quantum.h"
-#include "action.h"
-#include "version.h"
+#include "template.h"
+
// Add reconfigurable functions here, for keymap customization
// This allows for a global, userspace functions, and continued
@@ -10,25 +8,15 @@
__attribute__ ((weak))
void matrix_init_keymap(void) {}
-__attribute__ ((weak))
-void matrix_scan_keymap(void) {}
-
-__attribute__ ((weak))
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- return true;
-}
-__attribute__ ((weak))
-uint32_t layer_state_set_keymap (uint32_t state) {
- return state;
-}
-__attribute__ ((weak))
-void led_set_keymap(uint8_t usb_led) {}
-
// Call user matrix init, then call the keymap's init function
void matrix_init_user(void) {
matrix_init_keymap();
}
+
+__attribute__ ((weak))
+void matrix_scan_keymap(void) {}
+
// No global matrix scan code, so just run keymap's matix
// scan function
void matrix_scan_user(void) {
@@ -36,11 +24,16 @@ void matrix_scan_user(void) {
}
+__attribute__ ((weak))
+bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
+ return true;
+}
+
// Defines actions tor my global custom keycodes. Defined in drashna.h file
// Then runs the _keymap's recod handier if not processed here,
// And use "NEWPLACEHOLDER" for new safe range
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
-
+
switch (keycode) {
case KC_MAKE:
if (!record->event.pressed) {
@@ -56,12 +49,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
- case KC_RESET:
- if (!record->event.pressed) {
- reset_keyboard();
- }
- return false;
- break;
+
case EPRM:
if (record->event.pressed) {
eeconfig_init();
@@ -78,13 +66,66 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return process_record_keymap(keycode, record);
}
-// Runs state check and changes underglow color and animation
-// on layer change, no matter where the change was initiated
-// Then runs keymap's layer change check
+
+__attribute__ ((weak))
+uint32_t layer_state_set_keymap (uint32_t state) {
+ return state;
+}
+
uint32_t layer_state_set_user (uint32_t state) {
return layer_state_set_keymap (state);
}
+
+
+__attribute__ ((weak))
+void led_set_keymap(uint8_t usb_led) {}
+
void led_set_user(uint8_t usb_led) {
led_set_keymap(usb_led);
}
+
+
+
+__attribute__ ((weak))
+void suspend_power_down_keymap(void) {}
+
+void suspend_power_down_user(void)
+{
+ suspend_power_down_keymap();
+}
+
+
+
+__attribute__ ((weak))
+void suspend_wakeup_init_keymap(void) {}
+
+void suspend_wakeup_init_user(void)
+{
+ suspend_wakeup_init_keymap();
+ #ifdef KEYBOARD_ergodox_ez
+ wait_ms(10);
+ #endif
+}
+
+
+
+__attribute__ ((weak))
+void startup_keymap(void) {}
+
+void startup_user (void) {
+ #ifdef RGBLIGHT_ENABLE
+ matrix_init_rgb();
+ #endif //RGBLIGHT_ENABLE
+ startup_keymap();
+}
+
+
+
+__attribute__ ((weak))
+void shutdown_keymap(void) {}
+
+void shutdown_user (void) {
+ shutdown_keymap();
+}
+