1 <?xml version="1.0" encoding="utf-8"?>
2 <section id="ch_advanced">
3 <title>Advanced features</title>
4 <section id="adv_actions">
7 Actions allow you to use all the power of the Unix command-line with
8 your emails. You can define various commands, taking parameters such
9 as the current email file, a list of emails, the currently selected
10 text, and so on. In this way, you'll be able to perform various tasks
11 such as editing a raw mail in your text editor,
12 <emphasis>hide</emphasis> what you mean using ROT-13, apply patches
13 contained in emails directly, and so on. The only limit is your
14 imagination. You can create and configure Actions via the
15 <quote>/Configuration/Actions...</quote> menu.
18 The <quote>Tools/Actions/</quote> menu will contain one submenu
19 item for each action that you have created. When you have selected
20 one or more messages in the Message List, or are viewing a message
21 in the Message View, selecting one of these menu items will invoke
22 the action, and, depending on how it was defined, will pass the
26 Additionally, it is possible to add toolbar entries for your
27 actions. To do so, open the <quote>Configuration/Preferences</quote>
28 menu and select <quote>Toolbars/Main Window</quote>.
29 Select <quote>User Action</quote> in the <quote>Item type</quote>
30 dropdown menu, then select the Action in the <quote>Event executed on click</quote>
31 dropdown menu, and click the <quote>Icon</quote> button to select the
32 icon that you want to use.
36 <title>Simple <quote>Open With...</quote></title>
40 Menu name: <emphasis>Open with/kate</emphasis>
41 Command Line: <command>kate %p</command>
45 Opens the file of the selected decoded MIME part
46 (<emphasis>%p</emphasis>) with the <emphasis>kate</emphasis> text
54 <title>Spam management using <ulink
55 url="http://bogofilter.sourceforge.net/">Bogofilter</ulink>
60 Menu name: <emphasis>Bogofilter/Mark as Ham</emphasis>
61 Command Line: <command>bogofilter -n -v -B "%f"</command>
65 Marks the currently selected mails (<emphasis>%f</emphasis>) as
66 <quote>not spam</quote> using <emphasis>Bogofilter</emphasis>.
72 Menu name: <emphasis>Bogofilter/Mark as Spam</emphasis>
73 Command Line: <command>bogofilter -s -v -B "%f"</command>
77 Marks the currently selected mails (<emphasis>%f</emphasis>) as
78 <quote>spam</quote> using <emphasis>Bogofilter</emphasis>.
85 <title>Search Google using an external script</title>
89 Menu name: <emphasis>Search/Google</emphasis>
90 Command Line: <command>|/path/to/google_search.pl</command>
94 Searches Google for the currently selected text
95 (<emphasis>|</emphasis>) using the external script <emphasis><ulink
96 url="http://www.claws-mail.org/tools.php"
97 >google_search.pl</ulink></emphasis>.
105 <section id="adv_templates">
106 <title>Templates</title>
108 Templates are used in composition windows, and act as a model for
109 emails. Templates can be filled with static text and dynamic parts,
110 such as the original sender's name (<quote>Dear %N, ...</quote>),
111 the date, etc. When applying a template, the dynamic fields will be
112 replaced with the relevant values. You can configure templates via
113 the <quote>Tools</quote> menu.
115 When applying a template, you will be asked to <quote>Insert</quote>
116 or <quote>Replace</quote>, the difference between replacing and
117 inserting is only concerned with the message body.
118 <quote>Replace</quote> will replace the current composition window
119 message body with the body defined in the template, clearing it if
120 the template body is empty. <quote>Insert</quote> will insert
121 the template's body, if set, at the current cursor position.
123 Whether you choose to Insert or Replace, any To, Cc or Bcc field
124 that is defined in the template will be appended to the compose
125 window's recipients list. If it is defined, the template's Subject
126 will always replace the compose window's Subject.
128 Symbols can be used in all parts of the templates and will be
129 substituted with their respective dynamic value if possible, otherwise
130 no value will be used. This often makes more sense if you apply a
131 template when replying or forwarding, otherwise most of the symbols
132 value will be undefined. There is no restriction on which symbols can
133 be used in template parts, even if inserting the body (%M or %Q) may
134 make no sense in common situations.
136 When applying a template, the body is processed first, then the To, Cc,
137 Bcc and Subject fields follow.
139 Further information and examples of usage can be found in the
140 user-contributed FAQ on the Claws Mail website <ulink
141 url="http://www.claws-mail.org/faq/"
142 >http://www.claws-mail.org/faq/</ulink>.
145 <section id="adv_processing">
146 <title>Processing</title>
148 Processing rules are the same as Filtering rules, except that they are
149 applied when entering a folder or when manually applied from a folder's
150 context menu and apply only to this folder. You can use them to automatically
151 move old mails into an archive folder, or for further dispatching of
152 emails, and more. You can set each folder's Processing rules by
153 right-clicking on it.
155 Processing rules are accompanied by Pre-processing and Post-processing
156 rules. Like Processing rules, they apply when opening a folder or manually
157 applying them from a folder's context menu, but like Filtering rules,
158 they are shared across all folders. You can configure them from the
159 <quote>Tools</quote> menu. Pre-processing rules are executed before the
160 folder's specific Processing rules, while Post-processing rules are executed
164 <section id="adv_colour_labels">
165 <title>Colour Labels</title>
167 Colour labels can be used to denote a message as having a particular
168 significance. To set a colour label simply right-click a message in the
169 Message List and use the <quote>Color label</quote> submenu.
171 Colour labels are user-configurable. Both the colour and the label can
172 be set by the user. Preferences can be found on the
173 <quote>Configuration/Preferences/Display/Colors</quote> page.
176 <section id="adv_tags">
179 Tags are short text notes which may be set on messages. They are useful
180 for classifying messages with your own words. These tags can be used
181 later to find the mails with Quick Search or to manage them with
182 filtering or processing rules, for example.
184 Tagged messages are displayed with a yellow background at the top of
185 the Message View. This line shows all tags associated with the
186 message. You can enable the "Tags" column in the Message List, so
187 tagged items can be seen without having to open the message.
189 Setting of tags is done by right-clicking on the message in the Message
190 List or by the corresponding option in Message menu. A panel with the
191 existing tags is shown and you can select some of them or just add a
192 new one. Removal of existing tags is also allowed, of course.
194 Once tags exist it's even easier, as the context menu allows you to
195 set and unset tags with just one click to the selected messages.
196 Mixed selections of tagged and untagged messages are allowed, and
197 Claws Mail is clever enough to do what you want to do in any case.
200 <section id="adv_ml_support">
201 <title>Mailing-List support</title>
203 Claws Mail offers mailing-list support from the
204 <quote>Message/Mailing-List/</quote> submenu. When you have a
205 mailing-list message selected, the submenu allows you to quickly
206 initiate subscribing, unsubscribing, posting, getting help, contacting
207 the list owner, and viewing the list archive; either by opening a new
208 Compose window with the appropriate address pre-filled, or by opening
209 the URL in your web browser.
212 <section id="adv_plugins">
213 <title>Plugins</title>
215 Plugins are the mechanism for extending Claws Mail' capabilities.
216 For example, imagine that you want to store your mails in a remote
217 <acronym>SQL</acronym> database. In most mailers out there this is
218 simply impossible without reworking the internals of the mailer. With
219 Claws Mail you can simply write a plugin to achieve the task.
221 This is just an example of the possibilities. A good number of plugins
222 developed for Claws Mail already exist, and more are to come. The
223 <link linkend="ch_plugins">Extending Claws Mail section</link>
224 gives details of them.
227 <section id="deploying">
228 <title>Deploying Claws Mail</title>
230 The initial configuration wizard tries to guess various fields using
231 information gathered from the system, such as username, hostname, and
232 more. As it is oriented towards general use, the default values often
233 have to be fixed. However, this wizard is customisable, in a manner
234 designed to allow system administrators to deploy Claws Mail easily
235 over various users of one machine, or even over multiple machines
236 installed via some replication tool.
238 The first part consists of creating a wizard configuration template
239 and setting the various default parameters of a new Claws Mail
245 Start with a user who does not have a <filename class="directory"
246 >~/.claws-mail</filename> directory, ideally a new user.
251 Start Claws Mail and go through the wizard. The values you fill in
252 will be of no use for the future deployment, so you can click
258 Once the wizard is finished and you have Claws Mail' main window
259 opened, configure the various defaults you want to have in the master.
260 You can load plugins, add people or LDAP servers in the addressbook,
261 create filtering rules, and so on.
266 If needed, and if the deployed Claws Mail will use MH folders, you
267 can create subdirectories in the mailbox.
272 Next, quit Claws Mail.
277 Now, edit the newly created wizard template file,
278 <filename>~/.claws-mail/accountrc.tmpl</filename>. In this file,
279 you will see different variables, corresponding to the wizard's fields.
280 You can leave some commented, in which case the usual default will be
281 used, or specify values or variables. Not all fields can contain
282 variables; for example, <literal>smtpauth</literal>,
283 <literal>smtpssl</literal> and <literal>recvssl</literal> are booleans,
284 either 0 or 1, and <literal>recvtype</literal> is an integer value. The
285 other fields, like <literal>name</literal>, <literal>email</literal>,
286 or <literal>recvuser</literal>, are parsed by the wizard and the
287 variables they contain are replaced by values. This allows you to
288 specify everything as needed for your site, even if you have strange
289 server names or server logins.
294 Save this file, and delete both
295 <filename>~/.claws-mail/accountrc</filename>, (which contains your
297 <filename>~/.claws-mail/folderlist.xml</filename>, (so that the
298 folder tree will be correctly parsed for new users). Recursively copy
299 <filename class="directory">.claws-mail</filename> to
300 <filename class="directory">/etc/skel/</filename>; if the deployed
301 Claws Mail will use MH folders, also copy the created
302 <filename class="directory">Mail</filename> directory. chown all of
303 <filename class="directory">/etc/skel/.claws-mail</filename>
304 and <filename class="directory">/etc/skel/Mail</filename> to
305 <literal>root:root</literal> for security reasons.
310 Test! Create a new user, login as that user, run Claws Mail. If you
311 filled everything as you wanted, this user will just have to fill in
317 Now, if you're creating a master for a site-wide deployment, you can
318 continue with this process. If you were just doing it for one machine,
324 Here are the different variables of the <filename>accountrc.tmpl</filename>
329 <term><literal>domain</literal></term>
332 Your domain name (example.com). If not set, it'll be extracted from the
338 <term><literal>name</literal></term>
341 The user's name. If not set, it'll be extracted from Unix login
342 information, which is usually ok.
347 <term><literal>email</literal></term>
350 The user's email. If not set, it'll be extracted from
351 <literal>$name</literal> and <literal>$domain</literal>.
356 <term><literal>organization</literal></term>
359 Your organization. If not set, it'll be empty.
364 <term><literal>smtpserver</literal></term>
367 The SMTP server to use. If not set, it'll be
368 <literal>smtp.$domain</literal>.
373 <term><literal>smtpauth</literal></term>
376 0 or 1. Whether to authenticate on the SMTP server. If not set, it'll
382 <term><literal>smtpuser</literal></term>
385 The login on the SMTP server. If not set, it'll be empty (same login as
386 for reception will be used).
391 <term><literal>smtppass</literal></term>
394 The password on the SMTP server. If not set, it'll be empty (if
395 <literal>smtppass</literal> is empty but <literal>smtpuser</literal> is
396 not, the user will be asked for the password).
401 <term><literal>recvtype</literal></term>
404 The type of server to receive from. 0 for POP3, 3 for IMAP4, 5 for a
405 local MBOX file. If not set, it'll be 0 (POP3).
410 <term><literal>recvserver</literal></term>
413 The reception server. If not set, it'll be
414 <literal>(pop|imap).$domain</literal>, depending on
415 <literal>$recvtype</literal>.
420 <term><literal>recvuser</literal></term>
423 The login on the reception server. If not set, it'll be extracted from
424 the Unix login information.
429 <term><literal>recvpass</literal></term>
432 The password on the reception server. If not set, it'll be empty (the
433 user will be asked for it once per session).
438 <term><literal>imapdir</literal></term>
441 The IMAP subdirectory. If not set, it'll be empty, which is often
447 <term><literal>mboxfile</literal></term>
450 The MBOX file to receive from if <literal>$recvtype</literal> is 5.
451 If not set, <literal>/var/mail/$LOGIN</literal>.
456 <term><literal>mailbox</literal></term>
459 The MH mailbox to store mail in (for <literal>$recvtype</literal> 0 or
460 5). If not set, it'll be <quote>Mail</quote>.
465 <term><literal>smtpssl</literal></term>
468 0 or 1. Whether to use SSL for sending mail. If not set, it'll be 0.
473 <term><literal>recvssl</literal></term>
476 0 or 1. Whether to use SSL for receiving mail. If not set, it'll be 0.
482 Here are the different variables you can use in the
483 <literal>domain</literal>, <literal>name</literal>,
484 <literal>email</literal>, <literal>organization</literal>,
485 <literal>smtpserver</literal>, <literal>smtpuser</literal>,
486 <literal>smtppass</literal>, <literal>recvserver</literal>,
487 <literal>recvuser</literal>, <literal>recvpass</literal>,
488 <literal>imapdir</literal>, <literal>mboxfile</literal> and
489 <literal>mailbox</literal> fields:
493 <term><literal>$DEFAULTDOMAIN</literal></term>
496 The domain name as extracted from Unix hostname information.
502 <term><literal>$DOMAIN</literal></term>
505 The domain name as set in the domain variable, the first of the
511 <term><literal>$USERNAME</literal></term>
513 <para>The user's real name.</para>
517 <term><literal>$LOGIN</literal></term>
519 <para>The user's Unix login.</para>
523 <term><literal>$NAME_MAIL</literal></term>
526 The user's real name as set in the name variable of the template field,
527 in lowercase and with spaces replaced by dots.
528 <quote>Colin Leroy</quote> becomes <quote>colin.leroy</quote>.
533 <term><literal>$EMAIL</literal></term>
536 The email address as set in the email variable of the template field.
542 Be sure not to use a variable before defining it.
545 <section id="adv_hidden">
546 <title>Hidden preferences</title>
548 There are a number of hidden preferences in Claws Mail, preferences
549 that some users who we wanted to please couldn't live without, but
550 which did not have a place in the GUI in our opinion. You can find the
551 following, and change them while Claws Mail is not running, in
552 <filename>~/.claws-mail/clawsrc</filename>.
555 There's a small tool written in Perl-GTK called Clawsker which
556 provides a user-friendly GUI for tweaking these settings instead of
557 direct editing of <filename>clawsrc</filename>. You can read more
558 about it on the <ulink
559 url="http://www.claws-mail.org/clawsker.php">Clawsker page</ulink>.
563 <term><literal>address_search_wildcard</literal></term>
566 TAB-address completion in the Compose window will match any part of the
567 string (1) or just the start of the string (0).
572 <term><literal>addressbook_use_editaddress_dialog</literal></term>
575 Use a separate dialogue to edit a person's details.
576 '0' will use a form embedded in the addressbook's main window.
581 <term><literal>bold_unread</literal></term>
584 Show unread messages in the Message List using a bold font.
589 <term><literal>cache_max_mem_usage</literal></term>
592 The maximum amount of memory to use to cache messages, in kB.
597 <term><literal>cache_min_keep_time</literal></term>
600 The minimum time in minutes to keep a cache in memory. Caches more
601 recent than this time will not be freed, even if the memory usage is
607 <term><literal>compose_no_markup</literal></term>
610 Don't use bold and italic text in Compose dialogue's account selector.
615 <term><literal>diff_added_color</literal></term>
616 <term><literal>diff_deleted_color</literal></term>
617 <term><literal>diff_hunk_color</literal></term>
620 Colors to use when displaying attachments in unified diff format.
625 <term><literal>emphasis_color</literal></term>
628 The colour used for the X-Mailer line when its value is Claws Mail.
633 <term><literal>enable_dotted_lines</literal></term>
636 Use the <emphasis>old</emphasis> dotted line look in the main window
637 GtkTreeView components, (Folder List and Message List), instead of the
638 <emphasis>modern</emphasis> lineless look.
643 <term><literal>enable_hscrollbar</literal></term>
646 Enable the horizontal scrollbar in the Message List.
651 <term><literal>enable_swap_from</literal></term>
654 Display the sender's email address in the To column of the
655 Sent folder instead of the recipient's.
660 <term><literal>folder_search_wildcard</literal></term>
663 The type-ahead function in the Select Folder window will match any
664 part of the folder name (1) or just the start of the folder name (0).
669 <term><literal>folderview_vscrollbar_policy</literal></term>
672 Specify the policy of vertical scrollbar of Folder List.
673 '0' is always shown, '1' is automatic, '2' is always hidden.
678 <term><literal>hover_timeout</literal></term>
681 Time in milliseconds that will cause a folder tree to expand
682 when the mouse cursor is held over it during drag 'n' drop.
687 <term><literal>live_dangerously</literal></term>
690 Don't ask for confirmation before definitive deletion of emails.
695 <term><literal>log_error_color</literal></term>
696 <term><literal>log_in_color</literal></term>
697 <term><literal>log_msg_color</literal></term>
698 <term><literal>log_out_color</literal></term>
699 <term><literal>log_warn_color</literal></term>
700 <term><literal>log_status_ok_color</literal></term>
701 <term><literal>log_status_nok_color</literal></term>
702 <term><literal>log_status_skip_color</literal></term>
705 The colours used in the log window.
710 <term><literal>msgview_date_format</literal></term>
713 0 or 1. Use the same user-defined date format in the Message
714 View as is used in the Message List. Default is 0, turned off.
719 <term><literal>outgoing_fallback_to_ascii</literal></term>
722 0 or 1. The outgoing encoding of a message will use 7bit US-ASCII
723 whenever it is suitable for the message content, ignoring the
724 <quote>Outgoing encoding</quote> option unless it is necessary. Turning
725 this option off forces the user-defined encoding to be used, regardless
726 of message content. Default is 1, turned on.
731 <term><literal>primary_paste_unselects</literal></term>
734 0 or 1. Causes the primary buffer to be cleared and the insertion
735 point to be repositioned when the middle mouse button is used
736 for pasting text. Default is 0, turned off.
741 <term><literal>respect_flowed_format</literal></term>
744 0 or 1. Respect format=flowed on text/plain message parts. This
745 will cause some mails to have long lines, but will fix some URLs
746 that would otherwise be wrapped. Default is 0, turned off.
751 <term><literal>save_parts_readwrite</literal></term>
754 Saves temporary files when opening attachment with write bit set.
759 <term><literal>show_compose_margin</literal></term>
762 0 or 1. Adds margins to the message text area in the Compose window.
763 Default is 0, turned off.
768 <term><literal>show_inline_attachments</literal></term>
771 0 or 1. Show inline attachments in MimeView.
772 Default is 1, turned on.
777 <term><literal>skip_ssl_cert_check</literal></term>
780 Disables the verification of SSL certificates.
785 <term><literal>statusbar_update_step</literal></term>
788 Update stepping in progress bars.
793 <term><literal>stripes_color_offset</literal></term>
796 Specify the value to use when creating alternately coloured lines in
797 GtkTreeView components. The smaller the value, the less visible the
798 difference in the alternating colours of the lines.
803 <term><literal>summary_from_show</literal></term>
806 Controls the data displayed in the From column in the Message List.
807 Default value 0 displays name, 1 displays address and 2 displays both
813 <term><literal>textview_cursor_visible</literal></term>
816 Display the cursor in the message view.
821 <term><literal>thread_by_subject_max_age</literal></term>
824 Number of days to include a message in a thread when using
825 <quote>Thread using subject in addition to standard headers</quote>.
830 <term><literal>toolbar_detachable</literal></term>
833 Show handles in the toolbars.
838 <term><literal>two_line_vertical</literal></term>
841 Spread message list information over two lines when using the
847 <term><literal>unsafe_ssl_certs</literal></term>
850 Allows Claws to remember multiple SSL certificates for a given
851 server/port. This is disabled by default.
856 <term><literal>use_networkmanager</literal></term>
859 Use NetworkManager to switch offline automatically. This is enabled
865 <term><literal>use_stripes_everywhere</literal></term>
868 Enable alternately coloured lines in GtkTreeView components.
873 <term><literal>use_stripes_in_summaries</literal></term>
876 Enable alternately coloured lines in the main window GtkTreeView
877 components, (Folder List and Message List). The only useful way to
878 use this option is to set it to 0 when use_stripes_everywhere is set
884 <term><literal>utf8_instead_of_locale_for_broken_mail</literal></term>
887 Use UTF-8 encoding for broken mails instead of current locale.
892 <term><literal>warn_dnd</literal></term>
895 Display a confirmation dialogue on drag 'n' drop of folders.
900 <term><literal>zero_replacement_char</literal></term>
903 Character to show in Folder List counter columns when a folder contains
904 no messages. Default value is 0.
910 <section id="adv_autofaces">
911 <title>Autofaces</title>
913 Claws Mail allows setting the Face and X-Face headers directly
914 from files, either globally for all defined accounts
915 or on a per-account basis. These files must be placed in the
916 <filename>~/.claws-mail/autofaces/</filename> directory.
919 If they exist, the global Face and/or X-Face headers for all
920 accounts are taken from the <filename>face</filename> and/or
921 <filename>xface</filename> files respectively. In a similar
922 manner, Face and/or X-Face headers for a specific account can
923 be provided by <filename>face.</filename><emphasis>accountname</emphasis>
924 and/or <filename>xface.</filename><emphasis>accountname</emphasis>,
925 where <emphasis>accountname</emphasis> is the name of the account you
926 want this header to be associated with.
929 If the name of the account contains characters which may be unsuitable
930 for the underlying filesystem (including spaces) these are replaced by
931 underscores (<quote>_</quote>) when searching for the autofaces of
932 that account. For example, if your account is called
933 <quote><My Mail></quote>, the name for the X-Face filename for
934 that account would be
935 <filename>~/.claws-mail/autofaces/xface._My_Mail_</filename>.
936 Be aware that this feature doesn't check the content of the files,
937 or for duplication of headers, (most mailers, including Claws
938 Mail, will ignore duplicates and display the last one only).