README.claws 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613
  1. README.claws
  2. ------------
  3. Summary:
  4. 1. What is Sylpheed Claws?
  5. 2. Switching between Sylpheed Claws and Sylpheed
  6. * From Sylpheed to Sylpheed Claws
  7. * From Sylpheed Claws to Sylpheed
  8. 3. Things Claws does different
  9. * auto address replacement in summary view
  10. * manual selection of MIME types for attachments
  11. * sharing mail folders
  12. * default to address for folders
  13. * threading mode per folder
  14. * simplify subject string
  15. * pixmap themes
  16. * user definable actions
  17. * spell checking (with installation instructions)
  18. * new cache
  19. * extended search in quick search
  20. * 'dynamic' signatures
  21. 4. How to contribute
  22. 5. How to request features
  23. 6. Installing Claws from CVS
  24. 7. History
  25. 1. What is Sylpheed Claws?
  26. --------------------------
  27. Sylpheed Claws is a bleeding edge branch of Sylpheed, a light weight mail
  28. user agent for UNIX. Features in this branch may (or may not) end up in
  29. Sylpheed.
  30. Hiroyuki's ChangeLog is also included in the claws-branch distribution,
  31. so it should be easy to spot which features were merged with Sylpheed
  32. (and which features were not).
  33. For brevity Sylpheed Claws is referred to as Claws, and Sylpheed as either
  34. Sylpheed or Main.
  35. 2. Switching between Sylpheed Claws and Sylpheed
  36. ------------------------------------------------
  37. From Sylpheed to Sylpheed Claws
  38. -------------------------------
  39. From the user perspective Claws is just a fancy Sylpheed, so it uses the
  40. same Sylpheed setting files located in ~/.sylpheed.
  41. It's always a good idea to back up all files in ~/.sylpheed in case
  42. you want to switch back to Sylpheed. (You don't have to backup the
  43. directories.)
  44. There are some things that frequently come up when switching to Claws:
  45. * What happened to my filter rules?
  46. Claws uses a new filtering system. Your old Sylpheed filter rules will not
  47. be used. In subdirectory tools/ of the distribution there is a Perl script
  48. called filter_conv.pl which converts old filter rules to the claws
  49. filtering system, see tools/README for details.
  50. * What happened to the compose email and compose news buttons?
  51. There's a composite button for both composing mail and news. You can toggle
  52. between composing mail and news by clicking on the button with the triangle.
  53. * And to the Preferences and Execute buttons?
  54. Sorry, they're not there.
  55. From Sylpheed Claws to Sylpheed
  56. -------------------------------
  57. Moving from Claws to Sylpheed is also simple. Sylpheed should neglect the things
  58. Claws put in the settings files. This also means that the old rules will work
  59. again.
  60. If you want to switch back to Claws at a later time, make sure you back up at least
  61. ~/.sylpheed/matcherrc (the Claws filtering rules), and ~/.sylpheed/sylpheedrc
  62. (which may have some claws specific settings).
  63. When switching back to Sylpheed you will not lose messages or message flags (color
  64. labels, read / unread status of messages).
  65. Switching between Sylpheed Claws and Sylpheed on a regular basis
  66. ----------------------------------------------------------------
  67. If you want to have both claws and main installed concurrently simply pass them
  68. a different --prefix when doing ./configure. Then use the script 'sylpheed-switcher',
  69. (which is provided in the tools directory), to launch the version you require without
  70. fear of losing specific settings related to either claws or main. Further details can
  71. be found in tools/README.
  72. 3. Things Claws does different
  73. ------------------------------
  74. Claws does a lot of things different. Here a quick run-down of things that
  75. are hardly noticeable, but deserve mentioning:
  76. * auto address replacement in summary view
  77. -----------------------------------
  78. This matches a plain email address with a person in the address book. This
  79. feature is enabled in Common Preferences | Tab Display | SummaryView Group |
  80. Display sender using addressbook
  81. * manual selection of MIME types for attachments
  82. -----------------------------------
  83. You can change the MIME type of an attachment by right-clicking in the
  84. attachment list, selecting Property in the menu. The MIME type list
  85. is a combo box with the known MIME types.
  86. * sharing mail folders
  87. -----------------------------------
  88. You can also share or use shared mail folders. Right-click a folder and
  89. select Property. Change the Folder chmod setting.
  90. * default to address for folders
  91. -----------------------------------
  92. Most people filter mailing list mails to separate folders. Claws allows
  93. you to associate a folder with a mailing list or a person. Right-click a
  94. folder, select Property and change the Default To setting. When you
  95. compose a new mail, when this folder is selected the recipient address
  96. will be set to this address.
  97. (NOTE: this is also a shoot-yourself-in-the-foot-setting! If you want
  98. to send a private mail, don't have a folder selected with this setting
  99. set.)
  100. * pixmap themes
  101. -----------------------------------
  102. To use different icon sets you need to create a directory:
  103. mkdir ~/.sylpheed/themes
  104. Icon sets should be placed in this directory in their own sub-directory.
  105. They are then selectable from Pixmap Theme on the Interface tab of Commmon
  106. Preferences.
  107. * user definable actions
  108. -----------------------------------
  109. The "actions" feature is a convenient way for the user to launch external
  110. commands to process a complete message file including headers and body or
  111. just one of its parts. It allows also the use of an external command to
  112. filter the whole text or just a selected part in the message window or in
  113. the compose window. This is a generic tool that allows to do any uncommon
  114. actions on the messages, and thus extends the possibilities of Sylpheed.
  115. For example, Sylpheed does not include the rot13 cyphering algorithm
  116. popular in some newsgroups. It does not support natively armored
  117. encryption or clear signing. It does not support uuencoded messages. As
  118. all these features can be handled by external programs, the actions
  119. provide a convenient way to use them from the menu bar.
  120. a. Usage
  121. --------
  122. To create a new action, go to Configuration -> Actions.... The "Action
  123. Creation" dialog offers to enter the Menu name that will trigger the
  124. command. The created menu will be found in the Tools -> Actions submenu.
  125. By inserting a slash / in the menu name, you create a submenu.
  126. The command is entered in the Command line entry. Note that Sylpheed
  127. stores every single email in a separate file. This allows to use the
  128. following syntax for the command:
  129. * %f denotes the file name of the selected message. If you selected more
  130. than one, then the command will be launched for each message with
  131. the appropriate file name
  132. * %F denotes the list of the file names of the selected message. If only
  133. one message is selected, this amounts to %f, but if more messages
  134. are selected, then the command will be launched only once with the
  135. list of the file names. (You can use both %f and %F in one command:
  136. then the command will be launched for each selected message with
  137. the name of this message and with the list of all selected
  138. messages. I did not find a practical example for this.)
  139. * %p denotes the current selected message part of a multipart message.
  140. The part is decoded accordingly. If the message is not a multipart
  141. message, it denotes the message body.
  142. * Prepending >: this will allow you to send to the command's standard
  143. input a text that you will enter in a dialog window.
  144. * Prepending *: this will allow you to send to the command's standard
  145. input a text that you will enter in a dialog window. But in
  146. contrast to prepending >, the entered text is hidden (useful when
  147. entering passwords).
  148. * Appending an ampersand &: this will run the command asynchronously.
  149. That means "fire and forget". Sylpheed won't wait for the command
  150. to finish, nor will it catch its output or its error messages.
  151. * Prepending the vertical bar | (pipe-in): this will send the current
  152. displayed text or the current selected text from the message view
  153. or the compose window to the command standard input. The command
  154. will silently fail if more than one message is selected.
  155. * Appending the vertical bar | (pipe-out): this will replace the current
  156. displayed text or the current selected text from the message window
  157. or the compose window by the command standard output. The command
  158. will silently fail if more than one message is selected.
  159. Note: It is not possible to use actions containing %f, %F or %p from the
  160. compose window.
  161. When a command is run, and unless it is run asynchronously, Sylpheed will
  162. be insensitive to any interaction and it will wait for the command to
  163. finish. If the command takes too long (5 seconds), it will popup a dialog
  164. window allowing to stop it. This dialog will also be displayed as soon as
  165. the command has some output: error messages or even its standard output
  166. when the command is not a "pipe-out" command. When multiple commands are
  167. being run, they are run in parallel and each command output is separated
  168. from the outputs of the others.
  169. a. Examples
  170. -----------
  171. Here are some examples that are listed in the same syntax as used for
  172. storing the actions list. You can copy and past the definition in your
  173. ~/.sylpheed/actionsrc file (exit Sylpheed before). The syntax is very
  174. simple: one line per action, each action contains the menu name and the
  175. command line separated by a colon and a space ": "
  176. Purpose: rot13 cyphering
  177. Definition: Rot13: |tr a-zA-Z n-za-mN-ZA-M|
  178. Details: This will apply the rot13 cyphering algorithm to the
  179. (selected) text in the message/compose view.
  180. Purpose: Decoding uuencoded messages
  181. Definition: UUdeview: xdeview %F&
  182. Details: xdeview comes with uudeview. If an encoded file is split in
  183. multiple messages, just select them all and run the command.
  184. Purpose: Display uuencoded image
  185. Definition: Display uuencoded: uudec %f&
  186. Details: Displays uuencoded files. The uudec[1] script can be found in
  187. the 'tools' directory of the distribution package.
  188. Purpose: Alter messages
  189. Definition: Edit message: gvim -f %F
  190. Details: Allows editing of any received message. Can be used to remove
  191. unneeded message parts, etc.
  192. Purpose: Pretty format
  193. Definition: Par: |par 72Tbgjqw74bEe B=._A_a 72bg|
  194. Details: par is a utility that can pretty format any text. It does a
  195. very good job in indenting quoted messages, and justifying
  196. text. Used when composing a message
  197. Purpose: Browse
  198. Definition: Part/Dillo: dillo %p&
  199. Details: Browse the selected message part in Dillo.
  200. Purpose: Clear Sign
  201. Definition: GnuPG/Clear Sign: |gpg-sign-syl|
  202. Details: Clear sign a message. The gpg-sign-syl[2] script is responsible
  203. for asking the passphrase and for running gnupg.
  204. Purpose: Verify Clear Signed
  205. Definition: GnuPG/Verify: |gpg --no-tty --verify
  206. Details: Verify clear signed messages. The result is displayed in the
  207. actions output dialog.
  208. Purpose: Decrypt ASCII Armored
  209. Definition: GnuPG/Decrypt: *gpg --no-tty --command-fd 0 --passphrase-fd 0 --decrypt %f|
  210. Details: Decrypt ASCII armored messages. The passphrase is entered
  211. into the opened action's input dialog.
  212. [1] The uudec script can be found in the 'tools' directory of the
  213. distribution package. It needs uudecode and ImageMagick's display. The
  214. latter can be replaced by any image viewer that can get input from
  215. standard input. The script could also be modified to use temporary files
  216. instead of standard input.
  217. [2] The gpg-sign-syl script can be found in the 'tools' directory of the
  218. distribution package.
  219. * Spell checker for Sylpheed-Claws
  220. -----------------------------------
  221. a. Requirements
  222. b. Configuration and installation
  223. c. Usage
  224. d. Known problems
  225. a. Requirements
  226. ---------------
  227. Note:
  228. As for version 0.8.3 (and cvs version 0.8.2claws3), Sylpheed-Claws uses
  229. the new GNU/aspell 0.50 for spell checking instead of the obsolete pspell
  230. and old aspell 0.33.x. You will need to upgrade your system. See
  231. http://www.gnu.org/software/aspell for instructions on how to do this.
  232. The spell checker in Sylpheed requires the new GNU/aspell library
  233. (http://www.gnu.org/software/aspell), version 0.50 or newer.
  234. You also need the dictionaries. Check GNU/aspell home page for how
  235. to download and install them.
  236. NB: The old dictionaries used by the old aspell will not work.
  237. b. Configuring Sylpheed
  238. -----------------------
  239. Spell checking is enabled if you configure Sylpheed appropriately. Add
  240. the option '--enable-aspell' when configuring. E.g.:
  241. ./configure --enable-aspell
  242. The configure script needs the 'aspell' executable to be in your path.
  243. If it is in unusual places, use '--with-aspell-prefix' to tell the path of
  244. the aspell executable. E.g., if aspell's full path is
  245. /foo/bar/bin/aspell, then use:
  246. ./configure --enable-aspell --with-aspell-prefix=/foo/bar
  247. The '--with-aspell-prefix=PREFIX' option will let the configure
  248. script search for includes and libraries in PREFIX/include and PREFIX/lib.
  249. You can also specify manually the includes and libraries path by using
  250. either following options:
  251. --with-aspell-includes=/foo/bar/include
  252. and/or
  253. --with-aspell-libs=/rab/oof/lib
  254. as appropriate.
  255. The configure script summarizes the options compiled in. Check that
  256. it lists 'GNU/aspell = yes'.
  257. Then proceed as usual, with 'make' and 'make install'.
  258. c. Usage
  259. --------
  260. NOTE: if you upgraded from Sylpheed-Claws 0.8.2 (or cvs version 0.8.2claws2)
  261. or earlier, please check if the dictionary path was updated in the
  262. Configuration -> Common Preferences -> Spell Checker menu. If not, update
  263. it accordingly as explained below.
  264. After successful compiling, you need to tell Sylpheed where your
  265. dictionaries reside. The configure script should have found it,
  266. but in case it did not, run 'aspell config dict-dir' on the
  267. shell to get the path to the dictionaries.
  268. Then run Sylpheed and go to Configuration -> Common preferences ->
  269. Spell Checker. Check the box 'Enable spell checker' and
  270. use the file selector ('...' button) to select the path where the
  271. dictionaries reside. Within the file selector, go to that directory
  272. and select *any* file in the file lists. Click OK. Then, you should
  273. be able to select your default dictionary.
  274. When composing, misspelled words are highlighted. Click on any
  275. highlighted word with the right mouse button to get a list of
  276. suggestions. The first entry of the menu just displays the unknown
  277. word. Selecting 'Accept in this session' (or hitting MOD1-Space,
  278. where MOD1 is usually the ALT key) will ignore this word and accept
  279. it in this message. Selecting the next entry, "Add to dictionary", which
  280. is bound to MOD1-Enter combination, will add the unknown word to your
  281. personal dictionary to learn it. The next entries are the suggested words.
  282. The first 15 suggestions can be accessed by typing one of the first letters
  283. of Latin alphabet (if this does not suit your language, please send
  284. a mail to melvin.hadasht@free.fr). Aspell has a 'learn from mistake'
  285. function that can be used by pressing the MOD1 key and selecting the
  286. suggestion (with the keyboard or with the mouse). See GNU/aspell manual
  287. §6.3 for an explanation of this feature (also called 'replacement storing').
  288. If you click with the right mouse button everywhere else, or if you
  289. shift-right-click even on a misspelled word, you get the
  290. configuration menu. 'Check all' highlights all misspelled words.
  291. With this menu, you can also change the dictionary while editing.
  292. Finally, you can change the suggestion mode, and the learn from
  293. misktakes feature.
  294. Spell checking can also be done using keyboard shortcuts. In the
  295. 'Edit' menu of the compose window, there are two menus 'Check backwards
  296. misspelled word' and 'Forward to next misspelled word'. Add to them
  297. appropriate keyboard shortcuts. 'Check backwards misspelled word'
  298. checks backwards from cursor position for the first misspelled word.
  299. If it finds one, it displays the suggestions lists which can be handled
  300. with the keyboard as described before. When the suggestion menu is
  301. closed, the cursor returns to its original position to be able to
  302. continue editing. The 'Forward to next misspelled word' do the same
  303. thing in the other direction but moves the cursor at the end of the
  304. misspelled word. This way, you can spell check easily a whole message
  305. starting from its beginning and using the 'Forward to next misspelled
  306. word' keyboard short cut.
  307. d. Known problems
  308. -----------------
  309. No known problems as the time of this writing (0.8.2claws3).
  310. * simplify subject string
  311. -----------------------------------
  312. It is possible to remove parts of string from the subject line.
  313. Example: [Sylpheed-claws-users] This is a test
  314. becomes: This is a test
  315. This is a per folder property. Right click on a folder and select
  316. property, enable Simplify Subject RegExp check box. Example
  317. regexp for the above is: \[Sylpheed-claws-(devel|users)\]
  318. Another example for the Sylpheed mailing list (not claws!) is:
  319. \[sylpheed:[0-9]{5}\]
  320. * new cache
  321. -----------------------------------
  322. New cache is a new data cache structure for sylpheed, that will
  323. solve many of the problems sylpheed currently has with updates to
  324. flags. But you will also notice a large speed gain when you open
  325. these folders.
  326. New cache uses two new configuration parameters that can be
  327. adjusted in ~/.sylpheed/sylpheedrc (no gui for them available yet).
  328. cache_max_mem_usage (default: 4096)
  329. the maximum kB of memory sylpheed should use.
  330. It will try to keep the memory usage below this
  331. value, but it will always use the assigned
  332. amount of memory for speed gain.
  333. cache_min_keep_time (default: 15)
  334. the minimum time in minutes sylpheed will keep
  335. the folder cache in memory. If a cache is more
  336. recent than this time it will not be freed even
  337. if the memory usage is above the maximum. You
  338. should probably set this value higher than your
  339. mail check interval. Otherwise the cache will
  340. always be freed between checks even if the folder
  341. is accessed on every check, which will cause much
  342. disk IO.
  343. The check if memory can be freed is currently done after the
  344. active folder has been changed or whenever a new cache is read,
  345. i.e. triggered by mail incorporation.
  346. New mails in MH folders are not detected automatically like before,
  347. when you enter the folder. You have to update the folder manually,
  348. or activate the auto update setting in the options.
  349. There are a lot more options. If you find one, don't hesitate to
  350. mention it.
  351. * Custom toolbar
  352. ----------------
  353. Configuration->Custom toolbar lets you define the toolbar
  354. you want. The configuration dialog enables you to set an icon,
  355. an appropriate text and map an action to it. Actions to choose
  356. from are predefined. You may as well have your "Sylpheed Actions"
  357. (refer to "user definable actions" above) on your toolbar.
  358. Example:
  359. * Configuration->Actions
  360. - add an entry "Dillo: dillo %p&"
  361. * Configuration->Custom toolbar
  362. - select Sylpheed Actions Feature
  363. - select "Dillo: dillo %p&" from drop down list
  364. - choose an icon and click ok
  365. * extended search in quick search
  366. ---------------------------------
  367. This feature allows one to define criteria that messages have
  368. to match in order to be displayed in the summary view pane.
  369. Search types titled From, Subject and To are self explanatory.
  370. Search type extended allows one to use Sylpheed's powerful
  371. filtering engine to select messages. Examples:
  372. from regexpcase "foo"
  373. subject regexp "Bug" & to regexp "sylpheed-claws"
  374. Additionally, it is possible to use simpler yet equally
  375. powerfull patterns for message selections. Mutt users will
  376. immediately recognize most of the available patterns:
  377. Pattern Parameter Selects
  378. ----------------------------------------------------
  379. a all messages
  380. ag # messages whose age is greater than #
  381. al # messages whose age is lower than #
  382. b S messages which contain S in the message body
  383. B S messages which contain S in the whole message
  384. c S messages carbon-copied to S
  385. C S message is either to: or cc: to S
  386. D deleted messages
  387. e S messages which contain S in the Sender field
  388. E S true if execute "S" succeeds
  389. f S messages originating from user S
  390. F forwarded messages
  391. h S messages which contain header S
  392. i S messages which contain S in Message-Id header
  393. I S messages which contain S in inreplyto header
  394. L locked messages
  395. n S messages which are in newsgroup S
  396. N new messages
  397. O old messages
  398. r messages which have been replied to
  399. R read messages
  400. s S messages which contain S in subject
  401. se # messages whose score is equal to #
  402. sg # messages whose score is greater than #
  403. sl # messages whose score is lower than #
  404. Se # messages whose size is equal to #
  405. Sg # messages whose size is greater than #
  406. Ss # messages whose size is smaller than #
  407. t S messages which have been sent to S
  408. T marked messages
  409. U unread messages
  410. x S messages which contain S in References header
  411. y S messages which contain S in X-Label header
  412. # means number
  413. S means regexp string
  414. It is possible to use logical operators AND (&), OR (|) and
  415. NOT (! or ~). Case sensitive search is achieved with %.
  416. Examples:
  417. T marked messages
  418. U unread messages
  419. f "john beavis" messages from john beavis
  420. %f "John Beavis" messages from John Beavis (case sensitive)
  421. ~s foo messages which do not have foo in the subject
  422. f foo & ~s bar messages from foo that do not have bar in thesubject
  423. * (build in) image viewer
  424. -----------------------
  425. Claws allows to load viewers for mime parts with plugins. To keep
  426. the main programs code small and easier to maintain by defining an
  427. API for viewers and not having to include every viewer in the code
  428. the build in image viewer was removed and put into a plugin. If you
  429. wonder why image viewing is not working anymore you probably have
  430. to load the plugin.
  431. 4. How to contribute
  432. --------------------
  433. Sylpheed Main:
  434. submit it to the Sylpheed ML, Hiroyuki, or Paul Mangan
  435. (for incorporation on the Sylpheed Patches page,
  436. <http://www.thewildbeast.co.uk/sylpheed/>)
  437. Sylpheed Claws:
  438. It is highly recommended to use the sourceforge project page
  439. of claws. Check:
  440. http://sourceforge.net/tracker/?atid=384600&group_id=25528&func=browse
  441. If that's too troublesome, either contact Paul Mangan or consider
  442. posting to the sylpheed claws users mailing list.
  443. Bugs can be reported with Claws' bugzilla at:
  444. http://sylpheed-claws.sourceforge.net/cgi-bin/bugzilla/index.cgi
  445. Of course you can also post to the sylpheed claws users
  446. mailing list.
  447. Also, we really try to incorporate good contributions, but sometimes we
  448. don't have enough time. If the contribution is really big, or requires
  449. a long time to stabilize, send a mail to Paul Mangan. We can probably
  450. arrange access to the Claws branch.
  451. 5. How to request features
  452. --------------------------
  453. Ask around in both Sylpheed ML and Sylpheed Claws Users ML. Note
  454. that some developers may already thought about your feature, may
  455. perhaps be implementing it - or the feature was already discussed
  456. and rejected for whatever reason. You might want to go ahead and
  457. hack a patch for it. (That would be very cool!) Another
  458. possibility is to use the Feature Request Tracker at the
  459. sourceforge project page.
  460. 6. Installing Claws from CVS
  461. ----------------------------
  462. a. Downloading
  463. --------------
  464. To download the latest cvs cd to the directory where you wish to download
  465. to and type the following information:
  466. cvs -d:pserver:anonymous@cvs.sylpheed-claws.sourceforge.net:/cvsroot/sylpheed-claws login
  467. When prompted for a password press the RETURN key.
  468. After anonymously logging in:
  469. cvs -z3 -d:pserver:anonymous@cvs.sylpheed-claws.sourceforge.net:/cvsroot/sylpheed-claws co sylpheed-claws
  470. b. Installing
  471. -------------
  472. To compile and install use the following commands:
  473. ./autogen.sh [add configure options as required]
  474. make
  475. make install [as root]
  476. You will need a full set of development tools installed to be able to run
  477. autogen.sh. See also ac/README.
  478. 7. History
  479. ----------
  480. TODO