summaryrefslogtreecommitdiff
path: root/hypr/hyprland.conf
diff options
context:
space:
mode:
Diffstat (limited to 'hypr/hyprland.conf')
-rw-r--r--hypr/hyprland.conf326
1 files changed, 326 insertions, 0 deletions
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
new file mode 100644
index 0000000..cc7c331
--- /dev/null
+++ b/hypr/hyprland.conf
@@ -0,0 +1,326 @@
+# See https://wiki.hyprland.org/Configuring/Monitors/
+#{{{ Monitor config
+monitor = , preferred, auto, 1
+#}}}
+
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+
+#{{{ Autostart
+# 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
+
+#{{{ Input options
+# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
+input {
+ kb_layout = us
+ kb_variant =
+ kb_model =
+ kb_options = caps:escape
+ kb_rules =
+ numlock_by_default = true
+ scroll_method = "2fg"
+ follow_mouse = 1
+ touchpad {
+ natural_scroll = no
+ }
+ float_switch_override_focus = 0
+ sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
+}
+#}}}
+
+#{{{ General options
+general {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ gaps_in = 5
+ gaps_out = 20
+ border_size = 2
+ col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
+ col.inactive_border = rgba(595959aa)
+ layout = dwindle
+ no_cursor_warps = false
+}
+#}}}
+
+#{{{ Misc options
+misc {
+ enable_swallow = true
+ swallow_regex = ^(foot)$
+}
+#}}}
+
+#{{{ Decoration options
+decoration {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ rounding = 10
+ blur = yes
+ blur_size = 3
+ blur_passes = 1
+ blur_new_optimizations = on
+ drop_shadow = yes
+ shadow_range = 4
+ shadow_render_power = 3
+ col.shadow = rgba(1a1a1aee)
+}
+#}}}
+
+#{{{ Animations options
+animations {
+ enabled = yes
+ # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
+ animation = windows, 1, 7, myBezier
+ animation = windowsOut, 1, 7, default, popin 80%
+ animation = border, 1, 10, default
+ animation = borderangle, 1, 8, default
+ animation = fade, 1, 7, default
+ animation = workspaces, 1, 6, default
+}
+#}}}
+
+#{{{ Dwindle layout options
+dwindle {
+ # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
+ pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
+ preserve_split = yes # you probably want this
+ special_scale_factor = 0.55
+}
+#}}}
+
+#{{{ Master layout options
+master {
+ special_scale_factor = 0.55
+ # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
+ new_is_master = true
+ new_on_top = false
+ no_gaps_when_only = false
+ orientation = left
+ inherit_fullscreen = true
+}
+#}}}
+
+#{{{ Gestures options
+gestures {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ workspace_swipe = off
+}
+#}}}
+
+#{{{ Device options
+# Example per-device config
+# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
+device:epic mouse V1 {
+ sensitivity = -0.5
+}
+#}}}
+
+#{{{ Windowrules
+# Example windowrule v1
+# windowrule = float, ^(kitty)$
+# Example windowrule v2
+# windowrulev2 = float, class:^(kitty)$, title:^(kitty)$
+# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
+windowrule = windowdance, title:^(Rhythm Doctor)$
+windowrulev2 = float, class:^(yabridge-host.exe.so)$, title:^(menu)$
+windowrulev2 = float,floating:0,title:^(menu*)
+windowrulev2 = forceinput,title:^(menu*)
+windowrulev2 = windowdance,title:^(menu*)
+#}}}
+
+#{{{ Mods
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+$mainMod = ALT
+$secdMod = SUPER
+#}}}
+
+#{{{ Layout toggle bind
+# Layout toggle
+bind = $mainMod $secdMod, A, exec, hypr-layout -t
+#}}}
+
+#{{{ Master layout binds
+# Master layout binds
+#bind = $mainMod+SHIFT, Return, layoutmsg, swapwithmaster auto #MASTER
+#bind = $mainMod+SHIFT, J, layoutmsg, swapnext #MASTER
+#bind = $mainMod+SHIFT, K, layoutmsg, swapprev #MASTER
+#bind = $mainMod, H, layoutmsg, addmaster #MASTER
+#bind = $mainMod, L, layoutmsg, removemaster #MASTER
+#bind = $mainMod, J, movefocus, d #MASTER
+#bind = $mainMod, K, movefocus, u #MASTER
+#}}}
+
+#{{{ Dwindle layout binds
+# Dwindle layout binds
+bind = $mainMod, P, pseudo, #DWINDLE
+bind = $mainMod $secdMod, S, togglesplit, #DWINDLE
+# Move focus with mainMod + HJKL
+bind = $mainMod, H, movefocus, l #DWINDLE
+bind = $mainMod, L, movefocus, r #DWINDLE
+bind = $mainMod, K, movefocus, u #DWINDLE
+bind = $mainMod, J, movefocus, d #DWINDLE
+# Move window with mainMod + HJKL
+bind = $mainMod SHIFT, L, movewindow, r #DWINDLE
+bind = $mainMod SHIFT, H, movewindow, l #DWINDLE
+bind = $mainMod SHIFT, J, movewindow, d #DWINDLE
+bind = $mainMod SHIFT, K, movewindow, u #DWINDLE
+# Resize clients with mainMod + secdMod + HJKL
+binde = $mainMod $secdMod, L, resizeactive, 10 0 #DWINDLE
+binde = $mainMod $secdMod, H, resizeactive, -10 0 #DWINDLE
+binde = $mainMod $secdMod, K, resizeactive, 0 -10 #DWINDLE
+binde = $mainMod $secdMod, J, resizeactive, 0 10 #DWINDLE
+#}}}
+
+#{{{ Group binds
+# Group binds
+#bind = $mainMod CONTROL, G, togglegroup,
+#bind = $mainMod CONTROL, I, lockgroups, lock
+#bind = $mainMod CONTROL, U, lockgroups, unlock
+#bind = $mainMod CONTROL, H, moveintogroup, r
+#bind = $mainMod CONTROL, L, moveintogroup, l
+#bind = $mainMod CONTROL, J, moveintogroup, d
+#bind = $mainMod CONTROL, K, moveintogroup, u
+#}}}
+
+#{{{ WC binds
+bind = $mainMod+SHIFT, Q, killactive,
+bind = $mainMod+SHIFT, E, exit,
+bind = $mainMod+SHIFT, SPACE, togglefloating,
+#}}}
+
+#{{{ Workspace binds
+# Switch workspaces with mainMod + [0-9]
+bind = $mainMod, 1, workspace, 1
+bind = $mainMod, 2, workspace, 2
+bind = $mainMod, 3, workspace, 3
+bind = $mainMod, 4, workspace, 4
+bind = $mainMod, 5, workspace, 5
+bind = $mainMod, 6, workspace, 6
+bind = $mainMod, 7, workspace, 7
+bind = $mainMod, 8, workspace, 8
+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, 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
+bind = $mainMod CONTROL SHIFT, 1, movetoworkspace, 1
+bind = $mainMod CONTROL SHIFT, 2, movetoworkspace, 2
+bind = $mainMod CONTROL SHIFT, 3, movetoworkspace, 3
+bind = $mainMod CONTROL SHIFT, 4, movetoworkspace, 4
+bind = $mainMod CONTROL SHIFT, 5, movetoworkspace, 5
+bind = $mainMod CONTROL SHIFT, 6, movetoworkspace, 6
+bind = $mainMod CONTROL SHIFT, 7, movetoworkspace, 7
+bind = $mainMod CONTROL SHIFT, 8, movetoworkspace, 8
+bind = $mainMod CONTROL SHIFT, 9, movetoworkspace, 9
+bind = $mainMod CONTROL SHIFT, 0, movetoworkspace, 10
+bind = $mainMod, mouse_down, workspace, e+1
+bind = $mainMod, mouse_up, workspace, e-1
+#}}}
+
+#{{{ Mouse binds
+# Move/resize windows with mainMod + LMB/RMB and dragging
+bindm = $mainMod, mouse:272, movewindow
+bindm = $mainMod, mouse:273, resizewindow
+#}}}
+
+#{{{ Resize submap binds
+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
+#}}}
+
+#{{{ Menu bindings
+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 $secdMod, Q, exec, qbc
+bind = $mainMod $secdMod, W, exec, GTK_THEME="Plata-Noir-Compact" lwc
+bind = $mainMod $secdMod, E, exec, GTK_THEME="Plata-Noir-Compact" ffc
+bind = $mainMod $secdMod, 1, exec, bm
+bind = $mainMod $secdMod, comma, exec, dmenumount
+bind = $mainMod $secdMod, period, exec, dmenuumount
+bind = $mainMod $secdMod CONTROL, U, exec, dmenuunicode
+bind = $mainMod $secdMod, U, exec, mprisctl
+bind = $mainMod $secdMod, P, exec, passmenu
+#}}}
+
+#{{{ Misc bindings
+bind = $mainMod, Return, exec, foot
+bind = $mainMod $secdMod, F, exec, foot lf
+bind = $mainMod, W, exec, waytoggle
+bind = $mainMod, Q, exec, loginctl lock-session
+bind = $mainMod SHIFT, G, exec, get-app-id
+#}}}
+
+#{{{ Scratchpads
+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
+#}}}
+
+#{{{ OBS bindings
+bind = $mainMod CONTROL, 1, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 2, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 3, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 4, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 5, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 6, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 7, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 8, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 9, pass, ^(com\.obsproject\.Studio)$
+bind = $mainMod CONTROL, 0, pass, ^(com\.obsproject\.Studio)$
+#}}}
+
+#{{{ Inert submap binds
+bind = $mainMod, B, submap, inert
+submap = inert
+bind = $mainMod, B, submap, reset
+submap = reset
+#}}}
+
+#{{{ Media bindings
+bindl = $secdMod, P, exec, playerctl -p mpd play-pause
+bindel = , XF86AudioRaiseVolume, exec, volsv -i 5
+bindel = , XF86AudioLowerVolume, exec, volsv -d 5
+bind = , XF86AudioMute, exec, volsv -t
+bindl = , XF86AudioMicMute, exec, volsv -m
+bindel = , XF86MonBrightnessUp, exec, bl -i
+bindel = , XF86MonBrightnessDown, exec, bl -d
+bindl = $mainMod, XF86MonBrightnessUp, exec, bl -s 100
+bindl = $mainMod, XF86MonBrightnessDown, exec, bl -s 1
+bind = , Print, exec, scrshot
+#}}}