-
-What is Sylpheed Claws?
-----------------------
+README.claws
+------------
+
+Summary:
+
+1. What is Sylpheed Claws?
+2. Switching between Sylpheed Claws and Sylpheed
+ * From Sylpheed to Sylpheed Claws
+ * From Sylpheed Claws to Sylpheed
+3. Things Claws does different
+ * auto address replacement in summary view
+ * manual selection of MIME types for attachments
+ * sharing mail folders
+ * default to address for folders
+ * threading mode per folder
+ * simplify subject string
+ * pixmap themes
+ * user definable actions
+ * spell checking (with installation instructions)
+ * new cache
+ * selective download, delete messages on server
+4. How to contribute
+5. How to request features
+6. Installing Claws from CVS
+7. History
+
+
+
+1. What is Sylpheed Claws?
+--------------------------
Sylpheed Claws is a bleeding edge branch of Sylpheed, a light weight mail
user agent for UNIX. Features in this branch may (or may not) end up in
Sylpheed or Main.
-Switching to Claws
-------------------
-
-From the user perspective Claws is just a fancy Sylpheed, so it uses the
-same sylpheed setting files located in ~/.sylpheed.
-It's always a good idea to back up all files in ~/.sylpheed in case
-you want to switch back to Sylpheed. (You don't have to backup the
-directories.)
+2. Switching between Sylpheed Claws and Sylpheed
+------------------------------------------------
-There are some things that frequently come up when switching to Claws:
+ From Sylpheed to Sylpheed Claws
+ -------------------------------
+ From the user perspective Claws is just a fancy Sylpheed, so it uses the
+ same sylpheed setting files located in ~/.sylpheed.
-* When replying, the original sender's text is not quoted anymore.
+ It's always a good idea to back up all files in ~/.sylpheed in case
+ you want to switch back to Sylpheed. (You don't have to backup the
+ directories.)
- Claws has a different quote format handler. Add either %Q or %q to the
- quote format text. Also click the button "Description of symbols"
- for more quotation symbols.
+ There are some things that frequently come up when switching to Claws:
-* Why does the advanced filtering system not work?
+ * Why does the advanced filtering system not work?
- Claws uses the new filtering system as soon as you define a new rule for it.
- Your old sylpheed filter rules will not be used. In subdirectory tools/ of
- the distribution there is a Perl script called filter_conv.pl which convers
- old filter rules to the claws filtering system.
+ Claws uses the new filtering system as soon as you define a new rule for it.
+ Your old sylpheed filter rules will not be used. In subdirectory tools/ of
+ the distribution there is a Perl script called filter_conv.pl which converts
+ old filter rules to the claws filtering system.
-* What happened to the compose email and compose news buttons?
+ * What happened to the compose email and compose news buttons?
+
+ There's a composite button for both composing mail and news. You can toggle
+ between composing mail and news by clicking on the button with the triangle.
+
+
+ * And to the Preferences and Execute buttons?
+
+ Sorry, they're not there.
+
- There's a composite button for both composing mail and news. You can toggle
- between composing mail and news by clicking on the button with the triangle.
+ From Sylpheed Claws to Sylpheed
+ -------------------------------
+ Moving from Claws to Sylpheed is also simple. Sylpheed should neglect the things
+ Claws put in the settings files. This also means that the old rules will work
+ again.
-* And to the Preferences and Execute buttons?
+ If you want to switch back to Claws at a later time, make sure you back up at least
+ ~/.sylpheed/matcherrc (the Claws filtering rules), and ~/.sylpheed/sylpheedrc
+ (which may have some claws specific settings).
- Sorry, they're not there.
+ When switching back to Sylpheed you will not lose messages or message flags (color
+ labels, read / unread status of messages).
+ Switching between Sylpheed Claws and Sylpheed on a regular basis
+ ----------------------------------------------------------------
+ If you want to have both claws and main installed concurrently simply pass them
+ a different --prefix when doing ./configure. Then use the script 'sylpheed-switcher',
+ (which is provided in the tools directory), to launch the version you require without
+ fear of losing specific settings related to either claws or main. Further details can
+ be found in tools/README.
-Things Claws does different
----------------------------
+3. Things Claws does different
+------------------------------
Claws does a lot of things different. Here a quick run-down of things that
-are hardly noticable, but deserve mentioning:
+are hardly noticeable, but deserve mentioning:
* auto address replacement in summary view
+-----------------------------------
This matches a plain email address with a person in the address book. This
feature is enabled in Common Preferences | Tab Display | SummaryView Group |
Display sender using addressbook
* manual selection of MIME types for attachments
+-----------------------------------
You can change the MIME type of an attachment by right-clicking in the
attachment list, selecting Property in the menu. The MIME type list
is a combo box with the known MIME types.
* sharing mail folders
- You can also share or use shared mail folders. Right-click a folder and
+ -----------------------------------
+ You can also share or use shared mail folders. Right-click a folder and
select Property. Change the Folder chmod setting.
* default to address for folders
- Most people filter mailing list mails to separate folders. Claws allows
+ -----------------------------------
+ Most people filter mailing list mails to separate folders. Claws allows
you to associate a folder with a mailing list or a person. Right-click a
folder, select Property and change the Default To setting. When you
- compose a new mail, when this folder is selected the recepient address
+ compose a new mail, when this folder is selected the recipient address
will be set to this address.
(NOTE: this is also a shoot-yourself-in-the-foot-setting! If you want
to send a private mail, don't have a folder selected with this setting
set.)
-* threading mode per folder
- Folders can have their own threading and sorting mode. Just select a
- folder, and set their threading and sorting mode.
-
-* spell checking
- Spell checking using pspell library (http://pspell.sourceforge.net)
- can can be compiled in. You must have dictionaries available. You can
- use aspell (http://aspell.sourceforge.net) or ispell dictionaries. For
- the former, you have to install aspell. For the latter, you have to
- install the pspell-ispell module (see pspell home page) in addition
- to ispell. Spell checking can then enabled in Configuration |Common
- Preferences | Compose. Use the file selector and select any file in
- the directory where the dictionaries (*.pwli) are. Do not simply enter
- the path in the text entry. You can select the default dictionary.
- When composing, use the right-button click.
-
-* quotation wrapping
- Quotation is wrapped like VIM would wrap it (at least that was the
- goal). To enable this feature go to Common preferences->Compose and
- make sure Wrap quotation is enabled. The text is automatically
- wrapped when you reply to an e-mail if this feature is enabled.
+* pixmap themes
+-----------------------------------
+ To use different icon sets you need to create a directory:
+ mkdir ~/.sylpheed/themes
+ Icon sets should be placed in this directory in their own sub-directory.
+ They are then selectable from Pixmap Theme on the Interface tab of Commmon
+ Preferences.
+
+* user definable actions
+-----------------------------------
+ The "actions" feature is a convenient way for the user to launch external
+ commands to process a complete message file including headers and body or
+ just one of its parts. It allows also the use of an external command to
+ filter the whole text or just a selected part in the message window or in
+ the compose window. This is a generic tool that allows to do any uncommon
+ actions on the messages, and thus extends the possibilities of Sylpheed.
+ For example, Sylpheed does not include the rot13 cyphering algorithm
+ popular in some newsgroups. It does not support natively armored
+ encryption or clear signing. It does not support uuencoded messages. As
+ all these features can be handled by external programs, the actions
+ provide a convenient way to use them from the menu bar.
+
+ a. Usage
+ --------
+
+ To create a new action, go to Configuration -> Actions.... The "Action
+ Creation" dialog offers to enter the Menu name that will trigger the
+ command. The created menu will be found in the Tools -> Actions submenu.
+ By inserting a slash / in the menu name, you create a submenu.
+
+ The command is entered in the Command line entry. Note that Sylpheed
+ stores every single email in a separate file. This allows to use the
+ following syntax for the command:
+
+ * %f denotes the file name of the selected message. If you selected more
+ than one, then the command will be launched for each message with
+ the appropriate file name
+ * %F denotes the list of the file names of the selected message. If only
+ one message is selected, this amounts to %f, but if more messages
+ are selected, then the command will be launched only once with the
+ list of the file names. (You can use both %f and %F in one command:
+ then the command will be launched for each selected message with
+ the name of this message and with the list of all selected
+ messages. I did not find a practical example for this.)
+ * %p denotes the current selected message part of a multipart message.
+ The part is decoded accordingly. If the message is not a multipart
+ message, it denotes the message body.
+ * Prepending >: this will allow you to send to the command's standard
+ input a text that you will enter in a dialog window.
+ * Prepending *: this will allow you to send to the command's standard
+ input a text that you will enter in a dialog window. But in
+ contrast to prepending >, the entered text is hidden (useful when
+ entering passwords).
+ * Appending an ampersand &: this will run the command asynchronously.
+ That means "fire and forget". Sylpheed won't wait for the command
+ to finish, nor will it catch its output or its error messages.
+ * Prepending the vertical bar | (pipe-in): this will send the current
+ displayed text or the current selected text from the message view
+ or the compose window to the command standard input. The command
+ will silently fail if more than one message is selected.
+ * Appending the vertical bar | (pipe-out): this will replace the current
+ displayed text or the current selected text from the message window
+ or the compose window by the command standard output. The command
+ will silently fail if more than one message is selected.
+
+ Note: It is not possible to use actions containing %f, %F or %p from the
+ compose window.
+
+ When a command is run, and unless it is run asynchronously, Sylpheed will
+ be insensitive to any interaction and it will wait for the command to
+ finish. If the command takes too long (5 seconds), it will popup a dialog
+ window allowing to stop it. This dialog will also be displayed as soon as
+ the command has some output: error messages or even its standard output
+ when the command is not a "pipe-out" command. When multiple commands are
+ being run, they are run in parallel and each command output is separated
+ from the outputs of the others.
+
+ a. Examples
+ -----------
+
+ Here are some examples that are listed in the same syntax as used for
+ storing the actions list. You can copy and past the definition in your
+ ~/.sylpheed/actionsrc file (exit Sylpheed before). The syntax is very
+ simple: one line per action, each action contains the menu name and the
+ command line separated by a colon and a space ": "
+
+ Purpose: rot13 cyphering
+ Definition: Rot13: |tr a-zA-Z n-za-mN-ZA-M|
+ Details: This will apply the rot13 cyphering algorithm to the
+ (selected) text in the message/compose view.
+
+ Purpose: Decoding uuencoded messages
+ Definition: UUdeview: xdeview %F&
+ Details: xdeview comes with uudeview. If an encoded file is split in
+ multiple messages, just select them all and run the command.
+
+ Purpose: Display uuencoded image
+ Definition: Display uuencoded: uudec %f&
+ Details: Displays uuencoded files. The uudec[1] script can be found in
+ the 'tools' directory of the distribution package.
+
+ Purpose: Alter messages
+ Definition: Edit message: gvim -f %F
+ Details: Allows editing of any received message. Can be used to remove
+ unneeded message parts, etc.
+
+ Purpose: Pretty format
+ Definition: Par: |par 72Tbgjqw74bEe B=._A_a 72bg|
+ Details: par is a utility that can pretty format any text. It does a
+ very good job in indenting quoted messages, and justifying
+ text. Used when composing a message
+
+ Purpose: Browse
+ Definition: Part/Dillo: dillo %p&
+ Details: Browse the selected message part in Dillo.
+
+ Purpose: Clear Sign
+ Definition: GnuPG/Clear Sign: |gpg-sign-syl|
+ Details: Clear sign a message. The gpg-sign-syl[2] script is responsible
+ for asking the passphrase and for running gnupg.
+
+ Purpose: Verify Clear Signed
+ Definition: GnuPG/Verify: |gpg --no-tty --verify
+ Details: Verify clear signed messages. The result is displayed in the
+ actions output dialog.
+
+ Purpose: Decrypt ASCII Armored
+ Definition: GnuPG/Decrypt: *gpg --no-tty --command-fd 0 --passphrase-fd 0 --decrypt %f|
+ Details: Decrypt ASCII armored messages. The passphrase is entered
+ into the opened action's input dialog.
+
+ [1] The uudec script can be found in the 'tools' directory of the
+ distribution package. It needs uudecode and ImageMagick's display. The
+ latter can be replaced by any image viewer that can get input from
+ standard input. The script could also be modified to use temporary files
+ instead of standard input.
+
+ [2] The gpg-sign-syl script can be found in the 'tools' directory of the
+ distribution package.
+
+* Spell checker for Sylpheed-Claws
+-----------------------------------
+ a. Requirements
+ b. Configuration and installation
+ c. Usage
+ d. Known problems
+
+ a. Requirements
+ ---------------
+
+ The spell checker in sylpheed requires the Portable Spell Checker
+ Interface Library pspell (http://pspell.sourceforge.net), version
+ 0.12.2 or newer.
+
+ You will need also the actual spell checker. There are two alternatives:
+
+ i) ispell (http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html),
+ which is found on quasi every distribution. You have then to
+ install the pspell-ispell module found at the pspell site.
+
+ ii) aspell (http://aspell.sourceforge.net). This spell checker
+ must be installed after installing pspell. The version tested
+ is .33.7 alpha. It has three different suggestion modes (fast
+ -default- , normal, bad spellers), has the ability to learn
+ from mistakes (default).
+
+ And, last but not least, do not forget to install the dictionaries. Check
+ the corresponding spell checker home page for more information on this.
+
+ b. Configuring Sylpheed
+ -----------------------
+
+ Spell checking is enabled if you configure sylpheed appropriately. Add
+ the option '--enable-pspell' when configuring. E.g.:
+
+ ./configure --enable-pspell
+
+ The configure script needs 'pspell-config' in your path. If it is
+ in weird places, use '--with-pspell-prefix' to tell the path to
+ pspell-config. E.g., if pspell-config is really
+ /foo/bar/pspell-config, then use:
+
+ ./configure --enable-pspell --with-pspell-prefix=/foo/bar
+
+ If you have problems with not found includes or libraries, check
+ first where these are located, and add either options:
+
+ --with-pspell-includes=/foo/bar/include
+
+ or
+
+ --with-pspell-libs=/foo/bar/lib
+
+ as appropriate.
+
+ Configure script summarizes the options compiled in. Check that
+ configure lists 'Pspell = yes'.
+
+ Then proceed as usual, with 'make' and 'make install'.
+
+ c. Usage
+ --------
+
+ NOTE: if you upgraded from 0.7.0claws, please reselect your default
+ dictionary in the preferences.
+
+ After successful compiling, you need to tell sylpheed where your
+ dictionaries reside. First run 'pspell-config pkgdatadir' on the
+ shell to get their path.
+
+ Then run sylpheed and go to Configuration -> Common preferences ->
+ Spell Checker. Check the box 'Enable spell checker (EXPERIMENTAL)' and
+ use the file selector ('...' button) to select the path where the
+ dictionaries reside. Within the file selector, go to that directory
+ and select *any* file in the file lists. Click ok. You should then
+ be able to select your default dictionary.
+
+ When composing, misspelled words are highlighted. Click on any
+ highlighted word with the right mouse button to get a list of
+ suggestions. The first entry of the menu just displays the unknown
+ word. Selecting "Accept in this session" (or hitting MOD1-Space,
+ where MOD1 is usually the ALT key), will ignore this word and accept
+ it in this message. Selecting the next entry "Add to dictionary", which
+ is bound to MOD1-Enter combination will add the unknown word to the
+ dictionary to learn it. The next entries are the suggested words.
+ The first 15 suggestions can be accessed typing one of the first letters
+ of Latin alphabet (if this does not suit your language, please send
+ a mail to melvin.hadasht@free.fr). If you are using an aspell
+ dictionary, you can use its 'learn from mistake' feature, by pressing
+ the MOD1 key and selecting the suggestion (with the keyboard or with
+ the mouse). See pspell manual ยง4.7.1 for an explanation of this
+ feature.
+
+ If you click with the right mouse button everywhere else, or if you
+ shift-right-click even on a misspelled word, you get the
+ configuration menu. 'Check all' highlights all misspelled words.
+ With this menu, you can also change the dictionary while editing.
+ Finally, you can change the suggestion mode, and the learn from
+ misktakes feature (only when using an aspell dictionary).
+
+ Spell checking can also be done using keyboard shortcuts. In the
+ "Edit" menu of the compose window, there are two menus "Check backwards
+ misspelled word" and "Forward to next misspelled word". Add to them
+ appropriate keyboard shortcuts. "Check backwards misspelled word"
+ checks backwards from cursor position for the first misspelled word.
+ If it finds one, it displays the suggestions lists which can be handled
+ with the keyboard as described before. When the suggestion menu is
+ closed, the cursor returns to its original position to be able to
+ continue editing. The "Forward to next misspelled word" do the same
+ thing in the other direction but moves the cursor at the end of the
+ misspelled word. This way, you can spell check easily a whole message
+ starting from its beginning and using the "Forward to next misspelled
+ word" keyboard short cut.
+
+
+ d. Known problems
+ -----------------
+
+ i) libtool
+
+ The only real known problems until now are configuration and
+ compilation problems due to libtool interaction with pspell.
+
+ If you do not compile pspell/aspell/pspell-ispell yourself, you
+ need to install them with their devel packages.
+
+ Pspell work with dynamic linking of libraries and thus uses the
+ libltdl library of libtool. If you have weird problems when
+ configuring showing 'libtool', chances are the libtool used when
+ compiling the pspell package is not compatible with what you have
+ on your system. The best solution, is to install the latest
+ libtool AND compile yourself pspell package. I can't help more
+ than that in this issue.
+
+ After successfully compiled and used sylpheed with spell checking,
+ the same problem can appear if you upgrade your libtool to a
+ version which libltdl is incompatible to your older one. The
+ symptoms are a crash when starting to compose. Disabling spell
+ checking avoids the problem. The solution should be to recompile pspell.
+
+ ii) New installed ispell dictionary are not detected
+
+ Installing a new ispell dictionary needs an additional step. Go
+ to the 'pkgdatadir' and run 'make-ispell-pwli'. You may need to
+ su root.
+
+* simplify subject string
+-----------------------------------
+ It is possible to remove parts of string from the subject line.
+ Example: [Sylpheed-claws-users] This is a test
+ becomes: This is a test
+ This is a per folder property. Right click on a folder and select
+ property, enable Simplify Subject RegExp check box. Example
+ regexp for the above is: \[Sylpheed-claws-(devel|users)\]
+ Another example for the Sylpheed mailing list (not claws!) is:
+ \[sylpheed:[0-9]{5}\]
+
+* new cache
+-----------------------------------
+ New cache is a new data cache structure for sylpheed, that will
+ solve many of the problems sylpheed currently has with updates to
+ flags. But you will also notice a large speed gain when you open
+ these folders.
+
+ New cache uses two new configuration parameters that can be
+ adjusted in ~/.sylpheed/sylpheedrc (no gui for them available yet).
+
+ cache_max_mem_usage (default: 4096)
+ the maximum kB of memory sylpheed should use.
+ It will try to keep the memory usage below this
+ value, but it will always use the assigned
+ amount of memory for speed gain.
+
+ cache_min_keep_time (default: 15)
+ the minimum time in minutes sylpheed will keep
+ the folder cache in memory. If a cache is more
+ recent than this time it will not be freed even
+ if the memory usage is above the maximum. You
+ should probably set this value higher than your
+ mail check interval. Otherwise the cache will
+ always be freed between checks even if the folder
+ is accessed on every check, which will cause much
+ disk IO.
+
+ The check if memory can be freed is currently done after the
+ active folder has been changed or whenever a new cache is read,
+ i.e. triggered by mail incorporation.
+
+ New mails in MH folders are not detected automatically like before,
+ when you enter the folder. You have to update the folder manually,
+ or activate the auto update setting in the options.
There are a lot more options. If you find one, don't hesitate to
mention it.
+* selective download, delete messages on server
+-----------------------------------
+ The selective download window lets you select messages, that
+ should be retrieved from or deleted on the server.
+ The selection can be automated by setting up a *global*
+ filtering rule (folder based rules are ignored), e.g
+ subject match "SPAM" delete_on_server
+ Next time, you retrieve the headers using selective download,
+ all messages that matched this criteria are marked.
+
+
-How to contribute
------------------
+4. How to contribute
+--------------------
Sylpheed Main:
submit it to the Sylpheed ML, Hiroyuki, or Paul Mangan
- (for incorporation on the Sylpheed Patches page)
+ (for incorporation on the Sylpheed Patches page,
+ <http://www.thewildbeast.co.uk/sylpheed/>)
Sylpheed Claws:
Bugs can be reported in the same way; the recommended web page:
http://sourceforge.net/tracker/?group_id=25528&atid=384598
- Ofcourse you can also post to the sylpheed claws users
+ Of course you can also post to the sylpheed claws users
mailing list.
Also, we really try to incorporate good contributions, but sometimes we
arrange access to the Claws branch.
-How to request features
------------------------
+
+5. How to request features
+--------------------------
Ask around in both Sylpheed ML and Sylpheed Claws Users ML. Note
that some developers may already thought about your feature, may
hack a patch for it. (That would be very cool!) Another
possibility is to use the Feature Request Tracker at the
sourceforge project page.
+
+
+
+6. Installing Claws from CVS
+----------------------------
+
+ a. Downloading
+ --------------
+
+ To download the latest cvs cd to the directory where you wish to download
+ to and type the following information:
+
+ cvs -d:pserver:anonymous@cvs.sylpheed-claws.sourceforge.net:/cvsroot/sylpheed-claws login
+
+ When prompted for a password press the RETURN key.
+ After anonymously logging in:
+
+ cvs -z3 -d:pserver:anonymous@cvs.sylpheed-claws.sourceforge.net:/cvsroot/sylpheed-claws co sylpheed-claws
+
+
+ b. Installing
+ -------------
+
+ To compile and install use the following commands:
+
+ ./autogen.sh [add configure options as required]
+ make
+ make install [as root]
+
+ You will need a full set of development tools installed to be able to run
+ autogen.sh. See also ac/README.
+
+7. History
+----------
+
+TODO
+