From 5c40cc46ac0160ac870ec926e2285824cad0dd9c Mon Sep 17 00:00:00 2001 From: wil Date: Sat, 14 Jan 2017 19:37:35 +0100 Subject: [PATCH] Added a sample config for Awesome-like behavior --- samples/awesome-like.config | 63 +++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 samples/awesome-like.config diff --git a/samples/awesome-like.config b/samples/awesome-like.config new file mode 100644 index 00000000..41e17c91 --- /dev/null +++ b/samples/awesome-like.config @@ -0,0 +1,63 @@ +# +# 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