summaryrefslogtreecommitdiff
path: root/users/nstickney/nstickney.c
diff options
context:
space:
mode:
authorWilliam Chang <william@factual.com>2019-07-13 10:18:33 -0700
committerWilliam Chang <william@factual.com>2019-07-13 10:18:33 -0700
commit71493b2f9bbd5f3d18373c518fa14ccafcbf48fc (patch)
tree3bb3e5e496621535611e087720aa5c4d7a533e5e /users/nstickney/nstickney.c
parent86ad4988fe7ff64916127509d84f44c56fa097aa (diff)
parentda1f05fbc19477c05c0c01bb07fabfaf1ece9d54 (diff)
Merge branch 'master' of https://github.com/qmk/qmk_firmware
Diffstat (limited to 'users/nstickney/nstickney.c')
-rw-r--r--users/nstickney/nstickney.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/users/nstickney/nstickney.c b/users/nstickney/nstickney.c
new file mode 100644
index 0000000000..3e18e5c838
--- /dev/null
+++ b/users/nstickney/nstickney.c
@@ -0,0 +1,44 @@
+#include "nstickney.h"
+
+// Tap Dancing
+void dance_layer (qk_tap_dance_state_t *state, void *user_data) {
+ switch (state -> count) {
+ case 1: tap_code(KC_APP); break;
+ case 2: layer_invert(NUMP); break;
+ case 3: layer_invert(SYMB); break;
+ case 4: layer_invert(SYSH); break;
+ default: break;
+ }
+};
+
+void dance_lock_finished (qk_tap_dance_state_t *state, void *user_data) {
+ switch (state->count) {
+ case 1: register_code(KC_LGUI); break;
+ case 2: register_code(KC_NLCK); break;
+ case 3: register_code(KC_CAPS); break;
+ case 4: register_code(KC_SLCK); break;
+ default: break;
+ }
+};
+
+void dance_lock_reset (qk_tap_dance_state_t *state, void *user_data) {
+ switch (state->count) {
+ case 1: unregister_code(KC_LGUI); break;
+ case 2: unregister_code(KC_NLCK); break;
+ case 3: register_code(KC_CAPS); break;
+ case 4: register_code(KC_SLCK); break;
+ default: break;
+ }
+};
+
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [LOCKS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_lock_finished, dance_lock_reset),
+ [LAYERS] = ACTION_TAP_DANCE_FN(dance_layer)
+};
+
+void eeconfig_init_user (void) {
+ set_unicode_input_mode(UC_LNX); // Linux
+ //set_unicode_input_mode(UC_OSX); // Mac OSX
+ //set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
+ //set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
+}; \ No newline at end of file