starwars - draws a perspective text crawl, like at the beginning of the
starwars [-display host:display.screen] [-window] [-root] [-visual
visual] [-delay microseconds] [-program command] [-size integer ]
[-columns integer] [-wrap | -no-wrap] [-left | -center | -right]
[-lines integer] [-spin float] [-steps integer] [-delay usecs] [-font
xlfd] [-no-textures] [-no-smooth] [-no-thick] [-fps]
The starwars program runs another program to generate a stream of text,
then animates that text receeding into the background at an angle, in
front of a star field.
starwars accepts the following options:
-window Draw on a newly-created window. This is the default.
-root Draw on the root window.
Install a private colormap for the window.
Specify which visual to use. Legal values are the name of a
visual class, or the id number (decimal or hex) of a specific
The command to run to generate the text to display. This
option may be any string acceptable to /bin/sh. The program
will be run at the end of a pipe, and any characters that it
prints to stdout will be printed on the starwars window. If
the program exits, it will be launched again after we have pro-
cessed all the text it produced.
Note that starwars is not a terminal emulator: programs that
try to directly address the screen will not do what you might
expect. This program merely draws the characters on the screen
left to right, top to bottom, in perspective. Lines (may) wrap
when they reach the right edge.
In other words, programs like fortune(1) will work, but pro-
grams like top(1) won’t.
starwars -program ’cat /usr/src/linux*/README’
starwars -columns 30 -program ’ping www.starwars.com’
starwars -left -no-wrap -program ’ps -auxwwf’
starwars -left -no-wrap -columns 45 -program ’top -bn1’
starwars -left -columns 40 -program ’od -txC /dev/urandom’
starwars -font fixed -program ’od -txC /dev/urandom’
How large a font to use, in points. (Well, in some arbitrary
unit we’re calling "points" for the sake of argument.)
How many columns of text should be visible on the bottom line
of the screen. Default: 60.
Only one of -columns and -size may be specified; if both are
specified, -columns takes priority.
-wrap Word-wrap lines when they reach the rightmost column. This is
Do not word-wrap: just let the lines go off the right side of
-left | -center | -right
Whether to align the text flush left, centered, or flush right.
The default is centered.
How many lines should be allowed to be on the screen before
they fall off the end. The default is 125.
The star field on the background slowly rotates. This is how
fast. The default is 0.03.
How many steps should be used to scroll a single line. The
default is 35. If the animation looks jerky to you, increase
The delay between steps of the animation; default is 40000
The name of the font to use. For best effect, this should be a
large font (at least 36 points.) The bigger the font, the bet-
ter looking the characters will be. Note that the size of this
font affects only the clarity of the characters, not their size
on the screen: for that, use the -size or -columns options.
Instead of texture-mapping a real font to render the text, use
a built-in font composed of line segments. On graphics cards
without texture support, the line-segment font will have much
When using the line-segment font, turn off anti-aliasing of the
lines used to draw the font. This will make the text blockier,
but may improve performance.
When using the line-segment font, turn off use of thick lines
for the characters that are close to the foreground. This will
make the text appear unnaturally skinny, but may improve per-
-fps Display a running tally of how many frames per second are being
rendered. In conjunction with -delay 0, this can be a useful
benchmark of your GL performance.
DISPLAY to get the default host and display number.
to get the name of a resource file that overrides the global
resources stored in the RESOURCE_MANAGER property.
xscreensaver(1), xscreensaver-text(1), fortune(1), phosphor(1),
apple2(1), fontglide(1), ljlatest(1), dadadodo(1), webcollage(1),
driftnet(1) EtherPEG, EtherPeek
Copyright © 1998-2005 by Jamie Zawinski and Claudio Matsuoka. Permis-
sion to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided
that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting docu-
mentation. No representations are made about the suitability of this
software for any purpose. It is provided "as is" without express or
Jamie Zawinski <email@example.com> and Claudio Matauoka <claudio@hell-
X Version 11 25-Jul-98 XScreenSaver(1)
Man(1) output converted with