# # Replicate some of Awesome's default layout manipulation configuration for Sway # # Differences: # - Layout switching doesn't use the spacebar (i.e. i3/Sway behavior to switch to/from floating windows) # and uses the 'A' key instead (as in auto) # - Resizing windows uses i3/Sway's more versatile Mod4+r # - no tags # - no Maximize/Minize, alternatives to Maximize would be to switch to Stacked/Tabbed layouts # via Mod4+w or Mod4+s. # - kill focused client is available on Mod4+Shift+q (instead of Mod4+Shift+c, which maps to Sway's # config reload) # - probably many more ... # Awesome-style container traversal using Vim-like binding set $next j set $prev k # # Moving around: # # Move your focus around bindsym $mod+$next focus next bindsym $mod+$prev focus prev # _move_ the focused window with the same, but add Shift bindsym $mod+Shift+$next move next bindsym $mod+Shift+$prev move prev # # Layout: # workspace_layout auto left # This is usually bound to $mod+space, but this works well in practice by keeping # all the layout switching keys grouped together. bindsym $mod+a layout auto next bindsym $mod+Shift+a layout auto prev # Promote a child to master position in an auto layout bindsym $mod+Control+Return move first # Increase/decrease number of master elements in auto layout bindsym $mod+Shift+h layout auto master inc 1 bindsym $mod+Shift+l layout auto master inc -1 # Increase/decrease number of slave element groups in auto layout bindsym $mod+Control+h layout auto ncol inc 1 bindsym $mod+Control+l layout auto ncol inc -1 # # Resizing containers: # Again, not really the way Awesome works well, but in spirit with i3/Sway and it works well. # mode "resize" { bindsym Left resize shrink width 20 px bindsym Down resize grow height 20 px bindsym Up resize shrink height 20 px bindsym Right resize grow width 20 px } bindsym $mod+r mode "resize" new_window pixel 1