1xmonad(1)                        xmonad manual                       xmonad(1)
2
3
4
5()                                                                          ()
6
7
8

Name

10       xmonad - a tiling window manager
11

Description

13       xmonad is a minimalist tiling window manager for X, written in Haskell.
14       Windows are managed using automatic layout algorithms, which can be dy‐
15       namically reconfigured.  At any time windows are arranged so as to max‐
16       imize the use of screen real estate.  All features of the window manag‐
17       er are accessible purely from the keyboard: a mouse is entirely option‐
18       al.  xmonad is configured in Haskell, and custom layout algorithms  may
19       be  implemented  by the user in config files.  A principle of xmonad is
20       predictability: the user should know in advance  precisely  the  window
21       arrangement that will result from any action.
22
23       By  default,  xmonad  provides  three layout algorithms: tall, wide and
24       fullscreen.  In tall or wide mode, windows are tiled  and  arranged  to
25       prevent  overlap  and maximize screen use.  Sets of windows are grouped
26       together on virtual screens, and each screen retains  its  own  layout,
27       which  may be reconfigured dynamically.  Multiple physical monitors are
28       supported via Xinerama, allowing simultaneous display of  a  number  of
29       screens.
30
31       By  utilizing  the  expressivity of a modern functional language with a
32       rich static type system, xmonad provides a complete, featureful  window
33       manager  in  less than 1200 lines of code, with an emphasis on correct‐
34       ness and robustness.  Internal properties of  the  window  manager  are
35       checked  using  a combination of static guarantees provided by the type
36       system, and type-based automated testing.  A benefit of  this  is  that
37       the code is simple to understand, and easy to modify.
38

Usage

40       xmonad  places each window into a "workspace".  Each workspace can have
41       any number of windows, which you can cycle though with mod-j and mod-k.
42       Windows  are either displayed full screen, tiled horizontally, or tiled
43       vertically.  You can toggle the layout mode with mod-space, which  will
44       cycle through the available modes.
45
46       You  can  switch  to workspace N with mod-N.  For example, to switch to
47       workspace 5, you would press mod-5.  Similarly, you can move  the  cur‐
48       rent window to another workspace with mod-shift-N.
49
50       When running with multiple monitors (Xinerama), each screen has exactly
51       1 workspace visible.  mod-{w,e,r} switch  the  focus  between  screens,
52       while  shift-mod-{w,e,r}  move the current window to that screen.  When
53       xmonad starts, workspace 1 is on screen 1, workspace 2 is on screen  2,
54       etc.   When  switching  workspaces  to one that is already visible, the
55       current and visible workspaces are swapped.
56
57   Flags
58       xmonad has several flags which you may pass to the  executable.   These
59       flags are:
60
61       --recompile
62              Recompiles your configuration in ~/.xmonad/xmonad.hs
63
64       --restart
65              Causes the currently running xmonad process to restart
66
67       --replace
68              Replace the current window manager with xmonad
69
70       --version
71              Display version of xmonad
72
73       --verbose-version
74              Display detailed version of xmonad
75
76   Default keyboard bindings
77       mod-shift-return
78              Launch terminal
79
80       mod-p  Launch dmenu
81
82       mod-shift-p
83              Launch gmrun
84
85       mod-shift-c
86              Close the focused window
87
88       mod-space
89              Rotate through the available layout algorithms
90
91       mod-shift-space
92              Reset the layouts on the current workspace to default
93
94       mod-n  Resize viewed windows to the correct size
95
96       mod-tab
97              Move focus to the next window
98
99       mod-shift-tab
100              Move focus to the previous window
101
102       mod-j  Move focus to the next window
103
104       mod-k  Move focus to the previous window
105
106       mod-m  Move focus to the master window
107
108       mod-return
109              Swap the focused window and the master window
110
111       mod-shift-j
112              Swap the focused window with the next window
113
114       mod-shift-k
115              Swap the focused window with the previous window
116
117       mod-h  Shrink the master area
118
119       mod-l  Expand the master area
120
121       mod-t  Push window back into tiling
122
123       mod-comma
124              Increment the number of windows in the master area
125
126       mod-period
127              Deincrement the number of windows in the master area
128
129       mod-shift-q
130              Quit xmonad
131
132       mod-q  Restart xmonad
133
134       mod-shift-slash
135              Run  xmessage  with a summary of the default keybindings (useful
136              for beginners)
137
138       mod-[1..9]
139              Switch to workspace N
140
141       mod-shift-[1..9]
142              Move client to workspace N
143
144       mod-{w,e,r}
145              Switch to physical/Xinerama screens 1, 2, or 3
146
147       mod-shift-{w,e,r}
148              Move client to screen 1, 2, or 3
149
150       mod-button1
151              Set the window to floating mode and move by dragging
152
153       mod-button2
154              Raise the window to the top of the stack
155
156       mod-button3
157              Set the window to floating mode and resize by dragging
158

Examples

160       To use xmonad as your window manager add to your ~/.xinitrc file:
161
162              exec xmonad
163

Customization

165       xmonad is customized in ~/.xmonad/xmonad.hs, and  then  restarted  with
166       mod-q.
167
168       You  can  find  many  extensions to the core feature set in the xmonad-
169       contrib package, available through your package manager or  from  xmon‐
170       ad.org (http://xmonad.org).
171
172   Modular Configuration
173       As  of  xmonad-0.9,  any  additional  Haskell  modules may be placed in
174       ~/.xmonad/lib/ are available in GHC's searchpath.  Hierarchical modules
175       are supported: for example, the file ~/.xmonad/lib/XMonad/Stack/MyAddi‐
176       tions.hs could contain:
177
178              module XMonad.Stack.MyAdditions (function1) where
179                function1 = error "function1: Not implemented yet!"
180
181       Your xmonad.hs may then import XMonad.Stack.MyAdditions as if that mod‐
182       ule was contained within xmonad or xmonad-contrib.
183

Bugs

185       Probably.   If  you  find  any,  please  report  them to the bugtracker
186       (https://github.com/xmonad/xmonad/issues)
187
188
189
190                                                                            ()
Impressum