2 --------------------------------------------------------------------------------
3 Contents of the tools directory:
4 --------------------------------------------------------------------------------
7 cm-reparent.pl Fix thread parenting for two or more messages
8 cm-break.pl Remove thread parenting for one or more messages
9 ddg_search.pl Search DuckDuckGo for selected text
10 google_msgid.pl Search groups.google.com for selected message-id
11 multiwebsearch.pl Search any search engine for the selected text
12 textviewer.sh Attempt to view an attachment as plain text
13 uudec Decode and display uuencoded images
14 uuooffice Decode uuencoded attachments and open them with
17 Addressbook conversion:
18 csv2addressbook.pl Import Becky, Thunderbird, Kmail, Gmail and Fox
20 eud2gc.py Convert Eudora address book to Gnomecard
21 kmail2claws-mail.pl Import a Kmail address book (KDE2)
22 kmail2claws-mail_v2.pl Import a Kmail address book (KDE3)
23 mew2claws-mail.pl Import a Mew address book
24 outlook2claws-mail.pl Import an Outlook generated contact list
25 tb2claws-mail Import The Bat! address books
26 vcard2xml.py Import an Evolution vCard
29 calypso_convert.pl Import mbox files with attachments from Calypso
30 convert_mbox.pl Import mbox files
31 kmail-mailbox2claws-mail.pl Convert a kmail mailbox to a Claws Mail mailbox
32 tbird2claws.py Integrate a Thunderbird folder tree into Claws
35 acroread2claws-mail.pl Send PDFs from Adobe Reader 7
36 claws-mail-compose-insert-files.pl
37 Insert files into a new Compose window
38 filter_conv_new.pl Convert new-style Sylpheed filters to filtering
39 filter_conv.pl Convert old-style Sylpheed filters to filtering
40 fix-date.sh Replace/Add a message's Date field
41 mairix.sh A wrapper to mairix, to enable global searches in
43 nautilus2claws-mail.sh Send files from Nautilus
44 OOo2claws-mail.pl Send documents from OpenOffice.org
45 popfile-link.sh Open messages in POPFile control center to edit
47 sylprint.pl Printing engine, explained in README.sylprint
48 textviewer.pl Display various attachments as text
49 thunderbird-filters-convertor.pl
50 Convert Thunderbird filtering rules
53 gif2xface.pl Convert a 48x48 GIF file to an X-Face header
54 update-po Update the .po files named on the command line.
56 --------------------------------------------------------------------------------
57 Detailed Descriptions:
58 --------------------------------------------------------------------------------
64 WORKS ON: selected messages (two or more)
65 COMMAND: cm-reparent.pl %F
66 Thread the selected messages based on date, old to new
69 WORKS ON: selected messages (one or more)
70 COMMAND: cm-break.pl %F
71 Break thread references for the selected messages
75 COMMAND: |ddg_search.pl
76 Search duckduckgo.com for selected text using the default Claws Mail browser
80 COMMAND: |google_msgid.pl
81 Lookup selected message-id in google using mozilla. Edit the script to use
86 see further down for details
89 WORKS ON: current message part
90 COMMAND: textviewer.sh %p |
91 Attempt to view an attachment as plain text
94 WORKS ON: current message (or part of multipart message)
96 Decode and display uuencoded images using uudecode.
99 WORKS ON: current message (or part of multipart message)
100 COMMAND: uuooffice %f&
101 Decode uuencoded attachments and open them with OpenOffice
103 * More action examples can be found at the Claws Mail FAQ
104 http://www.claws-mail.org/faq/index.php/Actions
106 ** multiwebsearch.pl **
109 This is an Actions script that allows you to search
110 websites for the selected text. It uses the default
111 Claws Mail browser as configured through Claws Mail's
112 GUI and specified in ~/.claws-mail/clawsrc, and a
113 configuration file called multiwebsearch.conf.
116 The configuration file takes the following format:
118 ALIAS|URL PART|URL PART
120 ALIAS is a user-defined name; the first URL PART is the
121 url before the search term; the second URL PART is
122 optional and contains the remaining part of the url which
123 comes after the search term. A sample configuration file
127 Copy 'multiwebsearch.conf' to ~/.claws-mail/
130 a) pre-configured website
131 Command: multiwebsearch.pl --where="google" --what="%s"
133 Command: multiwebsearch.pl --where="%u" --what="%s"
135 In type a) "google" refers to one of the configured aliases,
136 this Action will always search the website referred to by
139 In type b) you will be presented with a dialog box into
140 which you type one of your configured aliases
143 Contact: Paul Mangan <paul@claws-mail.org>
144 --------------------------------------------------------------------------------
146 Address book conversion
147 -----------------------
152 This perl script will import a Becky, Thunderbird, Kmail, Gmail and
153 Fox Mail address book.
156 (You must run claws-mail at least once before running this script.)
160 In Becky you need to do a CSV full export with titles of your
163 Run the script with the following options:
165 perl csv2addressbook.pl --type=becky --csv=/full/path/to/file.csv
167 Addtionally you can use the option '--name="My address book"', if
168 you don't use this option the new Claws address book will be
169 called 'Becky address book'.
172 Thunderbird >= 2.0.0.6
173 ----------------------
174 In Thunderbird you need to export your address book as 'comma
177 Run the script with the following options:
179 perl csv2addressbook.pl --type=thunderbird --csv=/full/path/to/file.csv
181 Addtionally you can use the option '--name="My address book"', if
182 you don't use this option the new Claws address book will be
183 called 'Thunderbird address book'.
185 Kmail >= 1.9.7 / Kaddressbook >= 3.5.7
186 --------------------------------------
187 In Kaddressbook you need to export your address book as 'CSV List'.
189 Run the script with the following options:
191 perl csv2addressbook.pl --type=kmail --csv=/full/path/to/file.csv
193 Addtionally you can use the option '--name="My address book"', if
194 you don't use this option the new Claws address book will be
195 called 'Kmail address book'.
197 WARNING: Kmail/Kaddressbook has a bug whereby it exports badly
198 formatted CSV if the values are quoted.
202 In the Gmail web interface you need to export your address book
203 as Outlook CSV format.
205 Run the script with the following options:
207 perl csv2addressbook.pl --type=gmail --csv=/full/path/to/file.csv
209 Addtionally you can use the option '--name="My address book"', if
210 you don't use this option the new Claws address book will be
211 called 'gmail address book'.
215 Export your Fox Mail address book as CSV with all possible headers.
217 Run the script with the following options:
219 perl csv2addressbook.pl --type=foxmail --csv=/full/path/to/file.csv
221 Addtionally you can use the option '--name="My address book"', if
222 you don't use this option the new Claws address book will be
223 called 'foxmail address book'.
225 You can also run the script with '--help' to get a brief usage message.
227 Contact: Paul Mangan <paul@claws-mail.org>
232 This python-script is a quick hack to convert an Eudora (v.3?)
233 addressbook to vCard (GnomeCard) format.
236 You may do whatever you want with it! (Also regarding copying)
237 However, the script is intended to use like this:
239 eud2gc.py <Eudora-addressbook-file> <Gnomecard-file>
241 Be careful not to overwrite your original GnomeCard.gcrd!
242 (But of course you might want to add the converted stuff to it)
244 Contact: Jeroen Versteeg <j.m.versteeg@student.utwente.nl>
246 * kmail2claws-mail.pl
249 This perl script will convert an exported Kmail addressbook into a
250 Claws Mail addressbook. If your version of Kmail is 1.37 or
251 greater and/or your version of KAddressBook is 3.1beta1 or greater,
252 or this script mixes up your definitions and their related data, use
253 'kmail2claws-mail_v2.pl' instead.
256 (You must run claws-mail at least once before running this script.)
258 In Kmail's Address book choose '/File/Export List'. This will export
259 your Kmail address book data to a *.csv file.
261 If Claws Mail is running, close it.
263 From the command line, execute the following:
265 perl kmail2claws-mail.pl --kmailfile=/path/to/addressbook.csv
267 Your Kmail address book data will now be contained in Claws Mail'
268 address book, under the name 'Kmail Address Book'.
270 Contact: Paul Mangan <paul@claws-mail.org>
273 * kmail2claws-mail_v2.pl
275 This script has been tested with Kmail 1.4.7 and KAddressBook 3.1beta1
278 This perl script will convert a Kmail address book that has been
279 exported in csv format into a Claws Mail address book.
282 (You must run claws-mail at least once before running this script.)
284 Open Kmail's Addressbook, /File/Address Book
285 In Kmail's Addressbook choose '/File/Export/Export List...'. This
286 will allow you to export your Kmail addressbook data to a *.csv file.
288 If Claws Mail is running, close it.
290 From the command line, execute the following:
292 perl kmail2claws-mail_v2.pl --kmailfile=/path/to/addressbook.csv
294 You can also use --help to see usage instructions.
296 Your Kmail addressbook data will now be contained in Claws Mail'
297 addressbook, under the name 'Kmail address book'.
299 Contact: Paul Mangan <paul@claws-mail.org>
304 This perl script will convert a Mew address book into a Claws Mail
308 (You must run claws-mail at least once before running this script.)
310 If Claws Mail is running, close it.
312 From the command line, execute the following:
314 perl mew2claws-mail.pl --mew-addressbook=/path/to/mew/addressbook
316 You can also use --help to see usage instructions.
318 Your Mew addressbook data will now be contained in Claws Mail's
319 addressbook, under the name 'Mew Address Book'.
321 Contact: Jérôme Lelong <jerome.lelong@gmail.com>
323 * outlook2claws-mail.pl
326 This perl script converts an Outlook generated contact list into a
327 Claws Mail XML address book.
332 You must export Outlook Express contact list as TXT file, choosing
333 only "Name" and "Address" fields to export.
335 You must exit Claws Mail before converting the contact list.
337 From the command line, execute the following:
339 outlook2claws-mail.pl fullpathname
343 You must export Outlook contact list as CSV file, choosing ALL the
344 fields available for exporting.
346 You must exit Claws Mail before converting the contact list.
348 From the command line, execute the following:
350 outlook2claws-mail.pl --csv fullpathname
353 For text files only works with fields described above. If you have
354 more complex examples send them to me, and I'll try to enhance the
357 For csv files you must export all fields (but only non empty fields
358 are added to the created Claws Mail address book) and the number
359 of fields expected is harcoded. Look for the $nboffields variable in
360 the script and change its value if you are sure you exported all
361 fields and script gives the 'unknown csv file format' error.
363 Contact: Ricardo Mones <ricardo@mones.org>
369 This perl script will convert an address book exported from The Bat!
370 into a Claws Mail address book.
373 (You must run claws-mail at least once before running this script.)
375 If Claws Mail is running, close it.
377 Export The Bat! Address Book to CSV file format with all fields
378 selected to YES and then start:
380 tb2claws-mail --tbfile=/full/path/to/thebat/addressbook.csv
382 The Bat! addressbook data will now be contained in Claws Mail'
383 addressbook, under the name 'The Bat! Address Book'.
385 Contact: Urke MMI <urke@gmx.net>
391 This python script will convert an Evolution vCard into a Claws Mail
395 (You must run claws-mail at least once before running this script.)
397 If Claws Mail is running, close it.
398 From the command line, execute the following:
400 vcard2xml.py source_file [destination_file]
402 When only <source_file> is specified it will overwrite (and
403 create a backup of) the existing addressbook.
404 When both arguments are suplied it will create a new additional
405 addressbook named as <destination_file>.
406 If the script encounters an error it will attempt to roll back
407 the changes and restore the original files.
409 Contact: Bogdan Sumanariu <bsumanariu@one5.ro>
411 --------------------------------------------------------------------------------
419 This perl script imports mbox files that are exported by Calypso.
420 It recreates the folder structure by scanning the "X-CalypsoFolder"
421 header and reincludes the attachments referenced in the
422 "X-CalypsoHtmlBody" "X-CalypsoAccount" "X-Attachment" headers.
425 Export the Calypso mailbox by selecting "Save to archive" and check
426 the "Save attachments" box.
428 Edit the script to set following variables (at the top of the file):
429 $mboxdir : path to the exported mbox, e.g. 'Archive' or '.'
430 $mboxfile : name of exported mbox, e.g. 'mail.txt'
431 $outdir : name of the MH folder to create, e.g. 'Calypso'
435 perl calypso_convert.pl
437 Finally, import that folder by either selecting "New mailbox" or
438 moving it into your existing directory and recreate the folder
439 structure manually (contentmenu from folderview).
441 Contact: Thorsten Maerz <torte@netztorte.de>
446 This perl script converts an mbox directory's contents into
447 Claws Mail' MH format.
451 Run the script using:
453 perl convert_mbox.pl MBOX MH_DIR
455 Move the outputted MH_DIR and its contents into your Claws Mail
456 Mail folder; in Claws Mail right-click the top-level folder and
457 choose 'Rebuild folder tree' from the popup menu.
459 Contact: Fred Marton <Fred.Marton@uni-bayreuth.de>
461 * kmail-mailbox2claws-mail.pl
464 This perl script converts a kmail mailbox into Claws Mail' mailbox.
468 Exit Claws Mail if running.
470 Run the script using:
472 kmail-mailbox2claws-mail.pl --kmaildir=/full/path/to/kmail/mailbox
474 Start Claws Mail and right-click the toplevel mailbox, i.e
475 "Mailbox (MH)", and select 'Rebuild folder tree'.
476 You may also need to run '/File/Folder/Check for new messages
481 --dry-run test mode, nothing is actually written
482 --help brief usage info
484 Contact: Paul Mangan <paul@claws-mail.org>
489 This python script integrates a Thunderbird folder tree into
494 The script receives two parameters from command-line:
495 <Thunderbird folder path> <Claws Mail folder path>
497 The best way to use it is to go to inside your Thunderbird
498 root mailfolder directory and invoke it as:
500 <path>\python2.4 <path>\tbird2claws.py . <path to Claws Mail>\Mail
502 Contact: Aleksandar Urosevic aka Urke MMI <urke@gmx.net>
504 --------------------------------------------------------------------------------
509 * acroread2claws-mail.pl
512 This perl script enables Adobe Reader 7 to send documents to
513 Claws Mail as attachments.
516 Make sure that the script is executable (chmod +x acroread2claws-mail.pl)
517 Start up Adobe Reader 7 (acroread)
518 Go to /Edit/Preferences/SendMail
519 Select any email client except 'System Mail (mail)'
520 Enter the path to this script in the alternate location box
522 You can then use 'File/Email' or the Email toolbar button to launch
523 claws-mail (if not already launched) and open a new compose window
524 with the PDF attached.
526 Contact: Paul Mangan <paul@claws-mail.org>
528 * claws-mail-compose-insert-files.pl
531 This script enables inserting files into the message body of a new
532 Claws Mail Compose window from the command line. Additionally To,
533 Cc, Bcc, Subject and files to attach to the message can be specified.
536 claws-mail-compose-insert-files.pl [options]
539 --to "Person One <mail@address.net>"
540 --cc "Person One <mail@address.net>"
541 --bcc "Person One <mail@address.net>"
542 --subject "My subject"
546 For multiple recipients separate the addresses with ','
547 e.g. --to "Person One <mail@address.net>,Person Two <mail2@address.net>"
548 --attach and --insert can be used multiple times
550 Contact: Paul Mangan <paul@claws-mail.org>
555 This perl script provides easy conversion of your filtering rules from
556 sylpheed's new filter system (>= 0.9.99) to the filtering system used in
558 It reads '~/.sylpheed-2.0/filter.xml' or '~/.sylpheed/filter.xml' and
559 writes '~/[CLAWS CONFIG DIR]/matcherrc'
562 Issue the following command from the 'tools' directory:
564 perl filter_conv_new.pl
566 That's it, the claws' filtering system is now implemented with your
567 previous rules applied.
572 Contact: Paul Mangan <paul@claws-mail.org>
578 This perl script provides easy conversion of your filtering rules
579 from sylpheed's old filter system (< 0.9.99) to the filtering system
581 It reads '~/.sylpheed/filterrc' and writes '~/.claws-mail/matcherrc'
584 Issue the following command from the 'tools' directory:
588 That's it, the new filtering system is now implemented with your
589 previous rules applied.
591 Contact: Paul Mangan <paul@claws-mail.org>
597 Add a 'Date:' header to the selected email(s) when such header
598 is missing. The correct date is guessed from other headers
599 that contain timestamp information (preferred: Fetchinfo
600 header if found) or from the file or system date as a
601 fallback. The order or preference for the date value
602 replacement can be changed by editing the script.
603 This script can be used to fix messages that show non
604 RFC-compliant Date headers as well.
605 X-Original-Date is always added too if not already existing
606 (if so, it's left untouched), to keep track of the original
608 An existing Date: header is not overwritten unless you use the
610 Non RFC-compliant dates can be overwritten using the --rfc
611 switch. Use --strict to use strict RFC matching patterns for
612 date values in other headers.
615 First you have to create an action with the following command:
619 On main window's message list, select the messages to be fixed
620 and invoke the created action.
622 Contact: wwp <wwp@claws-mail.org>
627 It's a wrapper to mairix, a tool that makes indexed searches
628 and shows search results in a virtual folder. Maildir, MH and
629 mbox formats are supported, see:
630 http://www.rpcurnow.force9.co.uk/mairix/
634 mairix.sh <mairix rcfile> [<mairix options>..]
637 mairix.sh ~/.mairixrc s:word1,word2
639 Contact: wwp <wwp@claws-mail.org>
642 * nautilus2claws-mail.sh
645 This script will recursively attach a number of selected
646 files/directories from Nautilus to a new blank e-mail.
649 Copy the script to $HOME/.gnome2/nautilus-scripts, chmod u+x,
650 and restart nautilus (killall -9 nautilus). You will now have
651 a right-click menu item: '/Scripts/nautilus2claws-mail.sh'
653 Contact: Reza Pakdel <hrpakdel@cpsc.ucalgary.ca>
659 This perl script enables OpenOffice.org to send documents to
660 Claws Mail as attachments.
663 OpenOffice.org Version 2.0
664 ----------------------------
665 This script is not needed for OOo version 2, which can work
666 directly with Claws Mail.
667 Go to 'Tools/Options/Internet/E-mail' and enter 'claws-mail'
670 OpenOffice.org Version 1.1.0
671 ----------------------------
672 Start up OpenOffice.org.
673 Go to 'Tools/Options/OpenOffice.org/External Programs'
674 Select either ''Mozilla 1.x (Option 1)', or
675 'Netscape 6.x - 7.0 (Option 1)' from the 'Program' selection
676 Enter the path to OOo2claws-mail.pl in the 'Path' box
677 or select it by clicking on the '...' button.
679 You can then use 'File/Send/Document as email' to launch
680 claws-mail (if not already launched) and open a new compose
681 window with the document attached.
683 OpenOffice.org Version 1.0
684 --------------------------
685 Start up OpenOffice.org.
686 Go to 'Tools/Options/OpenOffice.org/External Programs'
687 Enter the path to OOo2claws-mail.pl in the 'Program' box
688 or select it by clicking on the '...' button.
691 Contact: Paul Mangan <paul@claws-mail.org>
697 Open selected messages in POPFile control center to edit their
698 status. Requires that POPFile is running and that the messages
699 have been processed by it (X-POPFile-Link: header is expected).
700 POPFile control center opens with the web browser set in
704 popfile-link.sh <filename> [<filename>..]
707 Contact: wwp <wwp@claws-mail.org>
713 This script tries to recognise an attachment by using the 'file'
714 command and/or the file extension and then uses the available
715 utilities to make an effort to display it as text.
719 will show available conversion, the top:
723 .bz2 bzip2 -d < %f | strings
728 If there are multiple alternatives available, they are listed in
729 the ordder they are tried, like for .xls:
732 .xls catdoc -x -dutf-8
736 Go to /Configuration/Message View/External Programs and enter the
737 path to the script in the "Command for 'Display as text'" box.
738 Now when you right-click an attachment and choose 'Display as text'
739 this script will be invoked.
741 xlscat comes with the perl module Spreadsheet::Read, which is a
742 wrapper module over several parsers and supports ods, sxc, csv, xls,
743 xlsx, and sq. See https://metacpan.org/release/Spreadsheet-Read
745 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>
748 * thunderbird-filters-convertor.pl
751 This perl script converts Thunderbird filtering rules into Claws Mail
752 filtering rules. It can be run several times, once for each filter
753 configuration file in Thunderbird.
756 The script takes 3 arguments:
758 --tbird-file=PATH TO FILE The full path to the file to be converted
759 --mailbox-name=NAME The name of the Claws Mail mailbox
760 --account-name=NAME The name of the account to be used (optional)
762 --tbird-file must point to the Thunderbird filter file (msgFilterRules.dat)
763 that you want to convert, it must contain the full path to the file.
764 --mailbox-name should be given the name of your mailbox in Claws Mail, e.g.
765 if the top-level folder is 'Mailbox (MH)' then this option should be
767 --account-name is optional, only needed if you are creating account-specific
768 rules. This is the name of your account in Claws Mail, which should
769 correspond to an account that you had in Thunderbird, e.g. the acount whose
770 rules you are converting.
772 This script presumes that your folder hierarchy in Claws Mail matches the
773 one that you had in Thunderbird. If you used the tbird2claws.py script to
774 convert your Thunderbird mailbox, then the folder hierarchy should match.
776 If the Claws Mail filtering configuration file (matcherrc) does not exist,
777 the script will create it; if it does exist, the newly converted rules will
784 Contact: Paul Mangan <paul@claws-mail.org>
786 --------------------------------------------------------------------------------
794 This perl script converts a monochrome (1 bit) 48x48 pixels GIF file
795 into an X-Face graphic suitable for inclusion into custom headers of
796 Claws Mail. An X-Face allows to quickly identify (or be identified
797 as) the sender of a mail message in a xface-capable MUA (like Claws
801 After obtaining the desired image for your X-Face you should:
802 * scale it to 48x48 pixels (Image->Scale image on Gimp)
803 * down color depth to b/w (Image->Mode->Indexed selecting "Use
804 Black/White palette" and the desired dithering options (prior to
805 indexing doing Image->Colors->Threshold allows you to select the
806 b/w level if you don't want a dithered (dotty) image))
807 * save file as non-interlaced GIF
810 ./gif2xface < filename.gif > filename.xface
812 In filename.xface will be the X-Face header ready to use.
813 You can add a custom header in Claws Mail through Configuration->
814 Preferences per account, "Send" tab, check "Add user-defined header"
815 then "Edit..." if you want to add it via the Claws Mail interface, or do
817 echo "0:" `cat filename.xface` > ~/.claws-mail/customheaderrc
819 if you want to create the custom headers file yourself (Warning: this
820 method is valid only if you don't have any other custom header set or
823 Contact: Ricardo Mones <ricardo@mones.org>
829 This script is a message catalog translator's tool, it updates the .po
830 files named on the command line.
833 This script needs to be copied to and run from the 'po' directory.
835 ./update-po lang.po lang2.po ...
837 to update one or more <yourlang>.po files from the sourcecode files
838 named in POTFILES.in. The old .po file is save in a .po.old file.
840 For example, when you want to update fr.po, run ./update-po fr.po,
841 then edit fr.po to update your translation.
843 Contact: Wilbert Berendsen <wilbert@oswf.org> or the Claws Mail Team
845 --------------------------------------------------------------------------------
846 This file is Copyright 1999-2014 by the Claws Mail team.
847 See accompanying COPYING file for license details.
848 See each included script for copyright and license details.
853 This script tries to fix thread parenting for two or more messages
858 Menu name: Reparent (fix threading)
859 Command: cm-reparent.pl %F
861 Then select from the message list all files that should be re-parented
863 Then invoke the action
866 $ perldoc cm-reparent.pl
872 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>
877 This script tries to break thread parenting for one or more messages
882 Menu name: Unthread (break threading)
883 Command: cm-break.pl %F
885 Then select from the message list all files that should be un-threaded
887 Then invoke the action
890 $ perldoc cm-break.pl
896 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>