aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--samples/awesome-like.config63
1 files changed, 63 insertions, 0 deletions
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