From 8bef5497aafb2586c9e0c0282ee615d47ce2dde0 Mon Sep 17 00:00:00 2001 From: Andre Ramnitz Date: Thu, 17 Jul 2025 18:23:18 +0200 Subject: [PATCH] hypr: update config --- dot-config/hypr/fragments/animations.conf | 2 +- dot-config/hypr/fragments/env.conf | 2 +- dot-config/hypr/fragments/keybinds.conf | 306 +++++++++--------- dot-config/hypr/fragments/layerrules.conf | 2 +- dot-config/hypr/fragments/permissions.conf | 2 +- dot-config/hypr/fragments/windowrules.conf | 15 +- dot-config/hypr/fragments/workspacerules.conf | 4 +- dot-config/hypr/hyprland.conf | 145 ++++----- dot-local/bin/hyprpickr | 4 - dot-local/bin/launch-waybar | 12 - dot-local/bin/wb | 6 +- 11 files changed, 244 insertions(+), 256 deletions(-) delete mode 100755 dot-local/bin/hyprpickr delete mode 100755 dot-local/bin/launch-waybar diff --git a/dot-config/hypr/fragments/animations.conf b/dot-config/hypr/fragments/animations.conf index 9664c6d1..92641d71 100644 --- a/dot-config/hypr/fragments/animations.conf +++ b/dot-config/hypr/fragments/animations.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai animations { enabled = yes diff --git a/dot-config/hypr/fragments/env.conf b/dot-config/hypr/fragments/env.conf index 3cfaadb9..053d9692 100644 --- a/dot-config/hypr/fragments/env.conf +++ b/dot-config/hypr/fragments/env.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai # xdg stuff env = AMD_VULKAN_ICD=RADV diff --git a/dot-config/hypr/fragments/keybinds.conf b/dot-config/hypr/fragments/keybinds.conf index f1a2174b..f0f7ff07 100644 --- a/dot-config/hypr/fragments/keybinds.conf +++ b/dot-config/hypr/fragments/keybinds.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai # modifiers # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -9,216 +9,216 @@ $mainmod = SUPER # mainmod shortcuts # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── # example: bind = $mainmod Shift, Return, exec, [float; size 1280 800;] foot -o pad=0x0 -bind = $mainmod, Return, exec, foot -bind = $mainmod Shift, Q, killactive, -bind = $mainmod Shift, Return, exec, foot -w 1280x800 -o pad=0x0 -a popup -bind = $mainmod, A, pseudo, # dwindle, A for Artificial -bind = $mainmod, B, exec, $HOME/.config/hypr/scripts/browser_focus_or_run.sh -bind = $mainmod, D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-startmenu.ini -bind = $mainmod Shift, D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-centered.ini -bind = $mainmod, E, exec, foot -a lf lfrun -bind = $mainmod SHIFT, E, exec, dolphin -bind = $mainmod, F, fullscreen,1 -bind = $mainmod Shift, F, fullscreen,0 -bind = $mainmod, G, togglegroup -bind = $mainmod SHIFT, G, lockactivegroup, toggle -bind = $mainmod CTRL, G, denywindowfromgroup, toggle -bind = $mainmod ALT, G, moveoutofgroup, active -bind = $mainmod, M, togglespecialworkspace, magic -bind = $mainmod, M, movetoworkspace, +0 -bind = $mainmod, M, togglespecialworkspace, magic -bind = $mainmod, M, movetoworkspace, special:magic -bind = $mainmod, M, togglespecialworkspace, magic -bind = $mainmod, P, exec, foot -w 640x400 -a popup -H hyprpicker #color Pipette -bind = $mainmod, S, layoutmsg, swapwithmaster # master -bind = $mainmod, S, togglesplit, # dwindle -bind = $mainmod Shift, S, swapsplit, # dwindle -bind = $mainmod, V, togglefloating -bind = $mainmod Shift, V, exec, killall fuzzel || cliphist list | fuzzel -d --config=$HOME/.config/fuzzel/fuzzel-centered.ini | cliphist decode | wl-copy -bind = $mainmod, W, exec, killall -SIGUSR1 waybar -bind = $mainmod SHIFT, W, exec, killall -SIGUSR2 waybar -bind = $mainmod, grave, exec, ~/.config/hypr/scripts/RofiEmoji.sh -bind = $mainmod, Z, overview:toggle +bind = $mainmod, Return, exec, foot +bind = $mainmod Shift, Q, killactive, +bind = $mainmod Shift, Return, exec, foot -w 1280x800 -o pad=0x0 -a popup +bind = $mainmod, A, pseudo, # dwindle, A for Artificial +bind = $mainmod, B, exec, $HOME/.config/hypr/scripts/browser_focus_or_run.sh +bind = $mainmod, D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-startmenu.ini +bind = $mainmod Shift, D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-centered.ini +bind = $mainmod, E, exec, foot -a lf lfrun +bind = $mainmod SHIFT, E, exec, dolphin +bind = $mainmod, F, fullscreen,1 +bind = $mainmod Shift, F, fullscreen,0 +bind = $mainmod, G, togglegroup +bind = $mainmod SHIFT, G, lockactivegroup, toggle +bind = $mainmod CTRL, G, denywindowfromgroup, toggle +bind = $mainmod ALT, G, moveoutofgroup, active +bind = $mainmod, M, togglespecialworkspace, magic +bind = $mainmod, M, movetoworkspace, +0 +bind = $mainmod, M, togglespecialworkspace, magic +bind = $mainmod, M, movetoworkspace, special:magic +bind = $mainmod, M, togglespecialworkspace, magic +bind = $mainmod, P, exec, foot -w 640x400 -a popup -H hyprpicker #color Pipette +bind = $mainmod, S, layoutmsg, swapwithmaster # master +bind = $mainmod, S, togglesplit, # dwindle +bind = $mainmod Shift, S, swapsplit, # dwindle +bind = $mainmod, V, togglefloating +bind = $mainmod Shift, V, exec, killall fuzzel || cliphist list | fuzzel -d --config=$HOME/.config/fuzzel/fuzzel-centered.ini | cliphist decode | wl-copy +bind = $mainmod, W, exec, killall -SIGUSR1 waybar +bind = $mainmod SHIFT, W, exec, killall -SIGUSR2 waybar +bind = $mainmod, grave, exec, ~/.config/hypr/scripts/RofiEmoji.sh +bind = $mainmod, Z, overview:toggle # scratchpad -bind = $mainmod, I, togglespecialworkspace, overlay -bind = $mainmod SHIFT, I, movetoworkspace, special:overlay +bind = $mainmod, I, togglespecialworkspace, overlay +bind = $mainmod SHIFT, I, movetoworkspace, special:overlay # suremod keys (prevent fat-fingering 'em by accident) # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -bind = $suremod, E, exit, -bind = $suremod, Return, exec, konsole # fallback terminal app -bind = $suremod, G, exec, ~/.config/hypr/scripts/gamemode.sh -bind = $suremod, L, exec, ~/.config/hypr/scripts/powermenu.sh +bind = $suremod, E, exit, +bind = $suremod, Return, exec, konsole # fallback terminal app +bind = $suremod, G, exec, ~/.config/hypr/scripts/gamemode.sh +bind = $suremod, L, exec, ~/.config/hypr/scripts/powermenu.sh # misc keys # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -bind = $mainmod, Print, exec, hyprshot -m output -m active -o $HOME/Bilder/Screenshots -bind = SHIFT, Print, exec, hyprshot -m window -m active -o $HOME/Bilder/Screenshots -bind = CTRL, Print, exec, hyprshot -z -m region -o $HOME/Bilder/Screenshots -bind = ALT SHIFT, F12, exec, ~/.config/hypr/scripts/gamemode.sh +bind = $mainmod, Print, exec, hyprshot -m output -m active -o $HOME/Bilder/Screenshots +bind = SHIFT, Print, exec, hyprshot -m window -m active -o $HOME/Bilder/Screenshots +bind = CTRL, Print, exec, hyprshot -z -m region -o $HOME/Bilder/Screenshots +bind = ALT SHIFT, F12, exec, ~/.config/hypr/scripts/gamemode.sh bind = ALT CTRL, L, exec, hyprlock # media keys # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -bindl = , XF86AudioRaiseVolume, exec, wp+ -bindl = , XF86AudioLowerVolume, exec, wp- -bindl = , XF86AudioMute, exec, ~/.config/hypr/scripts/muteorunmute.sh -bindl = , XF86AudioPlay, exec, playerctl play-pause -bindl = , XF86AudioNext, exec, playerctl next -bindl = , XF86AudioPrev, exec, playerctl previous -bindl = , XF86audiostop, exec, playerctl stop +bindl = , XF86AudioRaiseVolume, exec, wp+ +bindl = , XF86AudioLowerVolume, exec, wp- +bindl = , XF86AudioMute, exec, ~/.config/hypr/scripts/muteorunmute.sh +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPrev, exec, playerctl previous +bindl = , XF86audiostop, exec, playerctl stop # client switcher # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -bind = $mainmod, TAB, exec, ~/.config/hypr/scripts/windowswitch-rg.sh -bind = ALT, TAB, focuscurrentorlast +bind = $mainmod, TAB, exec, ~/.config/hypr/scripts/windowswitch-rg.sh +bind = ALT, TAB, focuscurrentorlast # movement # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── # Move focus with mainMod + arrow keys -bind = $mainmod, left, movefocus, l -bind = $mainmod, right, movefocus, r -bind = $mainmod, up, movefocus, u -bind = $mainmod, down, movefocus, d -bind = $mainmod, H, movefocus, l -bind = $mainmod, L, movefocus, r -bind = $mainmod, K, movefocus, u -bind = $mainmod, J, movefocus, d +bind = $mainmod, left, movefocus, l +bind = $mainmod, right, movefocus, r +bind = $mainmod, up, movefocus, u +bind = $mainmod, down, movefocus, d +bind = $mainmod, H, movefocus, l +bind = $mainmod, L, movefocus, r +bind = $mainmod, K, movefocus, u +bind = $mainmod, J, movefocus, d # move windows or entire groups -bind = $mainmod SHIFT, left, movewindow, l -bind = $mainmod SHIFT, right, movewindow, r -bind = $mainmod SHIFT, up, movewindow, u -bind = $mainmod SHIFT, down, movewindow, d -bind = $mainmod SHIFT, H, movewindow, l -bind = $mainmod SHIFT, L, movewindow, r -bind = $mainmod SHIFT, K, movewindow, u -bind = $mainmod SHIFT, J, movewindow, d +bind = $mainmod SHIFT, left, movewindow, l +bind = $mainmod SHIFT, right, movewindow, r +bind = $mainmod SHIFT, up, movewindow, u +bind = $mainmod SHIFT, down, movewindow, d +bind = $mainmod SHIFT, H, movewindow, l +bind = $mainmod SHIFT, L, movewindow, r +bind = $mainmod SHIFT, K, movewindow, u +bind = $mainmod SHIFT, J, movewindow, d # Move windows into or out of groups with $suremod -bind = $mainmod CTRL, left, movewindoworgroup, l -bind = $mainmod CTRL, right, movewindoworgroup, r -bind = $mainmod CTRL, up, movewindoworgroup, u -bind = $mainmod CTRL, down, movewindoworgroup, d -bind = $mainmod CTRL, H, movewindoworgroup, l -bind = $mainmod CTRL, L, movewindoworgroup, r -bind = $mainmod CTRL, K, movewindoworgroup, u -bind = $mainmod CTRL, J, movewindoworgroup, d +bind = $mainmod CTRL, left, movewindoworgroup, l +bind = $mainmod CTRL, right, movewindoworgroup, r +bind = $mainmod CTRL, up, movewindoworgroup, u +bind = $mainmod CTRL, down, movewindoworgroup, d +bind = $mainmod CTRL, H, movewindoworgroup, l +bind = $mainmod CTRL, L, movewindoworgroup, r +bind = $mainmod CTRL, K, movewindoworgroup, u +bind = $mainmod CTRL, J, movewindoworgroup, d # preselect direction for new windows -bind = ALT CTRL, left, layoutmsg, preselect l -bind = ALT CTRL, right, layoutmsg, preselect r -bind = ALT CTRL, up, layoutmsg, preselect u -bind = ALT CTRL, down, layoutmsg, preselect d +bind = ALT CTRL, left, layoutmsg, preselect l +bind = ALT CTRL, right, layoutmsg, preselect r +bind = ALT CTRL, up, layoutmsg, preselect u +bind = ALT CTRL, down, layoutmsg, preselect d # move through group windows -bind = $mainmod, O, changegroupactive, f -bind = $mainmod, U, changegroupactive, b -bind = $mainmod SHIFT, O, movegroupwindow, f -bind = $mainmod SHIFT, U, movegroupwindow, b +bind = $mainmod, O, changegroupactive, f +bind = $mainmod, U, changegroupactive, b +bind = $mainmod SHIFT, O, movegroupwindow, f +bind = $mainmod SHIFT, U, movegroupwindow, b # Move floating windows u/d/l/r -bind = $mainmod ALT, left, moveactive, -40 0 -bind = $mainmod ALT, right, moveactive, 40 0 -bind = $mainmod ALT, up, moveactive, 0 -40 -bind = $mainmod ALT, down, moveactive, 0 40 -bind = $mainmod ALT, H, moveactive, -40 0 -bind = $mainmod ALT, L, moveactive, 40 0 -bind = $mainmod ALT, K, moveactive, 0 -40 -bind = $mainmod ALT, J, moveactive, 0 40 +bind = $mainmod ALT, left, moveactive, -40 0 +bind = $mainmod ALT, right, moveactive, 40 0 +bind = $mainmod ALT, up, moveactive, 0 -40 +bind = $mainmod ALT, down, moveactive, 0 40 +bind = $mainmod ALT, H, moveactive, -40 0 +bind = $mainmod ALT, L, moveactive, 40 0 +bind = $mainmod ALT, K, moveactive, 0 -40 +bind = $mainmod ALT, J, moveactive, 0 40 # workspaces # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── # Roll between workspaces -bind = $mainmod, PLUS, exec, ~/.config/hypr/scripts/workspace.sh + -bind = $mainmod, MINUS, exec, ~/.config/hypr/scripts/workspace.sh - -bind = $mainmod SHIFT, PLUS, exec, ~/.config/hypr/scripts/workspace.sh + mv -bind = $mainmod SHIFT, MINUS, exec, ~/.config/hypr/scripts/workspace.sh - mv +bind = $mainmod, PLUS, exec, ~/.config/hypr/scripts/workspace.sh + +bind = $mainmod, MINUS, exec, ~/.config/hypr/scripts/workspace.sh - +bind = $mainmod SHIFT, PLUS, exec, ~/.config/hypr/scripts/workspace.sh + mv +bind = $mainmod SHIFT, MINUS, exec, ~/.config/hypr/scripts/workspace.sh - mv # Switch workspaces with mainMod + [0-9] -bind = $mainmod, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 -bind = $mainmod, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 -bind = $mainmod, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 -bind = $mainmod, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 -bind = $mainmod, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 -bind = $mainmod, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 -bind = $mainmod, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 -bind = $mainmod, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 -bind = $mainmod, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 -bind = $mainmod, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 +bind = $mainmod, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 +bind = $mainmod, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 +bind = $mainmod, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 +bind = $mainmod, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 +bind = $mainmod, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 +bind = $mainmod, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 +bind = $mainmod, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 +bind = $mainmod, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 +bind = $mainmod, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 +bind = $mainmod, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 # Move active window to a workspace with mainMod + SHIFT + [0-9] -bind = $mainmod SHIFT, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 mv -bind = $mainmod SHIFT, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 mv -bind = $mainmod SHIFT, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 mv -bind = $mainmod SHIFT, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 mv -bind = $mainmod SHIFT, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 mv -bind = $mainmod SHIFT, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 mv -bind = $mainmod SHIFT, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 mv -bind = $mainmod SHIFT, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 mv -bind = $mainmod SHIFT, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 mv -bind = $mainmod SHIFT, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 mv +bind = $mainmod SHIFT, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 mv +bind = $mainmod SHIFT, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 mv +bind = $mainmod SHIFT, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 mv +bind = $mainmod SHIFT, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 mv +bind = $mainmod SHIFT, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 mv +bind = $mainmod SHIFT, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 mv +bind = $mainmod SHIFT, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 mv +bind = $mainmod SHIFT, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 mv +bind = $mainmod SHIFT, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 mv +bind = $mainmod SHIFT, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 mv # Move active window in the background to a workspace with mainMod + CRTL + [0-9] -bind = $mainmod CTRL, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 mv s -bind = $mainmod CTRL, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 mv s -bind = $mainmod CTRL, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 mv s -bind = $mainmod CTRL, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 mv s -bind = $mainmod CTRL, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 mv s -bind = $mainmod CTRL, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 mv s -bind = $mainmod CTRL, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 mv s -bind = $mainmod CTRL, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 mv s -bind = $mainmod CTRL, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 mv s -bind = $mainmod CTRL, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 mv s +bind = $mainmod CTRL, 1, exec, ~/.config/hypr/scripts/workspace.sh 1 mv s +bind = $mainmod CTRL, 2, exec, ~/.config/hypr/scripts/workspace.sh 2 mv s +bind = $mainmod CTRL, 3, exec, ~/.config/hypr/scripts/workspace.sh 3 mv s +bind = $mainmod CTRL, 4, exec, ~/.config/hypr/scripts/workspace.sh 4 mv s +bind = $mainmod CTRL, 5, exec, ~/.config/hypr/scripts/workspace.sh 5 mv s +bind = $mainmod CTRL, 6, exec, ~/.config/hypr/scripts/workspace.sh 6 mv s +bind = $mainmod CTRL, 7, exec, ~/.config/hypr/scripts/workspace.sh 7 mv s +bind = $mainmod CTRL, 8, exec, ~/.config/hypr/scripts/workspace.sh 8 mv s +bind = $mainmod CTRL, 9, exec, ~/.config/hypr/scripts/workspace.sh 9 mv s +bind = $mainmod CTRL, 0, exec, ~/.config/hypr/scripts/workspace.sh 10 mv s # mouse binds # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── binds { - drag_threshold = 50 - scroll_event_delay = 40 + drag_threshold = 50 + scroll_event_delay = 40 } input { - scroll_points = 3 + scroll_points = 3 } # LMB = 272 // RMB = 273 -bind = $mainmod, mouse_down, exec, ~/.config/hypr/scripts/workspace.sh - -bind = $mainmod, mouse_up, exec, ~/.config/hypr/scripts/workspace.sh + -bind = $mainmod, mouse_left, exec, ~/.config/hypr/scripts/workspace.sh - mv -bind = $mainmod, mouse_right, exec, ~/.config/hypr/scripts/workspace.sh + mv -bind = $mainmod, mouse_left, exec, ~/.config/hypr/scripts/workspace.sh - mv s -bind = $mainmod, mouse_right, exec, ~/.config/hypr/scripts/workspace.sh + mv s +bind = $mainmod, mouse_down, exec, ~/.config/hypr/scripts/workspace.sh - +bind = $mainmod, mouse_up, exec, ~/.config/hypr/scripts/workspace.sh + +bind = $mainmod, mouse_left, exec, ~/.config/hypr/scripts/workspace.sh - mv +bind = $mainmod, mouse_right, exec, ~/.config/hypr/scripts/workspace.sh + mv +bind = $mainmod, mouse_left, exec, ~/.config/hypr/scripts/workspace.sh - mv s +bind = $mainmod, mouse_right, exec, ~/.config/hypr/scripts/workspace.sh + mv s # Move/resize windows with mainMod + LMB/RMB and dragging -bindm = $mainmod, mouse:272, movewindow -bindm = $mainmod, mouse:273, resizewindow -bind = $mainmod SHIFT, mouse_down, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 1.25}') -bind = $mainmod SHIFT, mouse_up, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 0.75}') +bindm = $mainmod, mouse:272, movewindow +bindm = $mainmod, mouse:273, resizewindow +bind = $mainmod SHIFT, mouse_down, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 1.25}') +bind = $mainmod SHIFT, mouse_up, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 0.75}') # submaps # ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── # will switch to a submap called resize -bind = $mainmod, R, submap, resize +bind = $mainmod, R, submap, resize # will start a submap called "resize" submap = resize # sets repeatable binds for resizing the active window -binde = , right, resizeactive, 10 0 -binde = , left, resizeactive, -10 0 -binde = , up, resizeactive, 0 -10 -binde = , down, resizeactive, 0 10 -binde = , l, resizeactive, 10 0 -binde = , h, resizeactive, -10 0 -binde = , k, resizeactive, 0 -10 -binde = , j, resizeactive, 0 10 +binde = , right, resizeactive, 10 0 +binde = , left, resizeactive, -10 0 +binde = , up, resizeactive, 0 -10 +binde = , down, resizeactive, 0 10 +binde = , l, resizeactive, 10 0 +binde = , h, resizeactive, -10 0 +binde = , k, resizeactive, 0 -10 +binde = , j, resizeactive, 0 10 # use reset to go back to the global submap bind = , catchall, submap, reset @@ -229,18 +229,18 @@ submap = reset # ─────────────────────────────────────────────────────────── # will switch to a submap called gaps -bind = $mainmod ALT, G, submap, gaps +bind = $mainmod ALT, G, submap, gaps # will start a submap called "gaps" submap = gaps # sets repeatable binds for resizing the active window -binde = , i, exec, ~/.config/hypr/scripts/gaps.sh --inc_gaps_in -binde = SHIFT, i, exec, ~/.config/hypr/scripts/gaps.sh --dec_gaps_in -binde = , o, exec, ~/.config/hypr/scripts/gaps.sh --inc_gaps_out -binde = SHIFT, o, exec, ~/.config/hypr/scripts/gaps.sh --dec_gaps_out -binde = CTRL, i, exec, ~/.config/hypr/scripts/gaps.sh --reset_gaps_in -binde = CTRL, o, exec, ~/.config/hypr/scripts/gaps.sh --reset_gaps_out +binde = , i, exec, ~/.config/hypr/scripts/gaps.sh --inc_gaps_in +binde = SHIFT, i, exec, ~/.config/hypr/scripts/gaps.sh --dec_gaps_in +binde = , o, exec, ~/.config/hypr/scripts/gaps.sh --inc_gaps_out +binde = SHIFT, o, exec, ~/.config/hypr/scripts/gaps.sh --dec_gaps_out +binde = CTRL, i, exec, ~/.config/hypr/scripts/gaps.sh --reset_gaps_in +binde = CTRL, o, exec, ~/.config/hypr/scripts/gaps.sh --reset_gaps_out # use reset to go back to the global submap bind = , escape, submap, reset diff --git a/dot-config/hypr/fragments/layerrules.conf b/dot-config/hypr/fragments/layerrules.conf index a1821515..2b6c973e 100644 --- a/dot-config/hypr/fragments/layerrules.conf +++ b/dot-config/hypr/fragments/layerrules.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai layerrule = blurpopups, top layerrule = blur, waybar diff --git a/dot-config/hypr/fragments/permissions.conf b/dot-config/hypr/fragments/permissions.conf index 1fa1a27f..e453b3ac 100644 --- a/dot-config/hypr/fragments/permissions.conf +++ b/dot-config/hypr/fragments/permissions.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow permission = /(usr|usr/local)/bin/(grim|wl-screenrec|wf-recorder), screencopy, ask diff --git a/dot-config/hypr/fragments/windowrules.conf b/dot-config/hypr/fragments/windowrules.conf index 4b431cfb..3374762f 100644 --- a/dot-config/hypr/fragments/windowrules.conf +++ b/dot-config/hypr/fragments/windowrules.conf @@ -1,8 +1,8 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai # Example windowrule v1 # windowrule = float, ^(kitty)$ -# Example windowrule +# Example windowrule # windowrule = float,class:^(kitty)$,title:^(kitty)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # more windowrules @@ -11,14 +11,14 @@ windowrule = plugin:hyprbars:nobar, ^floating:0 # don't UW any window catchall -windowrule = maxsize 1680 1200, class:^(.*)$ +windowrule = maxsize 1440 1200, class:^(.*)$ # handle plasma/kde/qt apps -windowrule = stayfocused, class: ^(org.kde.kwalletd6)$ +windowrule = stayfocused, class:^(org.kde.kwalletd6)$ windowrule = float, class:^(org.kde.*)$ windowrule = float, class:^(kdesystemsettings.*)$ -windowrule = minsize 1 1, stayfocused, float, class: ^(com.nextcloud.desktopclient.nextcloud)$ -windowrule = stayfocused, class: ^(com.nextcloud.desktopclient.nextcloud)$ +windowrule = minsize 1 1, stayfocused, float, class:^(com.nextcloud.desktopclient.nextcloud)$ +windowrule = stayfocused, class:^(com.nextcloud.desktopclient.nextcloud)$ windowrule = float, class: ^(com.nextcloud.desktopclient.nextcloud)$ windowrule = float, size 1560 1000, pin, workspace special:overlay, class:^(org.keepassxc.KeePassXC)$ windowrule = float, class:^(ark.*)$ @@ -27,6 +27,9 @@ windowrule = float, class:^(vlc.*)$ windowrule = float, class:^(pcmanfm.*)$ windowrule = float, class:^(qalculate.*)$ +# indicate windows with special attention +windowrulev2 = bordercolor 0xff$base08 0x8a$base08 45deg, initialTitle:^(upgrayyedd)$ + # handle windows tray items (xembedsniproxy) # dirty: can't match it since class+title are empty # maybe more elegant: diff --git a/dot-config/hypr/fragments/workspacerules.conf b/dot-config/hypr/fragments/workspacerules.conf index 26ce98ab..190bb2d0 100644 --- a/dot-config/hypr/fragments/workspacerules.conf +++ b/dot-config/hypr/fragments/workspacerules.conf @@ -1,4 +1,4 @@ -# kak: filetype=conf:tabwidth=4:indentwidth=4:ai +# kak: filetype=conf:tabstop=4:indentwidth=4:ai # workspace rules #example: on-created-empty: exec, something" @@ -6,6 +6,6 @@ workspace = 1, monitor:DP-1, default:true workspace = 2, monitor:DP-1 workspace = 3, monitor:DP-1 -workspace = 4, monitor:DP-1, gapsout:40, gapsin:20 +workspace = 4, monitor:DP-1, gapsout:40, gapsin:20 workspace = 5, monitor:DP-1 workspace = 6, monitor:DP-1, float diff --git a/dot-config/hypr/hyprland.conf b/dot-config/hypr/hyprland.conf index d343eb67..2209d881 100644 --- a/dot-config/hypr/hyprland.conf +++ b/dot-config/hypr/hyprland.conf @@ -22,7 +22,7 @@ monitorv2 { sdr_min_luminance = 0.005 sdr_max_luminance = 245 } - + monitor=,preferred,auto-center-right,1,vrr,2 # unscale XWayland @@ -75,28 +75,29 @@ general { gaps_in = 5 gaps_out = 10 # col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg #vanilla colors - col.active_border = 0xff$base0C 0x8a$base0D 45deg - col.inactive_border = 0xfa$base03 0x5a$base02 45deg - col.nogroup_border_active = 0xff$base0E 0x8a$base08 45deg - col.nogroup_border = 0xfa$base02 + col.active_border = 0xea$base0C 0x8a$base0D 45deg + col.inactive_border = 0xea$base03 0xda$base02 45deg + col.nogroup_border_active = 0xea$base0E 0x8a$base08 45deg + col.nogroup_border = 0xea$base03 0xda$base02 45deg # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = true snap { - enabled = true - window_gap = 10 - monitor_gap = 0 - border_overlap = 0 + enabled = true + window_gap = 10 + monitor_gap = 0 + border_overlap = 0 } layout = dwindle } dwindle { + pseudotile = yes force_split = 2 smart_split = false split_width_multiplier = 2.0 - single_window_aspect_ratio = 16 9 + single_window_aspect_ratio = 11 9 single_window_aspect_ratio_tolerance = 0.1 } @@ -107,27 +108,27 @@ master { special_scale_factor = .80 mfact = .45 orientation = center - slave_count_for_center_master = 2 - center_master_fallback = left + slave_count_for_center_master = 2 + center_master_fallback = left inherit_fullscreen = false } decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 4 - dim_special = 0.3 - dim_inactive = true - dim_strength = 0.2 - # screen_shader = ~/.config/hypr/shaders/bluefilter.frag + dim_special = 0.3 + dim_inactive = true + dim_strength = 0.2 + # screen_shader = ~/.config/hypr/shaders/bluefilter.frag blur { enabled = true size = 8 passes = 1 - noise = 0.0117 - brightness = 0.8172 - contrast = 0.8916 + noise = 0.0117 + brightness = 0.8172 + contrast = 0.8916 vibrancy = 0.1696 - ignore_opacity = true + ignore_opacity = true } shadow { enabled = true @@ -184,66 +185,66 @@ device { group { merge_groups_on_drag = 0 insert_after_current = 1 - col.border_active = 0xfa$base0C 0x8a$base0D 60deg - col.border_locked_active = 0xfa$base0B 0x8a$base0C 60deg - col.border_inactive = 0xfa$base03 0x7a$base03 60deg - col.border_locked_inactive = 0xfa$base03 0x7a$base03 60deg + col.border_active = 0xea$base0C 0xda$base0D 60deg + col.border_locked_active = 0xea$base0B 0xda$base0C 60deg + col.border_inactive = 0xea$base03 0xda$base02 60deg + col.border_locked_inactive = 0xea$base03 0xda$base02 60deg groupbar { - enabled = 1 - font_family = ZedMono NFP - font_size = 13 - font_weight_active = normal - font_weight_inactive = normal - text_color = 0xff$base01 - text_color_locked_active = 0xff$base05 - text_color_inactive = 0xff$base01 - text_color_locked_inactive = 0xff$base01 - height = 20 - font_size = 16 - text_color = 0xFF$base00 - scrolling = false - col.active = 0xfa$base0C 0x7a$base0C 45deg - col.inactive = 0xfa$base03 0x6a$base03 45deg - col.locked_active = 0xfa$base0B 0x6a$base0B 45deg - col.locked_inactive = 0xfa$base03 0x6a$base03 45deg - indicator_gap = 1 - indicator_height = 8 - render_titles = false - priority = 3 - rounding = 4 - round_only_edges = true - gradients = false - gradient_rounding = 4 - gradient_round_only_edges = true - stacked = false - gaps_in = 2 - gaps_out = 2 - keep_upper_gap = true + enabled = 1 + font_family = ZedMono NFP + font_size = 13 + font_weight_active = normal + font_weight_inactive = normal + text_color = 0xff$base01 + text_color_locked_active = 0xff$base05 + text_color_inactive = 0xff$base01 + text_color_locked_inactive = 0xff$base01 + height = 20 + font_size = 16 + text_color = 0xFF$base00 + scrolling = false + col.active = 0xea$base0C 0x7a$base0C 45deg + col.inactive = 0xea$base03 0x6a$base03 45deg + col.locked_active = 0xea$base0B 0x6a$base0B 45deg + col.locked_inactive = 0xea$base03 0x6a$base03 45deg + indicator_gap = 1 + indicator_height = 8 + render_titles = false + priority = 3 + rounding = 4 + round_only_edges = true + gradients = false + gradient_rounding = 4 + gradient_round_only_edges = true + stacked = false + gaps_in = 2 + gaps_out = 2 + keep_upper_gap = true } } plugin { hyprbars { - bar_text_font = ZedMono NFP - bar_text_size = 12 - bar_height = 24 - bar_color = 0xfb$base00 - col.text = 0xff$base05 - bar_part_of_window = 1 - bar_precedence_over_border = 1 - # hyprbars-button = color, size, icon, on-click - hyprbars-button = 0xaa$base08, 20, 󰖭, hyprctl dispatch killactive - hyprbars-button = 0xaa$base0A, 20, 󰁌, hyprctl dispatch fullscreen 1 - hyprbars-button = 0xaa$base0B, 20, , hyprctl dispatch pin active + bar_text_font = ZedMono NFP + bar_text_size = 12 + bar_height = 24 + bar_color = 0xfb$base00 + col.text = 0xff$base05 + bar_part_of_window = 1 + bar_precedence_over_border = 1 + # hyprbars-button = color, size, icon, on-click + hyprbars-button = 0xaa$base08, 20, 󰖭, hyprctl dispatch killactive + hyprbars-button = 0xaa$base0A, 20, 󰁌, hyprctl dispatch fullscreen 1 + hyprbars-button = 0xaa$base0B, 20, , hyprctl dispatch pin active } overview { - panelHeight = 200 - panelColor = 0xcc$base03 - panelBorderWidth = 1 - panelBorderColor = 0xee$base03 - workspaceActiveBorder = 0xee$base0D - workspaceInactiveBorder = 0xee$base02 - workspaceBorderSize = 2 + panelHeight = 200 + panelColor = 0xcc$base03 + panelBorderWidth = 1 + panelBorderColor = 0xee$base03 + workspaceActiveBorder = 0xee$base0D + workspaceInactiveBorder = 0xee$base02 + workspaceBorderSize = 2 } } diff --git a/dot-local/bin/hyprpickr b/dot-local/bin/hyprpickr deleted file mode 100755 index da027fec..00000000 --- a/dot-local/bin/hyprpickr +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -swaync-client -cp -sw -sleep 0.5 && command hyprpicker diff --git a/dot-local/bin/launch-waybar b/dot-local/bin/launch-waybar deleted file mode 100755 index 9eee56cf..00000000 --- a/dot-local/bin/launch-waybar +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -CONFIG_FILES="$HOME/.config/waybar/config $HOME/.config/waybar/style.css" - -trap "killall waybar" EXIT - -while true; do - waybar & - inotifywait -e create,modify $CONFIG_FILES - killall waybar -done - diff --git a/dot-local/bin/wb b/dot-local/bin/wb index ed6ddcb2..6ecc3830 100755 --- a/dot-local/bin/wb +++ b/dot-local/bin/wb @@ -6,7 +6,7 @@ reload() { if [ "$(pidof waybar)" ]; then - kill -SIGUSR2 "$(pidof waybar)" + killall -SIGUSR2 waybar else waybar -c "$CONFIG" -s "$STYLE" > /dev/null 2>&1 & fi @@ -18,9 +18,9 @@ hide() { if [ "$(pidof waybar)" ]; then - kill -SIGUSR1 "$(pidof waybar)" + killall -SIGUSR1 waybar else - waybar -c "$CONFIG" -s "$STYLE" > /dev/null 2>&1 & + waybar -c "$CONFIG" -s "$STYLE" > /dev/null 2>&1 & fi } -- 2.51.2