FVWM: Why use fvwm 2.0?

From: Barton E. Schaefer <schaefer_at_z-code.ncd.com>
Date: Fri, 22 Mar 1996 17:07:35 -0800

I've yet to come up with a compelling reason to switch from 1.x, so I
thought I'd lob the question to this list. I'm not subscribed yet, so
please copy me on replies, but I have perused the FAQ and list archive
from <URL:http://www.hpc.uh.edu/fvwm>.

I find that I'm using nearly every one of the fvwm 1.x settings that
have been dropped in 2.0:

   Cursor cursor_num cursor_type (obsoleted)
   OpaqueResize (obsoleted)
   StickyBackColor colorname (obsoleted)
   StickyForeColor colorname (obsoleted)
   StubbornIcons (obsoleted)
   StubbornIconPlacement (obsoleted)
   StubbornPlacement (obsoleted)

Of these, Cursor and StubbornIcons are the most important (even though
StubbornIcons seems to work only part of the time). OpaqueResize is
also extremely useful for debugging window geometry problems in other
applications (especially Motif), because you can watch the confusion
develop as the window shape changes.

One other setting that I don't currently use, but that I've played with
in the past, is DontMoveOff. The FAQ says there's no equivalent; what
is the closest similar effect? (I'm surprised that there's no mention
of this anywhere in the list archives ... maybe people who are used to
virtual desktops just aren't bothered by windows that don't stay on the
screen, but I'd prefer to have it available just so that it's possible
to duplicate MWM very closely. Fvwm as "the window manger that can be
any other window manager" is an attractive concept.)

I'm also using these functions:

   CirculateDown [ name window_name ] Next (not compatible)
   CirculateUp [ name window_name ] Prev (not compatible)
   Warp [ name window_name ] Next or Prev (not compatible)

I could probably live without these if somebody can suggest how to get
the closest possible behavior out of Next and Prev, but I haven't found
any explanation in the mailing list archives for why they were dropped.
(Again, the real ones would be nice to have for MWM-cloning.)

I'm also using TogglePage, and I hope it'll make it back in before
there is an official release. I haven't seen this mentioned in the
list archives, so I'll throw in the comment that TogglePage really
needs the PagingDefault setting to work properly; so don't forget to
put that (or the equivalent) back as well.

Finally, so that this message can be at least a bit constructive, I've
attached diffs for fvwmrc_convert (from 2.0.41) to fix a few cases it
mishandled (primarily Cursor and OpaqueResize).

-- 
Bart Schaefer                     Vice President, Technology, Z-Code Software
schaefer_at_z-code.com                  Division of NCD Software Corporation
http://www.well.com/www/barts


--- ../utils/fvwmrc_convert Thu Oct 5 11:34:18 1995
+++ /space/tmp/fvwmrc_convert Fri Mar 22 15:03:43 1996
_at_@ -25,8 +25,8 @@
 # 24 May 95
 
 echo "fvwmrc-to-2 1.7a"
-if [ ! -x /usr/local/contrib/bin/gnu/gawk ];then
- echo "gawk (/usr/local/contrib/bin/gnu/gawk) missing, cannot run"
+if ! gawk --version 2>/dev/null ;then
+ echo "gawk (Gnu Awk) not found, cannot run"
    exit 1
 fi
 source=${1:-$HOME/.fvwmrc}
_at_@ -80,7 +80,7 @@
 
 /TogglePage/ {
                 print "#! " $0 " (TogglePage not in fvwm2)";
- print "Warning: TogglePage function not in fvwm2, use EdgeScroll"\
+ print "Warning: TogglePage not yet implemented in fvwm2, use EdgeScroll"\
>"/dev/stderr";
                 next;
                 }
_at_@ -246,7 +246,7 @@
         }
 /^StdBackColor[ ]/ {
             dflt["stdbackcolor"]=stdbackcolor=$2;
- printf ("#!%s (new command=Style \"*\" Color f/b)\n)\n", $0);
+ printf ("#!%s (new command=Style \"*\" Color f/b)\n", $0);
             print "Style \"*\" BackColor " $2;
             next;
         }
