

Ask HN: What's your favorite window manager for X11? - adulau

Ask HN: What's your favorite window manager for X11?<p>Do you prefer keyboard-driven window manager? and how do you arrange your windows to be more efficient?
======
adambyrtek
Xmonad, one of the best tiling window managers out there. It is very easy to
grasp for beginners[1], has a comprehensive documentation and is extremely
powerful under the hood. The configuration is in Haskell, which makes it
Turing-complete, but you can customize Xmonad even if you are not familiar
with the language.

[1] <http://xmonad.org/tour.html>

~~~
chewbranca
Another vote for xmonad. I have been using xmonad on my desktop for most of
this year, and it has worked amazingly well, and definitely has one of the
best multi-monitor setups I've ever used.

One of the most impressive things is how well it has worked out of the box, so
well that I basically forgot to come back and customize, its just been working
for quite a while now.

------
staunch
I've tried a dozen window managers for weeks at a time. For over a decade I
always returned to my old reliable WindowMaker. In the past couple years I
started using Metacity (default in Gnome now).

All I care about is having separate workspaces and a few keyboard shortcuts. I
have 7 work spaces: Main (local terminal), Browsing (Chrome/Firefox),
Communications (Pidgin/XChat/Skype), Development (GVim/terminal), Email
(Thunderbird/GMail), Shells (tabbed remote terminals), Misc (usually
shells/music player).

Each workspace is dedicate to a single task. Everything is fully maximized in
each workspace (for the most part). I switch between them with Alt+{1,7}.
Ctrl+M Maximizes a window. I have a few monitoring applets (CPU/network) in
the taskbar thingie. Over time I've found that is all I need to be happy and
productive.

~~~
cnvogel
I also used Windowmaker for a really long time, but stopped when a few years
ago it was incompatible with a few of the applications I use (e.g. gaim (now
pidgin) would crash very often, and some more annoyances I forgot about).

I especially liked docking applications/icons, its good support for virtual
desktops and especially the many wmXXX applications that did one job well, in
the space of a 64x64 pixel tile.

These days, I mostly resort to the "standard" gnome desktop with whatever it
uses and resort to something very lightweight such as fluxbox on resource
constrained machines.

------
aphyr
Somewhat customized Openbox. Six workspaces, everything keybound. I make heavy
use of alt-drag and alt-middle-drag to move and resize windows without needing
to find their targets. Control-fkeys for frequently opened apps like gnome-
term, chromium, etc. Each workspace is a discrete task: writing code, testing,
email/IM, etc. Helps keep me focused.

What I love about OB is that _everything_ is configurable. A lot of WMs (ahem,
metacity) give you no control over the basic operations _because they can't
imagine any other way to do it_. If you find faster ways to do things, e.g.
workspace warping with mousewheel, or reordering windows with win+middle
click) OB actually lets you achieve them. It's all there in XML--and the
defaults are well thought out, too.

I know several people who swear by xmonad, but I've never been able to deal
with it for graphical work.

------
may
I was surprised to find that no one else has recommended dwm[1], which is what
Xmonad (and others) are based on[2].

It's tiling, keyboard-driven, small and lightweight. I've been using it for
years now. It's a little hairy to start with, but I love it.

Instead of workspaces it uses "tags" which you can treat just like workspaces,
but you can also combine, on-the-fly, to form a mashup of different tasks. For
example, sometimes I want my editor & web browser next to each other, when I'm
looking something up, but most of the time I just want to focus on the code.

[1]: <http://dwm.suckless.org/>

[2]: <http://en.wikipedia.org/wiki/Dwm>

------
technomancy
I've found that if you set up devilspie and xbindkeys, it doesn't really
matter what WM you use.

devilspie is a rules engine for windows--new windows for this application go
to this desktop and are always maximized; browser windows always go to
workspace 1, all windows are always undecorated, etc.

xbindkeys is a scheme app that just handles mapping key bindings to shell
commands.

