AfterStep FAQ
 Andrew Sullivan ([email protected])
 v.00, 22 November 1998

 This is the AfterStep Window Manager FAQ (mostly with answers) file.
 Copyright � 1996-1998, Frank Fejes, Jonathan B. Leffert, Kragen Sit�
 tler, Diego Zamboni, Guylhem Aznar & Andrew Sullivan.  Freely redis�
 tributable under the terms of LDP license, Version 2, January 1998.
 ______________________________________________________________________

 Table of Contents

 1. General information

    1.1 What is X, and what is a window manager?
    1.2 What is AfterStep?
    1.3 What is its history?
    1.4 What are AfterStep's main features?
    1.5 Is it compatible with fvwm-2?
    1.6 Is it available for Microsoft Windows-based machines?
    1.7 Where can I get this FAQ?
    1.8 Who contributes to this FAQ?
    1.9 What is the AfterStep-related mailing list?

 2. Getting and installing AfterStep

    2.1 Where do I get AfterStep?
    2.2 What is the latest version of AfterStep?
    2.3 What do I need to install AfterStep?
    2.4 I receive the message: Cannot open display. What should I do?
    2.5 How can I install AfterStep without being root?
    2.6 Why do I keep getting compile errors?
    2.7 Why do I keep getting an error referring to sgmltools?
    2.8 Why can't I get AfterStep to compile on SGI or SCO?
    2.9 Will AfterStep compile correctly on FreeBSD?

 3. Problems After Installation

    3.1 I just upgraded to version 1.5, but I don't see any difference.  Why?
    3.2 I don't want so many desktops in version 1.4.x or later; I want to change feature xyz in version 1.4.x or later.
    3.3 The desktop is bigger than my pager indicates.
    3.4 I'm running Solaris, and have had problems with the alphasort() function.
    3.5 I reduced the number of buttons in my titlebars, and now AS crashes.

 4. AfterStep Configuration

    4.1 What's a .steprc, and why do I need it anyway?
    4.2 I'm using AfterStep 1.2 or later, and I can't find the .steprc.  Why?
    4.3 OK, so how do I customize non-.steprc versions?
    4.4 I just upgraded versions, and now nothing works.
    4.5 How do I change my startmenu?
    4.6 Where did the "Decorations" item go in version 1.5?
    4.7 What are "look", "feel", "desktop", etc. files?
    4.8 Can I have differently-sized buttons on the titlebar?
    4.9 Fine, but how do I reduce the number of buttons on the titlebar?
    4.10 Why does some key not work as I expect?
    4.11 Why can't I have my .steprc in version 1.4.x or later?
    4.12 I'm using Red Hat, and I can't find the configuration files you've mentioned.
    4.13 What is the database file?
    4.14 What is the base.{yourbpp}bpp file?
    4.15 How do I get apps to minimize to a different place?
    4.16 I keep losing my icons, or I can't stand having them follow me.
    4.17 Suddenly, some windows stay always on top. Why?
    4.18 Can I make or install a "theme" for AfterStep?
    4.19 I want to do xyz with {some application under X}.  How do I do it?

 5. Icons, graphics and pixmaps

    5.1 Icons staying put
    5.2 Colormap issues
       5.2.1 When I run AfterStep some of the icons on the button bar don't show up. If I load them at the top they show up, but then the other ones don't.  Also, when I use Netscape, the colors get wacky. What's wrong?
       5.2.2 I am having trouble under AS while using xscreensaver with its own  colormap.
    5.3 Icons disappear from Wharf. What's wrong?
    5.4 How do I create an icon with a transparent pixel?
    5.5 How do I make my own XPMs?
    5.6 Where can I find some cool pixmaps for the Wharf or desktop?
    5.7 Why doesn't program `xyz' work in 16bpp?
    5.8 Why doesn't xv do xyz in 16bpp?
    5.9 Why don't icon names change when the application changes it?
    5.10 Why does application xyz not have an icon?
    5.11 Why do I get bad behaviour with backgrounds?

 6. Modules

    6.1 How do I get multiple Wharfs/Pagers on the screen?
    6.2 How can I get asclock to appear properly in Wharf?
    6.3 How do I configure asclock to use fewer colors?
    6.4 Why does asclock show the wrong time?
    6.5 Why does my latest version of MaxSwallow do odd stuff?
    6.6 What's wrong with WharfAnimate?
    6.7 Can you add xyz to the Wharf?
    6.8 Can I have swallowed apps under a folder?
    6.9 Can I have a folder within a folder?
    6.10 Can I have two columns in my Wharf?
    6.11 Why can't I find the man page for Wharf?
    6.12 What's wrong with the mouse buttons in the pager?
    6.13 How can I have more/fewer/larger desktops?
    6.14 Fine, but how do I get the pager off the desk entirely?
    6.15 How do I enable sound in AfterStep?

 7. AfterStep Application ("as-apps") configuration.

    7.1 What's the difference between as-apps and modules?
    7.2 I want to add a pixmap to the background of xiterm
    7.3 I want xiterm to start as the login shell.
    7.4 How do I get that cool transparent xiterm?
    7.5 I am having trouble with asmix or asmixer and Wharf
    7.6 I upgraded AfterStep, and now my as-apps look funny in the Wharf.
    7.7 How do I use asmail?
    7.8 What is ascp?
    7.9 I tried to install TkStep, but it doesn't work with TkStep and Tcl7.6
    7.10 Why doesn't ascp run on my system?
    7.11 Can I use Window Maker applets in AfterStep?

 8. General usage, features and bugs

    8.1 Why does XFree86 crash as I'm starting?
    8.2 Why does AfterStep get slower and slower until I restart it?
    8.3 Click-to-focus dies
    8.4 What is this `Shade' thing?
    8.5 When I restart AfterStep, it kills X. What gives?
    8.6 What is swallow-exec?
    8.7 I upgraded to 1.0pre4 or later, and now the Wharf doesn't work.  What  happens?
    8.8 Why doesn't my workspace save when I exit?
    8.9 My start menu no longer updates upon restarting.  Why?

 9. Miscellany

    9.1 How do I use Microsoft Windows (tm) True Type fonts ?
    9.2 What is this Window Maker I keep hearing about?

 10. Other AfterStep-unrelated applications

    10.1 I have a problem with program xyz.


 ______________________________________________________________________

 1.  General information





 1.1.  What is X, and what is a window manager?

 "X" is common shorthand for The X Window System.  It is the basis for
 building some graphical user interfaces (GUIs).  These are most often
 found on UNIX-type systems, although there are implementations for
 other platforms.  Notice that X is not the interface itself.  For more
 information, please see The X Window System <http://www.X.org/>.

 A window manager (briefly) is a program which controls the way various
 windows interact during an X session.  AfterStep is one such window
 manager.


 1.2.  What is AfterStep?

 AfterStep is a Window Manager for X which started by emulating the
 NEXTSTEP look and feel, but which has been significantly altered
 according to the requests of various users.  Many adepts will tell you
 that NEXTSTEP is not only the most visually pleasant interface, but
 also one of the most functional and intuitive out there.  AfterStep
 aims to incorporate the advantages of the NEXTSTEP interface, and add
 additional useful features.

 The developers of AfterStep have also worked very hard to ensure
 stability and a small program footprint.  Without giving up too many
 features, AfterStep still works nicely in environments where memory is
 at a premium.


 1.3.  What is its history?

 What follows is drawn from the AfterStep man page:

 AfterStep originated as a continuation of the BowMan window manager,
 originally developed by Bo Yang.  BowMan was based on fvwm, which was
 written by Robert Nation.  In turn, fvwm was based on twm.  And so on.
 Open Source / Free (please pick your preferred term, without
 prejudice) software works exactly because of these sorts of
 traditions.  Yay!

 The changes which led to AfterStep were originally part of BowMan
 development.  As the desire for simple emulation was superseded by a
 desire to improve, the designers decided to change the name, and the
 AfterStep project was born.

 Many of the earlier developers of AfterStep subsequently decided to
 move to the Window Maker (originally WindowMaker) project, under the
 leadership of Alfredo Kojima ([email protected]).  Window Maker
 (which, as of this writing, may yet receive another name change: gswm
 for "GNUstep Window Manager") is committed to emulating closely the
 NEXTSTEP(tm) look and feel.

 As a result of all that, Guylhem Aznar
 ([email protected]) took over development of
 AfterStep.  Though he had help from several able developers (check the
 "TEAM" file for a list of the wonderful programmers responsible for
 AfterStep), and obviously built on the previous efforts of other
 excellent programmers, new and current users of AfterStep owe a
 special debt to Mr Aznar.  Without his work, AfterStep would never
 have approached its current stability, flexibility, or functionality.


 1.4.  What are AfterStep's main features?



 1. NEXTSTEP-similar title bar, title buttons, borders and corners.

 2. The AfterStep Wharf, which is a much worked-out version of
    GoodStuff. To avoid copyright complications it is not called a
    `dock'.

 3. NEXTSTEP style menus.  The menus are not, however, controlled by
    applications; they are more like pop-up service lists on the root
    window.

 4. NEXTSTEP style icons. The default icons are consistent with those
    in the NEXTSTEP interface, but they are configurable.

 5. Pixmapped Pager with desktop pixmapping.

 6. Easy-to-use look files, which allow you to share you desktop
    appearance with your friends.

 7. Start menu entries in a hierarchy of directories.

 8. WinList, a tasklist which can be horizontal or vertical.

 9. Many modules & as-apps to make your X window station look great.

 The flexibility of fvwm has not been traded off.  Initiation files
 recognize most of the fvwm 1.24r commands. Virtual screens and the
 pager are still intact. Modules for fvwm-1.x should work just fine.


 1.5.  Is it compatible with fvwm-2?

 Compatibility with fvwm-2 & Enlightenment modules is planned for an
 upcoming version, but support is not yet available.  Some
 Enlightenment-based items will work well with AfterStep, however.  In
 particular, support for Eterm is now available.


 1.6.  Is it available for Microsoft Windows-based machines?

 Not really, unless the Windows machine has an X server installed.  If
 you want to take that approach, look at Running AfterStep under Win32!
 <http://www.alfheim.net/aswin32/>.  But there is an AfterStep-alike
 program called LiteSTEP, which gives Windows machines an AfterStep-ish
 appearance.  As of this writing, LiteSTEP development versions are
 available at  <http://dev.litestep.net>, while some screen shots are
 available at <http://litestep.computerheaven.net/>.  Keep in mind,
 however, that these programs are not versions of AfterStep.  Please do
 not send questions about LiteSTEP to the AfterStep mail list.

 If you want to make AfterStep work under any version of Windows, you
 are welcome to try following the instructions at the Web sites listed
 above, and every last bit of associated documentation.  Please do not
 contact Andrew Sullivan for help, however, as he cannot help you: he
 does not use AfterStep with Windows.


 1.7.  Where can I get this FAQ?

 The latest version is always available at
 <http://lowrent.org/asfaq/>.  That is the official home page of the
 AfterStep FAQ, and offers links to several mirror sites as well.

 The latest version is also usually available from
 <ftp://ftp.afterstep.org/pub/>.  The AfterStep FTP site has found a
 new home courtesy of Red Hat; please see the section on the FTP site
 for details.  One can also always find the latest version of the FAQ
 through the AfterStep web site.  What's more, there are sites whose
 sysadmins have been generous in offering mirrors of the FAQ.  Here are
 the mirrors:


 <http://the-site.dyn.ml.org/Linux/AfterStep/FAQ/>, hosted by David
 Mihm.


 <http://www.davidv.net/~ajsulliv/>, hosted by David Vondrasek.


 <http://optera.net/~contramac/>, hosted by Nathan Widmyer.


 <http://www.ticnet.com/azenomei/as/start.html>, hosted by Peter Booth.

 Ce document est aussi disponible en fran�ais, �
 <http://amberlab.net/rone/afterstep/>.

 Please note that the version numbering system of the FAQ has changed.
 The FAQ version number used to follow roughly the same protocol as the
 version numbering of AfterStep.  This led to confusion, because the
 number of the FAQ and the number of AfterStep tended to get out of
 synch.  The FAQ version number is now the date of its release,
 according to the ISO data format: {Arabic numeral of year}-{Arabic
 numeral of month number}-{Arabic numeral of day of month}.  For
 example, a FAQ released on 31 October 1998 would be called "as-
 faq.1998-10-31", with the appropriate extension for the file format.


 1.8.  Who contributes to this FAQ?

 The initial version of the FAQ was written by Frank Fejes
 ([email protected]) and Jonathan B. Leffert ([email protected]).
 Major additions were made by Kragen Sittler ([email protected]).  Diego
 Zamboni ([email protected]) maintained the file until Guylhem
 Aznar ([email protected]) took over with the release
 of AS 1.4.  The file is now maintained by Andrew Sullivan
 ([email protected]), with contributions from Tomas Duewiger
 ([email protected]).  Naturally, the FAQ is prepared in co-
 operation with the program developers; but any errors or omissions are
 now Andrew Sullivan's responsibility, so you should contact him to
 complain.  Most of the questions and answers have been provided by the
 people participating in the AfterStep mailing lists.  If you have a
 suggestion about this file or, better yet, an answer to an unanswered
 question in this file, please send an e-mail to Mr Sullivan, or to the
 main AfterStep list; see the next question for more information on the
 list.


 1.9.  What is the AfterStep-related mailing list?

 This question used to read, "What are the AfterStep-related mailing
 lists?"  Due to some changes in hosting, things have changed:


    AfterStep-Announce
       This list is no longer functioning.


    AfterStep
       The purpose of this list is to provide a forum in which users of
       the AfterStep X11 window manager can discuss issues related to
       to using AfterStep.  Appropriate topics include, but are not
       limited to, the installation and configuration of AfterStep and
       related modules and applications.  Developers should also
       subscribe to, and work through, this list, as no other list is
       active as of this writing.


    AfterStep-Digest
       This list contains the same messages as the AfterStep mailing
       list.  The messages are saved up (not transmitted individually)
       and sent out as a bundle. This decreases the number of separate
       messages received from the list, but makes it more difficult to
       reply to a specific message.


    AfterStep-Dev
       This list is no longer functioning.


    AfterStep-Dev-Digest
       This list is no longer functioning.


 For information on subscribing to any of these lists, or more
 information, please see
 <http://www.calderasystems.com/linuxcenter/forums/afterstep.html>.  A
 re-instated searchable archive of the list is planned by Ed Orcutt; Mr
 Orcutt is also the owner of the AfterStep lists.  His employer,
 Caldera, has been generous in donating server and web space for the
 mailing lists.



 2.  Getting and installing AfterStep


 2.1.  Where do I get AfterStep?

 The main AfterStep resources on the net are below.


 �  WWW Page


    The official WWW page is at  <http://www.afterstep.org>

    The web site has again lost its home, and may not be currently
    available to the public.  It should be under new administration
    soon.


 �  FTP Site


    The FTP site,  <ftp://ftp.afterstep.org/pub/>, is the best place to
    get AfterStep. It also supports uploads:
    <ftp://ftp.afterstep.org/incoming/>.  Please read the instructions
    about uploads before asking why your upload is not immediately
    available.  Some links to the FTP site are provided from the Web
    site.

    Please note that the FTP site has moved to a new server under new
    administration.  Any questions about the current status of the FTP
    site should be directed first to the mailing list.


 �  Developers' sites.

    There are several sites which have been generous enough to act as
    developers' sites.  Note that you can expect development-level
    support for development-level programs.  That means that if you
    aren't willing to fix it yourself, you mustn't complain!  (You are,
    of course, encouraged to make detailed bug reports.) You can find
    links to the development sites from the main AfterStep WWW site.
    That site is accessible through lynx, so anyone with a UNIX-type
    networked system should be able to get AfterStep.

    Here is the list of developers' sites:


    the-SITE: Linux: AfterStep Page <http://http.the-
    site.dyn.ml.org/Linux/AfterStep/>


    ftp://fuf.sh.cvut.cz/pub/AfterStep/
    <ftp://fuf.sh.cvut.cz/pub/AfterStep/>


    AfterStep window manager
    <http://members.xoom.com/sashav/afterstep.html>


    AfterStep applets <http://bewoner.dma.be/Albert/afterstep/>


 �  Other Web Resources:


    There are also some useful things to be found on the following
    pages.  The first is the current, official AfterStep Customization
    Page; it includes a web-based BBS with helpful suggestions.  It was
    originally designed around AfterStep v. 1.4.x; but the remarks are,
    on the whole, applicable to v.  1.5.x.  The second is a page
    offering help to new users, maintained by Tomas Duewiger (td@music-
    satellite.de).  It is, again, designed around v.  1.4.x, but is
    nevertheless useful for users who have v. 1.5.x.  The last is a
    page which centres around AfterStep-Classic, but which will still
    no doubt offer help even to people who are working under AfterStep
    v. > 1.0.  It is important to note that any one of these may offer
    information which is not perfectly current with the present
    development of AfterStep: for the very latest, official word,
    subscribe to the AfterStep mailing list.  Still, any one of these
    sites will be a helpful resource to any AfterStep user:


    AfterStep Customization Page
    <http://www.via.ayuda.com/~smw/afterstep/>


    AfterStep and some tricks <http://www.music-
    satellite.de/spearhead/>


    Kiwi's AfterStep Page <http://the-labs.com/AfterStep/>


 �  AfterStep IRC channel:


    AfterStep has a presence on IRC, through EFnet.  The channel is
    #afterstep.  If you need to find a server, try irc.txdirect.net.



 2.2.  What is the latest version of AfterStep?

 The latest official version is 1.4.5, released in April 1998.  A
 development release, 1.4.5.55N6, was widely considered to be a true
 stable release; it has, in fact, fewer bugs than 1.4.5.

 Version 1.5.0 should be available by the time you read this.  If you
 are contemplating installing a version of AfterStep, it is worth
 either waiting for the release of version 1.5.0, or installing the
 latest beta version of 1.5.  Any version of the 1.5 series is a
 significant improvement over any 1.4.x release.

 There is also a current development effort around the old version of
 AfterStep (v. 1.0).  This effort is called AfterStepClassic.  It is
 primarily directed towards fixing bugs in the old 1.0 release of
 AfterStep, and is not always compatible with new developments in
 AfterStep.  It uses only the .steprc-style configuration, so if you
 are looking for information on how to configure AfterStepClassic, you
 should assume that the information about versions < 1.2 apply to you.
 The lead developer for AfterStepClassic is Stephen Ma
 ([email protected]).


 2.3.  What do I need to install AfterStep?

 AfterStep is an X window manager.  So, you need to have an X
 workstation.  It will apparently compile against, and work with,
 X11R5, but for optimal performance, it is preferable that you use
 X11R6.  In order to compile AfterStep from the source, you need (apart
 from a C compiler, like gcc) the X developers' libraries on your
 system.  The most common problem that people have in compiling
 AfterStep is as a result of not having the required libraries on their
 system.  In particular, XFree86 lists the necessary libraries as an
 "optional" package.  As a result, many people do not install them, and
 so cannot compile AfterStep.  You should be able to get the libraries
 wherever you got your distribution of XFree86.

 AfterStep is known to run on Linux, FreeBSD (not all modules work),
 HP-UX, and Solaris.  For the latter two, you should read the relevant
 READMEs before trying to compile.

 X, and hence AfterStep, is really designed with an eye to the
 assumptions of multiuser systems like UNIX or VMS.  If you are using X
 on some other platform, and particularly, if you are trying to run X
 atop any version of Windows, you will have to do much of the porting
 work yourself.  There is a link above offering advice on getting
 AfterStep to work under Windows; but this practice is not encouraged.
 You are likely to get greater ease of use by using LiteSTEP.


 2.4.  I receive the message: Cannot open display. What should I do?

 AfterStep is an X window manager and cannot be run from the terminal.
 It must be run through X.  The easiest way to do that is to create (or
 edit) your own .xinitrc file (which contains a list of the programs
 you wish to load upon startup) and to add the line exec afterstep to
 the end.  This last exec'd line is significant in that it says to shut
 down X when that program is terminated.  Now that you have that file,
 simply startup X in your customary manner (most likely by issuing
 "startx" or "xinit").  Now you're off and running.  Good luck!

 If you are using xdm, you will need to put the call to afterstep in
 your .xsessions file.



 2.5.  How can I install AfterStep without being root?

 This is fairly easy, but you must be sensitive to the version you are
 using.

 You will have to install all the files under your home directory. The
 usual recommendation is to use the same directories as suggested in
 the installation procedure, but replacing /usr/share, usr/local, or
 whatever you like by your home directory. For example, if you home
 directory is /home/blah you would use directories like /home/blah/bin,
 /home/blah/etc, /home/blah/lib, and the like.

 Compile AfterStep following the standard installation procedure (i.e
 the one described in the README) until the install step. Then, do the
 following (make sure to create the destination directories first if
 they don't exist. All the source paths are relative to the AfterStep
 source directory):


 1. Copy  afterstep/afterstep to  $HOME/bin/.

 2. Copy  modules/*/(binaries) to  $HOME/bin/.

 3. Copy  apps/*/(binaries) to  $HOME/bin/.

 4. Copy  GNUstep/ to  $HOME/.

 5. Edit  $HOME/GNUstep/Library/AfterStep/base.* to reflect the above
    paths in the lines starting with ModulePath and PixmapPath.

 6. Put  $HOME/bin in your path.

 You should be set. Feel free to modify this procedure according to
 your particular needs or the particular setup of your machine/account.

 You should note that, during the 1.4.5.x series, the source paths
 changed.  If the changes are not transparent to you, you should
 probably move to the 1.5 series anyway.  The 1.5 series includes an
 install script that allows you to set the install directories to
 whatever you want.  Even though the instructions say you should have
 root access, you can install AS under your home directory.  The trick
 here is to specify only directories to which you have write
 permissions.  Importantly, you must specify the full path on most
 systems.  Otherwise, there is a good chance that something will not
 read correctly; this will affect your installation of AfterStep.  On
 some systems, you may also have to add the new subdirectories to your
 ".profile", ".cshrc", ".xsessions", or other such file.  If you don't
 know what this means, you should either contact your system
 administrator, or read a good book about your operating system or X
 windowing system.


 2.6.  Why do I keep getting compile errors?


 The most common reason for problems compiling is that you do not have
 all the necessary libraries and headers available on your system.
 This often happens to people who have recently upgraded their
 distribution of XFree86.  The necessary libraries are included in an
 "optional" file which matches the version of XFree86 in question; the
 most recent of these is X332prog.tgz (for XFree86 3.3.2).  You should
 be able to find the file you need wherever you obtained your
 distribution of X.



 2.7.  Why do I keep getting an error referring to sgmltools?


 This FAQ file is maintained in SGML according to the Linuxdoc DTD;
 some version of the FAQ is included with every AfterStep distribution.
 In order to make it easily readable, a program called sgml2html (part
 of sgmltools) converts the file to HTML.  A script, afterstepdoc (by
 default, the first button on the Wharf), should open a browser and
 allow you to read the FAQ.  Unfortunately, not everyone has sgmltools;
 and even if they are installed, they are not detected correctly at
 install time.  As a result, the HTML version of the FAQ is now shipped
 with the latest versions of AfterStep.  The SGML source is still
 included with the AfterStep source, however, so if you want other
 versions of this FAQ -- dvi, PostScript, or even plain text -- just
 use the sgmltools package to convert the SGML source to whatever
 format you like.


 2.8.  Why can't I get AfterStep to compile on SGI or SCO?

 The problem here was tracked down and reported by Benjamin J. Tracy
 ([email protected]) and (independently) John Koch ([email protected]).
 The ordering of the libraries in the link command is wrong.  Just make
 sure that the afterstep library appears before the -lX11 argument on
 the link command line (in the Makefile).  Everything should work after
 that.


 2.9.  Will AfterStep compile correctly on FreeBSD?

 AfterStep itself works fine on FreeBSD, but some as-apps will not
 work.  In particular, there are some that depend upon a Linux-type
 /proc filesystem.  That filesystem is very different on BSD-type
 system.


 3.  Problems After Installation



 3.1.  I just upgraded to version 1.5, but I don't see any difference.
 Why?


 By default, version 1.5 installs in different directories than
 versions < 1.5.  The binary names are the same, unfortunately, so if
 the earlier binaries are "earlier" in your path than the new binaries,
 you will not get the new binaries.

 One trick is to use the new, version 1.5 install script to place the
 new binaries wherever the old binaries are.  Another possibility is to
 track down the old binaries, and remove them from the system.  By
 default, AfterStep used to install in /usr/X11R6/bin.  Version 1.5
 installs, by default, in /usr/local/bin.



 3.2.  I don't want so many desktops in version 1.4.x or later; I want
 to change feature xyz in version 1.4.x or later.

 Just edit the relevant file under ~/GNUstep/Library/AfterStep.  See
 the section on configuration for details.




 3.3.  The desktop is bigger than my pager indicates.

 This is/was a known bug.  The problem is that the pager is at least
 three screens in at least one dimension.  There have been reports of
 getting the pager to work correctly if the desktop size is set to 3X3
 or 3X2.  (For more information on how to configure the Pager, see the
 section on Modules, below.)

 Albert Dorofeev ([email protected]) reports that the following
 changes to src/functions.c will fix the problem in AfterStep 1.4; I do
 not know whether these will work for other versions.  In
 src/functions.c, change the lines



      ______________________________________________________________________

      if (newx > Scr.VxMax)
              newx = Scr.VxMax;
          if (newy > Scr.VyMax)
              newy = Scr.VyMax;
      ______________________________________________________________________




 to



      ______________________________________________________________________

      if (newx >= (Scr.VxMax - Scr.MyDisplayWidth) )
              newx = Scr.VxMax - Scr.MyDisplayWidth;
          if (newy >= (Scr.VyMax - Scr.MyDisplayHeight) )
              newy = Scr.VyMax - Scr.MyDisplayHeight;
      ______________________________________________________________________




 This change apparently leaves a bug whereby the mouse pointer "jumps"
 on the right-hand border; but at least your pager will correspond to
 the desktop.

 The bug is fixed as of AfterStep 1.4.5.x, so if it really annoys you,
 please upgrade.  In the 1.4.5 and later series, the virtual desktop is
 set up in the base.{yourbppnumber}bpp file, and not the pager
 configuration file.  Please edit the correct file according to your
 configuration.


 3.4.  I'm running Solaris, and have had problems with the alphasort()
 function.

 There are ever-fewer problems with AfterStep and Solaris; this one has
 been patched in version 1.4.4 and later.  You should upgrade to the
 latest version.  You should also check the information in the
 README.Solaris file, and see the following site:
 <http://www.primate.wisc.edu/software/imake-stuff/>.


 3.5.  I reduced the number of buttons in my titlebars, and now AS
 crashes.


 Depending on which version you are using, you may need to edit your
 feel file, as well.  Look at the section on looks and feels.


 4.  AfterStep Configuration


 4.1.  What's a .steprc, and why do I need it anyway?

 In versions of AfterStep prior to version 1.2 (including current
 versions of AfterStepClassic), all configuration is handled in a
 single file.  This is the .steprc file; it should be in your home
 directory if you're running any of these versions.  These files are
 generally well-commented, and can be edited easily to change the
 defaults.  The default file from version 1.0 included several major
 sections:


 �  Distinctive Look and Feel

 �  Window Placement

 �  Miscellaneous Settings

 �  Pager and Virtual Desktop

 �  Common Paths

 �  Animated Iconize Customization

 �  Wharf Customization

 �  Icon Selector

 �  Initialization Function

 �  Functions

 �  Menus (which does not include bindings!)

 �  Mouse Bindings

 �  Keyboard Shortcuts

 �  Module Definitions

 New versions of AfterStep don't use this file, preferring the
 GNUstep/Library standard instead.  The settings for looks and feels,
 for instance, have been broken out into separate files, and the
 configurations of Wharf, Pager, and other modules and applications
 have been placed in their own files.  See below.


 4.2.  I'm using AfterStep 1.2 or later, and I can't find the .steprc.
 Why?

 AfterStep now uses a directory structure to handle desktop
 customization.


 4.3.  OK, so how do I customize non-.steprc versions?

 This depends on the version you have.

 Versions through 1.4.4 need a full set of directories in each user's
 home directory.  In other words, you need to copy everything in
      {AfterStepPath}/GNUstep/Library/AfterStep/




 to



      ~/GNUstep/Library/AfterStep/




 There were several changes to this directory structure between version
 1.4.0 and 1.4.4.  A full outline of these changes is beyond the scope
 of this document, but there are some general remarks on particularly
 common problems below.  For more help configuring 1.4.4, see
 <http://www.via.ayuda.com/~smw/afterstep/configs/index.html> or
 <http://www.music-satellite.de/spearhead/>.

 In particular, you should note that the ~/G/L/A/ directories are not
 compatible between versions 1.4.0 and 1.4.4.  You must copy the full
 {AS install}/G/L/A/ directory (including all sub-directories) into
 your home directory, even if you are only upgrading from 1.4.0 to
 1.4.4.

 The ~/GNUstep/Library/AfterStep arrangement is, admittedly, somewhat
 inefficient, because there are always at least two copies of
 everything on any system running AfterStep. As of versions post-1.4.5,
 it is possible to add only those files which you have changed to the
 directory structure in your home directory; everything else will use
 the default installation in /usr/share/afterstep or
 /usr/local/share/afterstep (this location varies among versions; the
 latter is the default in version 1.5).  Nevertheless, there are some
 subtle differences among the configuration files of each version.  If
 you have upgraded, and you suddenly have problems, your first impulse
 should be to try renaming your ~/G/L/A/ directory, and starting
 AfterStep.  If the problem disappears, you can reasonably presume that
 it has something to do with your configuration files.  That doesn't
 mean that the answer will be obvious, but it does mean that you'll
 know where to start looking.


 4.4.  I just upgraded versions, and now nothing works.

 First, determine whether you have upgraded from a ".steprc version" to
 a "non-.steprc version".  Versions after 1.2 do not (by default) use
 the .steprc file, so your old customization will not be invoked by
 default if you have moved from, say, 1.0 to 1.4.5.

 If you have changed from 1.4.0 to a later version, you need to remove
 your old version of the ~/GNUstep/Library/AfterStep directory
 structure.  Version 1.4.4 introduced the "configurable" and "non-
 configurable" distinction, and so several items have moved.  See the
 previous question.

 Subtle changes have been introduced between versions; this is even
 true between, say, 1.4.4 and 1.4.5.3.  In particular, several modules
 have had their configuration files changed to be in keeping with Wharf
 style.  The practical effect of this is apparently inexplicable
 problems which develop after an upgrade.  If you suddenly have
 problems after an upgrade, and especially if some modules suddenly do
 not work, try replacing your configuration with the default
 configuration.  If that works, you can edit the new configuration to
 reflect your previous customization.
 It is also important to note that the syntax for looks and feels
 changed again in version 1.5.  Several of these changes have been as a
 result of requested features or (more often) improvements in the
 efficiency or ease of use of the overall program.  These changes, of
 course, entail some frustration; but before you ask, "What happened?"
 you should always try renaming your ~/GNUstep/Library/AfterStep
 directory, and re-starting.  If this solves the problem, you should
 try customizing the new version, using your old customization as a
 model.  You are likely to be able to re-use most of your old
 configuration files as they are.


 4.5.  How do I change my startmenu?

 In versions before 1.2, edit the appropriate section of the .steprc.
 In later versions, you need to adjust the necessary parts of the
 ~/GNUstep/Library/AfterStep/start directory structure.  The start
 directory includes sub-directories for every sub-menu.  It also has a
 file corresponding to every entry on a menu.  Each file should contain
 a single line to invoke the desired program.  So, if you wanted an
 entry in your main startmenu which said



      xiterm (pixmap)




 your ~/G/L/A/start directory would contain a file:



      xiterm\ (pixmap)




 That file would contain a single line:



      xiterm -pixmap [path_to_pixmap.xpm] &




 (you would, of course, adjust the command-line options to reflect your
 intentions).

 By default, the sort order of the start menu is determined at compile
 time.  It is usually sorted alphabetically or chronologically
 (according to the creation date of the file).  This has the
 disadvantage of forcing a sort order which one might not like.  As a
 result, version 1.5 offers a new (completely-worked-out) way to sort
 menu items.

 In version 1.5, the startmenu can be sorted numerically.  Suppose you
 have three files you want to sort in your startmenu, named "a", "b",
 and "c".  You could sort these in reverse alphabetical order in your
 startmenu by naming them "0_c", "1_b", and "2_c".

 You can specify a startmenu name which is different from the filename,
 by including that startmenu name in quotes in the file which is
 associated with the startmenu name.  For instance, a file named
 8_xitermtransparent would be the 8th file in the startmenu.  If the
 contents of the file were as follows, then it would be named "X
 terminal ~transparent":




      Exec "X terminal ~transparent" exec xiterm -pixmap
      ~/GNUstep/Library/AfterStep/non-configurable/0_background -sl 500 -vb &
      MiniPixmap "mini-app.xpm"




 (Note that this command should all be on one line in the actual file!)
 In this case, the xiterm window comes up with the current background
 of the first desktop in AfterStep; this simulates a "transparent"
 xterm.  For more on "transparent" xterms, please see the section on
 as-apps.

 The sorting of items in the startmenu always puts directories (which
 are equivalent to sub-menus) first.  Directories, however, are
 themselves sorted according to the same scheme as are files, except
 that there is no mechanism for naming a sub-menu something other than
 the directory name.

 From version 1.4.5, you also have to read the new startmenu into your
 configuration.  On the startmenu, under "Desktop" (1.5 or later) or
 "Quit" (< 1.5), is an option, "update startmenu".  Choose this item,
 and your new startmenu will appear.

 People who have Red Hat Linux 5.1 have had another problem with the
 startmenu updating: all changes are lost after exiting.  This is
 because of the way that Red Hat has modified the startup of AfterStep.
 The version of AfterStep included in Red Hat 5.1 includes an m4
 preprocessing routine which, among other things, re-writes the
 ~/GNUstep/Library/AfterStep/start directory every time AfterStep
 starts.  As a bit of editorial, I (Andrew) might point out that I
 don't know what this does, nor why Red Hat used it.  I also don't
 intend to learn.  If you can't get Red Hat to explain to you what they
 did, my suggestion is to remove the RPM, and compile and install the
 official version.  David Mihm ([email protected]), however, suggests
 that you can get around the m4 preprocessing this way:



      ______________________________________________________________________
      echo "exec afterstep" >~/.xinitrc
      echo "exec afterstep" >~/.xsessions
      chmod 700 ~/.xsessions
      ______________________________________________________________________




 It has been suggested (by Ian Hay, [email protected]) that the m4
 preprocessing was an attempt on Red Hat's part to make the use of
 AfterStep more friendly to new users: this preprocessing apparently
 ensures that new apps get added to the start menu after they've been
 installed.  Matteo Lunardi ([email protected]) has offered a
 work-around, at least in some versions.  In the
 xinit-1.4.2.noarch.rpm, he edited the file /etc/X11/xinit/Xclients,
 this way:




 ______________________________________________________________________
 if [ -f $HOME/.wm_style ] ; then
     WMSTYLE=Cat $HOME/.wm_style         case "$WMSTYLE" in
         Afterstep*|AfterStep*)
             # we have to start up afterstep
             if [ -x /usr/X11R6/bin/afterstep -a -f
 /usr/share/afterstep/wmconfig.conf ] ; then
 #               if [ ! -d $HOME/GNUstep/Library/AfterStep ]; then
                      mkdir -p $HOME/GNUstep/Library/AfterStep
                      wmconfig --output=afterstep --directories \
                         /usr/share/afterstep/wmconfig.conf 2>/dev/null
 #               fi
                 env > "$HOME"/Xrootenv.0
                 # if this works, we stop here
                 eval "exec /usr/X11R6/bin/afterstep" >
 "$HOME"/.AfterStep-errors 2>&1
             fi
 ______________________________________________________________________




 In this case, the change was to add comment marks ("#") to the "if"
 lines (not the one where it says, "if this works, we stop here").
 Apparently, however, it also works to add the comment marks to the
 "mkdir" and "wmconfig" lines.

 As an alternative, Kai Puolamaki ([email protected]) suggests that
 you configure your wmconfig utility to make things work better.  This
 is likely the best way to make these adjustments.  Red Hat's wmconfig
 utility relies on a system-wide directory, /etc/X11/wmconfig, but is
 adjustable by users through an individual directory, ~/.wmconfig.  So,
 if you wanted a menu item, "Mail", containing both mutt and elm, you
 would add two files:



      ______________________________________________________________________
      ~/.wmconfig/mutt
      ~/.wmconfig/elm
      ______________________________________________________________________




 The file "mutt" would contain the following:



      ______________________________________________________________________
      mutt name "Mutt"
      mutt description "Mutt email client"
      mutt group Mail
      mutt exec "xterm -e mutt &"
      ______________________________________________________________________




 The file "elm" would be similar:






 ______________________________________________________________________
 elm name "Elm"
 elm description "Elm email client"
 elm group Mail
 elm exec "xterm -e elm &"
 ______________________________________________________________________




 More information is available from the wmconfig manpage.  Note that
 there is an additional advantage to this syntax: it ensures that your
 menu changes are also available if you change window managers.


 4.6.  Where did the "Decorations" item go in version 1.5?

 The "Decorations" menu has been re-named to "Desktop".


 4.7.  What are "look", "feel", "desktop", etc. files?

 In versions that do not use a .steprc, the various elements of the
 desktop have been separated out, in order that they can each be
 customized independently.  Look files and feel files allow you to
 customize the desktop in almost an infinite number of ways.  Note that
 any functional changes you make in a look file (like adjusting the
 number of buttons that appear on a window titlebar) may need to be
 reflected in a corresponding feel file: the "feel" handles how you
 interact with windows, while the "look" controls their appearance.
 This is handy if you want your windows always to respond in more or
 less the same way, but want them to look differently depending on the
 task you're performing, the machine you're on, or whatever.


 4.8.  Can I have differently-sized buttons on the titlebar?

 Yes, but not in every version.  It is reported that version 1.5
 handles differently-sized titlebar buttons with no difficulty.  If you
 want this functionality, please move to version 1.5.


 4.9.  Fine, but how do I reduce the number of buttons on the titlebar?

 This depends upon what version you are using.  Version 1.5 allows you
 simply to change the look file to reflect the buttons you want.  Any
 version before 1.5 requires a change both to the look and to the feel.
 The trick here is to understand the difference between a look and a
 feel.  A look file simply determines how elements of the screen will
 appear.  It does not determine how the elements will interact: that's
 what a feel file does.  So, if you want to reduce the number of
 buttons on a titlebar, you need to adjust both the look and feel
 files.  The look file must define the appearance of exactly the number
 of buttons for which there are functions in the feel file; and each
 button defined in the feel file must have a reference in the look
 file.

 To see how this works, consider a look file with the following
 definitions:







 ______________________________________________________________________
 # TitleButtons : [1] [3] [5] [7] [9] (title) [0] [8] [6] [4] [2]
 #
 TitleButton 1 b1.xpm b1-pressed.xpm
 TitleButton 2 b2.xpm b2-pressed.xpm
 TitleButton 3 b3.xpm b3-pressed.xpm
 TitleButton 4 b4.xpm b4-pressed.xpm
 TitleButton 6 b6.xpm b6-pressed.xpm
 ______________________________________________________________________




 Now, this defines the appearance of two buttons on the left of each
 titlebar (TitleButton 1 and TitleButton3), and three buttons on the
 right of each titlebar (TitleButton 2, TitleButton 4, and TitleButton
 6).  For each definition, the first XPM mentioned defines the
 appearance of the button when it is not pressed; the second XPM
 defines the way the button looks when it is pressed.  The numbering of
 these buttons is hard-coded, so you cannot just number your buttons in
 any order at all.  Follow the "boilerplate" numbering scheme (above
 the TitleButton pixmap definitions in our example).

 In order to make this look function correctly, each titlebar button
 needs to have its function defined in the feel file.  So, the feel
 file might include something which looks like this (this one is taken
 from the feel.DEFAULT file in 1.4.5.55N6):



      ______________________________________________________________________
      Mouse 1         1       A       ChangeWindowUp
      Mouse 2         1       A       GetHelp
      Mouse 3         1       A       ChangeWindowDown
      Mouse 1         2       A       Delete
      Mouse 2         2       A       Destroy
      Mouse 3         2       A       Destroy
      Mouse 1         3       A       PopUp "Window"
      Mouse 2         3       A       WindowList 2
      Mouse 3         3       A       WindowList 2
      Mouse 1         4       A       Shade
      Mouse 2         4       A       Stick
      Mouse 3         4       A       Stick
      Mouse 1         6       A       Iconify
      Mouse 2         6       A       Maximize
      Mouse 3         6       A       Maximize
      ______________________________________________________________________




 The first column defines what action causes the desired behaviour; so,
 "Mouse 1" means "mouse button one is pressed".  The second column
 defines where the behaviour is to have its desired effect: in our
 list, we have definitions for all five (TitleButton 1, TitleButton 2,
 TitleButton 3, TitleButton 4, and TitleButton 6) of the buttons
 defined in the look file.  Notice that each button gets a definition
 for every mouse button, so there is never an undefined action on any
 TitleButton.  The third column specifies the context for the action.
 In this case, the context is "Any" (actually any context except in the
 TitleBar); you can also specify modifications (e.g. by adding "C" for
 "Control").  The final column specifies the behaviour which attaches
 to the action.  So, in the last row, we define that clicking the third
 mouse button on the innermost TitleButton on the right-hand side of a
 window will Maximize that window.

 Other functions get defined in the same list in every feel file, so
 you will have to look carefully to ensure you define everything
 correctly.


 4.10.  Why does some key not work as I expect?

 There are two possibilities here.  One is that you are having problems
 with your "delete" or "backspace" key.  This is a generic X problem,
 and you should investigate it by reading the relevant documentation
 for xmodmap.  Try issuing "man xmodmap" at the command prompt.

 The second possibility is that you have a set of keypresses which work
 in another X window manager, but which do not work under your recent
 installation of AfterStep.  In that case, you need to edit the "feel"
 file.  Before you go on, go back and read the previous question about
 mouse bindings.  Done that?  Good.  Now, keybindings work just the
 same.  So, in your feel file, you might have the following keybinding:



      ______________________________________________________________________
      Key Left        A       C       Scroll -100 0
      ______________________________________________________________________




 This says that if you press "Control" (3d column) and the left cursor
 key (1st column) while anywhere on the screen, AfterStep will scroll
 one page to the left.  If you want to get the functionality of "Ctrl-
 left" back, in order to use it in some other X application, then
 you'll need to remove this keybinding from your feel file.

 You can avoid having any keybinding defined by AfterStep by using one
 of the included feels: feel.ICCCM.  Just select it from the
 Desktop/Feels (v. 1.5) or Decorations/Feels (v. < 1.5) menu under your
 startmenu.


 4.11.  Why can't I have my .steprc in version 1.4.x or later?

 You can.  Use the -f switch to force AfterStep to read from a file.
 Please notice that not everything will work with your old .steprc file
 "right out of the box"; but if you like the old version that much, why
 upgrade anyway?

 That said, version 1.5 has worked out almost all the incompatibility
 issues.


 4.12.  I'm using Red Hat, and I can't find the configuration files
 you've mentioned.

 Red Hat apparently used to include a look-alike to AfterStep which is
 actually a hack of fvwm-2.  It is not AfterStep, although some Red Hat
 distributions also contain the real AfterStep.  Red Hat has changed
 the name of their "hacked" version, in order to reduce confusion.

 A "real" version of AfterStep is included in Red Hat Linux 5.1.  It
 uses m4 preprocessing for configuration, however, so not all
 configuration remarks in this document will be useful to Red Hat
 users.  If you want to configure the AfterStep included in Red Hat,
 you should ask Red Hat how to do it, or read the documentation for m4,
 or both.  There is some discussion of the Red Hat preprocessing under
 the startmenu section, above.
 4.13.  What is the database file?

 The database file allows you to adjust certain features of the
 desktop.  It allows you to define icons for minimized programs, allows
 you to force certain programs (like Pager or Wharf, for instance) to
 stay on top, and other such options.  Have a look at the default
 database file, back it up, and play with some of the settings; it's
 pretty self-explanatory, but it takes a little fooling to make it work
 as you want.

 Items in the database file follow the "Style" conventions from fvwm
 and AfterStep.  So, each item is listed this way:



      ______________________________________________________________________
      Style   "WM_CLASS"  {comma-separated list of options}
      ______________________________________________________________________




 You can learn the value of "WM_CLASS" by using the Ident module
 included with AfterStep.  Ethan Fischer ([email protected])
 offers the following account of what the various options do:









































 ______________________________________________________________________
 In general, these options have both an "on" and an "off" keyword (like
 "Title" and "NoTitle", for instance).  This allows a general style (like
 the "*" style), to be overridden by a later style.  For example:

         Style "*" NoButton 1, BorderWidth 2
         Style "xterm" Button 1, NoHandles

 will hide the leftmost button on the titlebar for any window except xterm
 windows.  It will turn off resize handles for xterm windows.  It will also
 give a 2-pixel border to xterm windows - note that BorderWidth only affects
 windows with NoHandles (this is in the manpage), so all other windows will
 receive the normal 1-pixel border.

 Here's a list of options, along with what they do.  For each group, the
 default is listed first.

 Icon {icon.xpm}
 NoIcon
   Specifies the icon pixmap, if the app doesn't supply its own.  NoIcon
   turns this off.

 Title
 NoTitle
   Give the window a titlebar.  NoTitle removes the window titlebar.

 IconTitle
 NoIconTitle
   Display the icon name along with the icon.  NoIconTitle turns this off.

 Handles
 NoHandles
   Give the window resize handles, also called the "lowbar".  NoHandles
   turns this off.

 Button {button}
 NoButton
   Allow a titlebar button to be shown.  It will still not be shown if it
   is disallowed by Motif WM hints, or there is no pixmap specified for it
   in the look file.  NoButton disallows a button.

 WindowListHit
 WindowListSkip
   List the window in the window list.  WindowListSkip removes the window
   from the window list.

 CirculateHit
 CirculateSkip
   Circulating (also called warping or alt-tabbing) will stop at this
   window.  CirculateSkip prevents circulating to this window.

 StartNormal
 StartIconic
   Start as a normal window.  StartIconic starts the window as an icon.

 StaysPut
 StaysOnTop
 StaysOnBack
   Don't put a window anywhere special in the stacking order.  StaysOnTop
   windows are placed above all other windows except menus.  StaysOnBack
   windows are placed behind all other windows.

 StartsAnywhere
 StartsOnDesk {desk}
   Start the window on the current desk.  StartsOnDesk will force the
   window to start on a specific desk.
 Color {forecolor} {backcolor}
 ForeColor {color}
 BackColor {color}
   Change both the foreground (text) color, and the background color for
   this window.  ForeColor changes only the foreground color.  BackColor
   changes only the background color.

 NoFocus
   This window will refuse to take the input focus.

 Slippery, Sticky
   This window will remain on whatever desk it started on, unless the user
   moves it.  Sticky will cause the window to move to whatever desk is
   currently shown.

 BorderWidth {width}
   If NoHandles was also specified, set the border width of this window.
   Note that the border is an X border and not special to AS (unlike the
   titlebar or lowbar).

 HandleWidth {width}
   Set the width of the resize handles on the lowbar.
 ______________________________________________________________________





 4.14.  What is the base.{yourbpp}bpp file?

 The "base" files define the path to pixmaps and the like for each
 bits-per-pixel X ColorDepth setting.  The number of colors your X
 session can use at any one time is limited by the number of bits per
 pixel that are allowed by your video hardware, and by your X
 configuration.  The file, base.{yourbpp}.bpp, is automatically
 selected by AfterStep upon startup, according to what your X
 configuration allows.  For more information about ColorDepth, read
 your X documentation, as well as the section on colormap issues,
 below.

 The base files also define the size and scale of your desktop(s).


 4.15.  How do I get apps to minimize to a different place?

 When an application minimizes, the icon shows up in a predictable
 place on the desktop.  This is the icon box.  In versions that use a
 .steprc, this is defined in the .steprc.  In later versions, the icon
 box is found in the look file.  (Naturally, this means that if you
 change looks, the icon box may move!)  You can specify any location
 you like for the icon box, using standard X geometry.


 4.16.  I keep losing my icons, or I can't stand having them follow me.

 Even though these are opposites, they amount to the same question.
 Icon behaviour in this case is controlled in the feel.  StickyIcons
 ensures that the icon will follow you from one desktop to another.
 StubbornIcons iconifies an application to its original place.  You can
 back up your feel, and play with it to see what you can do.


 4.17.  Suddenly, some windows stay always on top. Why?

 With the default, double-clicking (latest versions) or triple-clicking
 (earlier versions) on a window titlebar toggles a window's always-on-
 top state.  Double/Triple-click again to remove it. If you want to
 remove this feature, locate the lines in your feel file that look like
 this (there are several of them):



      PutOnTop        "TripleClick"




 and comment them out.

 It is also possible that you have inadvertently changed your feel.
 Predictably enough, different feel files define functions differently.
 So, for instance, one of them may automatically move a window to the
 top as soon as your pointer is atop that window, while another may
 require that you click on the titlebar in order to bring a window to
 the top.  You might like to read through the various feel files on
 your system, in order to get an idea of how they can be customized.


 4.18.  Can I make or install a "theme" for AfterStep?

 There is a new set of scripts available to work through themes.  It is
 still in the early stages of development, but several people have
 already reported success.  The scripts come from Doug Alcorn
 ([email protected]), and are available from his page,
 http://home.earthlink.net/~alcornd/
 <http://home.earthlink.net/~alcornd/> as well as from the AfterStep
 FTP site, under /themes.


 4.19.  I want to do xyz with {some application under X}.  How do I do
 it?

 Yes, this is a generic question, because the generic answer is always
 the same: please read the relevant man pages and README files.  That
 said, there are several applications which are included with
 AfterStep.  Some (not all!) of these are discussed in another section
 (below, after the Modules section).  If you're really perplexed, and
 you're having a problem peculiar to AfterStep, and you have read every
 relevant thing (that really means everything!), a question to the
 regular list would not be out of place.


 5.  Icons, graphics and pixmaps


 5.1.  Icons staying put

 In old versions of AfterStep, an icon to be used in Wharf must contain
 at least one transparent pixel; otherwise the symptoms you've
 mentioned will turn up.  Simply add a transparent pixel and everything
 should work flawlessly.

 Newer versions of AfterStep fix this problem, allowing you to use
 icons without transparent pixels in the Wharf.  You should really
 upgrade to the latest version.


 5.2.  Colormap issues

 Yes, I (Andrew) know that "colour" is spelled incorrectly here.  I
 can't help it that those who set up X and Linux spell incorrectly.

 5.2.1.  When I run AfterStep some of the icons on the button bar don't
 show up. If I load them at the top they show up, but then the other
 ones don't.  Also, when I use Netscape, the colors get wacky. What's
 wrong?


 Odds are you are using a 256 color (8bit) display.  A quick
 explanation is that you can only have 256 colors on the screen at the
 same time, and the more colors you use in Wharf (the button bar), the
 fewer you can use for other applications and icons.  I would suggest
 upgrading your video hardware or using more conservative (less
 colorful) icons.  For netscape, an option is to run it with the
 'netscape -install' command.  This will ensure that netscape gets a
 good deal of the color that it wants.  It will, however, also result
 in the colors flashing whenever you move the mouse in or out the
 Netscape window. You decide whether you can live with that.

 One trick, it seems, is to run AfterStep without a Wharf.  That
 reduces the number of colors used at any one time.

 You might want to use low-color icons, as well; you can find a good
 collection of low-color icons (all of them together use only 21
 colors) at <http://the-labs.com/AfterStep/>.

 If you are using asclock, you can configure it to use fewer colors.
 See below.

 After version 1.4, AfterStep uses config. files ending with "8bpp" for
 8 bit displays, and low-color icons from icon/8bpp.  You can modify
 these files to use fewer colors.


 5.2.2.  colormap.  I am having trouble under AS while using xscreen�
 saver with its own

 So far, no solution has surfaced to this problem.  It appears that
 AfterStep is not handing over control of the display.  There seem to
 be other related problems of this nature, mostly on Suns.  Any
 additional information would be appreciated: Gerhard den Hollander
 ([email protected]) is working on this problem.


 5.3.  Icons disappear from Wharf. What's wrong?

 You are most likely running out of colors. Either upgrade your
 hardware, switch to a higher color depth (i.e. 16 bpp or higher), or
 use icons that contain fewer colors.


 5.4.  How do I create an icon with a transparent pixel?

 You don't really need to do this any more: the preferred method here
 is to upgrade your AS version.  Still, if you don't want to download,
 you can fix your problem easily.  An xpm is a simple text file.
 Therefore, the only image manipulation software you will need is vi
 (or some other text editor).  If you edit your xpm, you will become
 aware of its beauty and simplicity. At the bottom you will notice a
 character representation of your image. At the top there is a color
 listing corresponding to each pixel of the character representation.

 You have two options to create a transparent pixel:


 1. Change an existing pixel color to transparent:

    Simply find the pixel character(s) you wish to become transparent,
    then go back up top and find that character in the listing.  Change
    the color code (number beginning with a #) to None.  Save, and
    you're all tootin'.

 2. Create a new transparent pixel:

    Edit the line near the top corresponding to the height/width/number
    of colors/chars per pixel.  Increment the number of colors (third
    value) by one.  Then in the list of pixels and color values add the
    line:



                     c None





 Where `c' should be a character that is not being used by any other
 color. From there save and take off.

 If you're the slightest bit unsure, take a look at one of the xpm
 files in the AfterStep distribution's icons directory.

 The `correct' size for a Wharf icon is 48x48 pixels. However, if you
 use bigger icons, they will display correctly, up to 64x64, which is
 the default size for the Wharf buttons.


 5.5.  How do I make my own XPMs?

 See the previous question.  Or, if you're trying to convert a
 compressed file to an xpm, try using an image-manipulation tool like
 xv or the GIMP.


 5.6.  Where can I find some cool pixmaps for the Wharf or desktop?

 There are dozens of sites scattered around the Internet which will
 provide you with useful graphics.  Some good links to start with can
 be found on the official AfterStep home page.


 5.7.  Why doesn't program `xyz' work in 16bpp?

 Several 8bpp programs don't work on displays without a PseudoColor
 visual available.  Several PC X servers don't support PseudoColor
 visuals on displays running in TrueColor mode. You should buy an SGI.
 Or run two simultaneous X servers, if you're on Linux.

 Note for SGI users willing to play with their bpp :

 One has to tweak the arguments to X in /usr/lib/X11/xdm/Xservers.  The
 following worked for Tim Buller ([email protected])



      :0 secure /usr/bin/X11/X -bs -c -nobitscale -visid 0x34




 Where Visual ID 0x34 (reported by xdpyinfo) is:


        visual:    visual id:    0x34
          class:    TrueColor
          depth:    24 planes
          available colormap entries:    256 per subfield
          red, green, blue masks:    0xff, 0xff00, 0xff0000
          significant bits in color specification:    8 bits





 5.8.  Why doesn't xv do xyz in 16bpp?

 xv doesn't cope well with 16bpp in three ways. First, it can't grab
 pieces of the screen. Second, if you grab pieces of the screen with
 xwd and try to display them with xv, it doesn't work well. xwud works.
 Third, if you display a 24bpp picture, it doesn't bother to dither it
 down to 16bpp, resulting in bad pictures.  You might want to consider
 using the GIMP, or xli.


 5.9.  Why don't icon names change when the application changes it?

 Sorry, but icon names change since AfterStep 1.1.  Upgrade.


 5.10.  Why does application xyz not have an icon?

 You need to define an icon for your program in your database file.
 It's a good idea to define a default icon for all "unknown" programs.
 In the latest versions of AfterStep, you do this in the database file:



      Style   "*"             Icon Unknown.xpm





 5.11.  Why do I get bad behaviour with backgrounds?

 In earlier versions of AfterStep, background loading was handled at
 start-up by invoking another program in the .steprc.  While version
 1.4 allowed the use of XPMs only, 1.4.4 restored the ability to load
 jpegs (or whatever) with another program.  The catch is that the
 auxiliary program is defined in configure.h at compile time.  Edit the
 configuration to reflect the accurate path to your favourite image
 viewing program, and then re-compile AfterStep.

 The default program to use is xli.  Many people don't have this on
 their system, and prefer to use xv instead.  This choice is still a
 compile-time option.  Moreover, the Pager code is broken in some
 distributions, so that the jpeg handling doesn't always work.

 The loading of backgrounds is handled by the Pager module.  If you're
 not using the Pager, then the backgrounds won't get loaded.  In that
 case, you can make the call to the background-loading program in your
 autoexec file.

 As of this writing, the Pager module is being re-coded to include
 (native) support for background jpegs.  This new pager is included in
 a patch to version 1.5 beta 4.  Version 1.5 will include native
 support for jpegs.


 Note that jpegs don't take any less memory while loaded; they only
 take less disk space!


 6.  Modules


 6.1.  How do I get multiple Wharfs/Pagers on the screen?

 It's pretty easy. You just have to have the Wharf exist under several
 different names, and then configure each of them using its name. For
 example, if you make a link to Wharf called MyWharf (type "man ln" at
 a command prompt if you don't know how to make links), you would add
 extra lines to the Wharf configuration file (or new section in a
 .steprc) for the new binary name: ~/GNUstep/Library/AfterStep/mywharf.
 The file would then include lines like this:



             *MyWharfAnimate
             *MyWharf "label" Icon.xpm Exec "something" something




 Same for the Pager.  Note that the default pager file includes several
 additional lines already, for *WPager, *XPager, *YPager, and *Zpager.
 Use links with those names to use the defaults (and remove the comment
 marks from the relevant lines).

 In the newest versions, you'll also need to edit the database file:
 mirror the Wharf appearance with the new name.

 Note: Apparently, due to the way the Wharf configuration file parser
 works, links with names like  Wharf2 (i.e. the same original name with
 characters appended to it) will not work: the parser will think you
 are referring to the original module and will get confused.  You have
 to give each link a distinctive name.  Try, for instance, MyWharf.

 In the latest versions of AfterStep, there is also a different version
 of GoodStuff included with AfterStep; this is called Zharf.  It allows
 variable-sized buttons, and it includes names for the icons.  You can
 start it up with the default configuration from your startmenu (look
 under "Modules").  Configuration is basically the same as for Wharf.


 6.2.  How can I get asclock to appear properly in Wharf?

 First, you need AfterStep 0.98 beta 4 or later. These version have the
 MaxSwallow option. Then, add a command such as this to the wharf file
 or line (depending on whether you use .steprc):



               *Wharf asclock nil MaxSwallow "asclock" asclock -12 -shape &




 You must replace the `-12' with '-24' to display 24 hour time.


 6.3.  How do I configure asclock to use fewer colors?

 When installing, after executing configure, asclock configure should
 be launched by default.  Otherwise, go to the  modules/asclock
 directory and do the following:

 1. Execute sh configure

 2. Several menus will appear, asking for the default language for
    dates (yes, you can change it!) and the number of colors used.
    There is one option to use 2-bit color, resulting in an asclock
    that uses only 4 colors, but still looks pretty good.

 3. Done. Now go and compile asclock as usual.


 6.4.  Why does asclock show the wrong time?

 This happens most often on Red Hat Linux installations.  There's a
 broken link; this is a fairly well-known problem.  Just make a link
 between /usr/lib/zoneinfo and /usr/share/zoneinfo.  If you don't know
 about links, try typing 'man ln' at a command prompt.


 6.5.  Why does my latest version of MaxSwallow do odd stuff?

 In the newest versions of AfterStep (i.e. starting with the 1.4.5
 series of patches), the Wharf underwent some re-working, in order to
 allow the use of some newer programs (designed for Window Maker).  As
 a result, different patches turned up for the Wharf.

 The final result of this work can be seen in version 1.5.  The old
 "MaxSwallow" has been removed, and replaced with "Swallow".  The older
 "Swallow", with its size limitation, is gone.  The "MaxSwallow"
 keyword now re-sizes the button to fit the app being swallowed.  There
 is also a "Size" keyword, to resize the buttons, and ignore any other
 size determination.


 6.6.  What's wrong with WharfAnimate?

 There are really two questions here.

 First, in 1.4.4, WharfAnimate was broken.  This was fixed in 1.4.5.0.

 Second, some people complain that Animate is too slow.  This is
 defined at compile time.  You should adjust the three animate lines in
 configure.h to a lower number; that will speed up the animation.
 Version 1.5 includes three new configuration options:
 WharfAnimateSteps, WharfAnimateStepsMain, WharfAnimateDelay.  These
 are defined in the wharf configuration file, and control the animation
 of Wharf.  The old compile-time configuration is also still available,
 but these new options will hopefully make things easier.


 6.7.  Can you add xyz to the Wharf?



      You know, it would be really nice if the Wharf supported text
      titles/cascading menus/tabs on the side/plug-in modules/swallowing
      running applications in folders/scrollbars on folders/starting appli�
      cations only if they're not already running. Why doesn't someone do
      it?


 This is a holy war.  You will be crucified at dawn.  Unless you
 implement it yourself and post a patch.


 No, seriously, there has been a lot of discussion about these topics.

 Many people believed that AfterStep should be kept as close as
 possible to the original NEXTSTEP interface, while others thought it
 should be extended and be made as configurable as possible.

 Now Window Maker is following the original NEXTSTEP interface, while
 AfterStep is going its own way.  Extensive configurability is one of
 these "own ways".

 So please send a message to one of the relevant lists saying exactly
 what you'd like to be implemented; or, even better, do it yourself and
 send a patch.


 6.8.  Can I have swallowed apps under a folder?

 You can have this only if you have version 1.4.5.55N2 or later.


 6.9.  Can I have a folder within a folder?

 Yes.  In version 1.5, folders can be nested.  Just nest the sub-folder
 specification within the main folder specification.

 In versions prior to 1.5, you could not nest folders.  Thadeu Penna
 ([email protected]) cleverly worked around this limitation by creating
 a folder which calls another Wharf:




      My dirty solution was: one of the Wharf's buttons is a call
      to Pier (a secondary Wharf). In this way, I got one additional level. The
      main disadvantage is for each button in the Pier, you have to write a small
      script that calls the program and after to kill the Pier. The geometry was
      quite easy to evaluate. I have used, for the first button of the Pier, the
      same icon as in the Wharf, therefore it seems as a Folder with an additional
      level. It is a little slower than Wharf itself.





 6.10.  Can I have two columns in my Wharf?

 Yes, in version 1.5.  Use WharfColumns.  WharfColumns was broken, but
 it's fixed now.


 6.11.  Why can't I find the man page for Wharf?

 Spell it "Wharf" and not "wharf".


 6.12.  What's wrong with the mouse buttons in the pager?

 In 1.4.5.55, the left and middle mouse button bindings were reversed,
 because of a request from Red Hat.  Several users have expressed
 dissatisfaction with this arrangement, however, so it will not be
 maintained.  Version 1.5 is back to the old style.





 6.13.  How can I have more/fewer/larger desktops?

 The Pager module in the latest AfterStep versions is highly flexible.
 It can be configured to show several desktops, each with several
 screens, and it can be placed just about anywhere you like it.

 To change the size of the desktop, edit the base.{your bitdepth}bpp
 file to reflect the size of the desktop that you want.  "2x2" means
 "two panes wide by two panes high".

 To change the number of desktops, you need to do two things.  First,
 you need to change the call to pager in your autoexec file.  The
 syntax for starting Pager is "Pager {1st desktop} {last desktop}",
 where the first desktop is always 0.  So, if you wanted to have two
 desktops, you would add the following line to your autoexec file:



      ______________________________________________________________________
      Module  "I"     Pager 0 1
      ______________________________________________________________________




 You should also then comment out or remove the definitions for the
 extra desktops in your pager configuration file.

 The Pager can be placed anywhere on the desktop, by editing the value
 of "*PagerGeometry".  This uses the standard X geometry values.

 Pager can also be displayed vertically and horizontally.  Just adjust
 the values of "*PagerRows" and "*PagerColumns".

 Notice, also, that the pager configuration file has changed in version
 1.5, in order to allow the new functionality.  Do not recycle your old
 pager configuration, but use the new default as the basis for new
 customization.


 6.14.  Fine, but how do I get the pager off the desk entirely?

 You can get rid of the pager by removing it from the autoexec file.

 Pager can be swallowed in the Wharf.  In version 1.5, it is also
 possible to do this under a Wharf folder.  Use "MaxSwallowModule".


 6.15.  How do I enable sound in AfterStep?

 First, make sure you have the necessary hardware, and have a kernel
 compiled with sound support.  You can check that your sound actually
 works by trying the following at a command prompt:



      cat [some au file] > /dev/audio




 Then, edit the ~/GNUstep/Library/AfterStep/audio file. You should see
 lines like these (if you don't, add them):



          *AudioPlayCmd /usr/bin/showaudio
          *AudioDir /usr/local/share/afterstep/desktop/sounds
          *AudioDelay 1





 Again, if these aren't there, add them.  Verify that the AudioPlayCmd
 is a valid program and that the sounds you want to play are in
 /usr/local/share/afterstep/desktop/sounds/ (or set it to the
 appropriate directory).

 Below that section, you should see many lines like this:



               #*Audio startup gong.au




 Simply remove the comment (#) from the beginning of the line and if
 you wish, set the startup event to some other au file.  The format is:



             *Audio [event] [sound]




 Do that for the rest of the Audio events, and as one AfterStepper put
 it, you'll literally add new bells and whistles to AfterStep.

 In some versions of AfterStep, sound is disabled by default.  You can
 get the audio module to work in two ways.  The first is to open the
 "Start" menu, click on "Modules", and then click on "Audio".  The
 other is to start the Audio module in your autoexec file.  Just add
 the line



              Module  "I"     Audio




 to your autoexec file.

 The Audio module was apparently broken in some versions, but nobody
 seems to know why.  You should make sure you have the latest version
 of AfterStep before asking why your Audio module does not work: all
 current versions seem to be functioning correctly.  If you are still
 having trouble, and you've read this and followed the instructions
 carefully, you might want to ask questions on the mailing list.

 You should also be aware that the configuration of the Audio module
 has undergone some changes.  So, if you've changed your version of
 AfterStep, and Audio is suddenly not working for you, check that you
 removed your old configuration before asking what is wrong.

 Finally, if you are getting errors complaining about an incorrect
 path, check your base.{yourbppnumber}bpp file.  The AudioPath used to
 be set in the base file, but it is now set in the configuration file
 for the Audio module.  This change affects versions since 1.4.5.0; but
 1.4.5.0 was accidentally released with the AudioPath configured in the
 base file.  Fix the definition, and the problem will go away.


 7.  AfterStep Application ("as-apps") configuration.



 7.1.  What's the difference between as-apps and modules?

 Modules are part of AfterStep, and need to be called by AfterStep.
 They cannot be run alone.  As-apps, on the other hand, can be used by
 other window managers as well.


 7.2.  I want to add a pixmap to the background of xiterm

 The first thing you must ensure is that you compiled xiterm to allow
 this.  The default configuration of xiterm does not permit the
 addition of pixmaps.  You need to edit xiterm.h (you'll find it in
 xiterm/src/) before compiling in order enable the feature: change the
 line



      ______________________________________________________________________
      /*#define XPM_BACKGROUND*/
      ______________________________________________________________________




 to



      ______________________________________________________________________
      #define XPM_BACKGROUND
      ______________________________________________________________________




 Once you're sure you've compiled and installed xiterm correctly,
 simply add the switch "-pixmap {path-to-pixmap}".


 7.3.  I want xiterm to start as the login shell.

 In order for this to work correctly, you need to adjust the compile-
 time settings for UTMP_SUPPORT.  The relevant section is near the end
 of xiterm.h.  The exact changes you need to make vary from system to
 system; just read the comments carefully, and make the correct
 adjustments.


 7.4.  How do I get that cool transparent xiterm?

 You can't.  There is no such thing.  The "transparent" effect you are
 looking for is actually just a *term program (xiterm, rxvt, whatever)
 with a background pixmap identical to the desktop.  The user carefully
 lined up the *term so that the pixmaps appeared to be the same ones.

 Apparently, the newest version of Eterm has a "transparency" option.
 If you decide to use it, I hope you have a couple of million extra CPU
 cycles lying around!  The transparent Eterm actually just reads the
 current background, than then tries to keep the Eterm background lined
 up correctly.  In order to make this work, you will need to use
 esetroot, or use the new pager introduced with the 1.5 series.  The
 new pager offers support for Eterm.  You will still need to get all
 the necessary libraries for Eterm, however.

 There is also a program called roottail, which allows you to tail
 messages onto the root window.  This is useful, for instance, if you
 want to view /var/log/messages without having an extra xterm open all
 the time.


 7.5.  I am having trouble with asmix or asmixer and Wharf

 This appeared in AS 1.4.4.  That release included only asmix, and not
 asmixer.  You can either get asmixer and install it, or use asmix.  If
 you use asmix, make sure you are invoking in correctly in the Wharf.
 In particular, you must be consistent in your invocation: it is
 labelled "asMix" in the Wharf file, even though the name of the file
 is "asmix".

 The latest version fixed this, so you can use "asmix" in the Wharf
 file.  The class name, however, is still "asMix", so you have to use
 "asMix" in the database file, if you have any options you want to
 configure particularly for asmix.


 7.6.  I upgraded AfterStep, and now my as-apps look funny in the
 Wharf.

 This is because of some changes to the "Swallow" and "MaxSwallow"
 keywords in the Wharf configuration.  Have a look at the section on
 Wharf, above.


 7.7.  How do I use asmail?

 Asmail checks for your mail.  You configure it using the asmail
 configuration file, which can be found with the rest of your AfterStep
 configuration files.  (On version 1.5, this is
 /usr/local/share/afterstep.)  The configuration is pretty self-
 explanatory.

 Note that asmail checks for mail on the local system.  If you are
 connected to another system, and are using NFS, you can check your
 mail on that system.  If you are connected across a PPP or SLIP link,
 you may want to use a program such as fetchmail to retrieve your mail.
 Then, asmail will report when you have received mail.


 7.8.  What is ascp?

 Ascp stands for `AfterStep Control Panel', and is a program that
 allows you to configure AfterStep while imitating the NEXTSTEP control
 panel look and feel. It makes it really easy to configure AfterStep
 without manually fiddling with the configuration file(s).  There is
 more information about how to get it below.  Make sure you read it
 carefully.

 Versions of ascp before version 0.9 used Tcl/Tk and TkStep, and would
 write .only to a steprc file.  Starting with version 0.9, ascp has
 abandoned the Tcl-based approach.  The new ascp is based entirely upon
 GTK+.  The very latest version is dependent upon having (at least)
 version 1.1.1 of GTK+, and glib version 1.1.2.


 WARNING: AfterStep doesn't use .steprc since version 1.2, so if you
 use the older Tcl-based ascp , you will have to run AfterStep in
 'compatibility' mode:



       afterstep -f {yeoldsteprc}





 7.9.  I tried to install TkStep, but it doesn't work with TkStep and
 Tcl7.6

 There is a version of TkStep which is supposed to work with Tk 7.6,
 but it does not seem to work for everyone.  The best approach is
 probably to upgrade: the latest version of TkStep works with Tk8.0;
 see below for more information about TkStep.


 7.10.  Why doesn't ascp run on my system?

 This depends on which version of ascp you are talking about.  The old
 ascp needed TkStep.  TkStep is a version of Tk implemented by Alfredo
 Kojima ([email protected]), and now maintained by Oliver Graf
 ([email protected]) and Steve Murray ([email protected]); it gives Tk
 the NEXTSTEP look-and-feel, and implements a few new widgets, like
 font and color choosers. You can download it from
 <http://www.fga.de/~ograf/TkStep.shtml> or
 <http://touchwood.ee.uts.edu.au/TkSTEP/TkSTEP.html>.  These versions
 of ascp do not work with the new configurations anyway (i.e. post
 1.2), so you might not need to worry about this.  To use the Tcl/Tk
 based ascp versions with the latest version of TkStep, you need a
 patch.  You can get the patch from Steve Murray's site:
 <http://touchwood.ee.uts.edu.au/TkSTEP/fixes.html>.  These patches
 only work for versions 0.8 and 0.8-SE, but not for 0.8.4.  You must
 patch ascp before using it with Tk 8.0, or your .steprc file will be
 corrupted.

 A new version of ascp which does not depend on TkStep is now
 available. This is ascp 0.9, also known as gtk+-ascp.  The new version
 only supports the new-style (non-.steprc) configuration.  The latest
 version of this depends upon GTK+.  You can get this version from
 <http://hubble.colorado.edu/~nwanua/htmldir/ascp.html>.  Both the
 program and the site are maintained by Nwanua Elumeze
 ([email protected]).  The ascp home page also tells you what version
 of GTK+ you will need for the current version of ascp, and provides a
 link for you to find it.


 7.11.  Can I use Window Maker applets in AfterStep?

 Yes.  It was always more or less possible, except that WM apps tended
 not to display correctly in the Wharf.  The changes to the Swallow and
 MaxSwallow functions in Wharf have made it possible to use any Window
 Maker applet in Wharf.


 8.  General usage, features and bugs






 8.1.  Why does XFree86 crash as I'm starting?

 There are many reasons why this might happen, but one bug in
 particular has surfaced which might be important.  Apparently, XFree86
 has some bugs in the shaped windows handling code.  The effect of
 these bugs is that, if you are using an as-app, and another window
 overlaps that as-app's window while the app is starting, X will crash.
 This usually happens at startup time in AfterStep, during the time
 when Wharf is starting.

 The best way to avoid this, it seems, is to add a "Wait" line in the
 autoexec file for every Wharf, like this:



      ______________________________________________________________________
      Module  "I" Wharf
      Wait    "I" Wharf
      ______________________________________________________________________




 Also, avoid putting a menu in the upper left corner when starting up.


 8.2.  Why does AfterStep get slower and slower until I restart it?

 Apparently there was a bug in versions up to 1.0pre3 (probably a
 memory leak) that caused this behaviour. We know that setting your
 TextureMaxColors to something small, like `16 16 16 16' or `32 32 32
 32', will stop this problem. It also seems to happen only with XFree86
 in 32-bpp mode (or 16? Please give me confirmation), and if you're in
 8-bpp or a different X server, it doesn't seem to cause a problem.

 This problem was solved in 1.0pre4, as far as we know. Upgrade!

 Unfortunately, some new memory leaks appeared during the 1.4.x series.
 The most serious of these appear to have been fixed in the 1.5 series.


 8.3.  Click-to-focus dies


      Sometimes, after I've been running AfterStep for a while in click-to-
      focus mode, I can't shift the focus from one window to another by
      clicking.  I have to iconify and deiconify the window to shift focus,
      or pick it from the popup list.  Why?


 This is a strange bug, that is (sometimes at least) caused by having
 the NumLock key activated. It is present up to 1.0pre4, so check your
 NumLock key.

 This problem is solved in 1.0pre5, so you should upgrade if you're
 still having this problem.

 Some people have recently reported that this bug has re-surfaced.  If
 the problem appears on your system, please send a message to the list
 to report it.


 8.4.  What is this `Shade' thing?

 Shade is a window function that is often seen on the Macintosh system.
 In theory, it makes a window disappear except for the title bar.  For
 example, an Xterm normally looks like this:



          |------------------------------|
          |             Xterm            |
          |------------------------------|
          |                              |
          |                              |
          |                              |
          |                              |
          |                              |
          |------------------------------|




 When shade takes effect, the Xterm looks like this:



          |------------------------------|
          |             Xterm            |
          |------------------------------|



 This is nice for saving desktop space and for window management
 purposes.  Some prefer it to iconifying the windows.

 Up to 1.0pre3, Shade didn't work correctly, because it worked by
 resizing the window to a height of 0 pixels, which some applications
 didn't like.

 In 1.0pre4 and later versions, shade works by making the application
 think that it is being iconified, so it works with all applications
 again.  It has the problem, though, that shaded windows become
 `sticky' and appear in all the pages in the virtual desktop.  Unlike
 sticky icons, this is not behaviour that can be changed.  This is a
 bug.

 The "sticky-shade" bug has been fixed in the 1.5 series.


 8.5.  When I restart AfterStep, it kills X. What gives?

 This was a bug that occurred in AfterStep betas. If you experience
 this bug, you are running an old release of AfterStep. Upgrade to
 v1.0pre4 or later to fix this. This is, incidentally, something you
 should probably do anyway, considering the wealth of features you are
 missing.


 8.6.  What is swallow-exec?

 It's a feature introduced in the distribution in 1.0pre4 (it
 previously existed as a separate patch) that allows you to associate
 an action to an entry in the Wharf corresponding to a swallowed
 application. So for example you can have asmail in the Wharf, and have
 it configured so that when you click on it, it warps to your email
 reading window. If your email reader is exmh, the required lines would
 be:




        *Wharf "asmail" nil Swallow     "asmail" asmail &
        *Wharf "asmail" nil Warp        "-" exmh




 Note how both lines have the same label `asmail', which tells Wharf
 that those two go together. You can use any AfterStep function instead
 of `Warp'. For example, if you want the xload icon to fire a top
 window when clicked, you can have something like this:



             *Wharf "xload" nil Swallow      "xload" xload -geometry 48x48-1-1 &
             *Wharf "xload" nil Exec "Top" xterm +sb -T Top -n Top -e top &




 By the way, this feature is responsible for a strange bug. See the
 next question.

 Also note that this feature does not appear always to work in later
 versions.  Many asapps, however, will automatically start another
 program when clicked, if given the correct arguments.  For instance,
 asmail allows you to specify the program to start when the asmail
 button is left-clicked; this is determined in the asmail configuration
 file.  Similarly, asload accepts a command line option, "-exe", which
 allows you to specify a program to start upon a left-click.


 8.7.  happens?  I upgraded to 1.0pre4 or later, and now the Wharf
 doesn't work.  What

 This is not a bug, it's a feature :-). No, really, this behaviour was
 introduced due to the introduction of the `Swallow-exec' capability in
 1.0pre4. To fix it, do the following:


 1. In your  .steprc, locate the lines that start with



             *Wharf "" ...





 2. This could also be nil, or any other label that is the same for all
    the Wharf entries. These repeated labels are the ones causing the
    trouble.  You have to give each Wharf entry a unique label there,
    like `xload', `asmail', `Pager', etc.

 3. Restart and it should be fixed.

 Of course, the better answer is to upgrade to 1.4.x or later, and re-
 configure your Wharf.


 8.8.  Why doesn't my workspace save when I exit?

 In early 1.4.x versions, there was a file  called .workspace_state
 which was automatically written when you exited.  This saved your
 desktop when you exited, so that it looked the same way when you came
 back.  This behaviour was enabled by default in those versions.
 In version 1.4.5.55N6, this behaviour is disabled by default.  You can
 change configure.h to restore this feature before compiling if you
 want to.

 You can also manually create the .workspace_state in your
 ~/GNUstep/Library/AfterStep/ directory.  It is just a plain-text file
 which invokes the program you want to appear on start-up, including
 the geometry (with positioning) of the window.  This file will be read
 at start-up if it exists, but it will only be re-written if you
 selected the relevant flag at compile time.

 The .workspace_state behaviour is one of the options at compile time
 for version 1.5.x.


 8.9.  My start menu no longer updates upon restarting.  Why?

 You should select "Desktop/Update startmenu" (version 1.5) or
 "Quit/Update" (< 1.5) on your startmenu.  That will fix your problem.


 9.  Miscellany


 9.1.  How do I use Microsoft Windows (tm) True Type fonts ?

 Information from David Mihm ([email protected]), posted in the
 AfterStep mailing list:

 You are looking for a server for True Type fonts.  A blurb about one
 of the few programs to provide this server to any WM:


      Xfstt means "X11 Font Server for TT fonts" TT fonts are generally
      regarded to be the best scalable fonts for low resolution devices like
      screens.


 This server can be obtained from sunsite:
 <ftp://sunsite.unc.edu/pub/Linux/X11/fonts/>

 You might want to check freshmeat to see if there are newer versions.

 According to F. Nicolaas Benders ([email protected]), there may
 be difficulties with the server:



      I've been running the 0.97 version and it works well with one major problem.
      Whenever I start it, it automatically slams my CPU and won't let go until it's
      killed.  I refuse to believe that a font server should need more than 50% of my
      processor time constantly, has anyone else had any experience with this?




 Naturally, if anyone has had such experiences, we would be glad to
 hear of it!


 9.2.  What is this Window Maker I keep hearing about?

 WindowMaker -- now Window Maker -- is a new NeXT-like window manager
 that is being developed by Alfredo Kojima ([email protected]) with
 the support of a lot of other people. It will support many
 OpenStep/GNUStep-ish features, and there is talk that it may be the
 "next-generation _asnl", and even the window manager of choice for
 GNUstep.  You can download it from  <http://www.windowmaker.org>

 However, be advised that WindowMaker is still in an early stage of
 development.  It is advancing very fast, though, so you may also want
 to take a good look at it.


 10.  Other AfterStep-unrelated applications


 10.1.  I have a problem with program xyz.

 Please, please, don't post questions unrelated to AfterStep to the
 mailing lists. If you have a problem with some application not
 running, and you think AfterStep is the culprit, first try the
 following:


 1. Read the documentation (man pages, etc.) for the program.

 2. Find out about its configuration parameters (not only command line,
    but also options in  .Xdefaults, config files, etc.).

 3. Ask other people who know about that specific program. Find a
    mailing list about that program and ask there.

 4. Try running the program under some other window manager. If it
    doesn't work there either, it is not an AfterStep problem.

 If you are very confident that it is an AfterStep problem, then send
 it to the mailing list, but try to give as much information as
 possible. Questions like `Why doesn't blig-graphics work on my
 system?' do not contain any useful information that may help others in
 diagnosing your problem; you run the risk of getting a nasty answer if
 you send such a message to the list.  Some data you may have to
 include is:


 1. AfterStep version you are using.

 2. Operating system version, machine architecture.

 3. System configuration (color depth, memory, anything you think may
    help).

 4. Problematic program.

 5. Environment information (other programs running at the same time,
    etc.)

 6. A detailed description of the problem. What happens (error
    messages, etc.), how replicable it is, how to replicate it, etc.

 The more information you provide, the easier it will be for others to
 find a solution.

 A good reason to suppose that the problem lies in AfterStep is to
 test the same program with an AS-compatible window manager.  This
 means that a failure of a program which works perfectly on
 Enlightenment is not a failure in AS terms; but a failure of an fvwm-1
 program is something of concern for AfterSteppers.