Interesting idea just came to me. Some window managers offer 'smart' placement for new windows, basically such that they overlap minimally with other windows on the desktop. Its not really that smart. (fluxbox, pekwm, I think icewm)
Some window managers offer tiling of windows, such that windows never overlap. This works nice for some windows, not so nice for others. (wmi, ion, ratpoison, I think fvwm now)
Some window managers offer the ability to have windows open at specific sizes or locations on the screen (enlightenment, pekwm, gnome, I think kde)
At least one window manager has a 'fill space' function that basically maximizes in each direction until it hits the edge of another window. (pekwm)
I like tiling, but its a bit inflexible for me. I use pekwm which supports floating, not tiled windows. This sucks, but I have it configured to open my most popular windows at certain locations and sizes such that they never overlap. My less popular windows I open on other desktops as needed, usually, and I arrange them manually, making extensive use of the 'fill space' command so that nothing overlaps and everything appears tiled. This means I generally have to resize windows when they are opened.
Now, my idea: I was wondering about combining the 'smart placement' feature with the 'automatic placement' feature. Basically, certain windows could have a maximum and minimum size in each dierction. Then when an instance of that window is open, the smart placement algorithm can see if there is a free space on the desktop that is within those maximum and minimum values. This would perform a sort of automatic dynamic tiling for me for new windows.
This would be absolutely wonderful for terminals, of which I often have several open, and I usually resize them to fill various spaces depending on how much output I need visible and how much of another window (ie: editor, IDE, web browser) I also need visible, etc. I think it would be more flexible than tiling, but less irritating than the time I waste positioning windows each time they open.
Thoughts? Offers to implement? ;-)
That would be an interesting idea. You might run into problems with consistency and things not opening exactly how you suspect, but I guess you could always customize the window preferences for each application.
As far as multiple terminals go, you could use <code>screen</code> to take care of that problem. Anyway, interesting thoughts...I wonder if anything like that exists out there.
As far as multiple terminals go, you could use <code>screen</code> to take care of that problem.
No, I often want something like this:
--------------------------- |editor | xterm | | |_____ | | | xterm | |________|_______| |xterm| xterm|gaim| | | | | --------------------------
Which isn't really screenable. Further, I might have two xterm windows open and find I have to open too more. I want to get it into *something* resembling the above configuration ASAP with as few mouse or keyboard clicks as possible. Now, for the above config, tiling would probably actually be fastest, but for other arrangements, tiling tends to get in the way.