dotfiles/system/.config/sway/config
Severin Kaderli 7e11ded7f6
Add more rules for floating windows
Signed-off-by: Severin Kaderli <severin@kaderli.dev>
2022-05-09 22:02:40 +02:00

193 lines
5 KiB
Text

# Default config for sway
#
# Copy this to ~/.config/sway/config and edit it to your liking.
#
# Read `man 5 sway` for a complete reference.
### Variables
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
set $SUPER Mod4
set $ALT Mod1
### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
output * bg /home/severin/dotfiles/assets/wallpaper.odin.jpg fill
gaps inner 10
gaps outer -10
# Disable Title bars
default_border pixel 0
input "1452:591:AONE_Varmilo_Keyboard" {
xkb_model "pc105"
xkb_layout "ch"
}
# Start a terminal
bindsym $SUPER+Return exec kitty
# Kill focused window
bindsym $SUPER+Shift+Q kill
bindsym Print exec screenshot
floating_modifier $SUPER normal
# Reload the configuration file
bindsym $SUPER+Shift+C reload
bindsym $SUPER+R exec fuzzel
# Moving focus
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Moving windows
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# Moving workspaces to other displays
bindsym $SUPER+$ALT+Left move workspace to output left
bindsym $SUPER+$ALT+Right move workspace to output right
workspace 1 output HDMI-A-1
workspace 2 output HDMI-A-2
workspace 3 output HDMI-A-2
workspace 4 output HDMI-A-2
workspace 5 output HDMI-A-1
workspace 6 output HDMI-A-2
workspace 7 output HDMI-A-2
workspace 8 output HDMI-A-1
workspace 9 output HDMI-A-2
workspace 10 output HDMI-A-1
#
# Workspaces:
#
# 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.
#
# Layout stuff:
#
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+b splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $SUPER+T split toggle
# Make the current focus fullscreen
bindsym $SUPER+F11 fullscreen toggle
# Toggle the current focus between tiling and floating mode
bindsym $SUPER+S floating toggle
bindsym $SUPER+E exec dodge-jump
bindsym $SUPER+X mode "Resize"
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 Return mode "default"
bindsym Escape mode "default"
}
bar {
swaybar_command waybar
}
assign [class="Google-chrome-beta"] 1
assign [class="Chromium"] 1
assign [app_id="firefox"] 1
assign [class="firefox"] 1
assign [app_id="code-oss"] 3
assign [class="code-oss"] 3
assign [class="jetbrains-phpstorm"] 3
assign [class="Nemo"] 4
assign [app_id="thunar"] 4
assign [class="Thunar"] 4
assign [class="discord"] 5
assign [app_id="Element"] 5
assign [class="Element"] 5
assign [class="Steam"] 6
assign [app_id="lutris"] 6
assign [class="Lutris"] 6
assign [class="Joplin"] 7
assign [app_id="org.keepassxc.KeePassXC"] 8
assign [class="KeePassXC"] 8
assign [class="vlc"] 9
assign [app_id="mpv"] 9
assign [class="mpv"] 9
# Floating Windows
for_window [class="jetbrains-(.*)" title="win0"] floating enable
for_window [class="jetbrains-(.*)" title="Go to Line/Column"] floating enable
for_window [class="jetbrains-(.*)" title="Rename"] floating enable
for_window [class="jetbrains-(.*)" title="Open Project"] floating enable
for_window [class="jetbrains-(.*)" title="New File"] floating enable
for_window [class="jetbrains-(.*)" title="Delete"] floating enable
for_window [app_id="file-roller" title="Extract archive"] floating enableR
exec_always kanshi
exec_always nm-applet --indicator
# Dark Mode
exec_always gsettings set org.gnome.desktop.interface color-scheme prefer-dark
exec_always gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark'
exec dunst
exec kitty
exec nextcloud --background
exec firefox
exec discord
exec joplin-desktop
exec keepassxc
include /etc/sway/config.d/*