Pager (1) AfterStep module for virtual desktop navigation


The following two configuration options are in the base file:

*DeskTopSize Columns x Rows

Defines the number of view Columns by the number of view Rows of the desk(s) in proportional units, i.e. 2x1 would show 2 views of one desk, one beside another.

*DeskTopScale number

If the geometry is not specified, then a desktop reduction factor is used to calculate the pager's size. Things in the pager window are shown at 1/ number of the actual size.


Starting with version 1.7.60 Pager supports definition of most of it's visual parameters in look file as MyStyles. Styles can also be defined in pager config file, but main contents of the look file will override them. Include them in your pager config to make sure that you get nice looking Pager even if styles are not defined in look file. The following standard MyStyle names are used :


(defaults to "unfocused_window_style") - unfocused window representation's style. Background pixmap and gradient can be used here.


(defaults to "focused_window_style") - focused window representation's style. Background pixmap and gradient can be used here.


(defaults to "sticky_window_style") - sticky window representation's style. Background pixmap and gradient can be used here.


active (selected) desk's label style. This style - defines only look of the desk's LABEL - to define how your actual desk window will look like - you should use *PagerStyle option - see below. Background pixmap, gradient and transparency can be used here.


Same as above, only for inactive desk's label. Background pixmap, gradient and transparency can be used here.



Defines how border around Pager desk representation of the current desk should be drawn.

See Also: Bevel flags for further details.

Example : *PagerActiveDeskBevel Left,Top

# draws thick bevelled lines at the top and left of the desk


Defines how Pager's desk title should be aligned on desk titlebar. See Align options for further details.

Example : *PagerAlign Center

# places title in the center both vertically and horizontally


Defines the bevel to be drawn around balloons - replaces the BorderWidth setting.

See Also: Bevel flags for further details.

BalloonCloseDelay number

Specifies the period in milliseconds to delay the disappearance of the balloon when leaving window with the mouse.

BalloonDelay number

Specifies the period in milliseconds to delay the appearance of theballoon.

BalloonStyle MyStyle

MyStyle to be used to draw balloon. Note that balloons could be shaped (BackPixmap 125 and 126).

BalloonTextPaddingX size

width of the border around the text in balloons.

BalloonTextPaddingY size

height of the border around the text in balloons.

BalloonXOffset offset

Specifies the horizontal offset (in pixels) to use when displaying balloons.

BalloonYOffset offset

The balloon window is positioned to be horizontally centered against the application window it is describing. The vertical position may be set as an offset. Negative offsets of -N are placed N pixels above the pager window, positive offsets of +N are placed N pixels below. Defaults to +2.


Turns on the balloon feature. A "balloon" is displayed showing the name of the window the pointer is resting on in the Pager . Currently only the window's icon name is shown. Note that balloons are not shown for the iconified pager. The balloon background and text are configured with the MyStyle "*PagerBalloon".

See Also: MyStyle definition for details.


Tells afterstep how many columns of desks to use when laying out the pager window. Set to 1 for vertical Pager and define PagerRows.

Decoration param1[,param2[,...]]

Allows you to decorate your pager to your liking. The following parameters can be specified : NoDeskLabel, NoPageSeparator, NoSelection, SelectionColor, GridColor, DeskBorderWidth, DeskBorderColor, LabelBelowDesk, HideInactiveLabels, VerticalLabel.

See Also: Pager Decoration options for further details.


If specified, will not display background image, use this with xearth or xfishtank.

Please note that this is deprecated, use DontDrawBackground (Look option) instead.


Completely or partially specifies the pager window location and geometry, in standard X11 notation. In order to maintain an undistorted aspect ratio, you might want to leave out either the width or height dimension of the geometry specification.


Specifies a size (optional) and location (optional) for the pager's icon window. Since there is no easy way for Pager to determine the height of the icon's label, you will have to make an allowance for the icon label height when using negative y-coordinates in the icon location specification (used to specify a location relative to the bottom instead of the top of the screen).


Defines how border around Pager desk representation of the inactive desk(s) should be drawn.

See Also: Bevel flags for further details.


Assigns the text label to desk desk in the pager window. Useful for assigning symbolic names to desktops


Styles for different Pager properties are called from the file "pager", and the associated MyStyle definitions are located in a selected Look file. Fonts, foreground and background colors, gradients, pixmaps, and transparencies can be specified for Pager's components.

See Also: MyStyle definition for further details.


