About this Add-on
This add-on provides a few new ways to keep Thunderbird clean (hence its name).
I have personally tested version 2.x of this add-on only in Thunderbird 2.x/3.x and only under XP Pro. Earlier versions worked under 1.5x/2.x releases of Thunderbird and I have been informed by users that this add-on appears to function on other platforms. Let me know what you find.
Mark All Read
While Thunderbird, by default, provides a context menu item for each individual folder that marks that folder read, it does not provide one that recursively marks each folder and subfolder as read. Having such a feature adds some convenience. So here it is! If enabled in this addon's options, you will see the Mark All Read menu item on the account folder context menu for the following account types: POP3, IMAP, Local Folders, News, and RSS. If a folder within a POP3, IMAP, or Local Folders account has one or more subfolders, you will see the Mark All Read menu item on that folder's context menu as well. You can also mark all folders in all accounts as read with a single click or keyboard shortcut. If the Mark All Read function is enabled, the menu item for triggering Mark All Accounts Read can be found on this addon's status bar icon menu. The option panel offers the ability to assign the Mark All Accounts Read to a single keystroke.
Removing 'Phantom' Messages in Newsgroups
I have also noted that Thunderbird's News Client will occasionally show that there are new messages to be read (newsgroup displayed in bold followed by the number of messages in parenthesis) for a group when there are really none available. I call these 'Phantom' Messages. There are already some official bug reports related to this behavior (see https://bugzilla.mozilla.org/show_bug.cgi?id=71728 and https://bugzilla.mozilla.org/show_bug.cgi?id=24592) but there is little sign of action being taken to fix this in the near term.
In this bug report ( https://bugzilla.mozilla.org/show_bug.cgi?id=294754#c3), a responder describes a work-around to this issue but the technique requires stopping Thunderbird followed by manual editing of newshost.rc files. This is something of a pain. So in keeping with the 'cleaning' theme of this add-on, I have added a feature that will automate this process on user demand. A restart of Thunderbird is required to complete the task but that seems a small price to pay. To access this function, bring up the context menu for any individual newsgroup folder and choose 'Remove Phantom Messages'. Once you restart Thunderbird, bogus new messages should no longer be shown for that newsgroup folder.
Removing 'Orphaned' News Files
Unless you are way too fastidious about such things, you may not have not have noticed that Thunderbird will leave files on disk for newsgroups from which you have unsubscribed. The size of these files may not be large but they serve no purpose. This function will remove these files from your disk. Access this function from the context menu for any news account folder by selecting 'Remove Orphaned Files'. Once you restart Thunderbird, any such files will be removed for that account.
When you remove a POP3 email, IMAP email, RSS, or News account Thunderbird seems to leave many of the account's files lying around on disk. This may be to assist in a future 'un-remove' or archival process. But the disk consumed by some accounts can become quite large and sometimes you really just want to permanently and completely remove an account. This function helps keep your computer clean by removing folders that are determined to be 'orphaned' from any known current account. Select 'Clean Accounts' from the menu available from ThunderPlunger's status bar icon. At the next Thunderbird restart, this add-on will check the following to identify probable 'orphaned' folders for removal:
* Thunderbird's default POP3 email storage location
* Thunderbird's default IMAP email storage location
* Thunderbird's default NNTP (News) storage location
* A historical log, established and maintained by this add-on, of past and current accounts
Before a probable 'orphaned' folder is removed, you will be prompted to confirm the action. Please carefully consider each prompt before responding as results cannot be undone.
Remove Email Addresses From Address Books
A net newsgroup user recently stated that she would like to be able to easily remove the email address associated with a bounced email message from her address books. By default, a user must copy the e-mail address from the bounced mail, search each address book, and finally delete any matched items.
This function simplifies that process. You simply right-click on any email address link shown in a message and choose the menu item 'Remove From Address Books' that ThunderPlunger has added to the popup menu. A submenu permits you to choose among those local address books known to contain a card with this email or all local address books containing this email. You will optionally be prompted for permission to process each local address book and to confirm the card's deletion.
Note: It is possible to have more than one card in an address book for the same email address. So you may be prompted multiple times to approve card deletions within an address book. Responding to these confirmations with the Cancel button will prevent that card from being deleted and you will be given the opportunity to cancel the entire operation (with no items deleted) for the current address book.
Also Note:: This function also removes entries that reference the email address from mailing lists. However, it does NOT delete the mailing list if the deleted entry should leave the list empty.
Add Email Address To Selected Address Book
A user recently pointed out how difficult is has become, in Thunderbrid 3.x, to add an email address found in a message header to a specific address book. This was easy to accomplish in previous versions but starting with 3.x, multiple steps are required. That others found this a problem was easily verified by a web search.
This function simplifies the process. You simply right-click on any email address link shown in a message and choose the menu item 'Add To Selected Address Book' that ThunderPlunger has added to the popup menu. A submenu permits you to choose among those local address books known to not already contain a card with this email address. After the card is added, you will optionally be prompted to edit the new card's properties.
Edit Email Address In Selected Address Book
This function simplifies the process of showing the address book properties panel for a displayed email address. You simply right-click on any email address link shown in a message and choose the menu item 'Edit In Selected Address Book' that ThunderPlunger has added to the popup menu. A submenu permits you to choose among those local address books known to already contain a card with this email address.When one of these address books is selected, you will shown the card's properties for editing.
This idea had its germination in response to a newsgroup posting and while this function proved to NOT solve the original poster's problem (since he was on Mac), it seemed worthwhile to keep in place. For Thunderbird 3.x and above, something close to this function exists. But I think this more convenient. If you do not, it can be disabled on the addon's options panel.
Validate Email Addresses
Over time, most of us discover that some of the email addresses in our address books have gone stale - i.e., they are no longer valid. We generally detect this only once we have sent an email and it is bounced back to us. In those cases, the Remove Email Addresses From Address Books (above) will help you to easily remove that card.
However, you may not want to wait until your email bounces to discover that an email address is no longer valid. For this reason, ThunderPlunger now offers a Validate Email Address function:
* Right-click on a card shown in the address book window to invoke this function. A request is sent to a specially-written ThunderPlunger web service which will do its best to verify the validity of that card's primary and secondary email addresses. This is done by directly communicating with the mail server for the email's domain.
* Right-click on an address book shown in the address book window to invoke this function against either the primary or secondary email addresses for all cards in the address book. This may take a while depending upon the number of cards in the address book. But you can continue to work in ThunderBird during processing. All cards determined to contain a suspect email address are then displayed in the results window. From here you can review the results and select those cards you wish to either remove from the address book, have the suspect email address erased from the card, or moved into a different address book.
Note: Due to the variations in mail server configurations and other factors beyond our control, this function cannot be considered 100 percent accurate. It is possible that some email addresses that are actually bad can be reported as good and vis-a-vis. So use care when interpreting the results and deciding to delete a suspect card.
Also Note: Some potential users of this function may be concerned that it is a nefarious attempt to 'harvest' email addresses from their address books. Nothing could be further from the truth. No information of any kind is retained by ThunderPlunger's web component. The web component is written in well-dcoumented PHP and the code can easily be downloaded/reviewed for content and purpose. The location of the web component being used is shown in the add-on's options window. I urge anyone with doubts to do so.
Final Note: Upon release, only one instance of the ThunderPlunger web component will be supported. It is suspected that, with increase in usage, a single instance will not suffice. So more locations will have to be added. If you are able to support ThunderPlunger by hosting an instance of the web component, please contact me. As more instances become available, their URLs will be posted on the add-on's web site.
Copy Email Address From Address Book Card and Message Headers
Right-click on an address book card or a contact shown in a message header. If the address book card has a primary email address you will see a menu item that permits you to copy that email address into the clipboard for your use elsewhere. If that card has a value for its Display Name property or if the message header shows more than just the email address, you will see a menu item that permits you to copy both the name and the email address into the clipboard.
I recognize that this function is not exactly in-keeping with ThunderPlunger's general theme of keeping your ThunderBird environment neat and tidy. But I have been seeking this ability for some time now and since I was working in the address book, I decided to do it here anyway. I do not understand why it is not built-into ThunderBird but now users of this add-in will have it.
Warn on Address Book Card Delete
In cases where you have multiple entries in an address book for a single person and one of them is used in a mailing list, you want to be able to avoid deleting the card used in the mailing list and thereby damaging the mailing list. Thunderbird gives no warning and shows no indication that a card is used in one or more mailing lists. So, when enabled, this function intercepts both menu and button driven attempts to delete an entry from an address book (not from a mailing list) and checks to see if the entry is in use on one or more mailing lists in that address book. If so, a warning is given and you can optionally cancel the delete operation.
Clear All Expired for News
Depending upon your newsgroup retention policy settings, Thunderbird may retain newsgroup information for articles which are no longer available on the newsgroup server due to time expiration. When this occurs, Thunderbird displays something similar to this:
newsgroup server responded:no such article number in group
Perhaps the article has expired
Click here to remove all expired articles
This function performs the same action as clicking on the link in the above message. Access this method at any time from the folder pane context menu for any newsgroup folder by choosing Clear All Expired. This will cause Thunderbird to remove information for articles which are no longer on the server for that newsgroup. Clear All Expired is also available on the context menu for newsgroup server folders. In this case, all newsgroup folders associated with that server will be similarly processed.
Compress Sqlite Files
Starting with version 3, Thunderbird uses Sqlite to store some of its information. To prevent unbounded growth in size, these files should be compressed on occasion. This function can be triggered manually from the menu on ThunderPlunger's status bar icon. Or it can be performed on each startup via an option setting. Due to reported conflicts, the files extensions.sqlite and addons.sqlite are not processed.
Monitor Size of Email Folders
If the size of email folders grows too large, Thunderbird can find it difficult to handle the data efficiently. Also, such folders present problems for backup strategies. So it is in your best interests to take action in preventing these folders from becoming oversize. This function will optionally check all email folders on Thunderbird startup and warn you if one or more folders have exceeded a user-specified maximum size (by default, 500 MB). Sometimes, these folders will benefit from simply being compacted, so information is also presented to allow you to decide if this is something you should try first. This function can also be triggered via the menu on ThunderPlunger's status bar icon.
This add-on offers a few simple options which control its behavior. These can most easily be manipulated via the built-in add-on options dialog. To easily access this dialog, select 'Options' from the context menu available from ThunderPlunger's status bar icon. No options require a restart of Thunderbird to take effect.
As I become aware of additional functions in keeping with this add-on's theme of sustaining a tidy Thunderbird environment, I will try to add them. Contact me with your suggestions. No warranty that I will include them but if I do you will be credited as a contributor to the add-on. Thanks.