ReferenceUpdated with the current release

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 + 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. Existing systems with the former stock web-app binding receive the same native-first behavior through the updated webapp-launch helper. Upgrades do not edit customized hotkey files.

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 (monocle)
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

Entering floating mode with a toggle shrinks a tiled window by 15% around its current center, subject to the application’s minimum size and resize increments. Toggle again to return it to the tiling layout. Super + F applies the same shrink to each visible tiled window when entering floating layout; Super + T retiles them. Pressing Super + F again leaves their sizes unchanged. Windows already floated individually keep their size and position. Mouse dragging and resizing keep their existing behavior. Existing hotkey configuration needs no changes; restart the dwm session after updating to activate this behavior.

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 Quit dwm and cleanly end the graphical session
Super + Ctrl + Shift + R Reboot
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.