Rocco Rutte:
[apps/madmutt.git] / doc / manual.sgml.head
index 4cf19a1..f07f026 100644 (file)
 
 <sect>Introduction
 <p>
-<bf/Mutt/ is a small but very powerful text-based MIME mail client.  Mutt is
+<bf/Mutt-ng/ is a small but very powerful text-based MIME mail client.  Mutt-ng is
 highly configurable, and is well suited to the mail power user with advanced
 features like key bindings, keyboard macros, mail threading, regular
 expression searches and a powerful pattern matching language for selecting
 groups of messages.
 
-<sect1>Mutt Home Page
+<p>This documentation additionaly contains documentation to <bf/Mutt-NG/, a 
+fork from Mutt with the goal to fix all the little annoyances of Mutt, to
+integrate all the Mutt patches that are floating around in the web, and to
+add other new features. Features specific to Mutt-ng will be discussed in
+an extra section. Don't be confused when most of the documentation talk about
+Mutt and not Mutt-ng, Mutt-ng contains all Mutt-ng features, plus many more.
+
+
+<sect1>Mutt-ng Home Page
 <p>
-<htmlurl url="http://www.mutt.org/"
-name="http://www.mutt.org/">
+<htmlurl url="http://www.muttng.org/"
+name="http://www.muttng.org">
 
 <sect1>Mailing Lists
 <p>
-To subscribe to one of the following mailing lists, send a message with the
-word <em/subscribe/ in the body to
-<tt/list-name/<em/-request/<tt/@mutt.org/.
 
 <itemize>
-<item><htmlurl url="mailto:mutt-announce-request@mutt.org"
-name="mutt-announce@mutt.org"> -- low traffic list for announcements
-<item><htmlurl url="mailto:mutt-users-request@mutt.org"
-name="mutt-users@mutt.org"> -- help, bug reports and feature requests
-<item><htmlurl url="mailto:mutt-dev-request@mutt.org" name="mutt-dev@mutt.org"> -- development mailing list
+<item><htmlurl url="https://lists.berlios.de/mailman/listinfo/mutt-ng-users"
+name="mutt-ng-users@lists.berlios.de"> -- This is where the mutt-ng user support happens.
+<item><htmlurl url="https://lists.berlios.de/mailman/listinfo/mutt-ng-devel" name="mutt-ng-devel@lists.berlios.de"> -- The development mailing list for mutt-ng
 </itemize>
 
-<bf/Note:/ all messages posted to <em/mutt-announce/ are automatically
-forwarded to <em/mutt-users/, so you do not need to be subscribed to both
-lists.
-
 <sect1>Software Distribution Sites
 <p>
+So far, there are no official releases of Mutt-ng, but you can download
+daily snapshots from <htmlurl url="http://mutt-ng.berlios.de/snapshots/" name="http://mutt-ng.berlios.de/snapshots/">
+<!-- 
 <itemize>
 <item><htmlurl url="ftp://ftp.mutt.org/mutt/"
 name="ftp://ftp.mutt.org/mutt/">
@@ -52,16 +54,22 @@ name="ftp://ftp.mutt.org/mutt/">
 For a list of mirror sites, please refer to <htmlurl
 url="http://www.mutt.org/download.html"
 name="http://www.mutt.org/download.html">.
+-->
+
 
 <sect1>IRC
 <p>
-Visit channel <em/#mutt/ on <htmlurl
-url="http://www.openprojects.net" name="OpenProjects.Net
-(www.openprojects.net)"> to chat with other people interested in Mutt.
+Visit channel <em/#muttng/ on <htmlurl
+url="http://www.freenode.net/" name="irc.freenode.net
+(www.freenode.net)"> to chat with other people interested in Mutt-ng.
+
 
-<sect1>USENET
+<sect1>Weblog
 <p>
-See the newsgroup <htmlurl url="news:comp.mail.mutt" name="comp.mail.mutt">.
+If you want to read fresh news about the latest development in Mutt-ng, and get informed
+about stuff like interesting, Mutt-ng-related articles and packages for your favorite
+distribution, you can read and/or subscribe to our 
+<htmlurl url="http://mutt-ng.supersized.org/" name="Mutt-ng development weblog">.
 
 <sect1>Copyright
 <p>
@@ -411,7 +419,7 @@ you misspelled the passphrase.
 <p><bf/list-reply/<label id="list-reply"> (default: L)<newline>
 
 Reply to the current or tagged message(s) by extracting any addresses which
