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 freshmeat_search.pl Search freshmeat.net for selected text
10 google_msgid.pl Search groups.google.com for selected message-id
11 google_search.pl Search google.com for selected text
12 multiwebsearch.pl Search any search engine for the selected text
13 textviewer.sh Attempt to view an attachment as plain text
14 uudec Decode and display uuencoded images
15 uuooffice Decode uuencoded attachments and open them with
18 Addressbook conversion:
19 csv2addressbook.pl Import Becky, Thunderbird, Kmail, Gmail and Fox
21 eud2gc.py Convert Eudora address book to Gnomecard
22 kmail2claws-mail.pl Import a Kmail address book (KDE2)
23 kmail2claws-mail_v2.pl Import a Kmail address book (KDE3)
24 mew2claws-mail.pl Import a Mew address book
25 outlook2claws-mail.pl Import an Outlook generated contact list
26 tb2claws-mail Import The Bat! address books
27 vcard2xml.py Import an Evolution vCard
30 calypso_convert.pl Import mbox files with attachments from Calypso
31 convert_mbox.pl Import mbox files
32 kmail-mailbox2claws-mail.pl Convert a kmail mailbox to a Claws Mail mailbox
33 tbird2claws.py Integrate a Thunderbird folder tree into Claws
36 acroread2claws-mail.pl Send PDFs from Adobe Reader 7
37 claws-mail-compose-insert-files.pl
38 Insert files into a new Compose window
39 filter_conv_new.pl Convert new-style Sylpheed filters to filtering
40 filter_conv.pl Convert old-style Sylpheed filters to filtering
41 fix-date.sh Replace/Add a message's Date field
42 mairix.sh A wrapper to mairix, to enable global searches in
44 nautilus2claws-mail.sh Send files from Nautilus
45 OOo2claws-mail.pl Send documents from OpenOffice.org
46 popfile-link.sh Open messages in POPFile control center to edit
48 sylprint.pl Printing engine, explained in README.sylprint
49 textviewer.pl Display various attachments as text
50 thunderbird-filters-convertor.pl
51 Convert Thunderbird filtering rules
54 gif2xface.pl Convert a 48x48 GIF file to an X-Face header
55 update-po Update the .po files named on the command line.
57 --------------------------------------------------------------------------------
58 Detailed Descriptions:
59 --------------------------------------------------------------------------------
65 WORKS ON: selected messages (two or more)
66 COMMAND: cm-reparent.pl %F
67 Thread the selected messages based on date, old to new
70 WORKS ON: selected messages (one or more)
71 COMMAND: cm-break.pl %F
72 Break thread references for the selected messages
76 COMMAND: |google_msgid.pl
77 Lookup selected message-id in google using mozilla. Edit the script to use
82 COMMAND: |google_search.pl
83 Search google.com for selected text using the default Claws Mail browser
87 see further down for details
90 WORKS ON: current message part
91 COMMAND: textviewer.sh %p |
92 Attempt to view an attachment as plain text
95 WORKS ON: current message (or part of multipart message)
97 Decode and display uuencoded images using uudecode.
100 WORKS ON: current message (or part of multipart message)
101 COMMAND: uuooffice %f&
102 Decode uuencoded attachments and open them with OpenOffice
104 * More action examples can be found at the Claws Mail FAQ
105 http://www.claws-mail.org/faq/index.php/Actions
107 ** multiwebsearch.pl **
110 This is an Actions script that allows you to search
111 websites for the selected text. It uses the default
112 Claws Mail browser as configured through Claws Mail's
113 GUI and specified in ~/.claws-mail/clawsrc, and a
114 configuration file called multiwebsearch.conf.
117 The configuration file takes the following format:
119 ALIAS|URL PART|URL PART
121 ALIAS is a user-defined name; the first URL PART is the
122 url before the search term; the second URL PART is
123 optional and contains the remaining part of the url which
124 comes after the search term. A sample configuration file
128 Copy 'multiwebsearch.conf' to ~/.claws-mail/
131 a) pre-configured website
132 Command: multiwebsearch.pl --where="google" --what="%s"
134 Command: multiwebsearch.pl --where="%u" --what="%s"
136 In type a) "google" refers to one of the configured aliases,
137 this Action will always search the website referred to by
140 In type b) you will be presented with a dialog box into
141 which you type one of your configured aliases
144 Contact: Paul Mangan <paul@claws-mail.org>
145 --------------------------------------------------------------------------------
147 Address book conversion
148 -----------------------
153 This perl script will import a Becky, Thunderbird, Kmail, Gmail and
154 Fox Mail address book.
157 (You must run claws-mail at least once before running this script.)
161 In Becky you need to do a CSV full export with titles of your
164 Run the script with the following options:
166 perl csv2addressbook.pl --type=becky --csv=/full/path/to/file.csv
168 Addtionally you can use the option '--name="My address book"', if
169 you don't use this option the new Claws address book will be
170 called 'Becky address book'.
173 Thunderbird >= 2.0.0.6
174 ----------------------
175 In Thunderbird you need to export your address book as 'comma
178 Run the script with the following options:
180 perl csv2addressbook.pl --type=thunderbird --csv=/full/path/to/file.csv
182 Addtionally you can use the option '--name="My address book"', if
183 you don't use this option the new Claws address book will be
184 called 'Thunderbird address book'.
186 Kmail >= 1.9.7 / Kaddressbook >= 3.5.7
187 --------------------------------------
188 In Kaddressbook you need to export your address book as 'CSV List'.
190 Run the script with the following options:
192 perl csv2addressbook.pl --type=kmail --csv=/full/path/to/file.csv
194 Addtionally you can use the option '--name="My address book"', if
195 you don't use this option the new Claws address book will be
196 called 'Kmail address book'.
198 WARNING: Kmail/Kaddressbook has a bug whereby it exports badly
199 formatted CSV if the values are quoted.
203 In the Gmail web interface you need to export your address book
204 as Outlook CSV format.
206 Run the script with the following options:
208 perl csv2addressbook.pl --type=gmail --csv=/full/path/to/file.csv
210 Addtionally you can use the option '--name="My address book"', if
211 you don't use this option the new Claws address book will be
212 called 'gmail address book'.
216 Export your Fox Mail address book as CSV with all possible headers.
218 Run the script with the following options:
220 perl csv2addressbook.pl --type=foxmail --csv=/full/path/to/file.csv
222 Addtionally you can use the option '--name="My address book"', if
223 you don't use this option the new Claws address book will be
224 called 'foxmail address book'.
226 You can also run the script with '--help' to get a brief usage message.
228 Contact: Paul Mangan <paul@claws-mail.org>
233 This python-script is a quick hack to convert an Eudora (v.3?)
234 addressbook to vCard (GnomeCard) format.
237 You may do whatever you want with it! (Also regarding copying)
238 However, the script is intended to use like this:
240 eud2gc.py <Eudora-addressbook-file> <Gnomecard-file>
242 Be careful not to overwrite your original GnomeCard.gcrd!
243 (But of course you might want to add the converted stuff to it)
245 Contact: Jeroen Versteeg <j.m.versteeg@student.utwente.nl>
247 * kmail2claws-mail.pl
250 This perl script will convert an exported Kmail addressbook into a
251 Claws Mail addressbook. If your version of Kmail is 1.37 or
252 greater and/or your version of KAddressBook is 3.1beta1 or greater,
253 or this script mixes up your definitions and their related data, use
254 'kmail2claws-mail_v2.pl' instead.
257 (You must run claws-mail at least once before running this script.)
259 In Kmail's Address book choose '/File/Export List'. This will export
260 your Kmail address book data to a *.csv file.
262 If Claws Mail is running, close it.
264 From the command line, execute the following:
266 perl kmail2claws-mail.pl --kmailfile=/path/to/addressbook.csv
268 Your Kmail address book data will now be contained in Claws Mail'
269 address book, under the name 'Kmail Address Book'.
271 Contact: Paul Mangan <paul@claws-mail.org>
274 * kmail2claws-mail_v2.pl
276 This script has been tested with Kmail 1.4.7 and KAddressBook 3.1beta1
279 This perl script will convert a Kmail address book that has been
280 exported in csv format into a Claws Mail address book.
283 (You must run claws-mail at least once before running this script.)
285 Open Kmail's Addressbook, /File/Address Book
286 In Kmail's Addressbook choose '/File/Export/Export List...'. This
287 will allow you to export your Kmail addressbook data to a *.csv file.
289 If Claws Mail is running, close it.
291 From the command line, execute the following:
293 perl kmail2claws-mail_v2.pl --kmailfile=/path/to/addressbook.csv
295 You can also use --help to see usage instructions.
297 Your Kmail addressbook data will now be contained in Claws Mail'
298 addressbook, under the name 'Kmail address book'.
300 Contact: Paul Mangan <paul@claws-mail.org>
305 This perl script will convert a Mew address book into a Claws Mail
309 (You must run claws-mail at least once before running this script.)
311 If Claws Mail is running, close it.
313 From the command line, execute the following:
315 perl mew2claws-mail.pl --mew-addressbook=/path/to/mew/addressbook
317 You can also use --help to see usage instructions.
319 Your Mew addressbook data will now be contained in Claws Mail's
320 addressbook, under the name 'Mew Address Book'.
322 Contact: Jérôme Lelong <jerome.lelong@gmail.com>
324 * outlook2claws-mail.pl
327 This perl script converts an Outlook generated contact list into a
328 Claws Mail XML address book.
333 You must export Outlook Express contact list as TXT file, choosing
334 only "Name" and "Address" fields to export.
336 You must exit Claws Mail before converting the contact list.
338 From the command line, execute the following:
340 outlook2claws-mail.pl fullpathname
344 You must export Outlook contact list as CSV file, choosing ALL the
345 fields available for exporting.
347 You must exit Claws Mail before converting the contact list.
349 From the command line, execute the following:
351 outlook2claws-mail.pl --csv fullpathname
354 For text files only works with fields described above. If you have
355 more complex examples send them to me, and I'll try to enhance the
358 For csv files you must export all fields (but only non empty fields
359 are added to the created Claws Mail address book) and the number
360 of fields expected is harcoded. Look for the $nboffields variable in
361 the script and change its value if you are sure you exported all
362 fields and script gives the 'unknown csv file format' error.
364 Contact: Ricardo Mones <ricardo@mones.org>
370 This perl script will convert an address book exported from The Bat!
371 into a Claws Mail address book.
374 (You must run claws-mail at least once before running this script.)
376 If Claws Mail is running, close it.
378 Export The Bat! Address Book to CSV file format with all fields
379 selected to YES and then start:
381 tb2claws-mail --tbfile=/full/path/to/thebat/addressbook.csv
383 The Bat! addressbook data will now be contained in Claws Mail'
384 addressbook, under the name 'The Bat! Address Book'.
386 Contact: Urke MMI <urke@gmx.net>
392 This python script will convert an Evolution vCard into a Claws Mail
396 (You must run claws-mail at least once before running this script.)
398 If Claws Mail is running, close it.
399 From the command line, execute the following:
401 vcard2xml.py source_file [destination_file]
403 When only <source_file> is specified it will overwrite (and
404 create a backup of) the existing addressbook.
405 When both arguments are suplied it will create a new additional
406 addressbook named as <destination_file>.
407 If the script encounters an error it will attempt to roll back
408 the changes and restore the original files.
410 Contact: Bogdan Sumanariu <bsumanariu@one5.ro>
412 --------------------------------------------------------------------------------
420 This perl script imports mbox files that are exported by Calypso.
421 It recreates the folder structure by scanning the "X-CalypsoFolder"
422 header and reincludes the attachments referenced in the
423 "X-CalypsoHtmlBody" "X-CalypsoAccount" "X-Attachment" headers.
426 Export the Calypso mailbox by selecting "Save to archive" and check
427 the "Save attachments" box.
429 Edit the script to set following variables (at the top of the file):
430 $mboxdir : path to the exported mbox, e.g. 'Archive' or '.'
431 $mboxfile : name of exported mbox, e.g. 'mail.txt'
432 $outdir : name of the MH folder to create, e.g. 'Calypso'
436 perl calypso_convert.pl
438 Finally, import that folder by either selecting "New mailbox" or
439 moving it into your existing directory and recreate the folder
440 structure manually (contentmenu from folderview).
442 Contact: Thorsten Maerz <torte@netztorte.de>
447 This perl script converts an mbox directory's contents into
448 Claws Mail' MH format.
452 Run the script using:
454 perl convert_mbox.pl MBOX MH_DIR
456 Move the outputted MH_DIR and its contents into your Claws Mail
457 Mail folder; in Claws Mail right-click the top-level folder and
458 choose 'Rebuild folder tree' from the popup menu.
460 Contact: Fred Marton <Fred.Marton@uni-bayreuth.de>
462 * kmail-mailbox2claws-mail.pl
465 This perl script converts a kmail mailbox into Claws Mail' mailbox.
469 Exit Claws Mail if running.
471 Run the script using:
473 kmail-mailbox2claws-mail.pl --kmaildir=/full/path/to/kmail/mailbox
475 Start Claws Mail and right-click the toplevel mailbox, i.e
476 "Mailbox (MH)", and select 'Rebuild folder tree'.
477 You may also need to run '/File/Folder/Check for new messages
482 --dry-run test mode, nothing is actually written
483 --help brief usage info
485 Contact: Paul Mangan <paul@claws-mail.org>
490 This python script integrates a Thunderbird folder tree into
495 The script receives two parameters from command-line:
496 <Thunderbird folder path> <Claws Mail folder path>
498 The best way to use it is to go to inside your Thunderbird
499 root mailfolder directory and invoke it as:
501 <path>\python2.4 <path>\tbird2claws.py . <path to Claws Mail>\Mail
503 Contact: Aleksandar Urosevic aka Urke MMI <urke@gmx.net>
505 --------------------------------------------------------------------------------
510 * acroread2claws-mail.pl
513 This perl script enables Adobe Reader 7 to send documents to
514 Claws Mail as attachments.
517 Make sure that the script is executable (chmod +x acroread2claws-mail.pl)
518 Start up Adobe Reader 7 (acroread)
519 Go to /Edit/Preferences/SendMail
520 Select any email client except 'System Mail (mail)'
521 Enter the path to this script in the alternate location box
523 You can then use 'File/Email' or the Email toolbar button to launch
524 claws-mail (if not already launched) and open a new compose window
525 with the PDF attached.
527 Contact: Paul Mangan <paul@claws-mail.org>
529 * claws-mail-compose-insert-files.pl
532 This script enables inserting files into the message body of a new
533 Claws Mail Compose window from the command line. Additionally To,
534 Cc, Bcc, Subject and files to attach to the message can be specified.
537 claws-mail-compose-insert-files.pl [options]
540 --to "Person One <mail@address.net>"
541 --cc "Person One <mail@address.net>"
542 --bcc "Person One <mail@address.net>"
543 --subject "My subject"
547 For multiple recipients separate the addresses with ','
548 e.g. --to "Person One <mail@address.net>,Person Two <mail2@address.net>"
549 --attach and --insert can be used multiple times
551 Contact: Paul Mangan <paul@claws-mail.org>
556 This perl script provides easy conversion of your filtering rules from
557 sylpheed's new filter system (>= 0.9.99) to the filtering system used in
559 It reads '~/.sylpheed-2.0/filter.xml' or '~/.sylpheed/filter.xml' and
560 writes '~/[CLAWS CONFIG DIR]/matcherrc'
563 Issue the following command from the 'tools' directory:
565 perl filter_conv_new.pl
567 That's it, the claws' filtering system is now implemented with your
568 previous rules applied.
573 Contact: Paul Mangan <paul@claws-mail.org>
579 This perl script provides easy conversion of your filtering rules
580 from sylpheed's old filter system (< 0.9.99) to the filtering system
582 It reads '~/.sylpheed/filterrc' and writes '~/.claws-mail/matcherrc'
585 Issue the following command from the 'tools' directory:
589 That's it, the new filtering system is now implemented with your
590 previous rules applied.
592 Contact: Paul Mangan <paul@claws-mail.org>
598 Add a 'Date:' header to the selected email(s) when such header is
599 missing. The correct date is guessed from other headers that contain
600 timestamp information (preferred: Fetchinfo header if found) or from
601 the file or system date as a fallback. The order or preference for the
602 date valuereplacement can be changed by editing the script.
603 This script can be used to fix messages that show non RFC-compliant
604 Date headers as well.
605 X-Original-Date is always added too if not already existing (if so,
606 it's left untouched), to keep track of the original value if any.
607 An existing Date: header is not overwritten unless you use the --force
609 Non RFC-compliant dates can be overwritten using the --rfc switch. Use
610 --strict to use strict RFC matching patterns for date values in other
616 Contact: wwp <wwp@claws-mail.org>
622 It's a wrapper to mairix, a tool that makes indexed searches
623 and shows search results in a virtual folder. Maildir, MH and
624 mbox formats are supported, see:
625 http://www.rpcurnow.force9.co.uk/mairix/
629 mairix.sh <mairix rcfile> [<mairix options>..]
632 mairix.sh ~/.mairixrc s:word1,word2
634 Contact: wwp <wwp@claws-mail.org>
637 * nautilus2claws-mail.sh
640 This script will recursively attach a number of selected
641 files/directories from Nautilus to a new blank e-mail.
644 Copy the script to $HOME/.gnome2/nautilus-scripts, chmod u+x,
645 and restart nautilus (killall -9 nautilus). You will now have
646 a right-click menu item: '/Scripts/nautilus2claws-mail.sh'
648 Contact: Reza Pakdel <hrpakdel@cpsc.ucalgary.ca>
654 This perl script enables OpenOffice.org to send documents to
655 Claws Mail as attachments.
658 OpenOffice.org Version 2.0
659 ----------------------------
660 This script is not needed for OOo version 2, which can work
661 directly with Claws Mail.
662 Go to 'Tools/Options/Internet/E-mail' and enter 'claws-mail'
665 OpenOffice.org Version 1.1.0
666 ----------------------------
667 Start up OpenOffice.org.
668 Go to 'Tools/Options/OpenOffice.org/External Programs'
669 Select either ''Mozilla 1.x (Option 1)', or
670 'Netscape 6.x - 7.0 (Option 1)' from the 'Program' selection
671 Enter the path to OOo2claws-mail.pl in the 'Path' box
672 or select it by clicking on the '...' button.
674 You can then use 'File/Send/Document as email' to launch
675 claws-mail (if not already launched) and open a new compose
676 window with the document attached.
678 OpenOffice.org Version 1.0
679 --------------------------
680 Start up OpenOffice.org.
681 Go to 'Tools/Options/OpenOffice.org/External Programs'
682 Enter the path to OOo2claws-mail.pl in the 'Program' box
683 or select it by clicking on the '...' button.
686 Contact: Paul Mangan <paul@claws-mail.org>
692 Open selected messages in POPFile control center to edit their
693 status. Requires that POPFile is running and that the messages
694 have been processed by it (X-POPFile-Link: header is expected).
695 POPFile control center opens with the web browser set in
699 popfile-link.sh <filename> [<filename>..]
702 Contact: wwp <wwp@claws-mail.org>
708 This script tries to recognise an attachment by using the 'file'
709 command and/or the file extension and then uses the available
710 utilities to make an effort to display it as text.
714 will show available conversion, the top:
718 .bz2 bzip2 -d < %f | strings
723 If there are multiple alternatives available, they are listed in
724 the ordder they are tried, like for .xls:
727 .xls catdoc -x -dutf-8
731 Go to /Configuration/Message View/External Programs and enter the
732 path to the script in the "Command for 'Display as text'" box.
733 Now when you right-click an attachment and choose 'Display as text'
734 this script will be invoked.
736 xlscat comes with the perl module Spreadsheet::Read, which is a
737 wrapper module over several parsers and supports ods, sxc, csv, xls,
738 xlsx, and sq. See https://metacpan.org/release/Spreadsheet-Read
740 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>
743 * thunderbird-filters-convertor.pl
746 This perl script converts Thunderbird filtering rules into Claws Mail
747 filtering rules. It can be run several times, once for each filter
748 configuration file in Thunderbird.
751 The script takes 3 arguments:
753 --tbird-file=PATH TO FILE The full path to the file to be converted
754 --mailbox-name=NAME The name of the Claws Mail mailbox
755 --account-name=NAME The name of the account to be used (optional)
757 --tbird-file must point to the Thunderbird filter file (msgFilterRules.dat)
758 that you want to convert, it must contain the full path to the file.
759 --mailbox-name should be given the name of your mailbox in Claws Mail, e.g.
760 if the top-level folder is 'Mailbox (MH)' then this option should be
762 --account-name is optional, only needed if you are creating account-specific
763 rules. This is the name of your account in Claws Mail, which should
764 correspond to an account that you had in Thunderbird, e.g. the acount whose
765 rules you are converting.
767 This script presumes that your folder hierarchy in Claws Mail matches the
768 one that you had in Thunderbird. If you used the tbird2claws.py script to
769 convert your Thunderbird mailbox, then the folder hierarchy should match.
771 If the Claws Mail filtering configuration file (matcherrc) does not exist,
772 the script will create it; if it does exist, the newly converted rules will
779 Contact: Paul Mangan <paul@claws-mail.org>
781 --------------------------------------------------------------------------------
789 This perl script converts a monochrome (1 bit) 48x48 pixels GIF file
790 into an X-Face graphic suitable for inclusion into custom headers of
791 Claws Mail. An X-Face allows to quickly identify (or be identified
792 as) the sender of a mail message in a xface-capable MUA (like Claws
796 After obtaining the desired image for your X-Face you should:
797 * scale it to 48x48 pixels (Image->Scale image on Gimp)
798 * down color depth to b/w (Image->Mode->Indexed selecting "Use
799 Black/White palette" and the desired dithering options (prior to
800 indexing doing Image->Colors->Threshold allows you to select the
801 b/w level if you don't want a dithered (dotty) image))
802 * save file as non-interlaced GIF
805 ./gif2xface < filename.gif > filename.xface
807 In filename.xface will be the X-Face header ready to use.
808 You can add a custom header in Claws Mail through Configuration->
809 Preferences per account, "Send" tab, check "Add user-defined header"
810 then "Edit..." if you want to add it via the Claws Mail interface, or do
812 echo "0:" `cat filename.xface` > ~/.claws-mail/customheaderrc
814 if you want to create the custom headers file yourself (Warning: this
815 method is valid only if you don't have any other custom header set or
818 Contact: Ricardo Mones <ricardo@mones.org>
824 This script is a message catalog translator's tool, it updates the .po
825 files named on the command line.
828 This script needs to be copied to and run from the 'po' directory.
830 ./update-po lang.po lang2.po ...
832 to update one or more <yourlang>.po files from the sourcecode files
833 named in POTFILES.in. The old .po file is save in a .po.old file.
835 For example, when you want to update fr.po, run ./update-po fr.po,
836 then edit fr.po to update your translation.
838 Contact: Wilbert Berendsen <wilbert@oswf.org> or the Claws Mail Team
840 --------------------------------------------------------------------------------
841 This file is Copyright 1999-2014 by the Claws Mail team.
842 See accompanying COPYING file for license details.
843 See each included script for copyright and license details.
848 This script tries to fix thread parenting for two or more messages
853 Menu name: Reparent (fix threading)
854 Command: cm-reparent.pl %F
856 Then select from the message list all files that should be re-parented
858 Then invoke the action
861 $ perldoc cm-reparent.pl
867 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>
872 This script tries to break thread parenting for one or more messages
877 Menu name: Unthread (break threading)
878 Command: cm-break.pl %F
880 Then select from the message list all files that should be un-threaded
882 Then invoke the action
885 $ perldoc cm-break.pl
891 Contact: H.Merijn Brand <h.m.brand@xs4all.nl>