summaryrefslogtreecommitdiffstats
path: root/users/vosechu/vosechu.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/vosechu/vosechu.h')
-rw-r--r--users/vosechu/vosechu.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/users/vosechu/vosechu.h b/users/vosechu/vosechu.h
new file mode 100644
index 000000000..5cd2217ea
--- /dev/null
+++ b/users/vosechu/vosechu.h
@@ -0,0 +1,71 @@
+#pragma once
+
+#include "quantum.h"
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+enum userspace_custom_layers {
+ DV = 0,
+ QW,
+ GAM1,
+ RSE,
+ LWR,
+ LFT,
+ MOUSE
+};
+
+enum userspace_custom_keycodes {
+ PAWFIVE = SAFE_RANGE,
+ MOUKEY,
+ MS_BTN1,
+ MS_BTN2,
+ MS_BTN3
+};
+
+// Transparent macro to indicate that this spot is already being pressed
+// to activate this layer
+#define _LAYER_ KC_TRNS
+
+// == Dual-action keys on most of the modifiers
+#define CTL_ESC CTL_T(KC_ESC)
+#define CTL_GRV CTL_T(KC_GRV)
+#define ALT_TAB ALT_T(KC_TAB)
+#define SFT_SPC SFT_T(KC_SPC)
+
+// == Macro keys for commonly used apps
+// -- Slack
+// Move one conversation up/down
+#define SLACKUP LALT(LSFT(KC_UP))
+#define SLACKDN LALT(LSFT(KC_DOWN))
+
+// -- Browser and OS X
+// Activate one tab left/right
+#define TAB_LFT LGUI(LSFT(KC_LBRC))
+#define TAB_RGT LGUI(LSFT(KC_RBRC))
+// Go back/forward in history
+#define BWSR_BK LGUI(KC_LBRC)
+#define BWSR_FW LGUI(KC_RBRC)
+
+// -- Screen management
+// Make window fill the left/right side
+#define SCR_LFT HYPR(KC_LEFT)
+#define SCR_RGT HYPR(KC_RGHT)
+// Make window fill the whole monitor
+#define SCR_FUL HYPR(KC_F)
+
+// == Extended alpha layer toggles
+// -- Dvorak
+// Pressing U opens up the LWR layer (numpad)
+#define LWR_U LT(LWR, KC_U)
+// Pressing H opens up the RSE layer (brackets/parens)
+#define RSE_H LT(RSE, KC_H)
+
+// -- Qwerty
+// Pressing F opens up the LWR layer (numpad)
+#define LWR_F LT(LWR, KC_F)
+// Pressing J opens up the RSE layer (brackets/parens)
+#define RSE_J LT(RSE, KC_J)
+
+// -- LFT layer (Works on both Qwerty and Dvorak)
+// Pressing Back space or Enter opens up the LFT layer (media/navigation)
+#define LFT_BK LT(LFT, KC_BSPC)
+#define LFT_ENT LT(LFT, KC_ENT)