[Keymap] Adding my userspace and keymaps (#6496)

* add Userspace and keymaps

* Adding keymaps for zeal60 and iris
* Created my own tap dance that toggles RGB Mode based on whether I toggled caps lock or not

* parent 578ed42a7f8f986147cad040d50d4ae1d24a32e2
author Seth Barberee <seth.barberee@gmail.com> 1565065903 -0500
committer Seth Barberee <seth.barberee@gmail.com> 1565065903 -0500

move to userspace

add zeal60

* update based on review

* move userspace to github name
This commit is contained in:
Seth Barberee 2019-08-13 12:25:51 -05:00 committed by Drashna Jaelre
parent d8d2a09674
commit 0ec0d29e9f
11 changed files with 411 additions and 0 deletions

View file

@ -0,0 +1,8 @@
#ifdef RGBLIGHT_ENABLE
# ifndef CAPS_LOCK_MODE
# define CAPS_LOCK_MODE 1
# endif
# ifndef NORMAL_MODE
# define NORMAL_MODE 4
# endif
#endif

View file

@ -0,0 +1,6 @@
# seth's userspace
## Features
* Escape/Caps Lock tap dance (1 for Escape / 2 for Caps Lock)
* RGB Mode indication for Caps Lock
* Solid Mode for Caps On

View file

@ -0,0 +1 @@
SRC += sethBarberee.c

View file

@ -0,0 +1,45 @@
#include "sethBarberee.h"
#ifdef RGBLIGHT_ENABLE
#ifdef TAP_DANCE_ENABLE
// Initialize it now
tap caps_status = {
.toggled = false,
.toggle_mode = CAPS_LOCK_MODE,
.normal_mode = NORMAL_MODE
};
void dance_ecap_finished (qk_tap_dance_state_t *state, void *user_data){
if(state->count == 1){
register_code(KC_ESC);
} else {
register_code(KC_CAPS);
if(!caps_status.toggled){
// Toggling caps so indicate
caps_status.toggled = true;
rgblight_mode_noeeprom(caps_status.toggle_mode);
} else {
// Turning off so return to normal mode
caps_status.toggled = false;
rgblight_mode_noeeprom(caps_status.normal_mode);
}
}
}
void dance_ecap_reset (qk_tap_dance_state_t *state, void *user_data){
if(state->count == 1){
unregister_code(KC_ESC);
} else {
unregister_code(KC_CAPS);
}
}
//Tap Dance Definitions
qk_tap_dance_action_t tap_dance_actions[] = {
//Tap once for Esc, twice for Caps Lock
[TD_ECAP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_ecap_finished, dance_ecap_reset),
// Other declarations would go here, separated by commas, if you have them
};
#endif
#endif

View file

@ -0,0 +1,20 @@
#ifndef USERSPACE
#define USERSPACE
#include "quantum.h"
#ifdef TAP_DANCE_ENABLE // only enable for tap dances
enum {
TD_ECAP = 0,
};
#define KC_ECAP TD(TD_ECAP)
typedef struct {
bool toggled; // store whether we have toggled caps lock
int toggle_mode; // idk why but maybe do something with this..
int normal_mode;
} tap;
#endif
#endif