2 Description : a enhanced Window Maker email flagging docklet
4 Last updated : SEP 30 2002
5 Licence : see file COPYING for licencing details
6 Web/Home : www.informatik.uni-jena.de/~topical/sveng/wmail.html
7 Author : (c) 2000~2002 Sven Geisenhainer
8 Contact : sveng@informatik.uni-jena.de
13 - Autoconf based package configuration support added.
14 - Support for real X11 fonts when drawing the ticker.
15 Use the new option "-fn X11_FONT_NAME" or ~/.wmailrc-file statement
16 "Ticker.X11Font = X11_FONT_NAME" to enable it. If you wish to see latin1
17 characters not covered by the buildin font you MUST make use of this.
18 - Removed support of two buildin fonts (one seems enough when native
19 X11 font rendering is supported...) -> cmdline option "-bf" and
20 rcfile statement "Ticker.BoldFont" are no longer available
21 - added a window name when called with the -w option (libdockapp windowing
22 mode), this workarounds a dockapp library bug and makes wmail work docked
24 - Fixed some reconfiguration memleaks
25 - Fixed button-keeps-up-when-pressed-and-empty-inbox bug
26 - Fixed Maildir file-parsing bug
27 - Fixed wmail-crash on dual-headed displays (Thanx to Michael Hocke!)
28 - Changed upper M@il symbol a bit ;-)
31 - Comment support added (by Juergen A. Erhard - thank you!)
32 - Status field content recognition enhanced: now you can supply the
33 content of the status field that markes you email as read. This is due
34 to different behaviour of different mbox readers - pine seems using "ro"
35 to mark a mail as read. The given value is substring-matched.
38 - Support for qmails Maildir format added: if you specify a directory
39 as your inbox then wmail assumes 'Maildir' functionality,
40 searches for the subdirectories "new" and "cur" and interprets all
41 files found directly under these directories as text-files containing
42 one single email message. When in Maildir-mode, checksums and the
43 file ~/.wmail-cksums are not used.
44 - Combining of equal sender-names before tickering them is not done
45 anymore - this hasn't worked if for example wmail shows only unread
46 emails and there are two emails from the same sender and one of them
47 is read, the other isn't.
50 - Now redrawing is done only if there are some changes to be drawn
51 (previous versions had redrawn the screen fps-times per sec. even if
52 the inbox was empty...)
55 - File parsing bug fixed: searching for "From"-directive is now
59 - Support for mail-header-field "Status" added: if this field
60 is set to "RO" the mail is assumed to be read. Turn this feature on
61 either by adding "Mail.UseStatusField = Yes" to your ~/.wmailrc-file
62 or using the new cmd-line option "-sf"
65 - Minor changes: signal-handling stuff reimplemented
66 - Included another set of xpms (thanx to delt!); to use it,
67 change the #includes in wmail.c to point to the xpm_delt dir
70 - Sender-skipping added: use this by adding some
71 "Mail.SkipSender = XYZ" to your ~/.wmailrc file. Note that you can
72 use the known wildcards here (i.e. "Mail.SkipSender = *Foo*" matches
73 all names containing "Foo")
74 - Support for execution of a custom command when receiving a new mail
75 added: either use the new option "-e" or a
76 "Mail.OnNew.Command = some-cmd" in the rc-file (for example this
77 makes it possible to play some sound file using the command
78 "/usr/bin/play some-sound.wav")
81 - Config-file support (~/.wmailrc), re-configuration of most options
82 during run-time is possible - a click on the docklets main-area
83 forces wmail to read its config-file. Note that this can also be
84 used to do a mailbox update...
85 - Bolder tickerfont added -> new option "-bf"
86 - Polling bug fixed (wmail has queried for new mail fps-times per
88 - Mailbox made configurable via cmdline -> new cmd-option "-mb"
89 - Color of inactive (off-switched) symbols made customizable -> new
93 - Minor fixes, debugging-aid macro TRACE made more portable
96 - Made mails identifiable by a checksum to (hopefully) fix some
97 wrong behaviour of the recent-mails-only feature introduced with
98 v1.3 - this is also used to make wmail able to keep the current state
99 in mind, even after a restart. These checksums are written to the
100 file ".wmail-cksums" in the users home directory
103 - wmail is now able to show only recent mails in ticker and counter
104 (such ones you don't have read/opened yet since startup of wmail)
105 this is quite nice if you use your mail-file as an inbox storing
106 loads of mails there -> new cmd-option "-n"
107 - Solaris port got working (signal-handler bug fixed)
108 - Image of run-client-button changed
111 - Message counter now displays up to 3 digits
112 - Made ticker scroll-refresh customizable (30 fps by default)
113 -> new cmd-option "-fps"
116 - Parsing of from-header fixed/improved
117 - Added windowed mode support (only works with libdockapp v >0.4.0) and
118 support for a non-shaped window -> new cmd-options "-w" and "-ns"
119 - Made background color customizable (useful in windowed mode)
120 -> new cmd-option "-bg"
121 - Ticker either fullname, short-address-name or total-address
122 -> new cmd-option "-s"
123 - Changed pixmaps a bit
130 This is wmail - a nifty Window Maker docklet watching your inbox, which is
131 either a ordinary mbox or a directory conforming to qmails Maildir format.
132 It provides a nice little GUI displaying some useful pieces of information
133 about your inbox (as many other nice wm-apps doing nearly the same thing...).
134 Per default it uses the $MAIL environment-variable to locate the inbox you
135 are using, other mailing mechanisms like POP or IMAP are not supported - use
136 a tool like fetchmail to retrieve POP- or IMAP-based mail.
138 It displays the following:
140 - a mail-icon in the upper-left if your inbox contains some mails
141 - a frequently flashing "M@iL" in the upper-right if there are unread mails
142 - a ticker displaying either complete mail-address, it's name-part or the
143 full sender's name (without the "-n" option each sender found in the inbox
144 is tickered, else only the unread ones)
145 - the number of new and read emails found (or the number of unread messages
146 if invoked with the "-n" option)
148 In addition, the lower-right button allowes you to quickly launch your
149 preferred email user agent (xterm -e mail, mutt, pine, etc.)
151 wmail is highly customizable, both command-line and configuration-file support
152 is provided. The following list describes all customizable items,
153 their associated cmd-line options, config-file statements and default values:
156 cmd-line option : -display <string>
157 rc-file statement: Window.Display = "<string>"
158 default value : <unset>
160 item : toggle nonshaped mode
161 cmd-line option : -ns
162 rc-file statement: Window.NonShaped = Yes|No
165 item : button command to execute
166 cmd-line option : -c <string>
167 rc-file statement: Window.Button.Command = "<string>"
168 default value : "xterm -e mail"
170 item : your mailbox (file => mbox, directory => Maildir)
171 cmd-line option : -mb <string>
172 rc-file statement: Mail.MailBox = "<string>"
173 default value : <unset, $MAIL is used>
175 item : file to store the checksums used to identify mbox mails
176 cmd-line option : <no option>
177 rc-file statement: Mail.ChecksumFile = "<string>"
178 default value : "~/.wmail-cksums"
180 item : ticker (and count) only unread mails
182 rc-file statement: Mail.ShowOnlyNew = Yes|No
185 item : mail check intervall (sec)
186 cmd-line option : -i <num>
187 rc-file statement: Mail.CheckIntervall = <num>
190 item : consider status-field (not used when in maildir mode)
191 cmd-line option : -sf
192 rc-file statement: Mail.UseStatusField = Yes|No
195 item : custom status field content used for read mails
196 cmd-line option : -rs
197 rc-file statement: Mail.ReadStatus = "<string>"
200 item : show nick names in the ticker (all before the @)
202 rc-file statement: Ticker.Mode = NickName
203 default value : Address
205 item : show family names in the ticker (if available)
207 rc-file statement: Ticker.Mode = FamilyName
208 default value : Address
210 item : how many ticker frames per sec
211 cmd-line option : -fps <num>
212 rc-file statement: Ticker.Frames = <num>
215 item : use a real X11 font when drawing the ticker
216 cmd-line option : -fn <string>
217 rc-file statement: Ticker.X11Font = "<string>"
218 default value : <unset, a buildin font is used>
220 item : command to execute when new mail has arrived
221 cmd-line option : -e <string>
222 rc-file statement: Mail.OnNew.Command = "<string>"
223 default value : <unset>
225 item : sender-names to skip (don't ticker and count them)
226 cmd-line option : <no option>
227 rc-file statement: Mail.SkipSender = "<string>"
228 default value : <unset>
230 item : color for upper symbols (envelope and MAiL)
231 cmd-line option : -sc <string>
232 rc-file statement: Colors.Symbols = "<string>"
233 default value : "#20B2AA"
235 item : ticker font color
236 cmd-line option : -fc <string>
237 rc-file statement: Colors.Font = "<string>"
238 default value : "#D3D3D3"
240 item : backlight color (dockapp background)
241 cmd-line option : -bc <string>
242 rc-file statement: Colors.Backlight = "<string>"
243 default value : "#282828"
245 item : color of inactive symbols
246 cmd-line option : -oc <string>
247 rc-file statement: Colors.OffLight = "<string>"
248 default value : "#282828"
250 item : outer frame color (used in nonshaped window mode)
251 cmd-line option : -bg <color>
252 rc-file statement: Colors.NonShapedFrame = "<string>"
253 default value : <unset, this color is translucent>
255 libdockapp provides the following additional cmd-line options:
259 show help and exit : -h
261 show version and exit: -v
265 - Solaris: sometimes wmail gets terminated by Xlib displaying the message:
266 XIO: fatal IO error 0 (Error 0) on X server ":0.0"
267 after XXX requests (YYY known processed) with 0 events remaining.
268 I do not have any ideas on how to fix this ... :-( --> PLEASE HELP!!!
269 - "From" header field folding (see RFC822) is not supported
270 - Reconfiguration during run-time results in a complete state-lost -> all
271 email in your mbox is assumed to be unread again
273 Please keep in mind this code is free and comes with absolutly no warranty
274 (see file COPYING included in the package) - but if you think something goes
275 wrong, please let me know!
277 What is still missing (and when it will be done :)
279 - Pop3/Imap support (never - use fetchmail)
280 - Character encoding in ticker - at least latin1 (currently in progress)
281 - Multiple mailslots (never)
282 - Displaying/tickering of other email header fields (hmm, i don't know...)
283 - Your needs/ideas...?
287 This application needs a running X window system and libdockapp v0.2 or newer
288 (0.4.0 required for windowed-mode), that for itself has some requirements
289 (Xpm support for example). libdockapp comes with Window Maker - if not sure,
290 see what the configure-script says when running it.
294 Simply follow these steps:
295 1. Call "./configure", try "./configure --help" for a list of options.
296 2. Call "make" to build the binary (or gmake if make is't GNU make compliant)
298 If compiling does not succeed due to missed header files or libraries
299 you have to make use of configures `--includedir=DIR' and/or `--libdir=DIR'
300 cmdline options in order to specify paths to those files.
304 This code (without using the new Maildir code and autoconf package setup)
305 is known to work under:
306 - Linux >=2.4.10 on x86
307 - Osf 3.2 on Dec/Alpha
308 - Sun Solaris 4.0 on Sparc Station 4 and 10
309 - Sun Solaris 6, 7 and 8 (thanx to Kristian Borum!)
310 - SunOs 5.7 on Ultra Sparc 5 (thanx to Alessandro!)
312 ...together with Window Maker v0.60.0 or better (or standalone of course) and
315 Please let me know if you have ported this to a platform not listed
316 above to mention it (and your name of cource ;). Some users had
317 trouble porting wmail to Solaris because the original timer signal handling
318 has not worked properly. This was caused by different semantics of libc's
319 signal function and should got fixed since releases >= v1.3.
323 Call "make install" or copy the binary found in the src subdirectory by hand.
325 Keep in mind, libdockapp must be installed properly (i.e. let reside it in
326 your X11 base library directory or let $LD_LIBRARY_PATH point to the lib).
327 If you would like to use rc-based configuration, look into the provided
328 sample-file "wmailrc-sample" and use it as a base for your particular needs
329 by copying it to ~/.wmailrc. Note: the name of this rc-file is hard-wired and
330 cannot be customized.
334 Try wmail -h to see a list of all available options.
338 www.informatik.uni-jena.de/~topical/sveng/wmail.html
340 Author and maintainer:
342 Sven Geisenhainer <sveng@informatik.uni-jena.de>
344 There is also a Debian package available under "http://jerhard.org/files/"
345 maintained by Juergen A. Erhard <juergen.erhard@gmx.net> - Thank you, Juergen!
349 Thanx to Thomas Kurschel for his suggestions and coding assistance.
350 Thanx to Juergen A. Erhard for his codings and Debian packaging efforts.
351 Thanx to many users on the web for their ideas, test- and bug reports.
353 And many great thanx to all the GNUstep and Window Maker people who've
354 provided us with such a great user environment!