Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> (...) getting used to a workflow akin to that of Windows 1.01 (i.e. a tiling WM)

Not really, unless it's a tong-in-cheek remark. Tiling window managers use virtual desktops and programmable positioning of windows to produce a predictable layout. Windows 1.01 had neither of those.

Add muscle memory to it and, if you can endure the learning/customization curve, you get a very efficient window manager. Whenever I'm alt-tabbing in search of windows in Windows or OSX I feel I'm using old software.



It's tongue-in-cheek of course :). That being said, I did find tiling WMs to be very unwieldy on most screens. When I first went down the tiling WM rabbit hole, I was using a laptop with a 15" screen, and that was great. After a while I got a 27" monitor, though, and tiling became extremely annoying -- every window is now either too wide to be read comfortably and I end up padding the screen with useless xterms, or too small for contents to fit in any reasonable way.


Tiling window managers are a great way to fiddle with window arrangement LESS not more. Shoving terminal windows between other windows for spacing is spacebar heating. I3 has a branch with the feature required its called i3-gaps. This feature is on its way to becoming a part of mainline i3 but has been available for about 11 years now as a separate package.

https://github.com/Airblader/i3

The setting

    smart_gaps inverse_outer
Would give you a configurable empty border only when you have a singular window ensuring that the single window isn't so large as to be hard to read comfortably.

As far as windows being too small to read comfortably I'd advise you to place no more than 2-3 windows per workspace. For the benefit of those who don't use i3 workspaces are per monitor.

Given 2 monitors you can easily show 4-6 windows which is easily enough context for about any task.


So, like I said in my other reply: this was back when i3-gaps was pretty fresh. I don't recall the inverse_outer outer setting, and looking at the github repository, it looks like it was merged in 2018. I'm talking about something that happened like ten years ago :-).

As for this part:

> As far as windows being too small to read comfortably I'd advise you to place no more than 2-3 windows per workspace. For the benefit of those who don't use i3 workspaces are per monitor.

Yeah, this is pretty much where the fiddling comes from.

I don't want to use 2-3 windows per workspace. I sometimes have to work on a piece of code and have 8-10 PDFs open for it -- datasheets, reference guides, schematics and whatnot, at which I want to be able to look from time to time. Sometimes while I'm also looking at the code, sometimes in full-screen (because I'm looking at a big diagram). Sometimes I need to look at a part of a diagram while I'm looking at the code. So I need them to be in the same view as the code. All in all -- including specs, standards, the code window(s), a few xterms -- I easily have 12-15 windows open in order to work on one thing, and it's not really optional.

i3's tabbed view is sort of what I wanted for the PDFs but it's annoying that, if you want to switch to the right one using nothing but the keyboard, you have to go through all of them. You go back and forth, not to the Nth tab (or at least you couldn't back when I tried i3).

That's actually what I liked about ratpoison. Instead of trying to be smart, it just let me multiplex my screen, which is what I really wanted.

I could sort of bend my workflow around all this and, through a complicated set of chords, make use of the whole thing in a productive manner. However, it was anything but convenient. I'm way happier with a floating WM and do a lot less fiddling with the windows.


With herbstluftwm I address that issue by just doing a split; you don't necessarily need to put anything in a given pane, so it's possible to just resize the pane for the window about which you actually care, and ignore the unused space entirely.

Of course, I typically end up sticking a terminal or editor or chat window or music player or something in there anyway, because why not?


How are useless xterms different from uselessly used space for a simply centered window?

I have 2x4K monitors at home. Moving to i3 is the best thing that happened to me.


> How are useless xterms different from uselessly used space for a simply centered window?

You still have to open them and move them around, especially if you do change your layout eventually.

I actually didn't have that problem when I was using ratpoison, but some applications (looking at you, Eclipse...) don't really work with it. (I know about stumpwm, and I do know Common Lisp, but alas, we just don't get along too well). When I moved to i3, which is greedy with screen space, I actually wrote myself a couple of scripts to handle this situation "gracefully" (automatically pad the screen with empty X11 windows, automatically un-pad them when needed) and bound them to a couple of key combinations.

I mean it sort of worked but at one point I decided I want to spend more time doing fun/useful things and less time hacking on my window manager.


Why didn't you use gaps instead of empty windows? Instead of hours writing scripts you could have spent 10 seconds adding a few lines of config.


This was before i3-gaps was a thing, if that's what you're referring to.


notion is a bit like i3 but with fixed containers that don't disappear when they become empty: https://notionwm.net/

herbstluftwm also has containers something similar




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: