mirror of
https://github.com/NickHu/sway
synced 2024-12-30 22:23:30 +01:00
64 lines
1.9 KiB
Text
64 lines
1.9 KiB
Text
|
#
|
||
|
# 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
|