index.md - sites - public wiki contents of suckless.org
(HTM) git clone git://git.suckless.org/sites
(DIR) Log
(DIR) Files
(DIR) Refs
---
index.md (2469B)
---
1 Dynamic window management
2 =========================
3 We think that static window management as seen in Ion or wmi-10 is a far too
4 rigid and inflexible working environment. In [acme](http://acme.cat-v.org),
5 larswm, and oberon, dynamic window management frees the user from these
6 limitations. The user can start as many applications and windows as he likes,
7 and easily arrange them in a useful way, helped by the window manager - the
8 working environment changes with the tasks the user is performing. The
9 experience is very fluid and natural. Similar concepts have been introduced in
10 wmii and dwm.
11
12 Dynamic window management states that it is the window manager's job to manage
13 windows - and not the user's job to have to set up some specialized layout that
14 will only work for one specific work scenario. This has been the larswm motto
15 for a long time. In contrast to static window management, the user rarely has
16 to think about how to organize windows, no matter what he is doing or how many
17 applications are running at the same time. The window manager adapts to the
18 current environment and helps the user manage and mold it to his needs, rather
19 than forcing it to use a preset, fixed layout and trying to shoehorn all
20 windows and applications into it.
21
22 Dynamic window management has many advantages - you can create and tear down
23 whole working environments in a matter of seconds rather than spending time
24 fine-tuning a fixed layout that cannot work well in all cases. The number and
25 nature of windows you work with changes all the time, and a dynamic window
26 manager lets you adapt to that and always efficiently use your precious screen
27 real estate.
28
29 Some will argue that you should setup a different static workspace for each of
30 the tasks you perform (one for web browsing, one for email reading, one for
31 coding, etc.), but that is just a workaround for the limitations of static
32 window management, and it doesn't account for the many sub-usage patterns each
33 main task has.
34
35 For example: the layout you use during debugging would probably be quite
36 different to the one used during refactoring, you might want to have a patch
37 someone emailed you in view while you look at some code, or edit a
38 configuration file while you look at a man page or website. Dynamic window
39 management lets you mix and match on the fly to always have the windows you
40 need in view, and only the windows you need, without the need to reserve extra
41 space which you may or may not end up using.