summaryrefslogtreecommitdiff
path: root/hypr
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2023-02-27 06:13:32 -0600
committerzachir <zachir@librem.one>2023-02-27 06:13:32 -0600
commitf968d21174efbe0826efa3a0431aac41c6db0bab (patch)
tree5cc017e7b34a88afe8ea56a2f53ef325a6c48bd0 /hypr
parent640ad84891efea35ae5138765eab8d03c941a238 (diff)
reorganize hyprland config
Diffstat (limited to 'hypr')
-rw-r--r--hypr/hyprland.conf190
1 files changed, 114 insertions, 76 deletions
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
index 5335b30..cc7c331 100644
--- a/hypr/hyprland.conf
+++ b/hypr/hyprland.conf
@@ -1,21 +1,20 @@
-#
-# Please note not all available settings / options are set here.
-# For a full list, see the wiki
-#
-
# 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
@@ -24,68 +23,56 @@ input {
kb_options = caps:escape
kb_rules =
numlock_by_default = true
-
- follow_mouse = 1
-
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.
}
+#}}}
-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 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
@@ -93,55 +80,69 @@ animations {
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
+#}}}
-# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
-bind = $mainMod, Return, exec, foot
-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 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 $secdMod, S, togglesplit, # dwindle
-
+#{{{ 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
@@ -150,9 +151,12 @@ bind = $mainMod $secdMod, A, exec, hypr-layout -t
#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
@@ -164,11 +168,13 @@ 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
-bind = $mainMod $secdMod, L, resizeactive, 10 0 #DWINDLE
-bind = $mainMod $secdMod, H, resizeactive, -10 0 #DWINDLE
-bind = $mainMod $secdMod, K, resizeactive, 0 -10 #DWINDLE
-bind = $mainMod $secdMod, J, resizeactive, 0 10 #DWINDLE
+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
@@ -177,7 +183,15 @@ bind = $mainMod $secdMod, J, resizeactive, 0 10 #DWINDLE
#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
@@ -189,7 +203,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
@@ -211,16 +224,17 @@ 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
-
-# Scroll through existing workspaces with mainMod + scroll
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
+#{{{ Resize submap binds
bind = $mainMod $secdMod, R, submap, resize
submap = resize
binde = CONTROL, L, resizeactive, 10 0
@@ -229,41 +243,31 @@ 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, GTK_THEME="Plata-Noir-Compact" lwc -w
+#{{{ 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
+#{{{ 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
+#}}}
-# Htop scratchpad
-
+#{{{ 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
@@ -286,3 +290,37 @@ 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
+#}}}