Provided by: fvwm_2.7.0-3_amd64 bug

NAME

       FvwmM4 - the fvwm  M4 pre-processor

SYNOPSIS

       Module FvwmM4 [options] filename

       The  FvwmM4  module  can  only be invoked by fvwm.  Command line invocation of the FvwmM4 module will not
       work.

DESCRIPTION

       When fvwm executes the FvwmM4 module, FvwmM4 invokes the M4 pre-processor on the file  specified  in  its
       invocation, then FvwmM4 causes fvwm to execute the commands in the resulting file.

INVOCATION

       FvwmM4 can be invoked as a module using an fvwm command, from the .fvwm2rc file, a menu, mousebinding, or
       any of the many other ways fvwm commands can be issued.

       If the user wants his entire .fvwm2rc file pre-processed with FvwmM4, then fvwm should be invoked as:
       fvwm -cmd "Module FvwmM4 .fvwm2rc"

       Note  that the argument to the option "-cmd" should be enclosed in quotes, and no other quoting should be
       used.

       When FvwmM4 runs as a module, it runs asynchronously from fvwm.  If FvwmM4 is invoked from the  .fvwm2rc,
       the  commands  generated by FvwmM4 may or may not be executed by the time fvwm processes the next command
       in the .fvwm2rc.  Invoke FvwmM4 this way for synchronous execution:

       ModuleSynchronous FvwmM4 -lock filename

OPTIONS

       Some options can be specified following the modulename:

       -m4-prefix
              I think this makes all the m4 directives require the prefix "m4_".

       -m4-prefix-defines
              Causes built-in defines to be prefixed with "m4_" (i.e., m4_HOME is defined instead of HOME, etc.)

       -m4opt option
              Lets you pass an option to the m4 program.  Not really needed  as  any  unknown  options  will  be
              passed on automatically.

       -m4-squote character
              Lets you change the m4 start-of-quote character to character.

       -m4-equote character
              Lets you change the m4 end-of-quote character to character.

       -m4prog name
              Instead of invoking "m4", fvwm will invoke name.

       -outfile filename
              Instead of creating a random unique name for the temporary file for the preprocessed rc file, this
              option  specifies  the  name  of  the temporary file created.  FvwmM4 attempts to remove this file
              before writing to it, so don't point it at anything important even if it has read-only protection.

       -debug Causes  the  temporary  file  created  by  m4  to  be  retained.  This  file  is  usually   called
              "/tmp/fvwmrcXXXXXX"

       -lock  If you want to use this option you need to start FvwmM4 with ModuleSynchronous. This option causes
              fvwm  to  wait  that the pre-process to finish and then FvwmM4 asks fvwm to Read the pre-processed
              file before continuing. This can be useful at startup if you use a  session  manager  like  Gnome.
              Also, this is useful if you want to process and run a Form in an fvwm function.

       -noread
              Causes  the  pre-processed  file  to  be not read by fvwm. Useful for pre-processing an FvwmScript
              script.

CONFIGURATION OPTIONS

       FvwmM4 defines some values for use in the pre-processor file:

       TWM_TYPE
              Always set to "fvwm".

       SERVERHOST
              The name of the machine running the X Server.

       CLIENTHOST
              The name of the machine running fvwm.

       HOSTNAME
              The hostname of the machine running fvwm. Generally the same as CLIENTHOST.

       OSTYPE The operating system for CLIENTHOST.

       USER   The name of the person running fvwm.

       HOME   The home directory of the person running fvwm.

       VERSION
              The X11 version.

       REVISION
              The X11 revision number.

       VENDOR The X server vendor.

       RELEASE
              The X server release number.

       SCREEN The screen number.

       WIDTH  The screen width in pixels.

       HEIGHT The screen height in pixels.

       X_RESOLUTION
              Some distance/pixel measurement for the horizontal direction, I think.

       Y_RESOLUTION
              Some distance/pixel measurement for the vertical direction, I think.

       PLANES Number of color planes for the X server display

       BITS_PER_RGB
              Number of bits in each rgb triplet.

       CLASS  The X11 default visual class, e.g. PseudoColor.

       COLOR  Yes or No, Yes if the default visual class is neither StaticGrey or GreyScale.

       FVWM_CLASS
              The visual class that fvwm is using, e.g. TrueColor.

       FVWM_COLOR
              Yes or No, Yes if the FVWM_CLASS is neither StaticGrey or GreyScale.

       FVWM_VERSION
              The fvwm version number, ie 2.0

       OPTIONS
              Some combination of SHAPE, XPM, NO_SAVEUNDERS, and M4, as defined in configure.h at compile time.

       FVWM_MODULEDIR
              The directory where fvwm looks for .fvwm2rc and modules by default, as determined at compile time.

       FVWM_USERDIR
              The value of $FVWM_USERDIR.

       SESSION_MANAGER
              The value of $SESSION_MANAGER. Undefined if this variable is not set.

EXAMPLE PROLOG

       define(TWM_TYPE,``fvwm'')dnl
       define(SERVERHOST,``spx20'')dnl
       define(CLIENTHOST,``grumpy'')dnl
       define(HOSTNAME,``grumpy'')dnl
       define(OSTYPE,``SunOS'')dnl
       define(USER,``nation'')dnl
       define(HOME,``/local/homes/dsp/nation'')dnl
       define(VERSION,``11'')dnl
       define(REVISION,``0'')dnl
       define(VENDOR,``HDS human designed systems, inc. (2.1.2-D)'')dnl
       define(RELEASE,``4'')dnl
       define(SCREEN,``0'')dnl
       define(WIDTH,``1280'')dnl
       define(HEIGHT,``1024'')dnl
       define(X_RESOLUTION,``3938'')dnl
       define(Y_RESOLUTION,``3938'')dnl
       define(PLANES,``8'')dnl
       define(BITS_PER_RGB,``8'')dnl
       define(CLASS,``PseudoColor'')dnl
       define(COLOR,``Yes'')dnl
       define(FVWM_VERSION,``1.24l'')dnl
       define(OPTIONS,``SHAPE XPM M4 '')dnl
       define(FVWM_MODULEDIR,``/local/homes/dsp/nation/modules'')dnl
       define(FVWM_USERDIR,``/local/homes/dsp/nation/.fvwm'')dnl
       define(SESSION_MANAGER,``local/grumpy:/tmp/.ICE-unix/440,tcp/spx20:1025'')dnl

AUTHORS

       FvwmM4 is the result of a random bit mutation on a hard disk, presumably a result  of  a   cosmic-ray  or
       some such thing.

3rd Berkeley Distribution                    19 October 2022 (2.7.0)                                   FvwmM4(1)