dotfiles/configs/sway/config

171 lines
5.8 KiB
Text

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 && sway-launcher-desktop"
set $filemgr nemo
output * bg ~/Pictures/bg/yukari.png fill
input type:keyboard {
xkb_layout us,ru
xkb_options grp:win_space_toggle
xkb_variant "mac,mac"
}
input type:touchpad {
tap disabled
dwt disabled
natural_scroll enabled
}
input "1452:849:Apple_MTP_multi-touch" {
scroll_factor 0.25
accel_profile adaptive
pointer_accel 0.1
}
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
bar swaybar_command waybar
xwayland enable
default_border pixel 1
gaps inner 8
font "JetBrains Mono" 11
output * scale 1.666
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 Mod3+Shift+3 exec grim $screenshot_file
bindsym Mod3+Shift+4 exec (slurp | grim -g- $screenshot_file)
bindsym Mod3+Shift+5 exec (swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | "\(.rect.x+.window_rect.x),\(.rect.y+.window_rect.y) \(.window_rect.width)x\(.window_rect.height)"' | 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 -a --file $rec_file
bindsym $mod+Shift+p exec (wf-recorder -a -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+e exec $filemgr
bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu
floating_modifier $mod normal
bindsym $mod+Shift+c reload
bindsym $mod+Shift+Escape 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+f 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 wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+
bindsym XF86AudioLowerVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
bindsym XF86AudioMute exec wpctl set-mute @DEFAULT_AUDIO_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 prev
bindgesture swipe:3:left workspace next
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
# Lid binds
bindswitch lid:on exec $HOME/.config/sway/lock.sh
# Floating
for_window [app_id="pavucontrol"] floating enable, resize 600 300, move absolute position 25ppt 25ppt
for_window [app_id="nm-connection-editor"] floating enable, resize 300 150, move absolute position 25ppt 25ppt
# Autostart
exec alacritty --class btop -e btop
for_window [app_id="btop"] move container to workspace number 10