-- Leo's gemini proxy

-- Connecting to gemini.dimakrasner.com:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

Two Weeks With the Snail


The "snail" layout is an alternative layout for dwl, for:

Wide monitors, at least 16:9

Multi-taskers, especially with 2 or 3 "big" windows

People who prefer something more flexible than the default "tile" layout, but still prefer automatic tiling to manual window splitting

People who want a predictable layout, with low cognitive overhead, despite the flexibility: the advantages of the "tile" layout, but without its main disadvantage


dwl

The Snail Layout


It's been more than two weeks since the time I started using the snail layout as my daily driver. It works very well for me and I think I've learned how to use it. This post describes how I use the snail layout and new users will probably find it useful.


Introduction


In all illustrations, the master area is filled with ▒, while the stack area is filled with ░. It's a 16:9 screen with nmaster=1 and mfact=0.64, which means the master area is about 2/3 of the screen and contains only one window. Therefore, with two windows, it looks like this:


┌─────────────────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒master▒▒▒▒▒▒▒▒│░░stack░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
└─────────────────────┴──────────┘

The snail layout is based on the idea of two spirals:

The downward-facing spiral in the master area starts at the first *narrow* window. Until then, windows are split horizontally.

The stack area spiral starts at the first window and the orientation is chosen based on the stack area dimensions. If the stack area is narrow, it "spirals" downwards. Otherwise, it "spirals" to the right.


┌──────────┬──────────┬──────────┐  ┌─────────┬──────────┬──────────┐
│══════════╪═════════╗│░░░░░░░░░║│  │▒▒▒▒▒▒▒▒║│══════════╪═════════╗│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒║│░░░░░░░░░║│  │▒▒▒▒▒▒▒▒║│░░░░░░░░░░│░░░░░░░░░║│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒║│░░░░░░░░░║│  │▒▒▒▒▒▒▒▒║│░░░░░░░░░░│░░░░░░░░░║│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒║│░░░░░░░░░║│  │▒▒▒▒▒▒▒▒║│░░░░░░░░░░│░░░░░░░░░║│
│▒▒▒▒▒▒▒▒▒▒├─────┬───╫┼────┬────╫┤  │─────┬──╫│░░░░░░░░░░├────┬────╫┤
│▒▒▒▒▒▒▒▒▒▒│╔═══╗│▒▒▒║│╔══╗│░░░░║│  │╔═══╗│▒▒║│░░░░░░░░░░│╔══╗│░░░░║│
│▒▒▒▒▒▒▒▒▒▒├╫────┤▒▒▒║├╫───┤░░░░║│  │╫────┤▒▒║│░░░░░░░░░░├╫───┤░░░░║│
│▒▒▒▒▒▒▒▒▒▒│║▒▒▒▒│▒▒▒║│║░░░│░░░░║│  │║▒▒▒▒│▒▒║│░░░░░░░░░░│║░░░│░░░░║│
│▒▒▒▒▒▒▒▒▒▒│╚════╪═══╝│╚═══╪════╝│  │╚════╪══╝│░░░░░░░░░░│╚═══╪════╝│
└──────────┴─────┴────┴────┴─────┘  └─────┴───┴──────────┴────┴─────┘

For example, if the master area has only one window, all windows are added to the stack area and this is what happens:


┌─────────────────────┬──────────┐  ┌─────────────────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├──────────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│2▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░░░░░░░│  │3▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░░░░░░░│
└─────────────────────┴──────────┘  └─────────────────────┴──────────┘

┌─────────────────────┬──────────┐  ┌─────────────────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│4░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├────┬─────┤  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├────┬─────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├────┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│4▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░│2░░░░│  │5▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░░│3░░░░│
└─────────────────────┴────┴─────┘  └─────────────────────┴────┴─────┘

┌─────────────────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├─┬──┬─────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2│1░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├─┴──┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░│4░░░░│
└─────────────────────┴────┴─────┘

(The ASCII art is not perfect, because the "resolution" is small: for example, in reality, windows 1 and 2 have the same dimensions.)


Every time a window is closed, the stack "spirals" in counter-clockwise motion and windows 2 expands to fill the space previously occupied by window 1.


Key Bindings


The key bindings used in this guide are mostly the dwl defaults, but with Super instead of Alt:


config.h


Two Windows, Side by Side


Let's say you want to put windows 6 and 5 side by side:


┌─────────────────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├─┬──┬─────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2│1░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├─┴──┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░│4░░░░│
└─────────────────────┴────┴─────┘

Press Super+i: this moves window 5 to the master area, which now contains two windows. Window 6 is split horizontally because it's a wide window. Therefore, the result is:


