wmshutdown: Destroy dialog window before shutting down. This is especially useful...
[dockapps.git] / wmail / README
blobe52b16142d35dfa61a8b7870eb804477a518ec8e
1 Name            : wmail
2 Description     : a enhanced Window Maker email flagging docklet
3 Current version : 2.0
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
10 Change Log:
12  v 2.0
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
23       in Gnomes panel bar
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 ;-)
30  v 1.9
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.
37  v 1.8
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.
49  v 1.72
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...)
54  v 1.71
55     - File parsing bug fixed: searching for "From"-directive is now
56       case-sensitive.
58  v 1.7
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"
64  v 1.61
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
69  v 1.6
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")
80  v 1.5
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
87       second...)
88     - Mailbox made configurable via cmdline -> new cmd-option "-mb"
89     - Color of inactive (off-switched) symbols made customizable -> new
90       cmd-option "-oc"
92  v 1.41
93     - Minor fixes, debugging-aid macro TRACE made more portable
95  v 1.4
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
102  v 1.3
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
110  v 1.2
111     - Message counter now displays up to 3 digits
112     - Made ticker scroll-refresh customizable (30 fps by default)
113       -> new cmd-option "-fps"
115  v 1.1
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
125  v 1.0
126     - Initial release
128 Description:
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:
155  item             : X11 display
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
163  default value    : 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
181  cmd-line option  : -n
182  rc-file statement: Mail.ShowOnlyNew = Yes|No
183  default value    : No
185  item             : mail check intervall (sec)
186  cmd-line option  : -i <num>
187  rc-file statement: Mail.CheckIntervall = <num>
188  default value    : 1
190  item             : consider status-field (not used when in maildir mode)
191  cmd-line option  : -sf
192  rc-file statement: Mail.UseStatusField = Yes|No
193  default value    : No
195  item             : custom status field content used for read mails
196  cmd-line option  : -rs
197  rc-file statement: Mail.ReadStatus = "<string>"
198  default value    : "O"
200  item             : show nick names in the ticker (all before the @)
201  cmd-line option  : -s
202  rc-file statement: Ticker.Mode = NickName
203  default value    : Address
205  item             : show family names in the ticker (if available)
206  cmd-line option  : -f
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>
213  default value    : 30
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:
257  windowed-mode        : -w
259  show help and exit   : -h
261  show version and exit: -v
263 Known bugs:
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...?
285 Requirements:
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.
292 Compile:
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.
302 Porting:
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
313  libdockapp v0.4.0.
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.
321 Install:
323  Call "make install" or copy the binary found in the src subdirectory by hand.
324  Make based installation also copies the provided sample rc-file to ~/.wmailrc
325  but wmail even runs without it.
327  Keep in mind, libdockapp must be installed properly (i.e. let reside it in
328  your X11 base library directory or let $LD_LIBRARY_PATH point to the lib).
329  If you would like to use rc-based configuration, look into the provided
330  sample-file "wmailrc-sample" and use it as a base for your particular needs
331  by copying it to ~/.wmailrc (make install has done this automatically).
332  Note: the name of this rc-file is hard-wired and cannot be customized.
334 Run:
336  Try wmail -h to see a list of all available options.
338 Web/Home:
340  www.informatik.uni-jena.de/~topical/sveng/wmail.html
342 Author and maintainer:
344  Sven Geisenhainer <sveng@informatik.uni-jena.de>
346  There is also a Debian package available under "http://jerhard.org/files/"
347  maintained by Juergen A. Erhard <juergen.erhard@gmx.net> - Thank you, Juergen!
349 Final words:
351  Thanx to Thomas Kurschel for his suggestions and coding assistance.
352  Thanx to Juergen A. Erhard for his codings and Debian packaging efforts.
353  Thanx to many users on the web for their ideas, test- and bug reports.
355  And many great thanx to all the GNUstep and Window Maker people who've
356  provided us with such a great user environment!
358  Hope you will ENJOY!