4 ! a screen saver and locker for the X window system
10 ! See "man xscreensaver" for more info. The latest version is always
11 ! available at http://www.jwz.org/xscreensaver/
14 ! These resources, when placed in the system-wide app-defaults directory
15 ! (e.g., /usr/lib/X11/app-defaults/XScreenSaver) will provide the default
16 ! settings for new users. However, if you have a ".xscreensaver" file in
17 ! your home directory, the settings in that file take precedence.
38 *overlayTextForeground: #FFFF00
39 *overlayTextBackground: #000000
41 *font: *-medium-r-*-140-*-m-*
43 ! The default is to use these extensions if available (as noted.)
44 *sgiSaverExtension: True
45 *mitSaverExtension: False
49 ! This is what the "Demo" button on the splash screen runs (/bin/sh syntax.)
50 *demoCommand: xscreensaver-demo
52 ! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.)
53 *prefsCommand: xscreensaver-demo -prefs
55 ! This is the URL that the "Help" button on the splash screen loads.
56 *helpURL: http://www.jwz.org/xscreensaver/man.html
58 ! This is how the "Help" button loads URLs (/bin/sh syntax.)
59 ! The "helpURL" will be substituted for up to two occurrences of "%s".
60 *loadURL: netscape -remote 'openURL(%s)' || netscape '%s'
63 ! Turning on "installColormap" interacts erratically with twm and tvtwm,
64 ! but seems to work fine with mwm and olwm. Try it and see. If your
65 ! screen turns some color other than black, the window manager is buggy,
66 ! and you need to set this resource to False (or get a WM that works.)
68 *installColormap: True
71 ! Any program which can draw on the root window will work as a screensaver.
72 ! The following resource enumerates them.
74 ! Programs are separated by newlines (specified in resource files with \n).
75 ! Lines may be continued with a lone \ at the end of the line.
77 ! Each line is an `sh' command.
79 ! If the first (non-blank) character on the line is "-", then that means
80 ! that this command is disabled: it's still in the list, but it won't ever
81 ! be used. (This is just to make it easy to disable and then re-enable
84 ! If the first word on the line is the name of a visual followed by a
85 ! colon, then that visual will be used for the program, if it is available.
86 ! If no such visual is available, then the program will be skipped. In
87 ! this way, you can specify that you want certain programs to run only
88 ! on color screens, and others only on mono screens, by making use of the
89 ! magic visual names "color" and "mono". Likewise, if some hacks prefer
90 ! colormaps, but others prefer 24-bit windows, that also can be arranged
91 ! (in this case, by using "PseudoColor:" versus "TrueColor:".)
93 ! Some of the screenhacks are written using OpenGL. OpenGL programs are
94 ! a bit different than normal X programs, in that they prefer visuals that
95 ! are *half* as deep as the screen. You can tell xscreensaver to select a
96 ! good visual for a GL program by using the magic visual name "GL".
98 ! All programs must be launched in such a way that they draw on the root
99 ! window; they should not be spawned in the background with "&". If shell
100 ! metacharacters are used, they must be understandable to `sh', not `csh'
101 ! (the $SHELL variable is not consulted, for unfortunate but good reasons.)
103 ! Be sure to check out Demo Mode: run the `xscreensaver-demo' program to
104 ! edit the current list of programs interactively, try out the various modes,
105 ! and change other parameters. See the man page for details.
107 *programs: qix -root -solid -delay 0 -segments 100 \n\
108 attraction -root -mode balls \n\
109 attraction -root -mode lines -points 3 -segments 200 \n\
110 attraction -root -mode splines -segments 300 \n\
111 attraction -root -mode lines -radius 300 \
112 -orbit -vmult 0.5 \n\
116 rorschach -root -offset 7 \n\
121 slidescreen -root \n\
122 decayscreen -root \n\
124 blitspin -root -grab \n\
142 grav -root -trail -decay \n\
159 starfish -root -blob \n\
171 kaleidescope -root \n\
173 - xlyap -root -randomize \n\
177 interference -root \n\
178 truchet -root -randomize \n\
184 rd-bomb -root -speed 1 -size 0.1 \n\
193 wander -root -advance 0 -size 10 -circles True \
194 -length 10000 -reset 100000 \n\
199 mono: rocks -root \n\
200 color: rocks -root -fg darksalmon \n\
202 mono: qix -root -linear -count 5 -size 200 -spread 30 \
203 -segments 75 -solid -xor \n\
205 color: attraction -root -mode polygons \n\
206 color: attraction -root -mode filled-splines -segments 0 \n\
207 color: attraction -root -glow -points 10 \n\
208 color: bubbles -root \n\
210 PseudoColor: qix -root -count 4 -solid -transparent \n\
211 PseudoColor: qix -root -count 5 -solid -transparent -linear \
212 -segments 250 -size 100 \n\
214 @GL_KLUDGE@ GL: gears -root \n\
215 @GL_KLUDGE@ GL: superquadrics -root \n\
216 @GL_KLUDGE@ GL: morph3d -root \n\
217 @GL_KLUDGE@ GL: cage -root \n\
218 @GL_KLUDGE@ GL: moebius -root \n\
219 @GL_KLUDGE@ GL: stairs -root \n\
220 @GL_KLUDGE@ GL: pipes -root \n\
221 @GL_KLUDGE@ GL: sproingies -root \n\
222 @GL_KLUDGE@ GL: rubik -root \n\
223 @GL_KLUDGE@ GL: atlantis -root \n\
224 @GL_KLUDGE@ GL: lament -root \n\
225 @GL_KLUDGE@ GL: bubble3d -root \n\
226 @GL_KLUDGE@ GL: glplanet -root \n\
227 @GL_KLUDGE@ GL: pulsar -root \n\
228 - GL: pulsar -root -texture -mipmap -texture_quality \
232 ! Some other programs that you might want to track down (these work as
233 ! XScreenSaver helpers, but are not distributed with it):
235 ! xdaliclock -root -builtin2 \n\
238 ! xbouncebits ... \n\
239 ! ico -r -faces -sleep 1 -obj ico \n\
241 ! xmountains -b -M \n\
242 ! color: xfishtank -c black -d -r 2 \n\
244 ! xtacy is ok, but it only works on the default visual. We can satisfy
245 ! that constraint like so:
247 ! default: xtacy -root -delay 100 -funky -number 3 \n\
248 ! default: xtacy -root -delay 100 -gravity \n\
249 ! default: xtacy -root -delay 100 -mixer \n\
250 ! default: xtacy -root -delay 100 -taffy -pal 4 \n\
252 ! To display a randomized slideshow of images, you can do something like this:
254 ! default-n: xv -root -rmode 5 image-1.gif -quit
255 ! default-n: xv -root -rmode 5 image-2.gif -quit
256 ! default-n: xv -root -rmode 5 image-3.gif -quit
259 ! Note that we've used "default-n" as the visual name, rather than just
260 ! "default": this means "default visual, no install", that is, it's like
261 ! specifying the command-line arguments "-visual default -no-install".
262 ! This is necessary because, when XV is running in "-root" mode, it always
263 ! assumes that the default visual and colormap are being used, rather than
264 ! examining the window it is drawing on to see what visual and colormap it
265 ! has. If we didn't force the default visual to be used, xv would get an
266 ! X error. If we didn't force the default colormap to be installed, the
267 ! colors would be all wrong. "default-i" may also be used as a visual name
268 ! (meaning, "-visual default -install") but you probably won't ever need
271 ! XEarth is nice, too:
273 ! default-n: xearth -nostars -wait 0 -timewarp 400 -pos sunrel/38/-30
276 ! Some of the GL demos that SGI ships work with XScreenSaver; most don't.
277 ! XScreenSaver includes a program (not built or installed by default)
278 ! called "xscreensaver-sgigl". To use the SGI demos with XScreenSaver,
279 ! build that program, and use it to launch the SGI demos. For example,
280 ! on Irix 6.2, you can do this:
282 ! xscreensaver-sgigl /usr/demos/bin/ep -S
283 ! xscreensaver-sgigl /usr/demos/bin/bongo
285 ! On Irix 6.3, things have moved, so you need to do it like this:
287 ! xscreensaver-sgigl /usr/sbin/ep -S
289 ! You can also use the "ant" demo, but first you need to wrap a shell script
290 ! around it that cds to its home directory, so that it can find its files;
291 ! and also pass it the -S argument, to prevent it from forking.
294 ! Also, since these actually end up mapping their own windows instead of
295 ! drawing on the XScreenSaver-provided root, when they are being run from
296 ! demo-mode, you can't pop up the demo-mode dialog just by clicking the
297 ! mouse: you must first type ESC to make the SGI programs exit. This sucks.
298 ! Things should work properly when they are being run by xscreensaver in
299 ! non-demo-mode, however.
301 ! Basically, the SGI demo writers went out of their way to make my life hell.
305 !=============================================================================
307 ! You probably don't want to change anything after this point.
309 !=============================================================================
312 XScreenSaver.pointerPollTime: 5
313 XScreenSaver.initialDelay: 0
314 XScreenSaver.windowCreationTimeout: 30
315 XScreenSaver.bourneShell: /bin/sh
318 ! Resources for the password and splash-screen dialog boxes of
319 ! the "xscreensaver" daemon.
321 *Dialog.headingFont: *-times-bold-r-*-*-*-180-*-*-*-iso8859-1
322 *Dialog.bodyFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
323 *Dialog.labelFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
324 *Dialog.buttonFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
325 *Dialog.foreground: #000000
326 *Dialog.background: #BFBFBF
327 *Dialog.Button.foreground: #000000
328 *Dialog.Button.background: #D0D0D0
329 *Dialog.text.foreground: #000000
330 *Dialog.text.background: #FFFFFF
331 *Dialog.logo.foreground: #FF0000
332 *Dialog.logo.background: #FFFFFF
333 *Dialog.topShadowColor: #E7E7E7
334 *Dialog.bottomShadowColor: #737373
335 *Dialog.logo.width: 200
336 *Dialog.logo.height: 200
337 *Dialog.internalBorderWidth: 30
338 *Dialog.borderWidth: 1
339 *Dialog.shadowThickness: 4
341 *passwd.heading.label: XScreenSaver %s
342 *passwd.body.label: This display is locked.
343 *passwd.user.label: User:
344 *passwd.passwd.label: Password:
345 *passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1
346 *passwd.thermometer.width: 8
348 *splash.heading.label: XScreenSaver %s
349 *splash.body.label: Copyright © 1991-1999 by
350 *splash.body2.label: Jamie Zawinski <jwz@jwz.org>
351 *splash.demo.label: Demo
352 *splash.prefs.label: Prefs
353 *splash.help.label: Help
356 ! Resources for the Motif dialog boxes of the "xscreensaver-demo" program.
358 *fontList: *-helvetica-medium-r-*-*-*-120-*-*-*-iso8859-1
359 *demoDialog*label1.fontList: *-helvetica-medium-r-*-*-*-140-*-*-*-iso8859-1
360 *XmTextField.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
361 *label0.fontList: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
362 XScreenSaver*XmList.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
363 ! Need to fully-qualify the preceeding in the case of of *sgiMode.
365 *XmDialogShell*foreground: #000000
366 *XmDialogShell*background: #E5E5E5
367 *XmDialogShell*XmTextField.foreground: #000000
368 *XmDialogShell*XmTextField.background: #FFFFFF
369 *XmDialogShell*demoList.foreground: #000000
370 *XmDialogShell*demoList.background: #FFFFFF
372 *XmDialogShell.title: XScreenSaver
373 *versionWarning_popup.title: XScreenSaver Warning
374 *demoForm_popup.title: XScreenSaver Demo
375 *preferencesForm_popup.title: XScreenSaver Preferences
376 *allowShellResize: True
379 ! This doesn't work. Motif ignores it if there is a scroll-list!
380 *demoDialog.maxWidth: 600
382 *label1.labelString: XScreenSaver %s
383 *label1.label: XScreenSaver %s
384 *label2.labelString: Copyright © 1991-1999 by Jamie Zawinski <jwz@jwz.org>
385 *label2.label: Copyright © 1991-1999 by Jamie Zawinski <jwz@jwz.org>
386 *demoList.visibleItemCount: 10
387 *demoList.automaticSelection: True
388 *next.labelString: Run Next
389 *prev.labelString: Run Previous
390 *edit.labelString: Preferences
391 *restart.labelString: Reinitialize
392 *done.labelString: Quit
394 *preferencesLabel.labelString: XScreenSaver Parameters
396 *timeoutLabel.labelString: Saver Timeout
397 *cycleLabel.labelString: Cycle Timeout
398 *fadeSecondsLabel.labelString: Fade Duration
399 *fadeTicksLabel.labelString: Fade Ticks
400 *lockLabel.labelString: Lock Timeout
401 *passwdLabel.labelString: Password Timeout
402 *preferencesForm*XmTextField.columns: 8
404 *verboseToggle.labelString: Verbose
405 *cmapToggle.labelString: Install Colormap
406 *fadeToggle.labelString: Fade Colormap
407 *unfadeToggle.labelString: Unfade Colormap
408 *lockToggle.labelString: Require Password
409 *preferencesDone.labelString: OK
410 *preferencesCancel.labelString: Cancel
413 ! Disable Motif drag-and-drop in dialog boxes. This is kind of pathetic, but
414 ! in some older versions of Motif, most any attempt to drag cause immediate
415 ! flaming death from above. This *should* rip the legs off that bug.
416 ! (But sadly, Lesstif 0.86 and earlier ignore these resources *and* have
417 ! buggy drag-and-drop.)
419 XScreenSaver*dragInitiatorProtocolStyle: DRAG_NONE
420 XScreenSaver*dragReceiverProtocolStyle: DRAG_NONE
424 ! Resources for the Athena dialog boxes of the "xscreensaver-demo" program.
426 *demo_dialog.title: XScreenSaver Demo
427 *preferences_dialog.title: XScreenSaver Preferences
428 *warning_dialog.title: XScreenSaver Warning
430 ! For some reason, it doesn't size correctly by itself.
431 *demo_dialog.geometry: =640x400
433 *demo_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
434 *preferences_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
435 *demo_dialog*label1.font: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
436 *preferences_dialog*label1.font:*-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
437 XScreenSaver*warning_dialog*label0.font: \
438 *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
439 XScreenSaver*warning_dialog*Label.font: \
440 *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
441 XScreenSaver*warning_dialog*Command.font: \
442 *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
443 XScreenSaver.demo_dialog*List.font: \
444 *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
445 XScreenSaver.demo_dialog*Text*font: \
446 *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
448 XScreenSaver.demo_dialog*foreground: #000000
449 XScreenSaver.demo_dialog*background: #E5E5E5
450 XScreenSaver.demo_dialog*List.background: #FFFFFF
451 XScreenSaver.demo_dialog*Scrollbar.background: #D9D9D9
452 XScreenSaver.demo_dialog*Command.background: #D9D9D9
453 XScreenSaver.demo_dialog*Text*background: #FFFFFF
455 XScreenSaver.preferences_dialog*foreground: #000000
456 XScreenSaver.preferences_dialog*background: #E5E5E5
457 XScreenSaver.preferences_dialog*Command.background: #D9D9D9
458 XScreenSaver.preferences_dialog*Toggle.background: #D9D9D9
459 XScreenSaver.preferences_dialog*Text*background: #FFFFFF
461 XScreenSaver.warning_dialog*foreground: #000000
462 XScreenSaver.warning_dialog*background: #E5E5E5
463 XScreenSaver.warning_dialog*Command.background: #D9D9D9
465 *preferences_dialog*Dialog.value.translations: #override\n\
466 <Key>Return: beginning-of-line()\n
468 *demo_dialog*viewport.height: 200
471 *Label.borderWidth: 0
472 *preferences_dialog*Dialog.borderWidth: 0
474 *demo_dialog*next.label: Run Next
475 *demo_dialog*prev.label: Run Previous
476 *demo_dialog*edit.label: Preferences
477 *demo_dialog*restart.label: Reinitialize
478 *demo_dialog*done.label: Quit
479 XScreenSaver.demo_dialog*Command.internalWidth: 10
480 XScreenSaver.demo_dialog*Command.internalHeight: 4
482 *preferences_dialog*timeout.label: Saver Timeout:
483 *preferences_dialog*cycle.label: Cycle Timeout:
484 *preferences_dialog*fade.label: Fade Duration:
485 *preferences_dialog*ticks.label: Fade Ticks:
486 *preferences_dialog*lockTime.label: Lock Timeout:
487 *preferences_dialog*passwdTime.label: Password Timeout:
488 XScreenSaver.preferences_dialog*Command.internalWidth: 10
489 XScreenSaver.preferences_dialog*Command.internalHeight: 4
491 *preferences_dialog*label1.label: XScreenSaver Parameters
492 *preferences_dialog*buttonbox.verbose.label: Verbose
493 *preferences_dialog*buttonbox.cmap.label: Install Colormap
494 *preferences_dialog*buttonbox.fade.label: Fade Colormap
495 *preferences_dialog*buttonbox.unfade.label: Unfade Colormap
496 *preferences_dialog*buttonbox.lock.label: Require Password
497 *preferences_dialog*done.label: Ok
498 *preferences_dialog*cancel.label: Cancel
500 *warning_dialog*ok.label: Ok
502 *warning_dialog*horizDistance: 30
503 *warning_dialog*vertDistance: 0
505 *warning_dialog*Label.internalWidth: 1
506 *warning_dialog*Label.internalHeight: 0
508 *warning_dialog*label0.horizDistance: 80
509 *warning_dialog*label0.vertDistance: 20
511 *warning_dialog*Command.horizDistance: 160
512 *warning_dialog*Command.vertDistance: 20
513 *warning_dialog*Command.internalWidth: 20
514 *warning_dialog*Command.internalHeight: 5