Hacker News new | comments | show | ask | jobs | submit login

Or DWM, or Xmonad, or i3, or Spectrwm, or StumpWM... You don't even need to be a dev, just want to learn!

Find a comparison of all the tiling window managers here -- https://wiki.archlinux.org/index.php/Comparison_of_Tiling_Wi...

The Arch community is great for support with these types of WMs.

Heck, the Arch community is great with regards to getting software (including the latest branches) up and running on a machine. Definitely a helpful community with admirable goals.

Second that. All tiling window mangers. Much more efficient.

All tiling window mangers

I used to think that until I started using goomwwm, which, while looking and feeling like a tiling window manager, is technically a stacking window manager.

Could you explain? From the screenshots I see, it doesn't seem that different from behavior enabled by wmii, xmonad, etc (even if the defaults vary).

goomwwm is a mouse-centric stacking window manager. That means that new windows are opened above others, you can move them around and the focused window will stack above any windows it overlaps and you can resize them to arbitrary sizes, uses a alt-tab (mod-tab and mod-grave really) window switcher to toggle between open windows (tab between all windows, grave between windows of the current tag only) and lets you minimize windows - just like you'd expect from a traditional stacking window manager. You can move/resize with the mouse, but there are keyboard controls to move and resize windows. It is these keyboard controls that make it feel like a manual-tiling window manager because it is very easy to position windows in a tiled manner and there are some conrols that really help with this:

    mod-d will resize the focused window to be the exact same size as the window directly below it
    mod-f makes a window fullscreen
    mod-v resizes all windows stacked underneath the focused window so that they are tiled vertically (occupying the same space as they did before)
    mod-h is the same for horizontal tiling
    movement is aligned to a 3x3 grid
    the grow and shrink resize the window by an amount that makes tiling on the grid easier (there is also a more fine-grained grow/shrink that doesn't align to the grid)
    mod-shift-movement will swap the focused window and the closest window in the direction of movement - this swaps both windows sizes and their positions
    mod-home sets the window height to the height of the screen
    mod-end sets the window width to the width of the screen
    mod-shift-movement2 "snaps" the focused window to the edge of the closest window in the direction of movement2
    mod-return will grow the window to fill all available space without overlapping other windows
    mod-backspace will shrink a window to fill all available space without overlappinp other windows
By default, mod is mod4 (the windows key), but can be set to anything you like.

movement being the keys to move windows, by defualt the cursor keys.

movement2 being the keys to select/focus windows, by defualt i, j, k and l.

On top of this, you can set rules which basically allow you to run certain commands on specified windows/applications automaticlaly and rulesets which are sets of rules which you can trigger through a keyboard command. A ruleset you can find on the goomwwm website is to automatically tile windows like you would in a dynamic tiling window manager like awesomewm (eg a main area and a side area), you can then use the "swap" commands to swap the windows in the main area with the other windows as needed.

This makes goomwwm feel very much like a manual tiling window manager, yet it still has solid support for stacking and, in fact, always stacks windows by defualt. This makes it more flexible than it would otherwise be without giving up any tiling or keyboard-centric goodness.

Of course, being a border-less, title-bar-less super minimal window manager makes it also look like a tiling window manager, which are traditionally just as minimal.

I'm sure I didn't explain that very well, so I'd suggest giving it a try in Xephyr or Xnest or something. Its easy to get running (git clone ...; make; ./goomwwm -- takes about 2 seconds to compile on my laptop) and only depends on the usual xlib related libs and dmenu. Or, if you don't feel like trying it out, you should at least glance at the tutorial: http://aerosuidae.net/goomwwm/tutorial

I ran DWM for a while. It is solid and more stable than Awesome but does require more work to setup. I wish it had native system tray support. Patch conflicts are quite common.

I am back to Awesome which requires little to no modification.

Depends on what you want to do. I had to modify some of awesome to get it to do what I wanted, and later found that it was way easier to just modify dwm to get what I wanted than to mess with awesome, because dwm is simpler.

I do really hate not having a system tray in dwm, though. The patch they have on their site did not work well for me.

or Notion!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact