$mainMod = SUPER binde = $mainMod_SHIFT, Q, killactive, bind = $mainMod_SHIFT, E, exec, wlogout -b 4 -T 400 -B 400 -p layer-shell binde = $mainMod_SHIFT, Space, togglefloating, binde = $mainMod, P, pseudo, binde = $mainMod_SHIFT, V, togglesplit, bind = $mainMod, L, exec, $HOME/.scripts/swaylock.sh bind = $mainMod, F, fullscreen bind = $mainMod_SHIFT, N, exec, swaync-client -t -sw bind = $mainMod, R, exec, wofi --show run bind = $mainMod, E, exec, thunar binde = $mainMod_SHIFT, T, exec, kitty bind = $mainMod_SHIFT, F, exec, firefox bind = $mainMod_SHIFT, D, exec, discord bind = , 107, exec, $HOME/.scripts/grim.sh screen bind = ALT_L, 107, exec, $HOME/.scripts/grim.sh window bind = CONTROL_L, 107, exec, $HOME/.scripts/grim.sh region bind = $mainMod, V, exec, cliphist list | wofi --show dmenu | cliphist decode | wl-copy -n # 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_SHIFT, left, movewindow, l bind = $mainMod_SHIFT, right, movewindow, r bind = $mainMod_SHIFT, up, movewindow, u bind = $mainMod_SHIFT, down, movewindow, d # Switch workspaces with mainMod + [0-9] bind = $mainMod, ampersand, workspace, 1 bind = $mainMod, eacute, workspace, 2 bind = $mainMod, quotedbl, workspace, 3 bind = $mainMod, apostrophe, workspace, 4 bind = $mainMod, parenleft, workspace, 5 bind = $mainMod, minus, workspace, 6 bind = $mainMod, egrave, workspace, 7 bind = $mainMod, underscore, workspace, 8 bind = $mainMod, ccedilla, workspace, 9 bind = $mainMod, agrave, workspace, 10 # Move active window to a workspace with mainMod + SHIFT + [0-9] bind = $mainMod SHIFT, ampersand, movetoworkspace, 1 bind = $mainMod SHIFT, eacute, movetoworkspace, 2 bind = $mainMod SHIFT, quotedbl, movetoworkspace, 3 bind = $mainMod SHIFT, apostrophe, movetoworkspace, 4 bind = $mainMod SHIFT, parenleft, movetoworkspace, 5 bind = $mainMod SHIFT, minus, movetoworkspace, 6 bind = $mainMod SHIFT, egrave, movetoworkspace, 7 bind = $mainMod SHIFT, underscore, movetoworkspace, 8 bind = $mainMod SHIFT, ccedilla, movetoworkspace, 9 bind = $mainMod SHIFT, agrave, movetoworkspace, 10 # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 # Same with ALT + TAB bind = ALT, TAB, workspace, e+1 bind = ALT_SHIFT, TAB, workspace, e-1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow # Swayosd Audio/Brightness/Caps Lock bindl = , Caps_Lock, exec, swayosd-client --caps-lock binde = , XF86AudioRaiseVolume, exec, swayosd-client --output-volume=raise binde = , XF86AudioLowerVolume, exec, swayosd-client --output-volume=lower binde = , XF86AudioMute, exec, swayosd-client --output-volume=mute-toggle binde = , XF86AudioMicMute, exec, swayosd-client --input-volume=mute-toggle bindel = , XF86MonBrightnessUp, exec, swayosd-client --brightness raise bindel = , XF86MonBrightnessDown, exec, swayosd-client --brightness lower # Media keys bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioPrev, exec, playerctl previous # Foobar2000 bind = CTRL, up, exec, $HOME/.scripts/foobar2000.sh -vu bind = CTRL, down, exec, $HOME/.scripts/foobar2000.sh -vd # Weeb mode bind = $mainMod SHIFT, W, exec, $HOME/.scripts/toggle-weeb-mode.sh