Both of these are configured with files full of s-expression that you can
check into your version control. Put them together and you can kinda ignore
the fact that you're still using brain-dead metacity.

------
enduser
I use wmii with some minor customizations. I have one 30" full of 256-color
rxvt-unicode windows and a smaller monitor running chromium. Generally
communications (mutt, irssi) runs down the right edge of the 30" and then
there are 2-3 columns of terminals running vim or zsh.

One killer feature of wmii is its use of 'tags' instead of virtual desktops.
Windows can be assigned to multiple tags. I tend to have tags per task, so
task switching is as simple as switching desktop tags.

~~~
mickeyben
+1 for wmii ! I was using ion3 until 2008 and migrate to wmii at this time.

I'm mainly using OSX now but I always have my wmii open in a virtual box.

~~~
may
I miss Ion3. But I use dwm now!

------
whackedspinach
I use Awesome WM. It was my first foray into the tiling WM world, and I am
currently loving it. I have two monitors. I usually have whatever main task
I'm working with on my main widescreen, and then a bunch of terminals with
various programs (ncmpcpp, irssi, etc) on my old 17 inch monitor.

Awesome is great because of its use of the keyboard and tag system. Also, it
is named after one of Barney Stinson's catchphrases.

~~~
jessor
The problem I have with awesome is that it likes to make you write new configs
every other release. That's why I'm still stuck with a fairly old version.

Now that they kicked xcb out of cairo (which awesome needs) which resulted in
awesome getting kicked out of the arch linux community repository I think I'll
just switch to i3 like all of my buddies.

~~~
whackedspinach
I didn't even realize awesome wasn't in the Arch Linux repositories any more.
I installed it from there a month ago.

------
tobik
I am using dwm with the bottomstack, gridmode and pertag patches and my own
modifications.

Currently I am using a notebook in front of an external display and I added a
function to dwm with which I can essentially "push" all clients (windows) to
the external display, which in turn sends all its clients to my notebook's
display (or in other words it swaps all clients of one display with all
clients of the other).

When I am coding I am always using bstack mode with vim on top and one or two
terminals at the bottom. The external monitor is displaying documentation. If
I have to look something up I just have to push vim + terminals away. If I am
finished I pull them back. So my notebook display becomes my working display.

~~~
jeebusroxors
I find that dwm always gets dismissed by users of awesome or xmonad. I've run
all three for long periods of time and always go back to dwm, most likely due
to my hatred of "bloat". It's stable, small (28kb binary), fun to hack and
nice and snappy.

<http://suckless.org> has some other really cool stuff as well.

ii is a FIFO based IRC client, slock, wmii etc...

<http://hg.suckless.org/> is their HG repo.