-match the addresses given by the <ref id="lists" name="lists or subscribe">
+match the regular expressions given by the <ref id="lists" name="lists or subscribe">
 commands, but also honor any <tt/Mail-Followup-To/ header(s) if the
 <ref id="honor_followup_to" name="&dollar;honor&lowbar;followup&lowbar;to">
 configuration variable is set.  Using this when replying to messages posted
@@ -736,20 +744,20 @@ newsgroup entered instead loading from newsserver.
 <sect>Configuration
 <p>
 
-While the default configuration (or ``preferences'') make Mutt
-usable right out of the box, it is often desirable to tailor Mutt to
-suit your own tastes. When Mutt is first invoked, it will attempt to
-read the ``system'' configuration file (defaults set by your local
-system administrator), unless the ``-n'' <ref id="commandline"
-name="command line"> option is specified.  This file is typically
-<tt>/usr/local/share/mutt/Muttrc</tt> or <tt>/etc/Muttrc</tt>. Mutt
-will next look for a file named <tt>.muttrc</tt> in your home
-directory.  If this file does not exist and your home directory has
-a subdirectory named <tt/.mutt/, mutt try to load a file named
-<tt>.mutt/muttrc</tt>. 
+While the default configuration (or ``preferences'') make Mutt-ng usable right out
+of the box, it is often desirable to tailor Mutt to suit your own tastes. When
+Mutt-ng is first invoked, it will attempt to read the ``system'' configuration
+file (defaults set by your local system administrator), unless the ``-n'' <ref
+id="commandline" name="command line"> option is specified.  This file is
+typically <tt>/usr/local/share/muttng/Muttngrc</tt> or <tt>/etc/Muttngrc</tt>,
+Mutt-ng users will find this file in <tt>/usr/local/share/muttng/Muttrc</tt> or
+<tt>/etc/Muttngrc</tt>. Mutt will next look for a file named <tt>.muttrc</tt>
+in your home directory, Mutt-ng will look for <tt>.muttngrc</tt>.  If this file
+does not exist and your home directory has a subdirectory named <tt/.mutt/,
+mutt try to load a file named <tt>.muttng/muttngrc</tt>. 
 
-<tt>.muttrc</tt> is the file where you will usually place your <ref
- id="commands" name="commands"> to configure Mutt.
+<tt>.muttrc</tt> (or <tt>.muttngrc</tt> for Mutt-ng) is the file where you will
+usually place your <ref id="commands" name="commands"> to configure Mutt.
 
 In addition, mutt supports version specific configuration files that are
 parsed instead of the default files as explained above.  For instance, if
@@ -1193,7 +1201,7 @@ someone else.  For instance, when replying to a message that you
 sent to a different party, mutt will automatically suggest to send
 the response to the original message's recipients -- responding to
 yourself won't make much sense in many cases.  (See <ref
-id="reply_to" name="&dollar;reply_to">.)
+id="reply_to" name="&dollar;reply&lowbar;to">.)
 
 Many users receive e-mail under a number of different addresses. To
 fully use mutt's features here, the program must be able to
@@ -1202,8 +1210,18 @@ purpose of the <tt/alternates/ command: It takes a list of regular
 expressions, each of which can identify an address under which you
 receive e-mail.
 
-To remove a regular expression from this list, use the
-<tt/unalternates/ command.
+The <tt/unalternates/ command can be used to write exceptions to
+<tt/alternates/ patterns. If an address matches something in an
+<tt/alternates/ command, but you nonetheless do not think it is
+from you, you can list a more precise pattern under an <tt/unalternates/
+command.
+
+To remove a regular expression from the <tt/alternates/ list, use the
+<tt/unalternates/ command with exactly the same <em/regexp/.
+Likewise, if the <em/regexp/ for a <tt/alternates/ command matches
+an entry on the <tt/unalternates/ list, that <tt/unalternates/
+entry will be removed. If the <em/regexp/ for <tt/unalternates/
+is ``*'', <em/all entries/ on <tt/alternates/ will be removed.
 
 <sect1>Mailing lists<label id="lists">
 <p>
@@ -1222,7 +1240,7 @@ the Mail-Followup-To header is a non-standard extension which is not
 supported by all mail user agents.  Adding it is not bullet-proof against
 receiving personal CCs of list messages.  Also note that the generation
 of the Mail-Followup-To header is controlled by the <ref id="followup_to"
