Thomas Adam wrote:
There are a lot of things Fvwm does that IceWM does not, and while I am not going to outline the individual merits of each, you cannot, for instance, in IceWM do event actions. And while I have used IceWm, it just doesn't have..., well, it lacks something. :)
Since we're onto desktop/window manager wars ... :-)
My latest "standard" for how good such a thingy is:
- Can it emulate "ratpoison"?
- Can it improve on "ratpoison"?
- Can it do the above without bringing a low-end machine to a screeching, grinding, thrashing halt?
It turns out that (in combination with GNU "screen") FVWM, ICEWM and even (surprise) Gnome2+Metacity can do this. I haven't tried with KDE.
Some notes of explanation:
in combination with "screen" what this really means is that you should be able to maximize a window without title bars, menubars, borders, handles and all that fluff. This is what you really need when you are doing a deep hack or writing a paper.
means that you should be able to "switch" in and out of this ratpoison mode with some key combination (don't touch that mouse yet!). In the "real" GUI mode you should be able to use GIMP (which is ratpoison disabled or vice versa) and other such programs that require a mouse and/or graphical interface and non-mazimized windows.
is reasonably clear---low on memory usage for (a) but could use more memory in (b).
I might be able to write a little piece on how this is done but I wouldn't be able to withstand that flamage that might result :-) Besides my ESP-enabled fortune signature generator has something to say about the time I've spent on doing all this configuration.1
Ben Okopnik wrote:
Hey, some guy on Freshmeat wrote a good article on ratpoison being the ultimate WM (that's what got me looking at it), and didn't get flamed. Lots of positive comments, actually, IIRC.
Ooops, I feel a 2-cent tip coming up. :)
You asked for it. Here it is.
I got tired of spendHHHH^Hwasting my time configuring my window manager/desktop/themes/what have you and switched to "ratpoison". After a deep and productive hack I come up for relaxation and am faced with the pest-killer again. Can't do GIMP, screensavers, and the rest. How do I relax? Go and play football (soccer to some...)? No. Back to configuring my window manager so that it can at least be like ratpoison some of the time.
Defining the problem
How do I get my window manager to maximize a window without the handles, titlebars, buttons and all that fluff. In this window I might have a term with screen or emacs or mozilla (for those do-not-disturb browse-fests :-) why should the window manager care!
(The first WM that I learnt to do this with) Alt-z z is for zoom.
Alt-F11 (Yes, that's all!) F11 for "Fill the screen"
For a window manager that can do it all this should be easy; but I haven't quite figured it out. There *is* fvwm-shell and that has some settings that are 90% of the solution. (Unsurprisingly this is my current UI---I *need* to figure it out!).
You can define the relevant key using the window key bindings menu (there is no default binding). The relevant function is Toggle Maximize Window. Imagine the surprise on people's faces when they come and say "What! Are you running that pest-killer again? Give me a real desktop", you press a key and *wham* there is GNOME in all its glory (once it gets out of swap space that is...).
Yes. I know that all this does not reduce memory usage! On the other hand if you work/hack for long enough all that unused stuff should go into swap/disk so it shouldn't bother you.
For those who really want to work 90% of the time the alternative is to run ratpoison with one of the frames containing an Xnest that runs the eye-candy window manager. There is one problem with this solution---no DRI for the eye-candy which means that GL screensavers and the like will not produce good results.
Making this work with FVWM
Thomas Adam wrote:
Lots of ways you can do this [in FVWM]. I would define a function for it:
``` DestroyFunc FvwmMaximiseWindow AddToFunc FvwmMaximiseWindow + I Maximize 100 100 '''
This actually toggles between maximise/unmaximise.
Ah! But it does not remove the fluff.
However, die-hard fvwm'ers need not fear, fvwm2.5+ does have exactly the right function---WindowStyle. So, here is my addition to .fvwm2rc to make this work:
# Bind it to an "easy" but unusual # key combination Ctrl+Alt+Shift+z Key z A SCM FullScreen DestroyFunc FullScreen AddToFunc FullScreen + I Current WindowStyle NoHandles, NoTitle, !Borders + I Current UpdateStyles + I Maximize True 100 100 + I Key z A SCM NoFullScreen DestroyFunc NoFullScreen AddToFunc NoFullScreen + I Current WindowStyle Handles, Title, Borders + I Current UpdateStyles + I Maximize 100 100 + I Key z A SCM FullScreen
There is an alternate mechanism which is to have a Decor/NoDecor function pair which is separate from the Maximize function. By the way I forgot to mention that this is exactly the pair of buttons that are found in openbox.
So this completes my contribution to the 2c-tip for fullscreen+eye-candy solution using some popular window managers---fvwm, icewm, metacity and some relatively unknown ones like golem and ratpoison.
If people know solutions in sawfish, scwm, or KDE's default window manager or any other window manager, please do contribute...
If a 'train station' is where a train stops, what's a 'workstation'? ↩