From 3e79c364877ca4cc62a3f124ba2c1ecbd5a94059 Mon Sep 17 00:00:00 2001 From: S4NKALP Date: Fri, 10 Oct 2025 21:24:39 +0545 Subject: [PATCH] refactor(hypr): improve keybinds for window management and application launching --- config/hypr/UserConfigs/UserKeybinds.conf | 36 ++++---- config/hypr/UserConfigs/UserSettings.conf | 9 +- config/hypr/configs/Keybinds.conf | 105 ++++++++++------------ 3 files changed, 72 insertions(+), 78 deletions(-) diff --git a/config/hypr/UserConfigs/UserKeybinds.conf b/config/hypr/UserConfigs/UserKeybinds.conf index 900a68ab..a930b7e4 100644 --- a/config/hypr/UserConfigs/UserKeybinds.conf +++ b/config/hypr/UserConfigs/UserKeybinds.conf @@ -1,4 +1,5 @@ + # See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables # See also Laptops.conf for laptops keybinds @@ -12,28 +13,29 @@ $filemanager = thunar $telegram = materialgram $browser = zen-browser -# bindi = Super, Super_L, global, caelestia:launcher # Testing -bind = Alt, f12, exec, notify-send 'Test notification' "Here's a really long message to test truncation and wrapping\nYou can middle click or flick this notification to dismiss it!" -a 'terminal' -A "Test1=I got it!" -A "Test2=Another action" -bind = Alt, Equal, exec, notify-send 'hmm' ${SLURP_ARGS} +bind = Alt, f12, exec, notify-send 'Test notification' "Here's a really long message to test truncation and wrapping\nYou can middle click or flick this notification to dismiss it!" -a 'terminal' -A "Test1=I got it!" -A "Test2=Another action" +bind = Alt, Equal, exec, notify-send 'hmm' ${SLURP_ARGS} + +bind = $mainMod, space, exec, uwsm app -- fabric-cli exec modus1 "launcher.toggle()" +bind = $mainMod, R, exec, uwsm app -- fabric-cli exec fabrika-shell "launcher.toggle()" -bind = $mainMod, Space, exec, fabric-cli execute modus "launcher.show_launcher()" -bind = Alt, Tab, exec, fabric-cli execute modus "switcher.show_switcher()" # Applications -bind = ALT SHIFT,Return, exec, $terminal --title Kitty --single-instance -bind = $mainMod, Return, exec, $terminal -bind = ALT, E, exec, $filemanager -bind = $mainMod, B, exec, $browser -bind = ALT, T, exec, $telegram - -bind = $mainMod, S, exec, fabric-cli execute modus "launcher.show_launcher('sc ss', external=True)" +# bind = ALT SHIFT,Return, exec, uwsm app -- $terminal --title Kitty --single-instance +bind = $mainMod, Return, exec, uwsm app -- $terminal +bind = ALT SHIFT,Return, exec, [float] uwsm app -- $terminal -1 +bind = ALT, E, exec, uwsm app -- $filemanager +bind = $mainMod, B, exec, uwsm app -- $browser +bind = ALT, T, exec, uwsm app -- $telegram +bind = $mainMod SHIFT, S, exec, hyprshot -z -m region --clipboard-only +bind = $mainMod, S, exec, fabric-cli execute modus "launcher.show_launcher('sc ss', external=True)" # Actions -bind = $mainMod, F3, exec, $scriptsDir/kb_changer -bind = $mainMod CTRL, L, exec, pidof hyprlock || hyprlock -q -bind = $mainMod CTRL, P, exec, systemctl poweroff -bind = $mainMod CTRL, R, exec, systemctl reboot -bind = $mainMod, X, exec,grimblast copy active +bind = $mainMod, F3, exec, $scriptsDir/kb_changer +bind = $mainMod CTRL, L, exec, pidof hyprlock || hyprlock -q +bind = $mainMod CTRL, P, exec, systemctl poweroff +bind = $mainMod CTRL, R, exec, systemctl reboot +bind = $mainMod, X, exec, hyprshot -m region # Send window to special workspace bind = ALT, Q, movetoworkspacesilent, special diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf index 3b2ac6e9..c3390110 100644 --- a/config/hypr/UserConfigs/UserSettings.conf +++ b/config/hypr/UserConfigs/UserSettings.conf @@ -14,13 +14,11 @@ master { mfact = 0.5 } - - input { kb_layout = us,np kb_variant = kb_model = - kb_options = + # kb_options = grp:alt_space_toggle kb_rules = repeat_rate = 50 repeat_delay = 300 @@ -43,6 +41,9 @@ input { gesture { gesture = 3, horizontal, workspace, gesture = 3, down, close, + gesture = 3, pinchin,float,tile + gesture = 3, pinchout,float, float + # gesture = 3, up, dispatcher, exec, wpctl set-volume -l 1.4 @DEFAULT_AUDIO_SINK@ 5%+ } misc { @@ -54,7 +55,7 @@ misc { enable_swallow = true focus_on_activate = false swallow_regex = (foot|kitty|alacritty|Alacritty) - + middle_click_paste = false } binds { diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf index a9967e1e..0ddfb5d2 100644 --- a/config/hypr/configs/Keybinds.conf +++ b/config/hypr/configs/Keybinds.conf @@ -1,37 +1,25 @@ + # See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables # See also Laptops.conf for laptops keybinds # SUPER KEY $mainMod = SUPER - - - -# Master Layout -bind = ALT, Space, layoutmsg, removemaster -bind = $mainMod, I, layoutmsg, addmaster -bind = $mainMod, L, layoutmsg, cyclenext -bind = $mainMod, H, layoutmsg, cycleprev -bind = $mainMod, P, pseudo, -bind = $mainMod, S, layoutmsg, swapwithmaster - +bind = $mainMod, p, pseudo, # dwindle +bind = $mainMod SHIFT, p, togglesplit, # dwindle # Hyprland bind = $mainMod, C, killactive, bind = $mainMod SHIFT, C, closewindow, + +# Floating bind = $mainMod, F, exec, hyprctl dispatch togglefloating && hyprctl dispatch centerwindow 1 -bind = $mainMod ALT, F, exec, hyprctl dispatch workspaceopt allfloat bind = $mainMod SHIFT, F, togglefloating, + +# Fullscreen Toggle +bind = $mainMod CTRL, Space, fullscreen, 1 bind = $mainMod SHIFT, Space, fullscreen, 0 -# Change Workspace Mode -bind = $mainMod SHIFT, F, exec, hyprctl dispatch workspaceopt allfloat -bind = $mainMod SHIFT, P, exec, hyprctl dispatch workspaceopt, allpseudo - -# Group -bind = $mainMod, G, togglegroup -bind = ALT, Tab, changegroupactive - # For Monitor bind = $mainMod, Tab, focusmonitor, +1 bind = $mainMod SHIFT, Tab, focusmonitor, -1 @@ -40,56 +28,59 @@ bind = $mainMod SHIFT, Tab, focusmonitor, -1 #bind = $mainMod, Tab, workspace, m+1 #bind = $mainMod SHIFT, Tab, workspace, m-1 -# Resize Active (Using arrow) -binde = $mainMod ALT, left, resizeactive, -20 0 -binde = $mainMod ALT, right, resizeactive, 20 0 -binde = $mainMod ALT, up, resizeactive, 0 -20 -binde = $mainMod ALT, down, resizeactive, 0 20 -# Resize Action using vim motin -binde = $mainMod ALT, h, resizeactive, -20 0 -binde = $mainMod ALT, l, resizeactive, 20 0 -binde = $mainMod ALT, k, resizeactive, 0 -20 -binde = $mainMod ALT, j, resizeactive, 0 20 +# Arrow +# Resize Action +bind = ALT SHIFT, left, resizeactive, -20 0 +bind = ALT SHIFT, right, resizeactive, 20 0 +bind = ALT SHIFT, up, resizeactive, 0 -20 +bind = ALT SHIFT, down, resizeactive, 0 20 -# Move Active Using Arrow +# Move Action bind = $mainMod SHIFT, left, movewindow, l bind = $mainMod SHIFT, right, movewindow, r bind = $mainMod SHIFT, up, movewindow, u bind = $mainMod SHIFT, down, movewindow, d -# Move Active using vim motion -bind = $mainMod SHIFT, h, movewindow, l -bind = $mainMod SHIFT, l, movewindow, r -bind = $mainMod SHIFT, k, movewindow, u -bind = $mainMod SHIFT, j, movewindow, d - -# Change Focus using Arrow +# Change Focus bind = $mainMod, left, movefocus, l bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d -# Change Focus using vim motion -bind = $mainMod, j, movefocus, l -bind = $mainMod, l, movefocus, r -bind = $mainMod, k, movefocus, u -bind = $mainMod, j, movefocus, d +# Move Active (Floating Only) +bind = $mainMod ALT, left, moveactive, -20 0 +bind = $mainMod ALT, right, moveactive, 20 0 +bind = $mainMod ALT, up, moveactive, 0 -20 +bind = $mainMod ALT, down, moveactive, 0 20 -# Move Active (Floating Only) using arrow -binde = $mainMod CTRL, left, moveactive, -20 0 -binde = $mainMod CTRL, right, moveactive, 20 0 -binde = $mainMod CTRL, up, moveactive, 0 -20 -binde = $mainMod CTRL, down, moveactive, 0 20 +# VIM LIKE +# Resize Action +bind = ALT SHIFT, h, resizeactive, -20 0 +bind = ALT SHIFT, l, resizeactive, 20 0 +bind = ALT SHIFT, k, resizeactive, 0 -20 +bind = ALT SHIFT, j, resizeactive, 0 20 -# Move Active (Floating Only) Using vm motion -binde = $mainMod CTRL, h, moveactive, -20 0 -binde = $mainMod CTRL, l, moveactive, 20 0 -binde = $mainMod CTRL, k, moveactive, 0 -20 -binde = $mainMod CTRL, j, moveactive, 0 20 +# Move Active +bind = $mainMod SHIFT, h, movewindow, l +bind = $mainMod SHIFT, l, movewindow, r +bind = $mainMod SHIFT, k, movewindow, u +bind = $mainMod SHIFT, j, movewindow, d + +# Change Focus +bind = $mainMod, h, movefocus, l +bind = $mainMod, l, movefocus, r +bind = $mainMod, k, movefocus, u +bind = $mainMod, j, movefocus, d + +# Move Active (Floating Only) +binde = $mainMod ALT, h, moveactive, -20 0 +binde = $mainMod ALT, l, moveactive, 20 0 +binde = $mainMod ALT, k, moveactive, 0 -20 +binde = $mainMod ALT, j, moveactive, 0 20 # Switch Workspaces -bind = $mainMod, 1, workspace, 1 #! @description: "Switch workspace"; @workspaces; @replace "1" > "0-9"; +bind = $mainMod, 1, workspace, 1 bind = $mainMod, 2, workspace, 2 bind = $mainMod, 3, workspace, 3 bind = $mainMod, 4, workspace, 4 @@ -102,7 +93,7 @@ bind = $mainMod, 0, workspace, 10 # Move active window and follow to workspace -bind = $mainMod SHIFT, 1, movetoworkspace, 1 #! @description: "Move window to workspace and follow"; @workspaces; @replace "1" > "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 @@ -112,10 +103,10 @@ 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, j, workspace, empty #! @description: "Switch to empty workspace"; @workspaces; +bind = $mainMod SHIFT, e, workspace, empty # Move active window workspace silently -bind = SHIFT ALT, 1, movetoworkspacesilent, 1 #! @description: "Move window to workspace silently"; @workspaces; +bind = SHIFT ALT, 1, movetoworkspacesilent, 1 bind = SHIFT ALT, 2, movetoworkspacesilent, 2 bind = SHIFT ALT, 3, movetoworkspacesilent, 3 bind = SHIFT ALT, 4, movetoworkspacesilent, 4