-name="&dollar;followup_to"> configuration variable.
+name="&dollar;followup&lowbar;to"> configuration variable.
 
 More precisely, Mutt maintains lists of patterns for the addresses
 of known and subscribed mailing lists.  Every subscribed mailing
@@ -1242,8 +1260,8 @@ mailing list, you could add ``lists mutt-users'' to your
 initialization file.  To tell mutt that you are subscribed to it,
 add ``subscribe mutt-users'' to your initialization file instead.
 If you also happen to get mail from someone whose address is
-<em/mutt-users@example.com/, you could use ``lists mutt-users@mutt.org'' 
-or ``subscribe mutt-users@mutt.org'' to
+<em/mutt-users@example.com/, you could use ``lists mutt-users@mutt&bsol;&bsol;.org'' 
+or ``subscribe mutt-users@mutt&bsol;&bsol;.org'' to
 match only mail from the actual list.
 
 The ``unlists'' command is used to remove a token from the list of
@@ -1386,7 +1404,7 @@ to <ref id="record" name="&dollar;record"> mailbox.
 
 See <ref id="pattern_hook" name="Message Matching in Hooks"> for information on the exact format of <em/pattern/.
 
-Example: <tt/fcc-hook aol.com&dollar; +spammers/
+Example: <tt/fcc-hook &lsqb;@.&rsqb;aol&bsol;&bsol;.com&dollar; +spammers/
 
 The above will save a copy of all messages going to the aol.com domain to
 the `+spammers' mailbox by default.  Also see the <ref id="fcc-save-hook" 
@@ -1691,6 +1709,19 @@ If the filename ends with a vertical bar (|), then <em/filename/ is
 considered to be an executable program from which to read input (eg.
 <tt>source ~/bin/myscript|</tt>).
 
+<sect1>Configuring features conditionnaly<label id="ifdef">
+<p>
+Usage: <tt/ifdef/ <em/item/ <em/command/
+
+This command allows to test if a feature has been compiled in, before
+actually executing the command. Item can be either the name of a
+function or a variable.
+
+Example:
+<tscreen><verb>
+ifdef imap_keepalive 'source ~/.mutt/imap_setup'
+</verb></tscreen>
+
 <sect1>Removing hooks<label id="unhook">
 <p>
 Usage: <tt/unhook/ &lsqb; * | <em/hook-type/ &rsqb;
@@ -1912,6 +1943,9 @@ messages:
 ~z [MIN]-[MAX]  messages with a size in the range MIN to MAX *)
 ~=             duplicated messages (see $duplicate_threads)
 ~$             unreferenced messages (requires threaded view)
+~*             ``From'' contains realname and (syntactically) valid
+               address (excluded are addresses matching against
+               alternates or any alias)
 </verb></tscreen>
 
 Where EXPR, USER, ID, and SUBJECT are 
@@ -2115,7 +2149,7 @@ my_hdr directive:
 
 <tscreen><verb>
 send-hook . 'unmy_hdr From:'
-send-hook ~Cb@b.b my_hdr from: c@c.c
+send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
 </verb></tscreen>
 
 <sect2>Message Matching in Hooks<label id="pattern_hook">
@@ -2151,6 +2185,59 @@ pattern is translated at the time the hook is declared, so the value of
 <ref id="default_hook" name="&dollar;default&lowbar;hook"> that is in effect
 at that time will be used.
 
+<sect1>Using the sidebar<label id="sidebar">
+<p>
+The sidebar, a feature specific to Mutt-ng, allows you to use a mailbox listing 
+which looks very similar to the ones you probably know from GUI mail clients.
+The sidebar lists all specified mailboxes, shows the number in each
+and highlights the ones with new email
+Use the following configuration commands:
+<tscreen><verb>
+set sidebar_visible="yes"
+set sidebar_width=25
+</verb></tscreen>
+
+If you want to specify the mailboxes you can do so with:
+<tscreen><verb>
+set mbox='=INBOX'
+mailboxes INBOX \
+          MBOX1 \
+          MBOX2 \
+          ...
+</verb></tscreen>
+
+You can also specify the colors for mailboxes with new mails by using:
+<tscreen><verb>
+color sidebar_new red black
+color sidebar white black
+</verb></tscreen>
+
+The available functions are:
+<tscreen><verb>
+sidebar-scroll-up      Scrolls the mailbox list up 1 page
+sidebar-scroll-down    Scrolls the mailbox list down 1 page
+sidebar-next           Hilights the next mailbox
+sidebar-next-new       Hilights the next mailbox with new mail
+sidebar-previous       Hilights the previous mailbox
+sidebar-open           Opens the currently hilighted mailbox
+</verb></tscreen>
+
+Reasonable key bindings look e.g. like this:
+<tscreen><verb>
+bind index \Cp sidebar-prev
+bind index \Cn sidebar-next
+bind index \Cb sidebar-open
+bind pager \Cp sidebar-prev
+bind pager \Cn sidebar-next
+bind pager \Cb sidebar-open
+
+macro index B ':toggle sidebar_visible^M'
+macro pager B ':toggle sidebar_visible^M'
+</verb></tscreen>
+
+You can then go up and down by pressing Ctrl-P and Ctrl-N, and 
+switch on and off the sidebar simply by pressing 'B'.
+
 <sect1>External Address Queries<label id="query">
 <p>
 Mutt supports connecting to external directory databases such as LDAP,
@@ -2309,10 +2396,11 @@ than the author of the message.  This can create problems when trying
 to reply directly to the author in private, since most mail clients
 will automatically reply to the address given in the ``Reply-To''
 field.  Mutt uses the <ref id="reply_to" name="&dollar;reply&lowbar;to">
-variable to help decide which address to use.  If set, you will be
+variable to help decide which address to use.  If set to <em/ask-yes/ or
+<em/ask-no/, you will be
 prompted as to whether or not you would like to use the address given in
 the ``Reply-To'' field, or reply directly to the address given in the
-``From'' field.  When unset, the ``Reply-To'' field will be used when
+``From'' field.  When set to <em/yes/, the ``Reply-To'' field will be used when
 present.
 
 The ``X-Label:'' header field can be used to further identify mailing
@@ -2340,9 +2428,6 @@ either by misconfigured software or bad behaviour from some
 correspondents. This allows to clean your mailboxes formats) from these
 annoyances which make it hard to follow a discussion.
 
-If you want to use these functions with IMAP, you need to compile Mutt
-with the <em/--enable-imap-edit-threads/ configure flag.
-
 <sect2>Linking threads
 <p>
 
@@ -2465,15 +2550,10 @@ name="&dollar;imap&lowbar;list&lowbar;subscribed"> variable.
 
 Polling for new mail on an IMAP server can cause noticeable delays. So, you'll
 want to carefully tune the
-<ref id="mail_check" name="&dollar;mail&lowbar;check">
+<ref id="imap_mail_check" name="&dollar;imap&lowbar;mail&lowbar;check">
 and
 <ref id="timeout" name="&dollar;timeout">
-variables. Personally I use
-<tscreen><verb>
-set mail_check=90
-set timeout=15
-</verb></tscreen>
-with relatively good results over my slow modem line.
+variables.
 
 Note that if you are using mbox as the mail store on UW servers prior to
 v12.250, the server has been reported to disconnect a client if another client
@@ -2486,7 +2566,7 @@ As of version 1.2, mutt supports browsing mailboxes on an IMAP
 server. This is mostly the same as the local file browser, with the
 following differences:
 <itemize>
-<item>In lieu of file permissions, mutt displays the string "IMAP",
+<item>Instead of file permissions, mutt displays the string "IMAP",
   possibly followed by the symbol "+", indicating
   that the entry contains both messages and subfolders. On
   Cyrus-like servers folders will often contain both messages and
@@ -2496,8 +2576,10 @@ following differences:
   will choose to descend into the subfolder view. If you wish to view
   the messages in that folder, you must use <tt>view-file</tt> instead
   (bound to <tt>space</tt> by default).
-<item>You can delete mailboxes with the <tt>delete-mailbox</tt>
-  command (bound to <tt>d</tt> by default. You may also
+<item>You can create, delete and rename mailboxes with the
+  <tt>create-mailbox</tt>, <tt>delete-mailbox</tt>, and
+  <tt>rename-mailbox</tt> commands (default bindings: <tt>C</tt>,
+  <tt>d</tt> and <tt>r</tt>, respectively). You may also
   <tt>subscribe</tt> and <tt>unsubscribe</tt> to mailboxes (normally
   these are bound to <tt>s</tt> and <tt>u</tt>, respectively).
 </itemize>