-->
Previous Table of Contents Next


Chapter 7
Window Managers

A window manager controls the interface when you launch the X Window System in the form of XFree86. It controls the shape of the windows and the form of the scrollbars, allocates memory, and oversees applications.

The default window manager for most distributions of Linux, including Slackware Linux, is fvwm. (No, fvwm doesn’t stand for anything.) Basically, fvwm has some things in common with the Motif Window Manager (which we’ll cover a little later), but there are enough differences to deter any interest from copyright attorneys. Other window managers found with Slackware Linux are the Open Look Window Manager (olwm), based on the OpenWindows interface from Sun Microsystems; the Tab Window Manager (twm), and the fvwm-95 window manager, which mimics the Windows 95 interface. The fvwm, olwm, and twm window managers are shown in Figures 7.1, 7.2, and 7.3, respectively.


Figure 7.1  The fvwm window manager.


Figure 7.2  The olwm window manager.


Figure 7.3  The twm window manager.

As you can tell from the figures, each window manager presents windows on the screen differently. All have menus at the top left of the screen, all have titlebars that present a description of the application, all have scrollbars, and all have handles at the corners that resize the window. Beyond that, however, there are some look-and-feel differences that don’t necessarily affect the applications but might affect how you interact with the application.

In addition to the aforementioned window managers, most Linux distributions—including Slackware Linux—have virtual window managers that present a desktop larger than the average screen size. These virtual screens tend to eat up a lot of RAM because the unseen portions of the screen are still drawn to video memory. (This doesn’t apply to fvwm, which uses a different method for storing unseen portions of the desktop.)

These no-cost window managers differ from the commercial arena, where the Motif Window Manager (mwm) reigns, either directly or through its implementation in the Common Desktop Environment (CDE). Because mwm is commercial software, it is not available via Linux or XFree86, although many third-party vendors, such as Metro Link, offer the Motif libraries and mwm for a fee.

There’s a drawback to using a window manager: They tend to suck up a lot of memory. The X Window System was designed for RAM-jammed workstations and isn’t as efficient as it could be. You should plan to devote at least 4MB of RAM just for using the X Window System. This situation improves somewhat with XFree86, which uses shared libraries to cut down on memory usage. In addition, fvwm is the most memory-efficient window manager available, using about half the memory of twm.

We’re not going to spend a lot of time explaining window managers; the best way to learn about a window manager is to play around with it. If you need more information, check out the Bibliography for a list of other Linux texts.

Working with a Window

When you look at Figure 7.1, you can see that a window can be broken down into a few basic elements. There’s a three-dimensional shading to the window. On the sides of the window are bars, with corner elements called frames used to resize the window. In addition, there’s a titlebar on the top of the window that displays the title of the window.

To move the window, place the cursor over the titlebar or the side bars, press the first mouse button, and drag the window to its new location.

There are two buttons beside the titlebar. The left button calls a menu that can be used to move, resize, minimize, maximize, or close the window. The button on the right turns the window into an icon.

Command-Line Options

Here are the command-line options supported by fvwm:

Option Result
-d displayname Works with displayname instead of the default displayname, stored in the environment variable $DISPLAY.
-debug Works in debugging (synchronous) mode, useful for generating accurate error messages.
-f config_file Uses config_file instead of the default .fvwmrc configuration file.
-s Limits fvwm to one screen in a multiscreen display, as set with the -d option.
-no-m4FP Overrides m4 from preprocessing the .fvwmrc configuration file.
-m4-prefix Prefixes all built-in commands with m4_.
-m4opt option Passes option to m4.


Previous Table of Contents Next