set $mod Mod4 set $left h set $down j set $up k set $right l set $term alacritty for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt set $menu exec $term --option window.opacity=1 --class=launcher -e env zsh -c "source ~/.profile && /usr/bin/sway-launcher-desktop" set $filemgr nemo output * bg ~/Pictures/bg/bg.png fill input type:keyboard { xkb_layout us,ru xkb_options grp:win_space_toggle xkb_variant "mac,mac" } input type:touchpad { tap enabled natural_scroll enabled } bar swaybar_command waybar xwayland enable default_border pixel 1 gaps inner 8 font "JetBrains Mono" 9 output * scale 2 include ~/.config/sway/themes/catppuccin-macchiato # Start components exec mako exec poweralertd exec swayidle -w timeout 60 '$HOME/.config/sway/lock.sh' # Screenshots set $screenshot_file \"$HOME/Pictures/screenshot-$(date '+%Y-%m-%d_%H-%M-%S').png\" bindsym $mod+o exec grim $screenshot_file bindsym $mod+p exec (slurp | grim -g- $screenshot_file) # Recordings set $rec_file \"$HOME/Videos/recording-$(date '+%Y-%m-%d_%H-%M-%S').mp4\" bindsym $mod+Shift+o exec wf-recorder --file $rec_file bindsym $mod+Shift+p exec (wf-recorder -g "$(slurp)" --file $rec_file) bindsym $mod+Shift+BackSpace exec killall -s SIGINT wf-recorder # Symbols bind bindsym $mod+Return exec $term bindsym $mod+Shift+f exec $filemgr bindsym $mod+Shift+q kill bindsym $mod+d exec $menu floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -f 'JetBrains Mono 9' -e bottom -t warning -m "What would you like to do?" -B 'Exit sway' 'swaymsg exit' -B 'Power off' 'systemctl poweroff' -B 'Reboot' 'systemctl reboot' -B 'Lock screen' '$HOME/.config/sway/lock.sh' bindsym $mod+$left focus left bindsym $mod+$down focus down bindsym $mod+$up focus up bindsym $mod+$right focus right bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right bindsym $mod+Shift+$left move left bindsym $mod+Shift+$down move down bindsym $mod+Shift+$up move up bindsym $mod+Shift+$right move right bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right bindsym $mod+Next workspace next bindsym $mod+Prior workspace prev bindsym $mod+1 workspace number 1 bindsym $mod+2 workspace number 2 bindsym $mod+3 workspace number 3 bindsym $mod+4 workspace number 4 bindsym $mod+5 workspace number 5 bindsym $mod+6 workspace number 6 bindsym $mod+7 workspace number 7 bindsym $mod+8 workspace number 8 bindsym $mod+9 workspace number 9 bindsym $mod+0 workspace number 10 bindsym $mod+Shift+1 move container to workspace number 1 bindsym $mod+Shift+2 move container to workspace number 2 bindsym $mod+Shift+3 move container to workspace number 3 bindsym $mod+Shift+4 move container to workspace number 4 bindsym $mod+Shift+5 move container to workspace number 5 bindsym $mod+Shift+6 move container to workspace number 6 bindsym $mod+Shift+7 move container to workspace number 7 bindsym $mod+Shift+8 move container to workspace number 8 bindsym $mod+Shift+9 move container to workspace number 9 bindsym $mod+Shift+0 move container to workspace number 10 bindsym $mod+b splith bindsym $mod+v splitv bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split bindsym $mod+f fullscreen bindsym $mod+Shift+space floating toggle bindsym $mod+space focus mode_toggle bindsym $mod+a focus parent bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show mode "resize" { bindsym $left resize shrink width 10px bindsym $down resize grow height 10px bindsym $up resize shrink height 10px bindsym $right resize grow width 10px bindsym Left resize shrink width 10px bindsym Down resize grow height 10px bindsym Up resize shrink height 10px bindsym Right resize grow width 10px bindsym Return mode "default" bindsym Escape mode "default" } bindsym $mod+r mode "resize" # Multimedia buttons bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +1% bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -1% bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle bindsym XF86MonBrightnessDown exec brightnessctl set 2%- bindsym XF86MonBrightnessUp exec brightnessctl set 2%+ bindsym $mod+XF86MonBrightnessDown exec brightnessctl -d kbd_backlight set 2%- bindsym $mod+XF86MonBrightnessUp exec brightnessctl -d kbd_backlight set 2%+ bindsym XF86AudioPlay exec playerctl play-pause bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86Search exec $menu # Trackpad gestures bindgesture swipe:3:right workspace next bindgesture swipe:3:left workspace prev bindgesture swipe:4:up move up bindgesture swipe:4:down move down bindgesture swipe:4:left move left bindgesture swipe:4:right move right bindgesture pinch:4:inward exec $menu # launchpad like # Floating for_window [app_id="pavucontrol"] floating enable, resize 600 300, move absolute position 25ppt 25ppt for_window [app_id="iwgtk"] floating enable, resize 300 150, move absolute position 25ppt 25ppt # Autostart exec alacritty --class bottom -e btm for_window [app_id="bottom"] move container to workspace number 10 for_window [app_id="bottom"] fullscreen exec keepassxc for_window [class="KeePassXC"] move container to workspace 9