1FvwmM4(1)                        Fvwm Modules                        FvwmM4(1)
2
3
4

NAME

6       FvwmM4 - the fvwm  M4 pre-processor
7

SYNOPSIS

9       Module FvwmM4 [options] filename
10
11       The FvwmM4 module can only be invoked by fvwm.  Command line invocation
12       of the FvwmM4 module will not work.
13
14

DESCRIPTION

16       When fvwm executes the FvwmM4 module, FvwmM4 invokes the M4 pre-proces‐
17       sor on the file specified in its invocation, then FvwmM4 causes fvwm to
18       execute the commands in the resulting file.
19
20

INVOCATION

22       FvwmM4 can be invoked as a module  using  an  fvwm  command,  from  the
23       .fvwm2rc file, a menu, mousebinding, or any of the many other ways fvwm
24       commands can be issued.
25
26       If the user wants his entire .fvwm2rc file pre-processed  with  FvwmM4,
27       then fvwm should be invoked as:
28       fvwm -cmd "Module FvwmM4 .fvwm2rc"
29
30       Note  that  the  argument  to  the  option "-cmd" should be enclosed in
31       quotes, and no other quoting should be used.
32
33       When FvwmM4 runs as a module, it runs  asynchronously  from  fvwm.   If
34       FvwmM4  is  invoked from the .fvwm2rc, the commands generated by FvwmM4
35       may or may not be executed by the time fvwm processes the next  command
36       in the .fvwm2rc.  Invoke FvwmM4 this way for synchronous execution:
37
38       ModuleSynchronous FvwmM4 -lock filename
39
40

OPTIONS

42       Some options can be specified following the modulename:
43
44       -m4-prefix
45              I  think  this  makes  all  the m4 directives require the prefix
46              "m4_".
47
48
49       -m4-prefix-defines
50              Causes built-in defines to be prefixed with "m4_" (i.e., m4_HOME
51              is defined instead of HOME, etc.)
52
53
54       -m4opt option
55              Lets you pass an option to the m4 program.  Not really needed as
56              any unknown options will be passed on automatically.
57
58
59       -m4-squote character
60              Lets you change the m4 start-of-quote character to character.
61
62
63       -m4-equote character
64              Lets you change the m4 end-of-quote character to character.
65
66
67       -m4prog name
68              Instead of invoking "m4", fvwm will invoke name.
69
70
71       -outfile filename
72              Instead of creating a random unique name for the temporary  file
73              for  the preprocessed rc file, this option specifies the name of
74              the temporary file created.  FvwmM4 attempts to remove this file
75              before  writing  to  it, so don't point it at anything important
76              even if it has read-only protection.
77
78
79       -debug Causes the temporary file created by m4  to  be  retained.  This
80              file is usually called "/tmp/fvwmrcXXXXXX"
81
82
83       -lock  If  you  want  to  use this option you need to start FvwmM4 with
84              ModuleSynchronous. This option causes fvwm to wait that the pre-
85              process to finish and then FvwmM4 asks fvwm to Read the pre-pro‐
86              cessed file before continuing. This can be useful at startup  if
87              you  use  a  session manager like Gnome. Also, this is useful if
88              you want to process and run a Form in an fvwm function.
89
90
91       -noread
92              Causes the pre-processed file to be not read by fvwm. Useful for
93              pre-processing an FvwmScript script.
94
95
96

CONFIGURATION OPTIONS

98       FvwmM4 defines some values for use in the pre-processor file:
99
100
101       TWM_TYPE
102              Always set to "fvwm".
103
104       SERVERHOST
105              The name of the machine running the X Server.
106
107       CLIENTHOST
108              The name of the machine running fvwm.
109
110       HOSTNAME
111              The  hostname of the machine running fvwm. Generally the same as
112              CLIENTHOST.
113
114       OSTYPE The operating system for CLIENTHOST.
115
116       USER   The name of the person running fvwm.
117
118       HOME   The home directory of the person running fvwm.
119
120       VERSION
121              The X11 version.
122
123       REVISION
124              The X11 revision number.
125
126       VENDOR The X server vendor.
127
128       RELEASE
129              The X server release number.
130
131       SCREEN The screen number.
132
133       WIDTH  The screen width in pixels.
134
135       HEIGHT The screen height in pixels.
136
137       X_RESOLUTION
138              Some distance/pixel measurement for the horizontal direction,  I
139              think.
140
141       Y_RESOLUTION
142              Some  distance/pixel  measurement  for the vertical direction, I
143              think.
144
145       PLANES Number of color planes for the X server display
146
147       BITS_PER_RGB
148              Number of bits in each rgb triplet.
149
150       CLASS  The X11 default visual class, e.g. PseudoColor.
151
152       COLOR  Yes or No, Yes if the default visual class is neither StaticGrey
153              or GreyScale.
154
155       FVWM_CLASS
156              The visual class that fvwm is using, e.g. TrueColor.
157
158       FVWM_COLOR
159              Yes  or  No,  Yes  if  the  FVWM_CLASS  is neither StaticGrey or
160              GreyScale.
161
162       FVWM_VERSION
163              The fvwm version number, ie 2.0
164
165       OPTIONS
166              Some combination  of  SHAPE,  XPM,  NO_SAVEUNDERS,  and  M4,  as
167              defined in configure.h at compile time.
168
169       FVWM_MODULEDIR
170              The  directory  where  fvwm  looks  for  .fvwm2rc and modules by
171              default, as determined at compile time.
172
173       FVWM_USERDIR
174              The value of $FVWM_USERDIR.
175
176       SESSION_MANAGER
177              The value of $SESSION_MANAGER. Undefined if this variable is not
178              set.
179
180

EXAMPLE PROLOG

182       define(TWM_TYPE,``fvwm'')dnl
183       define(SERVERHOST,``spx20'')dnl
184       define(CLIENTHOST,``grumpy'')dnl
185       define(HOSTNAME,``grumpy'')dnl
186       define(OSTYPE,``SunOS'')dnl
187       define(USER,``nation'')dnl
188       define(HOME,``/local/homes/dsp/nation'')dnl
189       define(VERSION,``11'')dnl
190       define(REVISION,``0'')dnl
191       define(VENDOR,``HDS human designed systems, inc. (2.1.2-D)'')dnl
192       define(RELEASE,``4'')dnl
193       define(SCREEN,``0'')dnl
194       define(WIDTH,``1280'')dnl
195       define(HEIGHT,``1024'')dnl
196       define(X_RESOLUTION,``3938'')dnl
197       define(Y_RESOLUTION,``3938'')dnl
198       define(PLANES,``8'')dnl
199       define(BITS_PER_RGB,``8'')dnl
200       define(CLASS,``PseudoColor'')dnl
201       define(COLOR,``Yes'')dnl
202       define(FVWM_VERSION,``1.24l'')dnl
203       define(OPTIONS,``SHAPE XPM M4 '')dnl
204       define(FVWM_MODULEDIR,``/local/homes/dsp/nation/modules'')dnl
205       define(FVWM_USERDIR,``/local/homes/dsp/nation/.fvwm'')dnl
206       define(SESSION_MANAGER,``local/grumpy:/tmp/.ICE-unix/440,tcp/spx20:1025'')dnl
207
208

AUTHORS

210       FvwmM4  is  the result of a random bit mutation on a hard disk, presum‐
211       ably a result of a  cosmic-ray or some such thing.
212
213
214
2153rd Berkeley Distribution  05 September 2019 (2.6.9)                 FvwmM4(1)
Impressum