Subject: FVWM: [2.0.44] Bugs in the fvwm2.man page

From: "Paul D. Smith" <[email-masked]>
Date: Thu, 16 Jan 97 16:44:47 EST

Here's a patch to the fvwm2.man page fixing some spelling and other
errors.

Note in particular the fix in the Mouse definition section; without this
the formatted man page is missing an entire line and the docs are
incorrect.

Also, I think some examples are absolutely critical.  Especially because
the strictly alphabetical ordering of the sections in the man page can
be quite confusing: you come to AddButtonStyle before you find
ButtonStyle, for example.  It can be really hard to figure out what's
going on... I'm still not clear on the difference--is it just that
AddButtonStyle adds to the existing style, while ButtonStyle deletes the
existing style, if any, first?  If so, it seems to me that this syntax
is a bit confusing.  Can't ButtonStyle incorporate both of these?

Also, the new syntax of (), --, and ! for styles should be explained,
perhaps, in its own section.

And some examples of good uses of decors, title styles, etc. is
imperative.  I'm not necessarily saying all these should go in the man
page, of course, but some comments somewhere to help one wade through
the myriad features is mandatory.  I'm lost!

--- fvwm.man-dist	Tue Jan 14 17:38:43 1997
+++ fvwm.man	Thu Jan 16 16:42:53 1997
@@ -52,7 +52,7 @@
 When sloppy focus is used as the default focus style, it is nice to
 make windows in which you do not typically type into (xmag, xman,
 xgraph, xclock, xbiff, etc) click-to-focus, so that your terminal
-window doesn't loose focus unnecessarily.
+window doesn't lose focus unnecessarily.
 
 .SH COPYRIGHTS
 Since \fIfvwm\fP is derived from \fItwm\fP code it shares \fItwm\fP's 
@@ -118,7 +118,7 @@
 each the size of the physical screen, windows which are larger than
 the screen or large groups of related windows can easily be viewed.
 
-The (m by n) size (ie number of pages) of the virtual desktops can be
+The (m by n) size (i.e. number of pages) of the virtual desktops can be
 changed any time, by using the DeskTopSize built-in command.  All
 virtual desktops must be (are) the same size.  The total number of
 distinct desktops need not be specified, but is limited to
@@ -200,15 +200,15 @@
 local connections, as it may use Unix-domain sockets, which are
 faster.
 
-\fIFvwm\fP has a two special functions for inititalization:
+\fIFvwm\fP has a two special functions for initialization:
 InitFunction and RestartFunction, which are executed during
 Initialization and Restarts (respectively).  These may be customized
-in the user's rc file via the AddToFunc facilitly (described later) to
+in the user's rc file via the AddToFunc facility (described later) to
 start up modules, xterms, or whatever you'd like have started by
 \fIfvwm\fP.
 
 \fIFvwm\fP also has a special exit function: ExitFunction, executed
-when exitting or restarting before actually quitting or anything else.
+when exiting or restarting before actually quitting or anything else.
 It could be used to explicitly kill modules, etc.
 
 .SH COMPILATION OPTIONS
@@ -529,8 +529,8 @@
 .EE
 The quoted portion of the function tells what kind of action will
 trigger the command which follows it.  "I" stands for Immediate, and is
-executed as soon as the function is invoked.  "M" stands for Motion, ie
-if the user starts moving the mouse.  "C" stands for Click, ie, if the
+executed as soon as the function is invoked.  "M" stands for Motion, i.e.
+if the user starts moving the mouse.  "C" stands for Click, i.e., if the
 user presses and releases the mouse in a short period of time
 (ClickTime milliseconds).  "D" stands for double-click.  The action "I"
 will cause an action to be performed on the button-press, if the
@@ -539,7 +539,7 @@
 The special symbols $w and $0 through $9 are available in the
 ComplexFunctions or Macros, or whatever you want to call them.  Within
 a macro, $w is expanded to the window-id (expressed in 
-hex, ie 0x10023c) of the window for which the macro was called.  $0
+hex, i.e. 0x10023c) of the window for which the macro was called.  $0
 though $9 are the arguments to the macro, so if you call
 .EX
 Key F10	R	A	Function MailFunction xmh "-font fixed"
@@ -695,8 +695,8 @@
 for ActiveDown).  This behavior is consistent, but may seem confusing
 at first.
 
