! ! XScreenSaver ! ! a screen saver and locker for the X window system ! by Jamie Zawinski ! ! version 3.18 ! 13-Oct-99 ! ! See "man xscreensaver" for more info. The latest version is always ! available at http://www.jwz.org/xscreensaver/ ! These resources, when placed in the system-wide app-defaults directory ! (e.g., /usr/lib/X11/app-defaults/XScreenSaver) will provide the default ! settings for new users. However, if you have a ".xscreensaver" file in ! your home directory, the settings in that file take precedence. *timeout: 10 *cycle: 10 *lockTimeout: 0 *passwdTimeout: 30 *nice: 10 *lock: False *lockVTs: True *verbose: False *timestamp: False *fade: True *unfade: False *fadeSeconds: 3 *fadeTicks: 20 *splash: True *splashDuration: 5 *visualID: default *captureStderr: True *overlayTextForeground: #FFFF00 *overlayTextBackground: #000000 *overlayStderr: True *font: *-medium-r-*-140-*-m-* ! The default is to use these extensions if available (as noted.) *sgiSaverExtension: True *mitSaverExtension: False *xidleExtension: True *procInterrupts: True ! This is what the "Demo" button on the splash screen runs (/bin/sh syntax.) *demoCommand: xscreensaver-demo ! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.) *prefsCommand: xscreensaver-demo -prefs ! This is the URL that the "Help" button on the splash screen loads. *helpURL: http://www.jwz.org/xscreensaver/man.html ! This is how the "Help" button loads URLs (/bin/sh syntax.) ! The "helpURL" will be substituted for up to two occurrences of "%s". *loadURL: netscape -remote 'openURL(%s)' || netscape '%s' ! The format used for printing the date and time in the password dialog box ! (see the strftime(3) manual page for details.) *dateFormat: %d-%b-%y (%a); %I:%M %p ! To show the time only: ! *dateFormat: %I:%M %p ! For 24 hour time: ! *dateFormat: %H:%M ! Turning on "installColormap" interacts erratically with twm and tvtwm, ! but seems to work fine with mwm and olwm. Try it and see. If your ! screen turns some color other than black, the window manager is buggy, ! and you need to set this resource to False (or get a WM that works.) ! *installColormap: True ! Any program which can draw on the root window will work as a screensaver. ! The following resource enumerates them. ! ! Programs are separated by newlines (specified in resource files with \n). ! Lines may be continued with a lone \ at the end of the line. ! ! Each line is an `sh' command. ! ! If the first (non-blank) character on the line is "-", then that means ! that this command is disabled: it's still in the list, but it won't ever ! be used. (This is just to make it easy to disable and then re-enable ! them later.) ! ! If the first word on the line is the name of a visual followed by a ! colon, then that visual will be used for the program, if it is available. ! If no such visual is available, then the program will be skipped. In ! this way, you can specify that you want certain programs to run only ! on color screens, and others only on mono screens, by making use of the ! magic visual names "color" and "mono". Likewise, if some hacks prefer ! colormaps, but others prefer 24-bit windows, that also can be arranged ! (in this case, by using "PseudoColor:" versus "TrueColor:".) ! ! Some of the screenhacks are written using OpenGL. OpenGL programs are ! a bit different than normal X programs, in that they prefer visuals that ! are *half* as deep as the screen. You can tell xscreensaver to select a ! good visual for a GL program by using the magic visual name "GL". ! ! All programs must be launched in such a way that they draw on the root ! window; they should not be spawned in the background with "&". If shell ! metacharacters are used, they must be understandable to `sh', not `csh' ! (the $SHELL variable is not consulted, for unfortunate but good reasons.) ! ! Be sure to check out Demo Mode: run the `xscreensaver-demo' program to ! edit the current list of programs interactively, try out the various modes, ! and change other parameters. See the man page for details. ! *programs: qix -root -solid -delay 0 -segments 100 \n\ qix -root -count 4 -solid -transparent \n\ qix -root -count 5 -solid -transparent -linear \ -segments 250 -size 100 \n\ attraction -root -mode balls \n\ attraction -root -mode lines -points 3 -segments 200 \n\ attraction -root -mode splines -segments 300 \n\ attraction -root -mode lines -radius 300 \ -orbit -vmult 0.5 \n\ pyro -root \n\ helix -root \n\ pedal -root \n\ rorschach -root -offset 7 \n\ hopalong -root \n\ greynetic -root \n\ xroger -root \n\ imsmap -root \n\ slidescreen -root \n\ decayscreen -root \n\ jigsaw -root \n\ blitspin -root -grab \n\ slip -root \n\ distort -root \n\ spotlight -root \n\ hypercube -root \n\ halo -root \n\ maze -root \n\ noseguy -root \n\ flame -root \n\ lmorph -root \n\ deco -root \n\ moire -root \n\ moire2 -root \n\ lightning -root \n\ strange -root \n\ spiral -root \n\ laser -root \n\ grav -root \n\ grav -root -trail -decay \n\ drift -root \n\ ifs -root \n\ julia -root \n\ penrose -root \n\ sierpinski -root \n\ braid -root \n\ galaxy -root \n\ bouboule -root \n\ swirl -root \n\ flag -root \n\ sphere -root \n\ forest -root \n\ lisa -root \n\ lissie -root \n\ goop -root \n\ starfish -root \n\ starfish -root -blob \n\ munch -root \n\ fadeplot -root \n\ coral -root \n\ mountain -root \n\ triangle -root \n\ worm -root \n\ rotor -root \n\ ant -root \n\ demon -root \n\ loop -root \n\ vines -root \n\ kaleidescope -root \n\ xjack -root \n\ - xlyap -root -randomize \n\ cynosure -root \n\ flow -root \n\ epicycle -root \n\ interference -root \n\ truchet -root -randomize \n\ bsod -root \n\ crystal -root \n\ discrete -root \n\ kumppa -root \n\ rd-bomb -root \n\ rd-bomb -root -speed 1 -size 0.1 \n\ sonar -root \n\ t3d -root \n\ penetrate -root \n\ deluxe -root \n\ compass -root \n\ squiral -root \n\ xflame -root \n\ wander -root \n\ wander -root -advance 0 -size 10 -circles True \ -length 10000 -reset 100000 \n\ critical -root \n\ phosphor -root \n\ xmatrix -root \n\ petri -root -size 1 -count 20 \n\ petri -root -minlifespeed 0.02 -maxlifespeed 0.03 \ -minlifespan 1 -maxlifespan 1 -instantdeathchan 0 \ -minorchan 0 -anychan 0.3 \n\ shadebobs -root \n\ ccurve -root \n\ blaster -root \n\ bumps -root \n\ default-n: webcollage -root \n\ - default-n: webcollage -root -filter 'vidwhacker -stdin -stdout' \n\ - default-n: vidwhacker -root \n\ \ mono: rocks -root \n\ color: rocks -root -fg darksalmon \n\ \ mono: qix -root -linear -count 5 -size 200 -spread 30 \ -segments 75 -solid -xor \n\ \ color: attraction -root -mode polygons \n\ color: attraction -root -mode filled-splines -segments 0 \n\ color: attraction -root -glow -points 10 \n\ color: bubbles -root \n\ \ @GL_KLUDGE@ GL: gears -root \n\ @GL_KLUDGE@ GL: superquadrics -root \n\ @GL_KLUDGE@ GL: morph3d -root \n\ @GL_KLUDGE@ GL: cage -root \n\ @GL_KLUDGE@ GL: moebius -root \n\ @GL_KLUDGE@ GL: stairs -root \n\ @GL_KLUDGE@ GL: pipes -root \n\ @GL_KLUDGE@ GL: sproingies -root \n\ @GL_KLUDGE@ GL: rubik -root \n\ @GL_KLUDGE@ GL: atlantis -root \n\ @GL_KLUDGE@ GL: lament -root \n\ @GL_KLUDGE@ GL: bubble3d -root \n\ @GL_KLUDGE@ GL: glplanet -root \n\ @GL_KLUDGE@ GL: pulsar -root \n\ - GL: pulsar -root -texture -mipmap -texture_quality \ -light -fog \n ! Some other programs that you might want to track down (these work as ! XScreenSaver helpers, but are not distributed with it): ! ! xdaliclock -root -builtin2 \n\ ! xswarm -r 2>&- \n\ ! xwave -root \n\ ! xbouncebits ... \n\ ! ico -r -faces -sleep 1 -obj ico \n\ ! xsplinefun \n\ ! xmountains -b -M \n\ ! color: xfishtank -c black -d -r 2 \n\ ! ! xtacy is ok, but it only works on the default visual. We can satisfy ! that constraint like so: ! ! default: xtacy -root -delay 100 -funky -number 3 \n\ ! default: xtacy -root -delay 100 -gravity \n\ ! default: xtacy -root -delay 100 -mixer \n\ ! default: xtacy -root -delay 100 -taffy -pal 4 \n\ ! ! To display a randomized slideshow of images, you can do something like this: ! ! default-n: xv -root -rmode 5 -random -viewonly -wloop \ ! -wait 30 $HOME/bitmaps/*.jpg \n\ ! ! or, if you prefer "xli" to "xv", like this: (but note that xli's "-delay" ! option doesn't work in conjunction with "-onroot", so you need to add a ! line for each image individually... "xv" is better in this respect.) ! ! default-n: xli -quiet -onroot -center -border black \ ! $HOME/bitmaps/pic1.jpg \n\ ! default-n: xli -quiet -onroot -center -border black \ ! $HOME/bitmaps/pic2.jpg \n\ ! default-n: xli -quiet -onroot -center -border black \ ! $HOME/bitmaps/pic3.jpg \n\ ! ! Note that we've used "default-n" as the visual name, rather than just ! "default": this means "default visual, no install", that is, it's like ! specifying the command-line arguments "-visual default -no-install". ! This is necessary because, when XV or XLI arerunning in "-root" mode, they ! always assume that the default visual and colormap are being used, rather ! than examining the window it is drawing on to see what visual and colormap ! it has. If we didn't force the default visual to be used, we would get an ! X error. If we didn't force the default colormap to be installed, the ! colors would be all wrong. "default-i" may also be used as a visual name ! (meaning, "-visual default -install") but you probably won't ever need ! to use that. ! ! XEarth is nice, too: ! ! default-n: xearth -nostars -wait 0 -timewarp 400 -pos sunrel/38/-30 ! ! ! Some of the GL demos that SGI ships work with XScreenSaver; most don't. ! XScreenSaver includes a program (not built or installed by default) ! called "xscreensaver-sgigl". To use the SGI demos with XScreenSaver, ! build that program, and use it to launch the SGI demos. For example, ! on Irix 6.2, you can do this: ! ! xscreensaver-sgigl /usr/demos/bin/ep -S ! xscreensaver-sgigl /usr/demos/bin/bongo ! ! On Irix 6.3, things have moved, so you need to do it like this: ! ! xscreensaver-sgigl /usr/sbin/ep -S ! ! You can also use the "ant" demo, but first you need to wrap a shell script ! around it that cds to its home directory, so that it can find its files; ! and also pass it the -S argument, to prevent it from forking. ! ! ! Also, since these actually end up mapping their own windows instead of ! drawing on the XScreenSaver-provided root, when they are being run from ! demo-mode, you can't pop up the demo-mode dialog just by clicking the ! mouse: you must first type ESC to make the SGI programs exit. This sucks. ! Things should work properly when they are being run by xscreensaver in ! non-demo-mode, however. ! ! Basically, the SGI demo writers went out of their way to make my life hell. !============================================================================= ! ! You probably don't want to change anything after this point. ! !============================================================================= XScreenSaver.pointerPollTime: 5 XScreenSaver.initialDelay: 0 XScreenSaver.windowCreationTimeout: 30 XScreenSaver.bourneShell: /bin/sh ! Resources for the password and splash-screen dialog boxes of ! the "xscreensaver" daemon. ! *Dialog.headingFont: *-times-bold-r-*-*-*-180-*-*-*-iso8859-1 *Dialog.bodyFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 *Dialog.labelFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 *Dialog.buttonFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 *Dialog.dateFont: *-courier-medium-r-*-*-*-80-*-*-*-iso8859-1 *Dialog.foreground: #000000 *Dialog.background: #BFBFBF *Dialog.Button.foreground: #000000 *Dialog.Button.background: #D0D0D0 *Dialog.text.foreground: #000000 *Dialog.text.background: #FFFFFF *Dialog.logo.foreground: #FF0000 *Dialog.logo.background: #FFFFFF *Dialog.topShadowColor: #E7E7E7 *Dialog.bottomShadowColor: #737373 *Dialog.logo.width: 200 *Dialog.logo.height: 200 *Dialog.internalBorderWidth: 30 *Dialog.borderWidth: 1 *Dialog.shadowThickness: 4 *passwd.heading.label: XScreenSaver %s *passwd.body.label: This display is locked. *passwd.user.label: User: *passwd.passwd.label: Password: *passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1 *passwd.thermometer.width: 8 *splash.heading.label: XScreenSaver %s *splash.body.label: Copyright © 1991-1999 by *splash.body2.label: Jamie Zawinski *splash.demo.label: Demo *splash.prefs.label: Prefs *splash.help.label: Help ! Resources for the Motif dialog boxes of the "xscreensaver-demo" program. ! *fontList: *-helvetica-medium-r-*-*-*-120-*-*-*-iso8859-1 *demoDialog*label1.fontList: *-helvetica-medium-r-*-*-*-140-*-*-*-iso8859-1 *XmTextField.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1 *label0.fontList: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 XScreenSaver*XmList.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1 ! Need to fully-qualify the preceeding in the case of of *sgiMode. *XmDialogShell*foreground: #000000 *XmDialogShell*background: #E5E5E5 *XmDialogShell*XmTextField.foreground: #000000 *XmDialogShell*XmTextField.background: #FFFFFF *XmDialogShell*demoList.foreground: #000000 *XmDialogShell*demoList.background: #FFFFFF *XmDialogShell.title: XScreenSaver *versionWarning_popup.title: XScreenSaver Warning *demoForm_popup.title: XScreenSaver Demo *preferencesForm_popup.title: XScreenSaver Preferences *allowShellResize: True *autoUnmanage: False ! This doesn't work. Motif ignores it if there is a scroll-list! *demoDialog.maxWidth: 600 *label1.labelString: XScreenSaver %s *label1.label: XScreenSaver %s *label2.labelString: Copyright © 1991-1999 by Jamie Zawinski *label2.label: Copyright © 1991-1999 by Jamie Zawinski *demoList.visibleItemCount: 10 *demoList.automaticSelection: True *next.labelString: Run Next *prev.labelString: Run Previous *edit.labelString: Preferences *restart.labelString: Reinitialize *done.labelString: Quit *preferencesLabel.labelString: XScreenSaver Parameters *timeoutLabel.labelString: Saver Timeout *cycleLabel.labelString: Cycle Timeout *fadeSecondsLabel.labelString: Fade Duration *fadeTicksLabel.labelString: Fade Ticks *lockLabel.labelString: Lock Timeout *passwdLabel.labelString: Password Timeout *preferencesForm*XmTextField.columns: 8 *verboseToggle.labelString: Verbose *cmapToggle.labelString: Install Colormap *fadeToggle.labelString: Fade Colormap *unfadeToggle.labelString: Unfade Colormap *lockToggle.labelString: Require Password *preferencesDone.labelString: OK *preferencesCancel.labelString: Cancel ! Disable Motif drag-and-drop in dialog boxes. This is kind of pathetic, but ! in some older versions of Motif, most any attempt to drag cause immediate ! flaming death from above. This *should* rip the legs off that bug. ! (But sadly, Lesstif 0.86 and earlier ignore these resources *and* have ! buggy drag-and-drop.) ! XScreenSaver*dragInitiatorProtocolStyle: DRAG_NONE XScreenSaver*dragReceiverProtocolStyle: DRAG_NONE ! Resources for the Athena dialog boxes of the "xscreensaver-demo" program. ! *demo_dialog.title: XScreenSaver Demo *preferences_dialog.title: XScreenSaver Preferences *warning_dialog.title: XScreenSaver Warning ! For some reason, it doesn't size correctly by itself. *demo_dialog.geometry: =640x400 *demo_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1 *preferences_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1 *demo_dialog*label1.font: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 *preferences_dialog*label1.font:*-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 XScreenSaver*warning_dialog*label0.font: \ *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 XScreenSaver*warning_dialog*Label.font: \ *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1 XScreenSaver*warning_dialog*Command.font: \ *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 XScreenSaver.demo_dialog*List.font: \ *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1 XScreenSaver.demo_dialog*Text*font: \ *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1 XScreenSaver.demo_dialog*foreground: #000000 XScreenSaver.demo_dialog*background: #E5E5E5 XScreenSaver.demo_dialog*List.background: #FFFFFF XScreenSaver.demo_dialog*Scrollbar.background: #D9D9D9 XScreenSaver.demo_dialog*Command.background: #D9D9D9 XScreenSaver.demo_dialog*Text*background: #FFFFFF XScreenSaver.preferences_dialog*foreground: #000000 XScreenSaver.preferences_dialog*background: #E5E5E5 XScreenSaver.preferences_dialog*Command.background: #D9D9D9 XScreenSaver.preferences_dialog*Toggle.background: #D9D9D9 XScreenSaver.preferences_dialog*Text*background: #FFFFFF XScreenSaver.warning_dialog*foreground: #000000 XScreenSaver.warning_dialog*background: #E5E5E5 XScreenSaver.warning_dialog*Command.background: #D9D9D9 *preferences_dialog*Dialog.value.translations: #override\n\ Return: beginning-of-line()\n *demo_dialog*viewport.height: 200 *Form.borderWidth: 0 *Box.borderWidth: 0 *Label.borderWidth: 0 *preferences_dialog*Dialog.borderWidth: 0 *demo_dialog*run.label: Run *demo_dialog*next.label: Run Next *demo_dialog*prev.label: Run Previous *demo_dialog*edit.label: Preferences *demo_dialog*restart.label: Reinitialize *demo_dialog*done.label: Quit XScreenSaver.demo_dialog*Command.internalWidth: 10 XScreenSaver.demo_dialog*Command.internalHeight: 4 *preferences_dialog*timeout.label: Saver Timeout: *preferences_dialog*cycle.label: Cycle Timeout: *preferences_dialog*fade.label: Fade Duration: *preferences_dialog*ticks.label: Fade Ticks: *preferences_dialog*lockTime.label: Lock Timeout: *preferences_dialog*passwdTime.label: Password Timeout: XScreenSaver.preferences_dialog*Command.internalWidth: 10 XScreenSaver.preferences_dialog*Command.internalHeight: 4 *preferences_dialog*label1.label: XScreenSaver Parameters *preferences_dialog*buttonbox.verbose.label: Verbose *preferences_dialog*buttonbox.cmap.label: Install Colormap *preferences_dialog*buttonbox.fade.label: Fade Colormap *preferences_dialog*buttonbox.unfade.label: Unfade Colormap *preferences_dialog*buttonbox.lock.label: Require Password *preferences_dialog*done.label: Ok *preferences_dialog*cancel.label: Cancel *warning_dialog*ok.label: Ok *warning_dialog*horizDistance: 30 *warning_dialog*vertDistance: 0 *warning_dialog*Label.internalWidth: 1 *warning_dialog*Label.internalHeight: 0 *warning_dialog*label0.horizDistance: 80 *warning_dialog*label0.vertDistance: 20 *warning_dialog*Command.horizDistance: 160 *warning_dialog*Command.vertDistance: 20 *warning_dialog*Command.internalWidth: 20 *warning_dialog*Command.internalHeight: 5