.TH DWM 1 dwm\-VERSION .SH NAME dwm \- dynamic window manager .SH SYNOPSIS .B dwm .RB [ \-v ] .SH DESCRIPTION dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. Either layout can be applied dynamically, optimising the environment for the application in use and the task performed. .P In tiled layouts windows are managed in a master and stacking area. The master area on the left contains one window by default, and the stacking area on the right contains all other windows. The number of master area windows can be adjusted from zero to an arbitrary number. Windows in both the master and stack can be resized vertically, as well as resizing the master area. In monocle layout all windows are maximised to the screen size. In floating layout windows can be resized and moved freely. Dialog windows are always managed floating, regardless of the layout applied. .P Windows are grouped by tags. Each window can be tagged with one or multiple tags. Selecting certain tags displays all windows with these tags. .P Each screen contains a small status bar which displays all available tags, the layout, the title of the focused window, and the text read from the root window name property, if the screen is focused. A floating window is indicated with an empty square and a maximised floating window is indicated with a filled square before the window's title. The selected tags are indicated with a different color. The focused window is represented by a long line before the tags which are applied to it, and all other windows are represented by dots for all their corresponding tags. .P The attach below patch makes newly spawned windows attach after the currently selected window .P dwm draws a small border around windows to indicate the focus state. .SH OPTIONS .TP .B \-v prints version information to stderr, then exits. .SH USAGE .SS Status bar .TP .B X root window name is read and displayed in the status text area. It can be set with the .BR xsetroot (1) command. .TP .B Button1 click on a tag label to display all windows with that tag, click on the layout label toggles between tiled and floating layout. .TP .B Button3 click on a tag label adds/removes all windows with that tag to/from the view. .TP .B Mod1\-Button1 click on a tag label applies that tag to the focused window. .TP .B Mod1\-Button3 click on a tag label adds/removes that tag to/from the focused window. .SS Keyboard commands .TP .B Mod1\-Return Start .BR tabbed(1) Running .BR st(1). .TP .B Mod1\-p Spawn passmenu. .TP .B Mod1\-d Spawn .BR dmenu(1) for launching other programs. .TP .B Mod1\-b Toggles bar on and off. .TP .B Mod1\-Shift\-j Push the selected client window down the stack .TP .B Mod1\-Shift\-k Push the selected client window up the stack .TP .B Mod1\-j Focus next window. .TP .B Mod1\-k Focus previous window. .TP .B Mod1\-, Increase the number of master windows. .TP .B Mod1\-. Decrease the number of master windows. .TP .B Mod1\-h Decrease master area size. .TP .B Mod1\-l Increase master area size. .TP .B Mod1\-Shift\-h Increase the size ratio of the selected client .TP .B Mod1\-Shift\-l Decrease the size ratio of the selected client .B Mod1\-Shift\-o Reset the size ratio of the selected client .TP .B Mod1\-Shift\-Return Zooms/cycles focused window to/from master area (tiled layouts only). .TP .B Mod1\-Tab Toggles to the previously selected tags. .TP .B Mod1\-Shift\-q Close focused window. .TP .B Mod1\-t Sets tiled layout. .TP .B Mod1\-s Sets floating layout. .TP .B Mod1\-m Sets monocle layout. .TP .B Mod1\-Shift\-space Toggles between current and previous layout. .TP .B Mod1\-space Toggles the selected window into the floating state. .TP .B Mod1\-f Toggle the selected window into the fullscreen state. .TP .B Mod1\-0 View all windows with any tag. .TP .B Mod1\-Shift\-0 Apply all tags to focused window. .TP .B Mod1\-Shift\-, Change focus to previous screen, if any. .TP .B Mod1\-Shift\-. Change focus to next screen, if any. .TP .B Mod1\-Control\-Shift\-, Send focused window to previous screen, if any. .TP .B Mod1\-Control\-Shift\-. Send focused window to next screen, if any. .TP .B Mod1\-Shift\-[1..n] Apply nth tag to focused window. .TP .B Mod1\-Control\-Shift\-[1..n] Add/remove nth tag to/from focused window. .TP .B Mod1\-[1..n] View all windows with nth tag. .TP .B Mod1\-Control\-[1..n] Add/remove all windows with nth tag to/from the view. .TP .B Mod1\-Shift\-e Quit dwm. .TP .B Mod1\-Shift\-r Restart dwm. .TP .B Mod1\-Shift\-Tab Toggle AttachBelow patch .SS Mouse commands .TP .B Mod1\-Button1 Move focused window while dragging. Tiled windows will be toggled to the floating state. .TP .B Mod1\-Button2 Toggles focused window between floating and tiled state. .TP .B Mod1\-Button3 Resize focused window while dragging. Tiled windows will be toggled to the floating state. .SH CUSTOMIZATION dwm is customized by creating a custom config.h and (re)compiling the source code. This keeps it fast, secure and simple. .SH SIGNALS .TP .B SIGHUP - 1 Restart the dwm process. .TP .B SIGTERM - 15 Cleanly terminate the dwm process. .SH PATCHES This version of dwm was compiled using the: .TP .B dwm-actualfullscreen-20191112-cb3f58a.diff .TP .B dwm-attachbelow-toggleable-6.2.diff .TP .B dwm-autostart-20161205-bb3bd6f.diff .TP .B dwm-cfacts-20200913-61bb8b2.diff .TP .B dwm-clientindicators-6.2.diff .TP .B dwm-dwmc-6.2.diff .TP .B dwm-push_no_master-6.2.diff .TP .B dwm-restartsig-20180523-6.2.diff .TP .B dwm-statuscmd-signal-6.2.diff .TP .B dwm-swallow-20200522-7accbcf.diff .TP .B dwm-systray-6.2.diff .TP .B dwm-uselessgap-6.2.diff .TP .B dwm-zoomswap-6.2.diff .SH SEE ALSO .BR dmenu (1), .BR st (1) .SH ISSUES Java applications which use the XToolkit/XAWT backend may draw grey windows only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early JDK 1.6 versions, because it assumes a reparenting window manager. Possible workarounds are using JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or setting the environment variable .BR AWT_TOOLKIT=MToolkit (to use the older Motif backend instead) or running .B xprop -root -f _NET_WM_NAME 32a -set _NET_WM_NAME LG3D or .B wmname LG3D (to pretend that a non-reparenting window manager is running that the XToolkit/XAWT backend can recognize) or when using OpenJDK setting the environment variable .BR _JAVA_AWT_WM_NONREPARENTING=1 . .SH BUGS Send all bug reports with a patch to hackers@suckless.org.