set $mod Mod4 set $ws1 "1 Browser" set $ws2 "2  Code" set $ws3 "3  Code" set $ws4 "4" set $ws5 "5" set $ws6 "6" set $ws7 "7" set $ws8 "8💬Social" set $ws9 "9🎵Music" set $ws10 "10🍿Media" workspace $ws1 output DP-1 workspace $ws2 output DP-1 workspace $ws3 output DP-1 workspace $ws9 output HDMI-A-1 workspace $ws10 output HDMI-A-1 workspace hide1 output DP-1 workspace hide2 output HDMI-A-1 # Hide cursor seat seat0 hide_cursor 300 input * { xkb_layout "us,ru" xkb_options "grp:win_space_toggle" xkb_options caps:ctrl_modifier xkb_model "pc101" repeat_delay 250 repeat_rate 100 } set $font_size 11 font xft:FiraCode $font_size floating_modifier $mod focus_follows_mouse no mouse_warping none popup_during_fullscreen smart smart_borders on # kill focused window for_window [tiling] border pixel 3 for_window [title="Picture-in-Picture"] sticky enable for_window [title="Picture-in-Picture"] border pixel 0 no_focus [title="^Peek preview$"] no_focus [class="feh"] bar { position bottom status_command i3blocks } # Bindings bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +10% bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -10% bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle bindsym XF86AudioPlay exec playerctl play-pause bindsym XF86AudioPause exec playerctl play-pause bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86MonBrightnessUp exec xbacklight -inc 20 bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # bindsym $mod+p exec pomodoro toggle bindsym $mod+z exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 0 ## Hold to talk bindsym --release $mod+z exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 1 ## Release to mute bindsym $mod+Shift+z exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle bindsym XF86PickupPhone exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 0 ## Hold to talk bindsym --release XF86PickupPhone exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 1 ## Release to mute bindsym XF86Go exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 0 ## Hold to talk, x1carb11 bindsym --release XF86Go exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ 1 ## Release to mute, x1carb11 bindsym $mod+XF86AudioMicMute exec --no-startup-id pactl list short sources | awk '/input.*RUNNING/ {system("pactl set-source-mute " $1 " toggle")}' ## Find and mute mics bindsym $mod+Return exec alacritty bindsym $mod+Shift+q kill bindsym $mod+Shift+r reload set $menu rofi -show drun -m -1 bindsym --to-code $mod+d exec $menu # bindsym $mod+i exec --no-startup-id i3_switch_workspace.sh # bindsym $mod+o exec --no-startup-id slm_rofi.sh # Change focus bindsym $mod+h focus left bindsym $mod+j focus down bindsym $mod+k focus up bindsym $mod+l focus right bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # Move focused window bindsym $mod+Shift+h move left bindsym $mod+Shift+j move down bindsym $mod+Shift+k move up bindsym $mod+Shift+l 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+Ctrl+Shift+l move workspace to output right bindsym $mod+Ctrl+Shift+h move workspace to output left bindsym $mod+Ctrl+Shift+k move workspace to output up bindsym $mod+Ctrl+Shift+j move workspace to output down bindsym $mod+f fullscreen toggle bindsym $mod+t layout tabbed bindsym $mod+v layout toggle split bindsym $mod+a focus parent bindsym $mod+Shift+slash floating toggle bindsym $mod+Shift+comma sticky toggle bindsym Print exec --no-startup-id screenshot select copy bindsym $mod+Print exec --no-startup-id screenshot window copy bindsym Ctrl+Print exec --no-startup-id screenshot entire copy bindsym Shift+Print exec --no-startup-id screenshot select save bindsym Shift+$mod+Print exec --no-startup-id screenshot window save bindsym Shift+Ctrl+Print exec --no-startup-id screenshot entire save # bindsym $mod+s exec --no-startup-id i3_swap_workspaces bindsym $mod+q exec --no-startup-id i3-msg workspace hide1; workspace hide2 set $exitmode "Power: [e]xit, [r]eboot, [s]hutdown, s[u]spend, [l]ock, [b]lack" mode $exitmode { bindsym e exit bindsym r exec reboot bindsym s exec shutdown -h now bindsym u exec systemctl suspend; mode "default" bindsym l exec $i3lock_cmd; mode "default" bindsym b exec magick canvas:none PNG:- | feh -YFx -; mode "default" bindsym Escape mode "default" bindsym Return mode "default" } bindsym $mod+x mode $exitmode # switch to workspace bindsym $mod+1 workspace number $ws1 bindsym $mod+2 workspace number $ws2 bindsym $mod+3 workspace number $ws3 bindsym $mod+4 workspace number $ws4 bindsym $mod+5 workspace number $ws5 bindsym $mod+6 workspace number $ws6 bindsym $mod+7 workspace number $ws7 bindsym $mod+8 workspace number $ws8 bindsym $mod+9 workspace number $ws9 bindsym $mod+0 workspace number $ws10 # move focused container to workspace bindsym $mod+Shift+1 move container to workspace number $ws1 bindsym $mod+Shift+2 move container to workspace number $ws2 bindsym $mod+Shift+3 move container to workspace number $ws3 bindsym $mod+Shift+4 move container to workspace number $ws4 bindsym $mod+Shift+5 move container to workspace number $ws5 bindsym $mod+Shift+6 move container to workspace number $ws6 bindsym $mod+Shift+7 move container to workspace number $ws7 bindsym $mod+Shift+8 move container to workspace number $ws8 bindsym $mod+Shift+9 move container to workspace number $ws9 bindsym $mod+Shift+0 move container to workspace number $ws10 bindsym $mod+u workspace prev bindsym $mod+Shift+u workspace next # workspace_auto_back_and_forth no bindsym $mod+Tab workspace back_and_forth # resize window (you can also use the mouse for that) bindsym $mod+r mode "resize" mode "resize" { bindsym h resize shrink width 10 px or 10 ppt bindsym j resize grow height 10 px or 10 ppt bindsym k resize shrink height 10 px or 10 ppt bindsym l resize grow width 10 px or 10 ppt bindsym $mod+r mode "default" bindsym p mode "resize_precise" bindsym Return mode "default" bindsym Escape mode "default" } mode "resize_precise" { bindsym h resize shrink width 1 px or 1 ppt bindsym j resize grow height 1 px or 1 ppt bindsym k resize shrink height 1 px or 1 ppt bindsym l resize grow width 1 px or 1 ppt bindsym $mod+r mode "default" bindsym p mode "resize" bindsym Return mode "default" bindsym Escape mode "default" } # Change focus between tiling / floating windows bindsym $mod+slash focus mode_toggle # Screen layout # exec --no-startup-id ~/.screenlayout/default exec swayidle -w \ timeout 1800 'swaylock -f' \ timeout 1805 'swaymsg "output * power off"' \ resume 'swaymsg "output * power on"' # Notifications #systemctl --user enable --now dbus.service exec --no-startup-id dunst # Wallpapers # exec --no-startup-id nitrogen --restore; sleep 1; picom -b --config ~/.config/picom/picom.conf # exec --no-startup-id hsetroot # exec --no-startup-id feh --randomize --no-fehbg --bg-scale $HOME/.wallpaper/* include ~/.config/sway/config.d/*.conf