-Button styles are classified as nondestructive, partially destructive,
-or fully destructive.  Nondestructive styles do not affect the image.
+Button styles are classified as non-destructive, partially destructive,
+or fully destructive.  Non-destructive styles do not affect the image.
 Partially destructive styles can obscure some or all parts of the
 underlying image (i.e. Pixmap).  Fully destructive styles obscure the
 entire underlying image (i.e. Solid or one of the gradient styles).
@@ -707,7 +707,7 @@
 compilation options, some button styles may be unavailable).
 
 The "Simple" style does nothing.  There are no arguments, and this
-style is an example of a nondestructive button style.
+style is an example of a non-destructive button style.
 
 The "Default" style conditionally accepts one argument: a number which
 specifies the default button number to load.  If the style command
@@ -833,7 +833,7 @@
 keyboard focus.

-.IP "CursorMove \fIhorizonal vertical\fP"
+.IP "CursorMove \fIhorizontal vertical\fP"
 Moves the mouse pointer by \fIhorizontal\fP pages in the X direction
 and \fIvertical\fP pages in the Y direction.  Either or both entries
 may be negative.  Both horizontal and vertical values are expressed in
@@ -1159,7 +1159,7 @@
 
 .IP "Mouse \fIButton Context Modifiers Function\fP"
 Defines a mouse binding, or removes the binding if \fIFunction\fP is
-'-'.  . \fIButton\fP is the mouse button number.  If \fIButton\fP is
+\'-'.  . \fIButton\fP is the mouse button number.  If \fIButton\fP is
 zero then any button will perform the specified function.
 \fIContext\fP describes where the binding applies.  Valid contexts are
 R for the root window, W for an application window, T for a window
@@ -1256,7 +1256,7 @@

 .IP "PipeRead \fIcmd\fP"
-Causes fvwm to read commands outputted from the program named
+Causes fvwm to read commands output from the program named
 \fIcmd\fP.  Useful for building up dynamic menu entries based on a
 directories contents, for example.
 
@@ -1493,7 +1493,7 @@
 
 StartsOnDesk takes a numeric argument which is the desktop number on
 which the window should be initially placed.  Note that standard Xt
-programs can also specify this via a resource (eg "-xrm '*Desk: 1'").
+programs can also specify this via a resource (e.g. "-xrm '*Desk: 1'").
 
 StaysOnTop makes the window always try to stay on top of the other
 windows.  This might be handy for clocks or mailboxes that you would
@@ -1545,7 +1545,7 @@
 for a window can be reassigned with ChangeDecor.
 
 UseStyle takes one arg, which is the name of another style.  That way
-you can have unrelated window names easily inherit similiar traits
+you can have unrelated window names easily inherit similar traits
 without retyping.  For example: 'Style "rxvt" UseStyle "XTerm"'.
 
 SkipMapping tells fvwm not to switch to the desk the window is on when
@@ -1563,7 +1563,7 @@
 clicked in.  The default MouseFocus (or its alias FocusFollowsMouse)
 tells fvwm to give the window the focus as soon as the pointer enters
 the window, and take it away when the pointer leaves the window.
-SloppyFocus is similiar, but doesn't give up the focus if the pointer
+SloppyFocus is similar, but doesn't give up the focus if the pointer
 leaves the window to pass over the root window or a ClickToFocus
 window (unless you click on it, that is), which makes it possible to
 move the mouse out of the way without losing focus.
@@ -1854,6 +1854,6 @@
 .SH AUTHOR
 Robert Nation with help from many people, based on \fItwm\fP code,
 which was written by Tom LaStrange.  Rob has since 'retired' from
-working on fvwm though, so Charles Hines maintains it's care and
+working on fvwm though, so Charles Hines maintains its care and
 feeding currently.
 
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: Andrew Veliath <[email-masked]>
Date: Thu, 16 Jan 1997 16:19:46 -0500 (EST)

> the myriad features is mandatory.  I'm lost!

Well, the problem is that examples need to be created.  Chuck mentioned
that he's looking for donations of RC examples (hint, hint :-).  It's
difficult for one person to come up with many examples, the best ones are
usually picked out from posts. 

Note that one can even disable all of the new features if you do not want
to wade through all of the them :-). 

Andrew

---

From: lar3ry gensch <[email-masked]>
Date: Fri, 17 Jan 1997 09:44:16 -0500

> usually picked out from posts.