_at_@ -257,7 +257,7 @@
 /^MWMFunctionHints$/ { printf ("Style \"*\" MWMFunctions\n"); next; }
 /^MWMDecor$/ { printf ("Style \"*\" MWMDecor\n"); next; }
 /^MWMDecorHints$/ { printf ("Style \"*\" MWMDecor\n"); next; }
-/^MWMBorder$/ { printf ("Style \"*\" MWMBorder\n"); next; }
+/^MWMBorders$/ { printf ("Style \"*\" MWMBorder\n"); next; }
 /^MWMButtons$/ { printf ("Style \"*\" MWMButtons\n"); next; }
 /^MWMHintOverride$/ { printf ("Style \"*\" HintOverride\n"); next; }
 /^RandomPlacement$/ { print "Style \"*\" " $0; next; }
_at_@ -269,7 +269,7 @@
 /^SuppressIcons$/ { print "Style \"*\" NoIcon"; next; }
 /^StickyIcons$/ { print "Style \"*\" StickyIcon"; next; }
 
-/^AutoRaise[ ]/ { print "#! " $0 " (use Module FvwmAuto)";
+/^AutoRaise[ ]/ { print "#!" $0 " (use Module FvwmAuto)";
                           print "AddToFunc \"InitFunction\" \"I\" Module FvwmAuto " $2;
                           next;
                         }
_at_@ -292,7 +292,7 @@
 /^WindowFont[ ]/ { print $0; next; }
 /^IconFont[ ]/ { print $0; next; }
 /^Stubborn/ {
- print "#! " $0;
+ print "#!" $0;
         print "Warning: " $1 " not in Fvwm2, command dropped">"/dev/stderr";
         next;
  }
_at_@ -302,19 +302,28 @@
 /^EdgeResistance[ ]/ { print $0; next; }
 /^DeskTopSize[ ]/ { print $0; next; }
 /^DeskTopScale/ {
- print "#! " $0;
+ print "#!" $0;
         print "Warning: " $1 " not in Fvwm2, command dropped">"/dev/stderr";
         next;
  }
-/^WindowListSkip[ ]/ { print "#! $0 [deleted]";
+/^OpaqueResize/ { print "#!" $0 " [not yet implemented]";
+ if (warned[$1]==FALSE)
+ {
+ print "Warning: " $1 " commented out, not yet implemented" >"/dev/stderr";
+ warned[$1] = TRUE;
+ }
+ next;
+ }
+/^Cursor[ ]/ { print "#!" $0 " [not yet implemented]";
                 if (warned[$1]==FALSE)
                 {
- print "Warning: " $1 " commented out, obsolete" >"/dev/stderr";
+ print "Warning: " $1 " commented out, not yet implemented" >"/dev/stderr";
                 warned[$1] = TRUE;
                 }
                 next;
         }
-/^Pager/ { print "#! $0 [deleted]";
+/^WindowListSkip[ ]/ { print "Style " $2, $1; next; }
+/^Pager/ { print "#!" $0 " [deleted]";
                 if (warned[$1]==FALSE)
                 {
                 print "Warning: " $1 " commented out, obsolete (use FvwmPager)" >"/dev/stderr";
_at_@ -324,7 +333,7 @@
         }
 
 /^PagingDefault[ ]/ {
- print "#! " $0 " (use EdgeScroll 0 0)"; next;
+ print "#!" $0 " (use EdgeScroll 0 0)"; next;
         print "Warning: PagingDefault not in Fvwm2, use EdgeScroll 0 0">"/dev/stderr";
  }
 



--
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 majordomo_at_hpc.uh.edu.
To report problems, send mail to fvwm-owner_at_hpc.uh.edu.
Received on Fri Mar 22 1996 - 19:07:18 GMT

This archive was generated by hypermail 2.3.0 : Mon Aug 29 2016 - 19:37:58 BST