summaryrefslogtreecommitdiff
path: root/hypr/hyprland.conf
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2023-02-26 13:19:11 -0600
committerzachir <zachir@librem.one>2023-02-26 13:19:11 -0600
commit8359b64bc2f3d30d9c405acd2f842e8d0bd2da95 (patch)
tree761d745176ab2eae6be362dbfa3f1cf9f9f65f4f /hypr/hyprland.conf
parent756c69b808abfecd580da62c42bdeadeba423ba5 (diff)
add my hypr config plus scratchpads
Diffstat (limited to 'hypr/hyprland.conf')
-rw-r--r--hypr/hyprland.conf143
1 files changed, 119 insertions, 24 deletions
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
index 43b0a38..2fe1b14 100644
--- a/hypr/hyprland.conf
+++ b/hypr/hyprland.conf
@@ -4,13 +4,14 @@
#
# See https://wiki.hyprland.org/Configuring/Monitors/
-monitor=,preferred,auto,auto
+monitor = , preferred, auto, auto
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
# exec-once = waybar & hyprpaper & firefox
+exec-once = ~/.config/autostart.sh
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
@@ -20,7 +21,7 @@ input {
kb_layout = us
kb_variant =
kb_model =
- kb_options = "caps:escape"
+ kb_options = caps:escape
kb_rules =
numlock_by_default = true
@@ -32,10 +33,20 @@ input {
natural_scroll = no
}
+ float_switch_override_focus = 0
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
+master {
+ special_scale_factor = 0.55
+ new_is_master = true
+ new_on_top = false
+ no_gaps_when_only = false
+ orientation = left
+ inherit_fullscreen = true
+}
+
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
@@ -45,7 +56,7 @@ general {
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
- layout = dwindle
+ layout = master
}
misc {
@@ -108,12 +119,13 @@ device:epic mouse V1 {
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
-# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
+# windowrulev2 = float, class:^(kitty)$, title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
-
+windowrule = windowdance, title:^(Rhythm Doctor)$
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
-$mainMod = SUPER
+$mainMod = ALT
+$secdMod = SUPER
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, foot
@@ -121,16 +133,32 @@ bind = $mainMod+SHIFT, Q, killactive,
bind = $mainMod+SHIFT, E, exit,
#bind = $mainMod, E, exec, dolphin
bind = $mainMod+SHIFT, SPACE, togglefloating,
-bind = $mainMod, R, exec, exec tofi-drun
-bind = $mainMod, D, exec, exec tofi-run
+bind = $mainMod, R, exec, exec j4-dmenu-desktop --dmenu="bemenu -l 10 -p \"Run:\""
+bind = $mainMod, D, exec, exec bemenu-run -l 15 -p "Run:"
bind = $mainMod, P, pseudo, # dwindle
-bind = $mainMod, J, togglesplit, # dwindle
-
-# Move focus with mainMod + arrow keys
-bind = $mainMod, H, movefocus, l
-bind = $mainMod, L, movefocus, r
-bind = $mainMod, K, movefocus, u
+bind = $mainMod+$secdMod, S, togglesplit, # dwindle
+
+# Master layout binds
+bind = $mainMod+SHIFT, Return, layoutmsg, swapwithmaster auto
+bind = $mainMod+SHIFT, J, layoutmsg, swapnext
+bind = $mainMod+SHIFT, K, layoutmsg, swapprev
+bind = $mainMod, H, layoutmsg, addmaster
+bind = $mainMod, L, layoutmsg, removemaster
bind = $mainMod, J, movefocus, d
+bind = $mainMod, K, movefocus, u
+
+
+# Move focus with mainMod + HJKL
+bind = $mainMod, left, movefocus, l
+bind = $mainMod, right, movefocus, r
+bind = $mainMod, up, movefocus, u
+bind = $mainMod, down, movefocus, d
+
+# Resize clients with mainMod + secdMod + HJKL
+bind = $mainMod+$secdMod, L, resizeactive, 10 0
+bind = $mainMod+$secdMod, H, resizeactive, -10 0
+bind = $mainMod+$secdMod, K, resizeactive, 0 -10
+bind = $mainMod+$secdMod, J, resizeactive, 0 10
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
@@ -145,16 +173,16 @@ bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
-bind = $mainMod SHIFT, 1, movetoworkspace, 1
-bind = $mainMod SHIFT, 2, movetoworkspace, 2
-bind = $mainMod SHIFT, 3, movetoworkspace, 3
-bind = $mainMod SHIFT, 4, movetoworkspace, 4
-bind = $mainMod SHIFT, 5, movetoworkspace, 5
-bind = $mainMod SHIFT, 6, movetoworkspace, 6
-bind = $mainMod SHIFT, 7, movetoworkspace, 7
-bind = $mainMod SHIFT, 8, movetoworkspace, 8
-bind = $mainMod SHIFT, 9, movetoworkspace, 9
-bind = $mainMod SHIFT, 0, movetoworkspace, 10
+bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
+bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
+bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
+bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
+bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
+bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
+bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
+bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
+bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
+bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
@@ -163,3 +191,70 @@ bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
+
+# resize submap
+bind = $mainMod+$secdMod, R, submap, resize
+submap = resize
+binde = CONTROL, L, resizeactive, 10 0
+binde = CONTROL, H, resizeactive, -10 0
+binde = CONTROL, K, resizeactive, 0 -10
+binde = CONTROL, J, resizeactive, 0 10
+binde = , escape, submap, reset
+submap = reset
+
+# inert submap
+bind = $mainMod, B, submap, inert
+submap = inert
+bind = $mainMod, B, submap, reset
+submap = reset
+
+# Media bindings
+bindl = $mainMod+$secdMod, P, exec, playerctl -p mpd play-pause
+bindel = , XF86AudioRaiseVolume, exec, volsv -i 5
+bindel = , XF86AudioLowerVolume, exec, volsv -d 5
+
+# OBS bindings
+bind = $mainMod+$secdMod, 1, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 2, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 3, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 4, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 5, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 6, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 7, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 8, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 9, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod+$secdMod, 0, pass, ^(com\.obsproject\.Studio)$
+
+# Menu bindings
+bind = $mainMod+$secdMod, Q, exec, qbc -w
+bind = $mainMod+$secdMod, W, exec, lwc -w
+bind = $mainMod+$secdMod, P, exec, passmenu
+
+# Misc bindings
+bind = $mainMod, W, exec, waytoggle
+bind = $mainMod, Q, exec, loginctl lock-session
+
+# Htop scratchpad
+
+bind = $mainMod+CONTROL, Z, exec, [workspace special:sphtop;float;noanim] sphtop
+bind = $mainMod+CONTROL, Z, togglespecialworkspace, sphtop
+bind = $mainMod+CONTROL, X, exec, [workspace special:spterm;float;noanim] spterm
+bind = $mainMod+CONTROL, X, togglespecialworkspace, spterm
+bind = $mainMod+CONTROL, C, exec, [workspace special:sppmxr;float;noanim] sppmxr
+bind = $mainMod+CONTROL, C, togglespecialworkspace, sppmxr
+bind = $mainMod+CONTROL, V, exec, [workspace special:spblue;float;noanim] spblue
+bind = $mainMod+CONTROL, V, togglespecialworkspace, spblue
+bind = $mainMod+CONTROL, B, exec, [workspace special:spncmp;float;noanim] spncmp
+bind = $mainMod+CONTROL, B, togglespecialworkspace, spncmp
+bind = $mainMod+CONTROL, A, exec, [workspace special:spmutt;float;noanim] spmutt
+bind = $mainMod+CONTROL, A, togglespecialworkspace, spmutt
+bind = $mainMod+CONTROL, S, exec, [workspace special:spprof;float;noanim] spprof
+bind = $mainMod+CONTROL, S, togglespecialworkspace, spprof
+bind = $mainMod+CONTROL, D, exec, [workspace special:spirss;float;noanim] spirss
+bind = $mainMod+CONTROL, D, togglespecialworkspace, spirss
+bind = $mainMod+CONTROL, F, exec, [workspace special:sptodo;float;noanim] sptodo
+bind = $mainMod+CONTROL, F, togglespecialworkspace, sptodo
+bind = $mainMod+CONTROL, G, exec, [workspace special:sptrmc;float;noanim] sptrmc
+bind = $mainMod+CONTROL, G, togglespecialworkspace, sptrmc
+bind = $mainMod+CONTROL, Q, exec, [workspace special:spqpwg;float;noanim] spqpwg
+bind = $mainMod+CONTROL, Q, togglespecialworkspace, spqpwg