Well, I had been using a hacked fvwm-2.0.43 / fvwm95-2.0.41a (basically
just adding the stuff that gives it the Win95 look and feel).  After
hearing about the BorderStyle and related patches (my sources were too
hacked up to patch correctly, so I waited PATIENTLY for 2.0.44), I've
decided to put together a Win95 appearance for fvwm.

So far... It's PRETTY CLOSE... but still no joy.

MenuStyle	Black grey75 grey40 adobe-helvetica-medium-r-*-120-*
AddToDecor	win95
+	TitleStyle LeftJustified ActiveUp (Solid Navy -- flat) \
	ActiveDown (Solid Navy -- flat) Inactive (Solid grey51 -- flat)
+	ButtonStyle 1 MiniIcon -- UseTitleStyle flat
+	ButtonStyle 2 Pixmap win95-close-full.xpm -- UseTitleStyle flat
+	ButtonStyle 4 Pixmap win95-maximize-full.xpm -- UseTitleStyle flat
+	ButtonStyle 6 Pixmap win95-minimize-full.xpm -- UseTitleStyle flat
+	BorderStyle Active -- HiddenHandles NoInset
+	BorderStyle Inactive -- HiddenHandles NoInset
+	WindowFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
+	HilightColor white grey60

Style "*"	UseDecor win95, ForeColor Black

The win95-*.xpm files are pix of the Win95 buttons from the fvwm95
distribution, and grey75.xpm is a 1-pixel XPM file that contains a
single grey75 pixel (BorderStyle could possibly use a COLOR command!). 
All these .xpm files are attached to this message via MIME.

Also, the fvwm2 man page could do some explaining about 'ActiveUp' and
'ActiveDown' and how they apply to the TitleStyle and other functions.

Anyway, I'm posting this as an attempt to drive a stake in the ground to
get something that looks like Win95 - NT4.0.  If anybody wishes to tweak
with the values that I got empirically, feel free!  (And let me know!)

Does anybody have any mwm, olwm, twm, etc. decor styles?  I'm hoping we
can get a few of these styles so that we can create fvwm2 functions
like:

AddToFunction	StyleWin95
"I"	Style "*" UseDecor win95, ForeColor Black
"I"	MenuStyle Black grey75 grey40 adobe-helvetica-medium-r-*-120-*

AddToFunction	StyleMwm
...

We could then make a pop-up menu, or FvwmButtons display that will allow
the user to select the desired window display style...  this would make
a powerful enhancement to the system.fvwm2rc file.

Anybody game for such a project?

-- 
(void) lar3ry();                                      [email-masked]

     "Sometimes it happens.  People just explode.  Natural causes."

---

From: lar3ry gensch <[email-masked]>
Date: Fri, 17 Jan 1997 10:12:26 -0500

MEA CULPA!  I forgot to attach the files.  [sigh]

Here they are.

---

From: Andrew Veliath <[email-masked]>
Date: Fri, 17 Jan 1997 04:41:10 -0500 (EST)

> So far... It's PRETTY CLOSE... but still no joy.

Looks good.

The nice thing is that you can make it look BETTER than Win95 by putting
stuff like gradients and stuff in.  On my (outdated)  BorderStyle patch
page, I had a Win95 similar window that had a gradient on it (slight, but
there :-). 

> 'ActiveDown' and how they apply to the TitleStyle and other functions.

It's explained in ButtonStyle, but I guess there should be references to
it (this applies to every command where it says state can be one of ...,
a notable exception is BorderStyle which only has two state as explained
in Fvwm.tmpl):
              state refers to which button state should  be  set.
              Button  states  are  defined as follows: "ActiveUp"
              and "ActiveDown" refer to the unpressed and pressed
              states  for  buttons  on  active windows; while the
              "Inactive" state denotes buttons on  inactive  win-
              dows.

> Anybody game for such a project?

Sounds good.  You might consider incorporating ChangeDecor+Recapture too
for dynamic style changing.  On my page with those three different styled
windows at the time I was able to dynamically change the styles and decors
individually on each window with the ChangeDecor+Recapture. 

--
Andrew Veliath <[email-masked]>        http://www.rpi.edu/~veliaa
One day, all forms of communication will be superseded by a FAQ.
Finger for PGP Public Key
Key fingerprint =  51 56 5D 3E 51 43 8B 74  7C B2 E4 B6 84 8E 8B 08