------
ghostDancer
I've been using blackbox for many years ( after using afterstep and
windowmaker) but recently turned to stumpwm, a tiling wm written in
lisp[<http://www.nongnu.org/stumpwm/>]. Getting used to it but i think i'll
keep it, i like tiling wm . Never been a fan of gnome or kde, and never need
all things they carry i prefer a simple window manager.

------
nico_h
After using windowmaker, I switched to awesome and I am not looking back. The
install is tiny, and it starts instantly, unlike KDE. The tiling is very nice.
The configuration is in lua but I haven't been annoyed by anything enough to
bother modifying it.

~~~
nico_h
As I work with dual screen linux connected to a remote windows XP/7 desktop
running in VMWare/HyperV, I have a screen for tiled urxvt terminals connected
to the servers running the processes I manage, with a floating rdesktop
session hiding it most of the time. The other screen is set to 'floating' for
emails, web browsing and local terminals sessions.

------
mquander
I've used Fluxbox and Blackbox basically since I was in diapers, but I
recently decided that it's really way past time to try a tiling WM, and
settled on xmonad after initially trying awesome. I like it a lot so far; it's
lightweight, flexible, and very easy to configure, and I'm surprised how
little I miss dragging windows around (although I still float some frequently
used applications, Chrome and Audacious primary among them.)

I usually have a workspace for shell & filesystem stuff, one for emacs, one
for documentation, one for running servers and monitors and other misc. utils
for whatever I'm doing, and one floating one for web browser and music.

~~~
adambyrtek
Why do you float Chrome windows? Web browsers and terminals are the easiest
applications to tile.

~~~
mquander
Honestly, there's no good reason at all. I'm just so used to resizing my web
browser with the mouse all the time to read things better. I should probably
break that habit.

------
fr0sty
I use sawfish. It is very lightweight, configurable, supports plenty of
keyboard shortcuts and generally stays out of my way.

I have keyboard shortcuts for most simple operations (change workspace, change
window, send to back, etc.) and use the mouse when that sort of thing makes
sense. I try to stick to 'one task-type per workspace' which helps keep things
somewhat organized (plus it keeps my browser in hiding while I'm trying to
code).

Link: <http://sawfish.wikia.com/wiki/Main_Page>

~~~
aidenn0
I use this as well. I have a bunch of self-written mods that I really should
push out somewhere.

I started using it when it was the default WM for gnome, and had so many
customizations that I couldn't switch away when metacity came out.

Things like windows7-ish tiling (I had it before windows 7, when someone using
another WM could do it).

------
asjo
I like fvwm - <http://fvwm.org/> \- I can change the size of windows on all
sides, and the width of the borders is easily configurable.

(Everything else is as well, but those are the things I particularly like over
other window managers I have seen.)

I would like to try running Xmonad on a second monitor, and use that monitor
for xterms primarily - I don't want my browser window-size to change with how
many windows I have open - but I haven't had time/monitors to experiment.

~~~
beej71
Another vote for fvwm. I've customized it pretty heavily over the years:

I have a single config file that detects which host its running on and
modifies fvwm's behavior accordingly. This way I can have the same
configuration work well on the desktop and the netbook.

It works well on the netbook, too, as its very resource-friendly.

I have it set up with a 3x3 virtual desktop space and no edge resistance. The
"Windows" key pops up the virtual desktop manager.

Also, I have it configured so that when I hit the "Menu" key or CTRL-Windows I
get the root menu, so it's reasonably keyboard friendly. (e.g. CTRL-Windows,T
gets me a terminal; CTRL-Windows,N,W gives a browser.)

Not that I use those, really, since I have F1 on the root window bound to
"launch terminal", and F2 to "launch browser".

FVMW doesn't work as well as others out-of-the-box, but you can pretty much
make it do anything if you tweak the config enough. But that's work, so you
gotta wannit.

I really wish it was a compositing window manager, but it's not, and it
doesn't seem likely to be.

------
mahmud
Windows XP.

I have used Linux almost daily for the last 12 years; a good chunk of them via
putty/ssh from XP. I headless Slackware box without X; ssh or serial is just
fine by me.

At the risk of being mauled to death, I also have a Mac that I just got used,
and I only ssh to it. Couldn't be bothered to figure its quirks; will come
handy when I get into iphone dev though.

Also, I will not use a non Thinkpad machine if it was given to me for free. My
current setup is an R51; Pentium M, 1GB RAM, and 33GB disk.

------
dantheta
Openbox for me - extremely customizable, standards compliant, and very
keyboard friendly. Good theming, well written code.

------
frou_dh
The tiling, keyboard-driven Xmonad on Linux, but then I got fed up of the look
and feel of Linux in general and bailed to OS X completely (with a more basic
helper, SizeUp).

I like a main window taking the left 60% of the screen and the remainder for 2
aux windows stacked vertically.

------
strlen
WindowMaker. I wish it were more keyboard driven, but I find it's window
arrangement and Xinerama support to be the crucial features.

I've also been meaning to give a modern tiling window manager (I've used
ratpoison in the past) e.g., Xmonad a try.

