http://ftp.ksu.edu.tw/FTP/FreeBSD/distfiles/xscreensaver-4.20.tar.gz
[xscreensaver] / hacks / webcollage.man
1 .de EX          \"Begin example
2 .ne 5
3 .if n .sp 1
4 .if t .sp .5
5 .nf
6 .in +.5i
7 ..
8 .de EE
9 .fi
10 .in -.5i
11 .if n .sp 1
12 .if t .sp .5
13 ..
14 .TH XScreenSaver 1 "17-Jun-99" "X Version 11"
15 .SH NAME
16 webcollage - decorate the screen with random images from the web
17 .SH SYNOPSIS
18 .B webcollage
19 [\-display \fIhost:display.screen\fP]
20 [\-root]
21 [\-window\-id \fIid\fP]
22 [\-verbose]
23 [\-timeout \fIsecs\fP]
24 [\-delay \fIsecs\fP]
25 [\-background \fIbg\fP]
26 [\-no-output]
27 [\-urls-only]
28 [\-imagemap \fIfilename-base\fP]
29 [\-size \fIWxH\fP]
30 [\-opacity \fIratio\fP]
31 [\-filter \fIcommand\fP]
32 [\-filter2 \fIcommand\fP]
33 [\-http\-proxy host[:port]]
34 [\-dictionary \fIdictionary-file\fP]
35 [\-driftnet [\fIcmd\fP]]
36 .SH DESCRIPTION
37 The \fIwebcollage\fP program pulls random image off of the World Wide Web
38 and scatters them on the root window.  One satisfied customer described it
39 as "a nonstop pop culture brainbath."  This program finds its images by
40 doing random web searches, and extracting images from the returned pages.
41
42 \fIwebcollage\fP is written in
43 .BR perl (1)
44 and requires Perl 5.
45
46 It will be an order of magnitude faster if you also have
47 the \fIwebcollage-helper\fP program installed (a GDK/JPEG image
48 compositor), but \fIwebcollage\fP works without it as well.
49
50 \fIwebcollage\fP can be used in conjunction with the
51 .BR driftnet (1)
52 program (the Unix equivalent of EtherPEG) to snoop images from traffic
53 on your local subnet, instead of getting images from search engines.
54 .SH OPTIONS
55 .I webcollage
56 accepts the following options:
57 .TP 8
58 .B \-root
59 Draw on the root window.  This option is manditory, if output is being
60 produced: drawing to a window other than the root window is not yet
61 supported.
62
63 Images are placed on the root window by using one of the
64 .BR xscreensaver-getimage (1),
65 .BR chbg (1),
66 .BR xv (1),
67 .BR xli (1),
68 or
69 .BR xloadimage (1)
70 programs (whichever is available.)
71 .TP 8
72 .B \-window\-id \fIid\fP
73 Draw to the indicated window instead; this only works if the
74 .BR xscreensaver-getimage (1)
75 program is installed.
76 .TP 8
77 .B \-verbose \fRor\fP \-v
78 Print diagnostics to stderr.  Multiple \fI-v\fP switches increase the
79 amount of output.  \fI-v\fP will print out the URLs of the images,
80 and where they were placed; \fI-vv\fP will print out any warnings,
81 and all URLs being loaded; \fI-vvv\fP will print information on
82 what URLs were rejected; and so on.
83 .TP 8
84 .B \-timeout \fIseconds\fP
85 How long to wait for a URL to complete before giving up on it and
86 moving on to the next one.
87 Default 30 seconds.
88 .TP 8
89 .B \-delay \fIseconds\fP
90 How long to sleep between images.  Default 2 seconds.  (Remember that
91 this program probably spends a lot of time waiting for the network.)
92 .TP 8
93 .B \-background \fIcolor-or-ppm\fP
94 What to use for the background onto which images are pasted.  This may be
95 a color name, a hexadecimal RGB specification in the form '#rrggbb', or 
96 the name of a PPM file.
97 .TP 8
98 .B \-size \fIWxH\fP
99 Normally, the output image will be made to be the size of the
100 screen (or target window.)  This lets you specify the desired size.
101 .TP 8
102 .B \-opacity \fIratio\fP
103 How transparently to paste the images together, with 0.0 meaning
104 "completely transparent" and 1.0 meaning "opaque."  Default 0.85.
105 A value of around 0.3 will produce an interestingly blurry image
106 after a while.
107 .TP 8
108 .B \-no-output
109 If this option is specified, then no composite output image will be
110 generated.  This is only useful when used in conjunction 
111 with \fB\-verbose\fP.
112 .TP 8
113 .B \-urls-only
114 If this option is specified, then no composite output image will be
115 generated: instead, a list of image URLs will be printed on stdout.
116 .TP 8
117 .B \-imagemap \fIfilename-base\fP
118 If this option is specified, then instead of writing an image to the
119 root window, two files will be created: "\fIbase\fP.html" and "\fIbase\fP.jpg".
120 The JPEG will be the collage; the HTML file will include that image, and
121 an image-map making the sub-images be linked to the pages on which they
122 were found (just like \fIhttp://www.jwz.org/webcollage/\fP.)
123 .TP 8
124 .B \-filter \fIcommand\fP
125 Filter all source images through this command.  The command must take
126 a PPM file on stdin, and write a new PPM file to stdout.  One good 
127 choice for a filter would be:
128 .EX
129 webcollage -root -filter 'vidwhacker -stdin -stdout'
130 .EE
131 .TP 8
132 .B \-filter2 \fIcommand\fP
133 Filter the \fIcomposite\fP image through this command.  The \fI-filter\fP
134 option applies to the sub-images; the \fI-filter2\fP applies to the
135 final, full-screen image.
136 .TP 8
137 .B \-http\-proxy \fIhost:port\fP
138 If you must go through a proxy to connect to the web, you can specify it 
139 with this option, or with the \fB$http_proxy\fP or \fB$HTTP_PROXY\fP 
140 environment variables.
141 .TP 8
142 .B \-dictionary \fIfile\fP
143 Webcollage normally looks at the system's default spell-check dictionary
144 to generate words to feed into the search engines.  You can specify an
145 alternate dictionary with this option.
146
147 Note that by default, webcollage searches for images using several
148 different methods, not all of which involve dictionary words, so
149 using a "topical" dictionary file will not, in itself, be as effective
150 as you might be hoping.
151 .TP 8
152 .B \-driftnet \fI[ args ]\fP
153 .BR driftnet (1)
154 is a program that snoops your local ethernet for packets that look
155 like they might be image files.  It can be used in conjunction 
156 with \fIwebcollage\fP to generate a collage of what other people on
157 your network are looking at, instead of a search-engine collage.
158 If you have \fIdriftnet\fP installed on your $PATH, just use 
159 the \fI\-driftnet\fP option.  You can also specify the location
160 of the program like this:
161 .EX
162 -driftnet /path/to/driftnet
163 .EE
164 or, you can provide extra arguments like this:
165 .EX
166 -driftnet '/path/to/driftnet -extra -args'
167 .EE
168 Driftnet version 0.1.5 or later is required.  Note that 
169 the \fIdriftnet\fP program requires root access, so you'll have
170 to make \fIdriftnet\fP be setuid-root for this to work.
171 Please exercise caution.
172 .SH ENVIRONMENT
173 .PP
174 .TP 8
175 .B DISPLAY
176 to get the default host and display number.
177 .TP 8
178 .B XENVIRONMENT
179 to get the name of a resource file that overrides the global resources
180 stored in the RESOURCE_MANAGER property.
181 .TP 8
182 .B http_proxy\fR or \fPHTTP_PROXY
183 to get the default HTTP proxy host and port.
184 .SH FILES AND URLS
185 .I /usr/dict/words,
186 .I /usr/share/lib/dict/words,\fP
187 or
188 .I /usr/share/dict/words
189 to find the random words to feed to certain search engines.
190
191     \fIhttp://www.altavista.com/image/randomlink\fP,
192     \fIhttp://random.yahoo.com/fast/ryl\fP,
193     \fIhttp://www.livejournal.com/stats/latest-img.bml\fP, and
194     \fIhttp://www.google.com/\fP
195 to find random web pages.
196 .SH BOOBIES
197 The Internet being what it is, absolutely anything might show up in the
198 collage including -- quite possibly -- pornography, or even nudity.
199 .SH BUGS
200 Animating GIFs are not supported: only the first frame will be used.
201 .SH UPGRADES
202 The latest version of webcollage can be found as a part of
203 xscreensaver, at 
204 .B http://www.jwz.org/xscreensaver/,
205 or on the WebCollage page at 
206 .B http://www.jwz.org/webcollage/.
207
208 DriftNet:
209 .B http://www.ex-parrot.com/~chris/driftnet/
210 .SH SEE ALSO
211 .BR X (1),
212 .BR xscreensaver (1),
213 .BR xli (1),
214 .BR xv (1),
215 .BR xloadimage (1),
216 .BR ppmmake (1),
217 .BR giftopnm (1),
218 .BR pnmpaste (1),
219 .BR pnmscale (1),
220 .BR djpeg (1),
221 .BR cjpeg (1),
222 .BR xdpyinfo (1),
223 .BR perl (1),
224 .BR vidwhacker (1),
225 .BR dadadodo (1),
226 .BR driftnet (1)
227 .BR EtherPEG ,
228 .BR EtherPeek
229 .SH COPYRIGHT
230 Copyright \(co 1998-2005 by Jamie Zawinski.  Permission to use, copy, modify,
231 distribute, and sell this software and its documentation for any purpose is
232 hereby granted without fee, provided that the above copyright notice appear
233 in all copies and that both that copyright notice and this permission notice
234 appear in supporting documentation.  No representations are made about the
235 suitability of this software for any purpose.  It is provided "as is" without
236 express or implied warranty.
237 .SH AUTHOR
238 Jamie Zawinski <jwz@jwz.org>, 24-May-1998.