diff options
Diffstat (limited to 'hypr/hyprland.conf')
-rw-r--r-- | hypr/hyprland.conf | 283 |
1 files changed, 142 insertions, 141 deletions
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index e053008..cdcca3d 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -1,8 +1,6 @@ # See https://wiki.hyprland.org/Configuring/Monitors/ #{{{ Monitor config monitor = , preferred, auto, 1 -monitor = HDMI-A-1, 1920x1080@60, 0x0, 1 -monitor = DP-1, 1920x1080@60, 1920x0, 1 #}}} # See https://wiki.hyprland.org/Configuring/Keywords/ for more @@ -10,16 +8,51 @@ monitor = DP-1, 1920x1080@60, 1920x0, 1 #{{{ Autostart # Execute your favorite apps at launch # exec-once = waybar & hyprpaper & firefox -exec-once = ~/.config/autostart.sh -exec-once = /usr/lib/polkit-kde-authentication-agent-1 +exec-once = dinit exec-once = xdph exec-once = hyprpm reload -n +#exec-once = hyprpaper +#exec-once = hypridle +exec-once = waybar exec-once = pypr +exec-once = lxqt-policykit-agent +exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid' +exec-once = import-gsettings icon-theme 'COSMIC' +exec-once = import-gsettings cursor-theme 'BreezeX-Black' +exec-once = xrdb -load "$XDG_CONFIG_HOME"/X11/xresources +#exec-once = com.github.wwmm.easyeffects +#exec-once = dunst +#exec-once = hypridle +#exec-once = mpd +#}}} + +#{{{ env +# Environment variables set at launch +env = HYPRCURSOR_THEME,theme_BreezeX-Black +env = HYPRCURSOR_SIZE,32 +env = XCURSOR_THEME,BreezeX-Black +env = XCURSOR_SIZE,32 #}}} # Source a file (multi-file configs) # source = ~/.config/hypr/myColors.conf +# Debug {{{ +debug { + enable_stdout_logs = false + disable_logs = true + full_cm_proto = true +} +# }}} + +# device {{{ +$LAPTOP_TP_ENABLED = true +device { + name = synps/2-synaptics-touchpad + enabled = $LAPTOP_TP_ENABLED +} +# }}} + #{{{ Input options # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { @@ -33,7 +66,13 @@ input { follow_mouse = 1 mouse_refocus = false touchpad { - natural_scroll = no + disable_while_typing = true + natural_scroll = false + tap_button_map = "lrm" + clickfinger_behavior = true + tap-to-click = true + drag_lock = false + tap-and-drag = true } float_switch_override_focus = 0 sensitivity = 0 # -1.0 - 1.0, 0 means no modification. @@ -51,7 +90,12 @@ general { col.active_border = rgba(198844ee) col.inactive_border = rgba(1b1d1cee) layout = master - no_cursor_warps = false +} +#}}} + +#{{{ cursor +cursor { + no_warps = false } #}}} @@ -61,8 +105,9 @@ misc { disable_splash_rendering = true enable_swallow = true swallow_regex = ^(kitty)$ - vfr = false - vrr = true + swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*)$ + vfr = true + vrr = 3 } #}}} @@ -70,10 +115,6 @@ misc { decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 10 - drop_shadow = yes - shadow_range = 4 - shadow_render_power = 3 - col.shadow = rgba(1a1a1aee) #{{{ Blur options blur { enabled = true @@ -83,6 +124,14 @@ decoration { xray = true } #}}} + #{{{ Shadow options + shadow { + enabled = false + range = 4 + render_power = 3 + color = 0xee1a1a1a + } + #}}} } #}}} @@ -115,11 +164,13 @@ master { special_scale_factor = 0.55 mfact = 0.55 # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more - new_is_master = false - new_on_top = true - no_gaps_when_only = false + new_status = slave + new_on_top = false + new_on_active = before + #no_gaps_when_only = false orientation = left inherit_fullscreen = true + drop_at_cursor = true } #}}} @@ -131,45 +182,48 @@ gestures { #}}} #{{{ plugin options -#plugin { -# split-monitor-workspaces { -# count = 9 -# } -#} +plugin { + hyprsplit { + num_workspaces = 9 + persistent_workspaces = true + } +} #}}} #{{{ Windowrules # Example windowrule v1 # windowrule = float, ^(kitty)$ # Example windowrule v2 -# windowrulev2 = float, class:^(kitty)$, title:^(kitty)$ +# windowrule = float, class:^(kitty)$, title:^(kitty)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more -windowrule = windowdance, title:^(Rhythm Doctor)$ -windowrule = fullscreen, ^(Xephyr)$ +windowrule = fullscreen, class:^(Xephyr)$ windowrule = float, title:^(LibreWolf - Choose User Profile)$ windowrule = float, class:^(xdg-desktop-portal-gtk) +windowrule = float, title:^(UNDERTALE)$ windowrule = float, class:^(Tk)$ -windowrule = workspace 2, title:^(REAPER .*initializing.*)$ -windowrulev2 = stayfocused, title:^()$,class:^(steam)$ -windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$ +windowrule = float, class:^(lxqt-policykit-agent)$ +windowrulev2 = stayfocused, title:^()$, class:^(steam)$ +windowrulev2 = minsize 1 1, title:^()$, class:^(steam)$ windowrulev2 = stayfocused, title:^(menu)$,class:^(yabridge-host.exe.so)$ windowrulev2 = minsize 1 1, title:^(menu)$,class:^(yabridge-host.exe.so)$ +windowrulev2 = float, class:^(yabridge-host.exe.so)$, title:^(menu)$ +windowrulev2 = float, floating:0, title:^(menu*) +windowrule = workspace 2, title:^(REAPER .*initializing.*)$ windowrulev2 = tile, class:^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$ +windowrule = tile, class:^(WebApp-Qobuz[0-9]*)$ +windowrulev2 = float, title:^(menu)$ windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ #windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ #windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ #windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ #windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Metronome and pre-roll settings)$ -windowrulev2 = tile, class:^(WebApp-Qobuz[0-9]*)$ #windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ #windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ #windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(\s*)$ #windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ #windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ -#windowrulev2 = float,floating:0, title:^(menu)$ +#windowrulev2 = float, floating:0, title:^(menu)$ #windowrulev2 = forceinput, title:^(menu)$ -#windowrulev2 = windowdance, title:^(menu)$ -#windowrulev2 = nofocus, title:^(menu)$, class:^(yabridge\-host\.exe\.so)$ #}}} #{{{ Mods @@ -198,27 +252,6 @@ bind = $mainMod+SHIFT, O, splitratio, exact 0.55 #MASTER bind = $mainMod, O, splitratio, exact 0.69 #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, @@ -230,6 +263,10 @@ bind = $mainMod, O, splitratio, exact 0.69 #MASTER #bind = $mainMod CONTROL, K, moveintogroup, u #}}} +#{{{ Device binds +bind = $mainMod, Backspace, exec, touchpad.sh +#}}} + #{{{ WC binds bind = $mainMod SHIFT, Q, killactive, bind = $mainMod SHIFT, E, exit, @@ -243,74 +280,41 @@ bind = $mainMod SHIFT, N, togglespecialworkspace, minimized #{{{ Workspace binds (using split-monitor-workspaces plugin!) # Switch workspaces with mainMod + [0-9] -#bind = $mainMod, 1, split-workspace, 1 -#bind = $mainMod, 2, split-workspace, 2 -#bind = $mainMod, 3, split-workspace, 3 -#bind = $mainMod, 4, split-workspace, 4 -#bind = $mainMod, 5, split-workspace, 5 -#bind = $mainMod, 6, split-workspace, 6 -#bind = $mainMod, 7, split-workspace, 7 -#bind = $mainMod, 8, split-workspace, 8 -#bind = $mainMod, 9, split-workspace, 9 -# Move active window to a workspace with mainMod + SHIFT + [0-9] -#bind = $mainMod SHIFT, 1, split-movetoworkspacesilent, 1 -#bind = $mainMod SHIFT, 2, split-movetoworkspacesilent, 2 -#bind = $mainMod SHIFT, 3, split-movetoworkspacesilent, 3 -#bind = $mainMod SHIFT, 4, split-movetoworkspacesilent, 4 -#bind = $mainMod SHIFT, 5, split-movetoworkspacesilent, 5 -#bind = $mainMod SHIFT, 6, split-movetoworkspacesilent, 6 -#bind = $mainMod SHIFT, 7, split-movetoworkspacesilent, 7 -#bind = $mainMod SHIFT, 8, split-movetoworkspacesilent, 8 -#bind = $mainMod SHIFT, 9, split-movetoworkspacesilent, 9 -#bind = $mainMod CONTROL SHIFT, 1, split-movetoworkspace, 1 -#bind = $mainMod CONTROL SHIFT, 2, split-movetoworkspace, 2 -#bind = $mainMod CONTROL SHIFT, 3, split-movetoworkspace, 3 -#bind = $mainMod CONTROL SHIFT, 4, split-movetoworkspace, 4 -#bind = $mainMod CONTROL SHIFT, 5, split-movetoworkspace, 5 -#bind = $mainMod CONTROL SHIFT, 6, split-movetoworkspace, 6 -#bind = $mainMod CONTROL SHIFT, 7, split-movetoworkspace, 7 -#bind = $mainMod CONTROL SHIFT, 8, split-movetoworkspace, 8 -#bind = $mainMod CONTROL SHIFT, 9, split-movetoworkspace, 9 -#bind = $mainMod, mouse_down, split-workspace, e+1 -#bind = $mainMod, mouse_up, split-workspace, e-1 -#bind = $mainMod, comma, split-changemonitor, +1 -#bind = $mainMod, period, split-changemonitor, -1 -#}}} - -#{{{ Workspace binds (not using split-monitor-workspaces plugin!) -# 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, 1, split:workspace, 1 +bind = $mainMod, 2, split:workspace, 2 +bind = $mainMod, 3, split:workspace, 3 +bind = $mainMod, 4, split:workspace, 4 +bind = $mainMod, 5, split:workspace, 5 +bind = $mainMod, 6, split:workspace, 6 +bind = $mainMod, 7, split:workspace, 7 +bind = $mainMod, 8, split:workspace, 8 +bind = $mainMod, 9, split:workspace, 9 # 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 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, mouse_down, workspace, e+1 -bind = $mainMod, mouse_up, workspace, e-1 -#bind = $mainMod, comma, split-changemonitor, +1 -#bind = $mainMod, period, split-changemonitor, -1 +bind = $mainMod SHIFT, 1, split:movetoworkspacesilent, 1 +bind = $mainMod SHIFT, 2, split:movetoworkspacesilent, 2 +bind = $mainMod SHIFT, 3, split:movetoworkspacesilent, 3 +bind = $mainMod SHIFT, 4, split:movetoworkspacesilent, 4 +bind = $mainMod SHIFT, 5, split:movetoworkspacesilent, 5 +bind = $mainMod SHIFT, 6, split:movetoworkspacesilent, 6 +bind = $mainMod SHIFT, 7, split:movetoworkspacesilent, 7 +bind = $mainMod SHIFT, 8, split:movetoworkspacesilent, 8 +bind = $mainMod SHIFT, 9, split:movetoworkspacesilent, 9 +bind = $mainMod CONTROL SHIFT, 1, split:movetoworkspace, 1 +bind = $mainMod CONTROL SHIFT, 2, split:movetoworkspace, 2 +bind = $mainMod CONTROL SHIFT, 3, split:movetoworkspace, 3 +bind = $mainMod CONTROL SHIFT, 4, split:movetoworkspace, 4 +bind = $mainMod CONTROL SHIFT, 5, split:movetoworkspace, 5 +bind = $mainMod CONTROL SHIFT, 6, split:movetoworkspace, 6 +bind = $mainMod CONTROL SHIFT, 7, split:movetoworkspace, 7 +bind = $mainMod CONTROL SHIFT, 8, split:movetoworkspace, 8 +bind = $mainMod CONTROL SHIFT, 9, split:movetoworkspace, 9 +#bind = $mainMod, mouse_down, split:workspace, e+1 +#bind = $mainMod, mouse_up, split:workspace, e-1 +bind = $mainMod, G, split:grabroguewindows +bind = $mainMod, comma, focusmonitor, -1 +bind = $mainMod, period, focusmonitor, +1 +bind = $mainMod SHIFT, comma, movewindow, mon:-1 +bind = $mainMod SHIFT, period, movewindow, mon:+1 #}}} #{{{ Mouse binds @@ -331,8 +335,8 @@ submap = reset #}}} #{{{ Menu bindings -bind = $mainMod, R, exec, exec sh -c "$(tofi-drun -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" -bind = $mainMod, D, exec, exec sh -c "$(tofi-run -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" +bind = $mainMod, R, exec, sh -c "$(tofi-drun -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" +bind = $mainMod, D, exec, sh -c "$(tofi-run -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" bind = $mainMod $secdMod, Q, exec, qbc bind = $mainMod $secdMod, W, exec, lwc bind = $mainMod $secdMod, E, exec, mbc @@ -348,87 +352,86 @@ bind = $mainMod $secdMod, P, exec, passmenu #{{{ Misc bindings bind = $mainMod, Return, exec, kitty bind = $mainMod $secdMod, F, exec, kitty -e lf -bind = $mainMod, W, exec, t waybar +bind = $mainMod, W, exec, pkill -USR1 waybar bind = $mainMod, Q, exec, loginctl lock-session bind = $mainMod $secdMod CONTROL, Q, exec, systemctl suspend bind = $mainMod SHIFT, G, exec, get-app-id -#bindr = , XF86AudioMicMute, exec, volsv -m -bind = $mainMod CONTROL, M, exec, volsv -m -bindr = $mainMod CONTROL, M, exec, volsv -m +bind = $mainMod Control, M, exec, volsv -m +bind = $mainMod, Comma, exec, acpi-notify.sh #bind = $mainMod CONTROL, R, exec, startx -- /usr/bin/Xephyr -screen 1920x1080 :1 #}}} #{{{ Scratchpads bind = $mainMod CONTROL, Z, exec, pypr toggle sphtop -$sphtop = ^(sphtop)$ +$sphtop = class:^(sphtop)$ windowrule = float,$sphtop windowrule = workspace special:sphtop silent,$sphtop windowrule = size 50% 50%,$sphtop windowrule = move 25% 25%,$sphtop bind = $mainMod CONTROL, X, exec, pypr toggle spterm -$spterm = ^(spterm)$ +$spterm = class:^(spterm)$ windowrule = float,$spterm -windowrule = workspace special:spterm silent,$dropterm +windowrule = workspace special:spterm silent,$spterm windowrule = size 50% 50%,$spterm windowrule = move 25% 25%,$spterm bind = $mainMod CONTROL, C, exec, pypr toggle sppmxr -$sppmxr = ^(sppmxr)$ +$sppmxr = class:^(sppmxr)$ windowrule = float,$sppmxr windowrule = workspace special:sppmxr silent,$sppmxr windowrule = size 50% 50%,$sppmxr windowrule = move 25% 25%,$sppmxr bind = $mainMod CONTROL, V, exec, pypr toggle spblue -$spblue = ^(spblue)$ +$spblue = class:^(spblue)$ windowrule = float,$spblue windowrule = workspace special:spblue silent,$spblue windowrule = size 50% 50%,$spblue windowrule = move 25% 25%,$spblue bind = $mainMod CONTROL, B, exec, pypr toggle spncmp -$spncmp = ^(spncmp)$ +$spncmp = class:^(spncmp)$ windowrule = float,$spncmp windowrule = workspace special:spncmp silent,$spncmp windowrule = size 50% 50%,$spncmp windowrule = move 25% 25%,$spncmp bind = $mainMod CONTROL, A, exec, pypr toggle spmutt -$spmutt = ^(spmutt)$ +$spmutt = class:^(spmutt)$ windowrule = float,$spmutt windowrule = workspace special:spmutt silent,$spmutt windowrule = size 50% 50%,$spmutt windowrule = move 25% 25%,$spmutt bind = $mainMod CONTROL, S, exec, pypr toggle spprof -$spprof = ^(spprof)$ +$spprof = class:^(spprof)$ windowrule = float,$spprof windowrule = workspace special:spprof silent,$spprof windowrule = size 50% 50%,$spprof windowrule = move 25% 25%,$spprof bind = $mainMod CONTROL, D, exec, pypr toggle spirss -$spirss = ^(spirss)$ +$spirss = class:^(spirss)$ windowrule = float,$spirss windowrule = workspace special:spirss silent,$spirss windowrule = size 50% 50%,$spirss windowrule = move 25% 25%,$spirss bind = $mainMod CONTROL, F, exec, pypr toggle sptodo -$sptodo = ^(sptodo)$ +$sptodo = class:^(sptodo)$ windowrule = float,$sptodo windowrule = workspace special:sptodo silent,$sptodo windowrule = size 50% 50%,$sptodo windowrule = move 25% 25%,$sptodo bind = $mainMod CONTROL, G, exec, pypr toggle sptrmc -$sptrmc = ^(sptrmc)$ +$sptrmc = class:^(sptrmc)$ windowrule = float,$sptrmc windowrule = workspace special:sptrmc silent,$sptrmc windowrule = size 50% 50%,$sptrmc windowrule = move 25% 25%,$sptrmc bind = $mainMod CONTROL, Q, exec, pypr toggle qpwgraph -$spqpwg = ^(org\.rncbc\.qpwgraph)$ +$spqpwg = class:^(org\.rncbc\.qpwgraph)$ windowrule = float,$spqpwg windowrule = workspace special:spqpwg silent,$spqpwg windowrule = size 50% 50%,$spqpwg windowrule = move 25% 25%,$spqpwg bind = $mainMod CONTROL, E, togglespecialworkspace, speasy -$speasy = ^(com\.github\.wwmm\.easyeffects)$ +$speasy = class:^(com\.github\.wwmm\.easyeffects)$ windowrule = float,$speasy windowrule = workspace special:speasy silent,$speasy windowrule = size 50% 50%,$speasy @@ -466,9 +469,7 @@ bind = , XF86AudioNext, exec, playerctl next bind = , XF86AudioMute, exec, volsv -t #bindl = , XF86AudioMicMute, exec, volsv -m bind = , XF86AudioMicMute, exec, volsv -m -bindel = , XF86MonBrightnessUp, exec, bl -i -bindel = , XF86MonBrightnessDown, exec, bl -d -bindl = $mainMod, XF86MonBrightnessUp, exec, bl -I 1 -bindl = $mainMod, XF86MonBrightnessDown, exec, bl -D 1 +bindel = , XF86MonBrightnessUp, exec, hypr-brightness + +bindel = , XF86MonBrightnessDown, exec, hypr-brightness - bind = , Print, exec, scrshot #}}} |