dotfiles/env/.config/sway/config

262 lines
7.7 KiB
Plaintext

# Default config for sway
#
# Copy this to ~/.config/sway/config and edit it to your liking.
#
# Read `man 5 sway` for a complete reference.
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
exec ~/.local/bin/system/start-scripts/autostart.sh
### Variables
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
# Home row direction keys, like vim
set $left h
set $down j
set $up k
set $right l
# Your preferred terminal emulator
set $term wezterm
set $term2 urxvt
# Your preferred application launcher
set $menu rofi -show drun
### Output configuration
output "HDMI-A-1" scale 0.7
output "DP-1" scale 0.7
workspace 1 output HDMI-A-1
workspace 2 output HDMI-A-1
workspace 3 output HDMI-A-1
workspace 4 output HDMI-A-1
workspace 5 output HDMI-A-1
workspace 6 output HDMI-A-1
workspace 7 output HDMI-A-1
workspace 8 output HDMI-A-1
workspace 9 output HDMI-A-1
workspace 10 output HDMI-A-1
workspace 11 output DP-1
workspace 12 output DP-1
workspace 13 output DP-1
workspace 14 output DP-1
workspace 15 output DP-1
workspace 16 output DP-1
workspace 17 output DP-1
workspace 18 output DP-1
workspace 19 output DP-1
workspace 20 output DP-1
# or input <identifier>
input "type:keyboard" {
xkb_layout us,de
xkb_variant ,nodeadkeys
xkb_options caps:swapescape
}
#
# Basics:
#
bindsym $mod+Return exec $term
bindsym $mod+Shift+Return exec $term2
bindsym $mod+q kill
bindsym $mod+d exec $menu
bindsym $mod+SHIFT+D exec $HOME/.local/bin/system/rofi-search-web.sh
floating_modifier $mod normal
#toggle border
bindsym $mod+Shift+b border toggle
# Reload the configuration file
bindsym $mod+Shift+r reload
# Exit sway (logs you out of your Wayland session)
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'
bindsym $mod+Escape exec grim -g "$(slurp -b 00000088 -c cba6f7; sleep 0.5)" - | wl-copy
bindsym $mod+Print exec grim -g "$(slurp -b 00000088 -c cba6f7; sleep 0.5)" - > ~/out.png
bindsym $mod+Shift+Escape exec grim -o HDMI-A-1 - | wl-copy
#
# Moving around:
#
# Move your focus around
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
#
# Workspaces:
#
# cycle
bindsym $mod+n workspace next
bindsym $mod+b workspace prev
# Switch to workspace
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
# Move focused container to workspace
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
# Note: workspaces can have any name you want, not just numbers.
# We just use 1-10 as the default.
mode "mon2" {
bindsym $mod+1 workspace number 11
bindsym $mod+2 workspace number 12
bindsym $mod+3 workspace number 13
bindsym $mod+4 workspace number 14
bindsym $mod+5 workspace number 15
bindsym $mod+6 workspace number 16
bindsym $mod+7 workspace number 17
bindsym $mod+8 workspace number 18
bindsym $mod+9 workspace number 19
bindsym $mod+0 workspace number 20
bindsym $mod+Shift+1 move container to workspace number 11
bindsym $mod+Shift+2 move container to workspace number 12
bindsym $mod+Shift+3 move container to workspace number 13
bindsym $mod+Shift+4 move container to workspace number 14
bindsym $mod+Shift+5 move container to workspace number 15
bindsym $mod+Shift+6 move container to workspace number 16
bindsym $mod+Shift+7 move container to workspace number 17
bindsym $mod+Shift+8 move container to workspace number 18
bindsym $mod+Shift+9 move container to workspace number 19
bindsym $mod+Shift+0 move container to workspace number 20
bindsym $mod+o mode "default"
}
bindsym $mod+o mode "mon2"
#
# Layout stuff:
#
bindsym $mod+Control+l splith
bindsym $mod+Control+j splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+Shift+space focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent
#
# Scratchpad:
#
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show
#
# Resizing containers:
#
mode "resize" {
bindsym $left resize shrink width 20px
bindsym $down resize grow height 20px
bindsym $up resize shrink height 20px
bindsym $right resize grow width 20px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#
# Utilities:
#
# Special keys to adjust volume via PulseAudio
bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
# Special keys to adjust brightness via brightnessctl
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
# Special key to take a screenshot with grim
bindsym Print exec grim
client.focused #8568e6 #222222 #8568e6 #e598ff #8568e6
client.unfocused #222222 #222222 #8568e6 #e598ff #222222
gaps inner 8
# Gajim
for_window [title="Gajim"] \
floating enable, \
border pixel, \
move to workspace 11, \
resize set 1200 800, \
move position 700 0
# Vesktop
for_window [class="vesktop"] \
floating enable, \
border none, \
move to workspace 11, \
resize set 1800 1000, \
move position 0 0
# discord
for_window [app_id="discord"] \
floating enable, \
border none, \
move to workspace 11, \
resize set 1500 900, \
move position 0 0
# Mumble
for_window [title="Mumble"] \
floating enable, \
border pixel, \
move to workspace 11, \
resize set 1000 800, \
move position 900 230
# Steam Friends List
#for_window [title="Friends List"] \
# floating enable, \
# resize set 1000 1000, \
# move position 0 0
for_window [app_id="showmethekey-gtk"] \
floating enable, \
sticky enable, \
border none, \
move position 257 1664, \
resize set 1487 50, \
# im-emoji-picker window
no_focus [title="im-emoji-picker"]