This is not a prioritized list. Patches that accomplish these todo items are welcome. * Config file rewrite The current configuration file has the following problems ** # comments make #'s unsuitable for passwords. ** : and @ delimiters make such characters unsuitable for passwords. ** the hierarchical configuration is not exported cleanly, setting a default and then propagating or overriding it requires an odd syntax. ** elements with spaces are problematic ** annotations / customizations (such as the authentication methods) are cumbersome. ** continuation lines would allow richer shell actions without external shell scripts. * GNUTLS 0.5.9 ** adds gnutls_set_default_priority, which could clean up a lot of the code to set priorities for ciphers that don't really matter to wmbiff. * Font support ** Erase counts > 1000 successfully (redraw the whole line) ** Discover height of the font, scale appropriately. ** Draw relative to symbolic width, height. * Finish checking .wmbiffrc permissions. With shell command execution support, it is even more important to protect against other/group writability. With passwords in the .wmbiffrc, .wmbiffrc shouldn't be readable. It might be best to complain all the time, but only abort when a password is used from a readable file, or a shell command is executed from a writable file. * Better timeout handling Sometimes my IMAP server is slow... well, it's my fault that I keep a few thousand messages on it. The current timeout code will cause it to fail prematurely. * Generic constructors for mboxes. There's some common code across different Clients; this is one piece that could use refactoring. * Add more shell "recipes" besides gicu. Just added 'finger'. I'm hoping to add something to integrate 'remind' just as soon as I can figure it out. * Support on/off status LED's, for, for example, grep eth0 /proc/net/dev | wc -l The colored LED's are already in WMBiff's pixmap. * Support buttons 4 and 5 The mousewheel could be useful for some behaviors, like controlling volume, or selecting different mailboxes. * Use a helper program to blink keyboard led's. Requires killing the 'notify' program when new mail no longer exists. Keyboard blinking is done via a helper program because it requires root. ledcontrol seems ok, but extra complicated, and has a useless default install that requires root. xbuffy's led program seems quite good, but depending on another biff program seems odd. * Add a failure-expect case in tlsComm. For example, an IMAP status query has a good response (* STATUS) and a bad response (a003 NO STATUS). As soon as one of them is received, we're done. * Reload .wmbiffrc when it changes This is straightforward, except for IMAP mailboxes that keep a connection to the server open. A close function will have to be implemented to shut those down gracefully. Do not involve sighup or any other signals. Use or improve fileHasChanged(). * Runtime back-tick expansion for non-mbox Because interesting mailboxes can be defined by date, though its not clear any other clients can take advantage. * Support GSSAPI or SASL authentication Authentication using krb5 would be sweet. * Unlikely to get done, unless someone volunteers: * KDE/Gnome users: Test with KDE or gnome-panel Does Debian bug #108529 apply to wmbiff? Can wmbiff be swallowed by gnome-panel? It seems possible. It appears to be swallowed by FVWM correctly. * Autoconf / Automake Wizards: fix FromCVS.sh How best to deal with libgnutls's macros? All I can do is hack. * Paranoid Pop People: Support POP over TLS. tlsComm.c should make it easy to provide TLS support for POP. Unfortunately, this would only be useful for someone who has such a server that doesn't support IMAPS. * MH support Try "path.n=shell:::ls -1 directoryname | wc -l". If it works, tell us. Optionally the patch at sourceforge could be integrated. * Recursive maildir support Aggregation in general is an oft-desired feature. * G-Mail support Though the business model of free mail forces screen scrubbing, having someone else write and maintain the interface seems like it would significantly improve the utility of gmail. $Id: TODO,v 1.21 2004/10/31 22:08:42 bluehal Exp $ Local Variables: mode: outline End: