156 lines
5.5 KiB
Text
156 lines
5.5 KiB
Text
### Variables
|
|
set $mod Mod4
|
|
set $left n
|
|
set $down r
|
|
set $up t
|
|
set $right d
|
|
set $term termite
|
|
set $menu rofi -show combi -show-icons | xargs swaymsg exec
|
|
set $locker swaylock -f -s center -i "/home/oliver/Bilder/Wallpapers/the\ neon\ demon.png"
|
|
|
|
### Font
|
|
font pango:DejaVu Sans Mono 9
|
|
|
|
|
|
### Key bindings
|
|
# Basics
|
|
bindsym $mod+Return exec $term
|
|
bindsym $mod+Shift+x kill
|
|
bindsym $mod+a exec $menu
|
|
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'
|
|
floating_modifier $mod normal
|
|
# Moving around
|
|
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
|
|
# Switch to workspace
|
|
bindsym $mod+1 workspace 1
|
|
bindsym $mod+2 workspace 2
|
|
bindsym $mod+3 workspace 3
|
|
bindsym $mod+4 workspace 4
|
|
bindsym $mod+5 workspace 5
|
|
bindsym $mod+6 workspace 6
|
|
bindsym $mod+7 workspace 7
|
|
bindsym $mod+8 workspace 8
|
|
bindsym $mod+9 workspace 9
|
|
bindsym $mod+0 workspace 10
|
|
bindsym $mod+mod3+m workspace 1
|
|
bindsym $mod+mod3+comma workspace 2
|
|
bindsym $mod+mod3+period workspace 3
|
|
bindsym $mod+mod3+n workspace 4
|
|
bindsym $mod+mod3+r workspace 5
|
|
bindsym $mod+mod3+t workspace 6
|
|
bindsym $mod+mod3+h workspace 7
|
|
bindsym $mod+mod3+g workspace 8
|
|
bindsym $mod+mod3+f workspace 9
|
|
bindsym $mod+mod3+space workspace 10
|
|
# Move focused container to workspace
|
|
bindsym $mod+Shift+1 move container to workspace 1
|
|
bindsym $mod+Shift+2 move container to workspace 2
|
|
bindsym $mod+Shift+3 move container to workspace 3
|
|
bindsym $mod+Shift+4 move container to workspace 4
|
|
bindsym $mod+Shift+5 move container to workspace 5
|
|
bindsym $mod+Shift+6 move container to workspace 6
|
|
bindsym $mod+Shift+7 move container to workspace 7
|
|
bindsym $mod+Shift+8 move container to workspace 8
|
|
bindsym $mod+Shift+9 move container to workspace 9
|
|
bindsym $mod+Shift+0 move container to workspace 10
|
|
bindsym $mod+Shift+mod3+m move container to workspace 1
|
|
bindsym $mod+Shift+mod3+comma move container to workspace 2
|
|
bindsym $mod+Shift+mod3+period move container to workspace 3
|
|
bindsym $mod+Shift+mod3+n move container to workspace 4
|
|
bindsym $mod+Shift+mod3+r move container to workspace 5
|
|
bindsym $mod+Shift+mod3+t move container to workspace 6
|
|
bindsym $mod+Shift+mod3+h move container to workspace 7
|
|
bindsym $mod+Shift+mod3+g move container to workspace 8
|
|
bindsym $mod+Shift+mod3+f move container to workspace 9
|
|
bindsym $mod+Shift+mod3+space move container to workspace 10
|
|
# Multiple monitors
|
|
bindsym $mod+Shift+H move workspace to output left
|
|
bindsym $mod+Shift+G move container to output left
|
|
bindsym $mod+Shift+F move container to output right
|
|
bindsym $mod+Shift+Q move workspace to output right
|
|
# Layout stuff
|
|
bindsym $mod+s splith
|
|
bindsym $mod+o splitv
|
|
bindsym $mod+i layout stacking
|
|
bindsym $mod+v layout tabbed
|
|
bindsym $mod+l layout toggle split
|
|
# Make the current focus fullscreen
|
|
bindsym $mod+e fullscreen
|
|
# Toggle the current focus between tiling and floating mode
|
|
bindsym $mod+Shift+space floating toggle
|
|
# Swap focus between the tiling area and the floating area
|
|
bindsym $mod+space focus mode_toggle
|
|
# move focus to the parent container
|
|
bindsym $mod+u focus parent
|
|
# Scratchpad
|
|
bindsym $mod+Shift+minus move scratchpad
|
|
bindsym $mod+minus scratchpad show
|
|
|
|
# Resizing containers
|
|
mode "resize" {
|
|
bindsym $left resize shrink width 80px
|
|
bindsym Shift+$left resize shrink width 20px
|
|
bindsym $down resize grow height 80px
|
|
bindsym Shift+$down resize grow height 20px
|
|
bindsym $up resize shrink height 80px
|
|
bindsym Shift+$up resize shrink height 20px
|
|
bindsym $right resize grow width 80px
|
|
bindsym Shift+$right resize grow width 20px
|
|
bindsym Left resize shrink width 80px
|
|
bindsym Down resize grow height 80px
|
|
bindsym Up resize shrink height 80px
|
|
bindsym Right resize grow width 80px
|
|
bindsym Return mode "default"
|
|
bindsym Escape mode "default"
|
|
}
|
|
bindsym $mod+c mode "resize"
|
|
|
|
# Status Bar
|
|
bar {
|
|
position top
|
|
font pango:DejaVu Sans Mono 10
|
|
status_command i3blocks
|
|
}
|
|
|
|
# Shutdown, reboot, lock srceen
|
|
set $mode_system System (b) blank, (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
|
|
mode "$mode_system" {
|
|
bindsym b exec sleep 1 && killall -s SIGUSR1 swayidle, mode "default"
|
|
bindsym l exec '$locker', mode "default"
|
|
bindsym 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', mode "default"
|
|
bindsym s exec '$locker && systemctl suspend', mode "default"
|
|
bindsym h exec '$locker && systemctl hibernate', mode "default"
|
|
bindsym r exec systemctl reboot, mode "default"
|
|
bindsym Shift+s exec systemctl poweroff -i, mode "default"
|
|
bindsym Return mode "default"
|
|
bindsym mod3+Return mode "default"
|
|
bindsym Escape mode "default"
|
|
bindsym mod3+Escape mode "default"
|
|
}
|
|
bindsym $mod+Shift+P mode "$mode_system"
|
|
|
|
# Systemd environment
|
|
exec systemctl --user import-environment
|
|
exec systemctl --user start sway-session.target
|
|
|
|
# Device specific configuration
|
|
include device
|
|
|
|
# Global configuration
|
|
include /etc/sway/config.d/*
|