# general $mainMod = SUPER # change layout that supports no shift retapping bindl = ALT, Shift_L, exec, hyprctl switchxkblayout main next # Toggle performance mode bind = $mainMod, F1, exec, ~/.config/hypr/scripts/mode-performance.sh # navigation binds bind = $mainMod SHIFT, C, killactive bind = $mainMod SHIFT, M, exit # window special bind = $mainMod SHIFT, P, togglefloating bind = $mainMod, F, fullscreen, 1 bind = $mainMod SHIFT, F, fullscreen, 0 # dwindle bind = $mainMod, P, pseudo bind = $mainMod, T, layoutmsg, togglesplit bind = $mainMod SHIFT, T, layoutmsg, swapsplit # apps binds bind = $mainMod, Q, exec, kitty bind = $mainMod, E, exec, thunar bind = $mainMod, R, exec, rofi -show drun -terminal kitty -no-history -matching prefix -drun-match-fields name -no-tokenize bind = $mainMod SHIFT, R, exec, ~/.config/rofi/network-manager/run-manager.sh bind = $mainMod, C, exec, hyprpicker -a # copy binds bind = $mainMod, V, exec, rofi -modi clipboard:/$HOME/.config/rofi/clipboard/cliphist-rofi-img.sh -show clipboard -show-icon -config ~/.config/rofi/clipboard-config.rasi bind = $mainMod SHIFT, S, exec, IMG=~/Pictures/Screenshots/$(date +%Y-%m-%d_%H-%m-%s).png && grim -g "$(slurp)" $IMG && wl-copy < $IMG bind = , PRINT, exec, grim - | wl-copy # hyprlock bind bind = $mainMod, code:49, exec, hyprlock # waybar bind bindr = $mainMod, w, exec, pkill -9 waybar || uwsm app -- waybar # quickshell bind bindr = $mainMod SHIFT, w, exec, pkill -9 quickshell || uwsm app -- quickshell # multimedia binds binde = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%; ~/.config/hypr/scripts/dunst/volume.sh binde = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%; ~/.config/hypr/scripts/dunst/volume-down.sh bind = , XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle; ~/.config/hypr/scripts/dunst/volume-mute.sh bind = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle; ~/.config/hypr/scripts/dunst/micro.sh bind = , XF86AudioStop, exec, playerctl stop bind = , XF86AudioPause, exec, playerctl pause bind = , XF86AudioPrev, exec, playerctl previous; ~/.config/hypr/scripts/dunst/trackinfo.sh bind = , XF86AudioNext, exec, playerctl next; ~/.config/hypr/scripts/dunst/trackinfo.sh bind = , XF86AudioPlay, exec, playerctl play-pause # brightness binds binde = , XF86MonBrightnessUp , exec, brightnessctl --class='backlight' set 5%+; ~/.config/hypr/scripts/dunst/brightness.sh binde = , XF86MonBrightnessDown , exec, brightnessctl --class='backlight' set 5%-; ~/.config/hypr/scripts/dunst/brightness-down.sh # power binds bind = , XF86PowerOff, exec, systemctl suspend # Move focus with mainMod + arrow keys binde = $mainMod, H, movefocus, l binde = $mainMod, L, movefocus, r binde = $mainMod, K, movefocus, u binde = $mainMod, J, movefocus, d binde = $mainMod, left, movefocus, l binde = $mainMod, right, movefocus, r binde = $mainMod, up, movefocus, u binde = $mainMod, down, movefocus, d binde = $mainMod SHIFT, H, movewindow, l binde = $mainMod SHIFT, L, movewindow, r binde = $mainMod SHIFT, K, movewindow, u binde = $mainMod SHIFT, J, movewindow, d binde = $mainMod SHIFT, left, movewindow, l binde = $mainMod SHIFT, right, movewindow, r binde = $mainMod SHIFT, up, movewindow, u binde = $mainMod SHIFT, down, movewindow, d binde = ALT, TAB, cyclenext # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, mouse_down, workspace, r-1 bind = $mainMod, mouse_up, workspace, r+1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow bindm = $mainMod SHIFT, mouse:272, resizewindow # Resize with keyboard binde = $mainMod CTRL, h, resizeactive, -30 0 binde = $mainMod CTRL, l, resizeactive, 30 0 binde = $mainMod CTRL, j, resizeactive, 0 30 binde = $mainMod CTRL, k, resizeactive, 0 -30 # Switch workspaces binde = $mainMod, A, exec, .config/hypr/scripts/workspace-handler.sh change previous binde = $mainMod, D, exec, .config/hypr/scripts/workspace-handler.sh change next binde = $mainMod CTRL, A, focusworkspaceoncurrentmonitor, r-1 binde = $mainMod CTRL, D, focusworkspaceoncurrentmonitor, r+1 # Move active window between workspaces binde = $mainMod SHIFT, A, exec, .config/hypr/scripts/workspace-handler.sh move previous binde = $mainMod SHIFT, D, exec, .config/hypr/scripts/workspace-handler.sh move next binde = $mainMod CTRL SHIFT, A, movetoworkspace, r-1 binde = $mainMod CTRL SHIFT, D, movetoworkspace, r+1 # Swap worlspaces between monitors bind = $mainMod, TAB, swapactiveworkspaces, 1 0