NAME
FvwmSaveDesk - another FVWM desktop-layout saving
module
SYNOPSIS
FvwmSaveDesk is spawned by fvwm, so no command
line invocation will work.
DESCRIPTION
When called, this module will attempt to save
your current desktop layout as a definition of extra lines for the
function InitFunction into the file .fvwm2desk in your home
directory. As explain in the other documentation, this function is
called at startup of fvwm. You have to include this file in
.fvwm2rc after the definition of the Function Initfunction.
You can do this by using the module FvwmM4 or
FvwmCpp.
Your applications must supply certain hints to the X window
system. Emacs and Netscape, for example, does not, so
FvwmSaveDesk can't get any information from it.
Also, FvwmSaveDesk assumes that certain command line options are
globally accepted by applications, which may not be the case.
SETUP USING FVWMM4 MODULE
The M4 Macro processor
substitutes its macros even in the middle of a word. Because of
that you may have problems with predefined macros such as include
or define. To avoid this the GNU M4 has an extra option to prefix
all builtins with 'm4_'. FvwmM4 can be called with option
-m4-prefix and then will provide the option -P to M4. I personally
use the FvwmM4 module this way.
fvwm2 -cmd "FvwmM4 -m4-prefix -m4opt -I$HOME $HOME/.fvwm2rc"
Simply add the following line to the end of .fvwm2rc:
m4_include(`.fvwm2desk') .
SETUP USING FVWMCPP MODULE
With the FVWMCPP you may have
the problem that the preprocessor directives starts with the
comment character '#' and will complain about unknown directives,
if you have comments in your .fvwm2rc.
fvwm2 -cmd "FvwmCpp -C-I$HOME $HOME/.fvwm2rc"
Simply add the following line to the end of .fvwm2rc:
#include ".fvwm2desk"
INVOCATION
FvwmSaveDesk can be invoked by adding it to a
menu or binding it to a mouse button or key stroke in the
.fvwm2rc file. Fvwm will search directory specified in the
ModulePath configuration option to locate FvwmSaveDesk.
To insert it to a menu, add the line
+ "Save Desktop" Module FvwmSaveDesk
to the menu definition. I thing binding it to a mouse button is not
very useful, but you can do that, by adding for example this line.
Mouse 3 R CS Module FvwmSaveDesk
Than FvwmSaveDesk will be called if you hit the right mouse button
on the root window while holding the shift and control button down.
You can bind FvwmSaveDesk to a function key F10 for example you
have to insert the following line:
Key F10 A Module FvwmSaveDesk
I personally add it as a Button to the module FvwmButtons:
*FvwmButtons SaveDesc desk.xpm Module FvwmSaveDesk
AUTHOR
Carsten Paeth (calle@calle.in-berlin.de)