------
mindslight
I go with the (distribution) flow and use KDE/kwin. I dumped Gnome/metacity a
while ago as it wouldn't do more than 12 desktops, while kwin gives me 20.
F1-F12 for the first 12, Alt+F1-F8 for the rest. Every major window is
fullscreen on its own desktop and can thus be switched with one keypress (I
like desktops over some sort of window-focus hotkey as it gives me a spatial
metaphor to how keys are assigned). For example, I'll bounce between web (F7)
or pdf (F6) while editing code (F1/F2), negating the need to have two windows
side-by-side with the management/tradeoffs that incurs.

~~~
kroger
I can have 36 desktops with the gnome in ubuntu 10.04 (not that I do, I just
use 6 ;-)

~~~
mindslight
Sure... however last time I checked, you can only assign hotkeys to 12 of
them.

~~~
kroger
Hum, you're probably right. A hack would be to use something like wmctrl and
custom hotkeys.

------
cskau
Does anyone by any chance know of a Zooming UI (ZUI) WM for linux ? I've been
looking to replace my Gnome desktop I've otherwise been running for years. I'm
no fan of tiling WMs so a ZUI seem a good next step.

------
gaak99
StumpWM.

Tiled and programmable in Common Lisp. It's fun to config/hack.

------
metachris
XFCE, a rather minimal window manager I find perfect for my desktop and
development machine. <http://www.xfce.org>

------
pwpwp
ratpoison, because it actually manages those pesky windows.

~~~
die_sekte
I use ratpoison on a ThinkPad X201. I basically only have one xterm with tmux
and one browser open. Ratpoison is the least annoying window manager for that.

~~~
technomancy
> I basically only have one xterm with tmux and one browser open.

What more could one ask for?

------
timdoug
Evilwm: <http://www.6809.org.uk/evilwm/>

It can spawn a terminal with one keystroke, can move and resize windows, and
has virtual desktops. Other than that, it gets the hell out of my way -- no
extraneous bars / panels / whatever, and one-pixel-wide window borders. That's
all I ever want a WM to do.

------
reynolds
I currently use awesome wm but I run slim so I can login to any number of
window managers. I was using xfce4 for a few months and still think it's a
great environment. I also mess around with fluxbox. After seeing so many
people rave about xmonad I'm going to give it a try as well.

------
1tw
I use scrotwm - don't be put off by the silly name, it's a great window
manager: think dwm with a plain text, human-readable config file.

That said, most of my 'window' management is handled by tmux.

------
younata
I'm one of the several people here who uses awesome. It's rather nice.

------
msh
WindowMaker, it was the first windowmanager that I liked, and haven't moved
since, but it is beginning to feel its age. I am missing some of the new stuff
from gnome/kde a litte bit.

------
belitsky
I prefer WMII in VirtualBox as development enviroment.
<http://wmii.suckless.org/>

~~~
belitsky
And i forgot to mention a Vimperator project. It's really useful peace of
software. It let you to surf the web with keyboard only.
<http://vimperator.org/vimperator>

------
mattwdelong
Depending on my mood; if i`m looking for no distractions I will work in
AwesomeWM. Otherwise, I just default to Gnome.

------
zargon
I use awesome (<http://awesome.naquadah.org/>), a tiling wm.

------
nsm
kwin because it has such great configuration options. You can customize
everything by window class/title etc, like which desktop it goes to, is it
always on top/bottom, maximized horizontally/vertically, skip the taskbar etc.

The compositing effects Present Windows Desktop Grid are actually useful

------
RexRollman
I have two favorites: Ratpoison (tiling) and Evilwm (non-tiling).

------
henryci
I'm sad to see so little love for ion and ratpoison. Ion2 ftw.

------
spiffworks
Awesome WM at the moment. Looking at xmonad too though

------
lanstein
twm ;)

------
borism
9wm aka rio <http://swtch.com/plan9port/screenshots/rio.png>

<http://swtch.com/plan9port/>

------
konad
rio

