swm.1.adoc 3.3 KiB raw
1
= swm(1)
2
:doctype: manpage
3
:manmanual: SWM Manual
4
:mansource: swm 1.0.0
5
6
== NAME
7
8
swm - simple window manager for Wayland
9
10
== SYNOPSIS
11
12
*swm* [*-v*] [*-d*] [*-s* _command_]
13
14
== DESCRIPTION
15
16
*swm* is a simple Wayland window manager based on wlroots and forked from
17
*dwl*.
18
19
*swm* manages 10 global workspaces. A workspace is shown on at most one output;
20
switching to a workspace that is visible on another output swaps the workspaces
21
of the two outputs. Five layouts are available per workspace: master-left,
22
master-top, master-right, master-bottom, and max.
23
24
*swm* has no built-in bar and no runtime configuration file. Bars speaking
25
ext-workspace-v1 and wlr-layer-shell, such as *waybar*(5), work out of the box.
26
Users are encouraged to customize *swm* by editing the sources, in particular
27
_config.h_.
28
29
*swmctl*(1) can associate additional ephemeral titles and colors with
30
workspaces. These do not replace the numbered ext-workspace names and are only
31
shown by explicitly configured consumers. All workspace metadata is discarded
32
when *swm* exits.
33
34
== OPTIONS
35
36
*-v*::
37
Write the name and version to standard error and exit unsuccessfully.
38
39
*-d*::
40
Enable full wlroots logging, including debug information.
41
42
*-s* _command_::
43
Start a shell process running _command_. On exit, send `SIGTERM` to the child
44
process group and wait for it to stop.
45
46
== KEY BINDINGS
47
48
The default key bindings (Mod = Alt) are as follows:
49
50
=== Workspaces
51
52
[cols="1,3", options="header"]
53
|===
54
|Binding |Action
55
56
|*Mod-[1-9,0]* |Switch to workspace 1-10.
57
|*Mod-Shift-[1-9,0]* |Send window to workspace 1-10.
58
|*Mod-a, Mod-Tab* |Switch to the previously shown workspace.
59
|*Mod-Right/Left* |Switch to the next/previous non-empty workspace.
60
|*Mod-Up/Down* |Switch to the next/previous workspace, including empty ones.
61
|*Mod-Shift-Up/Down* |As above, carrying the focused window along.
62
|===
63
64
=== Windows
65
66
[cols="1,3", options="header"]
67
|===
68
|Binding |Action
69
70
|*Mod-j/k* |Focus next/previous window.
71
|*Mod-Shift-j/k* |Swap window with the next/previous window.
72
|*Mod-Return* |Swap the focused window with the main window.
73
|*Mod-m* |Focus the main window; again to return.
74
|*Mod-u* |Focus the most recently urgent window.
75
|*Mod-r* |Raise the focused window.
76
|*Mod-t* |Toggle floating.
77
|*Mod-Shift-f* |Toggle fullscreen.
78
|*Mod-Shift-c* |Close the focused window.
79
|*Mod-Shift-Left/Right* |Focus the previous/next output.
80
|*Mod-Ctrl-Left/Right* |Send the focused window to the previous/next output.
81
|===
82
83
=== Layout
84
85
[cols="1,3", options="header"]
86
|===
87
|Binding |Action
88
89
|*Mod-Space* |Cycle layouts.
90
|*Mod-Shift-Space* |Reset the current layout.
91
|*Mod-h/l* |Shrink/grow the master area.
92
|*Mod-comma/period* |Add/remove windows to/from the master area.
93
|*Mod-Shift-less/greater* |Add/remove stack columns.
94
|*Mod-Shift-bar* |Flip master and stack areas.
95
|*Mod-f* |Toggle the max layout.
96
|===
97
98
=== Programs and system
99
100
[cols="1,3", options="header"]
101
|===
102
|Binding |Action
103
104
|*Mod-x* |Lock the screen with *swaylock*(1).
105
|*Mod-p* |Spawn *wmenu-run*(1).
106
|*Mod-Shift-Return* |Spawn *foot*(1).
107
|*Mod-Shift-q* |Quit *swm*.
108
|===
109
110
Window focus follows the mouse. Windows can be moved with Mod-left-click and
111
resized with Mod-right-click. Mod-middle-click toggles floating.
112
113
== SEE ALSO
114
115
*foot*(1), *swmctl*(1), *wmenu*(1)
116
117
== AUTHORS
118
119
*swm* is a fork of *dwl*; see the LICENSE files for its authors.