Do not show Ballons in Pager.


Tells afterstep how many rows of desks to use when laying out the pager window. Set to 1 for horizontal Pager and define PagerColumns.

ShadeButton "unpressed_image" ["pressed_image"]

You should be able to "shade" row or column of desks by pressing special Shade button on desk's title. Define images to be used for it with this option. If no images are defined - then there will be no button and feature will be disabled.


Specifies a font to use to label the window names in the pager. It overrides font specified in Focused/Unfocused/Sticky window style in look file. It also displays text on background color - which can be useful if BackPixmap is specified in window style. Window labels seem to be fairly useless for desktop scales of 32 or greater.


Causes the pager to start iconified.


Specifies that icons should stick to the screen's glass and follow it from desk/view to desk/view.

Style desk style

Sets the style to be used for the desk desk representation in the Pager. Where style can be the name of any style definition in the look file, and desk is a number corresponding to the desktop number: 0,1,2,3,N.... Use it if you want to specify a different style for Pager background other than the default; which is the scaled down *PagerDesktopImage.


Although Pager can be run from the command line, it is normally spawned by afterstep in the autoexec file, in the following manner:

       Module  "I"     Pager beginning_desktop# ending_desktop#
        Wait    "I"     Pager

In case you use Pager to switch your root backgrounds Wait can be used as shown above. This will insure that the Pager has set the root background before you start any furthur apps (like transparent aterms and Eterms).

or from within an afterstep menu file by 'Pager':

% cat "~/.afterstep/start/Modules/Pager"         Module "Pager" Pager first_desktop last_desktop
        MiniPixmap "mini-as.xpm"

To stop the Pager module, a menu item can be used:

% cat "~/.afterstep/start/Modules/Pager_Stop"         KillModuleByName "Stop Pager" Pager
        MiniPixmap "mini-as.xpm"


The Pager module shows a miniature view of the Afterstep desktops which are specified in the command line. This is a useful reminder of where your active windows are. Windows in the pager are accordingly to MyStyle definitions "*PagerUWindowStyle" - for unfocused windows, "*PagerFWindowStyle" - for focused windows and "*PagerSWindowStyle" - for sticky windows. If you never defined those MyStyles, Pager will default to same styles as used for actual windows.

The Pager can be used to change your viewport into the current desktop, to change desktops, or to move windows around.

Pressing mouse button 1 or 2 in the Pager will cause your viewport to change to the selected page of the selected desk. If you click with button 1 in the desk-label area, you will switch desks but not pages within the desk.

Clicking and dragging with mouse button 2 on a miniature window in the Pager will cause that window to be move to the location where you release the mouse button, but your viewport will not change. If you drag the window out of the pager and onto your desktop, a full size image of the window will appear for you to place. There is no way to pick up a full size image of the window and move it into the Pager , however. Since some mice do not have button 2, provisions have been made to drag windows in the Pager by pressing modifier-1 (usually Alt) and dragging with button 3.

When iconified, the pager will work as a fully functional current page only pager. Windows and viewports can be moved within the icon of the pager. Users will want to make sure that they have no lines similar to

Starting with version 1.7.122 Pager no longer loads background images into the memory. Module asetroot should be used to accomplish that task. But Pager will still be able to switch backgrounds as you switch between desks, after you've run asetroot to load images. Use *PagerDontDrawBg option in pager config file to TURN background switching OFF.

See asetroot man page for more information.

       Style   "Pager" Icon myIcon.[xpm|jpg|png]

in their feel files.


During initialization, Pager will search for a configuration file which describes the images, locations and actions to take. This file will be the one specified by the-foption (if given). Else, the ~/.afterstep/pager file will be used if it exists. Else, /usr/local/share/afterstep/pager will be used.

If the Pager executable is linked to another name, ie ln -s Pager OtherPager , then another module called OtherPager can be started, with a completely different set of configurations than Pager , simply by adding *OtherPager options following the same *Pager configuration options below to the pager file. This way multiple Pager programs can be used.


You can direct the keyboard focus to any window on the current desktop by clicking with button 2 on its image in the pager. The window does not need to be visible, but it does need to be on the current page.


 Pager can be invoked from the autoexec file or from a menu item as shown in the Synopsis section above.

AfterStep will search through the directories specified in the ModulePath configuration in the base (where # is your colordepth) to attempt to locate Pager .


 Pager reads the base file and pager file when it starts up and looks for its configuration options.