Keybindings
Press Super + / inside dwm to open a live, searchable Quickshell keybind viewer.
MODKEY = Super (Windows key) in the shipped config.h.
Bindings are defined in config/hotkeys.toml and reload instantly on save — no recompile needed.
Launchers
| Keys | Action |
|---|---|
Super + R | App launcher (Quickshell) |
Super + O | Window overview: every window on every tag (Getting Started) |
Super + X | Alacritty terminal |
Super + E | File manager |
Super + B | Browser |
Super + / | Keybind viewer |
Super + F1 | Control Center |
Super + Shift + R | Restart Quickshell |
Screenshots
| Keys | Action |
|---|---|
Super + P | Screenshot active monitor (cursor omitted) |
Super + Shift + P | Screenshot selection → file |
Super + Ctrl + P | Screenshot selection → clipboard |
All dwm-screenshot capture modes omit the mouse cursor.
maim region captures start selection immediately without a monitor chooser.
The active-monitor shortcut uses the monitor under the pointer. Clipboard
captures are PNG selections owned by xclip, while captures saved to disk use
JPEG. The lightweight capture flow intentionally has no annotation toolbar.
Applications and Web Apps
| Keys | Action |
|---|---|
Super + A | ChatGPT |
Super + Shift + A | Gemini |
Super + Shift + X | X/Twitter — new post |
Super + A opens an installed ChatGPT desktop application when one is
available and falls back to the ChatGPT web app otherwise. The application
launcher hides the ChatGPT web entry while a native desktop entry is installed.
Window Management
| Keys | Action |
|---|---|
Super + J | Focus next window |
Super + K | Focus previous window |
Super + Shift + J | Move window down in stack |
Super + Shift + K | Move window up in stack |
Super + Return | Promote window to master |
Super + Q | Close window |
Super + I | Add window to master area |
Super + D | Remove window from master area |
Super + H | Shrink master area |
Super + L | Expand master area |
Super + Shift + H | Increase window cfact size |
Super + Shift + L | Decrease window cfact size |
Super + Shift + O | Reset window cfact |
Layouts
| Keys | Action |
|---|---|
Super + T | Tiling layout |
Super + F | Floating layout |
Super + M | Fullscreen the focused window (not a layout) |
Super + Space | Toggle floating for window |
Super + Shift + M | Toggle floating for window |
Super + Shift + Y | Fake fullscreen (bar stays) |
Super + Shift + B | Toggle bar visibility |
The monocle layout (one window at a time, the bar visible) has no default key: choose it in the Control Center’s Window layout row.
Floating a tiled window with Super + Space (or Super + Shift + M, or
Super + Middle click) pops it out of its tile at 85 percent of the tile’s
size, centered on it and kept inside the work area, so the change is visible.
A window whose minimum size is larger than the work area keeps that size,
starting at the work area’s top-left corner and extending past it. Toggle
again to return it to the tile. Super + F applies the same shrink to
each visible tiled window when it switches to the floating layout, including
from monocle, and Super + T retiles them. Choosing the floating layout
again leaves the sizes alone, and windows already floated individually keep
their size and position. Fixed-size windows are never resized. Mouse dragging
and resizing keep the geometry they start from.
Tags (Workspaces)
| Keys | Action |
|---|---|
Super + 1–9 | Switch to tag |
Super + Ctrl + 1–9 | Also show tag alongside current |
Super + Shift + 1–9 | Move window to tag |
Super + Ctrl + Shift + 1–9 | Also show window on that tag |
Super + 0 | Show windows from all nine tags; 0 is not a tag |
Super + Tab | Previous tag |
Multi-Monitor
| Keys | Action |
|---|---|
Super + , | Focus left monitor |
Super + . | Focus right monitor |
Super + Shift + , | Send window to left monitor |
Super + Shift + . | Send window to right monitor |
Media Keys
| Keys | Action |
|---|---|
XF86AudioRaiseVolume | Volume up |
XF86AudioLowerVolume | Volume down |
XF86AudioMute | Mute toggle |
XF86MonBrightnessUp | Brightness up |
XF86MonBrightnessDown | Brightness down |
Session & Power
| Keys | Action |
|---|---|
Super + Ctrl + Q | Power menu |
Super + Shift + Q | Log out: opens the power menu at its confirmation |
Super + Ctrl + Shift + Q | Quit dwm at once, without asking; for when the shell is not running |
Super + Ctrl + Shift + R | Reboot: opens the power menu at its confirmation |
Super + Ctrl + Shift + S | Suspend |
Mouse
| Action | Function |
|---|---|
Super + Left drag | Move window |
Super + Middle click | Toggle floating |
Super + Right drag | Resize window |
Customizing Keybinds
Edit config/hotkeys.toml — changes take effect on save, no recompile required.
[vars]
terminal = "alacritty"
keys = [
{ mod="SUPER SHIFT", key="f", desc="Firefox", func="spawn", exec=["firefox"] },
]
See the comments in hotkeys.toml for a full list of func values and modifier syntax.
The browser binding uses dwm-default-apps open. Configure it with
Settings -> Defaults or with dwm-default-apps browsers and
dwm-default-apps set-browser <desktop-id>.
The terminal variable defaults to Alacritty. Settings -> Defaults can select a
validated installed terminal without changing the Super+X key record. To
use the optional Herdr workspace, install it explicitly, change the binding to
dwm-terminal, and set DWM_HERDR=1 in the session environment.