4 ms·
Other users have mentioned situations where this is true (and I have run into them myself too). But tiling window managers + workspaces are just so much more ef
by the_pwner224 7y ago
Other users have mentioned situations where this is true (and I have run into them myself too). But tiling window managers + workspaces are just so much more efficient for almost all use cases. And they don't have to have a steep learning curve.
I use KDE with the grid tiling plugin. When I open a window, it takes up the whole screen. Opening another window splits the screen in half vertically. They can be dragged as normal to swap positions. Opening a third window splits one window into two, horizontally. This goes up to a (configurable) 2x2 grid.
There are only four basic keyboard shortcuts to remember: meta+F floats a window to make it not affect tiling; meta+T makes it tiled again. Floating is useful for small utilities like calculators or temporary status indicators; they always float above the tiled windows. meta+Q/E shrink/grow the current window, and the rest adjust size to fit (of course window borders can still be dragged and it works the same).
Since every window is always visible, there is no need for a window list in the taskbar - mine only has the date/time, status icons for notifications, and the workspace pager (map).
Virtual desktops are the last part. You obviously will want more than three windows. I use a 4x4 grid of 16 desktops; 4 total desktops is more practical for normal people. They are mapped to a 4x4 square of keys on my keyboard. A few windows for applications like email or IM have a permanent space on the bottom row of 4 desktops. Normally I stay in the top left desktop and move to adjacent ones once space starts running out on the primary one.
The pager in the taskbar shows an overview of the grid. meta+WASD or arrow keys switches between them; holding ctrl moves the current window along to the other desktop. Oh, and meta+tab is like alt-tab but for workspaces.
This maximizes screen space that can be used. In a floating WM like Windows/macOS, only maximized windows take up the full screen; every other window is smaller. Windows has a 2-pane L/R split builtin, which is a weak replication of my system. If you have three floating windows open, using all the screen real estate is a frustrating task of dragging windows by their titlebars and then using the thin borders to resize them. With my system they just magically appear into place; the only user input is to swap their positions or resize them.
With floating WMs if you have more than 4 windows open you have to either:
A) leave bits of windows visible behind the other, which takes up time to arrange the windows, or
B) frequently focus on the taskbar and select windows, which is very inefficient
Workspaces solve this well, especially when put in a grid instead of a row. Related things are just a single press of meta+WASD away, clustered in their own area in the grid.
- tsss 7y agoIt's clear that the floating windows paradigm is outdated and we need something better. But I'm not sure that floating WMs like you see on linux today are the answer (even ignoring their terrible usability for anyone but power users). Personally, the situations where I actually want to have windows next to each other for any significant amount of time are basically a one in a million occurance. Usually I have multiple "complex" windows open that I switch between (browser, IDE and so on). It would be nice to have them visible next to each other all the time, but there is simply not enough screen space to do so, tiling or not. The other use case that happens very often is that I have a "complex" window open and need to quickly drag&drop a file from the file explorer into that window. Again, a tiling WM is not suitable for this because it would make both windows too small to use. Many tiling WMs also lack the concept of minimizing. It's often the case that I have multiple windows (for example file explorers with different directories) where I only need one window at a time and the others are minimized for quite a while. But I do not want to close those windows because I will still need them later.
- the_pwner224 7y agoI actually decided to try tiling because using heavy applications like IDEs was annoying in floating WMs - it was a constant stream of interrupting work to go to the window list in the taskbar or alt-tabbing 'X' number of times to go back to that other window. Virtual desktops solve these problems effectively if the shortcuts are set up properly (not ctrl-alt-1/2/3/4 and ctrl-alt-arrowkeys, which iirc has been the default for a while). When I am programming I have one workspace with just one terminal running vim split into a 3x3 grid of files. Next to it is a workspace with a terminal and Firefox running side-by-side - terminal to compile/run and FF for documentation. Below and diagonal to the the vim workspace accumulates whatever else I'm needing at the time - file explorers, terminals, browsers, GIMP, etc. Switching between these workspaces is easier than alt-tabbing (meta+WASD - only one finger needs to move, and also meta + the 4x4 grid on the keyboard mapped one key to each workspace for long-distance moves). Minimizing is accomplished by moving it to another workspace: meta+alt+WASD. The only real issue is drag-n-drop, which requires the sequence of: float the window => move it to the other workspace => drag-n-drop => move it back to the initial workspace => unfloat.