# vim: ft=i3 output * allow_tearing yes ### Key bindings set $mod Mod4 set $left h set $down j set $up k set $right l bindsym $mod+t exec foot bindsym $mod+q kill floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' # Launcher bindsym $mod+grave exec fuzzel-util-menu bindsym $mod+d exec fuzzel bindsym $mod+e exec rofimoji --selector fuzzel --files all bindsym $mod+w exec fuzzel-filesearch bindsym $mod+escape exec fuzzel-power-menu # Focus bindsym $mod+$down focus down bindsym $mod+$left focus left bindsym $mod+$right focus right bindsym $mod+$up focus up bindgesture swipe:3:down focus down bindgesture swipe:3:left focus left bindgesture swipe:3:right focus right bindgesture swipe:3:up focus up # Movement bindsym $mod+Shift+$down move down bindsym $mod+Shift+$left move left bindsym $mod+Shift+$right move right bindsym $mod+Shift+$up move up bindgesture swipe:4:down move down bindgesture swipe:4:left move left bindgesture swipe:4:right move right bindgesture swipe:4:up move up # Resizing bindsym $mod+Control+$down resize shrink height 5ppt bindsym $mod+Control+$left resize shrink width 5ppt bindsym $mod+Control+$right resize grow width 5ppt bindsym $mod+Control+$up resize grow height 5ppt # Workspaces bindsym $mod+u workspace 1 bindsym $mod+i workspace 2 bindsym $mod+o workspace 3 bindsym $mod+p workspace 4 bindsym $mod+m workspace 5 bindsym $mod+comma workspace 6 bindsym $mod+period workspace 7 bindsym $mod+slash workspace 8 bindsym $mod+Shift+u move container to workspace 1 bindsym $mod+Shift+i move container to workspace 2 bindsym $mod+Shift+o move container to workspace 3 bindsym $mod+Shift+p move container to workspace 4 bindsym $mod+Shift+m move container to workspace 5 bindsym $mod+Shift+comma move container to workspace 6 bindsym $mod+Shift+period move container to workspace 7 bindsym $mod+Shift+slash move container to workspace 8 bindsym $mod+Alt+h move workspace to output left bindsym $mod+Alt+j move workspace to output down bindsym $mod+Alt+k move workspace to output up bindsym $mod+Alt+l move workspace to output right # Don't wrap around when moving between windows focus_wrapping no bindsym $mod+b splith bindsym $mod+v splitv bindsym $mod+f fullscreen bindsym $mod+space floating toggle bindsym $mod+Shift+space focus mode_toggle bindsym $mod+s sticky toggle bindsym $mod+a focus parent bindgesture pinch:3:outward focus parent bindsym $mod+c layout toggle split tabbed stacking bindsym $mod+Shift+b border toggle bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show # Media bindsym --locked XF86AudioRaiseVolume exec ~/.config/sway/volume.sh i bindsym --locked XF86AudioLowerVolume exec ~/.config/sway/volume.sh d bindsym --locked XF86AudioMute exec ~/.config/sway/volume.sh t bindsym --locked XF86AudioPlay exec ~/.config/sway/media.sh play-pause bindsym --locked XF86AudioNext exec ~/.config/sway/media.sh next bindsym --locked XF86AudioPrev exec ~/.config/sway/media.sh previous # Brightness bindsym --locked XF86MonBrightnessUp exec ~/.config/sway/brightness.sh +1% bindsym --locked XF86MonBrightnessDown exec ~/.config/sway/brightness.sh 1%- # Screenshots # bindsym print exec grimshot save output - | satty --send-to-daemon --filename - --fullscreen --output-filename ~/pictures/screenshots/satty-$(date '+%Y%m%d-%H:%M:%S').png bindsym print exec grimshot copy area bindsym Shift+print exec grimshot copy output bindsym Control+print exec grimshot copy active bindsym $mod+n exec ~/dev/other/wooz/build/wooz bindsym $mod+x exec wayscriber -a bindsym $mod+z exec ~/dev/personal/zoomer/build/zoomer # Presentation bindsym $mod+print exec wl-present mirror bindsym $mod+shift+print exec wl-present toggle-freeze # Nested compositors bindsym $mod+g mode inhibited mode inhibited { bindsym $mod+g mode default } ### Looks set $fg #c0caf5 set $bg #1a1b26 set $subbg #1f2335 set $red #f7768e set $green #9ece6a set $yellow #e0af68 set $orange #ff9e64 set $blue #7aa2f7 set $magenta #bb9af7 set $cyan #7dcfff set $comment #565f89 default_border pixel 2 default_floating_border pixel 2 client.focused $cyan $cyan $bg $orange client.focused_tab_title $blue $blue $bg $orange client.unfocused $comment $comment $bg client.urgent $red $red $bg font Inter Medium 9 title_align center smart_borders no_gaps ### Input input type:keyboard { repeat_delay 300 repeat_rate 40 xkb_layout us,ru } input type:pointer { scroll_button BTN_MIDDLE scroll_method on_button_down } bindsym --locked $mod+Backspace input type:keyboard xkb_switch_layout next ### Bar bar swaybar_command waybar ### Rules for_window [class="^.*"] inhibit_idle fullscreen for_window [app_id="^.*"] inhibit_idle fullscreen for_window [title="File Operation Progress"] floating enable for_window [app_id="(alacritty|foot)\.floating"] { floating enable resize set width 60ppt resize set height 80ppt } for_window [app_id="com.obsproject.Studio"] inhibit_idle open for_window [title="xeyes"] floating enable for_window [app_id="org.speedcrunch.SpeedCrunch"] { floating enable sticky enable move scratchpad scratchpad show } for_window [app_id="org.qutebrowser.qutebrowser"] inhibit_idle fullscreen for_window [app_id="qemu"] inhibit_idle open assign [app_id="factorio"] workspace 3 assign [app_id="factorio-run"] workspace 3 assign [class="factorio"] workspace 3 for_window [app_id="osu!"] allow_tearing yes for_window [app_id="org.keepassxc.KeePassXC"] floating enable ### Autostart exec blueman-applet exec flatpak run org.fkoehler.KTailctl exec mako exec nm-applet exec keepassxc --minimized # exec satty --daemon --early-exit exec swayidle exec wlsunset ### Other seat seat0 xcursor_theme Bibata-Modern-Ice 24 include "~/.config/sway/`uname -n`" include /etc/sway/config.d/*