Layouts
Available window layouts and how to use them
OXWM supports multiple window layouts that can be cycled or set directly.
Available Layouts
Tiling
The default layout. Windows are arranged with a master area on the left and a stack on the right.
- Master window takes the left portion of the screen
- Stack windows split the right portion vertically
- Adjust master width with
Super+H/L - Adjust number of masters with
Super+I/P
oxwm.key.bind({ "Mod4" }, "C", oxwm.layout.set("tiling"))Normie (Floating)
All windows float by default. Move and resize freely with the mouse.
oxwm.key.bind({ "Mod4" }, "F", oxwm.layout.set("normie"))Monocle
Fullscreen stacking - one window visible at a time, filling the screen.
oxwm.key.bind({ "Mod4" }, "M", oxwm.layout.set("monocle"))Grid
Windows arranged in an equal-sized grid.
oxwm.key.bind({ "Mod4" }, "G", oxwm.layout.set("grid"))Tabbed
Windows in a tabbed container - tabs shown at the top.
oxwm.key.bind({ "Mod4" }, "T", oxwm.layout.set("tabbed"))Scrolling
Windows arranged in a horizontal row that can be scrolled. A set number of windows are visible at once, and you can scroll through to see more.
- Number of visible windows controlled by
num_master(default: 2) - All windows have equal width based on visible count
- Windows extend beyond the visible area and can be scrolled into view
oxwm.key.bind({ "Mod4" }, "S", oxwm.layout.set("scrolling"))Cycling Layouts
Cycle through all available layouts:
oxwm.key.bind({ "Mod4" }, "N", oxwm.layout.cycle())Master Area Controls
For the tiling layout:
-- Adjust master area width
oxwm.key.bind({ "Mod4" }, "H", oxwm.set_master_factor(-5))
oxwm.key.bind({ "Mod4" }, "L", oxwm.set_master_factor(5))
-- Adjust number of master windows
oxwm.key.bind({ "Mod4" }, "I", oxwm.inc_num_master(1))
oxwm.key.bind({ "Mod4" }, "P", oxwm.inc_num_master(-1))Layout Symbols
Customize how layouts appear in the status bar:
oxwm.set_layout_symbol("tiling", "[T]")
oxwm.set_layout_symbol("normie", "[F]")
oxwm.set_layout_symbol("monocle", "[M]")
oxwm.set_layout_symbol("grid", "[G]")
oxwm.set_layout_symbol("tabbed", "[=]")
oxwm.set_layout_symbol("scrolling", "[>>]")