IMO, tiled Quake-style overlay terminals (guake, yakuake, iTerm hotkey window) over floating windows offer the best of both worlds.
AwesomeWM uses a tag system for windows, so you assign windows to one or more tags, then you can freely view one or many tags at the same time, compared to the traditional "workspaces" approach that for example Gnome and macOS has.
Both are more painful than a simple keystroke. And you can immediately go back to the same window configuration you were at after you've done the copying.
> Rarely will I ever have more than one or two windows open per workspace.
Same here. I have some workflows where I need 3 windows. The times I need more occur once every so many months.
Reading all the comments on this submission, I don't understand why people are associating tiling WMs with "many windows on the same virtual desktop". Tiling WMs also have virtual desktops. I personally like that I don't have to manually maximize anything any more. What I'm really grateful for is not having to manually move/resize/switch windows around when one is overlapping the other. It's very painful when I have to use a system that isn't a tiling WM.
I'm surprised anyone would want a non-tiled window for this. I'm always annoyed at having to manually drag the windows to a corner each when following instructions on systems not my own.
Yup. I use the Awesome WM on Linux too and it's exactly what I do, since forever.
I've got for example one of the workspace in floating mode and it's using rules for app placement: only Emacs visible in that workspace? In the middle. Emacs+browser visible in that workspace? Browser on the right of Emacs. Emacs+browser+up to four xterms, Emacs and browser don't change size, but the xterms do.
I'm using a 38" monitor since 2017 and I noticed that the bigger the monitor, the more there'll be times when you need actual rules saying exactly how things should be laid out.
But I'm still using tiling modes in most workspaces.
As a bonus I do "funny things" when switching between workspaces.
For example I've got 13 workspaces or so: by default Awesome WM only gives you 10 btw but I added a few others, in addition to shortcut+0-9, which I access with shortcut+a/b/c/d [the shortcut key you actually use for that is ofc configurable too]). And out of all these workspaces, there's only one which is allowed to use the CPU at full speed: all my other workspace put the CPU governor automatically on "powersave" mode.
And it's only in my "dev" workspace that the CPU can ramp up to its full speed.
Now I'm toying with something else: per-user firewalling rules (I'm using several user accounts and I already have got rules for each user) but also per-workspace firewalling rules. For example when I switch away from the workspace with the throwaway user account that's used for surfing, the firewall shuts off Internet access for that user (even if the browser is still opened: so as soon as I get back to that workspace, the net works again for that user).
Because if you think of it: why should a non-visible browser even be able to emit/receive any networking trafic? Every single proper webapp (all the Google suite, my broker's webapps, my banks, etc.) all do handle network disconnect just fine. Arguably a webapp that cannot deal with the network going off is not much of a webapp.
So when I switch to a workspace that doesn't contain a visible browser: the browser(s) do believe the Internet just got cut off.
If I've got a browser that really needs Internet access even when it's not visible (for example because I'm downloading something huge), I can send it, using a shortcut, to a workspace which allows web traffic. Awesome WM has got shortcuts for everything.
It's really sweet.
And as it's Linux: it's rock stable solid. It may take some time to set up properly but once it's done, it's done and shall keep working.
The "CPU governor changing depending on which workspace I'm on" is working since years. The "firewalling rules changing depending on which workspace I'm on" is a recent addition.
P.S: as a bonus, upon starting, I've got my Awesome WM configured to "pre populate" all the virtual desktops with the apps I know I'll use (say I'll always have my browser linked to my professional email on workspace 1, while workspace 12 shall always be the "throwaway browser" that's reset everytime I reboot the system).
Using workspaces to toggle the network is brilliant!
Personally, I do want all windows to tile. Your comment has left me wondering what the preference is across tiling desktop users.
I don't think I _ever_ use floating windows for anything. Except pop-ups from applications that don't properly configure their pop-ups as such. My secret storage shows an overlay prompt to disclose permissions too. But that's also kind of a pop-up.
> I suspect most tiling WM users don't either. I suspect most/all such WMs provide an option for this.
Well, here I am, opening terminal on the same tag I have a firefox window to run command and read docs. I should learn to stick window to multiple tags at once.
I suspect most tiling WM users don't either. I suspect most/all such WMs provide an option for this.
I can speak only for Awesome WM. You can configure it so that certain applications don't tile. So if you want your media player to always be in floating mode, simply add that entry to your config.
Alternatively, because you have multiple virtual workspaces, you can designate one or more of them to be in floating mode. Then every application in that workspace will be floating (i.e. you don't need to manually add them to your config).
You can with a keystroke switch a given workspace into floating vs tiling mode.
You can, with a keystroke, switch a given application into floating mode - even if the workspace is in tiling mode.
With Awesome, your virtual workspaces are not really workspaces, but "work configuration tags". So I can have Firefox in workspace 1, and xterm in workspace 2. In each one, they are maximized. Then if I ever need them in the same workspace, I can add both of them to workspace 3. So now:
Firefox is in both workspace 1 and workspace 3. xterm is in both workspace 2 and workspace 3.
When I'm in workspace 1, I see only Firefox. When I'm in workspace 2, I see only xterm. When I'm in workspace 3, I see both (tiled).
There are plenty of options. For me, it's the rare exception when I don't want a window tiled. And with a quick keystroke I switch it to floating mode.
(For media players, I've configured them to always run full screen, so it doesn't matter how many other applications are tiled in that workspace).