I haven't used a tiling WM but I'm intrigued by the idea. I have reservations, specifically that I have really poor eyesight so I honestly don't know how many windows I could usefully put on a screen anyway. But still, piles of windows are a mess.
But here's where I always get stuck on such things with Linux in particular:
1. It's usually a whole new set of keybinds I have to learn. I feel the same way about tmux/screen, emacs and vim and the like. For the others I get that there is a point because you can use all of them in vt-environments (eg over ssh connections). Whatever the case, they all represent a cognitive load that I have difficulty motivating myself to summit. You just get a lot of behaviour for free with a traditional mouse UI;
2. An esoteric scripting/configuration language, in this case Haskell for XMonad (it seems?). Often the out-of-the-box defaults will be sparse and/or rough and you'll have a whole bunch of conflicting advice on how you should modify that.
This works for many people and I"m genuinely happy for you.
Are there any tiling WMs that are a little more... accessible?
> I have reservations, specifically that I have really poor eyesight so I honestly don't know how many windows I could usefully put on a screen anyway.
Although I have a very good eyesight, my eyes tire fast when I look at small things.
I browse HN with 240% Zoom on 23" 1920x1080; vscode: font "Iosevka SS16", font size 33px.
So because of that I use i3 WM (...I have never used other tiling WMs):
On every virtual desktop I press Win+w (or sometimes Win+e if the monitor is rotated) to enable "Tabbed container layout"
and then I can switch between windows immediately by Win+Left and Win+Right.
With Win+w all windows use 100% of the display width and 99-100% of the display height (I also set border width 0px and disabled taskbar/statusbar), i.e. they are maximized.
Windows have no their own title bar, but you can see the window titles on the very top of the screen.
Since a window can use more space, I can use bigger fonts without being shown almost nothing.
Well, KDE probably too has an option to launch windows maximized by default, but probably not the other features.
> 1. It's usually a whole new set of keybinds I have to learn.
I use the i3's defaults:
1) Win+1..9
2) Win(+Shift)+Up/Down/Left/Right
3) Win+D (similar to Gnome's ALT+F2)
4) rarely Win+Shift+Space (disables tiling for a window)
5) rarely Win+Space (enables tiling back for a window)
That's all (also Win+Shift+j to reload the i3 config but I didn't remember this hotkey for years).
But if I had a 46" 4K monitor, I would use i3 as most others do (i.e. multiple windows are shown at the same time).
One big advantage of most tiling WMs is being able to navigate without the mouse, so there's always going to be some keybindings to learn.
You might like Regolith, which is basically an opinionated i3 setup you can install on top of Ubuntu as a set of packages. It integrates with Gnome and is ready-to-go out of the box, compared to manually installing and configuring i3 and its accessories.
It's also available as a LiveUSB and complete install if you prefer that route.
The keybindings for XMonad are pretty similar to the keybindings for GNU screen - if you already spent time getting comfortable with screen, it won't take you too long to pick up.
dwm is a tiling window manager with very similar keybindings to XMonad, and it's written in C. I used it for a bit before I switched to XMonad... I mostly discovered that if you were fine with the default configuration, they were largely interchangeable, but XMonad had a more sizable community and much more options for configuration. The config is also not that bad to copy/paste and treat as just a bizarre config file syntax (of which I think we've all used many).
Personally I think a tiling window manager works at least as well with 1-2 windows on the screen as with tons. I actually don't use one now (I'm mostly on Windows for work) but I extensively used it on my netbook which didn't have the screen space to effectively use more than two windows.
I use stumpwm, but to be honest I think I barely added any config options. Sloppy mouse focus was one and another to take screenshots with flameshot. Sloppy mouse focus in particular is huge. Works well with a tiling wm imo. The cursor tells me where my focus should be much better than a thin little outline moving around the screen. I was intimidated by all the lispiness of wms until I realized that I'm pretty content with out-of-the-box functionality and google got me the rest of the way.
Similarly, I've memorized new window and new horizontal/vertical split for tmux and that's like...98% of my usage so I'm set.
vim definitely requires more effort, but the payoff for me was making it so that I'm always either in the terminal or in firefox. I still use the arrow keys to move around in documents and I've been using it as my daily driver for work for years.
As a result, I have two monitors, one dedicated to firefox and one to the terminal (includes vim + db clients + everything else). I don't split my terminal like crazy, almost very tmux window is fullsize. I split vim 3-4 times at most and make use of a buffer-switching list thing that's way more intuitive to me than remembering the vim commands to cycle through them.
Most of the reason I use a wm is because for two applications, I don't need window decorations and it just seemed like a waste in general.
For the amount of power-user tools I use I feel like a totel poser. But it works for me, and I think that's what matters.
> Are there any tiling WMs that are a little more... accessible?
Yes! Pop shell by system76. It's an extension to gnome and not its own window manager so you get stuff like volume keys, screen brightness indicators, status bars display settings, and so on for free instead of needing to piece together a separate solution for every tiny thing.
You can do everything with a mouse if you want. I've started with just using a mouse and every few weeks I try and learn a shortcut or two for what I do most frequently.
I used to use xmonad but now use pop-shell. Only because of the great gnome integration. It's not as advanced as xmonad but gets me 80% of the way there.
I used i3wm for many years. It's great. However, at some point I felt fatigued and decided that I didn't
need the additional complexity and manual labor. Sure, I may save a few seconds every day, but I also lose a bunch maintaining my config file and providing basic funcionality that is not out of the box. Nowadays all major desktop environments have great tiling features and extensive keyboard shortcuts -- especially KDE Plasma, which is what I use now.
I recommend a TWM if you have the time and the energy for that, if you want to tinker a lot your environment. It can be pretty cool, but also a drag. There's always some little thing to fix, and basic things are simply not part of the package. So be prepared to write scripts and use third party tools with varying degrees of documentation for many things you take for granted on a desktop environment.
Regarding your other concerns, you can literally change all keybindings on i3wm, so you can make them follow the logic you're already used to. And i3wm is great for working fullscreen as well.
There was a time when I knew a few screen/tmux bindings but I'm afraid that's been relegated to history. For years now I've used tmux in concern with iterm2 so everything I do is with a mouse/trackpad.
But flipping between full screen apps is probably where I need to be so I'll check it out. I appreciate the suggestion.
But here's where I always get stuck on such things with Linux in particular:
1. It's usually a whole new set of keybinds I have to learn. I feel the same way about tmux/screen, emacs and vim and the like. For the others I get that there is a point because you can use all of them in vt-environments (eg over ssh connections). Whatever the case, they all represent a cognitive load that I have difficulty motivating myself to summit. You just get a lot of behaviour for free with a traditional mouse UI;
2. An esoteric scripting/configuration language, in this case Haskell for XMonad (it seems?). Often the out-of-the-box defaults will be sparse and/or rough and you'll have a whole bunch of conflicting advice on how you should modify that.
This works for many people and I"m genuinely happy for you.
Are there any tiling WMs that are a little more... accessible?