┌──────────┬──────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│4░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒├────┬─────┤
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│1░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒├────┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒│5▒▒▒▒▒▒▒▒▒│2░░░│3░░░░│
└──────────┴──────────┴────┴─────┘

This is by far the most common layout for me, and it's only one keystroke away from the starting point.


There's a second, more flexible but less convenient way to achieve a similar layout: repeated Super+h, until the stack area becomes wide:


┌─────────────┬────────┬────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│4░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░├────┬───┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│1░░░│░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░├────┤░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░│░░░░│░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░│2░░░│3░░│
└─────────────┴────────┴────┴───┘

Window 5 is split horizontally (because it's wide), so you get one tall window in the master area and another in the stack, but they don't have the same dimensions.


You can use Super+h and Super+l to make window 5 wider or narrower, at the expense of window 6:


┌──────────┬──────────┬──────────┐  ┌────────┬───────────┬───────────┐
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│4░░░░░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│4░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░├────┬─────┤  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░├─────┬─────┤
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│1░░░│░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│1░░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░├────┤░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░├─────┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒│░░░░░░░░░░░│░░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒│5░░░░░░░░░│2░░░│3░░░░│  │6▒▒▒▒▒▒▒│5░░░░░░░░░░│2░░░░│3░░░░│
└──────────┴──────────┴────┴─────┘  └────────┴───────────┴─────┴─────┘

But, you still don't have complete freedom, because window 5 occupies the left half of the space dedicated to the stack area: to make window 5 wider, you must give more space to the windows in the right half of the stack area, too. Sometimes, that's a waste of precious screen real estate.


Also, after several Super+l, window 5 is split vertically instead of horizontally, because the stack area becomes narrow:


┌──────────────┬───────────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒├───┬───┬───────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░│1░░│░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒├───┴───│░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░│░░░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░░░░│4░░░░░░│
└──────────────┴───────┴───────┘

This means it's a bad idea to abuse the stack area for large windows: unlike the master area, it emphasizes compactness. Therefore, my recommendation is to put the big windows in the master area: press Super+i n-1 times, if you want n big windows. Then, repeatedly press Super+l until they're placed side-by-side and have the same width. This is much easier (and less keystrokes) than abusing the algorithm to place window 5 from the stack area alongside window 6.


Three Windows, Side by Side


Often, it's impossible. If you press Super+i twice (so you have 3 windows in the master area), window 5 gets split vertically, because the master area is running out of horizontal space:


┌──────────┬──────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│5▒▒▒▒▒▒▒▒▒│3░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒├──────────┼────┬─────┤
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒│4▒▒▒▒▒▒▒▒▒│1░░░│2░░░░│
└──────────┴──────────┴────┴─────┘

Most of the time, I focus on one or two applications (a browser or a text editor and a browser), and everything else (like the IRC client) is packed neatly in the stack area. Therefore, I'm fine with this limitation. I tried to tune the formula to allow 3 tall windows in the master area even with a 16:9 monitor, but they're just too narrow. A high-resolution display doesn't help, because many UIs (especially IDEs with sidebars) don't work well when they're so narrow.


I find the snail layout very nice to use when I combine it with "workspaces". I have one tag with my coding setup (text editor, browser, IRC client, two general-use terminals) and another for everything else (audio mixer, Bluetooth settings, etc'). The former has room for two tall windows in the master area, and the latter is always a mess with "temporary" windows I forgot to close, and changes constantly.


With a very wide monitor (say, 21:9), heavier multi-taskers can achieve something like this:


┌──────────────┬────────┬────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│3░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒├────┬─────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒│5▒▒▒▒▒▒▒│4▒▒▒▒▒▒▒│1░░░│2░░░░│
└──────────────┴────────┴────────┴────┴─────┘

However, even a 21:9 monitor has its limits, and it won't be able to fit four windows side-by-side: window 4 will split vertically after another Super+i.


(9 windows would look more like a snail, I guess.)


Four Tiles


One Super+i and several Super+h, until the master area takes 50% of the screen, will give you this:


┌───────────────┬────────────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│4▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░░░░░░░░░░░░░░│
├───────────────┼────────────────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│3▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░░░░░░░░░░░░░│
└───────────────┴────────────────┘

Or this, if you have more windows:


┌───────────────┬────────────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│7▒▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░░░░░░░│
├───────────────┼───┬───┬────────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░│1░░│░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├───┴───┤░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░│░░░░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░░░░│4░░░░░░░│
└───────────────┴───────┴────────┘

Many Windows


If you want to fit many windows on the screen and divide them equally between the two areas, press Super+i multiple times:


┌───────────────┬──────────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░│
│10▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░░░░░│
├───┬───┬───────┼───┬───┬──────┤
│7▒▒│6▒▒│▒▒▒▒▒▒▒│2░░│1░░│░░░░░░│
├───┴───┤▒▒▒▒▒▒▒├───┴───┤░░░░░░│
│▒▒▒▒▒▒▒│▒▒▒▒▒▒▒│░░░░░░░│░░░░░░│
│8▒▒▒▒▒▒│9▒▒▒▒▒▒│3░░░░░░│4░░░░░│
└───────┴───────┴───────┴──────┘

If you make the master area wider using Super+l, window 10 becomes tall:


┌─────────┬─────────┬──────────┐
│▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒│9▒▒▒▒▒▒▒▒│5░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒├────┬────┼──┬──┬────┤
│▒▒▒▒▒▒▒▒▒│6▒▒▒│▒▒▒▒│2░│1░│░░░░│
│▒▒▒▒▒▒▒▒▒├────┤▒▒▒▒├──┴──┤░░░░│
│▒▒▒▒▒▒▒▒▒│▒▒▒▒│▒▒▒▒│░░░░░│░░░░│
│10▒▒▒▒▒▒▒│7▒▒▒│8▒▒▒│3░░░░│4░░░│
└─────────┴────┴────┴─────┴────┘

This layout is nice if you have many windows and use windows 10, 9 and 5 often. I think I used this layout twice, when I needed to copy-paste stuff between two windows and already had many open windows.


Otherwise, if you make the master area narrower using Super+h, window 6 becomes tall:


┌───────┬──────────┬───────────┐
│▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░░│
│▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░░│
│▒▒▒▒▒▒▒│░░░░░░░░░░│░░░░░░░░░░░│
│10▒▒▒▒▒│░░░░░░░░░░│5░░░░░░░░░░│
├───┬───┤░░░░░░░░░░├──┬──┬─────┤
│7▒▒│▒▒▒│░░░░░░░░░░│2░│1░│░░░░░│
├───│▒▒▒│░░░░░░░░░░├──┴──│░░░░░│
│▒▒▒│▒▒▒│░░░░░░░░░░│░░░░░│░░░░░│
│8▒▒│9▒▒│6░░░░░░░░░│3░░░░│░4░░░│
└───┴───┴──────────┴─────┴─────┘

This layout is useful if you want to focus on one centered window, and don't mind wasting some horizontal space on the right. I think I used this layout only once, when I needed to focus on window 6 and didn't want to reorder the windows.


Conclusions


The snail layout could be the one for you, if you want to spend most of your time in these layouts:


┌─────────────────────┬──────────┐  ┌──────────┬──────────┬──────────┐
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│5░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│4░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├──┬─┬─────┤  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒├────┬─────┤
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░│1│░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│1░░░│░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├──┴─┤░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒├────┤░░░░░│
│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│
│6▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│3░░░│4░░░░│  │6▒▒▒▒▒▒▒▒▒│5▒▒▒▒▒▒▒▒▒│2░░░│3░░░░│
└─────────────────────┴────┴─────┘  └──────────┴──────────┴────┴─────┘

┌──────────┬──────────┬──────────┐  ┌───────────────┬────────────────┐
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│5▒▒▒▒▒▒▒▒▒│3░░░░░░░░░│  │6▒▒▒▒▒▒▒▒▒▒▒▒▒▒│4░░░░░░░░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒├──────────┤────┬─────┤  ├───────────────┼───────┬────────┤
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│1░░░░░░│░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒├───────┤░░░░░░░░│
│▒▒▒▒▒▒▒▒▒▒│▒▒▒▒▒▒▒▒▒▒│░░░░│░░░░░│  │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│░░░░░░░│░░░░░░░░│
│6▒▒▒▒▒▒▒▒▒│4▒▒▒▒▒▒▒▒▒│1░░░│2░░░░│  │5▒▒▒▒▒▒▒▒▒▒▒▒▒▒│2░░░░░░│3░░░░░░░│
└──────────┴──────────┴────┴─────┘  └───────────────┴───────┴────────┘

To use it "correctly":

Use Super+i if you need more "big" windows, and it will put them side-by-side if the monitor is wide enough

Use Super+d if you need less "big" windows

Use Super+l to dedicate more space to the "big" windows

Use Super+h to dedicate less space to the "big" windows


The snail layout is exactly what I was looking for, and it works very well for me. The snail layout can do more things, but I rarely use that extra flexibility, and don't mind it.

-- Response ended

-- Page fetched on Fri May 10 03:47:39 2024