Section: XScreenSaver manual (6)
Updated: 5.40 (12-Aug-2018)
Page Index


starwars - draws a perspective text crawl, like at the beginning of the movie  


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:
Draw on a newly-created window. This is the default.
Draw on the root window.
Install a private colormap for the window.
-visual visual
Specify which visual to use. Legal values are the name of a visual class, or the id number (decimal or hex) of a specific visual.
-program sh-command
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 processed 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 programs like top(1) won't.

Some examples:

starwars -program 'cat /usr/src/linux*/README'
starwars -columns 30 -program 'ping'
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'

-size integer
How large a font to use, in points. (Well, in some arbitrary unit we're calling "points" for the sake of argument.) Default: 24.
-columns integer
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.

Word-wrap lines when they reach the rightmost column. This is the default.
Do not word-wrap: just let the lines go off the right side of the screen.
-left | -center | -right
Whether to align the text flush left, centered, or flush right. The default is centered.
-lines integer
How many lines should be allowed to be on the screen before they fall off the end. The default is 125.
-spin float
The star field on the background slowly rotates. This is how fast. The default is 0.03.
-steps integer
How many steps should be used to scroll a single line. The default is 35. If the animation looks jerky to you, increase this number.
-delay usecs
The delay between steps of the animation; default is 40000 (1/25th second.)
-font font-name
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 better 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.

Default: -*-utopia-bold-r-normal-*-*-720-*-*-*-*-iso8859-1

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 better performance.
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 performance.
Display the current frame rate, CPU load, and polygon count.


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(6), apple2(6), fontglide(6), ljlatest(6), dadadodo(1), webcollage(6), driftnet(1) EtherPEG, EtherPeek  


Copyright © 1998-2005 by Jamie Zawinski and Claudio Matsuoka. Permission 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 documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.  


Jamie Zawinski <> and Claudio Matauoka <>