--- /dev/null
+Only in ../m/debian/mutt/usr/share/doc/mutt: BUGS.IMAP
+Only in ../m/debian/mutt/usr/share/doc/mutt: README.IMAP
+Only in ../m/debian/mutt/usr/share/doc/mutt: TODO.IMAP
+
+Only in debian/mutt/usr/share/doc/mutt/examples: ca-bundle.crt
+Only in debian/mutt/usr/share/doc/mutt/examples: iconv
+Only in debian/mutt/usr/share/doc/mutt/examples: smime_keys_test.pl
+mutt (1.5.16-2) unstable; urgency=low
+
+ User-visible changes in this version:
+ * The gpgme crypt backend is not yet stable enough, disabled again.
+ * The imap_home_namespace variable was removed upstream.
+
+ -- Christoph Berg <myon@debian.org> Thu, 28 Jun 2007 20:58:49 +0200
+
+mutt (1.5.14+cvs20070301-1) experimental; urgency=low
+
+ We no longer unset write_bcc in /etc/Muttrc. If your MTA does not strip Bcc:
+ headers, edit /etc/Muttrc. (exim4 and postfix strip them, exim(3) does not.)
+ We also no longer unset use_from and use_domain. Mutt will use the contents
+ of /etc/mailname to determine the domain part of the From: header.
+
+ This release adds ESMTP support to mutt. To use, set smtp_url to your
+ smarthost, e.g. smtps://mail.company.com/.
+
+ The gpgme crypt backend is now enabled.
+
+ -- Christoph Berg <myon@debian.org> Thu, 1 Mar 2007 23:56:58 +0100
+
mutt (1.5.6-1) unstable; urgency=low
- In this release the alternates, lists, and subscribe configuration
- variables have been turned into regular expression lists.
- Additionaly, alternates is now an option, not a variable.
- This means that you should change:
+ In this release the alternates, lists, and subscribe configuration
+ variables have been turned into regular expression lists.
+ Additionaly, alternates is now an option, not a variable.
+ This means that you should change:
- set alternates="foo|bar"
+ set alternates="foo|bar"
- into
+ into
- alternates "foo|bar"
+ alternates "foo|bar"
- in your .muttrc file. See muttrc(5) for details.
+ in your .muttrc file. See muttrc(5) for details.
-- Artur R. Czechowski <arturcz@hell.pl> Sun, 4 Apr 2004 14:04:03 +0200
+++ /dev/null
-#!/bin/sh -e
-# you can use this script to build the CVS source tarball
-
-cd upstream/tarballs/
-cvs -z3 -d :pserver:anonymous@cvs.mutt.org:/home/roessler/cvs co mutt
-cd mutt/
-./prepare
-make distclean
-rm -rf autom4te.cache/ doc/instdoc.sh imap/Makefile
-cd ..
-tar czf mutt-1.5.4+$(date +%Y%m%d).tar.gz mutt/
-rm -rf mutt/
-exit 0
-
-# update procedure:
-cd upstream/tarballs/
-tar xzf mutt-*.tar.gz
-rm mutt-*.tar.gz
-cd mutt/
-cvs -z3 update
-# run ./prepare etc if appropriate
-cd ..
-tar czf mutt-1.5.4+$(date +%Y%m%d).tar.gz mutt/
-rm -rf mutt/
-
+mutt (1.5.16-3) unstable; urgency=medium
+
+ * Fix the maildir-mtime patch change in 1.5.14+cvs20070403-1 that broke
+ new mail message count in IMAP folders. (Closes: #421468, #428734, #433275)
+
+ -- Adeodato Simó <dato@net.com.org.es> Thu, 19 Jul 2007 23:41:02 +0200
+
+mutt (1.5.16-2) unstable; urgency=low
+
+ * Finally a new unstable version :)
+ * Disable gpgme backend again, it needs two "optional" libs we do not want
+ to pull into "standard" now, and it is still somewhat buggy.
+ Reopens: #263443.
+ * Use gdbm instead of bdb for the cache files.
+ * Enable sensible_browser_position patch.
+
+ -- Christoph Berg <myon@debian.org> Thu, 28 Jun 2007 21:58:47 +0200
+
+mutt (1.5.16-1) experimental; urgency=low
+
+ * New upstream version.
+ * compressed-folders: grab updated patch, thanks Roland.
+
+ -- Christoph Berg <myon@debian.org> Thu, 14 Jun 2007 10:54:56 +0200
+
+mutt (1.5.15+20070608-1) experimental; urgency=low
+
+ * Muttrc.head: Temporarily set pipe_decode in the \cb urlview macro.
+ Closes: #423640.
+ * Apply patch by pywatson@gmail.com to strdup strings when sorting.
+ Mutt: #2515, Closes: #196545.
+
+ -- Christoph Berg <myon@debian.org> Fri, 08 Jun 2007 11:19:08 +0200
+
+mutt (1.5.15+20070515-1) experimental; urgency=low
+
+ * New snapshot.
+ + Removed hardcoded pager progress indicator and add %P format code to
+ $pager_status which contains the same information.
+ Mutt: #2087, Closes: #259145.
+ * $smime_verify_opaque_command: fallback to -noverify.
+ Mutt: #2428, Closes: #420014.
+
+ -- Christoph Berg <myon@debian.org> Thu, 17 May 2007 14:15:48 +0200
+
+mutt (1.5.15+20070412-1) experimental; urgency=low
+
+ * New snapshot:
+ + Avoid altering the argument to mutt_complete() when completion fails.
+ Mutt: #2871, Closes: #367405
+ + Allow reply-hook to use ~h when replying from the index.
+ Mutt: #2866, Closes: #362919
+ + Exit with a nonzero value if sending a message in batch mode fails.
+ Mutt: #2709, Closes: #273137
+ + Make mutt more posixly-correct. Mutt: #1615, Closes: #204904
+
+ -- Christoph Berg <myon@debian.org> Thu, 12 Apr 2007 17:04:05 +0000
+
+mutt (1.5.14+cvs20070403-1) experimental; urgency=low
+
+ * set ssl_ca_certificates_file="/etc/ssl/certs/ca-certificates.crt".
+ * Use /etc/ssl/certs/ca-certificates.crt as smime_ca_location if there is
+ none in ~/.smime/ (Closes: #255653).
+ * New snapshot:
+ + Make mutt_edit_file display error if editor return is non-zero
+ (Closes: #209244).
+ + Use ~/.muttrc as the default alias_file if no user muttrc exists
+ (Closes: #226500).
+ + Reset list.name before each list response in folder browser
+ (Mutt: #2444, Closes: #377783).
+ + Fix segfault when trying to read header cache if cwd does not exist
+ (Mutt: #2714, Closes: #387560).
+ + Make message cache write to temporary location until file is complete
+ (Closes: #394383).
+ + Use RECENT for first mailbox check if header cache check fails
+ (Closes: #372512).
+ * Patches:
+ + maildir-mtime: refreshed.
+
+ -- Christoph Berg <myon@debian.org> Tue, 3 Apr 2007 20:54:35 +0200
+
+mutt (1.5.14+cvs20070321-1) experimental; urgency=low
+
+ * Move source package to http://hg.debian.org/hg/pkg-mutt/debian-mutt.
+ * debian/control: Add XS-Vcs fields.
+ * New snapshot:
+ + More space for the "help" string (Closes: #415277).
+ + --buffy-size is a config option, $check_mbox_size (Closes: #379472).
+ * Patches:
+ + gpg.rc: upstream ships without absolute paths, our patch is much simpler
+ now.
+ + compressed-folders: refreshed.
+ * Mention /etc/Muttrc defaults in documentation (Closes: #388667).
+ * debian-ldap-query: Support middle names (Closes: #415653).
+
+ -- Christoph Berg <myon@debian.org> Wed, 21 Mar 2007 21:54:08 +0100
+
+mutt (1.5.14+cvs20070315-1) experimental; urgency=low
+
+ * New upstream snapshot (now from mercurial).
+ + send_charset supports charset-hook'd charsets (Closes: #152444).
+ + Regex for color patterns can be > 256 chars long (Closes: #229801).
+ + Reduces massive strcat use (Closes: #290701).
+ + Uses realpath of folders in the cache (Closes: #298121).
+ + Wraps help correctly on utf-8 terminals (Closes: #328921).
+ + Fixes typos in muttrc.5 (Closes: #366413).
+ + Requery IMAP capabilities after login (Closes: #384076).
+ + Various mutt.1 updates (Closes: #332803, #355912, #366413, #394256).
+ + The key binding documentation is now auto-generated, thereby documenting
+ some missing functions (Closes: #413144).
+ + Previously fixed: IMAP hangs (Closes: #413715).
+ * Split up Muttrc into separate files in /etc/Muttrc.d/.
+ * charset.rc: iconv-hooks for some commonly misused charsets
+ (Closes: #402027).
+ * Add compatibility alias file_charset for attach_charset (got renamed when
+ the assumed-charset patch went upstream).
+ * Patches:
+ + compressed-folders: synced with upstream.
+ + compressed-folders.ranty-fix: removed, went upstream.
+ * Packaging:
+ + Use quilt.make.
+ + Move patchlist sorting into patchlist.sh.
+
+ -- Christoph Berg <myon@debian.org> Thu, 15 Mar 2007 14:11:31 +0100
+
+mutt (1.5.14+cvs20070301-1) experimental; urgency=low
+
+ * New upstream snapshot. Hilights:
+ + Now features ESMTP support, yay!
+ + PKA support via gpgme.
+ + Ability to save history.
+ * Enable gpgme backend (Closes: #263443).
+ * Move mail-transport-agent from Depends to Recommends (Closes: #356297).
+ * /etc/Muttrc:
+ + Do not unset write_bcc (Closes: #304718).
+ + Do not unset use_from and use_domain (Closes: #283311, #398699).
+ + Add quotes for compressed folder hooks (Closes: #238034),
+ + mime_lookup application/octet-stream.
+ * Patches:
+ + assumed-charset: removed, applied upstream.
+ + xtitles: Removed a comment on the default of xterm_set_titles (mentioned
+ in #366413).
+ * colors.angdraug: Fix spelling (Closes: #295241).
+ * gpg.rc: add full path for pgpewrap (Closes: #396207).
+ * Update copyright holders.
+
+ -- Christoph Berg <myon@debian.org> Thu, 1 Mar 2007 22:48:53 +0100
+
+mutt (1.5.13+cvs20070215-1) experimental; urgency=low
+
+ * Update to a CVS snapshot:
+ Closes: #47284: newlines/spaces are removed from custom multiple header
+ lines
+ Closes: #397858: /usr/bin/mutt_dotlock: off-by-one error in mutt_dotlock.c
+ Closes: #400831: logic error in mutt-1.5.13/account.c
+ Closes: #404916: sort-mailbox by spam tag score sorting strangeness
+ Closes: #410678: crash when IMAP server skips messages during a FETCH
+ without a cast.
+
+ * Patches:
+ + Reshuffle patches to move autotools-needing/updating to front.
+ + compressed-folders: refreshed.
+ + autotools-update: updated.
+ + tempfile-race, thread_pattern_in_UPDATING: removed, included upstream.
+
+ New patches:
+ + ifdef: test for presence of features, patch by Cedric Duval.
+ + trash-folder, purge-message: trash folder support, also by Cedric Duval
+ (Closes: #263204).
+
+ Patches shipped but not applied by default:
+ + chdir: change working directory.
+ + indexcolor: color index colums.
+ + w3mface: display X-Face headers using w3mimgdisplay.
+
+ * Create /etc/Muttrc.d/ (Closes: #391961).
+ * Make sure reldate.h is found while building the docs.
+
+ -- Christoph Berg <myon@debian.org> Fri, 16 Feb 2007 02:04:35 +0100
+
+mutt (1.5.13-2) experimental; urgency=low
+
+ * Adding myself as uploader, thanks Dato.
+ * debian/rules:
+ + Actually support DEB_BUILD_OPTIONS=noopt.
+ + Do not touch stamp-h.in, touch PATCHES in clean.
+ * Patches:
+ + Moved xtitles to features/ and fixed a segfault (Closes: #365683).
+
+ -- Christoph Berg <myon@debian.org> Mon, 12 Feb 2007 18:37:44 +0100
+
+mutt (1.5.13-1.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * Add upstream patch to fix insecure temp file generation
+ (Closes: #396104, CVE-2006-5297, CVE-2006-5298).
+
+ -- Christoph Berg <myon@debian.org> Tue, 12 Dec 2006 14:49:24 +0100
+
+mutt (1.5.13-1) unstable; urgency=low
+
+ * New upstream release, with a new pattern to match full threads (see
+ NEWS.gz).
+
+ -- Adeodato Simó <dato@net.com.org.es> Wed, 16 Aug 2006 15:22:53 +0200
+
+mutt (1.5.12-1) unstable; urgency=low
+
+ * New upstream release. Ship upstream's UPDATING file as NEWS.gz in
+ /usr/share/doc/mutt.
+
+ -- Adeodato Simó <dato@net.com.org.es> Sat, 15 Jul 2006 02:49:50 +0200
+
+mutt (1.5.11+cvs20060403-2) unstable; urgency=high
+
+ * Fix CVE-2006-3242, stack-based buffer overflow when processing an overly
+ long namespace from the IMAP server. (Closes: #375828)
+
+ -- Adeodato Simó <dato@net.com.org.es> Fri, 7 Jul 2006 15:01:28 +0200
+
+mutt (1.5.11+cvs20060403-1) unstable; urgency=low
+
+ * Update to CVS 2006-04-03, which finally:
+ + fixes segfault when changing to an IMAP folder and the mailbox name
+ is implicitly INBOX. (Closes: #351337, #353550)
+
+ -- Adeodato Simó <dato@net.com.org.es> Tue, 4 Apr 2006 06:10:12 +0200
+
+mutt (1.5.11+cvs20060330-1) unstable; urgency=low
+
+ * Update to CVS 2006-03-30, which fixes the following bugs:
+ + IMAP cache works again with Courier. (Closes: #351220)
+ + does not segfault if external query command output contains spaces.
+ (Closes: #351258)
+ + does not segfault when replying from the view-attachments menu when a
+ reply-hook is in use. (Closes: #352357)
+ + default save location for attachments which specify a path in their name
+ is not `dirname $attachment` anymore, but $CWD. (Closes: #301236)
+
+ * Switch to libdb4.4. (Closes: #355433)
+
+ -- Adeodato Simó <dato@net.com.org.es> Mon, 3 Apr 2006 02:41:15 +0200
+
+mutt (1.5.11+cvs20060126-2) unstable; urgency=medium
+
+ * Make imap_idle default to off, since it does not work with dovecot from
+ stable, which a lot of people use; upstream will make this change before
+ 1.5.12. (Closes: #351263, #354902)
+
+ * Ignore DKIM-Signature by default in /etc/Muttrc. (Closes: #354907)
+
+ -- Adeodato Simó <dato@net.com.org.es> Thu, 2 Mar 2006 22:42:34 +0100
+
+mutt (1.5.11+cvs20060126-1) unstable; urgency=low
+
+ * Update to CVS 2006-01-26; since this includes a huge diff between
+ ChangeLog and ChangeLog.old (moved entries), prepare a new tarball.
+ Some worth-mentioning changes:
+
+ + Mutt can now expand its own variables as it does with envvars; for
+ example, it's now possible to put something like this into a hook:
+ set sendmail="mysmtp -f $from".
+
+ + Support for user-defined variables starting with my_; environment
+ variables take precedence, and expansion does not occur in shell-escape.
+
+ + Pattern group support, as explained (only!) in:
+ <http://does-not-exist.org/mail-archives/mutt-dev/msg05693.html>
+
+ + Loooots of improvments in the IMAP code, including sync speed-ups
+ (through pipelining), hcache stuff (eg. $imap_cachedir), and things
+ like $imap_idle and support for the "old" flag in IMAP folders.
+
+ * Rework the package build system to fit personal preference:
+ + debhelperize debian/rules a bit more.
+ + drop dbs in favor of quilt; reorganize patches a bit.
+
+ (NOTE: quilt means that dropping patches into debian/patches is
+ no longer enough to get them applied; they must be listed in the
+ debian/patches/series file.)
+
+ * Adjustments to debian/control:
+ + use '*' for the bulleted list, instead of 'o'.
+ + build-depend on gawk instead of mawk, to have "nextfile".
+ + drop conflicts and replaces on packages that are not in woody.
+
+ * Updated debian/copyright.
+
+ * Added debian/watch.
+
+ -- Adeodato Simó <dato@net.com.org.es> Thu, 2 Feb 2006 05:12:18 +0100
+
+mutt (1.5.11-5) unstable; urgency=medium
+
+ * Unbreak Mutt in Turkish locales (tr_TR): include patch from CVS to use the
+ proper strcmp function in several places. Upstream bug #2144, reported in
+ both BTS by Recai Oktas. (Closes: #343655)
+
+ * Apply patch from Nik A. Melchior to fix formatting problem in muttrc(5).
+ (Closes: #343030)
+
+ -- Adeodato Simó <dato@net.com.org.es> Fri, 23 Dec 2005 23:18:44 +0100
+
+mutt (1.5.11-4) unstable; urgency=low
+
+ * Update to CVS 2005-11-24 to fix the following bug (yay):
+
+ + does not fail to open messages that contain base64-encoded inline PGP
+ bits (signature, encrypted hunk, or a key). (Closes: #340116)
+
+ Also, do not report success to decrypt an inline PGP message when
+ decryption actually failed.
+
+ * Again, update my e-mail address in debian/control, yada yada.
+
+ -- Adeodato Simó <dato@net.com.org.es> Fri, 25 Nov 2005 02:50:20 +0100
+
+mutt (1.5.11-3) unstable; urgency=low
+
+ * Update to CVS 2005-11-01, with the following worth-of-mentioning goodies
+ (among others):
+
+ + full read/write >2 GB mbox support.
+ + attachment counting patch merged upstream (%X in index_format); check
+ the "Attachment Searching and Counting" section in the manual for more
+ information.
+
+ And the following bugs are fixed as well:
+
+ + S/MIME keys can be selected from the menu. (Closes: #318470)
+ + clarified description of pop_checkinterval. (Closes: #320642)
+
+ * Update my e-mail address in debian/control.
+
+ -- Adeodato Simó <dato@the-barrel.org> Fri, 11 Nov 2005 02:16:11 +0100
+
+mutt (1.5.11-2) unstable; urgency=low (but fixes critical bug not in testing)
+
+ * The fix for coping with mboxes bigger than 2 GB introduced a bug affecting
+ at least powerpc (but not i386) which made mutt write Content-Length: 0 in
+ mboxes due to a un-updated %ld format specifier. This caused for mail to
+ be lost in the next mbox write.
+
+ Apply a patch quickly provided by upstream (thanks, Brendan Cully!) that
+ makes mutt use the right format specifier. (Closes: #330474)
+
+ * Update the compressed folders to the 1.5.11, which includes documentation
+ in XML format.
+
+ -- Adeodato Simó <asp16@alu.ua.es> Fri, 30 Sep 2005 01:15:28 +0200
+
+mutt (1.5.11-1) unstable; urgency=low
+
+ * New upstream release, fixing the following bugs:
+
+ + ~h can match folded headers. (Closes: #319654)
+ + implements progress indication when uploading messages to an imap
+ folder. (Closes: #228713)
+ + limit pattern is properly displayed when zero messages matched.
+ (Closes: #242398)
+
+ A further CVS pull (2005-09-24) fixes the following bugs:
+
+ + can open mboxes bigger than 2 GB. (Closes: #296940)
+ + does not require GPG_TTY to be set in order to accept using the GnuPG
+ agent: it'll set the variable itself if not present. (Closes: #316388)
+ + does not segfault when replying to a message if content_type is unset.
+ (Closes: #329306)
+ + does not segfault with IMAP folder completion. (Closes: #329442)
+
+ Packaging changes needed:
+
+ + Upstream documentation now comes in XML, so changed Build-Dependency on
+ linuxdoc-tools-text and groff to xsltproc, docbook-xml, docbook-xsl and
+ links. Added patch debian/patches/doc_build_adjustments.diff to force
+ the use of links instead of lynx for generating the text version of the
+ manual, and to not ignore errors from links and xsltproc.
+
+ + Changed --with-sasl2 to its new name --with-sasl in debian/rules;
+ removed extra hunk on debian/patches/patch-1.5.4.Md.sasl2-1arc.
+
+ + Rediffed 080_Md.Muttrc, removed patch.asp.fix-bug-266493.1 (applied
+ upstream).
+
+ + Temporarily removed documentation from the compressed-folders patch,
+ until upstream reacts to the move to XML.
+
+ * Build against libgnutls12 (build-depend on libgnutls-dev instead of
+ libgnutls11-dev). (Closes: #323279)
+
+ * Remove spurious dash in argument to -encrypt in smime_encrypt_command.
+ (Closes: #315319)
+
+ -- Adeodato Simó <asp16@alu.ua.es> Sun, 25 Sep 2005 23:11:59 +0200
+
+mutt (1.5.10-1) unstable; urgency=low
+
+ * New upstream release, fixing the following bugs:
+ + does not store gpg passphrase when signing or decrypting has failed,
+ since that probably means it was wrong. (Closes: #132548)
+ + does not fail to delete attachments in unencrypted mails. (Closes:
+ #302500)
+
+ * New functionality overview or otherwise noticeable news:
+ + $imap_check_subscribed variable to add the list of subscribed folders to
+ the buffy list.
+ + $braille_friendly variable to make Mutt more usable for blind users.
+ + $imap_login variable in case the login name on the IMAP server is
+ different to the name of the account ($imap_user).
+ + -D command line option to dump current configuration, after all
+ initialization files have been read.
+ + $imap_force_ssl gone.
+ + an empty limit is now interpreted as a request to cancel the current
+ limit.
+
+ * Patches:
+ + 080_Md.paths_mutt.man: adjusted; upstream build system puts now the
+ right paths in mutt.1 using @bindir@. Install mutt.1 instead of mutt.man
+ in debian/rules.
+ + 080_Md.Muttrc: don't set menu_move_off in /etc/Muttrc since the
+ compile-time default is now what we want (pre-1.5.7 compatible).
+ + edit-threads, current-shortcut, incomplete-mbyte: removed, integrated
+ upstream.
+ + maildir-mtime: s/if/ifdef/ to get it to apply.
+ + compressed-folders: updated to 1.5.10.
+
+ * Upstream now builds "complete" documentation, i.e., for all features
+ whether enabled or not. Disable that for Debian. [patch.docs-match-config.h]
+
+ * Build-Depend on autotools-dev and use updated config.{guess,sub} at build
+ time to fix FTBFS on GNU/kFreeBSD. (Closes: #302735)
+
+ * Update Standards-Version to 3.6.2 (no changes required).
+
+ * Set myself as the maintainer, and remove Marco from Uploaders as agreed
+ with him.
+
+ -- Adeodato Simó <asp16@alu.ua.es> Mon, 15 Aug 2005 15:51:55 +0200
+
mutt (1.5.9-2sarge2) stable-security; urgency=high
* Fix buffer overflow in IMAP parsing code
Source: mutt
Section: mail
Priority: standard
-Maintainer: Marco d'Itri <md@linux.it>
-Uploaders: Marco d'Itri <md@linux.it>, Adeodato Simó <asp16@alu.ua.es>
-Build-Depends: debhelper (>= 4), mawk, linuxdoc-tools-text, gettext, groff, libncurses5-dev, libsasl2-dev, libgnutls11-dev, libidn11-dev, zlib1g-dev, libncursesw5-dev, libdb4.3-dev
-Standards-Version: 3.6.1.1
+Maintainer: Adeodato Simó <dato@net.com.org.es>
+Uploaders: Christoph Berg <myon@debian.org>
+Build-Depends: debhelper, quilt (>= 0.40-1), autotools-dev, gawk, gettext, xsltproc, docbook-xml, docbook-xsl, links, libncurses5-dev, libsasl2-dev, libgnutls-dev, libidn11-dev, zlib1g-dev, libncursesw5-dev, libgdbm-dev
+Standards-Version: 3.7.2
+XS-Vcs-Browser: http://hg.debian.org/hg/pkg-mutt/debian-mutt
+XS-Vcs-Hg: http://hg.debian.org/hg/pkg-mutt/debian-mutt
Package: mutt
Architecture: any
Priority: standard
-Depends: ${shlibs:Depends}, ${misc:Depends}, exim4 | mail-transport-agent
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: exim4 | mail-transport-agent, locales, mime-support
Suggests: urlview, aspell | ispell, gnupg, mixmaster, openssl, ca-certificates
-Recommends: locales, mime-support
Provides: mail-reader, imap-client
-Conflicts: suidmanager (<< 0.50), mutt-i, mutt-utf8
-Replaces: mutt-i, mutt-utf8
-Description: Text-based mailreader supporting MIME, GPG, PGP and threading
+Conflicts: mutt-utf8
+Replaces: mutt-utf8
+Description: text-based mailreader supporting MIME, GPG, PGP and threading
Mutt is a sophisticated text-based Mail User Agent. Some highlights:
- o MIME support (including RFC1522 encoding/decoding of 8-bit message
+ .
+ * MIME support (including RFC1522 encoding/decoding of 8-bit message
headers and UTF-8 support).
- o PGP/MIME support (RFC 2015).
- o Advanced IMAP client supporting SSL encryption and SASL authentication.
- o POP3 support.
- o Mailbox threading (both strict and non-strict).
- o Default keybindings are much like ELM.
- o Keybindings are configurable; Mush and PINE-like ones are provided as
- examples.
- o Handles MMDF, MH and Maildir in addition to regular mbox format.
- o Messages may be (indefinitely) postponed.
- o Colour support.
- o Highly configurable through easy but powerful rc file.
+ * PGP/MIME support (RFC 2015).
+ * Advanced IMAP client supporting SSL encryption and SASL authentication.
+ * POP3 support.
+ * ESMTP support.
+ * Message threading (both strict and non-strict).
+ * Keybindings are configurable, default keybindings are much like ELM;
+ Mush and PINE-like ones are provided as examples.
+ * Handles MMDF, MH and Maildir in addition to regular mbox format.
+ * Messages may be (indefinitely) postponed.
+ * Colour support.
+ * Highly configurable through easy but powerful rc file.
-This package was originally debianized by Stephen Pitts
-<pitts2@memphisonline.com> on Thu, 14 Nov 1996 19:04:20 -0600.
+This is Debian's prepackaged version of Mutt, a powerful text-mode mail
+user agent.
-The next debian maintainer was J.H.M. Dassen <jdassen@wi.LeidenUniv.nl>.
+The current maintainers for this package are:
+ Adeodato Simó <dato@net.com.org.es>
+ Christoph Berg <myon@debian.org>
-Current debian maintainer is Marco d'Itri <md@linux.it> (since sept. 1998).
+Previous maintainers were:
+ Stephen Pitts <pitts2@memphisonline.com>
+ J.H.M. Dassen <jdassen@wi.LeidenUniv.nl>
+ Marco d'Itri <md@linux.it>
-Original source has been downloaded from ftp://ftp.mutt.org/mutt/ .
+Original source has been downloaded from ftp://ftp.mutt.org/mutt/:
+ URL:<ftp://ftp.mutt.org/mutt/devel/>
The following copyright notices apply to most of the program. Some
modules are under different licenses, or in the public domain.
manual for a (probably still non complete) list of the persons who
have been helpful with the development of this program.
-Copyright (C) 1996-2001 Michael R. Elkins <me@cs.hmc.edu>
-Copyright (C) 1996-2001 Brandon Long <blong@fiction.net>
-Copyright (C) 1997-2001 Thomas Roessler <roessler@guug.de>
-Copyright (C) 1998-2001 Werner Koch <wk@isil.d.shuttle.de>
-Copyright (C) 1999-2001 Brendan Cully <brendan@kublai.com>
-Copyright (C) 1999-2001 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-Copyright (C) 2000-2001 Edmund Grimley Evans <edmundo@rano.org>
+Main authors:
+ Copyright (C) 1996-2006 Michael R. Elkins <me@cs.hmc.edu>
+ Copyright (C) 1996-2001 Brandon Long <blong@fiction.net>
+ Copyright (C) 1997-2007 Thomas Roessler <roessler@guug.de>
+ Copyright (C) 1998-2003 Werner Koch <wk@isil.d.shuttle.de>
+ Copyright (C) 1999-2007 Brendan Cully <brendan@kublai.com>
+
+Contributors:
+ Copyright (C) 2001 Marco d'Itri
+ Copyright (C) 2001-2002 Oliver Ehli
+ Copyright (C) 2000-2001 Edmund Grimley Evans <edmundo@rano.org>
+ Copyright (C) 2004 Brian Fundakowski Feldman
+ Copyright (C) 2004 g10 Code GmbH
+ Copyright (C) 2004 Thomas Glanzmann
+ Copyright (C) 2003 Bjoern Jacke
+ Copyright (C) 2000 Manoj Kasichainula
+ Copyright (C) 1999-2001 Tommi Komulainen <Tommi.Komulainen@iki.fi>
+ Copyright (C) 2001-2004 Andrew McDonald
+ Copyright (C) 2001 Mike Schiraldi
+ Copyright (C) 2005-2007 Rocco Rutte
+ Copyright (C) 2000-2003 Vsevolod Volkov
+ Copyright (C) 2004 Tobias Werth
+ Copyright (C) 2005 Andreas Krennmair <ak@synflood.at>
+ Copyright (C) 2005 Peter J. Holzer <hjp@hjp.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
+intl subdirectory:
+ Copyright (C) 1995-2001 Free Software Foundation, Inc.
+ Contributed by Ulrich Drepper, 1995.
+
On Debian systems, the complete text of the GNU General Public License
can be found in `/usr/share/common-licenses/GPL'.
+md5c.c:
+ Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
+ rights reserved.
+ License to copy and use this software is granted provided that it
+ is identified as the "RSA Data Security, Inc. MD5 Message-Digest
+ Algorithm" in all material mentioning or referencing this software
+ or this function.
+ License is also granted to make and use derivative works provided
+ that such works are identified as "derived from the RSA Data
+ Security, Inc. MD5 Message-Digest Algorithm" in all material
+ mentioning or referencing the derived work.
+ RSA Data Security, Inc. makes no representations concerning either
+ the merchantability of this software or the suitability of this
+ software for any particular purpose. It is provided "as is"
+ without express or implied warranty of any kind.
+ These notices must be retained in any copies of any part of this
+ documentation and/or software.
+
The list of authors of the applied patches to this version of mutt can
-be found in `/usr/share/doc/mutt/README.Patches.gz'.
+be found in `/usr/share/doc/mutt/README.Patches'.
use strict;
-my @attrs = qw(sn cn ircnick uid);
+my @attrs = qw(sn mn cn ircnick uid);
my $base = 'ou=users, dc=debian, dc=org';
my $server = 'db.debian.org';
my $port = 389;
) or die 'Failed search';
foreach my $entry ($mesg->entries) {
my $uid = $entry->get_value('uid') || next;
- my $fname = $entry->get_value('cn') || '';
- my $lname = $entry->get_value('sn') || '';
+ my $fname = $entry->get_value('cn') || '';
+ my $mname = $entry->get_value('mn') || '';
+ $mname .= ' ' if $mname;
+ my $lname = $entry->get_value('sn') || '';
my $nick = $entry->get_value('ircnick')|| '';
- push @results, "<$uid\@debian.org>\t$fname $lname\t($nick)\n";
+ push @results, "<$uid\@debian.org>\t$fname $mname$lname\t($nick)\n";
}
}
-
# See /usr/share/doc/mutt/README.Debian for details.
source /usr/lib/mutt/source-muttrc.d|
--- /dev/null
+# Some GB18030 traditional Chinese mails are wrongly labelled GB2312.
+# The first charset is a superset of the second. Let's alias it, so
+# that Mutt displays such mails as if they were correctly labelled.
+charset-hook ^gb2312$ gb18030
+
+# Some mailers send EUC-JP-MS Japanese mails wrongly labelled EUC-JP.
+# The first charset is a superset of the second. Let's also alias it.
+charset-hook ^euc-jp$ euc-jp-ms
+
--- /dev/null
+# colors
+color normal white black
+color attachment brightyellow black
+color hdrdefault cyan black
+color indicator black cyan
+color markers brightred black
+color quoted green black
+color signature cyan black
+color status brightgreen blue
+color tilde blue black
+color tree red black
+#color header brightgreen black ^From:
+#color header brightcyan black ^To:
+#color header brightcyan black ^Reply-To:
+#color header brightcyan black ^Cc:
+#color header brightblue black ^Subject:
+#color body brightred black [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+
+#color body brightblue black (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+
+
--- /dev/null
+# Use folders which match on \\.gz$ or \\.bz2$ as [gb]zipped folders:
+open-hook \\.gz$ "gzip -cd '%f' > '%t'"
+close-hook \\.gz$ "gzip -c '%t' > '%f'"
+append-hook \\.gz$ "gzip -c '%t' >> '%f'"
+open-hook \\.bz2$ "bzip2 -cd '%f' > '%t'"
+close-hook \\.bz2$ "bzip2 -c '%t' > '%f'"
+append-hook \\.bz2$ "bzip2 -c '%t' >> '%f'"
+
-
# S/MIME configuration
-set smime_ca_location="~/.smime/ca-bundle.crt"
+set smime_ca_location=`for f in $HOME/.smime/ca-certificates.crt $HOME/.smime/ca-bundle.crt /etc/ssl/certs/ca-certificates.crt ; do if [ -f $f ] ; then echo $f ; exit ; fi ; done`
set smime_certificates="~/.smime/certificates"
set smime_keys="~/.smime/keys"
set smime_pk7out_command="openssl smime -verify -in %f -noverify -pk7out"
set smime_get_signer_cert_command="openssl smime -verify -in %f -noverify -signer %c -out /dev/null"
set smime_get_cert_email_command="openssl x509 -in %f -noout -email"
set smime_import_cert_command="smime_keys add_cert %f"
-set smime_encrypt_command="openssl smime -encrypt -%a -outform DER -in %f %c"
+set smime_encrypt_command="openssl smime -encrypt %a -outform DER -in %f %c"
set smime_sign_command="openssl smime -sign -signer %c -inkey %k -passin stdin -in %f -certfile %i -outform DER"
# This alternative command does not include the full certificates chain.
# Be sure to understand RFC 2315 section 9.1 before using it.
-# set smime_sign_command="openssl smime -sign -signer %c -inkey %k -passin stdin -in %f -outform DER"
+#set smime_sign_command="openssl smime -sign -signer %c -inkey %k -passin stdin -in %f -outform DER"
set smime_decrypt_command="openssl smime -decrypt -passin stdin -inform DER -in %f -inkey %k -recip %c"
set smime_verify_command="openssl smime -verify -inform DER -in %s %C -content %f"
-set smime_verify_opaque_command="openssl smime -verify -inform DER -in %s %C"
+set smime_verify_opaque_command="\
+openssl smime -verify -inform DER -in %s %C || \
+openssl smime -verify -inform DER -in %s -noverify 2>/dev/null"
-set mixmaster="mixmaster-filter"
# date formats
color body cyan default "[0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?"
color body cyan default "(\(19|20\)?[0-9]{2}/[01]?[0-9]/[0123]?[0-9]|[0123]?[0-9][/.][01]?[0-9][/.]\(19|20\)?[0-9]{2})(( at)? +[0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?)?"
-color body cyan default "((Sun(day)?|Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(sday)?|Fri(day)?|Sat(urday)?),? +)?(Jan(uary)?|Feb(rary)?|Mar(ch)?|Apr(il)?|May|June?|July?|Aug(ust)?|Sep(ember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?)[ .]+[0-9]{1,2}(st|nd|rd|th)?,?( +(19|20)[0-9]{2}(,?( at)? [0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?)?)?"
-color body cyan default "((Sun(day)?|Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(sday)?|Fri(day)?|Sat(urday)?),? +)?[0-9]{1,2}(st|nd|rd|th)?[ .]+(Jan(uary)?|Feb(rary)?|Mar(ch)?|Apr(il)?|May|June?|July?|Aug(ust)?|Sep(ember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?),?( +(19|20)?[0-9]{2})?(( at)? [0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?)?"
+color body cyan default "((Sun(day)?|Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(sday)?|Fri(day)?|Sat(urday)?),? +)?(Jan(uary)?|Feb(ruary)?|Mar(ch)?|Apr(il)?|May|June?|July?|Aug(ust)?|Sep(ember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?)[ .]+[0-9]{1,2}(st|nd|rd|th)?,?( +(19|20)[0-9]{2}(,?( at)? [0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?)?)?"
+color body cyan default "((Sun(day)?|Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(sday)?|Fri(day)?|Sat(urday)?),? +)?[0-9]{1,2}(st|nd|rd|th)?[ .]+(Jan(uary)?|Feb(ruary)?|Mar(ch)?|Apr(il)?|May|June?|July?|Aug(ust)?|Sep(ember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?),?( +(19|20)?[0-9]{2})?(( at)? [0-9]{1,2}:[0-9]{2}(:[0-9]{2})?( ?(AM|PM|am|pm))?( +[+-][0-9]{4})?)?"
color header brightgreen default ^From:
color header brightcyan default ^To:
-#!/usr/bin/mawk -f
+#! /usr/bin/gawk -f
BEGIN {
sep = "============================================================================="
}
FILENAME ~ /debian$/ {
- exit
+ nextfile
}
/^== END PATCH$/ {
print ""
- exit
+ nextfile
}
FNR == 1 {
- print FILENAME "\n" substr(sep, 0, 1+length(FILENAME)) "\n"
+ print FILENAME "\n" substr(sep, 0, length(FILENAME)) "\n"
next
}
{
print
}
-
--- /dev/null
+etc/Muttrc.d
--- /dev/null
+debian/extra/README.SMIME
+debian/tmp/README.Patches
+debian/tmp/usr/share/doc/NEWS
+debian/tmp/usr/share/doc/NEWS.old
+debian/tmp/usr/share/doc/TODO
+debian/tmp/usr/share/doc/README
+debian/tmp/usr/share/doc/README.SSL
+debian/tmp/usr/share/doc/README.SECURITY
+debian/tmp/usr/share/doc/PGP-Notes.txt
+debian/tmp/usr/share/doc/changelog.old
+debian/tmp/usr/share/doc/manual.txt
--- /dev/null
+debian/extra/samples/*
+debian/tmp/etc/Muttrc
+debian/tmp/usr/share/doc/samples/*
--- /dev/null
+debian/tmp/usr/bin/mutt
+debian/tmp/usr/bin/smime_keys
+debian/tmp/usr/bin/mutt_dotlock
+debian/tmp/usr/share/locale/*
+
+debian/extra/lib/mailspell usr/lib/mutt
+debian/tmp/usr/bin/pgpring usr/lib/mutt
+debian/tmp/usr/bin/pgpewrap usr/lib/mutt
+debian/extra/lib/source-muttrc.d usr/lib/mutt
+debian/extra/lib/debian-ldap-query usr/lib/mutt
+
+debian/tmp/Muttrc etc
+debian/tmp/gpg.rc etc/Muttrc.d
+debian/extra/rc/*.rc etc/Muttrc.d
+debian/extra/mutt.xpm usr/share/pixmaps
+debian/tmp/usr/share/doc/*.html usr/share/doc/mutt/html
--- /dev/null
+debian/tmp/usr/share/man/man1/mutt.1
+debian/tmp/usr/share/man/man1/mutt_dotlock.1
+debian/tmp/usr/share/man/man5/muttrc.5
+debian/tmp/usr/share/man/man5/mbox.5
+debian/tmp/usr/share/man/man5/mmdf.5
+++ /dev/null
-diff -ruN mutt-1.5.9.orig/Muttrc.head.in mutt-1.5.9/Muttrc.head.in
---- mutt-1.5.9.orig/Muttrc.head.in 2002-01-24 13:10:47.000000000 +0100
-+++ mutt-1.5.9/Muttrc.head.in 2005-04-10 13:54:02.000000000 +0200
-@@ -6,6 +6,41 @@
- #
- ignore "from " received content- mime-version status x-status message-id
- ignore sender references return-path lines
-+ignore date delivered-to precedence errors-to in-reply-to user-agent
-+ignore x-loop x-sender x-mailer x-msmail-priority x-mimeole x-ms- x-priority
-+ignore x-accept-language x-authentication-warning thread- priority importance
-+ignore x-original-to domainkey-signature
-+
-+# emacs-like bindings
-+bind editor "\e<delete>" kill-word
-+bind editor "\e<backspace>" kill-word
-+
-+# map delete-char to a sane value
-+bind editor <delete> delete-char
-+
-+# some people actually like these settings
-+#set pager_stop
-+#bind pager <up> previous-line
-+#bind pager <down> next-line
-+
-+# restore the behaviour of mutt versions up to 1.5.7
-+set menu_move_off
-+
-+# don't add the hostname to the From header
-+unset use_domain
-+# don't generate a From header
-+unset use_from
-+
-+# Specifies how to sort messages in the index menu.
-+set sort=threads
-+
-+# Exim does not remove Bcc headers
-+unset write_bcc
-+# Postfix and qmail use Delivered-To for detecting loops
-+unset bounce_delivered
-+
-+# weed out binary-only announcements to -devel-changes
-+#macro index \CW T!~s\(.*source.*\)\nWn^T~A\n "Weed out binary-only announcements"
-
- # imitate the old search-body function
- macro index \eb '/~b ' 'search in message bodies'
-@@ -15,9 +50,17 @@
- macro pager \cb |urlview\n 'call urlview to extract URLs out of a message'
-
- # Show documentation when pressing F1
--macro generic <f1> "!less @docdir@/manual.txt\n" "Show Mutt documentation"
--macro index <f1> "!less @docdir@/manual.txt\n" "Show Mutt documentation"
--macro pager <f1> "!less @docdir@/manual.txt\n" "Show Mutt documentation"
-+macro generic <f1> "!zcat @docdir@/mutt/manual.txt.gz | sensible-pager\n" "Show Mutt documentation"
-+macro index <f1> "!zcat @docdir@/mutt/manual.txt.gz | sensible-pager\n" "Show Mutt documentation"
-+macro pager <f1> "!zcat @docdir@/mutt/manual.txt.gz | sensible-pager\n" "Show Mutt documentation"
-+
-+# Use folders which match on \\.gz$ or \\.bz2$ as [gb]zipped folders:
-+open-hook \\.gz$ "gzip -cd %f > %t"
-+close-hook \\.gz$ "gzip -c %t > %f"
-+append-hook \\.gz$ "gzip -c %t >> %f"
-+open-hook \\.bz2$ "bzip2 -cd %f > %t"
-+close-hook \\.bz2$ "bzip2 -c %t > %f"
-+append-hook \\.bz2$ "bzip2 -c %t >> %f"
-
- # If Mutt is unable to determine your site's domain name correctly, you can
- # set the default here.
-@@ -28,7 +71,22 @@
- #
- # set use_8bitmime
-
--##
--## More settings
--##
-+# colors
-+color normal white black
-+color attachment brightyellow black
-+color hdrdefault cyan black
-+color indicator black cyan
-+color markers brightred black
-+color quoted green black
-+color signature cyan black
-+color status brightgreen blue
-+color tilde blue black
-+color tree red black
-+#color header brightgreen black ^From:
-+#color header brightcyan black ^To:
-+#color header brightcyan black ^Reply-To:
-+#color header brightcyan black ^Cc:
-+#color header brightblue black ^Subject:
-+#color body brightred black [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+
-+#color body brightblue black (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+
-
+++ /dev/null
-diff -urN mutt-1.3.22.orig/doc/mutt.man mutt-1.3.22/doc/mutt.man
---- mutt-1.3.22.orig/doc/mutt.man Thu Aug 30 14:55:04 2001
-+++ mutt-1.3.22/doc/mutt.man Sat Sep 15 18:41:08 2001
-@@ -136,9 +136,9 @@
- User's personal mapping between MIME types and file extensions.
- .IP "/etc/mime.types"
- System mapping between MIME types and file extensions.
--.IP "/usr/local/bin/mutt_dotlock"
-+.IP "/usr/bin/mutt_dotlock"
- The privileged dotlocking program.
--.IP "/usr/local/doc/mutt/manual.txt"
-+.IP "/usr/share/doc/mutt/manual.txt.gz"
- The Mutt manual.
- .SH BUGS
- .PP
+++ /dev/null
-diff -urNp mutt-1.5.3+CVS20030214.orig/PATCHES mutt-1.5.3+CVS20030214/PATCHES
---- mutt-1.5.3+CVS20030214.orig/PATCHES 2002-12-09 18:44:54.000000000 +0100
-+++ mutt-1.5.3+CVS20030214/PATCHES 2003-02-14 17:25:15.000000000 +0100
-@@ -1,0 +1 @@
-+Debian.Md.use_debian_editor
-diff -urNp mutt-1.5.3+CVS20030214.orig/init.c mutt-1.5.3+CVS20030214/init.c
---- mutt-1.5.3+CVS20030214.orig/init.c 2003-01-21 13:33:41.000000000 +0100
-+++ mutt-1.5.3+CVS20030214/init.c 2003-02-14 17:25:44.000000000 +0100
-@@ -1853,7 +1853,7 @@ void mutt_init (int skip_sys_rc, LIST *c
- {
- p = getenv ("EDITOR");
- if (!p)
-- p = "vi";
-+ p = "/usr/bin/editor";
- }
- Editor = safe_strdup (p);
- Visual = safe_strdup (p);
-diff -urNp mutt-1.5.3+CVS20030214.orig/init.h mutt-1.5.3+CVS20030214/init.h
---- mutt-1.5.3+CVS20030214.orig/init.h 2003-02-13 10:55:02.000000000 +0100
-+++ mutt-1.5.3+CVS20030214/init.h 2003-02-14 17:27:41.000000000 +0100
-@@ -466,7 +466,7 @@ struct option_t MuttVars[] = {
- ** .pp
- ** This variable specifies which editor is used by mutt.
- ** It defaults to the value of the VISUAL, or EDITOR, environment
-- ** variable, or to the string "vi" if neither of those are set.
-+ ** variable, or to the string "/usr/bin/editor" if neither of those are set.
- */
- { "encode_from", DT_BOOL, R_NONE, OPTENCODEFROM, 0 },
- /*
+++ /dev/null
-diff -u -r mutt-1.5.6.orig/contrib/gpg.rc mutt-1.5.6/contrib/gpg.rc
---- mutt-1.5.6.orig/contrib/gpg.rc 2002-03-26 23:23:58.000000000 +0100
-+++ mutt-1.5.6/contrib/gpg.rc 2004-05-23 15:01:52.000000000 +0200
-@@ -72,6 +72,8 @@
-
- # fetch keys
- # set pgp_getkeys_command="pkspxycwrap %r"
-+# This will work when #172960 will be fixed upstream
-+# set pgp_getkeys_command="/usr/bin/gpg --recv-keys %r"
-
- # pattern for good signature - may need to be adapted to locale!
-
+++ /dev/null
-diff -ru mutt-1.5.9.orig/Makefile.in mutt-1.5.9/Makefile.in
---- mutt-1.5.9.orig/Makefile.in 2005-03-13 17:37:46.000000000 +0100
-+++ mutt-1.5.9/Makefile.in 2005-04-03 19:58:55.328383264 +0200
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.2 from Makefile.am.
-+# Makefile.in generated by automake 1.9.5 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004 Free Software Foundation, Inc.
-+# 2003, 2004, 2005 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -15,7 +15,7 @@
- @SET_MAKE@
-
-
--SOURCES = $(makedoc_SOURCES) $(mutt_SOURCES) $(EXTRA_mutt_SOURCES) $(mutt_dotlock_SOURCES) $(pgpring_SOURCES)
-+SOURCES = $(makedoc_SOURCES) $(mutt_SOURCES) $(EXTRA_mutt_SOURCES) $(mutt_dotlock_SOURCES) pgpewrap.c $(pgpring_SOURCES)
-
- srcdir = @srcdir@
- top_srcdir = @top_srcdir@
-@@ -40,7 +40,7 @@
- build_triplet = @build@
- host_triplet = @host@
- EXTRA_PROGRAMS = mutt_dotlock$(EXEEXT) pgpring$(EXEEXT) \
-- makedoc$(EXEEXT)
-+ pgpewrap$(EXEEXT) makedoc$(EXEEXT)
- bin_PROGRAMS = mutt$(EXEEXT) @DOTLOCK_TARGET@ @PGPAUX_TARGET@
- DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/Muttrc.head.in \
-@@ -76,10 +76,10 @@
- am_mutt_OBJECTS = $(am__objects_1) addrbook.$(OBJEXT) alias.$(OBJEXT) \
- attach.$(OBJEXT) base64.$(OBJEXT) browser.$(OBJEXT) \
- buffy.$(OBJEXT) color.$(OBJEXT) crypt.$(OBJEXT) \
-- cryptglue.$(OBJEXT) commands.$(OBJEXT) complete.$(OBJEXT) \
-- compose.$(OBJEXT) copy.$(OBJEXT) curs_lib.$(OBJEXT) \
-- curs_main.$(OBJEXT) date.$(OBJEXT) edit.$(OBJEXT) \
-- enter.$(OBJEXT) flags.$(OBJEXT) init.$(OBJEXT) \
-+ cryptglue.$(OBJEXT) compress.$(OBJEXT) commands.$(OBJEXT) \
-+ complete.$(OBJEXT) compose.$(OBJEXT) copy.$(OBJEXT) \
-+ curs_lib.$(OBJEXT) curs_main.$(OBJEXT) date.$(OBJEXT) \
-+ edit.$(OBJEXT) enter.$(OBJEXT) flags.$(OBJEXT) init.$(OBJEXT) \
- filter.$(OBJEXT) from.$(OBJEXT) getdomain.$(OBJEXT) \
- handler.$(OBJEXT) hash.$(OBJEXT) hdrline.$(OBJEXT) \
- headers.$(OBJEXT) help.$(OBJEXT) hook.$(OBJEXT) \
-@@ -99,6 +99,10 @@
- am__DEPENDENCIES_1 =
- am_mutt_dotlock_OBJECTS = mutt_dotlock.$(OBJEXT)
- mutt_dotlock_OBJECTS = $(am_mutt_dotlock_OBJECTS)
-+pgpewrap_SOURCES = pgpewrap.c
-+pgpewrap_OBJECTS = pgpewrap.$(OBJEXT)
-+pgpewrap_LDADD = $(LDADD)
-+pgpewrap_DEPENDENCIES = @LIBOBJS@
- am_pgpring_OBJECTS = pgppubring.$(OBJEXT) pgplib.$(OBJEXT) \
- lib.$(OBJEXT) extlib.$(OBJEXT) sha1.$(OBJEXT) md5c.$(OBJEXT) \
- pgppacket.$(OBJEXT) ascii.$(OBJEXT)
-@@ -113,9 +117,9 @@
- CCLD = $(CC)
- LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
- SOURCES = $(makedoc_SOURCES) $(mutt_SOURCES) $(EXTRA_mutt_SOURCES) \
-- $(mutt_dotlock_SOURCES) $(pgpring_SOURCES)
-+ $(mutt_dotlock_SOURCES) pgpewrap.c $(pgpring_SOURCES)
- DIST_SOURCES = $(makedoc_SOURCES) $(mutt_SOURCES) \
-- $(EXTRA_mutt_SOURCES) $(mutt_dotlock_SOURCES) \
-+ $(EXTRA_mutt_SOURCES) $(mutt_dotlock_SOURCES) pgpewrap.c \
- $(pgpring_SOURCES)
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
-@@ -294,7 +298,7 @@
- BUILT_SOURCES = keymap_defs.h patchlist.c
- mutt_SOURCES = $(BUILT_SOURCES) \
- addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \
-- crypt.c cryptglue.c \
-+ crypt.c cryptglue.c compress.c \
- commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
- edit.c enter.c flags.c init.c filter.c from.c getdomain.c \
- handler.c hash.c hdrline.c headers.c help.c hook.c keymap.c \
-@@ -325,7 +329,7 @@
- crypt-gpgme.c crypt-mod-pgp-gpgme.c crypt-mod-smime-gpgme.c
-
- EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO \
-- configure account.h \
-+ configure account.h compress.h \
- attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \
- globals.h hash.h history.h init.h keymap.h mutt_crypt.h \
- mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \
-@@ -441,6 +445,9 @@
- mutt_dotlock$(EXEEXT): $(mutt_dotlock_OBJECTS) $(mutt_dotlock_DEPENDENCIES)
- @rm -f mutt_dotlock$(EXEEXT)
- $(LINK) $(mutt_dotlock_LDFLAGS) $(mutt_dotlock_OBJECTS) $(mutt_dotlock_LDADD) $(LIBS)
-+pgpewrap$(EXEEXT): $(pgpewrap_OBJECTS) $(pgpewrap_DEPENDENCIES)
-+ @rm -f pgpewrap$(EXEEXT)
-+ $(LINK) $(pgpewrap_LDFLAGS) $(pgpewrap_OBJECTS) $(pgpewrap_LDADD) $(LIBS)
- pgpring$(EXEEXT): $(pgpring_OBJECTS) $(pgpring_DEPENDENCIES)
- @rm -f pgpring$(EXEEXT)
- $(LINK) $(pgpring_LDFLAGS) $(pgpring_OBJECTS) $(pgpring_LDADD) $(LIBS)
-@@ -487,6 +494,7 @@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commands.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/complete.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compose.Po@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compress.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/copy.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/crypt-gpgme.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/crypt-mod-pgp-classic.Po@am__quote@
-@@ -542,6 +550,7 @@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/patchlist.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pattern.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pgp.Po@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pgpewrap.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pgpinvoke.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pgpkey.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pgplib.Po@am__quote@
-@@ -597,7 +606,13 @@
- # (which will cause the Makefiles to be regenerated when you run `make');
- # (2) otherwise, pass the desired values on the `make' command line.
- $(RECURSIVE_TARGETS):
-- @set fnord $$MAKEFLAGS; amf=$$2; \
-+ @failcom='exit 1'; \
-+ for f in x $$MAKEFLAGS; do \
-+ case $$f in \
-+ *=* | --[!k]*);; \
-+ *k*) failcom='fail=yes';; \
-+ esac; \
-+ done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
-@@ -609,7 +624,7 @@
- local_target="$$target"; \
- fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
-+ || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-@@ -617,7 +632,13 @@
-
- mostlyclean-recursive clean-recursive distclean-recursive \
- maintainer-clean-recursive:
-- @set fnord $$MAKEFLAGS; amf=$$2; \
-+ @failcom='exit 1'; \
-+ for f in x $$MAKEFLAGS; do \
-+ case $$f in \
-+ *=* | --[!k]*);; \
-+ *k*) failcom='fail=yes';; \
-+ esac; \
-+ done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-@@ -638,7 +659,7 @@
- local_target="$$target"; \
- fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
-+ || eval $$failcom; \
- done && test -z "$$fail"
- tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
-@@ -914,8 +935,9 @@
-
- install-data-am: install-data-local
-
--install-exec-am: install-binPROGRAMS install-binSCRIPTS \
-- install-exec-local
-+install-exec-am: install-binPROGRAMS install-binSCRIPTS
-+ @$(NORMAL_INSTALL)
-+ $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
- install-info: install-info-recursive
-
-@@ -956,9 +978,9 @@
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-binPROGRAMS install-binSCRIPTS \
- install-data install-data-am install-data-local install-exec \
-- install-exec-am install-exec-local install-info \
-- install-info-am install-man install-strip installcheck \
-- installcheck-am installdirs installdirs-am maintainer-clean \
-+ install-exec-am install-exec-hook install-info install-info-am \
-+ install-man install-strip installcheck installcheck-am \
-+ installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic maintainer-clean-recursive \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
-@@ -993,7 +1015,7 @@
- patchlist.c: $(srcdir)/PATCHES $(srcdir)/patchlist.sh
- $(srcdir)/patchlist.sh < $(srcdir)/PATCHES > patchlist.c
-
--install-exec-local:
-+install-exec-hook:
- if test -f $(DESTDIR)$(bindir)/mutt.dotlock && test -f $(DESTDIR)$(bindir)/mutt_dotlock ; then \
- rm -f $(DESTDIR)$(bindir)/mutt.dotlock ; \
- ln -sf $(DESTDIR)$(bindir)/mutt_dotlock $(DESTDIR)$(bindir)/mutt.dotlock ; \
-Only in mutt-1.5.9: autom4te.cache
-diff -ru mutt-1.5.9.orig/config.h.in mutt-1.5.9/config.h.in
---- mutt-1.5.9.orig/config.h.in 2005-03-13 17:37:09.000000000 +0100
-+++ mutt-1.5.9/config.h.in 2005-04-03 19:58:50.546379495 +0200
-@@ -498,6 +498,9 @@
- /* Define to enable Sun mailtool attachments support. */
- #undef SUN_ATTACHMENT
-
-+/* Define to support compressed folders. */
-+#undef USE_COMPRESSED
-+
- /* Define to use dotlocking for mailboxes. */
- #undef USE_DOTLOCK
-
-Only in mutt-1.5.9: config.h.in~
-diff -ru mutt-1.5.9.orig/configure mutt-1.5.9/configure
---- mutt-1.5.9.orig/configure 2005-03-13 17:36:32.000000000 +0100
-+++ mutt-1.5.9/configure 2005-04-03 19:58:56.255190487 +0200
-@@ -868,6 +868,7 @@
- --enable-buffy-size Use file size attribute instead of access time
- --enable-mailtool Enable Sun mailtool attachments support
- --enable-locales-fix The result of isprint() is unreliable
-+ --enable-compressed Enable compressed folders support
- --enable-exact-address Enable regeneration of email addresses
- --enable-hcache Enable header caching
- --disable-iconv Disable iconv support
-@@ -1001,7 +1002,7 @@
- else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi
-- cd $ac_popdir
-+ cd "$ac_popdir"
- done
- fi
-
-@@ -2432,8 +2433,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2491,8 +2491,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2608,8 +2607,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2663,8 +2661,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2709,8 +2706,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -2754,8 +2750,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3007,8 +3002,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3062,8 +3056,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3398,8 +3391,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3569,8 +3561,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -3645,8 +3636,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4299,8 +4289,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4416,8 +4405,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4499,8 +4487,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4529,8 +4516,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4600,8 +4586,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4653,8 +4638,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4725,8 +4709,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -4778,8 +4761,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5002,8 +4984,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5150,8 +5131,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5213,8 +5193,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5276,8 +5255,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5317,8 +5295,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5374,8 +5351,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5415,8 +5391,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5480,8 +5455,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5512,10 +5486,8 @@
- esac
- else
- if test "$cross_compiling" = yes; then
-- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&5
--echo "$as_me: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&2;}
-+ { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
-+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
- { (exit 1); exit 1; }; }
- else
- cat >conftest.$ac_ext <<_ACEOF
-@@ -5627,8 +5599,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5690,8 +5661,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5731,8 +5701,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5788,8 +5757,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5829,8 +5797,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5894,8 +5861,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -5926,10 +5892,8 @@
- esac
- else
- if test "$cross_compiling" = yes; then
-- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&5
--echo "$as_me: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&2;}
-+ { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
-+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
- { (exit 1); exit 1; }; }
- else
- cat >conftest.$ac_ext <<_ACEOF
-@@ -6041,8 +6005,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6104,8 +6067,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6145,8 +6107,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6202,8 +6163,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6243,8 +6203,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6308,8 +6267,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6340,10 +6298,8 @@
- esac
- else
- if test "$cross_compiling" = yes; then
-- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&5
--echo "$as_me: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&2;}
-+ { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
-+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
- { (exit 1); exit 1; }; }
- else
- cat >conftest.$ac_ext <<_ACEOF
-@@ -6455,8 +6411,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6518,8 +6473,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6559,8 +6513,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6616,8 +6569,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6657,8 +6609,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6722,8 +6673,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -6754,10 +6704,8 @@
- esac
- else
- if test "$cross_compiling" = yes; then
-- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&5
--echo "$as_me: error: cannot run test program while cross compiling
--See \`config.log' for more details." >&2;}
-+ { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
-+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
- { (exit 1); exit 1; }; }
- else
- cat >conftest.$ac_ext <<_ACEOF
-@@ -6992,7 +6940,7 @@
- #define CRYPT_BACKEND_CLASSIC_PGP 1
- _ACEOF
-
-- PGPAUX_TARGET="pgpring pgpewrap"
-+ PGPAUX_TARGET="pgpring\$(EXEEXT) pgpewrap\$(EXEEXT)"
- MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS pgp.o pgpinvoke.o pgpkey.o pgplib.o gnupgparse.o pgpmicalg.o pgppacket.o crypt-mod-pgp-classic.o"
- fi
-
-@@ -7219,8 +7167,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7306,8 +7253,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7422,8 +7368,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7493,8 +7438,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7563,8 +7507,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7630,8 +7573,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7781,8 +7723,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -7965,8 +7906,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8034,8 +7974,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8104,8 +8043,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8176,8 +8114,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8299,8 +8236,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8369,8 +8305,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8447,8 +8382,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8510,8 +8444,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8564,8 +8497,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8608,8 +8540,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8684,8 +8615,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8724,8 +8654,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8821,8 +8750,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -8992,8 +8920,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9143,8 +9070,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9293,8 +9219,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9480,8 +9405,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9553,8 +9477,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9661,8 +9584,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9751,8 +9673,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9825,8 +9746,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9891,8 +9811,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -9999,8 +9918,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10103,8 +10021,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10212,8 +10129,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10273,8 +10189,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10462,8 +10377,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10566,8 +10480,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10681,8 +10594,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10751,8 +10663,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10859,8 +10770,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -10929,8 +10839,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11037,8 +10946,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11148,8 +11056,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11648,8 +11555,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11715,8 +11621,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11817,8 +11722,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11884,8 +11788,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -11990,8 +11893,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12152,8 +12054,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12226,8 +12127,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12302,8 +12202,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12496,8 +12395,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12574,8 +12472,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12684,8 +12581,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -12985,8 +12881,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13159,8 +13054,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13271,8 +13165,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13395,8 +13288,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13518,8 +13410,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13623,8 +13514,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13726,8 +13616,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13829,8 +13718,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -13981,6 +13869,18 @@
- fi
- fi;
-
-+# Check whether --enable-compressed or --disable-compressed was given.
-+if test "${enable_compressed+set}" = set; then
-+ enableval="$enable_compressed"
-+ if test x$enableval = xyes; then
-+
-+cat >>confdefs.h <<\_ACEOF
-+#define USE_COMPRESSED 1
-+_ACEOF
-+
-+ fi
-+fi;
-+
-
- # Check whether --with-exec-shell or --without-exec-shell was given.
- if test "${with_exec_shell+set}" = set; then
-@@ -14073,8 +13973,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14159,8 +14058,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14276,8 +14174,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14342,8 +14239,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14407,8 +14303,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14489,8 +14384,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14631,8 +14525,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14770,8 +14663,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -14955,8 +14847,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15246,8 +15137,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15453,8 +15343,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15536,8 +15425,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15587,8 +15475,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15663,8 +15550,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15734,8 +15620,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15798,8 +15683,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -15904,8 +15788,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -16043,8 +15926,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -16103,8 +15985,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -16215,8 +16096,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -16701,8 +16581,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17056,8 +16935,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17128,8 +17006,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17280,8 +17157,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17348,8 +17224,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17415,8 +17290,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17603,8 +17477,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17710,8 +17583,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17814,8 +17686,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17883,8 +17754,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -17965,8 +17835,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -18029,8 +17898,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -18091,8 +17959,7 @@
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -z "$ac_c_werror_flag"
-- || test ! -s conftest.err'
-+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-@@ -19085,11 +18952,6 @@
- *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
- esac
-
-- if test x"$ac_file" != x-; then
-- { echo "$as_me:$LINENO: creating $ac_file" >&5
--echo "$as_me: creating $ac_file" >&6;}
-- rm -f "$ac_file"
-- fi
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
-@@ -19128,6 +18990,12 @@
- fi;;
- esac
- done` || { (exit 1); exit 1; }
-+
-+ if test x"$ac_file" != x-; then
-+ { echo "$as_me:$LINENO: creating $ac_file" >&5
-+echo "$as_me: creating $ac_file" >&6;}
-+ rm -f "$ac_file"
-+ fi
- _ACEOF
- cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
-diff -ru mutt-1.5.9.orig/imap/Makefile.in mutt-1.5.9/imap/Makefile.in
---- mutt-1.5.9.orig/imap/Makefile.in 2005-03-13 17:37:45.000000000 +0100
-+++ mutt-1.5.9/imap/Makefile.in 2005-04-03 19:58:54.831486654 +0200
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.2 from Makefile.am.
-+# Makefile.in generated by automake 1.9.5 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004 Free Software Foundation, Inc.
-+# 2003, 2004, 2005 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-diff -ru mutt-1.5.9.orig/m4/Makefile.in mutt-1.5.9/m4/Makefile.in
---- mutt-1.5.9.orig/m4/Makefile.in 2005-03-13 17:37:45.000000000 +0100
-+++ mutt-1.5.9/m4/Makefile.in 2005-04-03 19:58:54.969457936 +0200
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.2 from Makefile.am.
-+# Makefile.in generated by automake 1.9.5 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004 Free Software Foundation, Inc.
-+# 2003, 2004, 2005 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -217,9 +217,9 @@
- exit 1;; \
- esac; \
- done; \
-- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign m4/Makefile'; \
-+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu m4/Makefile'; \
- cd $(top_srcdir) && \
-- $(AUTOMAKE) --foreign m4/Makefile
-+ $(AUTOMAKE) --gnu m4/Makefile
- .PRECIOUS: Makefile
- Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
-diff -u mutt-1.5.3.orig/PATCHES mutt-1.5.3/PATCHES
---- mutt-1.5.3.orig/PATCHES 2002-12-17 10:47:20.000000000 +0100
-+++ mutt-1.5.3/PATCHES 2003-01-14 18:21:16.000000000 +0100
-@@ -1,0 +1 @@
-+Debian.Md.etc_mailname_gethostbyname
-diff -u mutt-1.5.3.orig/init.c mutt-1.5.3/init.c
---- mutt-1.5.3.orig/init.c 2002-12-11 16:13:49.000000000 +0100
-+++ mutt-1.5.3/init.c 2003-01-14 18:27:54.000000000 +0100
-@@ -51,6 +51,7 @@
+--- init.c.orig
++++ init.c
+@@ -46,6 +46,7 @@
#include <unistd.h>
#include <string.h>
#include <sys/utsname.h>
#include <errno.h>
#include <sys/wait.h>
-@@ -1748,6 +1749,31 @@
+@@ -2770,6 +2771,31 @@
return 0;
}
void mutt_init (int skip_sys_rc, LIST *commands)
{
struct passwd *pw;
-@@ -1816,10 +1842,25 @@
+@@ -2841,10 +2867,25 @@
Hostname = mutt_substrdup (utsname.nodename, p);
p++;
strfcpy (buffer, p, sizeof (buffer)); /* save the domain for below */
--- /dev/null
+--- configure.orig
++++ configure
+@@ -14291,6 +14291,7 @@
+ _ACEOF
+
+ need_sasl=yes
++ need_md5=yes
+ fi
+
+ fi;
--- /dev/null
+Index: debian-mutt/Muttrc.head
+===================================================================
+--- debian-mutt.orig/Muttrc.head 2007-06-08 13:19:22.000000000 +0200
++++ debian-mutt/Muttrc.head 2007-06-08 13:20:36.000000000 +0200
+@@ -6,6 +6,36 @@
+ #
+ ignore "from " received content- mime-version status x-status message-id
+ ignore sender references return-path lines
++ignore date delivered-to precedence errors-to in-reply-to user-agent
++ignore x-loop x-sender x-mailer x-msmail-priority x-mimeole x-ms- x-priority
++ignore x-accept-language x-authentication-warning thread- priority importance
++ignore x-original-to domainkey-signature dkim-signature
++
++# emacs-like bindings
++bind editor "\e<delete>" kill-word
++bind editor "\e<backspace>" kill-word
++
++# map delete-char to a sane value
++bind editor <delete> delete-char
++
++# some people actually like these settings
++#set pager_stop
++#bind pager <up> previous-line
++#bind pager <down> next-line
++
++# Specifies how to sort messages in the index menu.
++set sort=threads
++
++# Uncomment if your MTA does not strip Bcc: headers.
++# (exim4 and postfix strip them, exim(3) does not.)
++#unset write_bcc
++# Postfix and qmail use Delivered-To for detecting loops
++unset bounce_delivered
++
++set mixmaster="mixmaster-filter"
++
++# System-wide CA file managed by the ca-certificates package
++set ssl_ca_certificates_file="/etc/ssl/certs/ca-certificates.crt"
+
+ # imitate the old search-body function
+ macro index \eb "<search>~b " "search in message bodies"
+@@ -18,14 +48,14 @@ macro index,pager,attach,compose \cb "\
+ "call urlview to extract URLs out of a message"
+
+ # Show documentation when pressing F1
+-macro generic,pager <F1> "<shell-escape> less @docdir@/manual.txt<Enter>" "show Mutt documentation"
++macro generic,pager <F1> "<shell-escape> zcat @docdir@/mutt/manual.txt.gz | sensible-pager<enter>" "show Mutt documentation"
+
+ # show the incoming mailboxes list (just like "mutt -y") and back when pressing "y"
+ macro index,pager y "<change-folder>?<toggle-mailboxes>" "show incoming mailboxes list"
+ bind browser y exit
+
+ # If Mutt is unable to determine your site's domain name correctly, you can
+-# set the default here.
++# set the default here. (better: fix /etc/mailname)
+ #
+ # set hostname=cs.hmc.edu
+
+@@ -87,6 +117,9 @@ attachments +I text/plain
+ attachments -A message/external-body
+ attachments -I message/external-body
+
++# enable mime lookup by extension
++mime_lookup application/octet-stream
++
+ ##
+ ## More settings
+ ##
--- /dev/null
+On upstream inclusion of the assumed_charset patch (past 1.5.14), file_charset
+got renamed to attach_charset. We add it back for compatibility.
+
+Index: mutt/init.h
+===================================================================
+--- mutt.orig/init.h 2007-03-12 19:11:53.000000000 +0100
++++ mutt/init.h 2007-03-12 19:13:56.000000000 +0100
+@@ -248,6 +248,9 @@ struct option_t MuttVars[] = {
+ ** Note: "iso-2022-*" must be put at the head of the value as shown above
+ ** if included.
+ */
++ { "file_charset", DT_SYN, R_NONE, UL "attach_charset", 0 },
++ /*
++ */
+ { "attach_format", DT_STR, R_NONE, UL &AttachFormat, UL "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " },
+ /*
+ ** .pp
--- /dev/null
+Index: doc/Makefile.in
+===================================================================
+--- doc/Makefile.in.orig 2007-05-17 14:47:01.000000000 +0200
++++ doc/Makefile.in 2007-05-17 14:58:34.000000000 +0200
+@@ -435,15 +435,16 @@ uninstall-local:
+
+ check:
+ manual.txt: manual.html
+- -lynx -dump -nolist -with_backspaces $^ > $@ || \
++ /usr/bin/links.main -dump $^ > $@ || links -dump $^ > $@ || \
++ lynx -dump -nolist -with_backspaces $^ > $@ || \
+ w3m -dump $^ > $@ || \
+ elinks -dump -no-numbering -no-references $^ > $@
+
+ manual.html: $(srcdir)/html.xsl stamp-doc-xml
+- -xsltproc --nonet -o $@ $(srcdir)/html.xsl manual.xml
++ xsltproc --nonet -o $@ $(srcdir)/html.xsl manual.xml
+
+ stamp-doc-chunked: $(srcdir)/chunk.xsl stamp-doc-xml
+- -xsltproc --nonet $(srcdir)/chunk.xsl manual.xml
++ xsltproc --nonet $(srcdir)/chunk.xsl manual.xml
+ touch stamp-doc-chunked
+
+ $(HTML_DOCFILES): stamp-doc-chunked
--- /dev/null
+--- doc/mutt.man.orig
++++ doc/mutt.man
+@@ -154,7 +154,7 @@
+ System mapping between MIME types and file extensions.
+ .IP "@bindir@/mutt_dotlock"
+ The privileged dotlocking program.
+-.IP "@docdir@/manual.txt"
++.IP "/usr/share/doc/mutt/manual.txt.gz"
+ The Mutt manual.
+ .SH BUGS
+ .PP
--- /dev/null
+Index: debian-mutt/init.h
+===================================================================
+--- debian-mutt.orig/init.h 2007-03-24 17:54:00.000000000 +0100
++++ debian-mutt/init.h 2007-03-24 18:00:57.000000000 +0100
+@@ -289,6 +289,9 @@ struct option_t MuttVars[] = {
+ ** .pp
+ ** When this variable is set, mutt will include Delivered-To headers when
+ ** bouncing messages. Postfix users may wish to unset this variable.
++ ** .pp
++ ** \fBNote:\fP On Debian systems, this option is unset by default in
++ ** /etc/Muttrc.
+ */
+ { "braille_friendly", DT_BOOL, R_NONE, OPTBRAILLEFRIENDLY, 0 },
+ /*
+@@ -798,6 +801,9 @@ struct option_t MuttVars[] = {
+ ** Specifies the hostname to use after the ``@'' in local e-mail
+ ** addresses. This overrides the compile time definition obtained from
+ ** /etc/resolv.conf.
++ ** .pp
++ ** \fBNote:\fP On Debian systems, the default for this variable is obtained
++ ** from /etc/mailname when Mutt starts.
+ */
+ { "ignore_linear_white_space", DT_BOOL, R_NONE, OPTIGNORELWS, 0 },
+ /*
+@@ -1301,6 +1307,9 @@ struct option_t MuttVars[] = {
+ ** system. It is used with various sets of parameters to gather the
+ ** list of known remailers, and to finally send a message through the
+ ** mixmaster chain.
++ ** .pp
++ ** \fBNote:\fP On Debian systems, this option is set by default to
++ ** ``mixmaster-filter'' in /etc/Muttrc.
+ */
+ #endif
+
+@@ -1843,6 +1852,10 @@ struct option_t MuttVars[] = {
+ ** This variable contains the name of either a directory, or a file which
+ ** contains trusted certificates for use with OpenSSL.
+ ** (S/MIME only)
++ ** .pp
++ ** \fBNote:\fP On Debian systems, this defaults to the first existing file in
++ ** the following list: ~/.smime/ca-certificates.crt ~/.smime/ca-bundle.crt
++ ** /etc/ssl/certs/ca-certificates.crt.
+ */
+ { "smime_certificates", DT_PATH, R_NONE, UL &SmimeCertificates, 0 },
+ /*
+@@ -2049,6 +2062,9 @@ struct option_t MuttVars[] = {
+ ** certificates are also automatically accepted.
+ ** .pp
+ ** Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
++ ** .pp
++ ** \fBNote:\fP On Debian systems, this variable defaults to the example
++ ** mentioned. This file is managed by the ``ca-certificates'' package.
+ */
+ # endif /* USE_SSL_GNUTLS */
+ #endif /* defined(USE_SSL) */
+@@ -2626,6 +2642,9 @@ struct option_t MuttVars[] = {
+ ** .pp
+ ** You may optionally use the reverse- prefix to specify reverse sorting
+ ** order (example: set sort=reverse-date-sent).
++ ** .pp
++ ** \fBNote:\fP On Debian systems, this option is set by default to
++ ** ``threads'' in /etc/Muttrc.
+ */
+ { "sort_alias", DT_SORT|DT_SORT_ALIAS, R_NONE, UL &SortAlias, SORT_ALIAS },
+ /*
+@@ -3022,6 +3041,9 @@ struct option_t MuttVars[] = {
+ ** is set to deliver directly via SMTP (see ``$$smtp_url''), this
+ ** option does nothing: mutt will never write out the BCC header
+ ** in this case.
++ ** .pp
++ ** \fBNote:\fP On Debian systems, exim4 and postfix strip BCC headers by
++ ** default. The above warning applies to exim3 users, see /etc/Muttrc.
+ */
+ {"xterm_icon", DT_STR, R_BOTH, UL &XtermIcon, UL "M%?n?AIL&ail?"},
+ /*
--- /dev/null
+Index: init.h
+===================================================================
+--- init.h.orig 2007-03-21 21:33:20.000000000 +0100
++++ init.h 2007-03-21 21:35:32.000000000 +0100
+@@ -19,7 +19,7 @@
+
+ #ifdef _MAKEDOC
+ # include "config.h"
+-# include "makedoc-defs.h"
++/* # include "makedoc-defs.h" include only documented options for Debian */
+ #else
+ # include "sort.h"
+ #endif
+Index: functions.h
+===================================================================
+--- functions.h.orig 2007-03-21 21:35:37.000000000 +0100
++++ functions.h 2007-03-21 21:35:51.000000000 +0100
+@@ -35,7 +35,7 @@
+
+ #ifdef _MAKEDOC
+ # include "config.h"
+-# include "makedoc-defs.h"
++/* # include "makedoc-defs.h" include only documented options for Debian */
+ #endif
+
+ struct binding_t OpGeneric[] = { /* map: generic */
---- mutt-1.3.25.orig/po/Makefile.in.in Tue Jan 1 21:17:15 2002
-+++ mutt-1.3.25/po/Makefile.in.in Wed Jan 2 00:53:40 2002
+--- po/Makefile.in.in.orig
++++ po/Makefile.in.in
@@ -85,7 +85,7 @@
# otherwise packages like GCC can not be built if only parts of the source
# have been downloaded.
-$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
+$(srcdir)/$(PACKAGE).pot: #$(POTFILES) $(srcdir)/POTFILES.in
+ rm -f $@
$(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
--add-comments --keyword=_ --keyword=N_ \
- --files-from=$(srcdir)/POTFILES.in \
--- /dev/null
+Index: trunk/patchlist.sh
+===================================================================
+--- trunk.orig/patchlist.sh 2007-03-15 15:50:14.000000000 +0100
++++ trunk/patchlist.sh 2007-03-15 15:50:41.000000000 +0100
+@@ -15,6 +15,6 @@ EOF
+
+ while read patch ; do
+ echo " puts (\"${patch}\");"
+-done
++done | LC_COLLATE=C sort
+
+ echo "}"
--- /dev/null
+--- init.c.orig
++++ init.c
+@@ -2929,7 +2929,7 @@
+ {
+ p = getenv ("EDITOR");
+ if (!p)
+- p = "vi";
++ p = "/usr/bin/editor";
+ }
+ Editor = safe_strdup (p);
+ Visual = safe_strdup (p);
+--- init.h.orig
++++ init.h
+@@ -551,7 +551,7 @@
+ ** .pp
+ ** This variable specifies which editor is used by mutt.
+ ** It defaults to the value of the VISUAL, or EDITOR, environment
+- ** variable, or to the string "vi" if neither of those are set.
++ ** variable, or to the string "/usr/bin/editor" if neither of those are set.
+ */
+ { "encode_from", DT_BOOL, R_NONE, OPTENCODEFROM, 0 },
+ /*
http://www.spinnaker.de/mutt/compressed/
* Patch last synced with upstream:
- - Date: 2005-04-03
- - File: http://www.spinnaker.de/mutt/compressed/patch-1.5.9.rr.compressed.1.gz
+ - Date: 2007-06-14
+ - File: http://www.spinnaker.de/mutt/compressed/patch-1.5.16.rr.compressed.1.gz
* Changes made:
- - filterdiff -p1 \
- $(for f in Makefile.in config.h.in configure 'Muttrc*' doc/manual.txt \
- doc/manual.sgml 'doc/manual*.html' doc/muttrc.man; do echo "-x $f"; done)
- - 2005-03-10: fix configure.in to match latest CVS.
+ - 2007-06-14 myon: remove hunks for Muttrc*
== END PATCH
-diff -urN mutt-1.5.9/compress.c mutt-1.5.9-ro/compress.c
---- mutt-1.5.9/compress.c 1970-01-01 01:00:00.000000000 +0100
-+++ mutt-1.5.9-ro/compress.c 2005-03-20 14:06:20.000000000 +0100
-@@ -0,0 +1,487 @@
+Index: debian-mutt/compress.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ debian-mutt/compress.c 2007-06-14 10:57:02.000000000 +0200
+@@ -0,0 +1,499 @@
+/*
+ * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
+ *
+ int magic;
+
+ if (is_new (path))
-+ return (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0);
++ {
++ char *dir_path = safe_strdup(path);
++ char *aux = strrchr(dir_path, '/');
++ int dir_valid = 1;
++ if (aux)
++ {
++ *aux='\0';
++ if (access(dir_path, W_OK|X_OK))
++ dir_valid = 0;
++ }
++ safe_free((void**)&dir_path);
++ return dir_valid && (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0);
++ }
+
+ magic = mx_get_magic (path);
+
+}
+
+static const char *
-+compresshook_format_str (char *dest, size_t destlen, char op, const char *src,
-+ const char *fmt, const char *ifstring,
-+ const char *elsestring, unsigned long data,
-+ format_flag flags)
++compresshook_format_str (char *dest, size_t destlen, size_t col, char op,
++ const char *src, const char *fmt,
++ const char *ifstring, const char *elsestring,
++ unsigned long data, format_flag flags)
+{
+ char tmp[SHORT_STRING];
+
+static char *get_compression_cmd (const char* cmd, const CONTEXT* ctx)
+{
+ char expanded[_POSIX_PATH_MAX];
-+ mutt_FormatString (expanded, sizeof (expanded), cmd, compresshook_format_str,
-+ (unsigned long) ctx, 0);
++ mutt_FormatString (expanded, sizeof (expanded), 0, cmd,
++ compresshook_format_str, (unsigned long) ctx, 0);
+ return safe_strdup (expanded);
+}
+
+ COMPRESS_INFO *ci = set_compress_info (ctx);
+ if (!ci->open) {
+ ctx->magic = 0;
-+ FREE (ctx->compressinfo);
++ FREE (&ctx->compressinfo);
+ return (-1);
+ }
+ if (!ci->close || access (ctx->path, W_OK) != 0)
+ {
+ mutt_any_key_to_continue (NULL);
+ ctx->magic = 0;
-+ FREE (ctx->compressinfo);
++ FREE (&ctx->compressinfo);
+ mutt_error (_("Error executing: %s : unable to open the mailbox!\n"), cmd);
+ }
+ FREE (&cmd);
+}
+
+#endif /* USE_COMPRESSED */
-diff -urN mutt-1.5.9/compress.h mutt-1.5.9-ro/compress.h
---- mutt-1.5.9/compress.h 1970-01-01 01:00:00.000000000 +0100
-+++ mutt-1.5.9-ro/compress.h 2005-03-20 14:06:20.000000000 +0100
+Index: debian-mutt/compress.h
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ debian-mutt/compress.h 2007-06-14 10:57:02.000000000 +0200
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 1997 Alain Penders <Alain@Finale-Dev.com>
+int mutt_test_compress_command (const char *);
+int mutt_check_mailbox_compressed (CONTEXT *);
+void mutt_fast_close_compressed (CONTEXT *);
-diff -urN mutt-1.5.9/config.h.in mutt-1.5.9-ro/config.h.in
-diff -urN mutt-1.5.9/configure mutt-1.5.9-ro/configure
-diff -urN mutt-1.5.9/configure.in mutt-1.5.9-ro/configure.in
---- mutt-1.5.9/configure.in 2005-03-13 17:36:01.000000000 +0100
-+++ mutt-1.5.9-ro/configure.in 2005-03-20 14:11:05.000000000 +0100
-@@ -777,6 +777,11 @@
+Index: debian-mutt/config.h.in
+===================================================================
+--- debian-mutt.orig/config.h.in 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/config.h.in 2007-06-14 10:57:02.000000000 +0200
+@@ -513,6 +513,9 @@
+ /* Define to enable Sun mailtool attachments support. */
+ #undef SUN_ATTACHMENT
+
++/* Define to enable compressed mailboxes support */
++#undef USE_COMPRESSED
++
+ /* Define to use dotlocking for mailboxes. */
+ #undef USE_DOTLOCK
+
+Index: debian-mutt/configure
+===================================================================
+--- debian-mutt.orig/configure 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/configure 2007-06-14 10:57:02.000000000 +0200
+@@ -1371,6 +1371,7 @@ Optional Features:
+ --enable-hcache Enable header caching
+ --disable-iconv Disable iconv support
+ --disable-nls Do not use Native Language Support
++ --enable-compressed Enable compressed folders support
+
+ Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+@@ -15105,6 +15106,17 @@ _ACEOF
+ fi
+
+
++# Check whether --enable-compressed or --disable-compressed was given.
++if test "${enable_compressed+set}" = set; then
++ enableval="$enable_compressed"; if test x$enableval = xyes; then
++
++cat >>confdefs.h <<\_ACEOF
++#define USE_COMPRESSED 1
++_ACEOF
++
++ fi
++fi
++
+
+ # Check whether --with-exec-shell was given.
+ if test "${with_exec_shell+set}" = set; then
+Index: debian-mutt/configure.ac
+===================================================================
+--- debian-mutt.orig/configure.ac 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/configure.ac 2007-06-14 10:57:02.000000000 +0200
+@@ -785,6 +785,11 @@ AC_ARG_ENABLE(locales-fix, AC_HELP_STRIN
AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ])
fi])
AC_ARG_WITH(exec-shell, AC_HELP_STRING([--with-exec-shell=SHELL], [Specify alternate shell (ONLY if /bin/sh is broken)]),
[if test $withval != yes; then
AC_DEFINE_UNQUOTED(EXECSHELL, "$withval",
-diff -urN mutt-1.5.9/curs_main.c mutt-1.5.9-ro/curs_main.c
---- mutt-1.5.9/curs_main.c 2005-02-28 19:36:35.000000000 +0100
-+++ mutt-1.5.9-ro/curs_main.c 2005-03-20 14:06:20.000000000 +0100
-@@ -1076,6 +1076,11 @@
+Index: debian-mutt/curs_main.c
+===================================================================
+--- debian-mutt.orig/curs_main.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/curs_main.c 2007-06-14 10:57:02.000000000 +0200
+@@ -1111,6 +1111,11 @@ int mutt_index_menu (void)
{
int check;
mutt_str_replace (&LastFolder, Context->path);
oldcount = Context ? Context->msgcount : 0;
-diff -urN mutt-1.5.9/doc/manual-4.html mutt-1.5.9-ro/doc/manual-4.html
-diff -urN mutt-1.5.9/doc/manual-6.html mutt-1.5.9-ro/doc/manual-6.html
-diff -urN mutt-1.5.9/doc/manual.html mutt-1.5.9-ro/doc/manual.html
-diff -urN mutt-1.5.9/doc/manual.sgml mutt-1.5.9-ro/doc/manual.sgml
-diff -urN mutt-1.5.9/doc/manual.sgml.head mutt-1.5.9-ro/doc/manual.sgml.head
---- mutt-1.5.9/doc/manual.sgml.head 2005-02-19 14:49:49.000000000 +0100
-+++ mutt-1.5.9-ro/doc/manual.sgml.head 2005-03-20 14:06:20.000000000 +0100
-@@ -2539,6 +2539,176 @@
- macro pager \cb |urlview\n
- </verb></tscreen>
+Index: debian-mutt/doc/manual.xml.head
+===================================================================
+--- debian-mutt.orig/doc/manual.xml.head 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/doc/manual.xml.head 2007-06-14 10:57:02.000000000 +0200
+@@ -4910,6 +4910,205 @@ becomes an issue as mutt will silently f
+
+ </chapter>
-+<sect1>Compressed folders Support (OPTIONAL)
-+<p>
++<sect1 id="compressedfolders">
++<title>Compressed folders Support (OPTIONAL)</title>
+
++<para>
+If Mutt was compiled with compressed folders support (by running the
-+<em/configure/ script with the <em/--enable-compressed/ flag), Mutt
-+can open folders stored in an arbitrary format, provided that the user
-+has a script to convert from/to this format to one of the accepted.
++<emphasis>configure</emphasis> script with the
++<emphasis>--enable-compressed</emphasis> flag), Mutt can open folders
++stored in an arbitrary format, provided that the user has a script to
++convert from/to this format to one of the accepted.
+
+The most common use is to open compressed archived folders e.g. with
+gzip.
+folder to the accepted format, appending to it and converting back to
+the user-defined format.
+
-+There are three hooks defined (<ref id="open-hook" name="open-hook">,
-+<ref id="close-hook" name="close-hook"> and <ref id="append-hook"
-+name="append-hook">) which define commands to uncompress and compress
-+a folder and to append messages to an existing compressed folder
-+respectively.
++There are three hooks defined (<link
++linkend="open-hook">open-hook</link>, <link
++linkend="close-hook">close-hook</link> and <link
++linkend="append-hook">append-hook</link>) which define commands to
++uncompress and compress a folder and to append messages to an existing
++compressed folder respectively.
+
+For example:
+
-+<tscreen><verb>
++<screen>
+open-hook \\.gz$ "gzip -cd %f > %t"
+close-hook \\.gz$ "gzip -c %t > %f"
+append-hook \\.gz$ "gzip -c %t >> %f"
-+</verb></tscreen>
++</screen>
+
-+You do not have to specify all of the commands. If you omit <ref
-+id="append-hook" name="append-hook">, the folder will be open and
-+closed again each time you will add to it. If you omit <ref
-+id="close-hook" name="close-hook"> (or give empty command) , the
-+folder will be open in the mode. If you specify <ref
-+id="append-hook" name="append-hook"> though you'll be able to append
-+to the folder.
++You do not have to specify all of the commands. If you omit <link
++linkend="append-hook">append-hook</link>, the folder will be open and
++closed again each time you will add to it. If you omit <link
++linkend="close-hook">close-hook</link> (or give empty command) , the
++folder will be open in the mode. If you specify <link
++linkend="append-hook">append-hook</link> though you'll be able to
++append to the folder.
+
+Note that Mutt will only try to use hooks if the file is not in one of
+the accepted formats. In particular, if the file is empty, mutt
+supposes it is not compressed. This is important because it allows the
+use of programs that do not have well defined extensions. Just use
-+&dquot;.&dquot; as a regexp. But this may be surprising if your
-+compressing script produces empty files. In this situation, unset <ref
-+id="save_empty" name="$save_empty">, so that the compressed file
-+will be removed if you delete all of the messages.
++"." as a regexp. But this may be surprising if your
++compressing script produces empty files. In this situation, unset
++<link linkend="save-empty">$save_empty</link>, so that
++the compressed file will be removed if you delete all of the messages.
++</para>
+
-+<sect2>Open a compressed mailbox for reading<label id="open-hook">
-+<p>
-+Usage: <tt/open-hook/ <em/regexp/ &dquot;<em/command/&dquot;
++<sect2 id="open-hook">
++<title>Open a compressed mailbox for reading</title>
+
-+The <em/command/ is the command that can be used for opening the
-+folders whose names match <em/regexp/.
++<para>
++Usage: <literal>open-hook</literal> <emphasis>regexp</emphasis> "<emphasis>command</emphasis>"
+
-+The <em/command/ string is the printf-like format string, and it
-+should accept two parameters: %f, which is replaced with the
-+(compressed) folder name, and %t which is replaced with the
-+name of the temporary folder to which to write.
++The <emphasis>command</emphasis> is the command that can be used for
++opening the folders whose names match <emphasis>regexp</emphasis>.
++
++The <emphasis>command</emphasis> string is the printf-like format
++string, and it should accept two parameters: %f, which is
++replaced with the (compressed) folder name, and %t which is
++replaced with the name of the temporary folder to which to write.
+
+%f and %t can be repeated any number of times in the
+command string, and all of the entries are replaced with the
+appropriate folder name. In addition, %% is replaced by
+%, as in printf, and any other %anything is left as is.
+
-+The <em/command/ should <bf/not/ remove the original compressed file.
-+The <em/command/ should return non-zero exit status if it fails, so
-+mutt knows something's wrong.
++The <emphasis>command</emphasis> should <emphasis
++role="bold">not</emphasis> remove the original compressed file. The
++<emphasis>command</emphasis> should return non-zero exit status if it
++fails, so mutt knows something's wrong.
+
+Example:
+
-+<tscreen><verb>
++<screen>
+open-hook \\.gz$ "gzip -cd %f > %t"
-+</verb></tscreen>
++</screen>
++
++If the <emphasis>command</emphasis> is empty, this operation is
++disabled for this file type.
++</para>
++</sect2>
+
-+If the <em/command/ is empty, this operation is disabled for this file
-+type.
++<sect2 id="close-hook">
++<title>Write a compressed mailbox</title>
+
-+<sect2>Write a compressed mailbox<label id="close-hook">
-+<p>
-+Usage: <tt/close-hook/ <em/regexp/ &dquot;<em/command/&dquot;
++<para>
++Usage: <literal>close-hook</literal> <emphasis>regexp</emphasis> "<emphasis>command</emphasis>"
+
-+This is used to close the folder that was open with the <ref id="open-hook"
-+name="open-hook"> command after some changes were made to it.
++This is used to close the folder that was open with the <link
++linkend="open-hook">open-hook</link> command after some changes were
++made to it.
+
-+The <em/command/ string is the command that can be used for closing the
-+folders whose names match <em/regexp/. It has the same format as in
-+the <ref id="open-hook" name="open-hook"> command. Temporary folder
-+in this case is the folder previously produced by the <ref id="open-hook"
-+name="open-hook"> command.
++The <emphasis>command</emphasis> string is the command that can be
++used for closing the folders whose names match
++<emphasis>regexp</emphasis>. It has the same format as in the <link
++linkend="open-hook">open-hook</link> command. Temporary folder in this
++case is the folder previously produced by the <link
++linkend="open-hook">open-hook</link> command.
+
-+The <em/command/ should <bf/not/ remove the decompressed file. The
-+<em/command/ should return non-zero exit status if it fails, so mutt
-+knows something's wrong.
++The <emphasis>command</emphasis> should <emphasis
++role="bold">not</emphasis> remove the decompressed file. The
++<emphasis>command</emphasis> should return non-zero exit status if it
++fails, so mutt knows something's wrong.
+
+Example:
+
-+<tscreen><verb>
++<screen>
+close-hook \\.gz$ "gzip -c %t > %f"
-+</verb></tscreen>
++</screen>
+
-+If the <em/command/ is empty, this operation is disabled for this file
-+type, and the file can only be open in the read-only mode.
++If the <emphasis>command</emphasis> is empty, this operation is
++disabled for this file type, and the file can only be open in the
++read-only mode.
+
-+<ref id="close-hook" name ="close-hook"> is not called when you exit
-+from the folder if the folder was not changed.
++<link linkend="close-hook">close-hook</link> is not called when you
++exit from the folder if the folder was not changed.
++</para>
++</sect2>
+
-+<sect2>Append a message to a compressed mailbox<label id="append-hook">
-+<p>
-+Usage: <tt/append-hook/ <em/regexp/ &dquot;<em/command/&dquot;
++<sect2 id="append-hook">
++<title>Append a message to a compressed mailbox</title>
+
-+This command is used for saving to an existing compressed folder.
-+The <em/command/ is the command that can be used for appending to the
-+folders whose names match <em/regexp/. It has the same format as in
-+ the <ref id="open-hook" name="open-hook"> command.
-+The temporary folder in this case contains the messages that are being
-+appended.
++<para>
++Usage: <literal>append-hook</literal> <emphasis>regexp</emphasis> "<emphasis>command</emphasis>"
+
-+The <em/command/ should <bf/not/ remove the decompressed file. The
-+<em/command/ should return non-zero exit status if it fails, so mutt
-+knows something's wrong.
++This command is used for saving to an existing compressed folder. The
++<emphasis>command</emphasis> is the command that can be used for
++appending to the folders whose names match
++<emphasis>regexp</emphasis>. It has the same format as in the <link
++linkend="open-hook">open-hook</link> command. The temporary folder in
++this case contains the messages that are being appended.
++
++The <emphasis>command</emphasis> should <emphasis
++role="bold">not</emphasis> remove the decompressed file. The
++<emphasis>command</emphasis> should return non-zero exit status if it
++fails, so mutt knows something's wrong.
+
+Example:
+
-+<tscreen><verb>
++<screen>
+append-hook \\.gz$ "gzip -c %t >> %f"
-+</verb></tscreen>
-+
-+When <ref id="append-hook" name="append-hook"> is used, the folder is
-+not opened, which saves time, but this means that we can not find out
-+what the folder type is. Thus the default (<ref id="mbox_type"
-+name="$mbox_type">) type is always supposed (i.e.
-+this is the format used for the temporary folder).
-+
-+If the file does not exist when you save to it, <ref id="close-hook"
-+name="close-hook"> is called, and not <ref id="append-hook"
-+name="append-hook">. <ref id="append-hook" name="append-hook"> is only
-+for appending to existing folders.
-+
-+If the <em/command/ is empty, this operation is disabled for this file
-+type. In this case, the folder will be open and closed again (using
-+<ref id="open-hook" name="open-hook"> and <ref id="close-hook"
-+name="close-hook">respectively) each time you will add to it.
-+
-+<sect2>Encrypted folders
-+<p>
++</screen>
++
++When <link linkend="append-hook">append-hook</link> is used, the folder
++is not opened, which saves time, but this means that we can not find
++out what the folder type is. Thus the default (<link
++linkend="mbox-type">$mbox_type</link>) type is always
++supposed (i.e. this is the format used for the temporary folder).
++
++If the file does not exist when you save to it, <link
++linkend="close-hook">close-hook</link> is called, and not <link
++linkend="append-hook">append-hook</link>. <link
++linkend="append-hook">append-hook</link> is only for appending to
++existing folders.
++
++If the <emphasis>command</emphasis> is empty, this operation is
++disabled for this file type. In this case, the folder will be open and
++closed again (using <link linkend="open-hook">open-hook</link> and
++<link linkend="close-hook">close-hook</link>respectively) each time you
++will add to it.
++</para>
++</sect2>
++
++<sect2>
++<title>Encrypted folders</title>
++
++<para>
+The compressed folders support can also be used to handle encrypted
+folders. If you want to encrypt a folder with PGP, you may want to use
+the following hooks:
+
-+<tscreen><verb>
++<screen>
+open-hook \\.pgp$ "pgp -f < %f > %t"
+close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
-+</verb></tscreen>
++</screen>
+
+Please note, that PGP does not support appending to an encrypted
+folder, so there is no append-hook defined.
+If you are using GnuPG instead of PGP, you may use the following hooks
+instead:
+
-+<tscreen><verb>
++<screen>
+open-hook \\.gpg$ "gpg --decrypt < %f > %t"
+close-hook \\.gpg$ "gpg --encrypt --recipient YourGpgUserIdOrKeyId < %t > %f"
-+</verb></tscreen>
-+
-+<bf/Note:/ the folder is temporary stored decrypted in the /tmp
-+directory, where it can be read by your system administrator. So think
-+about the security aspects of this.
-+
- <sect>Mutt's MIME Support
- <p>
- Quite a bit of effort has been made to make Mutt the premier text-mode
-@@ -3118,6 +3288,8 @@
- <item>
- <tt><ref id="alternative_order" name="unalternative_order"></tt> <em/mimetype/ [ <em/mimetype/ ... ]
- <item>
-+<tt><ref id="append-hook" name="append-hook"></tt> <em/regexp/ &dquot;<em/command/&dquot;
-+<item>
- <tt><ref id="auto_view" name="auto_view"></tt> <em/mimetype/ [ <em/mimetype/ ... ]
- <item>
- <tt><ref id="auto_view" name="unauto_view"></tt> <em/mimetype/ [ <em/mimetype/ ... ]
-@@ -3126,6 +3298,8 @@
- <item>
- <tt><ref id="charset-hook" name="charset-hook"></tt> <em/alias/ <em/charset/
- <item>
-+<tt><ref id="close-hook" name="close-hook"></tt> <em/regexp/ &dquot;<em/command/&dquot;
-+<item>
- <tt><ref id="color" name="color"></tt> <em/object/ <em/foreground/ <em/background/ [ <em/regexp/ ]
- <item>
- <tt><ref id="color" name="uncolor"></tt> <em/index/ <em/pattern/ [ <em/pattern/ ... ]
-@@ -3172,6 +3346,8 @@
- <item>
- <tt><ref id="my_hdr" name="unmy_hdr"></tt> <em/field/ [ <em/field/ ... ]
- <item>
-+<tt><ref id="open-hook" name="open-hook"></tt> <em/regexp/ &dquot;<em/command/&dquot;
-+<item>
- <tt><ref id="crypt-hook" name="crypt-hook"></tt> <em/pattern/ <em/key-id/
- <item>
- <tt><ref id="push" name="push"></tt> <em/string/
-diff -urN mutt-1.5.9/doc/manual.txt mutt-1.5.9-ro/doc/manual.txt
-diff -urN mutt-1.5.9/doc/muttrc.man mutt-1.5.9-ro/doc/muttrc.man
-diff -urN mutt-1.5.9/doc/muttrc.man.head mutt-1.5.9-ro/doc/muttrc.man.head
---- mutt-1.5.9/doc/muttrc.man.head 2005-01-15 10:42:45.000000000 +0100
-+++ mutt-1.5.9-ro/doc/muttrc.man.head 2005-03-20 14:06:20.000000000 +0100
-@@ -316,6 +316,24 @@
++</screen>
++
++<emphasis role="bold">Note:</emphasis> the folder is temporary stored
++decrypted in the /tmp directory, where it can be read by your system
++administrator. So think about the security aspects of this.
++</para>
++</sect2>
++</sect1>
++
+ <chapter id="mimesupport">
+ <title>Mutt's MIME Support</title>
+
+Index: debian-mutt/doc/muttrc.man.head
+===================================================================
+--- debian-mutt.orig/doc/muttrc.man.head 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/doc/muttrc.man.head 2007-06-14 10:57:02.000000000 +0200
+@@ -345,6 +345,24 @@ specify the ID of the public key to be u
to a certain recipient. The meaning of "key ID" is to be taken
broadly: This can be a different e-mail address, a numerical key ID,
or even just an arbitrary search string.
.TP
\fBpush\fP \fIstring\fP
This command adds the named \fIstring\fP to the keyboard buffer.
-diff -urN mutt-1.5.9/hook.c mutt-1.5.9-ro/hook.c
---- mutt-1.5.9/hook.c 2005-02-03 19:47:52.000000000 +0100
-+++ mutt-1.5.9-ro/hook.c 2005-03-20 14:06:20.000000000 +0100
+Index: debian-mutt/hook.c
+===================================================================
+--- debian-mutt.orig/hook.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/hook.c 2007-06-14 10:57:02.000000000 +0200
@@ -24,6 +24,10 @@
#include "mailbox.h"
#include "mutt_crypt.h"
#include <limits.h>
#include <string.h>
#include <stdlib.h>
-@@ -92,6 +96,16 @@
+@@ -92,6 +96,16 @@ int mutt_parse_hook (BUFFER *buf, BUFFER
memset (&pattern, 0, sizeof (pattern));
pattern.data = safe_strdup (path);
}
+ {
+ if (mutt_test_compress_command (command.data))
+ {
-+ strfcpy (err->data, _("bad formatted command string"), err->dsize);
++ strfcpy (err->data, _("badly formatted command string"), err->dsize);
+ return (-1);
+ }
+ }
+#endif
- else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ACCOUNTHOOK))
+ else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ICONVHOOK | M_ACCOUNTHOOK))
&& (!WithCrypto || !(data & M_CRYPTHOOK))
)
-diff -urN mutt-1.5.9/init.h mutt-1.5.9-ro/init.h
---- mutt-1.5.9/init.h 2005-03-01 16:56:02.000000000 +0100
-+++ mutt-1.5.9-ro/init.h 2005-03-20 14:06:20.000000000 +0100
-@@ -2933,6 +2933,11 @@
+Index: debian-mutt/init.h
+===================================================================
+--- debian-mutt.orig/init.h 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/init.h 2007-06-14 10:57:02.000000000 +0200
+@@ -3129,6 +3129,11 @@ struct command_t Commands[] = {
{ "fcc-hook", mutt_parse_hook, M_FCCHOOK },
{ "fcc-save-hook", mutt_parse_hook, M_FCCHOOK | M_SAVEHOOK },
{ "folder-hook", mutt_parse_hook, M_FOLDERHOOK },
+ { "close-hook", mutt_parse_hook, M_CLOSEHOOK },
+ { "append-hook", mutt_parse_hook, M_APPENDHOOK },
+#endif
+ { "group", parse_group, 0 },
+ { "ungroup", parse_ungroup, 0 },
{ "hdr_order", parse_list, UL &HeaderOrderList },
- #ifdef HAVE_ICONV
- { "iconv-hook", mutt_parse_hook, M_ICONVHOOK },
-diff -urN mutt-1.5.9/main.c mutt-1.5.9-ro/main.c
---- mutt-1.5.9/main.c 2005-02-12 22:09:52.000000000 +0100
-+++ mutt-1.5.9-ro/main.c 2005-03-20 14:06:20.000000000 +0100
-@@ -376,6 +376,12 @@
+Index: debian-mutt/main.c
+===================================================================
+--- debian-mutt.orig/main.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/main.c 2007-06-14 10:57:02.000000000 +0200
+@@ -401,6 +401,12 @@ static void show_version (void)
#else
"-LOCALES_HACK "
#endif
#ifdef HAVE_WC_FUNCS
"+HAVE_WC_FUNCS "
-diff -urN mutt-1.5.9/Makefile.am mutt-1.5.9-ro/Makefile.am
---- mutt-1.5.9/Makefile.am 2005-02-13 10:56:41.000000000 +0100
-+++ mutt-1.5.9-ro/Makefile.am 2005-03-20 14:06:20.000000000 +0100
-@@ -18,7 +18,7 @@
+Index: debian-mutt/Makefile.am
+===================================================================
+--- debian-mutt.orig/Makefile.am 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/Makefile.am 2007-06-14 10:57:02.000000000 +0200
+@@ -18,7 +18,7 @@ BUILT_SOURCES = keymap_defs.h patchlist.
bin_PROGRAMS = mutt @DOTLOCK_TARGET@ @PGPAUX_TARGET@
mutt_SOURCES = $(BUILT_SOURCES) \
addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \
-- crypt.c cryptglue.c \
-+ crypt.c cryptglue.c compress.c \
+- crypt.c cryptglue.c \
++ crypt.c cryptglue.c compress.c \
+ commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
+ edit.c enter.c flags.c init.c filter.c from.c \
+ getdomain.c group.c \
+@@ -66,7 +66,7 @@ EXTRA_mutt_SOURCES = account.c md5c.c mu
+ utf8.c wcwidth.c
+
+ EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \
+- configure account.h \
++ configure account.h compress.h \
+ attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \
+ globals.h hash.h history.h init.h keymap.h mutt_crypt.h \
+ mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \
+Index: debian-mutt/Makefile.in
+===================================================================
+--- debian-mutt.orig/Makefile.in 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/Makefile.in 2007-06-14 10:57:02.000000000 +0200
+@@ -74,7 +74,7 @@ am_mutt_OBJECTS = $(am__objects_1) addrb
+ attach.$(OBJEXT) base64.$(OBJEXT) browser.$(OBJEXT) \
+ buffy.$(OBJEXT) color.$(OBJEXT) crypt.$(OBJEXT) \
+ cryptglue.$(OBJEXT) commands.$(OBJEXT) complete.$(OBJEXT) \
+- compose.$(OBJEXT) copy.$(OBJEXT) curs_lib.$(OBJEXT) \
++ compose.$(OBJEXT) compress.$(OBJEXT) copy.$(OBJEXT) curs_lib.$(OBJEXT) \
+ curs_main.$(OBJEXT) date.$(OBJEXT) edit.$(OBJEXT) \
+ enter.$(OBJEXT) flags.$(OBJEXT) init.$(OBJEXT) \
+ filter.$(OBJEXT) from.$(OBJEXT) getdomain.$(OBJEXT) \
+@@ -302,7 +302,7 @@ bin_SCRIPTS = muttbug flea @SMIMEAUX_TAR
+ BUILT_SOURCES = keymap_defs.h patchlist.c reldate.h hcversion.h
+ mutt_SOURCES = $(BUILT_SOURCES) \
+ addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \
+- crypt.c cryptglue.c \
++ crypt.c cryptglue.c compress.c \
commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
- edit.c enter.c flags.c init.c filter.c from.c getdomain.c \
- handler.c hash.c hdrline.c headers.c help.c hook.c keymap.c \
-@@ -67,7 +67,7 @@
- crypt-gpgme.c crypt-mod-pgp-gpgme.c crypt-mod-smime-gpgme.c
+ edit.c enter.c flags.c init.c filter.c from.c \
+ getdomain.c group.c \
+@@ -335,7 +335,7 @@ EXTRA_mutt_SOURCES = account.c md5c.c mu
+ utf8.c wcwidth.c
- EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO \
+ EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \
- configure account.h \
+ configure account.h compress.h \
attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \
globals.h hash.h history.h init.h keymap.h mutt_crypt.h \
mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \
-diff -urN mutt-1.5.9/Makefile.in mutt-1.5.9-ro/Makefile.in
-diff -urN mutt-1.5.9/mbox.c mutt-1.5.9-ro/mbox.c
---- mutt-1.5.9/mbox.c 2005-02-03 19:47:53.000000000 +0100
-+++ mutt-1.5.9-ro/mbox.c 2005-03-20 14:06:20.000000000 +0100
-@@ -28,6 +28,10 @@
- #include "sort.h"
+@@ -507,6 +507,7 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commands.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/complete.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compose.Po@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compress.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/copy.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/crypt-gpgme.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/crypt-mod-pgp-classic.Po@am__quote@
+Index: debian-mutt/mbox.c
+===================================================================
+--- debian-mutt.orig/mbox.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/mbox.c 2007-06-14 10:57:02.000000000 +0200
+@@ -29,6 +29,10 @@
#include "copy.h"
+ #include "mutt_curses.h"
+#ifdef USE_COMPRESSED
+#include "compress.h"
#include <sys/stat.h>
#include <dirent.h>
#include <string.h>
-@@ -1020,6 +1024,12 @@
+@@ -1026,6 +1030,12 @@ bail: /* Come here in case of disaster
int mbox_close_mailbox (CONTEXT *ctx)
{
mx_unlock_file (ctx->path, fileno (ctx->fp), 1);
mutt_unblock_signals ();
mx_fastclose_mailbox (ctx);
return 0;
-diff -urN mutt-1.5.9/mutt.h mutt-1.5.9-ro/mutt.h
---- mutt-1.5.9/mutt.h 2005-02-28 16:13:57.000000000 +0100
-+++ mutt-1.5.9-ro/mutt.h 2005-03-20 14:06:20.000000000 +0100
-@@ -159,6 +159,11 @@
+Index: debian-mutt/mutt.h
+===================================================================
+--- debian-mutt.orig/mutt.h 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/mutt.h 2007-06-14 10:57:02.000000000 +0200
+@@ -160,6 +160,11 @@ typedef enum
#define M_ACCOUNTHOOK (1<<9)
#define M_REPLYHOOK (1<<10)
#define M_SEND2HOOK (1<<11)
/* tree characters for linearize_tree and print_enriched_string */
#define M_TREE_LLCORNER 1
-@@ -824,6 +829,11 @@
- void *data; /* driver specific data */
- #endif /* USE_IMAP */
+@@ -885,6 +890,11 @@ typedef struct _context
+ int flagged; /* how many flagged messages */
+ int msgnotreadyet; /* which msg "new" in pager, -1 if none */
+#ifdef USE_COMPRESSED
+ void *compressinfo; /* compressed mbox module private data */
+
short magic; /* mailbox type */
- unsigned int locked : 1; /* is the mailbox locked? */
-diff -urN mutt-1.5.9/Muttrc mutt-1.5.9-ro/Muttrc
-diff -urN mutt-1.5.9/Muttrc.head mutt-1.5.9-ro/Muttrc.head
-diff -urN mutt-1.5.9/Muttrc.head.in mutt-1.5.9-ro/Muttrc.head.in
-diff -urN mutt-1.5.9/mx.c mutt-1.5.9-ro/mx.c
---- mutt-1.5.9/mx.c 2005-02-03 19:47:53.000000000 +0100
-+++ mutt-1.5.9-ro/mx.c 2005-03-20 14:06:20.000000000 +0100
+ unsigned char rights[(RIGHTSMAX + 7)/8]; /* ACL bits */
+Index: debian-mutt/mx.c
+===================================================================
+--- debian-mutt.orig/mx.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/mx.c 2007-06-14 10:57:02.000000000 +0200
@@ -30,6 +30,10 @@
#include "keymap.h"
#include "url.h"
#ifdef USE_IMAP
#include "imap.h"
#endif
-@@ -454,6 +458,10 @@
+@@ -450,6 +454,10 @@ int mx_get_magic (const char *path)
return (-1);
}
return (magic);
}
-@@ -493,6 +501,13 @@
+@@ -489,6 +497,13 @@ static int mx_open_mailbox_append (CONTE
{
struct stat sb;
ctx->append = 1;
#ifdef USE_IMAP
-@@ -653,7 +668,12 @@
+@@ -652,7 +667,12 @@ CONTEXT *mx_open_mailbox (const char *pa
}
ctx->magic = mx_get_magic (path);
if(ctx->magic == 0)
mutt_error (_("%s is not a mailbox."), path);
-@@ -759,6 +779,10 @@
+@@ -753,6 +773,10 @@ void mx_fastclose_mailbox (CONTEXT *ctx)
mutt_free_header (&ctx->hdrs[i]);
FREE (&ctx->hdrs);
FREE (&ctx->v2r);
FREE (&ctx->path);
FREE (&ctx->pattern);
if (ctx->limit_pattern)
-@@ -816,6 +840,12 @@
+@@ -805,6 +829,12 @@ static int sync_mailbox (CONTEXT *ctx, i
+
if (tmp && tmp->new == 0)
mutt_update_mailbox (tmp);
- #endif
+
+#ifdef USE_COMPRESSED
+ if (rc == 0 && ctx->compressinfo)
return rc;
}
-@@ -1021,6 +1051,11 @@
+@@ -1006,6 +1036,11 @@ int mx_close_mailbox (CONTEXT *ctx, int
!mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY))
mx_unlink_empty (ctx->path);
mx_fastclose_mailbox (ctx);
return 0;
-@@ -1325,6 +1360,11 @@
+@@ -1315,6 +1350,11 @@ int mx_check_mailbox (CONTEXT *ctx, int
{
int rc;
if (ctx)
{
if (ctx->locked) lock = 0;
-diff -urN mutt-1.5.9/mx.h mutt-1.5.9-ro/mx.h
---- mutt-1.5.9/mx.h 2003-08-05 15:58:16.000000000 +0200
-+++ mutt-1.5.9-ro/mx.h 2005-03-20 14:06:20.000000000 +0100
-@@ -40,6 +40,9 @@
+Index: debian-mutt/mx.h
+===================================================================
+--- debian-mutt.orig/mx.h 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/mx.h 2007-06-14 10:57:02.000000000 +0200
+@@ -40,6 +40,9 @@ enum
#ifdef USE_POP
, M_POP
#endif
};
WHERE short DefaultMagic INITVAL (M_MBOX);
-diff -urN mutt-1.5.9/PATCHES mutt-1.5.9-ro/PATCHES
---- mutt-1.5.9/PATCHES 2005-03-13 17:33:06.000000000 +0100
-+++ mutt-1.5.9-ro/PATCHES 2005-03-20 17:59:28.000000000 +0100
+Index: debian-mutt/PATCHES
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ debian-mutt/PATCHES 2007-06-14 10:57:02.000000000 +0200
@@ -0,0 +1 @@
-+patch-1.5.9.rr.compressed.1
-diff -urN mutt-1.5.9/po/de.po mutt-1.5.9-ro/po/de.po
---- mutt-1.5.9/po/de.po 2005-03-13 17:38:22.000000000 +0100
-+++ mutt-1.5.9-ro/po/de.po 2005-03-20 14:06:20.000000000 +0100
-@@ -715,6 +715,48 @@
- msgid "PGP already selected. Clear & continue ? "
- msgstr "PGP bereits ausgewählt. Löschen und weiter?"
++patch-1.5.16.rr.compressed.1
+Index: debian-mutt/po/de.po
+===================================================================
+--- debian-mutt.orig/po/de.po 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/po/de.po 2007-06-14 10:57:02.000000000 +0200
+@@ -1279,6 +1279,48 @@ msgstr "Prüfung des Absenders fehlgeschl
+ msgid "Failed to figure out sender"
+ msgstr "Kann Absender nicht ermitteln"
+#: compress.c:203 mbox.c:661
+msgid "Mailbox was corrupted!"
#: crypt.c:69
#, c-format
msgid " (current time: %c)"
-@@ -1305,6 +1347,10 @@
- msgid "Help for %s"
- msgstr "Hilfe für %s"
+@@ -1948,6 +1990,10 @@ msgstr "Hilfe für %s"
+ msgid "Bad history file format (line %d)"
+ msgstr "Falsches Format der Datei früherer Eingaben (Zeile %d)"
+#: hook.c:96
-+msgid "bad formatted command string"
++msgid "badly formatted command string"
+msgstr "Hook enthält nicht die Muster %f und %t"
+
- #: hook.c:246
+ #: hook.c:251
#, c-format
msgid "unhook: Can't do unhook * from within a hook."
-@@ -2737,18 +2783,10 @@
+@@ -3452,18 +3498,10 @@ msgstr "Lese %s..."
msgid "Mailbox is corrupt!"
msgstr "Mailbox fehlerhaft!"
--#: mbox.c:662
+-#: mbox.c:670
-msgid "Mailbox was corrupted!"
-msgstr "Mailbox wurde zerstört!"
-
- #: mbox.c:699 mbox.c:953
+ #: mbox.c:711 mbox.c:964
msgid "Fatal error! Could not reopen mailbox!"
msgstr "Fataler Fehler, konnte Mailbox nicht erneut öffnen!"
--#: mbox.c:708
+-#: mbox.c:720
-msgid "Unable to lock mailbox!"
-msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren!"
-
#. this means ctx->changed or ctx->deleted was set, but no
#. * messages were found to be changed or deleted. This should
#. * never happen, is we presume it is a bug in mutt.
-diff -urN mutt-1.5.9/po/POTFILES.in mutt-1.5.9-ro/po/POTFILES.in
---- mutt-1.5.9/po/POTFILES.in 2002-03-27 09:44:17.000000000 +0100
-+++ mutt-1.5.9-ro/po/POTFILES.in 2005-03-20 14:06:20.000000000 +0100
-@@ -8,6 +8,7 @@
+Index: debian-mutt/po/POTFILES.in
+===================================================================
+--- debian-mutt.orig/po/POTFILES.in 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/po/POTFILES.in 2007-06-14 10:57:02.000000000 +0200
+@@ -8,6 +8,7 @@ charset.c
color.c
commands.c
compose.c
+compress.c
+ crypt-gpgme.c
crypt.c
- curs_lib.c
- curs_main.c
-diff -urN mutt-1.5.9/status.c mutt-1.5.9-ro/status.c
---- mutt-1.5.9/status.c 2005-02-03 19:47:53.000000000 +0100
-+++ mutt-1.5.9-ro/status.c 2005-03-20 14:06:20.000000000 +0100
-@@ -97,6 +97,14 @@
+ cryptglue.c
+Index: debian-mutt/status.c
+===================================================================
+--- debian-mutt.orig/status.c 2007-06-14 10:54:19.000000000 +0200
++++ debian-mutt/status.c 2007-06-14 10:57:02.000000000 +0200
+@@ -99,6 +99,14 @@ status_format_str (char *buf, size_t buf
case 'f':
snprintf (fmt, sizeof(fmt), "%%%ss", prefix);
---- a/debian-config.h
-+++ b/debian-config.h
+--- a/config-debian.h
++++ b/config-debian.h
@@ -0,0 +1,4 @@
+#ifndef USE_COMPRESSED
+#error "You forgot to update debian/patches/autotools-update."
--- /dev/null
+# vim:ft=diff:
+This is the ifdef patch by Cedric Duval <cedricduval@free.fr>.
+
+This command allows to test if a feature has been compiled in before actually
+attempting to configure / use it.
+
+Syntax:
+
+ifdef <item> <command>
+
+where <item> can be the name of a variable, function, or command.
+
+Examples:
+
+ifdef imap-fetch-mail 'source ~/.mutt/imap_setup'
+ifdef trash set trash=~/Mail/trash
+
+* Patch last synced with upstream:
+ - Date: 2007-02-15
+ - File:
+ http://cedricduval.free.fr/mutt/patches/download/patch-1.5.4.cd.ifdef.1
+
+* Changes made:
+ - Updated to 1.5.13
+ - Also look for commands
+ - Use mutt_strcmp in favor of ascii_strncasecmp to compare strings.
+
+== END PATCH
+Index: mutt/init.c
+===================================================================
+--- mutt.orig/init.c 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.c 2007-02-15 23:38:45.597907432 +0100
+@@ -624,6 +624,65 @@ static int remove_from_rx_list (RX_LIST
+ return (rv);
+ }
+
++static int parse_ifdef (BUFFER *tmp, BUFFER *s, unsigned long data, BUFFER *err)
++{
++ int i, j, res = 0;
++ BUFFER token;
++
++ memset (&token, 0, sizeof (token));
++ mutt_extract_token (tmp, s, 0);
++
++ /* is the item defined as a variable? */
++ res = (mutt_option_index (tmp->data) != -1);
++
++ /* a function? */
++ if (!res)
++ for (i = 0; !res && i < MENU_MAX; i++)
++ {
++ struct binding_t *b = km_get_table (Menus[i].value);
++
++ if (!b)
++ continue;
++
++ for (j = 0; b[j].name; j++)
++ if (!mutt_strcmp (tmp->data, b[j].name))
++ {
++ res = 1;
++ break;
++ }
++ }
++
++ /* a command? */
++ if (!res)
++ for (i = 0; Commands[i].name; i++)
++ {
++ if (!mutt_strcmp (tmp->data, Commands[i].name))
++ {
++ res = 1;
++ break;
++ }
++ }
++
++ if (!MoreArgs (s))
++ {
++ snprintf (err->data, err->dsize, _("ifdef: too few arguments"));
++ return (-1);
++ }
++ mutt_extract_token (tmp, s, M_TOKEN_SPACE);
++
++ if (res)
++ {
++ if (mutt_parse_rc_line (tmp->data, &token, err) == -1)
++ {
++ mutt_error ("Erreur: %s", err->data);
++ FREE (&token.data);
++ return (-1);
++ }
++ FREE (&token.data);
++ }
++ return 0;
++}
++
+ static int parse_unignore (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err)
+ {
+ do
+Index: mutt/init.h
+===================================================================
+--- mutt.orig/init.h 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.h 2007-02-15 23:26:21.160079184 +0100
+@@ -3017,6 +3017,7 @@ static int parse_lists (BUFFER *, BUFFER
+ static int parse_unlists (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_alias (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_unalias (BUFFER *, BUFFER *, unsigned long, BUFFER *);
++static int parse_ifdef (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_ignore (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_unignore (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_source (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+@@ -3068,6 +3069,7 @@ struct command_t Commands[] = {
+ { "group", parse_group, 0 },
+ { "ungroup", parse_ungroup, 0 },
+ { "hdr_order", parse_list, UL &HeaderOrderList },
++ { "ifdef", parse_ifdef, 0 },
+ #ifdef HAVE_ICONV
+ { "iconv-hook", mutt_parse_hook, M_ICONVHOOK },
+ #endif
+Index: mutt/PATCHES
+===================================================================
+--- mutt/PATCHES.orig 2007-02-15 21:48:09.131803632 +0100
++++ mutt/PATCHES 2007-02-15 21:48:09.131803632 +0100
+@@ -0,0 +1 @@
++patch-1.5.13.cd.ifdef.2
+Index: mutt/doc/manual.xml.head
+===================================================================
+--- mutt.orig/doc/manual.xml.head 2007-02-15 21:53:09.312169280 +0100
++++ mutt/doc/manual.xml.head 2007-02-15 23:42:23.875724160 +0100
+@@ -3091,6 +3091,28 @@ considered to be an executable program f
+
+ </sect1>
+
++<sect1 id="ifdef">
++
++<title>Configuring features conditionnaly</title>
++
++<para>
++Usage: <literal>ifdef</literal> <emphasis>item</emphasis> <emphasis>command</emphasis>
++</para>
++
++<para>
++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, variable, or command. Example:
++</para>
++
++<para>
++<screen>
++ifdef imap_keepalive 'source ~/.mutt/imap_setup'
++</screen>
++</para>
++
++</sect1>
++
+ <sect1 id="unhook">
+ <title>Removing hooks</title>
+
--- /dev/null
+# vi: ft=diff
+This is the maildir mtime patch by Dale Woolridge.
+
+The home page for this patch is:
+
+ http://www.mutt.ca/maildir-mtime.html
+
+* Patch last synced with upstream:
+ - Date: 2004-08-10
+ - File: http://www.mutt.ca/patches/patch-1.5.6.dw.maildir-mtime.1
+
+* Changes made:
+ - removed a spurious const in add_folder() definition.
+ - added a $maildir_mtime option to allow this patch to be disabled at
+ runtime (see Bug#253261, comments from Zephaniah E. Hull).
+ - 2007-04-03 myon: resolved conflict in browser.c
+
+== END PATCH
+Index: debian-mutt/buffy.c
+===================================================================
+--- debian-mutt.orig/buffy.c 2007-04-03 19:17:22.000000000 +0200
++++ debian-mutt/buffy.c 2007-04-03 19:20:31.000000000 +0200
+@@ -226,6 +226,7 @@ int mutt_parse_mailboxes (BUFFER *path,
+ (*tmp)->new = 0;
+ (*tmp)->notified = 1;
+ (*tmp)->newly_created = 0;
++ (*tmp)->mtime = 0;
+
+ /* for check_mbox_size, it is important that if the folder is new (tested by
+ * reading it), the size is set to 0 so that later when we check we see
+@@ -254,6 +255,7 @@ int mutt_buffy_check (int force)
+ {
+ BUFFY *tmp;
+ struct stat sb;
++ struct stat smd;
+ struct dirent *de;
+ DIR *dirp;
+ char path[_POSIX_PATH_MAX];
+@@ -298,6 +300,7 @@ int mutt_buffy_check (int force)
+ if (tmp->magic != M_IMAP)
+ #endif
+ tmp->new = 0;
++ tmp->mtime = 0;
+
+ #ifdef USE_IMAP
+ if (tmp->magic != M_IMAP)
+@@ -380,10 +383,20 @@ int mutt_buffy_check (int force)
+ if (*de->d_name != '.' &&
+ (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')))
+ {
+- /* one new and undeleted message is enough */
+- BuffyCount++;
+- tmp->new = 1;
+- break;
++ if (!tmp->new)
++ {
++ /* one new and undeleted message is enough */
++ BuffyCount++;
++ tmp->new = 1;
++
++ if (! option (OPTMAILDIRMTIME)) /* prevent stat calls */
++ break;
++ }
++ snprintf (path, sizeof (path), "%s/new/%s", tmp->path, de->d_name);
++ if (!stat (path, &smd) && smd.st_mtime > tmp->mtime)
++ {
++ tmp->mtime = smd.st_mtime;
++ }
+ }
+ }
+ closedir (dirp);
+Index: debian-mutt/init.h
+===================================================================
+--- debian-mutt.orig/init.h 2007-04-03 19:20:27.000000000 +0200
++++ debian-mutt/init.h 2007-04-03 19:20:31.000000000 +0200
+@@ -1086,6 +1086,16 @@ struct option_t MuttVars[] = {
+ ** \fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
+ ** DOING!\fP
+ */
++ { "maildir_mtime", DT_BOOL, R_NONE, OPTMAILDIRMTIME, 0 },
++ /*
++ ** .pp
++ ** If set, the sort-by-date option in the browser will sort maildirs
++ ** smartly, not using the mtime of the maildir itself but that of the
++ ** newest message in the new subdirectory, making the sorting by
++ ** reverse date much more useful. People with maildirs over NFS may
++ ** wish to leave this option unset.
++ **
++ */
+ #ifdef USE_HCACHE
+ { "header_cache", DT_PATH, R_NONE, UL &HeaderCache, 0 },
+ /*
+Index: debian-mutt/mutt.h
+===================================================================
+--- debian-mutt.orig/mutt.h 2007-04-03 19:20:27.000000000 +0200
++++ debian-mutt/mutt.h 2007-04-03 19:20:31.000000000 +0200
+@@ -400,6 +400,7 @@ enum
+ OPTINCLUDEONLYFIRST,
+ OPTKEEPFLAGGED,
+ OPTMAILCAPSANITIZE,
++ OPTMAILDIRMTIME,
+ OPTMAILDIRTRASH,
+ OPTMARKERS,
+ OPTMARKOLD,
+Index: debian-mutt/PATCHES
+===================================================================
+--- debian-mutt.orig/PATCHES 2007-04-03 19:20:27.000000000 +0200
++++ debian-mutt/PATCHES 2007-04-03 19:20:31.000000000 +0200
+@@ -1,2 +1,3 @@
++patch-1.5.6.dw.maildir-mtime.1
+ patch-1.5.13.cd.ifdef.2
+ patch-1.5.14.rr.compressed.1
+Index: debian-mutt/browser.c
+===================================================================
+--- debian-mutt.orig/browser.c 2007-04-03 19:20:17.000000000 +0200
++++ debian-mutt/browser.c 2007-04-03 19:24:32.000000000 +0200
+@@ -32,6 +32,7 @@
+ #ifdef USE_IMAP
+ #include "imap.h"
+ #endif
++#include "mx.h"
+
+ #include <stdlib.h>
+ #include <dirent.h>
+@@ -307,8 +308,10 @@ folder_format_str (char *dest, size_t de
+ }
+
+ static void add_folder (MUTTMENU *m, struct browser_state *state,
+- const char *name, const struct stat *s, int new)
++ const char *name, /*DEB const IAN*/ struct stat *s, BUFFY *mbuf)
+ {
++ int new = (mbuf) ? mbuf->new : 0;
++
+ if (state->entrylen == state->entrymax)
+ {
+ /* need to allocate more space */
+@@ -320,6 +323,9 @@ static void add_folder (MUTTMENU *m, str
+ m->data = state->entry;
+ }
+
++ if (mbuf && mbuf->magic == M_MAILDIR && mbuf->mtime)
++ s->st_mtime = mbuf->mtime;
++
+ if (s != NULL)
+ {
+ (state->entry)[state->entrylen].mode = s->st_mode;
+@@ -414,7 +420,7 @@ static int examine_directory (MUTTMENU *
+ tmp = Incoming;
+ while (tmp && mutt_strcmp (buffer, tmp->path))
+ tmp = tmp->next;
+- add_folder (menu, state, de->d_name, &s, (tmp) ? tmp->new : 0);
++ add_folder (menu, state, de->d_name, &s, tmp);
+ }
+ closedir (dp);
+ browser_sort (state);
+@@ -442,14 +448,15 @@ static int examine_mailboxes (MUTTMENU *
+ if (mx_is_imap (tmp->path))
+ {
+ imap_mailbox_state (tmp->path, &mbox);
+- add_folder (menu, state, tmp->path, NULL, mbox.new);
++ tmp->new = mbox.new;
++ add_folder (menu, state, tmp->path, NULL, tmp);
+ continue;
+ }
+ #endif
+ #ifdef USE_POP
+ if (mx_is_pop (tmp->path))
+ {
+- add_folder (menu, state, tmp->path, NULL, tmp->new);
++ add_folder (menu, state, tmp->path, NULL, tmp);
+ continue;
+ }
+ #endif
+@@ -463,7 +469,7 @@ static int examine_mailboxes (MUTTMENU *
+ strfcpy (buffer, NONULL(tmp->path), sizeof (buffer));
+ mutt_pretty_mailbox (buffer);
+
+- add_folder (menu, state, buffer, &s, tmp->new);
++ add_folder (menu, state, buffer, &s, tmp);
+ }
+ while ((tmp = tmp->next));
+ browser_sort (state);
+Index: debian-mutt/buffy.h
+===================================================================
+--- debian-mutt.orig/buffy.h 2007-04-03 19:17:22.000000000 +0200
++++ debian-mutt/buffy.h 2007-04-03 19:20:31.000000000 +0200
+@@ -25,6 +25,7 @@ typedef struct buffy_t
+ char *path;
+ long size;
+ struct buffy_t *next;
++ time_t mtime; /* for maildirs...time of newest entry */
+ short new; /* mailbox has new mail */
+ short notified; /* user has been notified */
+ short magic; /* mailbox type */
--- /dev/null
+# vim:ft=diff:
+This is the purge message patch by Cedric Duval <cedricduval@free.fr>.
+
+(requires trash folder patch)
+
+This patch adds the purge-message function, which, unlike delete-message, will
+bypass the trash folder and really delete the mail.
+
+You can bind this function to <esc>D, for instance, by adding the following
+lines to your muttrc:
+
+bind index \eD purge-message
+bind pager \eD purge-message
+
+Please be very careful with this function, and try to use it as less as
+possible. The risk resides in getting into the habit of always using
+purge-message instead of delete-message, which would really defeat the purpose
+of having a trash folder feature.
+
+* Patch last synced with upstream:
+ - Date: 2007-02-15
+ - File: http://cedricduval.free.fr/mutt/patches/download/patch-1.5.5.1.cd.purge_message.3.4
+
+* Changes made:
+ - Updated to 1.5.13
+ - Fixed indentation of "purged" in mutt.h.
+
+== END PATCH
+Index: trash/OPS
+===================================================================
+--- trash.orig/OPS 2006-12-12 14:15:02.000000000 +0100
++++ trash/OPS 2007-02-15 19:39:57.479112576 +0100
+@@ -140,6 +140,7 @@ OP_PREV_ENTRY "move to the previous entr
+ OP_PREV_LINE "scroll up one line"
+ OP_PREV_PAGE "move to the previous page"
+ OP_PRINT "print the current entry"
++OP_PURGE_MESSAGE "really delete the current entry, bypassing the trash folder"
+ OP_QUERY "query external program for addresses"
+ OP_QUERY_APPEND "append new query results to current results"
+ OP_QUIT "save changes to mailbox and quit"
+Index: trash/curs_main.c
+===================================================================
+--- trash.orig/curs_main.c 2006-12-12 14:15:02.000000000 +0100
++++ trash/curs_main.c 2007-02-15 19:39:57.480112424 +0100
+@@ -1778,6 +1778,7 @@ int mutt_index_menu (void)
+ MAYBE_REDRAW (menu->redraw);
+ break;
+
++ case OP_PURGE_MESSAGE:
+ case OP_DELETE:
+
+ CHECK_MSGCOUNT;
+@@ -1788,6 +1789,7 @@ int mutt_index_menu (void)
+ if (tag)
+ {
+ mutt_tag_set_flag (M_DELETE, 1);
++ mutt_tag_set_flag (M_PURGED, (op != OP_PURGE_MESSAGE) ? 0 : 1);
+ if (option (OPTDELETEUNTAG))
+ mutt_tag_set_flag (M_TAG, 0);
+ menu->redraw = REDRAW_INDEX;
+@@ -1795,6 +1797,8 @@ int mutt_index_menu (void)
+ else
+ {
+ mutt_set_flag (Context, CURHDR, M_DELETE, 1);
++ mutt_set_flag (Context, CURHDR, M_PURGED,
++ (op != OP_PURGE_MESSAGE) ? 0 : 1);
+ if (option (OPTDELETEUNTAG))
+ mutt_set_flag (Context, CURHDR, M_TAG, 0);
+ if (option (OPTRESOLVE))
+@@ -2088,11 +2092,13 @@ int mutt_index_menu (void)
+ if (tag)
+ {
+ mutt_tag_set_flag (M_DELETE, 0);
++ mutt_tag_set_flag (M_PURGED, 0);
+ menu->redraw = REDRAW_INDEX;
+ }
+ else
+ {
+ mutt_set_flag (Context, CURHDR, M_DELETE, 0);
++ mutt_set_flag (Context, CURHDR, M_PURGED, 0);
+ if (option (OPTRESOLVE) && menu->current < Context->vcount - 1)
+ {
+ menu->current++;
+@@ -2113,9 +2119,11 @@ int mutt_index_menu (void)
+ CHECK_ACL(M_ACL_DELETE, _("undelete message(s)"));
+
+ rc = mutt_thread_set_flag (CURHDR, M_DELETE, 0,
+- op == OP_UNDELETE_THREAD ? 0 : 1);
++ op == OP_UNDELETE_THREAD ? 0 : 1)
++ + mutt_thread_set_flag (CURHDR, M_PURGED, 0,
++ op == OP_UNDELETE_THREAD ? 0 : 1);
+
+- if (rc != -1)
++ if (rc > -1)
+ {
+ if (option (OPTRESOLVE))
+ {
+Index: trash/flags.c
+===================================================================
+--- trash.orig/flags.c 2007-02-15 19:38:00.433906152 +0100
++++ trash/flags.c 2007-02-15 19:39:57.480112424 +0100
+@@ -105,6 +105,16 @@ void _mutt_set_flag (CONTEXT *ctx, HEADE
+ }
+ break;
+
++ case M_PURGED:
++ if (bf)
++ {
++ if (!h->purged)
++ h->purged = 1;
++ }
++ else if (h->purged)
++ h->purged = 0;
++ break;
++
+ case M_NEW:
+
+ if (!mutt_bit_isset(ctx->rights,M_ACL_SEEN))
+Index: trash/functions.h
+===================================================================
+--- trash.orig/functions.h 2005-09-18 13:16:40.000000000 +0200
++++ trash/functions.h 2007-02-15 19:39:57.481112272 +0100
+@@ -103,6 +103,7 @@ struct binding_t OpMain[] = {
+ { "toggle-write", OP_TOGGLE_WRITE, "%" },
+ { "next-thread", OP_MAIN_NEXT_THREAD, "\016" },
+ { "next-subthread", OP_MAIN_NEXT_SUBTHREAD, "\033n" },
++ { "purge-message", OP_PURGE_MESSAGE, NULL },
+ { "query", OP_QUERY, "Q" },
+ { "quit", OP_QUIT, "q" },
+ { "reply", OP_REPLY, "r" },
+@@ -189,6 +190,7 @@ struct binding_t OpPager[] = {
+ { "print-message", OP_PRINT, "p" },
+ { "previous-thread", OP_MAIN_PREV_THREAD, "\020" },
+ { "previous-subthread",OP_MAIN_PREV_SUBTHREAD, "\033p" },
++ { "purge-message", OP_PURGE_MESSAGE, NULL },
+ { "quit", OP_QUIT, "Q" },
+ { "exit", OP_EXIT, "q" },
+ { "reply", OP_REPLY, "r" },
+Index: trash/mutt.h
+===================================================================
+--- trash.orig/mutt.h 2007-02-15 19:38:00.435905848 +0100
++++ trash/mutt.h 2007-02-15 19:40:38.768835584 +0100
+@@ -201,6 +201,7 @@ enum
+ M_UNDELETE,
+ M_DELETED,
+ M_APPENDED,
++ M_PURGED,
+ M_FLAG,
+ M_TAG,
+ M_UNTAG,
+@@ -705,6 +706,7 @@ typedef struct header
+ unsigned int flagged : 1; /* marked important? */
+ unsigned int tagged : 1;
+ unsigned int appended : 1; /* has been saved */
++ unsigned int purged : 1; /* bypassing the trash folder */
+ unsigned int deleted : 1;
+ unsigned int changed : 1;
+ unsigned int attach_del : 1; /* has an attachment marked for deletion */
+Index: trash/mx.c
+===================================================================
+--- trash.orig/mx.c 2007-02-15 19:38:00.436905696 +0100
++++ trash/mx.c 2007-02-15 19:39:57.482112120 +0100
+@@ -852,6 +852,7 @@ static int trash_append (CONTEXT *ctx)
+ {
+ for (i = 0 ; i < ctx->msgcount ; i++)
+ if (ctx->hdrs[i]->deleted && !ctx->hdrs[i]->appended
++ && !ctx->hdrs[i]->purged
+ && mutt_append_message (ctx_trash, ctx, ctx->hdrs[i], 0, 0) == -1)
+ {
+ mx_close_mailbox (ctx_trash, NULL);
+Index: trash/pager.c
+===================================================================
+--- trash.orig/pager.c 2006-12-12 14:15:03.000000000 +0100
++++ trash/pager.c 2007-02-15 19:39:57.482112120 +0100
+@@ -2254,12 +2254,15 @@ search_next:
+ MAYBE_REDRAW (redraw);
+ break;
+
++ case OP_PURGE_MESSAGE:
+ case OP_DELETE:
+ CHECK_MODE(IsHeader (extra));
+ CHECK_READONLY;
+ CHECK_ACL(M_ACL_DELETE, _("delete message"));
+
+ mutt_set_flag (Context, extra->hdr, M_DELETE, 1);
++ mutt_set_flag (Context, extra->hdr, M_PURGED,
++ ch != OP_PURGE_MESSAGE ? 0 : 1);
+ if (option (OPTDELETEUNTAG))
+ mutt_set_flag (Context, extra->hdr, M_TAG, 0);
+ redraw = REDRAW_STATUS | REDRAW_INDEX;
+@@ -2572,6 +2575,7 @@ search_next:
+ CHECK_ACL(M_ACL_DELETE, _("undelete message"));
+
+ mutt_set_flag (Context, extra->hdr, M_DELETE, 0);
++ mutt_set_flag (Context, extra->hdr, M_PURGED, 0);
+ redraw = REDRAW_STATUS | REDRAW_INDEX;
+ if (option (OPTRESOLVE))
+ {
+@@ -2587,9 +2591,11 @@ search_next:
+ CHECK_ACL(M_ACL_DELETE, _("undelete message(s)"));
+
+ r = mutt_thread_set_flag (extra->hdr, M_DELETE, 0,
++ ch == OP_UNDELETE_THREAD ? 0 : 1)
++ + mutt_thread_set_flag (extra->hdr, M_PURGED, 0,
+ ch == OP_UNDELETE_THREAD ? 0 : 1);
+
+- if (r != -1)
++ if (r > -1)
+ {
+ if (option (OPTRESOLVE))
+ {
+Index: trash/pattern.c
+===================================================================
+--- trash.orig/pattern.c 2007-01-25 21:44:41.000000000 +0100
++++ trash/pattern.c 2007-02-15 19:39:57.483111968 +0100
+@@ -1338,8 +1338,10 @@ int mutt_pattern_func (int op, char *pro
+ {
+ switch (op)
+ {
+- case M_DELETE:
+ case M_UNDELETE:
++ mutt_set_flag (Context, Context->hdrs[Context->v2r[i]], M_PURGED,
++ 0);
++ case M_DELETE:
+ mutt_set_flag (Context, Context->hdrs[Context->v2r[i]], M_DELETE,
+ (op == M_DELETE));
+ break;
+Index: trash/PATCHES
+===================================================================
+--- trash.orig/PATCHES 2007-02-15 19:38:00.437905544 +0100
++++ trash/PATCHES 2007-02-15 19:41:01.724345816 +0100
+@@ -1 +1,2 @@
+ patch-1.5.13.cd.trash_folder.3.4
++patch-1.5.13.cd.purge_message.3.4
--- /dev/null
+# vi: ft=diff
+This is the sensible browser position patch by Haakon Riiser.
+
+ * Found in: <20050309162127.GA5656@s>
+ http://lists.df7cb.de/mutt/message/20050309.162127.a244a894.en.html
+
+== END PATCH
+Index: debian-mutt/menu.c
+===================================================================
+--- debian-mutt.orig/menu.c 2007-03-24 18:45:30.000000000 +0100
++++ debian-mutt/menu.c 2007-06-28 21:48:47.000000000 +0200
+@@ -840,8 +840,12 @@ int menu_redraw (MUTTMENU *menu)
+
+ int mutt_menuLoop (MUTTMENU *menu)
+ {
++ static int last_position = -1;
+ int i = OP_NULL;
+
++ if (menu->is_mailbox_list && last_position >= 0)
++ menu->current = last_position;
++
+ FOREVER
+ {
+ if (option (OPTMENUCALLER))
+@@ -1073,6 +1077,8 @@ int mutt_menuLoop (MUTTMENU *menu)
+ break;
+
+ default:
++ if (menu->is_mailbox_list)
++ last_position = menu->current;
+ return (i);
+ }
+ }
+Index: debian-mutt/browser.c
+===================================================================
+--- debian-mutt.orig/browser.c 2007-06-28 21:41:27.000000000 +0200
++++ debian-mutt/browser.c 2007-06-28 21:48:47.000000000 +0200
+@@ -56,6 +56,7 @@ typedef struct folder_t
+ int num;
+ } FOLDER;
+
++static char OldLastDir[_POSIX_PATH_MAX] = "";
+ static char LastDir[_POSIX_PATH_MAX] = "";
+ static char LastDirBackup[_POSIX_PATH_MAX] = "";
+
+@@ -510,19 +511,38 @@ static void init_menu (struct browser_st
+ menu->tagged = 0;
+
+ if (buffy)
++ {
++ menu->is_mailbox_list = 1;
+ snprintf (title, titlelen, _("Mailboxes [%d]"), mutt_buffy_check (0));
++ }
+ else
+ {
++ menu->is_mailbox_list = 0;
+ strfcpy (path, LastDir, sizeof (path));
+ mutt_pretty_mailbox (path);
+ #ifdef USE_IMAP
+- if (state->imap_browse && option (OPTIMAPLSUB))
+- snprintf (title, titlelen, _("Subscribed [%s], File mask: %s"),
+- path, NONULL (Mask.pattern));
+- else
++ if (state->imap_browse && option (OPTIMAPLSUB))
++ snprintf (title, titlelen, _("Subscribed [%s], File mask: %s"),
++ path, NONULL (Mask.pattern));
++ else
+ #endif
+- snprintf (title, titlelen, _("Directory [%s], File mask: %s"),
+- path, NONULL(Mask.pattern));
++ {
++ char *p = strrchr (OldLastDir, '/');
++ if (p && p - OldLastDir == mutt_strlen (LastDir) &&
++ mutt_strncmp (LastDir, OldLastDir, p - OldLastDir) == 0)
++ {
++ /* If we get here, it means that LastDir is the parent directory of
++ * OldLastDir. I.e., we're returning from a subdirectory, and we want
++ * to position the cursor on the directory we're returning from. */
++ int i;
++ for (i = 0; i < state->entrymax; i++)
++ if (mutt_strcmp (state->entry[i].name, p + 1) == 0)
++ menu->current = i;
++ }
++ snprintf (title, titlelen, _("Directory [%s], File mask: %s"),
++ path, NONULL(Mask.pattern));
++ }
++
+ }
+ menu->redraw = REDRAW_FULL;
+ }
+@@ -706,7 +726,6 @@ void _mutt_select_file (char *f, size_t
+ #endif
+ )
+ {
+- char OldLastDir[_POSIX_PATH_MAX];
+
+ /* save the old directory */
+ strfcpy (OldLastDir, LastDir, sizeof (OldLastDir));
+Index: debian-mutt/mutt_menu.h
+===================================================================
+--- debian-mutt.orig/mutt_menu.h 2007-03-20 20:42:04.000000000 +0100
++++ debian-mutt/mutt_menu.h 2007-06-28 21:48:47.000000000 +0200
+@@ -49,6 +49,7 @@ typedef struct menu_t
+ int offset; /* which screen row to start the index */
+ int pagelen; /* number of entries per screen */
+ int tagprefix;
++ int is_mailbox_list;
+
+ /* Setting dialog != NULL overrides normal menu behaviour.
+ * In dialog mode menubar is hidden and prompt keys are checked before
+Index: debian-mutt/PATCHES
+===================================================================
+--- debian-mutt.orig/PATCHES 2007-06-28 21:49:06.000000000 +0200
++++ debian-mutt/PATCHES 2007-06-28 21:49:20.000000000 +0200
+@@ -4,3 +4,4 @@ patch-1.5.13.nt+ab.xtitles.4
+ patch-1.5.6.dw.maildir-mtime.1
+ patch-1.5.13.cd.ifdef.2
+ patch-1.5.16.rr.compressed.1
++patch-1.5.8.hr.sensible_browser_position.3
--- /dev/null
+# vim:ft=diff:
+This is the trash folder patch by Cedric Duval <cedricduval@free.fr>.
+
+With this patch, if the trash variable is set to a path (unset by default), the
+deleted mails will be moved to a trash folder instead of being irremediably
+purged when syncing the mailbox.
+
+For instance, set trash="~/Mail/trash" will cause every deleted mail to go to
+this folder.
+
+Note that the append to the trash folder doesn't occur until the resync is
+done. This allows you to change your mind and undo deletes, and thus the moves
+to the trash folder are unnecessary.
+
+Notes
+
+ * You might also want to have a look at the purge message feature below
+ which is related to this patch.
+ * IMAP is now supported. To retain the previous behavior, add this to your
+ muttrc:
+ folder-hook ^imap:// 'unset trash'
+
+FAQ
+
+Every once in a while, someone asks what are the advantages of this patch over
+a macro based solution. Here's an attempt to answer this question:
+
+ * The folder history doesn't clutter up with unwanted trash entries.
+ * Delayed move to the trash allows to change one's mind.
+ * No need to treat the case of "normal folders" and trash folders
+ separately with folder-hooks, and to create two sets of macros (one for
+ the index, one for the pager).
+ * Works not only with delete-message, but also with every deletion
+ functions like delete-pattern, delete-thread or delete-subthread.
+
+To sum up, it's more integrated and transparent to the user.
+
+* Patch last synced with upstream:
+ - Date: 2007-02-15
+ - File: http://cedricduval.free.fr/mutt/patches/download/patch-1.5.5.1.cd.trash_folder.3.4
+
+* Changes made:
+ - Updated to 1.5.13:
+ - structure of _mutt_save_message changed (commands.c)
+ - context of option (OPTCONFIRMAPPEND) changed (muttlib.c)
+ - Fixed indentation of "appended" in mutt.h.
+
+== END PATCH
+Index: debian-mutt/commands.c
+===================================================================
+--- debian-mutt.orig/commands.c 2007-04-12 19:06:45.000000000 +0200
++++ debian-mutt/commands.c 2007-05-16 23:09:20.000000000 +0200
+@@ -688,6 +688,7 @@ int _mutt_save_message (HEADER *h, CONTE
+ if (option (OPTDELETEUNTAG))
+ mutt_set_flag (Context, h, M_TAG, 0);
+ }
++ mutt_set_flag (Context, h, M_APPENDED, 1);
+
+ return 0;
+ }
+Index: debian-mutt/flags.c
+===================================================================
+--- debian-mutt.orig/flags.c 2007-05-16 23:08:46.000000000 +0200
++++ debian-mutt/flags.c 2007-05-16 23:43:45.000000000 +0200
+@@ -69,7 +69,13 @@ void _mutt_set_flag (CONTEXT *ctx, HEADE
+ {
+ h->deleted = 0;
+ update = 1;
+- if (upd_ctx) ctx->deleted--;
++ if (upd_ctx)
++ {
++ ctx->deleted--;
++ if (h->appended)
++ ctx->appended--;
++ }
++ h->appended = 0; /* when undeleting, also reset the appended flag */
+ #ifdef USE_IMAP
+ /* see my comment above */
+ if (ctx->magic == M_IMAP)
+@@ -91,6 +97,17 @@ void _mutt_set_flag (CONTEXT *ctx, HEADE
+ }
+ break;
+
++ case M_APPENDED:
++ if (bf)
++ {
++ if (!h->appended)
++ {
++ h->appended = 1;
++ if (upd_ctx) ctx->appended++;
++ }
++ }
++ break;
++
+ case M_NEW:
+
+ if (!mutt_bit_isset(ctx->rights,M_ACL_SEEN))
+Index: debian-mutt/globals.h
+===================================================================
+--- debian-mutt.orig/globals.h 2007-05-16 23:09:10.000000000 +0200
++++ debian-mutt/globals.h 2007-05-16 23:09:20.000000000 +0200
+@@ -142,6 +142,7 @@ WHERE char *StChars;
+ WHERE char *Status;
+ WHERE char *Tempdir;
+ WHERE char *Tochars;
++WHERE char *TrashPath;
+ WHERE char *Username;
+ WHERE char *Visual;
+ WHERE char *XtermTitle;
+Index: debian-mutt/imap/message.c
+===================================================================
+--- debian-mutt.orig/imap/message.c 2007-05-16 23:08:46.000000000 +0200
++++ debian-mutt/imap/message.c 2007-05-16 23:09:20.000000000 +0200
+@@ -816,6 +816,7 @@ int imap_copy_messages (CONTEXT* ctx, HE
+ if (ctx->hdrs[n]->tagged)
+ {
+ mutt_set_flag (ctx, ctx->hdrs[n], M_DELETE, 1);
++ mutt_set_flag (ctx, ctx->hdrs[n], M_APPENDED, 1);
+ if (option (OPTDELETEUNTAG))
+ mutt_set_flag (ctx, ctx->hdrs[n], M_TAG, 0);
+ }
+@@ -823,6 +824,7 @@ int imap_copy_messages (CONTEXT* ctx, HE
+ else
+ {
+ mutt_set_flag (ctx, h, M_DELETE, 1);
++ mutt_set_flag (ctx, h, M_APPENDED, 1);
+ if (option (OPTDELETEUNTAG))
+ mutt_set_flag (ctx, h, M_TAG, 0);
+ }
+Index: debian-mutt/init.h
+===================================================================
+--- debian-mutt.orig/init.h 2007-05-16 23:09:10.000000000 +0200
++++ debian-mutt/init.h 2007-05-16 23:09:20.000000000 +0200
+@@ -2873,6 +2873,16 @@ struct option_t MuttVars[] = {
+ ** by \fIyou\fP. The sixth character is used to indicate when a mail
+ ** was sent to a mailing-list you subscribe to (default: L).
+ */
++ { "trash", DT_PATH, R_NONE, UL &TrashPath, 0 },
++ /*
++ ** .pp
++ ** If set, this variable specifies the path of the trash folder where the
++ ** mails marked for deletion will be moved, instead of being irremediably
++ ** purged.
++ ** .pp
++ ** NOTE: When you delete a message in the trash folder, it is really
++ ** deleted, so that you have a way to clean the trash.
++ */
+ #ifdef USE_SOCKET
+ { "tunnel", DT_STR, R_NONE, UL &Tunnel, UL 0 },
+ /*
+Index: debian-mutt/mutt.h
+===================================================================
+--- debian-mutt.orig/mutt.h 2007-05-16 23:09:10.000000000 +0200
++++ debian-mutt/mutt.h 2007-05-16 23:09:20.000000000 +0200
+@@ -206,6 +206,7 @@ enum
+ M_DELETE,
+ M_UNDELETE,
+ M_DELETED,
++ M_APPENDED,
+ M_FLAG,
+ M_TAG,
+ M_UNTAG,
+@@ -718,6 +719,7 @@ typedef struct header
+ unsigned int mime : 1; /* has a MIME-Version header? */
+ unsigned int flagged : 1; /* marked important? */
+ unsigned int tagged : 1;
++ unsigned int appended : 1; /* has been saved */
+ unsigned int deleted : 1;
+ unsigned int changed : 1;
+ unsigned int attach_del : 1; /* has an attachment marked for deletion */
+@@ -889,6 +891,7 @@ typedef struct _context
+ int new; /* how many new messages? */
+ int unread; /* how many unread messages? */
+ int deleted; /* how many deleted messages */
++ int appended; /* how many saved messages? */
+ int flagged; /* how many flagged messages */
+ int msgnotreadyet; /* which msg "new" in pager, -1 if none */
+
+Index: debian-mutt/muttlib.c
+===================================================================
+--- debian-mutt.orig/muttlib.c 2007-05-16 23:08:47.000000000 +0200
++++ debian-mutt/muttlib.c 2007-05-16 23:09:20.000000000 +0200
+@@ -1384,7 +1384,9 @@ int mutt_save_confirm (const char *s, st
+
+ if (magic > 0 && !mx_access (s, W_OK))
+ {
+- if (option (OPTCONFIRMAPPEND))
++ if (option (OPTCONFIRMAPPEND) &&
++ (!TrashPath || (mutt_strcmp (s, TrashPath) != 0)))
++ /* if we're appending to the trash, there's no point in asking */
+ {
+ snprintf (tmp, sizeof (tmp), _("Append messages to %s?"), s);
+ if ((rc = mutt_yesorno (tmp, M_YES)) == M_NO)
+Index: debian-mutt/mx.c
+===================================================================
+--- debian-mutt.orig/mx.c 2007-05-16 23:09:10.000000000 +0200
++++ debian-mutt/mx.c 2007-05-16 23:09:20.000000000 +0200
+@@ -838,6 +838,53 @@ static int sync_mailbox (CONTEXT *ctx, i
+ return rc;
+ }
+
++/* move deleted mails to the trash folder */
++static int trash_append (CONTEXT *ctx)
++{
++ CONTEXT *ctx_trash;
++ int i = 0;
++ struct stat st, stc;
++
++ if (!TrashPath || !ctx->deleted ||
++ (ctx->magic == M_MAILDIR && option (OPTMAILDIRTRASH)))
++ return 0;
++
++ for (;i < ctx->msgcount && (!ctx->hdrs[i]->deleted ||
++ ctx->hdrs[i]->appended); i++);
++ if (i == ctx->msgcount)
++ return 0; /* nothing to be done */
++
++ if (mutt_save_confirm (TrashPath, &st) != 0)
++ {
++ mutt_error _("message(s) not deleted");
++ return -1;
++ }
++
++ if (lstat (ctx->path, &stc) == 0 && stc.st_ino == st.st_ino
++ && stc.st_dev == st.st_dev && stc.st_rdev == st.st_rdev)
++ return 0; /* we are in the trash folder: simple sync */
++
++ if ((ctx_trash = mx_open_mailbox (TrashPath, M_APPEND, NULL)) != NULL)
++ {
++ for (i = 0 ; i < ctx->msgcount ; i++)
++ if (ctx->hdrs[i]->deleted && !ctx->hdrs[i]->appended
++ && mutt_append_message (ctx_trash, ctx, ctx->hdrs[i], 0, 0) == -1)
++ {
++ mx_close_mailbox (ctx_trash, NULL);
++ return -1;
++ }
++
++ mx_close_mailbox (ctx_trash, NULL);
++ }
++ else
++ {
++ mutt_error _("Can't open trash folder");
++ return -1;
++ }
++
++ return 0;
++}
++
+ /* save changes and close mailbox */
+ int mx_close_mailbox (CONTEXT *ctx, int *index_hint)
+ {
+@@ -973,6 +1020,7 @@ int mx_close_mailbox (CONTEXT *ctx, int
+ if (mutt_append_message (&f, ctx, ctx->hdrs[i], 0, CH_UPDATE_LEN) == 0)
+ {
+ mutt_set_flag (ctx, ctx->hdrs[i], M_DELETE, 1);
++ mutt_set_flag (ctx, ctx->hdrs[i], M_APPENDED, 1);
+ }
+ else
+ {
+@@ -994,6 +1042,14 @@ int mx_close_mailbox (CONTEXT *ctx, int
+ return 0;
+ }
+
++ /* copy mails to the trash before expunging */
++ if (purge && ctx->deleted)
++ if (trash_append (ctx) != 0)
++ {
++ ctx->closing = 0;
++ return -1;
++ }
++
+ #ifdef USE_IMAP
+ /* allow IMAP to preserve the deleted flag across sessions */
+ if (ctx->magic == M_IMAP)
+@@ -1194,6 +1250,12 @@ int mx_sync_mailbox (CONTEXT *ctx, int *
+ msgcount = ctx->msgcount;
+ deleted = ctx->deleted;
+
++ if (purge && ctx->deleted)
++ {
++ if (trash_append (ctx) == -1)
++ return -1;
++ }
++
+ #ifdef USE_IMAP
+ if (ctx->magic == M_IMAP)
+ rc = imap_sync_mailbox (ctx, purge, index_hint);
+Index: debian-mutt/postpone.c
+===================================================================
+--- debian-mutt.orig/postpone.c 2007-04-12 19:06:45.000000000 +0200
++++ debian-mutt/postpone.c 2007-05-16 23:09:20.000000000 +0200
+@@ -279,6 +279,9 @@ int mutt_get_postponed (CONTEXT *ctx, HE
+ /* finished with this message, so delete it. */
+ mutt_set_flag (PostContext, h, M_DELETE, 1);
+
++ /* and consider it saved, so that it won't be moved to the trash folder */
++ mutt_set_flag (PostContext, h, M_APPENDED, 1);
++
+ /* update the count for the status display */
+ PostCount = PostContext->msgcount - PostContext->deleted;
+
+Index: debian-mutt/PATCHES
+===================================================================
+--- debian-mutt.orig/PATCHES 2007-05-16 23:09:10.000000000 +0200
++++ debian-mutt/PATCHES 2007-05-16 23:09:20.000000000 +0200
+@@ -1,3 +1,4 @@
++patch-1.5.13.cd.trash_folder.3.4
+ patch-1.5.13.nt+ab.xtitles.4
+ patch-1.5.6.dw.maildir-mtime.1
+ patch-1.5.13.cd.ifdef.2
-diff -ur ../MUTT/mutt/PATCHES mutt/PATCHES
---- ../MUTT/mutt/PATCHES 2002-12-09 18:44:54.000000000 +0100
-+++ mutt/PATCHES 2004-01-19 13:50:52.000000000 +0100
-@@ -1,0 +1 @@
-+patch-1.5.5.1.nt.xtitles.3.ab.1
-diff -ur ../MUTT/mutt/curs_main.c mutt/curs_main.c
---- ../MUTT/mutt/curs_main.c 2003-09-03 19:09:09.000000000 +0200
-+++ mutt/curs_main.c 2004-01-19 13:45:37.000000000 +0100
-@@ -103,6 +103,19 @@
- extern const char *ReleaseDate;
+# vi: ft=diff
+This is the xterm title patch as found on the mutt mailing lists.
+
+* Changes made:
+ - 2007-01-27 myon: using %P caused a segfault, updated status.c to catch
+ menu==NULL.
+ - 2007-02-20 myon: make the note about the xterm_set_titles defaults a
+ comment.
+
+== END PATCH
+Index: mutt/PATCHES
+===================================================================
+--- mutt/PATCHES.orig 2007-02-20 16:46:09.943601256 +0100
++++ mutt/PATCHES 2007-02-20 16:46:09.943601256 +0100
+@@ -0,0 +1 @@
++patch-1.5.13.nt+ab.xtitles.4
+Index: mutt/curs_main.c
+===================================================================
+--- mutt.orig/curs_main.c 2006-12-12 14:15:02.000000000 +0100
++++ mutt/curs_main.c 2007-02-20 16:53:27.211126488 +0100
+@@ -110,6 +110,19 @@ static const char *No_visible = N_("No v
+
extern size_t UngetCount;
+#define ASCII_CTRL_G 0x07
+#define ASCII_CTRL_OPEN_SQUARE_BRAKET 0x1b
-+
++
+void set_xterm_title_bar(char *title)
+{
+ fprintf(stderr ,"%c]2;%s%c", ASCII_CTRL_OPEN_SQUARE_BRAKET, title, ASCII_CTRL_G);
void index_make_entry (char *s, size_t l, MUTTMENU *menu, int num)
{
format_flag flag = M_FORMAT_MAKEPRINT | M_FORMAT_ARROWCURSOR | M_FORMAT_INDEX;
-@@ -562,6 +575,13 @@
- mutt_paddstr (COLS, buf);
+@@ -568,6 +581,13 @@ int mutt_index_menu (void)
SETCOLOR (MT_COLOR_NORMAL);
+ BKGDSET (MT_COLOR_NORMAL);
menu->redraw &= ~REDRAW_STATUS;
+ if (option(OPTXTERMSETTITLES))
+ {
}
menu->redraw = 0;
-diff -ur ../MUTT/mutt/globals.h mutt/globals.h
---- ../MUTT/mutt/globals.h 2003-07-15 13:41:32.000000000 +0200
-+++ mutt/globals.h 2004-01-19 13:45:37.000000000 +0100
-@@ -112,6 +112,8 @@
+Index: mutt/globals.h
+===================================================================
+--- mutt.orig/globals.h 2007-01-04 15:23:49.000000000 +0100
++++ mutt/globals.h 2007-01-27 19:33:32.000000000 +0100
+@@ -137,6 +137,8 @@ WHERE char *Tempdir;
WHERE char *Tochars;
WHERE char *Username;
WHERE char *Visual;
+WHERE char *XtermTitle;
+WHERE char *XtermIcon;
+ WHERE char *CurrentFolder;
WHERE char *LastFolder;
-
-diff -ur ../MUTT/mutt/init.c mutt/init.c
---- ../MUTT/mutt/init.c 2004-01-05 19:49:00.000000000 +0100
-+++ mutt/init.c 2004-01-19 13:48:45.000000000 +0100
-@@ -891,6 +891,26 @@
+Index: mutt/init.c
+===================================================================
+--- mutt.orig/init.c 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.c 2007-01-27 19:33:32.000000000 +0100
+@@ -1747,6 +1747,26 @@ static int parse_set (BUFFER *tmp, BUFFE
toggle_option (MuttVars[idx].data);
else
set_option (MuttVars[idx].data);
+
+ }
}
- else if (DTYPE (MuttVars[idx].type) == DT_STR ||
+ else if (myvar || DTYPE (MuttVars[idx].type) == DT_STR ||
DTYPE (MuttVars[idx].type) == DT_PATH ||
-diff -ur ../MUTT/mutt/init.h mutt/init.h
---- ../MUTT/mutt/init.h 2004-01-05 19:49:00.000000000 +0100
-+++ mutt/init.h 2004-01-19 13:45:37.000000000 +0100
-@@ -2670,6 +2670,27 @@
+Index: mutt/init.h
+===================================================================
+--- mutt.orig/init.h 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.h 2007-02-20 16:47:02.718578240 +0100
+@@ -2941,6 +2941,27 @@ struct option_t MuttVars[] = {
** Controls whether mutt writes out the Bcc header when preparing
- ** messages to be sent. Exim users may wish to use this.
+ ** messages to be sent. Exim users may wish to unset this.
*/
+ {"xterm_icon", DT_STR, R_BOTH, UL &XtermIcon, UL "M%?n?AIL&ail?"},
+ /*
+ ** ``$$status_format''.
+ */
+ {"xterm_set_titles", DT_BOOL, R_BOTH, OPTXTERMSETTITLES, 0},
++ /* The default must be off to force in the validity checking. */
+ /*
+ ** .pp
+ ** Controls whether mutt sets the xterm title bar and icon name
-+ ** (as long as you're in an appropriate terminal). The default must
-+ ** be off to force in the validity checking.
++ ** (as long as you are in an appropriate terminal).
+ */
+ {"xterm_title", DT_STR, R_BOTH, UL &XtermTitle, UL "Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"},
+ /*
/*--*/
{ NULL }
};
-diff -ur ../MUTT/mutt/mutt.h mutt/mutt.h
---- ../MUTT/mutt/mutt.h 2004-01-05 19:49:00.000000000 +0100
-+++ mutt/mutt.h 2004-01-19 13:45:37.000000000 +0100
-@@ -424,6 +424,7 @@
+Index: mutt/mutt.h
+===================================================================
+--- mutt.orig/mutt.h 2007-01-04 15:23:49.000000000 +0100
++++ mutt/mutt.h 2007-01-27 19:33:32.000000000 +0100
+@@ -451,6 +451,7 @@ enum
OPTWRAPSEARCH,
OPTWRITEBCC, /* write out a bcc header? */
OPTXMAILER,
+ OPTXTERMSETTITLES,
- /* PGP options */
-
-diff -ur ../MUTT/mutt/pager.c mutt/pager.c
---- ../MUTT/mutt/pager.c 2004-01-05 19:49:00.000000000 +0100
-+++ mutt/pager.c 2004-01-19 13:45:37.000000000 +0100
-@@ -26,6 +26,8 @@
+ OPTCRYPTUSEGPGME,
+
+Index: mutt/pager.c
+===================================================================
+--- mutt.orig/pager.c 2006-12-12 14:15:03.000000000 +0100
++++ mutt/pager.c 2007-01-27 19:33:32.000000000 +0100
+@@ -30,6 +30,8 @@
#include "pager.h"
#include "attach.h"
#include "mbyte.h"
#include "mx.h"
-@@ -1740,6 +1742,13 @@
- SETCOLOR (MT_COLOR_STATUS);
- mutt_paddstr (COLS, buffer);
+@@ -1765,6 +1767,13 @@ mutt_pager (const char *banner, const ch
+ addstr (topline == 0 ? "all)" : "end)");
+ BKGDSET (MT_COLOR_NORMAL);
SETCOLOR (MT_COLOR_NORMAL);
+ if (option(OPTXTERMSETTITLES))
+ {
+ }
}
- redraw = 0;
+ if ((redraw & REDRAW_INDEX) && index)
+Index: mutt/status.c
+===================================================================
+--- mutt.orig/status.c 2007-01-27 19:33:36.000000000 +0100
++++ mutt/status.c 2007-01-27 19:34:11.000000000 +0100
+@@ -191,6 +191,8 @@ status_format_str (char *buf, size_t buf
+ break;
+
+ case 'P':
++ if (!menu)
++ break;
+ if (menu->top + menu->pagelen >= menu->max)
+ cp = menu->top ? "end" : "all";
+ else
+++ /dev/null
-From: brendan <brendan>
-Date: Mon, 19 Jun 2006 18:14:03 +0000 (+0000)
-Subject: From: TAKAHASHI Tamotsu <tamo@momonga-linux.org>
-X-Git-Url: http://dev.mutt.org/cgi-bin/gitweb.cgi?p=mutt/.git;a=commitdiff;h=dc0272b749f0e2b102973b7ac43dbd3908507540
-
- From: TAKAHASHI Tamotsu <tamo@momonga-linux.org>
-
- Fix browse_get_namespace() which could overflow ns[LONG_STRING].
- (Possible remote vulnerability)
----
-
---- a/imap/browse.c
-+++ b/imap/browse.c
-@@ -505,7 +505,7 @@ static int browse_get_namespace (IMAP_DA
- if (*s == '\"')
- {
- s++;
-- while (*s && *s != '\"')
-+ while (*s && *s != '\"' && n < sizeof (ns) - 1)
- {
- if (*s == '\\')
- s++;
-@@ -516,12 +516,14 @@ static int browse_get_namespace (IMAP_DA
- s++;
- }
- else
-- while (*s && !ISSPACE (*s))
-+ while (*s && !ISSPACE (*s) && n < sizeof (ns) - 1)
- {
- ns[n++] = *s;
- s++;
- }
- ns[n] = '\0';
-+ if (n == sizeof (ns) - 1)
-+ dprint (1, (debugfile, "browse_get_namespace: too long: [%s]\n", ns));
- /* delim? */
- s = imap_next_word (s);
- /* delimiter is meaningless if namespace is "". Why does
--- /dev/null
+Index: debian-mutt/Makefile.in
+===================================================================
+--- debian-mutt.orig/Makefile.in 2007-06-14 10:47:56.000000000 +0200
++++ debian-mutt/Makefile.in 2007-06-14 10:51:17.000000000 +0200
+@@ -73,10 +73,10 @@ am__objects_1 = patchlist.$(OBJEXT)
+ am_mutt_OBJECTS = $(am__objects_1) addrbook.$(OBJEXT) alias.$(OBJEXT) \
+ attach.$(OBJEXT) base64.$(OBJEXT) browser.$(OBJEXT) \
+ buffy.$(OBJEXT) color.$(OBJEXT) crypt.$(OBJEXT) \
+- cryptglue.$(OBJEXT) commands.$(OBJEXT) complete.$(OBJEXT) \
+- compose.$(OBJEXT) compress.$(OBJEXT) copy.$(OBJEXT) curs_lib.$(OBJEXT) \
+- curs_main.$(OBJEXT) date.$(OBJEXT) edit.$(OBJEXT) \
+- enter.$(OBJEXT) flags.$(OBJEXT) init.$(OBJEXT) \
++ cryptglue.$(OBJEXT) compress.$(OBJEXT) commands.$(OBJEXT) \
++ complete.$(OBJEXT) compose.$(OBJEXT) copy.$(OBJEXT) \
++ curs_lib.$(OBJEXT) curs_main.$(OBJEXT) date.$(OBJEXT) \
++ edit.$(OBJEXT) enter.$(OBJEXT) flags.$(OBJEXT) init.$(OBJEXT) \
+ filter.$(OBJEXT) from.$(OBJEXT) getdomain.$(OBJEXT) \
+ group.$(OBJEXT) handler.$(OBJEXT) hash.$(OBJEXT) \
+ hdrline.$(OBJEXT) headers.$(OBJEXT) help.$(OBJEXT) \
+Index: debian-mutt/config.h.in
+===================================================================
+--- debian-mutt.orig/config.h.in 2007-06-14 10:47:56.000000000 +0200
++++ debian-mutt/config.h.in 2007-06-14 10:51:11.000000000 +0200
+@@ -513,7 +513,7 @@
+ /* Define to enable Sun mailtool attachments support. */
+ #undef SUN_ATTACHMENT
+
+-/* Define to enable compressed mailboxes support */
++/* Define to support compressed folders. */
+ #undef USE_COMPRESSED
+
+ /* Define to use dotlocking for mailboxes. */
+Index: debian-mutt/configure
+===================================================================
+--- debian-mutt.orig/configure 2007-06-14 10:47:56.000000000 +0200
++++ debian-mutt/configure 2007-06-14 10:51:11.000000000 +0200
+@@ -1367,11 +1367,11 @@ Optional Features:
+ --enable-nfs-fix Work around an NFS with broken attributes caching
+ --enable-mailtool Enable Sun mailtool attachments support
+ --enable-locales-fix The result of isprint() is unreliable
++ --enable-compressed Enable compressed folders support
+ --enable-exact-address Enable regeneration of email addresses
+ --enable-hcache Enable header caching
+ --disable-iconv Disable iconv support
+ --disable-nls Do not use Native Language Support
+- --enable-compressed Enable compressed folders support
+
+ Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+@@ -15106,9 +15106,9 @@ _ACEOF
+ fi
+
+
+-# Check whether --enable-compressed or --disable-compressed was given.
++# Check whether --enable-compressed was given.
+ if test "${enable_compressed+set}" = set; then
+- enableval="$enable_compressed"; if test x$enableval = xyes; then
++ enableval=$enable_compressed; if test x$enableval = xyes; then
+
+ cat >>confdefs.h <<\_ACEOF
+ #define USE_COMPRESSED 1
+@@ -15118,6 +15118,7 @@ _ACEOF
+ fi
+
+
++
+ # Check whether --with-exec-shell was given.
+ if test "${with_exec_shell+set}" = set; then
+ withval=$with_exec_shell; if test $withval != yes; then
--- /dev/null
+Index: contrib/gpg.rc
+===================================================================
+--- contrib/gpg.rc.orig 2007-03-01 23:14:09.076973224 +0100
++++ contrib/gpg.rc 2007-03-01 23:32:04.172533856 +0100
+@@ -72,6 +72,8 @@ set pgp_list_secring_command="/usr/bin/g
+
+ # fetch keys
+ # set pgp_getkeys_command="pkspxycwrap %r"
++# This will work when #172960 will be fixed upstream
++# set pgp_getkeys_command="gpg --recv-keys %r"
+
+ # pattern for good signature - may need to be adapted to locale!
+
--- /dev/null
+Index: debian-mutt/contrib/gpg.rc
+===================================================================
+--- debian-mutt.orig/contrib/gpg.rc 2007-03-20 22:20:31.000000000 +0100
++++ debian-mutt/contrib/gpg.rc 2007-03-20 22:25:55.000000000 +0100
+@@ -49,11 +49,11 @@ set pgp_clearsign_command="gpg --no-verb
+
+ # create a pgp/mime encrypted attachment
+ # set pgp_encrypt_only_command="pgpewrap gpg-2comp -v --batch --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
+-set pgp_encrypt_only_command="pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
++set pgp_encrypt_only_command="/usr/lib/mutt/pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
+
+ # create a pgp/mime encrypted and signed attachment
+ # set pgp_encrypt_sign_command="pgpewrap gpg-2comp %?p?--passphrase-fd 0? -v --batch --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
+-set pgp_encrypt_sign_command="pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
++set pgp_encrypt_sign_command="/usr/lib/mutt/pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
+
+ # import a key into the public key ring
+ set pgp_import_command="gpg --no-verbose --import %f"
--- /dev/null
+# vim:ft=diff:
+This is the chdir patch by Christoph Berg <cb@df7cb.de>.
+
+* Homepage: http://www.df7cb.de/projects/mutt/chdir/
+
+== END PATCH
+Index: mutt/PATCHES
+===================================================================
+--- mutt/PATCHES.orig 2007-02-15 20:46:31.855875008 +0100
++++ mutt/PATCHES 2007-02-15 20:46:31.855875008 +0100
+@@ -0,0 +1 @@
++patch-1.5.13.cb.chdir.1
+Index: mutt/init.c
+===================================================================
+--- mutt.orig/init.c 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.c 2007-02-15 20:46:18.950836872 +0100
+@@ -2214,6 +2214,35 @@ static int parse_source (BUFFER *tmp, BU
+ return (source_rc (path, err));
+ }
+
++static int parse_cd (BUFFER *tmp, BUFFER *s, unsigned long data, BUFFER *err)
++{
++ char path[_POSIX_PATH_MAX];
++
++ if (mutt_extract_token (tmp, s, 0) != 0)
++ {
++ snprintf (err->data, err->dsize, _("cd: error at %s"), s->dptr);
++ return (-1);
++ }
++ if (MoreArgs (s))
++ {
++ strfcpy (err->data, _("cd: too many arguments"), err->dsize);
++ return (-1);
++ }
++ strfcpy (path, tmp->data, sizeof (path));
++ mutt_expand_path (path, sizeof (path));
++ if (!*path) {
++ char *home = getenv("HOME");
++ if (home)
++ strfcpy (path, home, sizeof (path));
++ }
++ if (chdir(path) != 0) {
++ snprintf (err->data, err->dsize, _("cd: %s"), strerror(errno));
++ return (-1);
++ }
++ return (0);
++}
++
++
+ /* line command to execute
+
+ token scratch buffer to be used by parser. caller should free
+Index: mutt/init.h
+===================================================================
+--- mutt.orig/init.h 2006-12-12 14:15:03.000000000 +0100
++++ mutt/init.h 2007-02-15 20:46:18.951836720 +0100
+@@ -3020,6 +3020,7 @@ static int parse_unalias (BUFFER *, BUFF
+ static int parse_ignore (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_unignore (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_source (BUFFER *, BUFFER *, unsigned long, BUFFER *);
++static int parse_cd (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_set (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_my_hdr (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+ static int parse_unmy_hdr (BUFFER *, BUFFER *, unsigned long, BUFFER *);
+@@ -3056,6 +3057,7 @@ struct command_t Commands[] = {
+ { "auto_view", parse_list, UL &AutoViewList },
+ { "alternative_order", parse_list, UL &AlternativeOrderList},
+ { "bind", mutt_parse_bind, 0 },
++ { "cd", parse_cd, 0 },
+ { "charset-hook", mutt_parse_hook, M_CHARSETHOOK },
+ #ifdef HAVE_COLOR
+ { "color", mutt_parse_color, 0 },
+Index: mutt/doc/manual.xml.head
+===================================================================
+--- mutt.orig/doc/manual.xml.head 2007-02-15 20:51:41.226843472 +0100
++++ mutt/doc/manual.xml.head 2007-02-15 20:51:45.303223768 +0100
+@@ -1701,6 +1701,25 @@ sequence.
+
+ </sect1>
+
++<sect1 id="cd">
++<title>Changing the current working directory</title>
++
++<para>
++<literallayout>
++Usage: <literal>cd</literal> <emphasis>directory</emphasis>
++</literallayout>
++</para>
++
++<para>
++The <literal>cd</literal> command changes Mutt's current working directory.
++This affects commands and functions like <literal>source</literal>,
++<literal>change-folder</literal>, and <literal>save-entry</literal> that use
++relative paths. Using <literal>cd</literal> without directory changes to your
++home directory.
++</para>
++
++</sect1>
++
+ <sect1 id="charset-hook">
+ <title>Defining aliases for character sets </title>
+
--- /dev/null
+# vim:ft=diff:
+This is the indexcolor patch by Christian Aichinger <Greek0@gmx.net>.
+
+This patch enables different colorings for different parts of the index
+display. For example you can choose one color for the subject, another one for
+the author, and a third one for the flags.
+
+* Patch last synced with upstream:
+ - Date: 2007-02-15
+ - File: http://greek0.net/mutt.html
+ http://greek0.net/patches/mutt-1.5.12-indexcolor-3+cb.diff
+
+* Changes made:
+ - Repatch for 1.5.13.
+ - Remove trailing whitespace.
+
+== END PATCH
+Index: mutt/color.c
+===================================================================
+--- mutt.orig/color.c 2007-02-15 21:26:09.140472816 +0100
++++ mutt/color.c 2007-02-15 21:26:47.860586464 +0100
+@@ -35,6 +35,8 @@ int ColorDefs[MT_COLOR_MAX];
+ COLOR_LINE *ColorHdrList = NULL;
+ COLOR_LINE *ColorBodyList = NULL;
+ COLOR_LINE *ColorIndexList = NULL;
++COLOR_LINE *ColorIndexSubjectList = NULL;
++COLOR_LINE *ColorIndexAuthorList = NULL;
+
+ /* local to this file */
+ static int ColorQuoteSize;
+@@ -93,6 +95,14 @@ static struct mapping_t Fields[] =
+ { "bold", MT_COLOR_BOLD },
+ { "underline", MT_COLOR_UNDERLINE },
+ { "index", MT_COLOR_INDEX },
++ { "index_subject", MT_COLOR_INDEX_SUBJECT },
++ { "index_author", MT_COLOR_INDEX_AUTHOR },
++ { "index_collapsed", MT_COLOR_INDEX_COLLAPSED },
++ { "index_date", MT_COLOR_INDEX_DATE },
++ { "index_flags", MT_COLOR_INDEX_FLAGS },
++ { "index_label", MT_COLOR_INDEX_LABEL },
++ { "index_number", MT_COLOR_INDEX_NUMBER },
++ { "index_size", MT_COLOR_INDEX_SIZE },
+ { NULL, 0 }
+ };
+
+@@ -364,12 +374,55 @@ int mutt_parse_unmono (BUFFER *buf, BUFF
+ return _mutt_parse_uncolor(buf, s, data, err, 0);
+ }
+
++static void
++mutt_do_uncolor (BUFFER *buf, BUFFER *s, COLOR_LINE **ColorList,
++ int *do_cache, int parse_uncolor)
++{
++ COLOR_LINE *tmp, *last = NULL;
++
++ do
++ {
++ mutt_extract_token (buf, s, 0);
++ if (!mutt_strcmp ("*", buf->data))
++ {
++ for (tmp = *ColorList; tmp; )
++ {
++ if (!*do_cache)
++ *do_cache = 1;
++ last = tmp;
++ tmp = tmp->next;
++ mutt_free_color_line(&last, parse_uncolor);
++ }
++ *ColorList = NULL;
++ }
++ else
++ {
++ for (last = NULL, tmp = *ColorList; tmp; last = tmp, tmp = tmp->next)
++ {
++ if (!mutt_strcmp (buf->data, tmp->pattern))
++ {
++ if (!*do_cache)
++ *do_cache = 1;
++ dprint(1,(debugfile,"Freeing pattern \"%s\" from ColorList\n",
++ tmp->pattern));
++ if (last)
++ last->next = tmp->next;
++ else
++ *ColorList = tmp->next;
++ mutt_free_color_line(&tmp, parse_uncolor);
++ break;
++ }
++ }
++ }
++ }
++ while (MoreArgs (s));
++}
++
+ static int
+ _mutt_parse_uncolor (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err,
+ short parse_uncolor)
+ {
+ int object = 0, do_cache = 0;
+- COLOR_LINE *tmp, *last = NULL;
+
+ mutt_extract_token (buf, s, 0);
+
+@@ -379,6 +432,13 @@ _mutt_parse_uncolor (BUFFER *buf, BUFFER
+ return (-1);
+ }
+
++ if (object > MT_COLOR_INDEX_AUTHOR) /* uncolor index column */
++ {
++ ColorDefs[object] = 0;
++ set_option (OPTFORCEREDRAWINDEX);
++ return (0);
++ }
++
+ if (mutt_strncmp (buf->data, "index", 5) != 0)
+ {
+ snprintf (err->data, err->dsize,
+@@ -416,44 +476,12 @@ _mutt_parse_uncolor (BUFFER *buf, BUFFER
+ return 0;
+ }
+
+-
+- do
+- {
+- mutt_extract_token (buf, s, 0);
+- if (!mutt_strcmp ("*", buf->data))
+- {
+- for (tmp = ColorIndexList; tmp; )
+- {
+- if (!do_cache)
+- do_cache = 1;
+- last = tmp;
+- tmp = tmp->next;
+- mutt_free_color_line(&last, parse_uncolor);
+- }
+- ColorIndexList = NULL;
+- }
+- else
+- {
+- for (last = NULL, tmp = ColorIndexList; tmp; last = tmp, tmp = tmp->next)
+- {
+- if (!mutt_strcmp (buf->data, tmp->pattern))
+- {
+- if (!do_cache)
+- do_cache = 1;
+- dprint(1,(debugfile,"Freeing pattern \"%s\" from ColorIndexList\n",
+- tmp->pattern));
+- if (last)
+- last->next = tmp->next;
+- else
+- ColorIndexList = tmp->next;
+- mutt_free_color_line(&tmp, parse_uncolor);
+- break;
+- }
+- }
+- }
+- }
+- while (MoreArgs (s));
+-
++ if (object == MT_COLOR_INDEX)
++ mutt_do_uncolor(buf, s, &ColorIndexList, &do_cache, parse_uncolor);
++ if (object == MT_COLOR_INDEX_SUBJECT)
++ mutt_do_uncolor(buf, s, &ColorIndexSubjectList, &do_cache, parse_uncolor);
++ if (object == MT_COLOR_INDEX_AUTHOR)
++ mutt_do_uncolor(buf, s, &ColorIndexAuthorList, &do_cache, parse_uncolor);
+
+ if (do_cache && !option (OPTNOCURSES))
+ {
+@@ -693,7 +721,7 @@ _mutt_parse_color (BUFFER *buf, BUFFER *
+
+ /* extract a regular expression if needed */
+
+- if (object == MT_COLOR_HEADER || object == MT_COLOR_BODY || object == MT_COLOR_INDEX)
++ if (object == MT_COLOR_HEADER || object == MT_COLOR_BODY || object == MT_COLOR_INDEX || object == MT_COLOR_INDEX_SUBJECT || object == MT_COLOR_INDEX_AUTHOR)
+ {
+ if (!MoreArgs (s))
+ {
+@@ -737,6 +765,18 @@ _mutt_parse_color (BUFFER *buf, BUFFER *
+ r = add_pattern (&ColorIndexList, buf->data, 1, fg, bg, attr, err, 1);
+ set_option (OPTFORCEREDRAWINDEX);
+ }
++ else if (object == MT_COLOR_INDEX_SUBJECT)
++ {
++ r = add_pattern (&ColorIndexSubjectList, buf->data,
++ 1, fg, bg, attr, err, 1);
++ set_option (OPTFORCEREDRAWINDEX);
++ }
++ else if (object == MT_COLOR_INDEX_AUTHOR)
++ {
++ r = add_pattern (&ColorIndexAuthorList, buf->data,
++ 1, fg, bg, attr, err, 1);
++ set_option (OPTFORCEREDRAWINDEX);
++ }
+ else if (object == MT_COLOR_QUOTED)
+ {
+ if (q_level >= ColorQuoteSize)
+@@ -762,7 +802,11 @@ _mutt_parse_color (BUFFER *buf, BUFFER *
+ ColorQuote[q_level] = fgbgattr_to_color(fg, bg, attr);
+ }
+ else
++ {
+ ColorDefs[object] = fgbgattr_to_color(fg, bg, attr);
++ if (object > MT_COLOR_INDEX_AUTHOR)
++ set_option (OPTFORCEREDRAWINDEX);
++ }
+
+ #ifdef HAVE_COLOR
+ # ifdef HAVE_BKGDSET
+Index: mutt/curs_lib.c
+===================================================================
+--- mutt.orig/curs_lib.c 2007-02-15 21:26:09.183466280 +0100
++++ mutt/curs_lib.c 2007-02-15 21:26:15.898445448 +0100
+@@ -648,6 +648,7 @@ void mutt_format_string (char *dest, siz
+ size_t k, k2;
+ char scratch[MB_LEN_MAX];
+ mbstate_t mbstate1, mbstate2;
++ int escaped = 0;
+
+ memset(&mbstate1, 0, sizeof (mbstate1));
+ memset(&mbstate2, 0, sizeof (mbstate2));
+@@ -663,7 +664,15 @@ void mutt_format_string (char *dest, siz
+ k = (k == (size_t)(-1)) ? 1 : n;
+ wc = replacement_char ();
+ }
+- if (arboreal && wc < M_TREE_MAX)
++ if (escaped) {
++ escaped = 0;
++ w = 0;
++ }
++ else if (arboreal && wc == M_SPECIAL_INDEX) {
++ escaped = 1;
++ w = 0;
++ }
++ else if (arboreal && wc < M_TREE_MAX)
+ w = 1; /* hack */
+ else
+ {
+Index: mutt/hdrline.c
+===================================================================
+--- mutt.orig/hdrline.c 2007-02-15 21:26:09.226459744 +0100
++++ mutt/hdrline.c 2007-02-15 21:26:15.899445296 +0100
+@@ -99,6 +99,34 @@ static int first_mailing_list (char *buf
+ return 0;
+ }
+
++/* Takes the color to embed, the buffer to manipulate and the buffer length as
++ * arguments.
++ * Returns the number of chars written. */
++static size_t add_index_color(char *buf, size_t buflen,
++ format_flag flags, char color)
++{
++ int len;
++
++ /* only add color markers if we are operating on main index entries. */
++ if (!(flags & M_FORMAT_INDEX))
++ return 0;
++
++ if (color == MT_COLOR_INDEX) { /* buf might be uninitialized other cases */
++ len = mutt_strlen(buf);
++ buf += len;
++ buflen -= len;
++ }
++
++ if (buflen < 2)
++ return 0;
++
++ buf[0] = M_SPECIAL_INDEX;
++ buf[1] = color;
++ buf[2] = '\0';
++
++ return 2;
++}
++
+ static void make_from (ENVELOPE *hdr, char *buf, size_t len, int do_lists)
+ {
+ int me;
+@@ -251,6 +279,7 @@ hdr_format_str (char *dest,
+ #define THREAD_NEW (threads && hdr->collapsed && hdr->num_hidden > 1 && mutt_thread_contains_unread (ctx, hdr) == 1)
+ #define THREAD_OLD (threads && hdr->collapsed && hdr->num_hidden > 1 && mutt_thread_contains_unread (ctx, hdr) == 2)
+ size_t len;
++ size_t colorlen;
+
+ hdr = hfi->hdr;
+ ctx = hfi->ctx;
+@@ -302,12 +331,17 @@ hdr_format_str (char *dest,
+ break;
+
+ case 'c':
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_SIZE);
+ mutt_pretty_size (buf2, sizeof (buf2), (long) hdr->content->length);
+- mutt_format_s (dest, destlen, prefix, buf2);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, buf2);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ break;
+
+ case 'C':
+- snprintf (fmt, sizeof (fmt), "%%%sd", prefix);
++ colorlen = add_index_color(fmt, sizeof(fmt), flags, MT_COLOR_INDEX_NUMBER);
++ snprintf (fmt+colorlen, sizeof(fmt)-colorlen, "%%%sd", prefix);
++ add_index_color(fmt+colorlen, sizeof(fmt)-colorlen, flags, MT_COLOR_INDEX);
++
+ snprintf (dest, destlen, fmt, hdr->msgno + 1);
+ break;
+
+@@ -406,7 +440,10 @@ hdr_format_str (char *dest,
+ if (do_locales)
+ setlocale (LC_TIME, "C");
+
+- mutt_format_s (dest, destlen, prefix, buf2);
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_DATE);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, buf2);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
++
+ if (len > 0 && op != 'd' && op != 'D') /* Skip ending op */
+ src = cp + 1;
+ }
+@@ -436,8 +473,10 @@ hdr_format_str (char *dest,
+ case 'F':
+ if (!optional)
+ {
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_AUTHOR);
+ make_from (hdr->env, buf2, sizeof (buf2), 0);
+- mutt_format_s (dest, destlen, prefix, buf2);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, buf2);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ }
+ else if (mutt_addr_is_user (hdr->env->from))
+ optional = 0;
+@@ -463,7 +502,9 @@ hdr_format_str (char *dest,
+ if (!optional)
+ {
+ snprintf (fmt, sizeof (fmt), "%%%sd", prefix);
+- snprintf (dest, destlen, fmt, (int) hdr->lines);
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_SIZE);
++ snprintf (dest+colorlen, destlen-colorlen, fmt, (int) hdr->lines);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ }
+ else if (hdr->lines <= 0)
+ optional = 0;
+@@ -472,8 +513,10 @@ hdr_format_str (char *dest,
+ case 'L':
+ if (!optional)
+ {
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_AUTHOR);
+ make_from (hdr->env, buf2, sizeof (buf2), 1);
+- mutt_format_s (dest, destlen, prefix, buf2);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, buf2);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ }
+ else if (!check_for_mailing_list (hdr->env->to, NULL, NULL, 0) &&
+ !check_for_mailing_list (hdr->env->cc, NULL, NULL, 0))
+@@ -528,10 +571,16 @@ hdr_format_str (char *dest,
+ snprintf (fmt, sizeof (fmt), "%%%sd", prefix);
+ if (!optional)
+ {
+- if (threads && is_index && hdr->collapsed && hdr->num_hidden > 1)
+- snprintf (dest, destlen, fmt, hdr->num_hidden);
+- else if (is_index && threads)
+- mutt_format_s (dest, destlen, prefix, " ");
++ colorlen = add_index_color(dest, destlen, flags,
++ MT_COLOR_INDEX_COLLAPSED);
++ if (threads && is_index && hdr->collapsed && hdr->num_hidden > 1) {
++ snprintf (dest+colorlen, destlen-colorlen, fmt, hdr->num_hidden);
++ add_index_color(dest, destlen-colorlen, flags, MT_COLOR_INDEX);
++ }
++ else if (is_index && threads) {
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, " ");
++ add_index_color(dest, destlen-colorlen, flags, MT_COLOR_INDEX);
++ }
+ else
+ *dest = '\0';
+ }
+@@ -548,15 +597,23 @@ hdr_format_str (char *dest,
+ {
+ if (flags & M_FORMAT_FORCESUBJ)
+ {
+- mutt_format_s (dest, destlen, "", NONULL (hdr->env->subject));
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_SUBJECT);
++ mutt_format_s (dest+colorlen, destlen-colorlen, "",
++ NONULL (hdr->env->subject));
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
++
+ snprintf (buf2, sizeof (buf2), "%s%s", hdr->tree, dest);
+ mutt_format_s_tree (dest, destlen, prefix, buf2);
+ }
+ else
+ mutt_format_s_tree (dest, destlen, prefix, hdr->tree);
+ }
+- else
+- mutt_format_s (dest, destlen, prefix, NONULL (hdr->env->subject));
++ else {
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_SUBJECT);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix,
++ NONULL (hdr->env->subject));
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
++ }
+ break;
+
+ case 'S':
+@@ -652,7 +709,9 @@ hdr_format_str (char *dest,
+ hdr->tagged ? '*' :
+ (hdr->flagged ? '!' :
+ (Tochars && ((i = mutt_user_is_recipient (hdr)) < mutt_strlen (Tochars)) ? Tochars[i] : ' ')));
+- mutt_format_s (dest, destlen, prefix, buf2);
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_FLAGS);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, buf2);
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ break;
+
+ case 'X':
+@@ -672,7 +731,9 @@ hdr_format_str (char *dest,
+ if (optional)
+ optional = hdr->env->x_label ? 1 : 0;
+
+- mutt_format_s (dest, destlen, prefix, NONULL (hdr->env->x_label));
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_LABEL);
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, NONULL (hdr->env->x_label));
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+ break;
+
+ case 'Y':
+@@ -698,10 +759,12 @@ hdr_format_str (char *dest,
+ if (optional)
+ optional = i;
+
++ colorlen = add_index_color(dest, destlen, flags, MT_COLOR_INDEX_LABEL);
+ if (i)
+- mutt_format_s (dest, destlen, prefix, NONULL (hdr->env->x_label));
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, NONULL (hdr->env->x_label));
+ else
+- mutt_format_s (dest, destlen, prefix, "");
++ mutt_format_s (dest+colorlen, destlen-colorlen, prefix, "");
++ add_index_color(dest+colorlen, destlen-colorlen, flags, MT_COLOR_INDEX);
+
+ break;
+
+Index: mutt/menu.c
+===================================================================
+--- mutt.orig/menu.c 2007-02-15 21:26:09.270453056 +0100
++++ mutt/menu.c 2007-02-15 21:26:15.900445144 +0100
+@@ -36,7 +36,30 @@ extern int Charset_is_utf8; /* FIXME: ba
+
+ extern size_t UngetCount;
+
+-static void print_enriched_string (int attr, unsigned char *s, int do_color)
++static int get_color(int index, int type) {
++ COLOR_LINE *color;
++ HEADER *hdr = Context->hdrs[index];
++
++ switch (type) {
++ case MT_COLOR_INDEX_SUBJECT:
++ color = ColorIndexSubjectList;
++ break;
++ case MT_COLOR_INDEX_AUTHOR:
++ color = ColorIndexAuthorList;
++ break;
++ default:
++ return ColorDefs[type];
++ }
++
++ for (; color; color = color->next)
++ if (mutt_pattern_exec (color->color_pattern, M_MATCH_FULL_ADDRESS,
++ Context, hdr))
++ return color->pair;
++
++ return 0;
++}
++
++static void print_enriched_string (int index, int attr, unsigned char *s, int do_color)
+ {
+ wchar_t wc;
+ size_t k;
+@@ -133,6 +156,18 @@ static void print_enriched_string (int a
+ }
+ if (do_color) attrset(attr);
+ }
++ else if(*s == M_SPECIAL_INDEX)
++ {
++ s++;
++ if (do_color) {
++ if (*s == MT_COLOR_INDEX)
++ attrset(attr);
++ else
++ attron(get_color(index, *s));
++ }
++ s++;
++ n -= 2;
++ }
+ else if ((k = mbrtowc (&wc, (char *)s, n, &mbstate)) > 0)
+ {
+ addnstr ((char *)s, k);
+@@ -235,7 +270,7 @@ void menu_redraw_index (MUTTMENU *menu)
+ addstr (" ");
+ }
+
+- print_enriched_string (menu->color(i), (unsigned char *) buf, 1);
++ print_enriched_string (i, menu->color(i), (unsigned char *) buf, 1);
+ SETCOLOR (MT_COLOR_NORMAL);
+ }
+ else
+@@ -249,7 +284,7 @@ void menu_redraw_index (MUTTMENU *menu)
+ }
+
+ CLEARLINE (i - menu->top + menu->offset);
+- print_enriched_string (menu->color(i), (unsigned char *) buf, i != menu->current);
++ print_enriched_string (i, menu->color(i), (unsigned char *) buf, i != menu->current);
+ SETCOLOR (MT_COLOR_NORMAL);
+ BKGDSET (MT_COLOR_NORMAL);
+ }
+@@ -286,7 +321,7 @@ void menu_redraw_motion (MUTTMENU *menu)
+ menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent);
+ menu_pad_string (buf, sizeof (buf));
+ move (menu->oldcurrent + menu->offset - menu->top, 3);
+- print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1);
++ print_enriched_string (menu->oldcurrent, menu->color(menu->oldcurrent), (unsigned char *) buf, 1);
+ SETCOLOR (MT_COLOR_NORMAL);
+ }
+
+@@ -304,7 +339,7 @@ void menu_redraw_motion (MUTTMENU *menu)
+ clrtoeol ();
+ menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent);
+ menu_pad_string (buf, sizeof (buf));
+- print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1);
++ print_enriched_string (menu->oldcurrent, menu->color(menu->oldcurrent), (unsigned char *) buf, 1);
+
+ /* now draw the new one to reflect the change */
+ menu_make_entry (buf, sizeof (buf), menu, menu->current);
+@@ -313,7 +348,7 @@ void menu_redraw_motion (MUTTMENU *menu)
+ ADDCOLOR (MT_COLOR_INDICATOR);
+ BKGDSET (MT_COLOR_INDICATOR);
+ CLEARLINE (menu->current - menu->top + menu->offset);
+- print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0);
++ print_enriched_string (menu->current, menu->color(menu->current), (unsigned char *) buf, 0);
+ SETCOLOR (MT_COLOR_NORMAL);
+ BKGDSET (MT_COLOR_NORMAL);
+ }
+@@ -339,7 +374,7 @@ void menu_redraw_current (MUTTMENU *menu
+ attrset (attr);
+ addch (' ');
+ menu_pad_string (buf, sizeof (buf));
+- print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 1);
++ print_enriched_string (menu->current, menu->color(menu->current), (unsigned char *) buf, 1);
+ SETCOLOR (MT_COLOR_NORMAL);
+ }
+ else
+@@ -348,7 +383,7 @@ void menu_redraw_current (MUTTMENU *menu
+ ADDCOLOR (MT_COLOR_INDICATOR);
+ BKGDSET (MT_COLOR_INDICATOR);
+ clrtoeol ();
+- print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0);
++ print_enriched_string (menu->current, menu->color(menu->current), (unsigned char *) buf, 0);
+ SETCOLOR (MT_COLOR_NORMAL);
+ BKGDSET (MT_COLOR_NORMAL);
+ }
+Index: mutt/mutt_curses.h
+===================================================================
+--- mutt.orig/mutt_curses.h 2007-02-15 21:26:09.314446368 +0100
++++ mutt/mutt_curses.h 2007-02-15 21:26:15.900445144 +0100
+@@ -126,6 +126,16 @@ enum
+ MT_COLOR_BOLD,
+ MT_COLOR_UNDERLINE,
+ MT_COLOR_INDEX,
++ /* please no non-MT_COLOR_INDEX objects after this point */
++ MT_COLOR_INDEX_SUBJECT,
++ MT_COLOR_INDEX_AUTHOR,
++ /* below only index coloring stuff that doesn't have a colorline! */
++ MT_COLOR_INDEX_COLLAPSED,
++ MT_COLOR_INDEX_DATE,
++ MT_COLOR_INDEX_FLAGS,
++ MT_COLOR_INDEX_LABEL,
++ MT_COLOR_INDEX_NUMBER,
++ MT_COLOR_INDEX_SIZE,
+ MT_COLOR_MAX
+ };
+
+@@ -165,6 +175,8 @@ extern int ColorDefs[];
+ extern COLOR_LINE *ColorHdrList;
+ extern COLOR_LINE *ColorBodyList;
+ extern COLOR_LINE *ColorIndexList;
++extern COLOR_LINE *ColorIndexSubjectList;
++extern COLOR_LINE *ColorIndexAuthorList;
+
+ void ci_init_color (void);
+ void ci_start_color (void);
+Index: mutt/mutt.h
+===================================================================
+--- mutt.orig/mutt.h 2007-02-15 21:26:09.358439680 +0100
++++ mutt/mutt.h 2007-02-15 21:26:15.901444992 +0100
+@@ -176,6 +176,8 @@ typedef enum
+ #define M_TREE_MISSING 13
+ #define M_TREE_MAX 14
+
++#define M_SPECIAL_INDEX M_TREE_MAX
++
+ #define M_THREAD_COLLAPSE (1<<0)
+ #define M_THREAD_UNCOLLAPSE (1<<1)
+ #define M_THREAD_GET_HIDDEN (1<<2)
+Index: mutt/PATCHES
+===================================================================
+--- mutt/PATCHES.orig 2007-02-15 21:26:15.901444992 +0100
++++ mutt/PATCHES 2007-02-15 21:26:15.901444992 +0100
+@@ -0,0 +1 @@
++patch-1.5.13.greek0.indexcolor-3+cb
+Index: mutt/doc/manual.xml.head
+===================================================================
+--- mutt.orig/doc/manual.xml.head 2007-02-15 21:26:09.446426304 +0100
++++ mutt/doc/manual.xml.head 2007-02-15 21:26:15.903444688 +0100
+@@ -1837,8 +1837,8 @@ silently truncated at the screen width,
+ <para>
+ <literallayout>
+ Usage: <literal>color</literal> <emphasis>object</emphasis> <emphasis>foreground</emphasis> <emphasis>background</emphasis> [ <emphasis>regexp</emphasis> ]
+-Usage: <literal>color</literal> index <emphasis>foreground</emphasis> <emphasis>background</emphasis> <emphasis>pattern</emphasis>
+-Usage: <literal>uncolor</literal> index <emphasis>pattern</emphasis> [ <emphasis>pattern</emphasis> ... ]
++Usage: <literal>color</literal> <emphasis>index-object</emphasis> <emphasis>foreground</emphasis> <emphasis>background</emphasis> <emphasis>pattern</emphasis>
++ Usage: <literal>uncolor</literal> <emphasis>index-object</emphasis> <emphasis>pattern</emphasis> [ <emphasis>pattern</emphasis> ... ]
+ </literallayout>
+ </para>
+
+@@ -1901,6 +1901,54 @@ index (match <emphasis>pattern</emphasis
+ <listitem>
+
+ <para>
++index_author (color of the author name in the index, uses <emphasis>pattern</emphasis>)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_collapsed (the number of messages in a collapsed thread in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_date (color of the date field in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_flags (color of the message flags in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_label (color of the message label in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_number (color of the message number in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_size (color of the message size and line number in the index)
++</para>
++</listitem>
++<listitem>
++
++<para>
++index_subject (color of the subject in the index, uses <emphasis>pattern</emphasis>)
++</para>
++</listitem>
++<listitem>
++
++<para>
+ indicator (arrow or bar used to indicate the current item in a menu)
+ </para>
+ </listitem>
--- /dev/null
+# vim:ft=diff:
+This is the xface (w3mface) patch by TAKAHASHI Tamotsu
+<ttakah@lapis.plala.or.jp>.
+
+Needs w3m-img, compface, and netpbm installed.
+
+* Homepage: http://www.df7cb.de/projects/mutt/x-face/
+
+* Changes made:
+ - Remove LIBEXECDIR definition to avoid needing rerunning automake,
+ hardcode /usr/lib/w3m/w3mimgdisplay.
+
+== END PATCH
+Index: xface/PATCHES
+===================================================================
+--- xface/PATCHES.orig 2007-02-15 20:29:41.458478760 +0100
++++ xface/PATCHES 2007-02-15 20:29:41.458478760 +0100
+@@ -0,0 +1 @@
++patch-1.5.13.tamo.w3mface.2
+Index: xface/globals.h
+===================================================================
+--- xface.orig/globals.h 2007-02-15 20:28:46.961763520 +0100
++++ xface/globals.h 2007-02-15 20:28:56.069378952 +0100
+@@ -146,6 +146,11 @@ WHERE const char *ReleaseDate;
+
+ WHERE HASH *Groups;
+
++WHERE char *UncompFace;
++WHERE char *IconToPbm;
++WHERE char *W3mImgDisplay;
++WHERE char *W3mOpt;
++
+ WHERE LIST *AutoViewList INITVAL(0);
+ WHERE LIST *AlternativeOrderList INITVAL(0);
+ WHERE LIST *AttachAllow INITVAL(0);
+Index: xface/hcache.c
+===================================================================
+--- xface.orig/hcache.c 2007-02-15 20:28:46.968762456 +0100
++++ xface/hcache.c 2007-02-15 20:28:56.069378952 +0100
+@@ -401,6 +401,7 @@ dump_envelope(ENVELOPE * e, unsigned cha
+ d = dump_char(e->message_id, d, off);
+ d = dump_char(e->supersedes, d, off);
+ d = dump_char(e->date, d, off);
++ d = dump_char(e->x_face, d, off);
+ d = dump_char(e->x_label, d, off);
+
+ d = dump_buffer(e->spam, d, off);
+@@ -438,6 +439,7 @@ restore_envelope(ENVELOPE * e, const uns
+ restore_char(&e->message_id, d, off);
+ restore_char(&e->supersedes, d, off);
+ restore_char(&e->date, d, off);
++ restore_char(&e->x_face, d, off);
+ restore_char(&e->x_label, d, off);
+
+ restore_buffer(&e->spam, d, off);
+Index: xface/init.h
+===================================================================
+--- xface.orig/init.h 2007-02-15 20:28:46.976761240 +0100
++++ xface/init.h 2007-02-15 20:29:15.382442920 +0100
+@@ -2941,6 +2941,31 @@ struct option_t MuttVars[] = {
+ ** Controls whether mutt writes out the Bcc header when preparing
+ ** messages to be sent. Exim users may wish to unset this.
+ */
++ { "xface", DT_BOOL, R_NONE, OPTXFACE, 0 },
++ /*
++ ** .pp
++ ** Controls whether mutt displays X-Faces.
++ */
++ { "xface_icontopbm", DT_PATH, R_NONE, UL &IconToPbm, UL "icontopbm" },
++ /*
++ ** .pp
++ ** Specify the path to ``icontopbm'' program.
++ */
++ { "xface_uncompface", DT_PATH, R_NONE, UL &UncompFace, UL "uncompface" },
++ /*
++ ** .pp
++ ** Specify the path to ``uncompface'' program.
++ */
++ { "xface_w3mimgdisplay",DT_PATH, R_NONE, UL &W3mImgDisplay, UL "/usr/lib/w3m/w3mimgdisplay" },
++ /*
++ ** .pp
++ ** Specify the path to ``w3mimgdisplay'' program.
++ */
++ { "xface_w3mimgdisplay_options",DT_STR, R_NONE, UL &W3mOpt, UL "-x 5 -y 5" },
++ /*
++ ** .pp
++ ** Specify options for ``w3mimgdisplay'' program.
++ */
+ /*--*/
+ { NULL }
+ };
+Index: xface/mutt.h
+===================================================================
+--- xface.orig/mutt.h 2007-02-15 20:28:46.983760176 +0100
++++ xface/mutt.h 2007-02-15 20:28:56.071378648 +0100
+@@ -450,6 +450,7 @@ enum
+ OPTWRAP,
+ OPTWRAPSEARCH,
+ OPTWRITEBCC, /* write out a bcc header? */
++ OPTXFACE,
+ OPTXMAILER,
+
+ OPTCRYPTUSEGPGME,
+@@ -587,6 +588,7 @@ typedef struct envelope
+ char *message_id;
+ char *supersedes;
+ char *date;
++ char *x_face; /* X-Face header content */
+ char *x_label;
+ BUFFER *spam;
+ LIST *references; /* message references (in reverse order) */
+Index: xface/muttlib.c
+===================================================================
+--- xface.orig/muttlib.c 2007-02-15 20:28:46.991758960 +0100
++++ xface/muttlib.c 2007-02-15 20:28:56.072378496 +0100
+@@ -670,6 +670,7 @@ void mutt_free_envelope (ENVELOPE **p)
+ FREE (&(*p)->message_id);
+ FREE (&(*p)->supersedes);
+ FREE (&(*p)->date);
++ FREE (&(*p)->x_face);
+ FREE (&(*p)->x_label);
+
+ mutt_buffer_free (&(*p)->spam);
+Index: xface/pager.c
+===================================================================
+--- xface.orig/pager.c 2007-02-15 20:28:47.000757592 +0100
++++ xface/pager.c 2007-02-15 20:28:56.072378496 +0100
+@@ -1479,6 +1479,89 @@ upNLines (int nlines, struct line_t *inf
+ return cur;
+ }
+
++static int
++display_xface (HEADER *hdr)
++{
++ char facefile[_POSIX_PATH_MAX + 1];
++ char command[LONG_STRING];
++ char *facedata;
++ FILE *fpin = NULL, *fpout = NULL;
++ pid_t pid;
++
++ /* everything ready? */
++ if (!UncompFace || !(*UncompFace) ||
++ !IconToPbm || !(*IconToPbm) ||
++ !W3mImgDisplay || !(*W3mImgDisplay) ||
++ !hdr || !hdr->env || !hdr->env->x_face)
++ return 0;
++
++ /* test w3mimgdisplay */
++ snprintf (command, sizeof (command), "%s -test >/dev/null", W3mImgDisplay);
++ if (mutt_system (command) == -1)
++ return 0;
++
++ /* prepare facedata */
++ facedata = hdr->env->x_face;
++
++ /* convert facedata to imagedata
++ * and store imagedata in facefile
++ */
++ mutt_mktemp (facefile);
++ if ((fpout = safe_fopen (facefile, "w")) == NULL)
++ {
++ mutt_error (_("Could not create temporary file!"));
++ return 0;
++ }
++ snprintf (command, sizeof (command),
++ "( echo '/* Width=48, Height=48 */'; %s ) | %s",
++ UncompFace, IconToPbm);
++ pid = mutt_create_filter_fd
++ (command, &fpin, NULL, NULL, -1, fileno (fpout), -1);
++ if (pid < 0)
++ {
++ mutt_perror (_("face filter"));
++ safe_fclose (&fpout);
++ mutt_unlink (facefile);
++ return 0;
++ }
++ /* pass facedata to converters */
++ fputs (facedata, fpin);
++ if (safe_fclose (&fpin) != 0 && errno != EPIPE)
++ {
++ if (fpout != NULL)
++ {
++ mutt_wait_filter (pid);
++ safe_fclose (&fpout);
++ }
++ mutt_unlink (facefile);
++ return 0;
++ }
++ if (fpout != NULL)
++ mutt_wait_filter (pid);
++ safe_fclose (&fpout);
++
++ /*
++ * w3mimgdisplay
++ */
++ snprintf (command, sizeof (command),
++ "%s %s", W3mImgDisplay, NONULL (W3mOpt));
++ pid = mutt_create_filter_fd
++ (command, &fpin, NULL, NULL, -1, -1, -1);
++ if (pid < 0)
++ {
++ mutt_perror ("w3mdisp");
++ mutt_unlink (facefile);
++ return 0;
++ }
++ /* pass facefile to w3mimgdisplay */
++ fprintf (fpin, "2;3;\n0;1;0;0;48;48;0;0;48;48;%s\n4;\n3;\n", facefile);
++ if (safe_fclose (&fpin) != 0 && errno != EPIPE)
++ mutt_perror ("w3mdisp");
++ mutt_wait_filter (pid);
++ mutt_unlink (facefile);
++ return 0;
++}
++
+ static struct mapping_t PagerHelp[] = {
+ { N_("Exit"), OP_EXIT },
+ { N_("PrevPg"), OP_PREV_PAGE },
+@@ -1514,6 +1597,7 @@ mutt_pager (const char *banner, const ch
+ int lines = 0, curline = 0, topline = 0, oldtopline = 0, err, first = 1;
+ int r = -1;
+ int redraw = REDRAW_FULL;
++ int xface = 0;
+ FILE *fp = NULL;
+ LOFF_T last_pos = 0, last_offset = 0;
+ int old_smart_wrap, old_markers;
+@@ -1593,6 +1677,8 @@ mutt_pager (const char *banner, const ch
+
+ if (redraw & REDRAW_FULL)
+ {
++ xface = 1; /* display xface later */
++
+ SETCOLOR (MT_COLOR_NORMAL);
+ /* clear() doesn't optimize screen redraws */
+ move (0, 0);
+@@ -1794,6 +1880,11 @@ mutt_pager (const char *banner, const ch
+ } else move (statusoffset, COLS-1);
+ mutt_refresh ();
+
++ /* X-Face */
++ if (option (OPTXFACE) && xface && IsHeader (extra))
++ display_xface (extra->hdr);
++ xface = 0;
++
+ if (IsHeader (extra) && OldHdr == extra->hdr && TopLine != topline
+ && lineInfo[curline].offset < sb.st_size-1)
+ {
+Index: xface/parse.c
+===================================================================
+--- xface.orig/parse.c 2007-02-15 20:28:47.007756528 +0100
++++ xface/parse.c 2007-02-15 20:28:56.073378344 +0100
+@@ -43,6 +43,7 @@ char *mutt_read_rfc822_line (FILE *f, ch
+ char *buf = line;
+ char ch;
+ size_t offset = 0;
++ int xface = 0;
+
+ FOREVER
+ {
+@@ -53,6 +54,9 @@ char *mutt_read_rfc822_line (FILE *f, ch
+ return (line);
+ }
+
++ if (ascii_strcasecmp (buf, "x-face:") == 0)
++ xface = 1;
++
+ buf += strlen (buf) - 1;
+ if (*buf == '\n')
+ {
+@@ -71,9 +75,12 @@ char *mutt_read_rfc822_line (FILE *f, ch
+ /* eat tabs and spaces from the beginning of the continuation line */
+ while ((ch = fgetc (f)) == ' ' || ch == '\t')
+ ;
+- ungetc (ch, f);
+- *++buf = ' '; /* string is still terminated because we removed
+- at least one whitespace char above */
++ if (!xface)
++ {
++ ungetc (ch, f);
++ *++buf = ' '; /* string is still terminated because we removed
++ at least one whitespace char above */
++ }
+ }
+
+ buf++;
+@@ -1244,6 +1251,11 @@ int mutt_parse_rfc822_line (ENVELOPE *e,
+ e->x_label = safe_strdup(p);
+ matched = 1;
+ }
++ else if (ascii_strcasecmp (line+1, "-face") == 0)
++ {
++ e->x_face = safe_strdup (p);
++ matched = 1;
++ }
+
+ default:
+ break;
+Index: xface/sendlib.c
+===================================================================
+--- xface.orig/sendlib.c 2007-02-15 20:28:47.017755008 +0100
++++ xface/sendlib.c 2007-02-15 20:28:56.074378192 +0100
+@@ -1829,6 +1829,9 @@ int mutt_write_rfc822_header (FILE *fp,
+ }
+ }
+
++ if (env->x_face)
++ fprintf (fp, "X-Face: %s\n", env->x_face);
++
+ if (mode == 0 && !privacy && option (OPTXMAILER) && !has_agent)
+ {
+ /* Add a vanity header */
+++ /dev/null
-diff -ruN mutt-1.5.6.orig/configure mutt-1.5.6/configure
---- mutt-1.5.6.orig/configure 2004-02-01 19:22:06.000000000 +0100
-+++ mutt-1.5.6/configure 2004-04-04 10:48:08.000000000 +0200
-@@ -5684,6 +5684,7 @@
- EOF
-
- need_sasl=yes
-+ need_md5=yes
- fi
-
- fi
-@@ -5778,6 +5779,7 @@
- EOF
-
- need_sasl=yes
-+ need_md5=yes
- fi
-
- fi
+++ /dev/null
---- a/curs_main.c 2004-06-28 04:57:39.000000000 +0200
-+++ b/curs_main.c 2004-06-28 04:57:49.000000000 +0200
-@@ -576,10 +576,6 @@
- move (menu->current - menu->top + menu->offset, COLS - 1);
- mutt_refresh ();
-
-- op = km_dokey (MENU_MAIN);
--
-- dprint(4, (debugfile, "mutt_index_menu[%d]: Got op %d\n", __LINE__, op));
--
- #if defined (USE_SLANG_CURSES) || defined (HAVE_RESIZETERM)
- if (SigWinch)
- {
-@@ -598,6 +594,10 @@
- }
- #endif
-
-+ op = km_dokey (MENU_MAIN);
-+
-+ dprint(4, (debugfile, "mutt_index_menu[%d]: Got op %d\n", __LINE__, op));
-+
- if (op == -1)
- continue; /* either user abort or timeout */
-
--- /dev/null
+# compressed folders need an autotools rerun
+features/compressed-folders
+features/compressed-folders.debian
+
+# build system patches
+misc/autotools-update.diff
+debian-specific/Md.sasl2_needs_md5.diff -p0
+debian-specific/dont_rebuild_po_files.diff -p0
+debian-specific/build_doc_adjustments.diff -p0
+debian-specific/sort-patchlist
+
+# features
+features/ifdef
+features/maildir-mtime
+features/xtitles
+features/trash-folder
+features/purge-message
+features/sensible_browser_position
+features-old/patch-1.5.4.vk.pgp_verbose_mime
+
+# Debian config
+debian-specific/Muttrc
+debian-specific/Md.etc_mailname_gethostbyname.diff -p0
+debian-specific/use_usr_bin_editor.diff -p0
+debian-specific/correct_docdir_in_man_page.diff -p0
+debian-specific/dont_document_not_present_features.diff -p0
+debian-specific/document_debian_defaults
+debian-specific/assumed_charset-compat
+misc/define-pgp_getkeys_command.diff -p0
+misc/gpg.rc-paths
+
+# unapplied patches for custom packages
+# not-applied/patch-1.5.8.hr.sensible_browser_position.3
+# not-applied/chdir
+# not-applied/indexcolor
+# not-applied/w3mface
#!/usr/bin/make -f
-SHELL+= -e
-export LC_ALL=C
-include debian/scripts/vars
-
-BUILD_DIR := $(SOURCE_DIR)/$(TAR_DIR)
-B := $(BUILD_DIR)
-D := $(CURDIR)/debian/mutt
-
-# Comment this line if you want the header cache with gdbm
-HCACHE_WITH_DB := --without-gdbm
-
-clean:
- $(MAKE) -f debian/sys-build.mk source.clean
- dh_clean
-
-# target used by the maintainer
-unpack.nopatch:
- $(MAKE) -f debian/sys-build.mk source.build
- rm -f $B/Muttrc $B/doc/muttrc.man \
- $B/doc/manual.sgml $B/doc/manual.txt $B/doc/*.html
-
-diff:
- $(MAKE) -f debian/sys-build.mk make-diff
-
-unpack: $(STAMP_DIR)/source.make
-$(STAMP_DIR)/source.make:
- $(MAKE) -f debian/sys-build.mk source.make
+include /usr/share/quilt/quilt.make
+
+###
+# header cache backend
+# HCACHE_DB := bdb
+HCACHE_DB := gdbm
+# HCACHE_DB := qdbm
+###
+# GPGME backend
+# GPGME := --enable-gpgme
+###
+
+# Configure arguments
+
+ifeq ($(HCACHE_DB),bdb)
+ hcache_db := --without-gdbm --without-qdbm
+endif
+ifeq ($(HCACHE_DB),gdbm)
+ hcache_db := --without-qdbm --without-bdb
+endif
+ifeq ($(HCACHE_DB),qdbm)
+ hcache_db := --without-gdbm --without-bdb
+endif
+
+confflags = --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --with-sharedir=/usr/share/mutt \
+ --with-docdir=/usr/share/doc \
+ --with-mailpath=/var/mail \
+ \
+ --disable-dependency-tracking \
+ \
+ --enable-compressed \
+ --enable-debug \
+ --enable-fcntl \
+ --enable-hcache \
+ $(GPGME) \
+ --enable-imap \
+ --enable-smtp \
+ --enable-inodesort \
+ --enable-pop \
+ \
+ --with-curses \
+ --with-gnutls \
+ --with-idn \
+ --with-mixmaster \
+ --with-sasl \
+ \
+ $(hcache_db)
+
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+confflags += --build $(DEB_BUILD_GNU_TYPE)
+# Only specify --host when cross-compiling
+ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
+ confflags += --host $(DEB_HOST_GNU_TYPE)
+endif
+
+# CFLAGS
+CFLAGS = -Wall -g
+CPPFLAGS = -I/usr/include/qdbm
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+# Directory to make the build on
+objdir = $(CURDIR)/obj-$(DEB_HOST_GNU_TYPE)
+
+configure: $(objdir)/configure-stamp
+$(objdir)/configure-stamp: $(QUILT_STAMPFN)
+ dh_testdir
+
+ #ln -sf /usr/share/misc/config.sub .
+ #ln -sf /usr/share/misc/config.guess .
- # sort the patches list
- sort $B/PATCHES > $B/PATCHES.temp
- mv $B/PATCHES.temp $B/PATCHES
-
- # rebuild these files
- rm -f $B/Muttrc $B/doc/muttrc.man \
- $B/doc/manual.sgml $B/doc/manual.txt $B/doc/*.html
-
- # we include some #defines in debian-config.h
- echo '#include "debian-config.h"' >> $B/config.h.in
-
# do not rebuild these files
- touch $B/configure.in $B/aclocal.m4 $B/Makefile.in $B/configure \
- $B/stamp-h.in $B/config.h.in
+ touch configure.ac aclocal.m4 Makefile.in configure config.h.in
+
+ -mkdir $(objdir)
+ cd $(objdir) && \
+ env CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
+ ../configure $(confflags)
+
+ echo '#include "config-debian.h"' >>$(objdir)/config.h
+
touch $@
-configure: $(STAMP_DIR)/configure
-$(STAMP_DIR)/configure: $(STAMP_DIR)/source.make
- CC=cc ac_cv_path_ISPELL=ispell \
- SENDMAIL=/usr/sbin/sendmail PERL=/usr/bin/perl \
- $(MAKE) -f debian/sys-build.mk source.command SOURCE_CMD=" \
- ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man \
- --with-sharedir=/usr/share/mutt --with-docdir=/usr/share/doc \
- --with-mailpath=/var/mail \
- --enable-fcntl --enable-pop --enable-imap \
- --with-mixmaster --with-sasl2 --with-idn \
- --with-curses \
- --with-gnutls \
- --enable-debug \
- --enable-inodesort \
- --enable-compressed \
- --enable-hcache $(HCACHE_WITH_DB) \
- "
+build build-arch: $(objdir)/build-stamp
+$(objdir)/build-stamp: $(objdir)/configure-stamp
+ cd $(objdir) && $(MAKE) CFLAGS="$(CFLAGS)"
touch $@
-build: $(STAMP_DIR)/build
-$(STAMP_DIR)/build: $(STAMP_DIR)/configure $(STAMP_DIR)/source.make
- GROFF_NO_SGR=1 \
- $(MAKE) -f debian/sys-build.mk source.command SOURCE_CMD=" \
- make keymap_defs.h all CFLAGS=\"-O2 -g\" \
- "
+install: debian/tmp/install-stamp
+debian/tmp/install-stamp: $(objdir)/build-stamp
+ dh_testdir
+ dh_testroot
+ dh_clean
+ cd $(objdir) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+
+ cd debian/tmp/usr/share/doc && \
+ rm -rf samples/iconv samples/ca-bundle.crt && \
+ mv NEWS NEWS.old && \
+ mv ChangeLog.old changelog.old && \
+ cp $(CURDIR)/UPDATING NEWS
+
+ chmod +x debian/extra/lib/*
+ chmod +x debian/header.awk
+ debian/header.awk debian/patches/features/* >debian/tmp/README.Patches
+
+ ( sed -e '/## More settings/,$$d' $(objdir)/Muttrc || exit 1 ; \
+ cat debian/extra/rc/Muttrc.foot ) > debian/tmp/Muttrc
+
+ ( echo "# GnuPG configuration"; \
+ grep '^set' contrib/gpg.rc; \
+ echo ) > debian/tmp/gpg.rc
+
touch $@
-binary-arch: $(STAMP_DIR)/build checkroot
+binary binary-arch: build install
dh_testdir
- dh_clean -k
- $(MAKE) -f debian/sys-build.mk source.command SOURCE_CMD=" \
- $(MAKE) install DESTDIR=$D SUBDIRS=\"intl po\" \
- "
-
- dh_installdirs -p mutt usr/share/pixmaps usr/lib/mutt/ \
- usr/bin/ usr/share/doc/mutt/html/
+ dh_testroot
+
+ dh_installdirs
+ dh_install
+ dh_installman
dh_installmenu
- dh_installdocs $B/README $B/README.SECURITY $B/README.SSL $B/NEWS \
- $B/doc/manual.txt $B/doc/PGP-Notes.txt extra/README.SMIME
- cp $B/doc/*.html $D/usr/share/doc/mutt/html/
- for file in README BUGS TODO; do \
- cp $B/imap/$$file $D/usr/share/doc/mutt/$$file.IMAP; \
- done
- # generate README.Patches
- for file in $(EXTRA_PATCHES)/*; do \
- mawk -f debian/gen-README.Patches $$file >> \
- $D/usr/share/doc/mutt/README.Patches; \
- done
- dh_installexamples \
- $B/contrib/*rc $B/contrib/sample.muttrc-tlr \
- extra/ray.muttrc extra/colors.angdraug
- dh_installman \
- $B/doc/mutt.man $B/doc/dotlock.man \
- $B/doc/muttrc.man $B/doc/mbox.man
-
- install --mode=755 extra/debian-ldap-query extra/mailspell \
- extra/source-muttrc.d $D/usr/lib/mutt/
- cp extra/mutt.xpm $D/usr/share/pixmaps/
-
-# some fixes to the package structure
- mv $D/usr/bin/pgp* $D/usr/lib/mutt/
- mv $D/usr/share/man/man1/dotlock.1 $D/usr/share/man/man1/mutt_dotlock.1
- rm $D/etc/mime.types $D/usr/bin/muttbug $D/usr/bin/flea
-
-# I think the default config file with the embedded manual is too big
- mv $D/etc/Muttrc $D/usr/share/doc/mutt/examples/
- cp $B/Muttrc.head $D/etc/Muttrc
- echo "# GnuPG configuration" >> $D/etc/Muttrc
- grep ^set $B/contrib/gpg.rc \
- | sed -e 's#pgpewrap#/usr/lib/mutt/pgpewrap#' \
- | sed -e 's#/usr/bin/gpg#gpg#' \
- >> $D/etc/Muttrc
- cat extra/smime-paths.rc extra/source-Muttrc.d.rc >> $D/etc/Muttrc
-
- dh_installchangelogs $B/ChangeLog
+ dh_installdocs
+ dh_installexamples
+ dh_installchangelogs ChangeLog
+
+ dh_link
dh_strip
- dh_compress
- dh_fixperms --exclude=usr/bin/mutt_dotlock
+ dh_compress --exclude usr/share/doc/mutt/README.Patches
+ dh_fixperms --exclude usr/bin/mutt_dotlock
dh_installdeb
dh_shlibdeps
dh_gencontrol
+ dh_md5sums
dh_builddeb
-binary: binary-arch
+binary-indep:
+ @echo "Nothing to do."
-extra-clean:
- find -type f \( -name "*.orig" -o -name "*.rej" \) -exec rm -v {} \;
-
-checkroot:
- test root = "`whoami`"
+clean: unpatch
+ dh_testdir
+ dh_testroot
+
+ # please dpkg-source
+ rm -f po/*.gmo
+ #rm -f config.guess config.sub
+ touch PATCHES
+
+ # remove build tree
+ rm -rf $(objdir)
+
+ dh_clean
-.PHONY: binary binary-arch build clean configure checkroot extra-clean
+.PHONY: configure build build-arch build-indep clean install binary binary-arch binary-indep patch
+++ /dev/null
-#!/usr/bin/make -f
-all: sh.vars mk.vars
-
-clean:
- rm -f sh.vars mk.vars
-
-mk.vars: vars.build vars
- $(SHELL) vars.build vars make > $@
-sh.vars: vars.build vars
- $(SHELL) vars.build vars shell > $@
-
+++ /dev/null
-#!/bin/sh
-# i486 i386 i486 i586 pentium pentiumpro
-if [ $(basename $0) = archmap ];then
- if [ -z $1 ];then
- arch=$(dpkg --print-gnu-build-architecture)
- else
- arch=$1
- fi
-else
- if [ -z $arch ];then
- arch=$(dpkg --print-gnu-build-architecture)
- fi
-fi
-set -- $(egrep ".* $arch( .*|$)" debian/scripts/archmap)
-if [ -z $2 ];then
- arch=$arch
-else
- arch=$2
-fi
-if [ $(basename $0) = archmap ];then
- echo $arch
-fi
+++ /dev/null
-#!/bin/sh
-# GNU C library version detection shell script.
-# Copyright 1999 Branden Robinson.
-# Licensed under the GNU General Public License, version 2. See the file
-# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
-
-# This script probably makes about a billion too many assumptions, but it's
-# better than hardcoding the glibc version on a per-architecture basis.
-
-set -e
-
-usage () {
- echo "Usage: getglibcversion [option]"
- echo " Where [option] may be one of:"
- echo " --major return major version only"
- echo " --minor return minor version only"
- echo " --point return ittybitty version only"
- echo "With no option, returns major.minor.ittybitty .";
-}
-
-case $# in
- 0) ;;
- 1) case $1 in
- --help) usage
- exit 0 ;;
- --major) RETURN=1 ;;
- --minor) RETURN=2 ;;
- --point) RETURN=3 ;;
- *) exec 1>&2
- usage
- exit 1 ;;
- esac ;;
- *) exec 1>&2
- usage
- exit 1 ;;
-esac
-
-LIBCLIST=$(cd /lib && ls libc-*.so)
-
-case $(echo $LIBCLIST | wc -l | awk '{print $1}') in
- 0) echo "No GNU C library found! Aborting." >&2
- exit 1 ;;
- 1) ;;
- *) echo "Multiple versions of GNU C library found! Aborting." >&2
- exit 1 ;;
-esac
-
-LIBCVERSION=$(echo $LIBCLIST | sed 's/libc-//;s/\.so//')
-
-if [ -z $RETURN ]; then
- echo $LIBCVERSION
-else
- echo $LIBCVERSION | cut -d. -f$RETURN
-fi
-
-exit 0
+++ /dev/null
-#!/bin/sh
-if [ $(basename $0) = lib ];then
- make -C debian/scripts sh.vars
- . debian/scripts/sh.vars
-fi
-fetchmsg() {
- local msg
- msg=$1;shift
- eval echo $(sed -ne "s/^$(BASENAME):$msg://p" debian/scripts/messages)
-}
-START() {
- echo -n "$(fetchmsg START "$@") "
-}
-OK() {
- fetchmsg OK "$@"
-}
-FAILED() {
- fetchmsg FAILED "$@"
-}
-ALREADY_DONE() {
- fetchmsg ALREADY_DONE "$@"
-}
-
-BASENAME() {
- local base
- if [ "$cmd" ];then
- base=$cmd
- else
- base=${0##*/}
- fi
- if [ x$base = x ];then
- echo "Danger, Will Robinson, Danger!" 1>&2
- echo "Bash is very confused." 1>&2
- exit 1
- fi
- if [ x$base = xlib ];then
- echo "You can't call this directly." 1>&2
- echo "This is a library that should be sourced." 1>&2
- exit 1
- fi
- echo $base
-}
-file2cat() {
- $(decompress_prog $1) $1
-}
-debug() {
- echo "$@"
- eval "$@"
-}
-decompress_prog() {
- local which
- which="cat"
- [ $1 != ${1%.tgz} -o $1 != ${1%.gz} -o $1 != ${1%.Z} ] && which="gunzip -c"
- [ $1 != ${1%.bz2} ] && which="bunzip2 -c"
- [ $1 != ${1%.bz} ] && which="bunzip -c"
- echo $which
-}
-compress_ext() {
- local which
- which=""
- [ $1 != ${1%.gz} ] && which=gz
- [ $1 != ${1%.Z} ] && which=Z
- [ $1 != ${1%.bz2} ] && which=bz2
- [ $1 != ${1%.bz} ] && which=bz
- echo $which
-}
-filetype_detect() {
- local which f
- which=""
- f=$(echo "$1" | sed 's|:::.*||')
- [ $f != ${f%.jar} ] && which=jarfile
- [ $f != ${f%.zip} ] && which=zipfile
- [ $f != ${f%.tgz} ] && which=tarball
- [ $f != ${f%.tar.$(compress_ext $f)} ] && which=tarball
- [ $f != ${f%.tar} ] && which=tarball
- [ $f != ${f%.diff.$(compress_ext $f)} -o $1 != ${1%.patch.$(compress_ext $1)} ] && which=patch
- [ $f != ${f%.diff} -o $1 != ${1%.patch} ] && which=patch
- [ $f != ${f%.dsc} ] && which=dsc
- echo $which
-}
-extract_tar() {
- local which file dir curd
- dir="$1"
- shift
- curd=$(pwd)
- while [ $# -gt 0 ];do
- file="$1"
- [ "$file" = "${1#/}" ] && file="$curd/$file"
- case "$(filetype_detect $file)" in
- "jarfile") (cd $dir;fastjar -xf $file);;
- "zipfile") (cd $dir;miniunzip -x $file);;
- "tarball") $(decompress_prog $file) $file | (cd $dir;tar xvf -);;
- *) echo "unsupported tarball";;
- esac
- shift
- done
-}
-
-do.patching() {
- filetmpl=\$d/\$f
- reversesort=""
- reversepatch=""
-
- case "$cmd" in
- source.patch)
- mkdir -p $SOURCE_DIR/$TAR_DIR
- patch_dirs="$SRC_PATCH_DIR $SRC_ADD_PATCH_DIR"
- stampfiletmpl=\$STAMP_DIR/\$d/\$f
- logtmpl=\$STAMP_DIR/log/\$d/\$f
- dirprep="\$STAMP_DIR/log/\$d \$STAMP_DIR/\$d"
- patchapplydirtmpl=\$SOURCE_DIR/\$TAR_DIR
- ;;
- patch.apply)
- mkdir -p $SOURCE_DIR/$TAR_DIR $STAMP_DIR/patches
- patch_dirs="$PATCH_DIR $ADD_PATCH_DIR"
- stampfiletmpl=\$STAMP_DIR/patches/\$f
- logtmpl=\$STAMP_DIR/log/\$d/\$f
- dirprep=\$STAMP_DIR/log/\$d
- patchapplydirtmpl=\$SOURCE_DIR/\$TAR_DIR
- ;;
- fix.source.patch)
- if [ "$DBS_UNIFIED" -o ! -e debian/fixpatch ];then
- exit
- fi
- mkdir -p $STAMP_DIR/fixpatch
- patch_dirs=debian/fixpatch
- stampfiletmpl="$STAMP_DIR/fixpatch/\$(basename \$f)"
- logtmpl=\$STAMP_DIR/log/fixpatch/\$f
- dirprep=\$STAMP_DIR/log/fixpatch
- patchapplydirtmpl=upstream
- ;;
- unfix.source.patch)
- if [ "$DBS_UNIFIED" -o ! -e debian/fixpatch ];then
- exit
- fi
- mkdir -p $STAMP_DIR/fixpatch
- patch_dirs=debian/fixpatch
- stampfiletmpl="$STAMP_DIR/fixpatch/\$(basename \$f)"
- logtmpl=\$STAMP_DIR/log/fixpatch/\$f
- dirprep=\$STAMP_DIR/log/fixpatch
- patchapplydirtmpl=upstream
- reversesort=-r
- reversepatch=-R
- ;;
- esac
- for d in $patch_dirs;do
- if [ ! -d $d ];then
- continue
- fi
- eval mkdir -p $dirprep
- for f in `(cd $d >/dev/null;find -type f ! -name 'chk-*' 2>/dev/null )|sort $reversesort`;do
- eval stampfile=$stampfiletmpl
- eval log=$logtmpl
- eval file=$filetmpl
- eval patchapplydir=$patchapplydirtmpl
- if [ ! -e $stampfile ];then
- START $file
- if file2cat $file | (cd $patchapplydir;patch -p1 $reversepatch) > $log;then
- OK $file
- touch $stampfile
- else
- FAILED $file
- exit 1
- fi
- else
- ALREADY_DONE $file
- fi
- done
- done
-
-}
-#
-# External api functions.
-#
-
-source.clean() {
- if [ "$DBS_UNIFIED" ];then
- exit
- fi
- rm -rf $SOURCE_DIR $STAMP_DIR/upstream $STAMP_DIR/patches
- rm -f $STAMP_DIR/{source.{clean,build,make}}
- return
-if [ x$SOURCE_DIR = x ];then
- files=`find -type f -maxdepth 1 -mindepth 1`
- dirs=`find -type d -maxdepth 1 -mindepth 1 ! -name 'debian' ! -name 'upstream'`
- echo files=\"$files\"
- echo dirs=\"$dirs\"
-fi
-
-}
-source.patch() { cmd=source.patch; do.patching; }
-fix.source.patch() { cmd=fix.source.patch; do.patching; }
-unfix.source.patch() { cmd=unfix.source.patch; do.patching; }
-patch.apply() { cmd=patch.apply; do.patching; }
-
-if [ $(basename $0) = lib ];then
- $1
-fi
+++ /dev/null
-fix.source.patch:START:"Fixing upstream patch $1"
-fix.source.patch:OK:"successful."
-fix.source.patch:FAILED:"failed!"
-fix.source.patch:ALREADY_DONE:"upstream patch fixup $1 already applied!"
-
-unfix.source.patch:START:"Unfixing upstream patch $1
-unfix.source.patch:OK:"successful."
-unfix.source.patch:FAILED:"failed!
-unfix.source.patch:ALREADY_DONE:"upstream patch fixup $1 already reversed!"
-
-patch.unapply:START:"Reversing patch $1"
-patch.unapply:OK:"successful."
-patch.unapply:FAILED:"failed!"
-patch.unapply:ALREADY_DONE:"Patch $1 not applied!"
-
-patch.apply:START:"Applying patch $1"
-patch.apply:OK:"successful."
-patch.apply:FAILED:"failed!"
-patch.apply:ALREADY_DONE:"Patch $1 already applied!"
-
-source.patch:START:"Applying upstream patch $1"
-source.patch:OK:"successful."
-source.patch:FAILED:"failed!"
-source.patch:ALREADY_DONE:"upstream patch $1 already applied!"
-
-source.unpack:START:"Extracting upstream tarball $1"
-source.unpack:OK:"successful."
-source.unpack:FAILED:"failed!"
-source.unpack:ALREADY_DONE:"upstream tarball $1 already extracted!"
+++ /dev/null
-#!/bin/sh
-make -C debian/scripts sh.vars
-. debian/scripts/sh.vars
-. debian/scripts/lib
-
-mkdir -p $STAMP_DIR/upstream/tarballs/ $SOURCE_DIR
-if [ ! -z "$SRC_TAR_DIR" -a -d "$SRC_TAR_DIR" ];then
- files=$(find $SRC_TAR_DIR -type f|sort)
-else
- VER=$(dpkg-parsechangelog 2>&1|egrep ^Version|cut -d " " -f 2|cut -d "-" -f 1)
- SRC=$(dpkg-parsechangelog 2>&1|egrep ^Source|cut -d " " -f 2-)
- files=../${SRC}_${VER}.orig.tar.gz
-fi
-for f in $files;do
- stampfile=$STAMP_DIR/upstream/tarballs/`basename $f`
- if [ ! -e $stampfile ];then
- START $f
- if extract_tar ${SOURCE_DIR:-.} $f > $stampfile.log;then
- if [ x$SOURCE_DIR = x ];then
- mkdir -p $STAMP_DIR/upstream/files/tarballs
- cp $stampfile.log $STAMP_DIR/upstream/files/tarballs/`basename $f`.list
- fi
- OK $f
- touch $stampfile
- else
- FAILED $f
- exit 1
- fi
- else
- ALREADY_DONE $f
- fi
-done
+++ /dev/null
-# This file is NOT a shell script.
-#
-# This file gets included by both debian/rules (make) AND the scripts in
-# debian/scripts (bash)
-#
-
-# Where to cd to to unpack all the tarballs.
-SOURCE_DIR=build-tree
-# For a single pkg, this is the directory that is embedded in the tarball.
-# For multiple pkgs, this is null.
-TAR_DIR=mutt-1.5.9
-# Where to place all the stamp files. This directory can be removed, and
-# all the targets will then be rerun.
-STAMP_DIR=debian/stampdir
-# When sys-build.mk is used to build the source, this is the target(s) to
-# run.
-BUILD_TARGET=
-# When cleaning the source, during diff generation, if this is set, this
-# target will be called in debian/rules. This allows for pkgs that have
-# complicated cleaning rules.
-CLEAN_TARGET_EXTERNAL=extra-clean
-# Whether to die if the source cleaning fails.
-CLEAN_IGNORE=yes
-# The clean target to run. Defaults to clean.
-CLEAN_TARGET=maintainer-clean
-# Files to exclude from the diff.
-DIFF_EXCLUDE=""
-# Where the patches are located(duh!).
-PATCH_DIR=debian/patches
-EXTRA_PATCHES=upstream/extra-patches
-SRC_PATCH_DIR="upstream/patches $EXTRA_PATCHES"
-SRC_TAR_DIR=upstream/tarballs
+++ /dev/null
-#!/usr/bin/make -f
-
-sed_cmd=''
-cat $1 | while read REPLY; do
- case "$REPLY" in
- \#*|"") continue;;
- *)
- var=$(echo $REPLY|sed 's/\([^=]*\)=.*/\1/')
- eval $REPLY
- if [ $2 = "make" ]; then
- eval echo "$var=\$$var"
- else
- eval echo "$var=\\\"\$$var\\\""
- fi
- ;;
- esac
-done
+++ /dev/null
-#!/usr/bin/make -f
-# Separate tarball/patch build system by Adam Heath <doogie@debian.org>
-
-# The magic targets that you need to concern yourself with are:
-#
-# source.build: Unpacks upstream tarballs, optionally applies patches
-# to fix the upstream patches, then applies upstream
-# patches.
-# source.make: Applies debian patches.
-# source.clean: Cleans the build directory, then unfixes the upstream
-# patches.
-# source.compile: Will compile the source for you. Please check
-# debian/scripts/vars.
-# source.cmd: When calling this target, if you define a variable
-# SOURCE_CMD, it will run that command in the build
-# tree.
-# make-diff: Generates debian.diff in the current directory which
-# contains all edits that are currently in the build
-# tree.
-#
-# Nothing in this file should require any editting. Please look at
-# debian/scripts/vars for things to change for the local environment.
-#
-# debian/rules target command
-# ----------------------------------------------------------------
-# clean: $(MAKE) -f debian/sys-build.mk source.clean
-# build: $(MAKE) -f debian/sys-build.mk source.compile
-# for simple systems.
-# build: $(MAKE) -f debian/sys-build.mk source.make
-# and, in the rules file, you can
-# build the targets you want.
-SHELL=/bin/bash
-ifndef NOISY
-.SILENT:
-endif
-
-include debian/scripts/vars
-# remove quotes
-DIFF_EXCLUDE:=$(patsubst %,-x %,$(shell echo $(DIFF_EXCLUDE)))
-
-ifdef TAR_DIR
-BUILD_TREE=$(SOURCE_DIR)/$(TAR_DIR)
-else
-BUILD_TREE=$(SOURCE_DIR)
-endif
-
-SOURCE_CMD=:
-
-ifdef CLEAN_IGNORE
- CLEAN_CMD=-
- CLEAN_SH=
-else
- CLEAN_CMD=
- CLEAN_SH=
-endif
-ifndef CLEAN_TARGET
- CLEAN_TARGET=clean
-endif
-
-foo:
- echo $(DIFF_EXCLUDE)
-
-make-diff:
- mv $(BUILD_TREE) bak
- $(MAKE) -f debian/sys-build.mk source.clean
- $(MAKE) -f debian/sys-build.mk source.make
- mv $(BUILD_TREE) $(BUILD_TREE).orig
- mv bak $(BUILD_TREE)
-
-ifdef TAR_DIR
-ifdef CLEAN_TARGET_EXTERNAL
- $(CLEAN_CMD)$(MAKE) -f debian/rules $(CLEAN_TARGET_EXTERNAL)
-else
- $(CLEAN_CMD)$(MAKE) -C $(BUILD_TREE) $(CLEAN_TARGET)
-endif
- -(cd $(SOURCE_DIR);diff -ruN $(TAR_DIR).orig $(TAR_DIR) $(DIFF_EXCLUDE)) > debian.diff
-else
-ifdef CLEAN_TARGET_EXTERNAL
- $(CLEAN_CMD)$(MAKE) -f debian/rules $(CLEAN_TARGET_EXTERNAL)
-else
- $(CLEAN_CMD)for a in $(BUILD_TREE)/*;do $(MAKE) -C $$a $(CLEAN_TARGET);done
-endif
- -(diff -ruN $(BUILD_TREE).orig $(BUILD_TREE) $(DIFF_EXCLUDE)) > debian.diff
- if [ ! -s debian.diff ];then\
- rm debian.diff;\
- fi
-endif
- rm -rf $(BUILD_TREE).orig
-
-patchapply: $(STAMP_DIR)/patchapply
-$(STAMP_DIR)/patchapply: $(STAMP_DIR)/source.build $(STAMP_DIR)
- $(SHELL) debian/scripts/lib patch.apply
- touch $@
- rm -f $(STAMP_DIR)/patchunapply
-
-patchunapply: $(STAMP_DIR)/patchunapply
-$(STAMP_DIR)/patchunapply: $(STAMP_DIR)/source.build $(STAMP_DIR)
- $(SHELL) debian/scripts/lib patch.unapply
- touch $@
- rm -f $(STAMP_DIR)/patchapply
-
-.export: SOURCE_TREE
-
-#
-# The rules that really do the work all start with $(STAMPDIR)
-# This little trick allows us to use stamp files to keep us from
-# having to rerun long targets over and over. It also puts
-# all stamp files in one place, for easy cleaning.
-#
-# If a stampdir rule depends on something else, be sure it is
-# another stampdir rule. Depending on base rule won't work.
-#
-
-source.build: $(STAMP_DIR)/source.build
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.build
-$(STAMP_DIR)/source.build: $(STAMP_DIR)/source.unpack $(STAMP_DIR)/source.patch $(STAMP_DIR)
- touch $@
-
-source.make: $(STAMP_DIR)/source.make
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.make
-$(STAMP_DIR)/source.make: $(STAMP_DIR)/source.build $(STAMP_DIR)/patchapply $(STAMP_DIR)
- touch $@
-
-source.unpack: $(STAMP_DIR)/source.unpack
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.unpack
-$(STAMP_DIR)/source.unpack: $(STAMP_DIR)
- $(SHELL) debian/scripts/source.unpack
- touch $@
-
-source.patch: $(STAMP_DIR)/source.patch
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.patch
-$(STAMP_DIR)/source.patch: $(STAMP_DIR)/source.unpack $(STAMP_DIR)/fix.source.patch $(STAMP_DIR)
- $(SHELL) debian/scripts/lib source.patch
- touch $@
-
-fix.source.patch: $(STAMP_DIR)/fix.source.patch
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/fix.source.patch
-$(STAMP_DIR)/fix.source.patch: $(STAMP_DIR)
- $(SHELL) debian/scripts/lib fix.source.patch
- touch $@
-
-unfix.source.patch: $(STAMP_DIR)/unfix.source.patch
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/unfix.source.patch
-$(STAMP_DIR)/unfix.source.patch: $(STAMP_DIR)
- $(SHELL) debian/scripts/lib unfix.source.patch
- touch $@
-
-source.compile: $(STAMP_DIR)/source.compile
-STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.compile
-$(STAMP_DIR)/source.compile: $(STAMP_DIR)/source.make $(STAMP_DIR)
- $(MAKE) -C $(BUILD_TREE) $(BUILD_TARGET)
- touch $@
-
-source.command:
- (cd $(BUILD_TREE); $(SOURCE_CMD))
-
-DIR_TARGETS+=$(STAMP_DIR)
-$(STAMP_DIR_TARGETS): $(STAMP_DIR)
-
-$(DIR_TARGETS)/:
- mkdir -p $@
-
-source.clean: unfix.source.patch
- $(SHELL) debian/scripts/lib source.clean
- rm -f $(STAMP_DIR_TARGETS)
- rm -rf $(STAMP_DIR)
- $(MAKE) -C debian/scripts clean
set -e
-diff="${1-debian/patches/autotools-update}"
-rm -f "$diff"
-
dh_testdir
+
+D=$(basename "$PWD")
+PATCH_NAME=misc/autotools-update.diff
+
debclean
-make -f debian/sys-build.mk source.patch
-cd build-tree
+quilt delete $PATCH_NAME || test $? -eq 1
+quilt push -aq
+ln -sf /usr/share/misc/config.sub .
+ln -sf /usr/share/misc/config.guess .
-D=`echo *`
+cd ..
cp -al $D $D.orig
cd $D
aclocal -I m4
autoheader
-(cd m4 && make -f Makefile.am.in )
+( cd m4 && make -f Makefile.am.in )
automake
autoconf
cd ..
-diff -ru $D.orig $D >"../$diff"
+T=`mktemp $D/diff.XXXXXX`
+diff -ru $D.orig $D >$T || test $? -eq 1
+patch -p1 -R -d $D <$T
+
+cd $D
+quilt import -f -P $PATCH_NAME `basename $T`
+quilt push
+quilt refresh -p0
+cd ..
+
+rm -f $T
+rm -rf $D.orig
--- /dev/null
+version=3
+opts=pasv ftp://ftp.mutt.org/mutt/devel/mutt-(.*).tar.gz
+++ /dev/null
-# vi: ft=diff
-This is the assumed_charset patch by Takashi TAKIZAWA <taki@cyber.email.ne.jp>.
-
-The home page for this patch is:
-
- http://www.emaillab.org/mutt/download15.html.en
-
-* Patch last synced with upstream:
- - Date: 2004-07-22
- - File: http://www.emaillab.org/mutt/1.5/patch-1.5.6.tt.assumed_charset.1.gz
-
-* Changes made: NONE.
-
-* Notes:
- - the adjust_line and adjust_edited_file patches found in the above
- page were formerly applied to the debian package too, but as of
- 1.5.8 they are merged upstream.
-
-== END PATCH
-diff -uNr mutt-1.5.6.orig/charset.c mutt-1.5.6/charset.c
---- mutt-1.5.6.orig/charset.c Tue Jan 21 21:25:21 2003
-+++ mutt-1.5.6/charset.c Sun Feb 15 15:13:26 2004
-@@ -581,3 +581,86 @@
- iconv_close (fc->cd);
- FREE (_fc);
- }
-+
-+char *mutt_get_first_charset (const char *charset)
-+{
-+ static char fcharset[SHORT_STRING];
-+ const char *c, *c1;
-+
-+ c = charset;
-+ if (!mutt_strlen(c))
-+ return "us-ascii";
-+ if (!(c1 = strchr (c, ':')))
-+ return charset;
-+ strfcpy (fcharset, c, c1 - c + 1);
-+ return fcharset;
-+}
-+
-+static size_t convert_string (ICONV_CONST char *f, size_t flen,
-+ const char *from, const char *to,
-+ char **t, size_t *tlen)
-+{
-+ iconv_t cd;
-+ char *buf, *ob;
-+ size_t obl, n;
-+ int e;
-+
-+ cd = mutt_iconv_open (to, from, 0);
-+ if (cd == (iconv_t)(-1))
-+ return (size_t)(-1);
-+ obl = 4 * flen + 1;
-+ ob = buf = safe_malloc (obl);
-+ n = iconv (cd, &f, &flen, &ob, &obl);
-+ if (n == (size_t)(-1) || iconv (cd, 0, 0, &ob, &obl) == (size_t)(-1))
-+ {
-+ e = errno;
-+ FREE (&buf);
-+ iconv_close (cd);
-+ errno = e;
-+ return (size_t)(-1);
-+ }
-+ *ob = '\0';
-+
-+ *tlen = ob - buf;
-+
-+ safe_realloc ((void **) &buf, ob - buf + 1);
-+ *t = buf;
-+ iconv_close (cd);
-+
-+ return n;
-+}
-+
-+int mutt_convert_nonmime_string (char **ps)
-+{
-+ const char *c, *c1;
-+
-+ for (c = AssumedCharset; c; c = c1 ? c1 + 1 : 0)
-+ {
-+ char *u = *ps;
-+ char *s;
-+ char *fromcode;
-+ size_t m, n;
-+ size_t ulen = mutt_strlen (*ps);
-+ size_t slen;
-+
-+ if (!u || !*u)
-+ return 0;
-+
-+ c1 = strchr (c, ':');
-+ n = c1 ? c1 - c : mutt_strlen (c);
-+ if (!n)
-+ continue;
-+ fromcode = safe_malloc (n + 1);
-+ strfcpy (fromcode, c, n + 1);
-+ m = convert_string (u, ulen, fromcode, Charset, &s, &slen);
-+ FREE (&fromcode);
-+ if (m != (size_t)(-1))
-+ {
-+ FREE (ps);
-+ *ps = s;
-+ return 0;
-+ }
-+ }
-+ return -1;
-+}
-+
-diff -uNr mutt-1.5.6.orig/charset.h mutt-1.5.6/charset.h
---- mutt-1.5.6.orig/charset.h Tue Mar 4 16:49:43 2003
-+++ mutt-1.5.6/charset.h Sun Feb 15 15:06:19 2004
-@@ -35,6 +35,8 @@
- #endif
-
- int mutt_convert_string (char **, const char *, const char *, int);
-+char *mutt_get_first_charset (const char *);
-+int mutt_convert_nonmime_string (char **);
-
- iconv_t mutt_iconv_open (const char *, const char *, int);
- size_t mutt_iconv (iconv_t, ICONV_CONST char **, size_t *, char **, size_t *, ICONV_CONST char **, const char *);
-diff -uNr mutt-1.5.6.orig/globals.h mutt-1.5.6/globals.h
---- mutt-1.5.6.orig/globals.h Mon Feb 2 02:15:17 2004
-+++ mutt-1.5.6/globals.h Sun Feb 15 15:06:19 2004
-@@ -32,6 +32,7 @@
-
- WHERE char *AliasFile;
- WHERE char *AliasFmt;
-+WHERE char *AssumedCharset;
- WHERE char *AttachSep;
- WHERE char *Attribution;
- WHERE char *AttachFormat;
-@@ -45,6 +46,7 @@
- WHERE char *DsnReturn;
- WHERE char *Editor;
- WHERE char *EscChar;
-+WHERE char *FileCharset;
- WHERE char *FolderFormat;
- WHERE char *ForwFmt;
- WHERE char *Fqdn;
-diff -uNr mutt-1.5.6.orig/handler.c mutt-1.5.6/handler.c
---- mutt-1.5.6.orig/handler.c Wed Nov 5 18:41:31 2003
-+++ mutt-1.5.6/handler.c Sun Feb 15 15:06:19 2004
-@@ -1718,11 +1718,21 @@
- int istext = mutt_is_text_part (b);
- iconv_t cd = (iconv_t)(-1);
-
-- if (istext && s->flags & M_CHARCONV)
-+ if (istext)
- {
-- char *charset = mutt_get_parameter ("charset", b->parameter);
-- if (charset && Charset)
-- cd = mutt_iconv_open (Charset, charset, M_ICONV_HOOK_FROM);
-+ if(s->flags & M_CHARCONV)
-+ {
-+ char *charset = mutt_get_parameter ("charset", b->parameter);
-+ if (!option (OPTSTRICTMIME) && !charset)
-+ charset = mutt_get_first_charset (AssumedCharset);
-+ if (charset && Charset)
-+ cd = mutt_iconv_open (Charset, charset, M_ICONV_HOOK_FROM);
-+ }
-+ else
-+ {
-+ if (b->file_charset)
-+ cd = mutt_iconv_open (Charset, b->file_charset, M_ICONV_HOOK_FROM);
-+ }
- }
-
- fseek (s->fpin, b->offset, 0);
-diff -uNr mutt-1.5.6.orig/init.h mutt-1.5.6/init.h
---- mutt-1.5.6.orig/init.h Mon Feb 2 02:15:17 2004
-+++ mutt-1.5.6/init.h Sun Feb 15 15:07:40 2004
-@@ -184,6 +184,23 @@
- ** If set, Mutt will prompt you for carbon-copy (Cc) recipients before
- ** editing the body of an outgoing message.
- */
-+ { "assumed_charset", DT_STR, R_NONE, UL &AssumedCharset, UL "us-ascii"},
-+ /*
-+ ** .pp
-+ ** This variable is a colon-separated list of character encoding
-+ ** schemes for messages without character encoding indication.
-+ ** Header field values and message body content without character encoding
-+ ** indication would be assumed that they are written in one of this list.
-+ ** By default, all the header fields and message body without any charset
-+ ** indication are assumed to be in "us-ascii".
-+ ** .pp
-+ ** For example, Japanese users might prefer this:
-+ ** .pp
-+ ** set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
-+ ** .pp
-+ ** However, only the first content is valid for the message body.
-+ ** This variable is valid only if $$strict_mime is unset.
-+ */
- { "attach_format", DT_STR, R_NONE, UL &AttachFormat, UL "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " },
- /*
- ** .pp
-@@ -532,6 +549,20 @@
- ** signed.
- ** (PGP only)
- */
-+ { "file_charset", DT_STR, R_NONE, UL &FileCharset, UL 0 },
-+ /*
-+ ** .pp
-+ ** This variable is a colon-separated list of character encoding
-+ ** schemes for text file attatchments.
-+ ** If unset, $$charset value will be used instead.
-+ ** For example, the following configuration would work for Japanese
-+ ** text handling:
-+ ** .pp
-+ ** set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
-+ ** .pp
-+ ** Note: "iso-2022-*" must be put at the head of the value as shown above
-+ ** if included.
-+ */
- { "folder", DT_PATH, R_NONE, UL &Maildir, UL "~/Mail" },
- /*
- ** .pp
-@@ -2476,6 +2507,19 @@
- ** Setting this variable causes the ``status bar'' to be displayed on
- ** the first line of the screen rather than near the bottom.
- */
-+ { "strict_mime", DT_BOOL, R_NONE, OPTSTRICTMIME, 1 },
-+ /*
-+ ** .pp
-+ ** When unset, non MIME-compliant messages that doesn't have any
-+ ** charset indication in ``Content-Type'' field can be displayed
-+ ** (non MIME-compliant messages are often generated by old mailers
-+ ** or buggy mailers like MS Outlook Express).
-+ ** See also $$assumed_charset.
-+ ** .pp
-+ ** This option also replaces linear-white-space between encoded-word
-+ ** and *text to a single space to prevent the display of MIME-encoded
-+ ** ``Subject'' field from being devided into multiple lines.
-+ */
- { "strict_threads", DT_BOOL, R_RESORT|R_RESORT_INIT|R_INDEX, OPTSTRICTTHREADS, 0 },
- /*
- ** .pp
-diff -uNr mutt-1.5.6.orig/mutt.h mutt-1.5.6/mutt.h
---- mutt-1.5.6.orig/mutt.h Mon Feb 2 02:15:17 2004
-+++ mutt-1.5.6/mutt.h Sun Feb 15 15:06:19 2004
-@@ -406,6 +406,7 @@
- OPTSIGONTOP,
- OPTSORTRE,
- OPTSTATUSONTOP,
-+ OPTSTRICTMIME,
- OPTSTRICTTHREADS,
- OPTSUSPEND,
- OPTTEXTFLOWED,
-@@ -599,6 +600,7 @@
- * If NULL, filename is used
- * instead.
- */
-+ char *file_charset; /* charset of attached file */
- CONTENT *content; /* structure used to store detailed info about
- * the content of the attachment. this is used
- * to determine what content-transfer-encoding
-diff -uNr mutt-1.5.6.orig/parse.c mutt-1.5.6/parse.c
---- mutt-1.5.6.orig/parse.c Wed Nov 5 18:41:33 2003
-+++ mutt-1.5.6/parse.c Sun Feb 15 15:06:19 2004
-@@ -208,9 +208,23 @@
-
- if (*s == '"')
- {
-+ int state_ascii = 1;
- s++;
-- for (i=0; *s && *s != '"' && i < sizeof (buffer) - 1; i++, s++)
-+ for (i=0; *s && i < sizeof (buffer) - 1; i++, s++)
- {
-+ if (!option (OPTSTRICTMIME)) {
-+ /* As iso-2022-* has a characer of '"' with non-ascii state,
-+ * ignore it. */
-+ if (*s == 0x1b && i < sizeof (buffer) - 2)
-+ {
-+ if (s[1] == '(' && (s[2] == 'B' || s[2] == 'J'))
-+ state_ascii = 1;
-+ else
-+ state_ascii = 0;
-+ }
-+ }
-+ if (state_ascii && *s == '"')
-+ break;
- if (*s == '\\')
- {
- /* Quote the next character */
-@@ -379,7 +393,9 @@
- if (ct->type == TYPETEXT)
- {
- if (!(pc = mutt_get_parameter ("charset", ct->parameter)))
-- mutt_set_parameter ("charset", "us-ascii", &ct->parameter);
-+ mutt_set_parameter ("charset", option (OPTSTRICTMIME) ? "us-ascii" :
-+ (const char *) mutt_get_first_charset (AssumedCharset),
-+ &ct->parameter);
- }
-
- }
-diff -uNr mutt-1.5.6.orig/rfc2047.c mutt-1.5.6/rfc2047.c
---- mutt-1.5.6.orig/rfc2047.c Wed Nov 5 18:41:33 2003
-+++ mutt-1.5.6/rfc2047.c Sun Feb 15 15:13:58 2004
-@@ -706,13 +706,54 @@
- return 0;
- }
-
-+/* return length of linear white space */
-+static size_t lwslen (const char *s, size_t n)
-+{
-+ const char *p = s;
-+ size_t len = n;
-+
-+ if (n <= 0)
-+ return 0;
-+
-+ for (; p < s + n; p++)
-+ if (!strchr (" \t\r\n", *p))
-+ {
-+ len = (size_t)(p - s);
-+ break;
-+ }
-+ if (strchr ("\r\n", *(p-1))) /* LWS doesn't end with CRLF */
-+ len = (size_t)0;
-+ return len;
-+}
-+
-+/* return length of linear white space : reverse */
-+static size_t lwsrlen (const char *s, size_t n)
-+{
-+ const char *p = s + n - 1;
-+ size_t len = n;
-+
-+ if (n <= 0)
-+ return 0;
-+
-+ if (strchr ("\r\n", *p)) /* LWS doesn't end with CRLF */
-+ return (size_t)0;
-+
-+ for (; p >= s; p--)
-+ if (!strchr (" \t\r\n", *p))
-+ {
-+ len = (size_t)(s + n - 1 - p);
-+ break;
-+ }
-+ return len;
-+}
-+
- /* try to decode anything that looks like a valid RFC2047 encoded
- * header field, ignoring RFC822 parsing rules
- */
- void rfc2047_decode (char **pd)
- {
- const char *p, *q;
-- size_t n;
-+ size_t m, n;
- int found_encoded = 0;
- char *d0, *d;
- const char *s = *pd;
-@@ -729,6 +770,37 @@
- if (!(p = find_encoded_word (s, &q)))
- {
- /* no encoded words */
-+ if (!option (OPTSTRICTMIME))
-+ {
-+ n = mutt_strlen (s);
-+ if (found_encoded && (m = lwslen (s, n)) != 0)
-+ {
-+ if (m != n)
-+ *d = ' ', d++, dlen--;
-+ n -= m, s += m;
-+ }
-+ if (ascii_strcasecmp (AssumedCharset, "us-ascii"))
-+ {
-+ char *t;
-+ size_t tlen;
-+
-+ t = safe_malloc (n + 1);
-+ strfcpy (t, s, n + 1);
-+ if (mutt_convert_nonmime_string (&t) == 0)
-+ {
-+ tlen = mutt_strlen (t);
-+ strncpy (d, t, tlen);
-+ d += tlen;
-+ }
-+ else
-+ {
-+ strncpy (d, s, n);
-+ d += n;
-+ }
-+ FREE (&t);
-+ break;
-+ }
-+ }
- strncpy (d, s, dlen);
- d += dlen;
- break;
-@@ -737,15 +809,37 @@
- if (p != s)
- {
- n = (size_t) (p - s);
-- /* ignore spaces between encoded words */
-- if (!found_encoded || strspn (s, " \t\r\n") != n)
-+ /* ignore spaces between encoded words
-+ * and linear white spaces between encoded word and *text */
-+ if (!option (OPTSTRICTMIME))
- {
-- if (n > dlen)
-- n = dlen;
-- memcpy (d, s, n);
-- d += n;
-- dlen -= n;
-+ if (found_encoded && (m = lwslen (s, n)) != 0)
-+ {
-+ if (m != n)
-+ *d = ' ', d++, dlen--;
-+ n -= m, s += m;
-+ }
-+
-+ if ((m = n - lwsrlen (s, n)) != 0)
-+ {
-+ if (m > dlen)
-+ m = dlen;
-+ memcpy (d, s, m);
-+ d += m;
-+ dlen -= m;
-+ if (m != n)
-+ *d = ' ', d++, dlen--;
-+ }
- }
-+ else if (!found_encoded || strspn (s, " \t\r\n") != n)
-+ {
-+ if (n > dlen)
-+ n = dlen;
-+ memcpy (d, s, n);
-+ d += n;
-+ dlen -= n;
-+ }
-+
- }
-
- rfc2047_decode_word (d, p, dlen);
-@@ -766,7 +860,7 @@
- {
- while (a)
- {
-- if (a->personal && strstr (a->personal, "=?") != NULL)
-+ if (a->personal)
- rfc2047_decode (&a->personal);
- #ifdef EXACT_ADDRESS
- if (a->val && strstr (a->val, "=?") != NULL)
-diff -uNr mutt-1.5.6.orig/rfc2231.c mutt-1.5.6/rfc2231.c
---- mutt-1.5.6.orig/rfc2231.c Wed Nov 5 18:41:33 2003
-+++ mutt-1.5.6/rfc2231.c Sun Feb 15 15:06:19 2004
-@@ -113,6 +113,11 @@
-
- if (option (OPTRFC2047PARAMS) && p->value && strstr (p->value, "=?"))
- rfc2047_decode (&p->value);
-+ else if (!option (OPTSTRICTMIME))
-+ {
-+ if (ascii_strcasecmp (AssumedCharset, "us-ascii"))
-+ mutt_convert_nonmime_string (&p->value);
-+ }
-
- *last = p;
- last = &p->next;
-diff -uNr mutt-1.5.6.orig/sendlib.c mutt-1.5.6/sendlib.c
---- mutt-1.5.6.orig/sendlib.c Wed Nov 5 18:41:33 2003
-+++ mutt-1.5.6/sendlib.c Sun Feb 15 15:11:33 2004
-@@ -496,7 +496,7 @@
- }
-
- if (a->type == TYPETEXT && (!a->noconv))
-- fc = fgetconv_open (fpin, Charset,
-+ fc = fgetconv_open (fpin, a->file_charset,
- mutt_get_body_charset (send_charset, sizeof (send_charset), a),
- 0);
- else
-@@ -896,6 +896,7 @@
- CONTENT *info;
- CONTENT_STATE state;
- FILE *fp = NULL;
-+ char *fromcode;
- char *tocode;
- char buffer[100];
- char chsbuf[STRING];
-@@ -930,15 +931,18 @@
- if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset))
- {
- char *chs = mutt_get_parameter ("charset", b->parameter);
-+ char *fchs = b->use_disp ? ((FileCharset && *FileCharset) ?
-+ FileCharset : Charset) : Charset;
- if (Charset && (chs || SendCharset) &&
-- convert_file_from_to (fp, Charset, chs ? chs : SendCharset,
-- 0, &tocode, info) != (size_t)(-1))
-+ convert_file_from_to (fp, fchs, chs ? chs : SendCharset,
-+ &fromcode, &tocode, info) != (size_t)(-1))
- {
- if (!chs)
- {
- mutt_canonical_charset (chsbuf, sizeof (chsbuf), tocode);
- mutt_set_parameter ("charset", chsbuf, &b->parameter);
- }
-+ b->file_charset = fromcode;
- FREE (&tocode);
- safe_fclose (&fp);
- return info;
-@@ -1318,6 +1322,7 @@
- body->unlink = 1;
- body->use_disp = 0;
- body->disposition = DISPINLINE;
-+ body->noconv = 1;
-
- mutt_parse_mime_message (ctx, hdr);
-
-diff -uNr mutt-1.5.6.orig/PATCHES mutt-1.5.6/PATCHES
---- mutt-1.5.6.orig/PATCHES Mon Feb 2 02:42:47 2004
-+++ mutt-1.5.6/PATCHES Sun Feb 15 15:14:55 2004
-@@ -0,0 +1 @@
-+patch-1.5.6.tt.assumed_charset.1
+++ /dev/null
-# vi: ft=diff
-This patch by Manuel Estrada Sainz <ranty@debian.org> is an improvement
-to the compressed folder patch.
-
-It was received at Debian's BTS, Bug#210429.
-
-* Patch last synced with upstream:
- - Date: unknown (mutt_1.5.6-20040523+1)
- - File: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=210429&msg=11
-
-* Changes made: NONE.
-
-== END PATCH
---- mutt.orig/compress.c 2003-09-11 19:26:34.000000000 +0200
-+++ mutt/compress.c 2003-09-11 19:58:05.000000000 +0200
-@@ -98,11 +98,23 @@
- int mutt_can_append_compressed (const char *path)
- {
- int magic;
-
- if (is_new (path))
-- return (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0);
-+ {
-+ char *dir_path = safe_strdup(path);
-+ char *aux = strrchr(dir_path, '/');
-+ int dir_valid = 1;
-+ if (aux)
-+ {
-+ *aux='\0';
-+ if (access(dir_path, W_OK|X_OK))
-+ dir_valid = 0;
-+ }
-+ safe_free((void**)&dir_path);
-+ return dir_valid && (find_compress_hook (M_CLOSEHOOK, path) ? 1 : 0);
-+ }
-
- magic = mx_get_magic (path);
-
- if (magic != 0 && magic != M_COMPRESSED)
- return 0;
-
+++ /dev/null
-# vi: ft=diff
-This is the current shortcut patch patch by Byrial Ole Jensen
-<byrial@image.dk>, updated by Christoph Berg <cb@df7cb.de>.
-
-The home page for this patch is:
-
- http://home.worldonline.dk/byrial/mutt/patches/ (original version)
- http://www.df7cb.de/projects/mutt/current_shortcut/ (.2 and above)
-
-* Patch last synced with upstream:
- - Date: 2004-10-02
- - File: http://www.df7cb.de/projects/mutt/current_shortcut/current-shortcut.2
-
-* Changes made: NONE.
-
-== END PATCH
-diff -urp ../MUTT/mutt/PATCHES mutt/PATCHES
---- ../MUTT/mutt/PATCHES 2002-12-09 18:44:54.000000000 +0100
-+++ mutt/PATCHES 2004-10-02 16:30:07.000000000 +0200
-@@ -0,0 +1 @@
-+patch-1.5.6.cb.current_shortcut.2
-diff -urp ../MUTT/mutt/curs_main.c mutt/curs_main.c
---- ../MUTT/mutt/curs_main.c 2004-04-12 23:51:07.000000000 +0200
-+++ mutt/curs_main.c 2004-10-02 16:12:33.000000000 +0200
-@@ -1064,6 +1064,7 @@ CHECK_IMAP_ACL(IMAP_ACL_DELETE);
- mutt_error (_("%s is not a mailbox."), buf);
- break;
- }
-+ mutt_str_replace (&CurrentFolder, buf);
-
- if (Context)
- {
-diff -urp ../MUTT/mutt/doc/manual.sgml.head mutt/doc/manual.sgml.head
---- ../MUTT/mutt/doc/manual.sgml.head 2004-07-21 13:33:04.000000000 +0200
-+++ mutt/doc/manual.sgml.head 2004-10-02 16:29:24.000000000 +0200
-@@ -2216,6 +2216,7 @@ path.
- <item>! -- refers to your <ref id="spoolfile" name="$spoolfile"> (incoming) mailbox
- <item>> -- refers to your <ref id="mbox" name="$mbox"> file
- <item>< -- refers to your <ref id="record" name="$record"> file
-+<item>^ -- refers to the current mailbox
- <item>- or !! -- refers to the file you've last visited
- <item>˜ -- refers to your home directory
- <item>= or + -- refers to your <ref id="folder" name="$folder"> directory
-diff -urp ../MUTT/mutt/globals.h mutt/globals.h
---- ../MUTT/mutt/globals.h 2004-09-04 13:31:21.000000000 +0200
-+++ mutt/globals.h 2004-10-02 16:03:23.000000000 +0200
-@@ -117,6 +117,7 @@ WHERE char *Tochars;
- WHERE char *Username;
- WHERE char *Visual;
-
-+WHERE char *CurrentFolder;
- WHERE char *LastFolder;
-
- WHERE LIST *AutoViewList INITVAL(0);
-diff -urp ../MUTT/mutt/main.c mutt/main.c
---- ../MUTT/mutt/main.c 2004-06-18 17:24:22.000000000 +0200
-+++ mutt/main.c 2004-10-02 16:12:33.000000000 +0200
-@@ -887,6 +887,7 @@ int main (int argc, char **argv)
- strfcpy (folder, NONULL(Spoolfile), sizeof (folder));
- mutt_expand_path (folder, sizeof (folder));
-
-+ mutt_str_replace (&CurrentFolder, folder);
- mutt_str_replace (&LastFolder, folder);
-
- if (flags & M_IGNORE)
-diff -urp ../MUTT/mutt/muttlib.c mutt/muttlib.c
---- ../MUTT/mutt/muttlib.c 2004-09-04 13:31:22.000000000 +0200
-+++ mutt/muttlib.c 2004-10-02 16:16:12.000000000 +0200
-@@ -452,6 +452,13 @@ char *_mutt_expand_path (char *s, size_t
- }
- break;
-
-+ case '^':
-+ {
-+ strfcpy (p, NONULL(CurrentFolder), sizeof (p));
-+ tail = s + 1;
-+ }
-+ break;
-+
- default:
- {
- *p = '\0';
+++ /dev/null
-# vi: ft=diff
-This is the edit threads patch by Cedric Duval <cedricduval+web@free.fr>.
-
-The home page for this patch is:
-
- http://cedricduval.free.fr/mutt/patches/#threads
-
-* Patch last synced with upstream:
- - Date: 2004-08-10
- - File: http://cedricduval.free.fr/mutt/patches/download/patch-1.5.5.1.cd.edit_threads.9.5
-
-* Changes made:
- - modified mutt.h part to apply cleanly.
- - removed diffs for the following files: acconfig.h, configure,
- configure.in, config.h.in.
-
-== END PATCH
-diff -pruN mutt-1.5.5.1-orig/OPS mutt-1.5.5.1/OPS
---- mutt-1.5.5.1-orig/OPS Wed Nov 5 10:41:31 2003
-+++ mutt-1.5.5.1/OPS Tue Nov 11 02:52:33 2003
-@@ -96,6 +96,7 @@ OP_LAST_ENTRY "move to the last entry"
- OP_LIST_REPLY "reply to specified mailing list"
- OP_MACRO "execute a macro"
- OP_MAIL "compose a new mail message"
-+OP_MAIN_BREAK_THREAD "break the thread in two"
- OP_MAIN_CHANGE_FOLDER "open a different folder"
- OP_MAIN_CHANGE_FOLDER_READONLY "open a different folder in read only mode"
- OP_MAIN_CLEAR_FLAG "clear a status flag from a message"
-@@ -105,6 +106,7 @@ OP_MAIN_FETCH_MAIL "retrieve mail from P
- OP_MAIN_FIRST_MESSAGE "move to the first message"
- OP_MAIN_LAST_MESSAGE "move to the last message"
- OP_MAIN_LIMIT "show only messages matching a pattern"
-+OP_MAIN_LINK_THREADS "link tagged message to the current one"
- OP_MAIN_NEXT_NEW "jump to the next new message"
- OP_MAIN_NEXT_NEW_THEN_UNREAD "jump to the next new or unread message"
- OP_MAIN_NEXT_SUBTHREAD "jump to the next subthread"
-diff -pruN mutt-1.5.5.1-orig/copy.c mutt-1.5.5.1/copy.c
---- mutt-1.5.5.1-orig/copy.c Wed Nov 5 10:41:31 2003
-+++ mutt-1.5.5.1/copy.c Tue Nov 11 02:52:33 2003
-@@ -95,6 +95,12 @@ mutt_copy_hdr (FILE *in, FILE *out, long
- (ascii_strncasecmp ("Content-Length:", buf, 15) == 0 ||
- ascii_strncasecmp ("Lines:", buf, 6) == 0))
- continue;
-+ if ((flags & CH_UPDATE_REFS) &&
-+ ascii_strncasecmp ("References:", buf, 11) == 0)
-+ continue;
-+ if ((flags & CH_UPDATE_IRT) &&
-+ ascii_strncasecmp ("In-Reply-To:", buf, 12) == 0)
-+ continue;
- ignore = 0;
- }
-
-@@ -193,6 +199,12 @@ mutt_copy_hdr (FILE *in, FILE *out, long
- ascii_strncasecmp ("type:", buf + 8, 5) == 0)) ||
- ascii_strncasecmp ("mime-version:", buf, 13) == 0))
- continue;
-+ if ((flags & CH_UPDATE_REFS) &&
-+ ascii_strncasecmp ("References:", buf, 11) == 0)
-+ continue;
-+ if ((flags & CH_UPDATE_IRT) &&
-+ ascii_strncasecmp ("In-Reply-To:", buf, 12) == 0)
-+ continue;
-
- /* Find x -- the array entry where this header is to be saved */
- if (flags & CH_REORDER)
-@@ -326,6 +338,8 @@ mutt_copy_hdr (FILE *in, FILE *out, long
- CH_XMIT ignore Lines: and Content-Length:
- CH_WEED do header weeding
- CH_NOQFROM ignore ">From " line
-+ CH_UPDATE_IRT update the In-Reply-To: header
-+ CH_UPDATE_REFS update the References: header
-
- prefix
- string to use if CH_PREFIX is set
-@@ -335,6 +349,9 @@ int
- mutt_copy_header (FILE *in, HEADER *h, FILE *out, int flags, const char *prefix)
- {
- char buffer[SHORT_STRING];
-+
-+ flags |= (h->irt_changed ? CH_UPDATE_IRT : 0)
-+ | (h->refs_changed ? CH_UPDATE_REFS : 0);
-
- if (mutt_copy_hdr (in, out, h->offset, h->content->offset, flags, prefix) == -1)
- return (-1);
-@@ -358,7 +375,56 @@ mutt_copy_header (FILE *in, HEADER *h, F
- if (flags & CH_UPDATE)
- {
- if ((flags & CH_NOSTATUS) == 0)
-+#ifdef IMAP_EDIT_THREADS
-+#define NEW_ENV new_env
-+#else
-+#define NEW_ENV env
-+#endif
- {
-+ if (h->irt_changed && h->NEW_ENV->in_reply_to)
-+ {
-+ LIST *listp = h->NEW_ENV->in_reply_to;
-+
-+ if (fputs ("In-Reply-To: ", out) == EOF)
-+ return (-1);
-+
-+ for (; listp; listp = listp->next)
-+ if ((fputs (listp->data, out) == EOF) || (fputc (' ', out) == EOF))
-+ return (-1);
-+
-+ if (fputc ('\n', out) == EOF)
-+ return (-1);
-+ }
-+
-+ if (h->refs_changed && h->NEW_ENV->references)
-+ {
-+ LIST *listp = h->NEW_ENV->references, *refs = NULL, *t;
-+
-+ if (fputs ("References: ", out) == EOF)
-+ return (-1);
-+
-+ /* Mutt stores references in reverse order, thus we create
-+ * a reordered refs list that we can put in the headers */
-+ for (; listp; listp = listp->next, refs = t)
-+ {
-+ t = (LIST *)safe_malloc (sizeof (LIST));
-+ t->data = listp->data;
-+ t->next = refs;
-+ }
-+
-+ for (; refs; refs = refs->next)
-+ if ((fputs (refs->data, out) == EOF) || (fputc (' ', out) == EOF))
-+ return (-1);
-+
-+ /* clearing refs from memory */
-+ for (t = refs; refs; refs = t->next, t = refs)
-+ safe_free ((void **)&refs);
-+
-+ if (fputc ('\n', out) == EOF)
-+ return (-1);
-+ }
-+#undef NEW_ENV
-+
- if (h->old || h->read)
- {
- if (fputs ("Status: ", out) == EOF)
-diff -pruN mutt-1.5.5.1-orig/curs_main.c mutt-1.5.5.1/curs_main.c
---- mutt-1.5.5.1-orig/curs_main.c Wed Nov 5 10:41:31 2003
-+++ mutt-1.5.5.1/curs_main.c Tue Nov 11 02:52:33 2003
-@@ -930,6 +930,11 @@ CHECK_IMAP_ACL(IMAP_ACL_DELETE);
- else
- {
- mutt_set_flag (Context, CURHDR, M_TAG, !CURHDR->tagged);
-+
-+ Context->last_tag = CURHDR->tagged ? CURHDR :
-+ ((Context->last_tag == CURHDR && !CURHDR->tagged)
-+ ? NULL : Context->last_tag);
-+
- menu->redraw = REDRAW_STATUS;
- if (option (OPTRESOLVE) && menu->current < Context->vcount - 1)
- {
-@@ -1162,6 +1167,89 @@ CHECK_IMAP_ACL(IMAP_ACL_DELETE);
- }
- done = 1;
- }
-+ break;
-+
-+ case OP_MAIN_BREAK_THREAD:
-+
-+ CHECK_MSGCOUNT;
-+ CHECK_VISIBLE;
-+ CHECK_READONLY;
-+
-+ if ((Sort & SORT_MASK) != SORT_THREADS)
-+ mutt_error _("Threading is not enabled.");
-+
-+#if defined (USE_IMAP) && ! defined (IMAP_EDIT_THREADS)
-+ else if (Context->magic == M_IMAP)
-+ mutt_error _("Compile Mutt with --enable-imap-edit-threads for break-thread support");
-+#endif
-+
-+ else
-+ {
-+ {
-+ HEADER *oldcur = CURHDR;
-+
-+ mutt_break_thread (CURHDR);
-+ mutt_sort_headers (Context, 1);
-+ menu->current = oldcur->virtual;
-+ }
-+
-+ Context->changed = 1;
-+ mutt_message _("Thread broken");
-+
-+ if (menu->menu == MENU_PAGER)
-+ {
-+ op = OP_DISPLAY_MESSAGE;
-+ continue;
-+ }
-+ else
-+ menu->redraw |= REDRAW_INDEX;
-+ }
-+
-+ break;
-+
-+ case OP_MAIN_LINK_THREADS:
-+
-+ CHECK_MSGCOUNT;
-+ CHECK_VISIBLE;
-+ CHECK_READONLY;
-+
-+ if ((Sort & SORT_MASK) != SORT_THREADS)
-+ mutt_error _("Threading is not enabled.");
-+
-+#if defined (USE_IMAP) && ! defined (IMAP_EDIT_THREADS)
-+ else if (Context->magic == M_IMAP)
-+ mutt_error _("Compile Mutt with --enable-imap-edit-threads for link-threads support");
-+#endif
-+
-+ else if (!CURHDR->env->message_id)
-+ mutt_error _("No Message-ID: header available to link thread");
-+ else if (!tag && (!Context->last_tag || !Context->last_tag->tagged))
-+ mutt_error _("First, please tag a message to be linked here");
-+ else
-+ {
-+ HEADER *oldcur = CURHDR;
-+
-+ if (mutt_link_threads (CURHDR, tag ? NULL : Context->last_tag,
-+ Context))
-+ {
-+ mutt_sort_headers (Context, 1);
-+ menu->current = oldcur->virtual;
-+
-+ Context->changed = 1;
-+ mutt_message _("Threads linked");
-+ }
-+ else
-+ mutt_error _("No thread linked");
-+ }
-+
-+ if (menu->menu == MENU_PAGER)
-+ {
-+ op = OP_DISPLAY_MESSAGE;
-+ continue;
-+ }
-+ else
-+ menu->redraw |= REDRAW_STATUS | REDRAW_INDEX;
-+
- break;
-
- case OP_EDIT_TYPE:
-diff -pruN mutt-1.5.5.1-orig/doc/manual.sgml.head mutt-1.5.5.1/doc/manual.sgml.head
---- mutt-1.5.5.1-orig/doc/manual.sgml.head Wed Nov 5 10:41:34 2003
-+++ mutt-1.5.5.1/doc/manual.sgml.head Tue Nov 11 02:52:33 2003
-@@ -2170,8 +2170,43 @@ used a threaded news client, this is the
- with large volume mailing lists easier because you can easily delete
- uninteresting threads and quickly find topics of value.
-
-+<sect1>Editing threads
-+<p>
-+Mutt has the ability to dynamically restructure threads that are broken
-+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>
-+
-+Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
-+"References:" headers when replying to a message. This results in broken
-+discussions because Mutt has not enough information to guess the correct
-+threading.
-+You can fix this by tagging the reply, then moving to the parent message
-+and using the ``link-threads'' function (bound to & by default). The
-+reply will then be connected to this "parent" message.
-+
-+You can also connect multiple childs at once, tagging them and using the
-+tag-prefix command (';') or the auto_tag option.
-+
-+<sect2>Breaking threads
-+<p>
-+
-+On mailing lists, some people are in the bad habit of starting a new
-+discussion by hitting "reply" to any message from the list and changing
-+the subject to a totally unrelated one.
-+You can fix such threads by using the ``break-thread'' function (bound
-+by default to #), which will turn the subthread starting from the
-+current message into a whole different thread.
-+
- <sect1>Delivery Status Notification (DSN) Support
- <p>
-+
- RFC1894 defines a set of MIME content types for relaying information
- about the status of electronic mail messages. These can be thought of as
- ``return receipts.'' Berkeley sendmail 8.8.x currently has some command
-diff -pruN mutt-1.5.5.1-orig/functions.h mutt-1.5.5.1/functions.h
---- mutt-1.5.5.1-orig/functions.h Wed Nov 5 10:41:31 2003
-+++ mutt-1.5.5.1/functions.h Tue Nov 11 02:52:33 2003
-@@ -69,6 +69,7 @@ struct binding_t OpGeneric[] = {
- struct binding_t OpMain[] = {
- { "create-alias", OP_CREATE_ALIAS, "a" },
- { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
-+ { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
- { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
- { "change-folder-readonly", OP_MAIN_CHANGE_FOLDER_READONLY, "\033c" },
- { "collapse-thread", OP_MAIN_COLLAPSE_THREAD, "\033v" },
-@@ -95,6 +96,7 @@ struct binding_t OpMain[] = {
- { "next-undeleted", OP_MAIN_NEXT_UNDELETED, "j" },
- { "previous-undeleted", OP_MAIN_PREV_UNDELETED, "k" },
- { "limit", OP_MAIN_LIMIT, "l" },
-+ { "link-threads", OP_MAIN_LINK_THREADS, "&" },
- { "list-reply", OP_LIST_REPLY, "L" },
- { "mail", OP_MAIL, "m" },
- { "toggle-new", OP_TOGGLE_NEW, "N" },
-@@ -153,6 +155,7 @@ struct binding_t OpMain[] = {
- };
-
- struct binding_t OpPager[] = {
-+ { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
- { "create-alias", OP_CREATE_ALIAS, "a" },
- { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
- { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
-@@ -175,6 +178,7 @@ struct binding_t OpPager[] = {
- { "next-entry", OP_NEXT_ENTRY, "J" },
- { "previous-undeleted",OP_MAIN_PREV_UNDELETED, "k" },
- { "previous-entry", OP_PREV_ENTRY, "K" },
-+ { "link-threads", OP_MAIN_LINK_THREADS, "&" },
- { "list-reply", OP_LIST_REPLY, "L" },
- { "redraw-screen", OP_REDRAW, "\014" },
- { "mail", OP_MAIL, "m" },
-diff -pruN mutt-1.5.5.1-orig/imap/imap.c mutt-1.5.5.1/imap/imap.c
---- mutt-1.5.5.1-orig/imap/imap.c Wed Nov 5 10:41:36 2003
-+++ mutt-1.5.5.1/imap/imap.c Tue Nov 11 02:52:33 2003
-@@ -980,9 +980,11 @@ int imap_sync_mailbox (CONTEXT* ctx, int
- mutt_buffer_addstr (&cmd, "UID STORE ");
- mutt_buffer_addstr (&cmd, uid);
-
-- /* if attachments have been deleted we delete the message and reupload
-- * it. This works better if we're expunging, of course. */
-- if (ctx->hdrs[n]->attach_del)
-+ /* if the message has been rethreaded or attachments have been deleted
-+ * we delete the message and reupload it.
-+ * This works better if we're expunging, of course. */
-+ if (ctx->hdrs[n]->refs_changed || ctx->hdrs[n]->irt_changed ||
-+ ctx->hdrs[n]->attach_del)
- {
- dprint (3, (debugfile, "imap_sync_mailbox: Attachments to be deleted, falling back to _mutt_save_message\n"));
- if (!appendctx)
-diff -pruN mutt-1.5.5.1-orig/main.c mutt-1.5.5.1/main.c
---- mutt-1.5.5.1-orig/main.c Tue Mar 4 08:49:48 2003
-+++ mutt-1.5.5.1/main.c Tue Nov 11 02:52:33 2003
-@@ -228,6 +228,12 @@ static void show_version (void)
- "-USE_IMAP "
- #endif
-
-+#ifdef IMAP_EDIT_THREADS
-+ "+IMAP_EDIT_THREADS "
-+#else
-+ "-IMAP_EDIT_THREADS "
-+#endif
-+
- #ifdef USE_GSS
- "+USE_GSS "
- #else
-diff -pruN mutt-1.5.5.1-orig/mh.c mutt-1.5.5.1/mh.c
---- mutt-1.5.5.1-orig/mh.c Wed Nov 5 10:41:32 2003
-+++ mutt-1.5.5.1/mh.c Tue Nov 11 02:52:33 2003
-@@ -1220,7 +1220,7 @@ static int mh_sync_message (CONTEXT * ct
- {
- HEADER *h = ctx->hdrs[msgno];
-
-- if (h->attach_del)
-+ if (h->attach_del || h->refs_changed || h->irt_changed)
- if (mh_rewrite_message (ctx, msgno) != 0)
- return -1;
-
-@@ -1231,9 +1231,9 @@ static int maildir_sync_message (CONTEXT
- {
- HEADER *h = ctx->hdrs[msgno];
-
-- if (h->attach_del)
-+ if (h->attach_del || h->refs_changed || h->irt_changed)
- {
-- /* when doing attachment deletion, fall back to the MH case. */
-+ /* when doing attachment deletion/rethreading, fall back to the MH case. */
- if (mh_rewrite_message (ctx, msgno) != 0)
- return (-1);
- }
-diff -pruN mutt-1.5.5.1-orig/mutt.h mutt-1.5.5.1/mutt.h
---- mutt-1.5.5.1-orig/mutt.h Wed Nov 5 10:41:32 2003
-+++ mutt-1.5.5.1/mutt.h Tue Nov 11 02:52:33 2003
-@@ -92,6 +92,8 @@
- #define CH_WEED_DELIVERED (1<<13) /* weed eventual Delivered-To headers */
- #define CH_FORCE_FROM (1<<14) /* give CH_FROM precedence over CH_WEED? */
- #define CH_NOQFROM (1<<15) /* give CH_FROM precedence over CH_WEED? */
-+#define CH_UPDATE_IRT (1<<16) /* update In-Reply-To: */
-+#define CH_UPDATE_REFS (1<<17) /* update References: */
-
- /* flags for mutt_enter_string() */
- #define M_ALIAS 1 /* do alias "completion" by calling up the alias-menu */
-@@ -506,8 +508,9 @@ typedef struct list_t
-
- #define mutt_new_list() safe_calloc (1, sizeof (LIST))
- void mutt_free_list (LIST **);
- void mutt_free_rx_list (RX_LIST **);
- void mutt_free_spam_list (SPAM_LIST **);
-+LIST *mutt_copy_list (LIST *);
- int mutt_matches_ignore (const char *, LIST *);
-
- /* add an element to a list */
-@@ -647,6 +650,8 @@ typedef struct header
- unsigned int subject_changed : 1; /* used for threading */
- unsigned int threaded : 1; /* used for threading */
- unsigned int display_subject : 1; /* used for threading */
-+ unsigned int irt_changed : 1; /* In-Reply-To changed to link/break threads */
-+ unsigned int refs_changed : 1; /* References changed to break thread */
- unsigned int recip_valid : 1; /* is_recipient is valid */
- unsigned int active : 1; /* message is not to be removed */
- unsigned int trash : 1; /* message is marked as trashed on disk.
-@@ -687,6 +692,10 @@ typedef struct header
- char *tree; /* character string to print thread tree */
- struct thread *thread;
-
-+#ifdef IMAP_EDIT_THREADS
-+ ENVELOPE *new_env; /* envelope information for rethreading */
-+#endif
-+
- #ifdef MIXMASTER
- LIST *chain;
- #endif
-@@ -752,6 +761,7 @@ typedef struct
- char *pattern; /* limit pattern string */
- pattern_t *limit_pattern; /* compiled limit pattern */
- HEADER **hdrs;
-+ HEADER *last_tag; /* last tagged msg. used to link threads */
- THREAD *tree; /* top of thread tree */
- HASH *id_hash; /* hash table by msg id */
- HASH *subj_hash; /* hash table by subject */
-diff -pruN mutt-1.5.5.1-orig/mx.c mutt-1.5.5.1/mx.c
---- mutt-1.5.5.1-orig/mx.c Wed Nov 5 10:41:32 2003
-+++ mutt-1.5.5.1/mx.c Tue Nov 11 02:52:33 2003
-@@ -1161,6 +1161,8 @@ int mx_sync_mailbox (CONTEXT *ctx, int *
- ctx->deleted = 0;
- }
- }
-+ else if (ctx->last_tag && ctx->last_tag->deleted)
-+ ctx->last_tag = NULL; /* reset last tagged msg now useless */
- }
-
- /* really only for IMAP - imap_sync_mailbox results in a call to
-diff -pruN mutt-1.5.5.1-orig/pager.c mutt-1.5.5.1/pager.c
---- mutt-1.5.5.1-orig/pager.c Wed Nov 5 10:41:32 2003
-+++ mutt-1.5.5.1/pager.c Tue Nov 11 02:52:33 2003
-@@ -2481,6 +2481,11 @@ CHECK_IMAP_ACL(IMAP_ACL_WRITE);
- case OP_TAG:
- CHECK_MODE(IsHeader (extra));
- mutt_set_flag (Context, extra->hdr, M_TAG, !extra->hdr->tagged);
-+
-+ Context->last_tag = extra->hdr->tagged ? extra->hdr :
-+ ((Context->last_tag == extra->hdr && !extra->hdr->tagged)
-+ ? NULL : Context->last_tag);
-+
- redraw = REDRAW_STATUS | REDRAW_INDEX;
- if (option (OPTRESOLVE))
- {
-diff -pruN mutt-1.5.5.1-orig/protos.h mutt-1.5.5.1/protos.h
---- mutt-1.5.5.1-orig/protos.h Wed Nov 5 10:41:33 2003
-+++ mutt-1.5.5.1/protos.h Tue Nov 11 02:52:33 2003
-@@ -146,6 +146,7 @@ void mutt_block_signals (void);
- void mutt_block_signals_system (void);
- void mutt_body_handler (BODY *, STATE *);
- int mutt_bounce_message (FILE *fp, HEADER *, ADDRESS *);
-+void mutt_break_thread (HEADER *);
- void mutt_buffy (char *, size_t);
- int mutt_buffy_list (void);
- void mutt_canonical_charset (char *, size_t, const char *);
-@@ -286,6 +287,7 @@ int mutt_is_list_recipient (int, ADDRESS
- int mutt_is_subscribed_list (ADDRESS *);
- int mutt_is_text_part (BODY *);
- int mutt_is_valid_mailbox (const char *);
-+int mutt_link_threads (HEADER *, HEADER *, CONTEXT *);
- int mutt_lookup_mime_type (BODY *, const char *);
- int mutt_messages_in_thread (CONTEXT *, HEADER *, int);
- int mutt_multi_choice (char *prompt, char *letters);
-diff -pruN mutt-1.5.5.1-orig/thread.c mutt-1.5.5.1/thread.c
---- mutt-1.5.5.1-orig/thread.c Wed Nov 5 10:41:34 2003
-+++ mutt-1.5.5.1/thread.c Tue Nov 11 02:52:33 2003
-@@ -1333,3 +1333,105 @@ HASH *mutt_make_subj_hash (CONTEXT *ctx)
-
- return hash;
- }
-+
-+static void clean_references (THREAD *brk, THREAD *cur)
-+{
-+ THREAD *p;
-+ LIST *ref = NULL;
-+ int done = 0;
-+
-+ for (; cur; cur = cur->next, done = 0)
-+ {
-+ /* parse subthread recursively */
-+ clean_references (brk, cur->child);
-+
-+ if (!cur->message)
-+ break; /* skip pseudo-message */
-+
-+ /* Looking for the first bad reference according to the new threading.
-+ * Optimal since Mutt stores the references in reverse order, and the
-+ * first loop should match immediatly for mails respecting RFC2822. */
-+ for (p = brk; !done && p; p = p->parent)
-+ for (ref = cur->message->env->references; p->message && ref; ref = ref->next)
-+ if (!mutt_strcasecmp (ref->data, p->message->env->message_id))
-+ {
-+ done = 1;
-+ break;
-+ }
-+
-+ if (done)
-+ {
-+ HEADER *h = cur->message;
-+
-+ /* clearing the References: header from obsolete Message-Id(s) */
-+ mutt_free_list (&ref->next);
-+
-+#ifdef IMAP_EDIT_THREADS
-+ if (h->new_env)
-+ mutt_free_list (&h->new_env->references);
-+ else
-+ h->new_env = mutt_new_envelope ();
-+
-+ h->new_env->references = mutt_copy_list (h->env->references);
-+#endif
-+
-+ h->refs_changed = h->changed = 1;
-+ }
-+ }
-+}
-+
-+void mutt_break_thread (HEADER *hdr)
-+{
-+ mutt_free_list (&hdr->env->in_reply_to);
-+ mutt_free_list (&hdr->env->references);
-+ hdr->irt_changed = hdr->refs_changed = hdr->changed = 1;
-+
-+#ifdef IMAP_EDIT_THREADS
-+ if (hdr->new_env)
-+ {
-+ mutt_free_list (&hdr->new_env->in_reply_to);
-+ mutt_free_list (&hdr->new_env->references);
-+ }
-+ else
-+ hdr->new_env = mutt_new_envelope ();
-+#endif
-+
-+ clean_references (hdr->thread, hdr->thread->child);
-+}
-+
-+static int link_threads (HEADER *parent, HEADER *child, CONTEXT *ctx)
-+{
-+ if (child == parent)
-+ return 0;
-+
-+ mutt_break_thread (child);
-+
-+ child->env->in_reply_to = mutt_new_list ();
-+ child->env->in_reply_to->data = safe_strdup (parent->env->message_id);
-+
-+#ifdef IMAP_EDIT_THREADS
-+ child->new_env->in_reply_to = mutt_new_list ();
-+ child->new_env->in_reply_to->data = safe_strdup (parent->env->message_id);
-+#endif
-+
-+ mutt_set_flag (ctx, child, M_TAG, 0);
-+
-+ child->irt_changed = child->changed = 1;
-+ return 1;
-+}
-+
-+int mutt_link_threads (HEADER *cur, HEADER *last, CONTEXT *ctx)
-+{
-+ int i, changed = 0;
-+
-+ if (!last)
-+ {
-+ for (i = 0; i < ctx->vcount; i++)
-+ if (ctx->hdrs[Context->v2r[i]]->tagged)
-+ changed |= link_threads (cur, ctx->hdrs[Context->v2r[i]], ctx);
-+ }
-+ else
-+ changed = link_threads (cur, last, ctx);
-+
-+ return changed;
-+}
-diff -pruN mutt-1.5.5.1-orig/PATCHES mutt-1.5.5.1/PATCHES
---- mutt-1.5.5.1-orig/PATCHES Tue Apr 15 15:18:34 2003
-+++ mutt-1.5.5.1/PATCHES Tue Nov 11 02:52:33 2003
-@@ -1,0 +1 @@
-+patch-1.5.5.1.cd.edit_threads.9.5
+++ /dev/null
---- a/debian-config.h
-+++ b/debian-config.h
-@@ -0,0 +1 @@
-+#define IMAP_EDIT_THREADS 1
+++ /dev/null
-# vi: ft=diff
-This is the incomplete multibyte patch by Anders Helmersson
-<anders.helmersson@telia.com>.
-
-It was received at Debian's BTS, Bug#260623.
-
-* Patch last synced with upstream:
- - Date: 2004-07-22
- - File: http://bugs.debian.org/cgi-bin/bugreport.cgi/patch-incomplete_multibyte-2?bug=260623&msg=3&att=1
-
-* Changes made:
- - 2004-07-22: added entry to PATCHES file.
- - 2004-07-22: adjusted paths in the diff (to apply with patch -p1).
-
-== END PATCH
-Index: pager.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/pager.c,v
-retrieving revision 3.16
-diff -u -r3.16 pager.c
---- a/pager.c 12 Jul 2004 13:35:27 -0000 3.16
-+++ b/pager.c 21 Jul 2004 08:10:06 -0000
-@@ -972,6 +972,9 @@
- unsigned char *p;
- static int b_read;
-
-+ size_t k, n;
-+ wchar_t wc;
-+
- if (*buf_ready == 0)
- {
- buf[blen - 1] = 0;
-@@ -986,6 +989,18 @@
- b_read = (int) (*last_pos - offset);
- *buf_ready = 1;
-
-+ /* trim tail of buf so that it contains complete multibyte characters */
-+ for (n = b_read, p = buf; n > 0; p += k, n -= k)
-+ {
-+ k = mbrtowc (&wc, (char *) p, n, NULL);
-+ if (k == -2)
-+ break;
-+ else if (k == -1 || k == 0)
-+ k = 1;
-+ }
-+ b_read -= n;
-+ buf[b_read] = 0;
-+
- /* copy "buf" to "fmt", but without bold and underline controls */
- p = buf;
- while (*p)
---- mutt.orig/PATCHES 1970-01-01 01:00:00.000000000 +0100
-+++ mutt/PATCHES 2003-08-09 15:51:11.000000000 +0200
-@@ -1,0 +1 @@
-+patch.helmersson.incomplete-mbyte.2
+++ /dev/null
-# vi: ft=diff
-This is the maildir mtime patch by Dale Woolridge.
-
-The home page for this patch is:
-
- http://www.mutt.ca/maildir-mtime.html
-
-* Patch last synced with upstream:
- - Date: 2004-08-10
- - File: http://www.mutt.ca/patches/patch-1.5.6.dw.maildir-mtime.1
-
-* Changes made:
- - removed a spurious const in add_folder() definition.
- - added a $maildir_mtime option to allow this patch to be disabled at
- runtime (see Bug#253261, comments from Zephaniah E. Hull).
-
-== END PATCH
---- maildir-mtime/PATCHES Dec 2002 17:44:54 -0000 3.6
-+++ maildir-mtime/PATCHES Feb 2004 13:19:42 -0000
-@@ -0,0 +1 @@
-+patch-1.5.6.dw.maildir-mtime.1
---- maildir-mtime/browser.c Sep 2003 13:03:25 -0000 3.9
-+++ maildir-mtime/browser.c Feb 2004 13:19:42 -0000
-@@ -29,2 +29,3 @@
- #endif
-+#include "mx.h"
-
-@@ -304,4 +305,6 @@ folder_format_str (char *dest, size_t de
- static void add_folder (MUTTMENU *m, struct browser_state *state,
-- const char *name, const struct stat *s, int new)
-+ const char *name, /*DEB const IAN*/ struct stat *s, BUFFY *mbuf)
- {
-+ int new = (mbuf) ? mbuf->new : 0;
-+
- if (state->entrylen == state->entrymax)
-@@ -317,2 +320,5 @@ static void add_folder (MUTTMENU *m, str
-
-+ if (mbuf && mbuf->magic == M_MAILDIR && mbuf->mtime)
-+ s->st_mtime = mbuf->mtime;
-+
- if (s != NULL)
-@@ -411,3 +417,3 @@ static int examine_directory (MUTTMENU *
- tmp = tmp->next;
-- add_folder (menu, state, de->d_name, &s, (tmp) ? tmp->new : 0);
-+ add_folder (menu, state, de->d_name, &s, tmp);
- }
-@@ -435,3 +441,3 @@ static int examine_mailboxes (MUTTMENU *
- {
-- add_folder (menu, state, tmp->path, NULL, tmp->new);
-+ add_folder (menu, state, tmp->path, NULL, tmp);
- continue;
-@@ -442,3 +448,3 @@ static int examine_mailboxes (MUTTMENU *
- {
-- add_folder (menu, state, tmp->path, NULL, tmp->new);
-+ add_folder (menu, state, tmp->path, NULL, tmp);
- continue;
-@@ -456,3 +462,3 @@ static int examine_mailboxes (MUTTMENU *
-
-- add_folder (menu, state, buffer, &s, tmp->new);
-+ add_folder (menu, state, buffer, &s, tmp);
- }
---- maildir-mtime/buffy.c Feb 2004 17:50:43 -0000 3.9
-+++ maildir-mtime/buffy.c Feb 2004 13:19:42 -0000
-@@ -229,2 +229,3 @@ int mutt_parse_mailboxes (BUFFER *path,
- (*tmp)->newly_created = 0;
-+ (*tmp)->mtime = 0;
-
-@@ -260,2 +261,3 @@ int mutt_buffy_check (int force)
- struct stat sb;
-+ struct stat smd;
- struct dirent *de;
-@@ -299,2 +301,3 @@ int mutt_buffy_check (int force)
- tmp->new = 0;
-+ tmp->mtime = 0;
-
-@@ -383,6 +386,13 @@ int mutt_buffy_check (int force)
- {
-- /* one new and undeleted message is enough */
-- BuffyCount++;
-- tmp->new = 1;
-- break;
-+ if (!tmp->new)
-+ {
-+ /* one new and undeleted message is enough */
-+ BuffyCount++;
-+ tmp->new = 1;
-+ }
-+ snprintf (path, sizeof (path), "%s/new/%s", tmp->path, de->d_name);
-+ if (!stat (path, &smd) && smd.st_mtime > tmp->mtime)
-+ {
-+ tmp->mtime = smd.st_mtime;
-+ }
- }
---- maildir-mtime/buffy.h Dec 2002 11:19:39 -0000 3.2
-+++ maildir-mtime/buffy.h Feb 2004 13:19:42 -0000
-@@ -29,2 +29,3 @@ typedef struct buffy_t
- struct buffy_t *next;
-+ time_t mtime; /* for maildirs...time of newest entry */
- short new; /* mailbox has new mail */
---- DEBIAN/buffy.c
-+++ DEBIAN/buffy.c.new
-@@ -389,6 +389,9 @@
- /* one new and undeleted message is enough */
- BuffyCount++;
- tmp->new = 1;
-+
-+ if (! option (OPTMAILDIRMTIME)) /* prevent stat calls */
-+ break;
- }
- snprintf (path, sizeof (path), "%s/new/%s", tmp->path, de->d_name);
- if (!stat (path, &smd) && smd.st_mtime > tmp->mtime)
---- DEBIAN/init.h
-+++ DEBIAN/init.h.new
-@@ -1022,6 +1022,16 @@
- ** \fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
- ** DOING!\fP
- */
-+ { "maildir_mtime", DT_BOOL, R_NONE, OPTMAILDIRMTIME, 0 },
-+ /*
-+ ** .pp
-+ ** If set, the sort-by-date option in the browser will sort maildirs
-+ ** smartly, not using the mtime of the maildir itself but that of the
-+ ** newest message in the new subdirectory, making the sorting by
-+ ** reverse date much more useful. People with maildirs over NFS may
-+ ** wish to leave this option unset.
-+ **
-+ */
- #if USE_HCACHE
-
- { "header_cache", DT_PATH, R_NONE, UL &HeaderCache, 0 },
---- DEBIAN/mutt.h
-+++ DEBIAN/mutt.h.new
-@@ -396,6 +396,7 @@
- OPTINCLUDEONLYFIRST,
- OPTKEEPFLAGGED,
- OPTMAILCAPSANITIZE,
-+ OPTMAILDIRMTIME,
- OPTMAILDIRTRASH,
- OPTMARKERS,
- OPTMARKOLD,
+++ /dev/null
-Index: mutt/ChangeLog
-===================================================================
-RCS file: /home/roessler/cvs/mutt/ChangeLog,v
-retrieving revision 3.406
-retrieving revision 3.420
-diff -u -p -r3.406 -r3.420
---- mutt/ChangeLog 13 Mar 2005 16:29:39 -0000 3.406
-+++ mutt/ChangeLog 3 Apr 2005 00:15:36 -0000 3.420
-@@ -1,3 +1,78 @@
-+2005-04-03 00:14:51 Daniel Jacobowitz <dan@debian.org> (brendan)
-+
-+ * imap/imap.c, imap/imap_private.h, imap/message.c: Synchronise
-+ message flags before moving messages.
-+
-+2005-03-31 04:55:09 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (brendan)
-+
-+ * mh.c: Another hcache cygwin portability fix.
-+
-+2005-03-23 10:51:11 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
-+
-+ * init.h, mh.c, mutt.h: Maildir header cache.
-+
-+2005-03-22 19:58:15 Horst Schirmeier <horst@schirmeier.com> (roessler)
-+
-+ * Makefile.am: Use install-exec-hook install of
-+ install-exec-local.
-+
-+2005-03-22 19:53:49 Ronny Haryanto <ronnylist@haryan.to> (roessler)
-+
-+ * po/id.po: update
-+
-+2005-03-22 19:49:31 René Clerc <rene@clerc.nl> (roessler)
-+
-+ * po/nl.po: update
-+
-+2005-03-22 19:48:35 Roland Rosenfeld <roland@spinnaker.de> (roessler)
-+
-+ * po/de.po: update
-+
-+2005-03-22 19:46:59 Paul Walker <paul@black-sun.demon.co.uk> (roessler)
-+
-+ * init.c, init.h: remove some unused functions.
-+
-+2005-03-22 19:43:13 Vsevolod Volkov <vvv@mutt.org.ua> (roessler)
-+
-+ * po/ru.po: update
-+
-+2005-03-22 03:40:54 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (brendan)
-+
-+ * hcache.c, imap/imap.c, imap/imap_private.h, imap/message.c,
-+ protos.h: Thomas graces us with this patch that resolves a
-+ type-size inconsistency in the UIDVALIDITY parser.
-+
-+ Edited for correctness.
-+
-+2005-03-17 09:30:06 Pawel Dziekonski <pawel.dziekonski@pwr.wroc.pl> (roessler)
-+
-+ * po/pl.po: update
-+
-+2005-03-16 07:01:59 Brendan Cully <brendan@kublai.com> (brendan)
-+
-+ * doc/Makefile.in: As Ralf Wildenhues noted, the cygwin EXEEXT
-+ patch was incomplete. Note to self: avoid patching on short
-+ sleep. Starting tomorrow.
-+
-+2005-03-16 02:49:33 Brendan Cully <brendan@kublai.com> (brendan)
-+
-+ * configure.in, doc/Makefile.in, hcache.c, Makefile.am: Various
-+ cygwin portability fixes
-+
-+2005-03-15 04:40:40 Brendan Cully <brendan@kublai.com> (brendan)
-+
-+ * crypthash.h: Don't define uint32_t anywhere but in
-+ config.h. Spotted by Alain Bench.
-+
-+2005-03-13 16:35:35 roessler (roessler)
-+
-+ * po/sv.po, po/tr.po, po/uk.po, po/zh_CN.po, po/zh_TW.po,
-+ po/id.po, po/it.po, po/ja.po, po/ko.po, po/lt.po, po/nl.po,
-+ po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, VERSION, po/bg.po,
-+ po/ca.po, po/cs.po, po/da.po, po/de.po, po/el.po, po/eo.po,
-+ po/es.po, po/et.po, po/fr.po, po/gl.po, po/hu.po, reldate.h:
-+ automatic post-release commit for mutt-1.5.9
-+
- 2005-03-13 16:29:09 Morten Bo Johansen <mojo@mbjnet.dk> (roessler)
-
- * po/da.po: update
-@@ -330,7 +405,7 @@
- 2005-01-29 19:15:07 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
-
- * hcache.c: - make hcache.c conform to mutt codingstyle
-- - use $Id: ChangeLog,v 3.406 2005/03/13 16:29:39 roessler Exp $ CVS keyword instead of %K% BitKeeper keyword
-+ - use $Id: ChangeLog,v 3.420 2005/04/03 00:15:36 brendan Exp $ CVS keyword instead of %K% BitKeeper keyword
-
- 2005-01-29 19:15:07 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
-
-Index: mutt/Makefile.am
-===================================================================
-RCS file: /home/roessler/cvs/mutt/Makefile.am,v
-retrieving revision 3.32
-retrieving revision 3.34
-diff -u -p -r3.32 -r3.34
---- mutt/Makefile.am 13 Feb 2005 09:53:07 -0000 3.32
-+++ mutt/Makefile.am 22 Mar 2005 19:58:15 -0000 3.34
-@@ -2,7 +2,7 @@
- ## Use aclocal -I m4; automake --foreign
-
- AUTOMAKE_OPTIONS = 1.6 foreign
--EXTRA_PROGRAMS = mutt_dotlock pgpring makedoc
-+EXTRA_PROGRAMS = mutt_dotlock pgpring pgpewrap makedoc
-
- if BUILD_IMAP
- IMAP_SUBDIR = imap
-@@ -127,7 +127,7 @@ reldate:
- patchlist.c: $(srcdir)/PATCHES $(srcdir)/patchlist.sh
- $(srcdir)/patchlist.sh < $(srcdir)/PATCHES > patchlist.c
-
--install-exec-local:
-+install-exec-hook:
- if test -f $(DESTDIR)$(bindir)/mutt.dotlock && test -f $(DESTDIR)$(bindir)/mutt_dotlock ; then \
- rm -f $(DESTDIR)$(bindir)/mutt.dotlock ; \
- ln -sf $(DESTDIR)$(bindir)/mutt_dotlock $(DESTDIR)$(bindir)/mutt.dotlock ; \
-Index: mutt/configure.in
-===================================================================
-RCS file: /home/roessler/cvs/mutt/configure.in,v
-retrieving revision 3.24
-retrieving revision 3.25
-diff -u -p -r3.24 -r3.25
---- mutt/configure.in 13 Feb 2005 00:25:37 -0000 3.24
-+++ mutt/configure.in 16 Mar 2005 02:49:33 -0000 3.25
-@@ -129,7 +129,7 @@ else
- if test x$have_pgp != xno ; then
- AC_DEFINE(CRYPT_BACKEND_CLASSIC_PGP,1,
- [ Define if you want classic PGP support. ])
-- PGPAUX_TARGET="pgpring pgpewrap"
-+ PGPAUX_TARGET="pgpring\$(EXEEXT) pgpewrap\$(EXEEXT)"
- MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS pgp.o pgpinvoke.o pgpkey.o pgplib.o gnupgparse.o pgpmicalg.o pgppacket.o crypt-mod-pgp-classic.o"
- fi
-
-Index: mutt/crypthash.h
-===================================================================
-RCS file: /home/roessler/cvs/mutt/crypthash.h,v
-retrieving revision 3.2
-retrieving revision 3.3
-diff -u -p -r3.2 -r3.3
---- mutt/crypthash.h 5 Feb 2005 14:11:36 -0000 3.2
-+++ mutt/crypthash.h 15 Mar 2005 04:40:40 -0000 3.3
-@@ -14,12 +14,4 @@
- /* POINTER defines a generic pointer type */
- typedef unsigned char *POINTER;
-
--# ifndef HAVE_UINT32_T
--# if SIZEOF_INT == 4
--typedef unsigned int uint32_t;
--# elif SIZEOF_LONG == 4
--typedef unsigned long uint32_t;
--# endif
--# endif
--
- #endif
-Index: mutt/hcache.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/hcache.c,v
-retrieving revision 3.4
-retrieving revision 3.6
-diff -u -p -r3.4 -r3.6
---- mutt/hcache.c 3 Feb 2005 19:46:53 -0000 3.4
-+++ mutt/hcache.c 22 Mar 2005 03:40:54 -0000 3.6
-@@ -30,6 +30,9 @@
-
- #include <errno.h>
- #include <fcntl.h>
-+#if HAVE_SYS_TIME_H
-+#include <sys/time.h>
-+#endif
- #include "mutt.h"
- #ifdef USE_IMAP
- #include "message.h"
-@@ -60,7 +63,7 @@ static struct header_cache
- typedef union
- {
- struct timeval timeval;
-- uint64_t uid_validity;
-+ unsigned long uid_validity;
- } validate;
-
- static void *
-@@ -447,7 +450,7 @@ generate_crc32()
- SPAM_LIST *sp = SpamList;
- RX_LIST *rx = NoSpamList;
-
-- crc = crc32(crc, (unsigned char const *) "$Id: hcache.c,v 3.4 2005/02/03 19:46:53 roessler Exp $", mutt_strlen("$Id: hcache.c,v 3.4 2005/02/03 19:46:53 roessler Exp $"));
-+ crc = crc32(crc, (unsigned char const *) "$Id: hcache.c,v 3.6 2005/03/22 03:40:54 brendan Exp $", mutt_strlen("$Id: hcache.c,v 3.6 2005/03/22 03:40:54 brendan Exp $"));
-
- #if HAVE_LANGINFO_CODESET
- crc = crc32(crc, (unsigned char const *) Charset, mutt_strlen(Charset));
-@@ -547,7 +550,7 @@ mutt_hcache_per_folder(const char *path,
- * db_store */
- static void *
- mutt_hcache_dump(void *_db, HEADER * h, int *off,
-- uint64_t uid_validity)
-+ unsigned long uid_validity)
- {
- struct header_cache *db = _db;
- unsigned char *d = NULL;
-@@ -556,7 +559,7 @@ mutt_hcache_dump(void *_db, HEADER * h,
- d = lazy_malloc(sizeof (validate));
-
- if (uid_validity)
-- memcpy(d, &uid_validity, sizeof (uint64_t));
-+ memcpy(d, &uid_validity, sizeof (unsigned long));
- else
- {
- struct timeval now;
-@@ -693,7 +696,7 @@ mutt_hcache_fetch(void *db, const char *
-
- int
- mutt_hcache_store(void *db, const char *filename, HEADER * header,
-- uint64_t uid_validity,
-+ unsigned long uid_validity,
- size_t(*keylen) (const char *fn))
- {
- struct header_cache *h = db;
-@@ -883,7 +886,7 @@ mutt_hcache_fetch(void *db, const char *
-
- int
- mutt_hcache_store(void *db, const char *filename, HEADER * header,
-- uint64_t uid_validity,
-+ unsigned long uid_validity,
- size_t(*keylen) (const char *fn))
- {
- DBT key;
-Index: mutt/init.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/init.c,v
-retrieving revision 3.30
-retrieving revision 3.31
-diff -u -p -r3.30 -r3.31
---- mutt/init.c 12 Feb 2005 19:12:40 -0000 3.30
-+++ mutt/init.c 22 Mar 2005 19:46:59 -0000 3.31
-@@ -585,42 +585,6 @@ static int parse_list (BUFFER *buf, BUFF
- return 0;
- }
-
--static int _parse_rx_list (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err, int flags)
--{
-- do
-- {
-- mutt_extract_token (buf, s, 0);
-- if (add_to_rx_list ((RX_LIST **) data, buf->data, flags, err) != 0)
-- return -1;
--
-- }
-- while (MoreArgs (s));
--
-- return 0;
--}
--
--static int parse_rx_list (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err)
--{
-- return _parse_rx_list (buf, s, data, err, REG_ICASE);
--}
--
--static int parse_rx_unlist (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err)
--{
-- do
-- {
-- mutt_extract_token (buf, s, 0);
-- if (mutt_strcmp (buf->data, "*") == 0)
-- {
-- mutt_free_rx_list ((RX_LIST **) data);
-- break;
-- }
-- remove_from_rx_list ((RX_LIST **) data, buf->data);
-- }
-- while (MoreArgs (s));
--
-- return 0;
--}
--
- static void _alternates_clean (void)
- {
- int i;
-Index: mutt/init.h
-===================================================================
-RCS file: /home/roessler/cvs/mutt/init.h,v
-retrieving revision 3.68
-retrieving revision 3.70
-diff -u -p -r3.68 -r3.70
---- mutt/init.h 1 Mar 2005 15:52:33 -0000 3.68
-+++ mutt/init.h 23 Mar 2005 10:51:11 -0000 3.70
-@@ -1032,6 +1032,13 @@ struct option_t MuttVars[] = {
- ** be a single global header cache. By default it is unset and so no
- ** header caching will be used.
- */
-+ { "maildir_header_cache_verify", DT_BOOL, R_NONE, OPTHCACHEVERIFY, 1 },
-+ /*
-+ ** .pp
-+ ** Check for Maildir unaware programs other than mutt having modified maildir
-+ ** files when the header cache is in use. This incurs one stat(2) per
-+ ** message every time the folder is opened.
-+ */
- { "header_cache_pagesize", DT_STR, R_NONE, UL &HeaderCachePageSize, UL "16384" },
- /*
- ** .pp
-@@ -2885,10 +2892,8 @@ const struct mapping_t SortKeyMethods[]
- /* functions used to parse commands in a rc file */
-
- static int parse_list (BUFFER *, BUFFER *, unsigned long, BUFFER *);
--static int parse_rx_list (BUFFER *, BUFFER *, unsigned long, BUFFER *);
- static int parse_spam_list (BUFFER *, BUFFER *, unsigned long, BUFFER *);
- static int parse_unlist (BUFFER *, BUFFER *, unsigned long, BUFFER *);
--static int parse_rx_unlist (BUFFER *, BUFFER *, unsigned long, BUFFER *);
-
- static int parse_lists (BUFFER *, BUFFER *, unsigned long, BUFFER *);
- static int parse_unlists (BUFFER *, BUFFER *, unsigned long, BUFFER *);
-Index: mutt/mh.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/mh.c,v
-retrieving revision 3.23
-retrieving revision 3.25
-diff -u -p -r3.23 -r3.25
---- mutt/mh.c 3 Feb 2005 17:01:43 -0000 3.23
-+++ mutt/mh.c 31 Mar 2005 04:55:09 -0000 3.25
-@@ -47,6 +47,10 @@
- #include <string.h>
- #include <utime.h>
-
-+#if HAVE_SYS_TIME_H
-+#include <sys/time.h>
-+#endif
-+
- struct maildir
- {
- HEADER *h;
-@@ -791,6 +795,14 @@ static int maildir_move_to_context (CONT
- return r;
- }
-
-+#if USE_HCACHE
-+static size_t maildir_hcache_keylen (const char *fn)
-+{
-+ const char * p = strrchr (fn, ':');
-+ return p ? (size_t) (p - fn) : mutt_strlen(fn);
-+}
-+#endif
-+
- #ifdef USE_INODESORT
- /*
- * Merge two maildir lists according to the inode numbers.
-@@ -886,27 +898,67 @@ static struct maildir* maildir_sort_inod
- * This function does the second parsing pass for a maildir-style
- * folder.
- */
--
- void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md)
- {
- struct maildir *p;
- char fn[_POSIX_PATH_MAX];
- int count;
-
-+#if USE_HCACHE
-+ void *hc = NULL;
-+ void *data;
-+ struct timeval *when = NULL;
-+ struct stat lastchanged;
-+ int ret;
-+
-+ hc = mutt_hcache_open (HeaderCache, ctx->path);
-+#endif
-+
- for (p = md, count = 0; p; p = p->next, count++)
-- if (p && p->h && !p->header_parsed)
-- {
-- if (!ctx->quiet && ReadInc && ((count % ReadInc) == 0 || count == 1))
-- mutt_message (_("Reading %s... %d"), ctx->path, count);
-- snprintf (fn, sizeof (fn), "%s/%s", ctx->path, p->h->path);
-- if (maildir_parse_message (ctx->magic, fn, p->h->old, p->h))
-- p->header_parsed = 1;
-- else
-- mutt_free_header (&p->h);
-- }
--}
-+ {
-+ if (! (p && p->h && !p->header_parsed))
-+ continue;
-
-+ if (!ctx->quiet && ReadInc && ((count % ReadInc) == 0 || count == 1))
-+ mutt_message (_("Reading %s... %d"), ctx->path, count);
-
-+#if USE_HCACHE
-+ data = mutt_hcache_fetch (hc, p->h->path + 3, &maildir_hcache_keylen);
-+ when = (struct timeval *) data;
-+#endif
-+
-+ snprintf (fn, sizeof (fn), "%s/%s", ctx->path, p->h->path);
-+
-+#if USE_HCACHE
-+ if (option(OPTHCACHEVERIFY))
-+ ret = stat(fn, &lastchanged);
-+ else {
-+ lastchanged.st_mtime = 0;
-+ ret = 0;
-+ }
-+
-+ if (data != NULL && !ret && lastchanged.st_mtime <= when->tv_sec)
-+ {
-+ p->h = mutt_hcache_restore ((unsigned char *)data, &p->h);
-+ maildir_parse_flags (p->h, fn);
-+ } else
-+#endif
-+ if (maildir_parse_message (ctx->magic, fn, p->h->old, p->h))
-+ {
-+ p->header_parsed = 1;
-+#if USE_HCACHE
-+ mutt_hcache_store (hc, p->h->path + 3, p->h, 0, &maildir_hcache_keylen);
-+#endif
-+ } else
-+ mutt_free_header (&p->h);
-+#if USE_HCACHE
-+ FREE(&data);
-+#endif
-+ }
-+#if USE_HCACHE
-+ mutt_hcache_close (hc);
-+#endif
-+}
-
- /* Read a MH/maildir style mailbox.
- *
-@@ -1403,6 +1455,9 @@ int mh_sync_mailbox (CONTEXT * ctx, int
- {
- char path[_POSIX_PATH_MAX], tmp[_POSIX_PATH_MAX];
- int i, j;
-+#if USE_HCACHE
-+ void *hc = NULL;
-+#endif /* USE_HCACHE */
-
- if (ctx->magic == M_MH)
- i = mh_check_mailbox (ctx, index_hint);
-@@ -1412,6 +1467,11 @@ int mh_sync_mailbox (CONTEXT * ctx, int
- if (i != 0)
- return i;
-
-+#if USE_HCACHE
-+ if (ctx->magic == M_MAILDIR)
-+ hc = mutt_hcache_open(HeaderCache, ctx->path);
-+#endif /* USE_HCACHE */
-+
- for (i = 0; i < ctx->msgcount; i++)
- {
- if (ctx->hdrs[i]->deleted
-@@ -1420,7 +1480,13 @@ int mh_sync_mailbox (CONTEXT * ctx, int
- snprintf (path, sizeof (path), "%s/%s", ctx->path, ctx->hdrs[i]->path);
- if (ctx->magic == M_MAILDIR
- || (option (OPTMHPURGE) && ctx->magic == M_MH))
-+ {
-+#if USE_HCACHE
-+ if (ctx->magic == M_MAILDIR)
-+ mutt_hcache_delete (hc, ctx->hdrs[i]->path + 3, &maildir_hcache_keylen);
-+#endif /* USE_HCACHE */
- unlink (path);
-+ }
- else if (ctx->magic == M_MH)
- {
- /* MH just moves files out of the way when you delete them */
-@@ -1442,16 +1508,21 @@ int mh_sync_mailbox (CONTEXT * ctx, int
- if (ctx->magic == M_MAILDIR)
- {
- if (maildir_sync_message (ctx, i) == -1)
-- return -1;
-+ goto err;
- }
- else
- {
- if (mh_sync_message (ctx, i) == -1)
-- return -1;
-+ goto err;
- }
- }
- }
-
-+#if USE_HCACHE
-+ if (ctx->magic == M_MAILDIR)
-+ mutt_hcache_close (hc);
-+#endif /* USE_HCACHE */
-+
- if (ctx->magic == M_MH)
- mh_update_sequences (ctx);
-
-@@ -1472,6 +1543,13 @@ int mh_sync_mailbox (CONTEXT * ctx, int
- }
-
- return 0;
-+
-+err:
-+#if USE_HCACHE
-+ if (ctx->magic == M_MAILDIR)
-+ mutt_hcache_close (hc);
-+#endif /* USE_HCACHE */
-+ return -1;
- }
-
- static char *maildir_canon_filename (char *dest, const char *src, size_t l)
-Index: mutt/mutt.h
-===================================================================
-RCS file: /home/roessler/cvs/mutt/mutt.h,v
-retrieving revision 3.40
-retrieving revision 3.41
-diff -u -p -r3.40 -r3.41
---- mutt/mutt.h 28 Feb 2005 15:15:23 -0000 3.40
-+++ mutt/mutt.h 23 Mar 2005 10:51:11 -0000 3.41
-@@ -351,6 +351,9 @@ enum
- OPTFORCENAME,
- OPTFORWDECODE,
- OPTFORWQUOTE,
-+#if USE_HCACHE
-+ OPTHCACHEVERIFY,
-+#endif
- OPTHDRS,
- OPTHEADER,
- OPTHELP,
-Index: mutt/protos.h
-===================================================================
-RCS file: /home/roessler/cvs/mutt/protos.h,v
-retrieving revision 3.25
-retrieving revision 3.26
-diff -u -p -r3.25 -r3.26
---- mutt/protos.h 1 Feb 2005 03:36:39 -0000 3.25
-+++ mutt/protos.h 22 Mar 2005 03:40:54 -0000 3.26
-@@ -111,7 +111,7 @@ void *mutt_hcache_open(const char *path,
- void mutt_hcache_close(void *db);
- HEADER *mutt_hcache_restore(const unsigned char *d, HEADER **oh);
- void *mutt_hcache_fetch(void *db, const char *filename, size_t (*keylen)(const char *fn));
--int mutt_hcache_store(void *db, const char *filename, HEADER *h, uint64_t uid_validity, size_t (*keylen)(const char *fn));
-+int mutt_hcache_store(void *db, const char *filename, HEADER *h, unsigned long uid_validity, size_t (*keylen)(const char *fn));
- int mutt_hcache_delete(void *db, const char *filename, size_t (*keylen)(const char *fn));
- #endif /* USE_HCACHE */
-
-Index: mutt/doc/Makefile.in
-===================================================================
-RCS file: /home/roessler/cvs/mutt/doc/Makefile.in,v
-retrieving revision 3.5
-retrieving revision 3.7
-diff -u -p -r3.5 -r3.7
---- mutt/doc/Makefile.in 15 Feb 2005 19:28:24 -0000 3.5
-+++ mutt/doc/Makefile.in 16 Mar 2005 07:01:59 -0000 3.7
-@@ -1,4 +1,4 @@
--# $Id: Makefile.in,v 3.5 2005/02/15 19:28:24 roessler Exp $
-+# $Id: Makefile.in,v 3.7 2005/03/16 07:01:59 brendan Exp $
-
- SHELL = /bin/sh
-
-@@ -21,6 +21,7 @@ VPATH = @srcdir@
- INSTALL = @INSTALL@
- CC = @CC@
- CPP = @CPP@
-+EXEEXT = @EXEEXT@
- XCPPFLAGS = -I. @CPPFLAGS@
- CFLAGS = @CFLAGS@ $(XCPPFLAGS)
- LDFLAGS = @LDFLAGS@
-@@ -65,10 +66,10 @@ topsrcdir_DOCFILES = COPYRIGHT GPL INSTA
-
- all: muttrc.man try-html try-txt
-
--try-html: ../makedoc
-+try-html: ../makedoc$(EXEEXT)
- test -f manual.html || $(MAKE) manual.html || cp $(srcdir)/manual*.html ./
-
--try-txt: ../makedoc
-+try-txt: ../makedoc$(EXEEXT)
- test -f manual.txt || $(MAKE) manual.txt || cp $(srcdir)/manual.txt ./
-
- install: all instdoc
-@@ -149,21 +150,21 @@ dist distdir: Makefile $(DISTFILES)
- || cp -p $$file $(distdir) ; \
- done
-
--../makedoc: $(top_srcdir)/makedoc.c
-- (cd .. && $(MAKE) makedoc)
-+../makedoc$(EXEEXT): $(top_srcdir)/makedoc.c
-+ (cd .. && $(MAKE) makedoc$(EXEEXT))
-
- # hack around autoconf mixing up patterns.
- at = @
-
--update-doc: ../makedoc stamp-doc-sgml stamp-doc-man manual.txt manual.html
-+update-doc: ../makedoc$(EXEEXT) stamp-doc-sgml stamp-doc-man manual.txt manual.html
-
--muttrc.man stamp-doc-man: ../makedoc $(top_srcdir)/init.h muttrc.man.head muttrc.man.tail
-+muttrc.man stamp-doc-man: ../makedoc$(EXEEXT) $(top_srcdir)/init.h muttrc.man.head muttrc.man.tail
- $(MAKEDOC_CPP) $(top_srcdir)/init.h | ../makedoc -m | \
- cat $(srcdir)/muttrc.man.head - $(srcdir)/muttrc.man.tail\
- > muttrc.man
- touch stamp-doc-man
-
--manual.sgml stamp-doc-sgml: ../makedoc $(top_srcdir)/init.h manual.sgml.head manual.sgml.tail $(top_srcdir)/VERSION
-+manual.sgml stamp-doc-sgml: ../makedoc$(EXEEXT) $(top_srcdir)/init.h manual.sgml.head manual.sgml.tail $(top_srcdir)/VERSION
- ( sed -e "s/$(at)VERSION$(at)/`cat $(top_srcdir)/VERSION`/" $(srcdir)/manual.sgml.head ;\
- $(MAKEDOC_CPP) $(top_srcdir)/init.h | ../makedoc -s ) | \
- cat - $(srcdir)/manual.sgml.tail > manual.sgml
-Index: mutt/imap/imap.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/imap/imap.c,v
-retrieving revision 3.21
-retrieving revision 3.23
-diff -u -p -r3.21 -r3.23
---- mutt/imap/imap.c 17 Feb 2005 03:33:00 -0000 3.21
-+++ mutt/imap/imap.c 3 Apr 2005 00:14:51 -0000 3.23
-@@ -1,7 +1,7 @@
- /*
- * Copyright (C) 1996-8 Michael R. Elkins <me@mutt.org>
- * Copyright (C) 1996-9 Brandon Long <blong@fiction.net>
-- * Copyright (C) 1999-2003 Brendan Cully <brendan@kublai.com>
-+ * Copyright (C) 1999-2005 Brendan Cully <brendan@kublai.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
-@@ -635,7 +635,7 @@ int imap_open_mailbox (CONTEXT* ctx)
- dprint(2, (debugfile, "Getting mailbox UIDVALIDITY\n"));
- pc += 3;
- pc = imap_next_word(pc);
-- sscanf(pc, "%u", &(idata->uid_validity));
-+ sscanf(pc, "%lu", &(idata->uid_validity));
- }
- #endif
- else
-@@ -921,6 +921,76 @@ int imap_make_msg_set (IMAP_DATA* idata,
- return count;
- }
-
-+/* Update the IMAP server to reflect the flags a single message. */
-+
-+int imap_sync_message (IMAP_DATA *idata, HEADER *hdr, BUFFER *cmd,
-+ int *err_continue)
-+{
-+ char flags[LONG_STRING];
-+ char uid[11];
-+
-+ hdr->changed = 0;
-+
-+ snprintf (uid, sizeof (uid), "%u", HEADER_DATA(hdr)->uid);
-+ cmd->dptr = cmd->data;
-+ mutt_buffer_addstr (cmd, "UID STORE ");
-+ mutt_buffer_addstr (cmd, uid);
-+
-+ flags[0] = '\0';
-+
-+ imap_set_flag (idata, IMAP_ACL_SEEN, hdr->read, "\\Seen ",
-+ flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_WRITE, hdr->flagged,
-+ "\\Flagged ", flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_WRITE, hdr->replied,
-+ "\\Answered ", flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_DELETE, hdr->deleted,
-+ "\\Deleted ", flags, sizeof (flags));
-+
-+ /* now make sure we don't lose custom tags */
-+ if (mutt_bit_isset (idata->rights, IMAP_ACL_WRITE))
-+ imap_add_keywords (flags, hdr, idata->flags, sizeof (flags));
-+
-+ mutt_remove_trailing_ws (flags);
-+
-+ /* UW-IMAP is OK with null flags, Cyrus isn't. The only solution is to
-+ * explicitly revoke all system flags (if we have permission) */
-+ if (!*flags)
-+ {
-+ imap_set_flag (idata, IMAP_ACL_SEEN, 1, "\\Seen ", flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_WRITE, 1, "\\Flagged ", flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_WRITE, 1, "\\Answered ", flags, sizeof (flags));
-+ imap_set_flag (idata, IMAP_ACL_DELETE, 1, "\\Deleted ", flags, sizeof (flags));
-+
-+ mutt_remove_trailing_ws (flags);
-+
-+ mutt_buffer_addstr (cmd, " -FLAGS.SILENT (");
-+ } else
-+ mutt_buffer_addstr (cmd, " FLAGS.SILENT (");
-+
-+ mutt_buffer_addstr (cmd, flags);
-+ mutt_buffer_addstr (cmd, ")");
-+
-+ /* dumb hack for bad UW-IMAP 4.7 servers spurious FLAGS updates */
-+ hdr->active = 0;
-+
-+ /* after all this it's still possible to have no flags, if you
-+ * have no ACL rights */
-+ if (*flags && (imap_exec (idata, cmd->data, 0) != 0) &&
-+ err_continue && (*err_continue != M_YES))
-+ {
-+ *err_continue = imap_continue ("imap_sync_message: STORE failed",
-+ idata->cmd.buf);
-+ if (*err_continue != M_YES)
-+ return -1;
-+ }
-+
-+ hdr->active = 1;
-+ idata->ctx->changed--;
-+
-+ return 0;
-+}
-+
- /* update the IMAP server to reflect message changes done within mutt.
- * Arguments
- * ctx: the current context
-@@ -932,12 +1002,10 @@ int imap_sync_mailbox (CONTEXT* ctx, int
- IMAP_DATA* idata;
- CONTEXT* appendctx = NULL;
- BUFFER cmd;
-- char flags[LONG_STRING];
-- char uid[11];
- int deleted;
- int n;
-- int err_continue = M_NO; /* continue on error? */
- int rc;
-+ int err_continue = M_NO; /* continue on error? */
-
- idata = (IMAP_DATA*) ctx->data;
-
-@@ -994,16 +1062,9 @@ int imap_sync_mailbox (CONTEXT* ctx, int
- {
- if (ctx->hdrs[n]->active && ctx->hdrs[n]->changed)
- {
-- ctx->hdrs[n]->changed = 0;
--
- mutt_message (_("Saving message status flags... [%d/%d]"), n+1,
- ctx->msgcount);
-
-- snprintf (uid, sizeof (uid), "%u", HEADER_DATA(ctx->hdrs[n])->uid);
-- cmd.dptr = cmd.data;
-- mutt_buffer_addstr (&cmd, "UID STORE ");
-- mutt_buffer_addstr (&cmd, uid);
--
- /* if attachments have been deleted we delete the message and reupload
- * it. This works better if we're expunging, of course. */
- if (ctx->hdrs[n]->attach_del)
-@@ -1018,60 +1079,12 @@ int imap_sync_mailbox (CONTEXT* ctx, int
- else
- _mutt_save_message (ctx->hdrs[n], appendctx, 1, 0, 0);
- }
-- flags[0] = '\0';
--
-- imap_set_flag (idata, IMAP_ACL_SEEN, ctx->hdrs[n]->read, "\\Seen ",
-- flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_WRITE, ctx->hdrs[n]->flagged,
-- "\\Flagged ", flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_WRITE, ctx->hdrs[n]->replied,
-- "\\Answered ", flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_DELETE, ctx->hdrs[n]->deleted,
-- "\\Deleted ", flags, sizeof (flags));
--
-- /* now make sure we don't lose custom tags */
-- if (mutt_bit_isset (idata->rights, IMAP_ACL_WRITE))
-- imap_add_keywords (flags, ctx->hdrs[n], idata->flags, sizeof (flags));
--
-- mutt_remove_trailing_ws (flags);
--
-- /* UW-IMAP is OK with null flags, Cyrus isn't. The only solution is to
-- * explicitly revoke all system flags (if we have permission) */
-- if (!*flags)
-- {
-- imap_set_flag (idata, IMAP_ACL_SEEN, 1, "\\Seen ", flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_WRITE, 1, "\\Flagged ", flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_WRITE, 1, "\\Answered ", flags, sizeof (flags));
-- imap_set_flag (idata, IMAP_ACL_DELETE, 1, "\\Deleted ", flags, sizeof (flags));
--
-- mutt_remove_trailing_ws (flags);
--
-- mutt_buffer_addstr (&cmd, " -FLAGS.SILENT (");
-- }
-- else
-- mutt_buffer_addstr (&cmd, " FLAGS.SILENT (");
--
-- mutt_buffer_addstr (&cmd, flags);
-- mutt_buffer_addstr (&cmd, ")");
-
-- /* dumb hack for bad UW-IMAP 4.7 servers spurious FLAGS updates */
-- ctx->hdrs[n]->active = 0;
--
-- /* after all this it's still possible to have no flags, if you
-- * have no ACL rights */
-- if (*flags && (imap_exec (idata, cmd.data, 0) != 0) &&
-- (err_continue != M_YES))
-+ if (imap_sync_message (idata, ctx->hdrs[n], &cmd, &err_continue) < 0)
- {
-- err_continue = imap_continue ("imap_sync_mailbox: STORE failed",
-- idata->cmd.buf);
-- if (err_continue != M_YES)
-- {
-- rc = -1;
-- goto out;
-- }
-+ rc = -1;
-+ goto out;
- }
--
-- ctx->hdrs[n]->active = 1;
- }
- }
- ctx->changed = 0;
-Index: mutt/imap/imap_private.h
-===================================================================
-RCS file: /home/roessler/cvs/mutt/imap/imap_private.h,v
-retrieving revision 3.5
-retrieving revision 3.7
-diff -u -p -r3.5 -r3.7
---- mutt/imap/imap_private.h 17 Feb 2005 03:33:00 -0000 3.5
-+++ mutt/imap/imap_private.h 3 Apr 2005 00:14:51 -0000 3.7
-@@ -180,7 +180,7 @@ typedef struct
- IMAP_CACHE cache[IMAP_CACHE_LEN];
- unsigned int noclose : 1;
- #ifdef USE_HCACHE
-- uint64_t uid_validity;
-+ unsigned long uid_validity;
- #endif
-
- /* all folder flags - system flags AND keywords */
-@@ -203,6 +203,8 @@ int imap_parse_list_response(IMAP_DATA*
- int imap_read_literal (FILE* fp, IMAP_DATA* idata, long bytes);
- void imap_expunge_mailbox (IMAP_DATA* idata);
- void imap_logout (IMAP_DATA* idata);
-+int imap_sync_message (IMAP_DATA *idata, HEADER *hdr, BUFFER *cmd,
-+ int *err_continue);
-
- /* auth.c */
- int imap_authenticate (IMAP_DATA* idata);
-Index: mutt/imap/message.c
-===================================================================
-RCS file: /home/roessler/cvs/mutt/imap/message.c,v
-retrieving revision 3.19
-retrieving revision 3.21
-diff -u -p -r3.19 -r3.21
---- mutt/imap/message.c 27 Feb 2005 03:18:23 -0000 3.19
-+++ mutt/imap/message.c 3 Apr 2005 00:14:51 -0000 3.21
-@@ -69,7 +69,7 @@ int imap_read_headers (IMAP_DATA* idata,
-
- #if USE_HCACHE
- void *hc = NULL;
-- uint64_t *uid_validity = NULL;
-+ unsigned long *uid_validity = NULL;
- char uid_buf[64];
- #endif /* USE_HCACHE */
-
-@@ -154,7 +154,7 @@ int imap_read_headers (IMAP_DATA* idata,
- fputs ("\n\n", fp);
-
- sprintf(uid_buf, "/%u", h.data->uid); /* XXX --tg 21:41 04-07-11 */
-- uid_validity = (uint64_t *) mutt_hcache_fetch (hc, uid_buf, &imap_hcache_keylen);
-+ uid_validity = (unsigned long *) mutt_hcache_fetch (hc, uid_buf, &imap_hcache_keylen);
-
- if (uid_validity != NULL
- && *uid_validity == idata->uid_validity) {
-@@ -640,13 +640,14 @@ int imap_append_message (CONTEXT *ctx, M
- int imap_copy_messages (CONTEXT* ctx, HEADER* h, char* dest, int delete)
- {
- IMAP_DATA* idata;
-- BUFFER cmd;
-+ BUFFER cmd, sync_cmd;
- char uid[11];
- char mbox[LONG_STRING];
- char mmbox[LONG_STRING];
- int rc;
- int n;
- IMAP_MBOX mx;
-+ int err_continue = M_NO;
-
- idata = (IMAP_DATA*) ctx->data;
-
-@@ -672,6 +673,7 @@ int imap_copy_messages (CONTEXT* ctx, HE
-
- imap_fix_path (idata, mx.mbox, mbox, sizeof (mbox));
-
-+ memset (&sync_cmd, 0, sizeof (sync_cmd));
- memset (&cmd, 0, sizeof (cmd));
- mutt_buffer_addstr (&cmd, "UID COPY ");
-
-@@ -688,6 +690,17 @@ int imap_copy_messages (CONTEXT* ctx, HE
- dprint (3, (debugfile, "imap_copy_messages: Message contains attachments to be deleted\n"));
- return 1;
- }
-+
-+ if (ctx->hdrs[n]->tagged && ctx->hdrs[n]->active &&
-+ ctx->hdrs[n]->changed)
-+ {
-+ rc = imap_sync_message (idata, ctx->hdrs[n], &sync_cmd, &err_continue);
-+ if (rc < 0)
-+ {
-+ dprint (1, (debugfile, "imap_copy_messages: could not sync\n"));
-+ goto fail;
-+ }
-+ }
- }
-
- rc = imap_make_msg_set (idata, &cmd, M_TAG, 0);
-@@ -703,6 +716,16 @@ int imap_copy_messages (CONTEXT* ctx, HE
- mutt_message (_("Copying message %d to %s..."), h->index+1, mbox);
- snprintf (uid, sizeof (uid), "%u", HEADER_DATA (h)->uid);
- mutt_buffer_addstr (&cmd, uid);
-+
-+ if (h->active && h->changed)
-+ {
-+ rc = imap_sync_message (idata, h, &sync_cmd, &err_continue);
-+ if (rc < 0)
-+ {
-+ dprint (1, (debugfile, "imap_copy_messages: could not sync\n"));
-+ goto fail;
-+ }
-+ }
- }
-
- /* let's get it on */
-@@ -761,12 +784,16 @@ int imap_copy_messages (CONTEXT* ctx, HE
-
- if (cmd.data)
- FREE (&cmd.data);
-+ if (sync_cmd.data)
-+ FREE (&sync_cmd.data);
- FREE (&mx.mbox);
- return 0;
-
- fail:
- if (cmd.data)
- FREE (&cmd.data);
-+ if (sync_cmd.data)
-+ FREE (&sync_cmd.data);
- FREE (&mx.mbox);
- return -1;
- }
-@@ -923,7 +950,6 @@ static size_t imap_hcache_keylen (const
- static int msg_fetch_header_fetch (CONTEXT* ctx, IMAP_HEADER* h, char* buf, FILE* fp)
- {
- IMAP_DATA* idata;
-- long bytes;
- int rc = -1; /* default now is that string isn't FETCH response*/
-
- idata = (IMAP_DATA*) ctx->data;
-Index: mutt/po/de.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/de.po,v
-retrieving revision 3.22
-retrieving revision 3.23
-diff -u -p -r3.22 -r3.23
---- mutt/po/de.po 13 Mar 2005 16:35:33 -0000 3.22
-+++ mutt/po/de.po 22 Mar 2005 19:48:35 -0000 3.23
-@@ -1,9 +1,9 @@
- msgid ""
- msgstr ""
--"Project-Id-Version: 1.5.8\n"
-+"Project-Id-Version: 1.5.9\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2005-02-13 18:28+0100\n"
-+"PO-Revision-Date: 2005-03-20 14:03+0100\n"
- "Last-Translator: Roland Rosenfeld <roland@spinnaker.de>\n"
- "Language-Team: German <mutt-po@mutt.org>\n"
- "MIME-Version: 1.0\n"
-@@ -204,9 +204,8 @@ msgid "Create is only supported for IMAP
- msgstr "Es können nur IMAP Mailboxen erzeugt werden"
-
- #: browser.c:880
--#, fuzzy
- msgid "Rename is only supported for IMAP mailboxes"
--msgstr "Es können nur IMAP Mailboxen erzeugt werden"
-+msgstr "Es können nur IMAP Mailboxen umbenannt werden"
-
- #: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
-@@ -1400,19 +1399,18 @@ msgid "Mailbox created."
- msgstr "Mailbox erzeugt."
-
- #: imap/browse.c:325
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename mailbox %s to: "
--msgstr "Erzeuge Mailbox: "
-+msgstr "Benenne Mailbox %s um in: "
-
- #: imap/browse.c:338
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename failed: %s"
--msgstr "SSL fehlgeschlagen: %s"
-+msgstr "Umbenennung fehlgeschlagen: %s"
-
- #: imap/browse.c:343
--#, fuzzy
- msgid "Mailbox renamed."
--msgstr "Mailbox erzeugt."
-+msgstr "Mailbox umbenannt."
-
- #: imap/command.c:294
- msgid "Mailbox closed"
-@@ -2325,9 +2323,8 @@ msgid "{internal}"
- msgstr "{intern}"
-
- #: keymap_alldefs.h:151
--#, fuzzy
- msgid "rename the current mailbox (IMAP only)"
--msgstr "Lösche die aktuelle Mailbox (nur für IMAP)"
-+msgstr "benenne die aktuelle Mailbox um (nur für IMAP)"
-
- #: keymap_alldefs.h:152
- msgid "reply to a message"
-Index: mutt/po/id.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/id.po,v
-retrieving revision 3.21
-retrieving revision 3.22
-diff -u -p -r3.21 -r3.22
---- mutt/po/id.po 13 Mar 2005 16:35:34 -0000 3.21
-+++ mutt/po/id.po 22 Mar 2005 19:53:49 -0000 3.22
-@@ -4,10 +4,10 @@
- #
- msgid ""
- msgstr ""
--"Project-Id-Version: 1.5.8i\n"
-+"Project-Id-Version: 1.5.9i\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2005-02-14 10:59+0700\n"
-+"PO-Revision-Date: 2005-03-21 17:31+1100\n"
- "Last-Translator: Ronny Haryanto <ronny-mutt-po-file@haryan.to>\n"
- "Language-Team: Indonesia <web@linux.or.id>\n"
- "MIME-Version: 1.0\n"
-@@ -207,9 +207,8 @@ msgid "Create is only supported for IMAP
- msgstr "Pembuatan hanya didukung untuk kotak surat jenis IMAP."
-
- #: browser.c:880
--#, fuzzy
- msgid "Rename is only supported for IMAP mailboxes"
--msgstr "Pembuatan hanya didukung untuk kotak surat jenis IMAP."
-+msgstr "Penggantian nama hanya didukung untuk kotak surat jenis IMAP."
-
- #: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
-@@ -1403,19 +1402,18 @@ msgid "Mailbox created."
- msgstr "Kotak surat telah dibuat."
-
- #: imap/browse.c:325
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename mailbox %s to: "
--msgstr "Membuat kotak surat: "
-+msgstr "Ganti nama kotak surat %s ke: "
-
- #: imap/browse.c:338
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename failed: %s"
--msgstr "SSL gagal: %s"
-+msgstr "Penggantian nama gagal: %s"
-
- #: imap/browse.c:343
--#, fuzzy
- msgid "Mailbox renamed."
--msgstr "Kotak surat telah dibuat."
-+msgstr "Kotak surat telah diganti namanya."
-
- #: imap/command.c:294
- msgid "Mailbox closed"
-@@ -1783,11 +1781,11 @@ msgstr "tampilkan nama file yang sedang
-
- #: keymap_alldefs.h:15
- msgid "subscribe to current mailbox (IMAP only)"
--msgstr "berlangganan ke kotak surat (untuk IMAP)"
-+msgstr "berlangganan ke kotak surat ini (untuk IMAP)"
-
- #: keymap_alldefs.h:16
- msgid "unsubscribe to current mailbox (IMAP only)"
--msgstr "berhenti langganan dari kotak surat (untuk IMAP)"
-+msgstr "berhenti langganan dari kotak surat ini (untuk IMAP)"
-
- #: keymap_alldefs.h:17
- msgid "toggle view all/subscribed mailboxes (IMAP only)"
-@@ -1947,11 +1945,11 @@ msgstr "buat salinan (text/plain) yang s
-
- #: keymap_alldefs.h:56
- msgid "delete the current entry"
--msgstr "hapus entry"
-+msgstr "hapus entry ini"
-
- #: keymap_alldefs.h:57
- msgid "delete the current mailbox (IMAP only)"
--msgstr "hapus kotak surat (untuk IMAP)"
-+msgstr "hapus kotak surat ini (untuk IMAP)"
-
- #: keymap_alldefs.h:58
- msgid "delete all messages in subthread"
-@@ -2095,7 +2093,7 @@ msgstr "forward surat dengan komentar"
-
- #: keymap_alldefs.h:93
- msgid "select the current entry"
--msgstr "pilih entry"
-+msgstr "pilih entry ini"
-
- #: keymap_alldefs.h:94
- msgid "reply to all recipients"
-@@ -2223,11 +2221,11 @@ msgstr "ke surat sebelumnya yang belum d
-
- #: keymap_alldefs.h:125
- msgid "mark the current thread as read"
--msgstr "tandai thread 'sudah dibaca'"
-+msgstr "tandai thread ini 'sudah dibaca'"
-
- #: keymap_alldefs.h:126
- msgid "mark the current subthread as read"
--msgstr "tandai subthread 'sudah dibaca'"
-+msgstr "tandai subthread ini 'sudah dibaca'"
-
- #: keymap_alldefs.h:127
- msgid "set a status flag on a message"
-@@ -2299,7 +2297,7 @@ msgstr "ke halaman sebelumnya"
-
- #: keymap_alldefs.h:144
- msgid "print the current entry"
--msgstr "cetak entry"
-+msgstr "cetak entry ini"
-
- #: keymap_alldefs.h:145
- msgid "query external program for addresses"
-@@ -2326,9 +2324,8 @@ msgid "{internal}"
- msgstr "{jerohan}"
-
- #: keymap_alldefs.h:151
--#, fuzzy
- msgid "rename the current mailbox (IMAP only)"
--msgstr "hapus kotak surat (untuk IMAP)"
-+msgstr "ganti nama kotak surat ini (untuk IMAP)"
-
- #: keymap_alldefs.h:152
- msgid "reply to a message"
-@@ -2336,7 +2333,7 @@ msgstr "balas surat"
-
- #: keymap_alldefs.h:153
- msgid "use the current message as a template for a new one"
--msgstr "gunakan surat sebagai template"
-+msgstr "gunakan surat ini sebagai template"
-
- #: keymap_alldefs.h:154
- msgid "save message/attachment to a file"
-@@ -2376,7 +2373,7 @@ msgstr "urutkan terbalik surat-surat"
-
- #: keymap_alldefs.h:163
- msgid "tag the current entry"
--msgstr "tandai entry"
-+msgstr "tandai entry ini"
-
- #: keymap_alldefs.h:164
- msgid "apply next function to tagged messages"
-@@ -2388,11 +2385,11 @@ msgstr "lakukan fungsi berikutnya HANYA
-
- #: keymap_alldefs.h:166
- msgid "tag the current subthread"
--msgstr "tandai subthread"
-+msgstr "tandai subthread ini"
-
- #: keymap_alldefs.h:167
- msgid "tag the current thread"
--msgstr "tandai thread"
-+msgstr "tandai thread ini"
-
- #: keymap_alldefs.h:168
- msgid "toggle a message's 'new' flag"
-@@ -2412,7 +2409,7 @@ msgstr "ke awal halaman"
-
- #: keymap_alldefs.h:172
- msgid "undelete the current entry"
--msgstr "tidak jadi hapus entry"
-+msgstr "tidak jadi hapus entry ini"
-
- #: keymap_alldefs.h:173
- msgid "undelete all messages in thread"
-@@ -2440,11 +2437,11 @@ msgstr "tampilkan keycode untuk penekana
-
- #: keymap_alldefs.h:179
- msgid "show currently active limit pattern"
--msgstr "tampilkan kriteria batas yang aktif"
-+msgstr "tampilkan kriteria batas yang sedang aktif"
-
- #: keymap_alldefs.h:180
- msgid "collapse/uncollapse current thread"
--msgstr "collapse/uncollapse thread"
-+msgstr "collapse/uncollapse thread ini"
-
- #: keymap_alldefs.h:181
- msgid "collapse/uncollapse all threads"
-@@ -3213,7 +3210,7 @@ msgstr "Cari: "
-
- #: pager.c:2081
- msgid "Help is currently being shown."
--msgstr "Bantuan sudah ditampilkan."
-+msgstr "Bantuan sedang ditampilkan."
-
- #: pager.c:2110
- msgid "No more quoted text."
-Index: mutt/po/nl.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/nl.po,v
-retrieving revision 3.22
-retrieving revision 3.23
-diff -u -p -r3.22 -r3.23
---- mutt/po/nl.po 13 Mar 2005 16:35:34 -0000 3.22
-+++ mutt/po/nl.po 22 Mar 2005 19:49:31 -0000 3.23
-@@ -1,10 +1,10 @@
--# $Id: nl.po,v 3.21 2005/02/12 20:56:33 roessler Exp $
-+# $Id: nl.po,v 3.23 2005/03/22 19:49:31 roessler Exp $
- msgid ""
- msgstr ""
--"Project-Id-Version: Mutt 1.5.6\n"
-+"Project-Id-Version: Mutt 1.5.9\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2005-01-28 15:08+0100\n"
-+"PO-Revision-Date: 2005-03-20 15:17+0100\n"
- "Last-Translator: René Clerc <rene@clerc.nl>\n"
- "Language-Team: René Clerc <rene@clerc.nl>\n"
- "MIME-Version: 1.0\n"
-@@ -203,9 +203,8 @@ msgid "Create is only supported for IMAP
- msgstr "Alleen IMAP folders kunnen aangemaakt worden"
-
- #: browser.c:880
--#, fuzzy
- msgid "Rename is only supported for IMAP mailboxes"
--msgstr "Alleen IMAP folders kunnen aangemaakt worden"
-+msgstr "Alleen IMAP folders kunnen hernoemd worden"
-
- #: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
-@@ -1195,7 +1194,7 @@ msgstr "[-- Foutenuitvoer van %s --]\n"
-
- #: handler.c:1643
- msgid "[-- Error: message/external-body has no access-type parameter --]\n"
--msgstr "[-- Fout: message/external-body heeft geen access-type paramter --]\n"
-+msgstr "[-- Fout: message/external-body heeft geen access-type parameter --]\n"
-
- #: handler.c:1662
- #, c-format
-@@ -1398,19 +1397,18 @@ msgid "Mailbox created."
- msgstr "Mailfolder is aangemaakt."
-
- #: imap/browse.c:325
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename mailbox %s to: "
--msgstr "Mailfolder aanmaken: "
-+msgstr "Mailfolder %s hernoemen naar: "
-
- #: imap/browse.c:338
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename failed: %s"
--msgstr "SSL mislukt: %s"
-+msgstr "Hernoemen mislukt: %s"
-
- #: imap/browse.c:343
--#, fuzzy
- msgid "Mailbox renamed."
--msgstr "Mailfolder is aangemaakt."
-+msgstr "Mailfolder is hernoemd."
-
- #: imap/command.c:294
- msgid "Mailbox closed"
-@@ -2321,9 +2319,8 @@ msgid "{internal}"
- msgstr "(intern)"
-
- #: keymap_alldefs.h:151
--#, fuzzy
- msgid "rename the current mailbox (IMAP only)"
--msgstr "verwijder de huidige mailfolder (alleen met IMAP)"
-+msgstr "hernoem de huidige mailfolder (alleen met IMAP)"
-
- #: keymap_alldefs.h:152
- msgid "reply to a message"
-@@ -2599,7 +2596,6 @@ msgstr ""
- "USA.\n"
-
- #: main.c:99
--#, fuzzy
- msgid ""
- "usage: mutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f "
- "<file> ]\n"
-@@ -2653,18 +2649,18 @@ msgstr ""
- " -e <opdracht>\tspecificeer een uit te voeren opdracht na initialisatie\n"
- " -f <file>\tspecificeer de te lezen mailfolder\n"
- " -F <file>\tspecificeer een alternatieve muttrc\n"
--" -H <file>\tspecificeer een een bestand om de headers uit te lezen\n"
-+" -H <file>\tspecificeer een bestand om de headers uit te lezen\n"
- " -i <file>\tspecificeer een bestand dat Mutt moet bijsluiten in het "
--"antwoord\n"
-+"bericht\n"
- " -m <type>\tspecificeer een standaard mailfolder type\n"
--" -n\t\tzorgt dat Mutt niet de systeem Muttrc inleest\n"
-+" -n\t\tzorgt dat Mutt de systeem Muttrc niet inleest\n"
- " -p\t\troept een uitgesteld bericht op\n"
- " -Q <variabele>\tvraagt de waarde van een configuratievariabele op\n"
- " -R\t\topent de mailfolder met alleen-lezen rechten\n"
- " -s <ond>\tspecificeer een onderwerp (tussen aanhalingstekens i.g.v. "
- "spaties)\n"
- " -v\t\ttoont het versienummer en opties tijdens het compileren\n"
--" -x\t\tsimuleert de mailx verstuurmodus\n"
-+" -x\t\tsimuleert de mailx verzendmodus\n"
- " -y\t\tselecteert een mailfolder gespecificeerd in de `mailboxes' lijst\n"
- " -z\t\tbeëindigt meteen als er geen berichten in de mailfolder staan\n"
- " -Z\t\topent de eerste mailfolder met nieuwe berichten, eindigt indien "
-Index: mutt/po/pl.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/pl.po,v
-retrieving revision 3.24
-retrieving revision 3.25
-diff -u -p -r3.24 -r3.25
---- mutt/po/pl.po 13 Mar 2005 16:35:34 -0000 3.24
-+++ mutt/po/pl.po 17 Mar 2005 09:30:06 -0000 3.25
-@@ -6,10 +6,10 @@
- # get your own copy of PePeSza from http://www.ids.pl/~pkollegu/pepesza.html
- msgid ""
- msgstr ""
--"Project-Id-Version: mutt-cvs-2004.08.16\n"
-+"Project-Id-Version: mutt-1.5.8\n"
- "Report-Msgid-Bugs-To: \n"
--"POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2004-08-16\n"
-+"POT-Creation-Date: 2005-02-15 13:41+0100\n"
-+"PO-Revision-Date: 2005-02-15\n"
- "Last-Translator: Pawe³ Dziekoñski <dzieko@pwr.wroc.pl>\n"
- "Language-Team: POLISH <pl@li.org>\n"
- "MIME-Version: 1.0\n"
-@@ -175,7 +175,7 @@ msgstr "Zmieñ katalog"
- msgid "Mask"
- msgstr "Wzorzec"
-
--#: browser.c:381 browser.c:989
-+#: browser.c:381 browser.c:968
- #, c-format
- msgid "%s is not a directory."
- msgstr "%s nie jest katalogiem."
-@@ -199,7 +199,7 @@ msgstr "Katalog [%s], wzorzec nazw plikó
- msgid "Can't attach a directory!"
- msgstr "Za³±cznikiem nie mo¿e zostaæ katalog!"
-
--#: browser.c:655 browser.c:1056 browser.c:1153
-+#: browser.c:655 browser.c:1035 browser.c:1132
- msgid "No files match the file mask"
- msgstr "¯aden plik nie pasuje do wzorca"
-
-@@ -208,60 +208,55 @@ msgid "Create is only supported for IMAP
- msgstr "Tworzenie skrzynek jest obs³ugiwane tylko dla skrzynek IMAP"
-
- #: browser.c:880
--#, fuzzy
--msgid "Rename is only supported for IMAP mailboxes"
--msgstr "Tworzenie skrzynek jest obs³ugiwane tylko dla skrzynek IMAP"
--
--#: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
- msgstr "Usuwanie skrzynek jest obs³ugiwane tylko dla skrzynek IMAP"
-
--#: browser.c:909
-+#: browser.c:888
- #, c-format
- msgid "Really delete mailbox \"%s\"?"
- msgstr "Naprawdê usun±æ skrzynkê \"%s\"?"
-
--#: browser.c:923
-+#: browser.c:902
- msgid "Mailbox deleted."
- msgstr "Skrzynka zosta³a usuniêta."
-
--#: browser.c:929
-+#: browser.c:908
- msgid "Mailbox not deleted."
- msgstr "Skrzynka nie zosta³a usuniêta."
-
--#: browser.c:948
-+#: browser.c:927
- msgid "Chdir to: "
- msgstr "Zmieñ katalog na: "
-
--#: browser.c:977 browser.c:1049
-+#: browser.c:956 browser.c:1028
- msgid "Error scanning directory."
- msgstr "B³±d przegl±dania katalogu."
-
--#: browser.c:1000
-+#: browser.c:979
- msgid "File Mask: "
- msgstr "Wzorzec nazw plików: "
-
--#: browser.c:1072
-+#: browser.c:1051
- msgid "Reverse sort by (d)ate, (a)lpha, si(z)e or do(n)'t sort? "
- msgstr "Sortowanie odwrotne wg (d)aty, (a)lfabetu, (w)ielko¶ci, ¿ad(n)e?"
-
--#: browser.c:1073
-+#: browser.c:1052
- msgid "Sort by (d)ate, (a)lpha, si(z)e or do(n)'t sort? "
- msgstr "Sortowanie wg (d)aty, (a)lfabetu, (w)ielko¶ci, ¿ad(n)e?"
-
--#: browser.c:1074
-+#: browser.c:1053
- msgid "dazn"
- msgstr "dawn"
-
--#: browser.c:1140
-+#: browser.c:1119
- msgid "New file name: "
- msgstr "Nazwa nowego pliku: "
-
--#: browser.c:1171
-+#: browser.c:1150
- msgid "Can't view a directory"
- msgstr "Nie mo¿na przegl±daæ tego katalogu"
-
--#: browser.c:1188
-+#: browser.c:1167
- msgid "Error trying to view file"
- msgstr "B³±d podczas próby przegl±dania pliku"
-
-@@ -448,19 +443,12 @@ msgid "Messages could not be printed"
- msgstr "Listy nie zosta³y wydrukowane"
-
- #: commands.c:508
--msgid ""
--"Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s"
--"(p)am?: "
--msgstr ""
--"Odwr-Sort (d)ata/(a)ut/o(t)rzym/t(e)m/d(o)/(w)±t/(b)ez/ro(z)m/wa(g)a/(s)"
--"pam?: "
-+msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am?: "
-+msgstr "Odwr-Sort (d)ata/(a)ut/o(t)rzym/t(e)m/d(o)/(w)±t/(b)ez/ro(z)m/wa(g)a/(s)pam?: "
-
- #: commands.c:509
--msgid ""
--"Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)"
--"am?: "
--msgstr ""
--"Sortuj (d)ata/(a)ut/o(t)rzym/t(e)mat/d(o)/(w)±t/(b)ez/ro(z)m/wa(g)a/(s)pam?: "
-+msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am?: "
-+msgstr "Sortuj (d)ata/(a)ut/o(t)rzym/t(e)mat/d(o)/(w)±t/(b)ez/ro(z)m/wa(g)a/(s)pam?: "
-
- #: commands.c:510
- msgid "dfrsotuzcp"
-@@ -746,68 +734,44 @@ msgstr "Nie mo¿na wys³aæ listu w trybie
- msgid "Mail not sent."
- msgstr "List nie zosta³ wys³any."
-
--#: crypt.c:398
-+#: crypt.c:395
- msgid "S/MIME messages with no hints on content are unsupported."
- msgstr "Listy S/MIME bez wskazówek co do zawarto¶ci nie s± obs³ugiwane."
-
--#: crypt.c:617 crypt.c:661
-+#: crypt.c:614 crypt.c:658
- msgid "Trying to extract PGP keys...\n"
- msgstr "Próba skopiowania kluczy PGP...\n"
-
--#: crypt.c:641 crypt.c:681
-+#: crypt.c:638 crypt.c:678
- msgid "Trying to extract S/MIME certificates...\n"
- msgstr "Próba skopiowania kluczy S/MIME...\n"
-
--#: crypt.c:802
--msgid ""
--"[-- Error: Inconsistent multipart/signed structure! --]\n"
--"\n"
--msgstr ""
--"[-- B³±d: Niespójna struktura multipart/signed ! --]\n"
--"\n"
--
--#: crypt.c:824
--#, c-format
--msgid ""
--"[-- Error: Unknown multipart/signed protocol %s! --]\n"
--"\n"
--msgstr ""
--"[-- B³±d: Nieznany protokó³ multipart/signed %s! --]\n"
--"\n"
--
--#: crypt.c:864
--#, c-format
--msgid ""
--"[-- Warning: We can't verify %s/%s signatures. --]\n"
--"\n"
--msgstr ""
--"[-- Ostrze¿enie: nie mo¿na zweryfikowaæ podpisów %s/%s --]\n"
--"\n"
-+#: crypt.c:799
-+msgid "[-- Error: Inconsistent multipart/signed structure! --]\n\n"
-+msgstr "[-- B³±d: Niespójna struktura multipart/signed ! --]\n\n"
-+
-+#: crypt.c:821
-+#, c-format
-+msgid "[-- Error: Unknown multipart/signed protocol %s! --]\n\n"
-+msgstr "[-- B³±d: Nieznany protokó³ multipart/signed %s! --]\n\n"
-+
-+#: crypt.c:861
-+#, c-format
-+msgid "[-- Warning: We can't verify %s/%s signatures. --]\n\n"
-+msgstr "[-- Ostrze¿enie: nie mo¿na zweryfikowaæ podpisów %s/%s --]\n\n"
-
- #. Now display the signed body
--#: crypt.c:876
--msgid ""
--"[-- The following data is signed --]\n"
--"\n"
--msgstr ""
--"[-- Poni¿sze dane s± podpisane --]\n"
--"\n"
--
--#: crypt.c:882
--msgid ""
--"[-- Warning: Can't find any signatures. --]\n"
--"\n"
--msgstr ""
--"[-- Ostrze¿enie: Nie znaleziono ¿adnych podpisów. --]\n"
--"\n"
--
--#: crypt.c:888
--msgid ""
--"\n"
--"[-- End of signed data --]\n"
--msgstr ""
--"\n"
--"[-- Koniec podpisanych danych --]\n"
-+#: crypt.c:873
-+msgid "[-- The following data is signed --]\n\n"
-+msgstr "[-- Poni¿sze dane s± podpisane --]\n\n"
-+
-+#: crypt.c:879
-+msgid "[-- Warning: Can't find any signatures. --]\n\n"
-+msgstr "[-- Ostrze¿enie: Nie znaleziono ¿adnych podpisów. --]\n\n"
-+
-+#: crypt.c:885
-+msgid "\n[-- End of signed data --]\n"
-+msgstr "\n[-- Koniec podpisanych danych --]\n"
-
- #: curs_lib.c:190
- msgid "yes"
-@@ -902,7 +866,7 @@ msgstr "Skrzynka zosta³a zmodyfikowana z
- msgid "No tagged messages."
- msgstr "Brak zaznaczonych listów."
-
--#: curs_main.c:657 menu.c:906
-+#: curs_main.c:657 menu.c:901
- msgid "Nothing to do."
- msgstr "Brak akcji do wykonania."
-
-@@ -1035,44 +999,8 @@ msgstr "Nie mo¿na edytowaæ listów na ser
- #. * declared "static" (sigh)
- #.
- #: edit.c:41
--msgid ""
--"~~\t\tinsert a line begining with a single ~\n"
--"~b users\tadd users to the Bcc: field\n"
--"~c users\tadd users to the Cc: field\n"
--"~f messages\tinclude messages\n"
--"~F messages\tsame as ~f, except also include headers\n"
--"~h\t\tedit the message header\n"
--"~m messages\tinclude and quote messages\n"
--"~M messages\tsame as ~m, except include headers\n"
--"~p\t\tprint the message\n"
--"~q\t\twrite file and quit editor\n"
--"~r file\t\tread a file into the editor\n"
--"~t users\tadd users to the To: field\n"
--"~u\t\trecall the previous line\n"
--"~v\t\tedit message with the $visual editor\n"
--"~w file\t\twrite message to file\n"
--"~x\t\tabort changes and quit editor\n"
--"~?\t\tthis message\n"
--".\t\ton a line by itself ends input\n"
--msgstr ""
--"~~\t\twstaw liniê zaczynaj±c± siê pojedyñczym ~\n"
--"~b u¿ytkownicy\tdodaj u¿ytkowników do pola BCC:\n"
--"~c u¿ytkownicy\tdodaj u¿ytkowników do pola Cc:\n"
--"~f listy\tdo³±cz listy\n"
--"~F listy\tto samo co ~f ale do³±cz te¿ nag³ówki\n"
--"~h\t\tedytuj nag³ówki\n"
--"~m listy\tdodaj i komentuj listy\n"
--"~M listy\tto samo co ~m ale do³±cz te¿ nag³ówki\n"
--"~p\t\tdrukuj list\n"
--"~q\t\tzapisz plik i wyjd¼ z edytora\n"
--"~r plik\t\twczytaj plik do edytora\n"
--"~t u¿ytkownicy\tdodaj u¿ytkowników do pola To:\n"
--"~u\t\todtwórz poprzedni± liniê\n"
--"~v\t\tedytuj list edytorem $visual\n"
--"~w plik\t\tzapisz list do pliku\n"
--"~x\t\tporzuæ zmiany i wyjd¼ z edytora\n"
--"~?\t\tten list\n"
--".\t\tstoj±c sama w linii koñczy wpisywanie\n"
-+msgid "~~\t\tinsert a line begining with a single ~\n~b users\tadd users to the Bcc: field\n~c users\tadd users to the Cc: field\n~f messages\tinclude messages\n~F messages\tsame as ~f, except also include headers\n~h\t\tedit the message header\n~m messages\tinclude and quote messages\n~M messages\tsame as ~m, except include headers\n~p\t\tprint the message\n~q\t\twrite file and quit editor\n~r file\t\tread a file into the editor\n~t users\tadd users to the To: field\n~u\t\trecall the previous line\n~v\t\tedit message with the $visual editor\n~w file\t\twrite message to file\n~x\t\tabort changes and quit editor\n~?\t\tthis message\n.\t\ton a line by itself ends input\n"
-+msgstr "~~\t\twstaw liniê zaczynaj±c± siê pojedyñczym ~\n~b u¿ytkownicy\tdodaj u¿ytkowników do pola BCC:\n~c u¿ytkownicy\tdodaj u¿ytkowników do pola Cc:\n~f listy\tdo³±cz listy\n~F listy\tto samo co ~f ale do³±cz te¿ nag³ówki\n~h\t\tedytuj nag³ówki\n~m listy\tdodaj i komentuj listy\n~M listy\tto samo co ~m ale do³±cz te¿ nag³ówki\n~p\t\tdrukuj list\n~q\t\tzapisz plik i wyjd¼ z edytora\n~r plik\t\twczytaj plik do edytora\n~t u¿ytkownicy\tdodaj u¿ytkowników do pola To:\n~u\t\todtwórz poprzedni± liniê\n~v\t\tedytuj list edytorem $visual\n~w plik\t\tzapisz list do pliku\n~x\t\tporzuæ zmiany i wyjd¼ z edytora\n~?\t\tten list\n.\t\tstoj±c sama w linii koñczy wpisywanie\n"
-
- #: edit.c:186
- #, c-format
-@@ -1161,9 +1089,7 @@ msgstr "Wyczy¶æ flagê"
-
- #: handler.c:1349
- msgid "[-- Error: Could not display any parts of Multipart/Alternative! --]\n"
--msgstr ""
--"[--B³±d: Nie mo¿na wy¶wietliæ ¿adnego z fragmentów Multipart/Alternative! "
--"--]\n"
-+msgstr "[--B³±d: Nie mo¿na wy¶wietliæ ¿adnego z fragmentów Multipart/Alternative! --]\n"
-
- #: handler.c:1459
- #, c-format
-@@ -1197,8 +1123,7 @@ msgstr "[-- Komunikaty b³êdów %s --]\n"
-
- #: handler.c:1643
- msgid "[-- Error: message/external-body has no access-type parameter --]\n"
--msgstr ""
--"[-- B³±d: message/external-body nie ma ustawionego rodzaju dostêpu --]\n"
-+msgstr "[-- B³±d: message/external-body nie ma ustawionego rodzaju dostêpu --]\n"
-
- #: handler.c:1662
- #, c-format
-@@ -1230,12 +1155,8 @@ msgid "[-- This %s/%s attachment is not
- msgstr "[-- Ten za³±cznik typu %s/%s nie jest zawarty, --]\n"
-
- #: handler.c:1696
--msgid ""
--"[-- and the indicated external source has --]\n"
--"[-- expired. --]\n"
--msgstr ""
--"[-- a podane ¼ród³o zewnêtrzne jest --]\n"
--"[-- nieaktualne. --]\n"
-+msgid "[-- and the indicated external source has --]\n[-- expired. --]\n"
-+msgstr "[-- a podane ¼ród³o zewnêtrzne jest --]\n[-- nieaktualne. --]\n"
-
- #: handler.c:1714
- #, c-format
-@@ -1282,24 +1203,12 @@ msgid "<UNKNOWN>"
- msgstr "<NIEZNANY>"
-
- #: help.c:336
--msgid ""
--"\n"
--"Generic bindings:\n"
--"\n"
--msgstr ""
--"\n"
--"Standardowe przypisania klawiszy:\n"
--"\n"
-+msgid "\nGeneric bindings:\n\n"
-+msgstr "\nStandardowe przypisania klawiszy:\n\n"
-
- #: help.c:340
--msgid ""
--"\n"
--"Unbound functions:\n"
--"\n"
--msgstr ""
--"\n"
--"Nie przypisane klawiszom funkcje:\n"
--"\n"
-+msgid "\nUnbound functions:\n\n"
-+msgstr "\nNie przypisane klawiszom funkcje:\n\n"
-
- #: help.c:348
- #, c-format
-@@ -1307,7 +1216,6 @@ msgid "Help for %s"
- msgstr "Pomoc dla menu %s"
-
- #: hook.c:246
--#, c-format
- msgid "unhook: Can't do unhook * from within a hook."
- msgstr "unhook: Nie mo¿na wykonaæ \"unhook *\" wewn±trz innego polecenia hook."
-
-@@ -1371,7 +1279,7 @@ msgstr "Uwierzytelnianie (%s)..."
- msgid "SASL authentication failed."
- msgstr "Uwierzytelnianie SASL nie powiod³o siê."
-
--#: imap/browse.c:68 imap/imap.c:559
-+#: imap/browse.c:68 imap/imap.c:542
- #, c-format
- msgid "%s is an invalid IMAP path"
- msgstr "%s jest b³êdn± ¶cie¿k± IMAP"
-@@ -1392,7 +1300,7 @@ msgstr "Brak skrzynki"
- msgid "Create mailbox: "
- msgstr "Nazwa skrzynki: "
-
--#: imap/browse.c:286 imap/browse.c:332
-+#: imap/browse.c:286
- msgid "Mailbox must have a name."
- msgstr "Skrzynka musi zostaæ nazwana."
-
-@@ -1400,21 +1308,6 @@ msgstr "Skrzynka musi zostaæ nazwana."
- msgid "Mailbox created."
- msgstr "Skrzynka zosta³a utworzona."
-
--#: imap/browse.c:325
--#, fuzzy, c-format
--msgid "Rename mailbox %s to: "
--msgstr "Nazwa skrzynki: "
--
--#: imap/browse.c:338
--#, fuzzy, c-format
--msgid "Rename failed: %s"
--msgstr "SSL nie powiod³o siê: %s"
--
--#: imap/browse.c:343
--#, fuzzy
--msgid "Mailbox renamed."
--msgstr "Skrzynka zosta³a utworzona."
--
- #: imap/command.c:294
- msgid "Mailbox closed"
- msgstr "Skrzynka zosta³a zamkniêta"
-@@ -1426,84 +1319,84 @@ msgstr "Skrzynka zosta³a zamkniêta"
- msgid "Fatal error. Message count is out of sync!"
- msgstr "B³±d krytyczny. Niezidentyfikowana ilo¶æ listów!"
-
--#: imap/imap.c:168
-+#: imap/imap.c:151
- #, c-format
- msgid "Closing connection to %s..."
- msgstr "Zamykanie po³±czenia do %s..."
-
--#: imap/imap.c:328
-+#: imap/imap.c:311
- msgid "This IMAP server is ancient. Mutt does not work with it."
- msgstr "Zbyt stara wersja serwera IMAP. Praca z tym serwerem nie jest mo¿liwa."
-
--#: imap/imap.c:419
-+#: imap/imap.c:402
- #, c-format
- msgid "Unexpected response received from server: %s"
- msgstr "Otrzymano nieoczekiwan± odpowied¼ od serwera: %s"
-
--#: imap/imap.c:439 pop_lib.c:284
-+#: imap/imap.c:422 pop_lib.c:284
- msgid "Secure connection with TLS?"
- msgstr "Po³±czyæ u¿ywaj±c TLS?"
-
--#: imap/imap.c:452 pop_lib.c:308
-+#: imap/imap.c:435 pop_lib.c:308
- msgid "Could not negotiate TLS connection"
- msgstr "Po³±czenie TSL nie zosta³o wynegocjowane"
-
--#: imap/imap.c:590
-+#: imap/imap.c:573
- #, c-format
- msgid "Selecting %s..."
- msgstr "Wybieranie %s..."
-
--#: imap/imap.c:726
-+#: imap/imap.c:709
- msgid "Error opening mailbox"
- msgstr "B³±d otwarcia skrzynki"
-
- #. STATUS not supported
--#: imap/imap.c:780
-+#: imap/imap.c:763
- msgid "Unable to append to IMAP mailboxes at this server"
- msgstr "Nie mo¿na dopisaæ do skrzynek IMAP na tym serwerze"
-
- #. command failed cause folder doesn't exist
--#: imap/imap.c:789 imap/message.c:723 muttlib.c:1234
-+#: imap/imap.c:772 imap/message.c:720 muttlib.c:1234
- #, c-format
- msgid "Create %s?"
- msgstr "Utworzyæ %s?"
-
--#: imap/imap.c:975 pop.c:465
-+#: imap/imap.c:958 pop.c:465
- #, c-format
- msgid "Marking %d messages deleted..."
- msgstr "Zaznaczanie %d listów jako skasowanych..."
-
--#: imap/imap.c:984
-+#: imap/imap.c:967
- msgid "Expunge failed"
- msgstr "Skasowanie nie powiod³o siê"
-
--#: imap/imap.c:999
-+#: imap/imap.c:982
- #, c-format
- msgid "Saving message status flags... [%d/%d]"
- msgstr "Zapisywanie stanu flag listów... [%d/%d]"
-
--#: imap/imap.c:1083
-+#: imap/imap.c:1066
- msgid "Expunging messages from server..."
- msgstr "Kasowanie listów na serwerze... "
-
--#: imap/imap.c:1088
-+#: imap/imap.c:1071
- msgid "imap_sync_mailbox: EXPUNGE failed"
- msgstr "imap_sync_mailbox: skasowanie nie powiod³o siê"
-
--#: imap/imap.c:1122
-+#: imap/imap.c:1105
- msgid "CLOSE failed"
- msgstr "Polecenie CLOSE nie powiod³o siê"
-
--#: imap/imap.c:1365
-+#: imap/imap.c:1348
- msgid "Bad mailbox name"
- msgstr "B³êdna nazwa skrzynki"
-
--#: imap/imap.c:1377
-+#: imap/imap.c:1360
- #, c-format
- msgid "Subscribing to %s..."
- msgstr "Subskrybowanie %s..."
-
--#: imap/imap.c:1379
-+#: imap/imap.c:1362
- #, c-format
- msgid "Unsubscribing to %s..."
- msgstr "Odsubskrybowanie %s..."
-@@ -1519,9 +1412,9 @@ msgid "Could not create temporary file %
- msgstr "Nie mo¿na utworzyæ pliku tymczasowego %s"
-
- #: imap/message.c:134
--#, fuzzy, c-format
-+#, c-format
- msgid "Evaluating cache... [%d/%d]"
--msgstr "Pobieranie nag³ówków listów... [%d/%d]"
-+msgstr "Szacowanie bufora... [%d/%d]"
-
- #: imap/message.c:202 pop.c:210
- #, c-format
-@@ -1536,16 +1429,16 @@ msgstr "Pobieranie listu..."
- msgid "The message index is incorrect. Try reopening the mailbox."
- msgstr "B³êdny indeks listów. Spróbuj ponownie otworzyæ skrzynkê."
-
--#: imap/message.c:589
-+#: imap/message.c:586
- msgid "Uploading message ..."
- msgstr "£adowanie listu ..."
-
--#: imap/message.c:699
-+#: imap/message.c:696
- #, c-format
- msgid "Copying %d messages to %s..."
- msgstr "Kopiowanie %d listów do %s..."
-
--#: imap/message.c:703
-+#: imap/message.c:700
- #, c-format
- msgid "Copying message %d to %s..."
- msgstr "Kopiowanie listu %d do %s..."
-@@ -1596,12 +1489,10 @@ msgid "%s: unknown variable"
- msgstr "%s: nieznana zmienna"
-
- #: init.c:1243
--#, c-format
- msgid "prefix is illegal with reset"
- msgstr "reset: nieprawid³owy prefiks"
-
- #: init.c:1249
--#, c-format
- msgid "value is illegal with reset"
- msgstr "reset: nieprawid³owa warto¶æ"
-
-@@ -1789,8 +1680,7 @@ msgstr "odsubskrybuj bie¿±c± skrzynkê (t
-
- #: keymap_alldefs.h:17
- msgid "toggle view all/subscribed mailboxes (IMAP only)"
--msgstr ""
--"zmieñ tryb przegl±dania skrzynek: wszystkie/zasubskrybowane (tylko IMAP)"
-+msgstr "zmieñ tryb przegl±dania skrzynek: wszystkie/zasubskrybowane (tylko IMAP)"
-
- #: keymap_alldefs.h:18
- msgid "list mailboxes with new mail"
-@@ -2325,199 +2215,194 @@ msgid "{internal}"
- msgstr "{wewnêtrzne}"
-
- #: keymap_alldefs.h:151
--#, fuzzy
--msgid "rename the current mailbox (IMAP only)"
--msgstr "usuñ bie¿±c± skrzynkê (tylko IMAP)"
--
--#: keymap_alldefs.h:152
- msgid "reply to a message"
- msgstr "odpowiedz na list"
-
--#: keymap_alldefs.h:153
-+#: keymap_alldefs.h:152
- msgid "use the current message as a template for a new one"
- msgstr "u¿yj bie¿±cego listu jako wzorca dla nowych wiadomo¶ci"
-
--#: keymap_alldefs.h:154
-+#: keymap_alldefs.h:153
- msgid "save message/attachment to a file"
- msgstr "zapisz list/za³±cznik do pliku"
-
--#: keymap_alldefs.h:155
-+#: keymap_alldefs.h:154
- msgid "search for a regular expression"
- msgstr "szukaj wyra¿enia regularnego"
-
--#: keymap_alldefs.h:156
-+#: keymap_alldefs.h:155
- msgid "search backwards for a regular expression"
- msgstr "szukaj wstecz wyra¿enia regularnego"
-
--#: keymap_alldefs.h:157
-+#: keymap_alldefs.h:156
- msgid "search for next match"
- msgstr "szukaj nastêpnego pozytywnego rezultatu"
-
--#: keymap_alldefs.h:158
-+#: keymap_alldefs.h:157
- msgid "search for next match in opposite direction"
- msgstr "szukaj wstecz nastêpnego pozytywnego rezultatu"
-
--#: keymap_alldefs.h:159
-+#: keymap_alldefs.h:158
- msgid "toggle search pattern coloring"
- msgstr "ustala czy szukana fraza ma byæ zaznaczona kolorem"
-
--#: keymap_alldefs.h:160
-+#: keymap_alldefs.h:159
- msgid "invoke a command in a subshell"
- msgstr "wywo³aj polecenie w podpow³oce"
-
--#: keymap_alldefs.h:161
-+#: keymap_alldefs.h:160
- msgid "sort messages"
- msgstr "uszereguj listy"
-
--#: keymap_alldefs.h:162
-+#: keymap_alldefs.h:161
- msgid "sort messages in reverse order"
- msgstr "uszereguj listy w odwrotnej kolejno¶ci"
-
--#: keymap_alldefs.h:163
-+#: keymap_alldefs.h:162
- msgid "tag the current entry"
- msgstr "zaznacz bie¿±c± pozycjê"
-
--#: keymap_alldefs.h:164
-+#: keymap_alldefs.h:163
- msgid "apply next function to tagged messages"
- msgstr "wykonaj nastêpne polecenie na zaznaczonych listach"
-
--#: keymap_alldefs.h:165
-+#: keymap_alldefs.h:164
- msgid "apply next function ONLY to tagged messages"
- msgstr "wykonaj nastêpne polecenie TYLKO na zaznaczonych listach"
-
--#: keymap_alldefs.h:166
-+#: keymap_alldefs.h:165
- msgid "tag the current subthread"
- msgstr "zaznacz bie¿±cy podw±tek"
-
--#: keymap_alldefs.h:167
-+#: keymap_alldefs.h:166
- msgid "tag the current thread"
- msgstr "zaznacz bie¿±cy w±tek"
-
--#: keymap_alldefs.h:168
-+#: keymap_alldefs.h:167
- msgid "toggle a message's 'new' flag"
- msgstr "ustaw flagê listu na 'nowy'"
-
--#: keymap_alldefs.h:169
-+#: keymap_alldefs.h:168
- msgid "toggle whether the mailbox will be rewritten"
- msgstr "ustala czy skrzynka bêdzie ponownie zapisana"
-
--#: keymap_alldefs.h:170
-+#: keymap_alldefs.h:169
- msgid "toggle whether to browse mailboxes or all files"
- msgstr "ustala czy przegl±daæ skrzynki czy wszystkie pliki"
-
--#: keymap_alldefs.h:171
-+#: keymap_alldefs.h:170
- msgid "move to the top of the page"
- msgstr "przejd¼ na pocz±tek strony"
-
--#: keymap_alldefs.h:172
-+#: keymap_alldefs.h:171
- msgid "undelete the current entry"
- msgstr "odtwórz bie¿±c± pozycjê listy"
-
--#: keymap_alldefs.h:173
-+#: keymap_alldefs.h:172
- msgid "undelete all messages in thread"
- msgstr "odtwórz wszystkie listy z tego w±tku"
-
--#: keymap_alldefs.h:174
-+#: keymap_alldefs.h:173
- msgid "undelete all messages in subthread"
- msgstr "odtwórz wszystkie listy z tego podw±tku"
-
--#: keymap_alldefs.h:175
-+#: keymap_alldefs.h:174
- msgid "show the Mutt version number and date"
- msgstr "poka¿ wersjê i datê programu pocztowego Mutt"
-
--#: keymap_alldefs.h:176
-+#: keymap_alldefs.h:175
- msgid "view attachment using mailcap entry if necessary"
- msgstr "poka¿ za³±cznik u¿ywaj±c, je¶li to niezbêdne, pliku 'mailcap'"
-
--#: keymap_alldefs.h:177
-+#: keymap_alldefs.h:176
- msgid "show MIME attachments"
- msgstr "poka¿ za³±czniki MIME"
-
--#: keymap_alldefs.h:178
-+#: keymap_alldefs.h:177
- msgid "display the keycode for a key press"
- msgstr "wy¶wietl kod wprowadzonego znaku"
-
--#: keymap_alldefs.h:179
-+#: keymap_alldefs.h:178
- msgid "show currently active limit pattern"
- msgstr "poka¿ bie¿±cy wzorzec ograniczaj±cy"
-
--#: keymap_alldefs.h:180
-+#: keymap_alldefs.h:179
- msgid "collapse/uncollapse current thread"
- msgstr "zwiñ/rozwiñ bie¿±cy w±tek"
-
--#: keymap_alldefs.h:181
-+#: keymap_alldefs.h:180
- msgid "collapse/uncollapse all threads"
- msgstr "zwiñ/rozwiñ wszystkie w±tki"
-
--#: keymap_alldefs.h:182
-+#: keymap_alldefs.h:181
- msgid "attach a PGP public key"
- msgstr "do³±cz w³asny klucz publiczny PGP"
-
--#: keymap_alldefs.h:183
-+#: keymap_alldefs.h:182
- msgid "show PGP options"
- msgstr "poka¿ opcje PGP"
-
--#: keymap_alldefs.h:184
-+#: keymap_alldefs.h:183
- msgid "mail a PGP public key"
- msgstr "wy¶lij w³asny klucz publiczny PGP"
-
--#: keymap_alldefs.h:185
-+#: keymap_alldefs.h:184
- msgid "verify a PGP public key"
- msgstr "zweryfikuj klucz publiczny PGP"
-
--#: keymap_alldefs.h:186
-+#: keymap_alldefs.h:185
- msgid "view the key's user id"
- msgstr "obejrzyj identyfikator u¿ytkownika klucza"
-
--#: keymap_alldefs.h:187
-+#: keymap_alldefs.h:186
- msgid "check for classic pgp"
- msgstr "u¿yj starej wersji pgp"
-
--#: keymap_alldefs.h:188
-+#: keymap_alldefs.h:187
- msgid "Accept the chain constructed"
- msgstr "Potwierd¼ skonstruowany ³añcuch"
-
--#: keymap_alldefs.h:189
-+#: keymap_alldefs.h:188
- msgid "Append a remailer to the chain"
- msgstr "Dodaj remailera do ³añcucha"
-
--#: keymap_alldefs.h:190
-+#: keymap_alldefs.h:189
- msgid "Insert a remailer into the chain"
- msgstr "Wprowadz remailera do ³añcucha"
-
--#: keymap_alldefs.h:191
-+#: keymap_alldefs.h:190
- msgid "Delete a remailer from the chain"
- msgstr "Usuñ remailera z ³añcucha"
-
--#: keymap_alldefs.h:192
-+#: keymap_alldefs.h:191
- msgid "Select the previous element of the chain"
- msgstr "Wybierz poprzedni element ³añcucha"
-
--#: keymap_alldefs.h:193
-+#: keymap_alldefs.h:192
- msgid "Select the next element of the chain"
- msgstr "Wybierz nastepny element ³añcucha"
-
--#: keymap_alldefs.h:194
-+#: keymap_alldefs.h:193
- msgid "send the message through a mixmaster remailer chain"
- msgstr "przeslij list przez ³añcuch anonimowych remailerów typu mixmaster"
-
--#: keymap_alldefs.h:195
-+#: keymap_alldefs.h:194
- msgid "make decrypted copy and delete"
- msgstr "utwórz rozszyfrowana± kopiê i usuñ orygina³"
-
--#: keymap_alldefs.h:196
-+#: keymap_alldefs.h:195
- msgid "make decrypted copy"
- msgstr "utwórz rozszyfrowan± kopiê"
-
--#: keymap_alldefs.h:197
-+#: keymap_alldefs.h:196
- msgid "wipe passphrase(s) from memory"
- msgstr "wyma¿ has³o z pamiêci operacyjnej"
-
--#: keymap_alldefs.h:198
-+#: keymap_alldefs.h:197
- msgid "extract supported public keys"
- msgstr "kopiuj klucze publiczne"
-
--#: keymap_alldefs.h:199
-+#: keymap_alldefs.h:198
- msgid "show S/MIME options"
- msgstr "poka¿ opcje S/MIME"
-
-@@ -2530,159 +2415,24 @@ msgid "Out of memory!"
- msgstr "Brak pamiêci!"
-
- #: main.c:51
--msgid ""
--"To contact the developers, please mail to <mutt-dev@mutt.org>.\n"
--"To report a bug, please use the flea(1) utility.\n"
--msgstr ""
--"Aby powiadomiæ autorów, proszê pisaæ na <mutt-dev@mutt.org>.\n"
--"Aby zg³osiæ b³±d u¿yj programu flea(1).\n"
-+msgid "To contact the developers, please mail to <mutt-dev@mutt.org>.\nTo report a bug, please use the flea(1) utility.\n"
-+msgstr "Aby powiadomiæ autorów, proszê pisaæ na <mutt-dev@mutt.org>.\nAby zg³osiæ b³±d u¿yj programu flea(1).\n"
-
- #: main.c:55
--msgid ""
--"Copyright (C) 1996-2002 Michael R. Elkins and others.\n"
--"Mutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.\n"
--"Mutt is free software, and you are welcome to redistribute it\n"
--"under certain conditions; type `mutt -vv' for details.\n"
--msgstr ""
--"Copyright (C) 1996-2002 Michael R. Elkins i inni.\n"
--"Program nie jest objêty ¯ADN¡ gwarancj±; szczegó³y poznasz pisz±c 'mutt -"
--"vv'.\n"
--"Mutt jest darmowym oprogramowaniem, jeste¶ jak najbardziej uprawniony do\n"
--"jego redystrybucji pod pewnymi warunkami, szczegó³y poznasz pisz±c 'mutt -"
--"vv'.\n"
-+msgid "Copyright (C) 1996-2002 Michael R. Elkins and others.\nMutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.\nMutt is free software, and you are welcome to redistribute it\nunder certain conditions; type `mutt -vv' for details.\n"
-+msgstr "Copyright (C) 1996-2002 Michael R. Elkins i inni.\nProgram nie jest objêty ¯ADN¡ gwarancj±; szczegó³y poznasz pisz±c 'mutt -vv'.\nMutt jest darmowym oprogramowaniem, jeste¶ jak najbardziej uprawniony do\njego redystrybucji pod pewnymi warunkami, szczegó³y poznasz pisz±c 'mutt -vv'.\n"
-
- #: main.c:61
--msgid ""
--"Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>\n"
--"Copyright (C) 1996-2002 Brandon Long <blong@fiction.net>\n"
--"Copyright (C) 1997-2002 Thomas Roessler <roessler@does-not-exist.org>\n"
--"Copyright (C) 1998-2002 Werner Koch <wk@isil.d.shuttle.de>\n"
--"Copyright (C) 1999-2002 Brendan Cully <brendan@kublai.com>\n"
--"Copyright (C) 1999-2002 Tommi Komulainen <Tommi.Komulainen@iki.fi>\n"
--"Copyright (C) 2000-2002 Edmund Grimley Evans <edmundo@rano.org>\n"
--"\n"
--"Lots of others not mentioned here contributed lots of code,\n"
--"fixes, and suggestions.\n"
--"\n"
--" This program is free software; you can redistribute it and/or modify\n"
--" it under the terms of the GNU General Public License as published by\n"
--" the Free Software Foundation; either version 2 of the License, or\n"
--" (at your option) any later version.\n"
--"\n"
--" This program is distributed in the hope that it will be useful,\n"
--" but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
--" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
--" GNU General Public License for more details.\n"
--"\n"
--" You should have received a copy of the GNU General Public License\n"
--" along with this program; if not, write to the Free Software\n"
--" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\n"
--msgstr ""
--"Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>\n"
--"Copyright (C) 1996-2002 Brandon Long <blong@fiction.net>\n"
--"Copyright (C) 1997-2002 Thomas Roessler <roessler@does-not-exist.org>\n"
--"Copyright (C) 1998-2002 Werner Koch <wk@isil.d.shuttle.de>\n"
--"Copyright (C) 1999-2002 Brendan Cully <brendan@kublai.com>\n"
--"Copyright (C) 1999-2002 Tommi Komulainen <Tommi.Komulainen@iki.fi>\n"
--"Copyright (C) 2000-2002 Edmund Grimley Evans <edmundo@rano.org>\n"
--"\n"
--"Wielu innych twórców, nie wspomnianych tutaj,\n"
--"wnios³o wiele nowego kodu, poprawek i sugestii.\n"
--"\n"
--" Ten program jest darmowy; mo¿esz rozprowadzaæ go i/lub modyfikowaæ\n"
--" zachowuj±c warunki Powszechnej Licencji Publicznej GNU (General Public\n"
--" Licence), opublikowanej przez Free Software Foundation, w wersji 2\n"
--" lub wy¿szej.\n"
--"\n"
--" Program ten jest rozprowadzany w nadziei, ¿e bêdzie przydatny,\n"
--" ale BEZ ¯ADNYCH GWARANCJI, wyra¿onych wprost lub domy¶lnie nawet,\n"
--" w tym gwarancji mo¿liwo¶ci SPRZEDA¯Y i PRZYDATNO¦CI DO KONKRETNYCH "
--"CELÓW.\n"
--" Szczegó³y znajdziesz w Powszechnej Licencji Publicznej GNU.\n"
--"\n"
--" W dokumentacji tego programu powinna znajdowaæ siê kopia Powszechnej\n"
--" Licencji Publicznej GNU. Je¶li tak nie jest, napisz do Free Software\n"
--" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\n"
-+msgid "Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>\nCopyright (C) 1996-2002 Brandon Long <blong@fiction.net>\nCopyright (C) 1997-2002 Thomas Roessler <roessler@does-not-exist.org>\nCopyright (C) 1998-2002 Werner Koch <wk@isil.d.shuttle.de>\nCopyright (C) 1999-2002 Brendan Cully <brendan@kublai.com>\nCopyright (C) 1999-2002 Tommi Komulainen <Tommi.Komulainen@iki.fi>\nCopyright (C) 2000-2002 Edmund Grimley Evans <edmundo@rano.org>\n\nLots of others not mentioned here contributed lots of code,\nfixes, and suggestions.\n\n This program is free software; you can redistribute it and/or modify\n it under the terms of the GNU General Public License as published by\n the Free Software Foundation; either version 2 of the License, or\n (at your option) any later version.\n\n This program is distributed in the hope that it will be useful,\n but WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n GNU General Public License for more details.\n\n You should have received a copy of the GNU General Public License\n along with this program; if not, write to the Free Software\n Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\n"
-+msgstr "Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>\nCopyright (C) 1996-2002 Brandon Long <blong@fiction.net>\nCopyright (C) 1997-2002 Thomas Roessler <roessler@does-not-exist.org>\nCopyright (C) 1998-2002 Werner Koch <wk@isil.d.shuttle.de>\nCopyright (C) 1999-2002 Brendan Cully <brendan@kublai.com>\nCopyright (C) 1999-2002 Tommi Komulainen <Tommi.Komulainen@iki.fi>\nCopyright (C) 2000-2002 Edmund Grimley Evans <edmundo@rano.org>\n\nWielu innych twórców, nie wspomnianych tutaj,\nwnios³o wiele nowego kodu, poprawek i sugestii.\n\n Ten program jest darmowy; mo¿esz rozprowadzaæ go i/lub modyfikowaæ\n zachowuj±c warunki Powszechnej Licencji Publicznej GNU (General Public\n Licence), opublikowanej przez Free Software Foundation, w wersji 2\n lub wy¿szej.\n\n Program ten jest rozprowadzany w nadziei, ¿e bêdzie przydatny,\n ale BEZ ¯ADNYCH GWARANCJI, wyra¿onych wprost lub domy¶lnie nawet,\n w tym gwarancji mo¿liwo¶ci SPRZEDA¯Y i PRZYDATNO¦CI DO KONKRETNYCH CELÓW.\n Szczegó³y znajdziesz w Powszechnej Licencji Publicznej GNU.\n\n W dokumentacji tego programu powinna znajdowaæ siê kopia Powszechnej\n Licencji Publicznej GNU. Je¶li tak nie jest, napisz do Free Software\n Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\n"
-
- #: main.c:99
--#, fuzzy
--msgid ""
--"usage: mutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f "
--"<file> ]\n"
--" mutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -Q <query> [ -Q <query> ] "
--"[...]\n"
--" mutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -A <alias> [ -A <alias> ] "
--"[...]\n"
--" mutt [ -nx ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] "
--"[ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ ... ]\n"
--" mutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p\n"
--" mutt -v[v]\n"
--"\n"
--"options:\n"
--" -A <alias>\texpand the given alias\n"
--" -a <file>\tattach a file to the message\n"
--" -b <address>\tspecify a blind carbon-copy (BCC) address\n"
--" -c <address>\tspecify a carbon-copy (CC) address\n"
--" -e <command>\tspecify a command to be executed after initialization\n"
--" -f <file>\tspecify which mailbox to read\n"
--" -F <file>\tspecify an alternate muttrc file\n"
--" -H <file>\tspecify a draft file to read header and body from\n"
--" -i <file>\tspecify a file which Mutt should include in the body\n"
--" -m <type>\tspecify a default mailbox type\n"
--" -n\t\tcauses Mutt not to read the system Muttrc\n"
--" -p\t\trecall a postponed message\n"
--" -Q <variable>\tquery a configuration variable\n"
--" -R\t\topen mailbox in read-only mode\n"
--" -s <subj>\tspecify a subject (must be in quotes if it has spaces)\n"
--" -v\t\tshow version and compile-time definitions\n"
--" -x\t\tsimulate the mailx send mode\n"
--" -y\t\tselect a mailbox specified in your `mailboxes' list\n"
--" -z\t\texit immediately if there are no messages in the mailbox\n"
--" -Z\t\topen the first folder with new message, exit immediately if none\n"
--" -h\t\tthis help message"
--msgstr ""
--"u¿ycie: mutt [ -nRyzZ ] [ -e <polec> ] [ -F <plik> ] [ -m <typ> ] [ -f "
--"<plik> ]\n"
--" mutt [ -nR ] [ -e <polec> ] [ -F <plik> ] -Q <pytanie> [ -Q "
--"<pytanie> ] [...]\n"
--" mutt [ -nR ] [ -e <polec> ] [ -F <plik> ] -A <alias> [ -A <alias> ] "
--"[...]\n"
--" mutt [ -nx ] [ -e <polec> ] [ -F <plik> ] [ -a <plik> ] [ -H "
--"<plik> ] [ -i <plik> ] [ -s <tytu³> ] [ -b <adres> ] [ -c <adres> ] <adres> "
--"[ ... ]\n"
--" mutt [ -n ] [ -e <polec> ] [ -F <plik> ] -p\n"
--" mutt -v[v]\n"
--"\n"
--"opcje:\n"
--" -A <alias>\tu¿yj aliasu\n"
--" -a <plik>\tdo³±cz plik do listu\n"
--" -b <adres>\tpodaj adres blind carbon-copy (BCC)\n"
--" -c <adres>\tpodaj adres carbon-copy (CC)\n"
--" -e <polec>\tpodaj polecenie do wykonania po inicjalizacji\n"
--" -f <plik>\totwórz najpierw t± skrzynkê\n"
--" -F <plik>\tu¿yj alternatywnego pliku muttrc\n"
--" -H <plik>\tczytaj nag³ówki z pliku\n"
--" -i <plik>\twstaw ten plik w odpowiedzi\n"
--" -m <typ>\tpodaj typ skrzynki\n"
--" -n\t\tnie czytaj systemowego Muttrc\n"
--" -p\t\tponownie edytuj zarzucony list\n"
--" -Q <zmienna>\tpodaj warto¶æ zmiennej konfiguracyjnej\n"
--" -R\t\totwórz skrzynkê w trybie tylko do odczytu\n"
--" -s <tytu³>\tpodaj tytu³ (musi byæ w apostrofach, je¶li zawiera spacje)\n"
--" -v\t\tpoka¿ wersjê i wkompilowane parametry\n"
--" -x\t\tsymuluj zachowanie mailx\n"
--" -y\t\twybierz skrzynkê podan± w twojej li¶cie `mailboxes'\n"
--" -z\t\twyjd¼ natychmiast je¶li brak nowych listów w skrzynce\n"
--" -Z\t\totwórz pierwsz± skrzynkê z nowym listem i wyjd¼ je¶li brak nowych\n"
--" -h\t\tten tekst"
-+msgid "usage: mutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f <file> ]\n mutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -Q <query> [ -Q <query> ] [...]\n mutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -A <alias> [ -A <alias> ] [...]\n mutt [ -nx ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] [ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ ... ]\n mutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p\n mutt -v[v]\n\noptions:\n -A <alias>\texpand the given alias\n -a <file>\tattach a file to the message\n -b <address>\tspecify a blind carbon-copy (BCC) address\n -c <address>\tspecify a carbon-copy (CC) address\n -e <command>\tspecify a command to be executed after initialization\n -f <file>\tspecify which mailbox to read\n -F <file>\tspecify an alternate muttrc file\n -H <file>\tspecify a draft file to read header and body from\n -i <file>\tspecify a file which Mutt should include in the body\n -m <type>\tspecify a default mailbox type\n -n\t\tcauses Mutt not to read the system Muttrc\n -p\t\trecall a postponed message\n -Q <variable>\tquery a configuration variable\n -R\t\topen mailbox in read-only mode\n -s <subj>\tspecify a subject (must be in quotes if it has spaces)\n -v\t\tshow version and compile-time definitions\n -x\t\tsimulate the mailx send mode\n -y\t\tselect a mailbox specified in your `mailboxes' list\n -z\t\texit immediately if there are no messages in the mailbox\n -Z\t\topen the first folder with new message, exit immediately if none\n -h\t\tthis help message"
-+msgstr "u¿ycie: mutt [ -nRyzZ ] [ -e <polec> ] [ -F <plik> ] [ -m <typ> ] [ -f <plik> ]\n mutt [ -nR ] [ -e <polec> ] [ -F <plik> ] -Q <pytanie> [ -Q <pytanie> ] [...]\n mutt [ -nR ] [ -e <polec> ] [ -F <plik> ] -A <alias> [ -A <alias> ] [...]\n mutt [ -nx ] [ -e <polec> ] [ -F <plik> ] [ -a <plik> ] [ -H <plik> ] [ -i <plik> ] [ -s <tytu³> ] [ -b <adres> ] [ -c <adres> ] <adres> [ ... ]\n mutt [ -n ] [ -e <polec> ] [ -F <plik> ] -p\n mutt -v[v]\n\nopcje:\n -A <alias>\tu¿yj aliasu\n -a <plik>\tdo³±cz plik do listu\n -b <adres>\tpodaj adres blind carbon-copy (BCC)\n -c <adres>\tpodaj adres carbon-copy (CC)\n -e <polec>\tpodaj polecenie do wykonania po inicjalizacji\n -f <plik>\totwórz najpierw t± skrzynkê\n -F <plik>\tu¿yj alternatywnego pliku muttrc\n -H <plik>\twczytaj szablon nag³ówków i tre¶ci listu z pliku\n -i <plik>\twstaw ten plik w odpowiedzi\n -m <typ>\tpodaj typ skrzynki\n -n\t\tnie czytaj systemowego Muttrc\n -p\t\tponownie edytuj zarzucony list\n -Q <zmienna>\tpodaj warto¶æ zmiennej konfiguracyjnej\n -R\t\totwórz skrzynkê w trybie tylko do odczytu\n -s <tytu³>\tpodaj tytu³ (musi byæ w apostrofach, je¶li zawiera spacje)\n -v\t\tpoka¿ wersjê i wkompilowane parametry\n -x\t\tsymuluj zachowanie mailx\n -y\t\twybierz skrzynkê podan± w twojej li¶cie `mailboxes'\n -z\t\twyjd¼ natychmiast je¶li brak nowych listów w skrzynce\n -Z\t\totwórz pierwsz± skrzynkê z nowym listem i wyjd¼ je¶li brak nowych\n -h\t\tten tekst"
-
- #: main.c:167
--msgid ""
--"\n"
--"Compile options:"
--msgstr ""
--"\n"
--"Parametry kompilacji:"
-+msgid "\nCompile options:"
-+msgstr "\nParametry kompilacji:"
-
- #: main.c:478
- msgid "Error initializing terminal."
-@@ -2755,9 +2505,7 @@ msgstr "Nie mo¿na zablokowaæ skrzynki po
- #.
- #: mbox.c:754
- msgid "sync: mbox modified, but no modified messages! (report this bug)"
--msgstr ""
--"sync: skrzynka zmodyfikowana, ale ¿aden z listów nie zosta³ zmieniony! "
--"(zg³o¶ ten b³±d)"
-+msgstr "sync: skrzynka zmodyfikowana, ale ¿aden z listów nie zosta³ zmieniony! (zg³o¶ ten b³±d)"
-
- #: mbox.c:793
- #, c-format
-@@ -2792,72 +2540,72 @@ msgstr "Przeskocz do: "
- msgid "Invalid index number."
- msgstr "Niew³a¶ciwy numer indeksu."
-
--#: menu.c:429 menu.c:450 menu.c:488 menu.c:531 menu.c:547 menu.c:558
--#: menu.c:569 menu.c:611 menu.c:622 menu.c:635 menu.c:648 menu.c:1043
-+#: menu.c:429 menu.c:447 menu.c:483 menu.c:526 menu.c:542 menu.c:553
-+#: menu.c:564 menu.c:606 menu.c:617 menu.c:630 menu.c:643 menu.c:1038
- msgid "No entries."
- msgstr "Brak pozycji."
-
--#: menu.c:447
-+#: menu.c:444
- msgid "You cannot scroll down farther."
- msgstr "Nie mo¿na ni¿ej przewin±æ."
-
--#: menu.c:465
-+#: menu.c:460
- msgid "You cannot scroll up farther."
- msgstr "Nie mo¿na wy¿ej przewin±æ."
-
--#: menu.c:485
-+#: menu.c:480
- msgid "You are on the last page."
- msgstr "To jest ostatnia strona."
-
--#: menu.c:509
-+#: menu.c:504
- msgid "You are on the first page."
- msgstr "To jest pierwsza strona."
-
--#: menu.c:588
-+#: menu.c:583
- msgid "First entry is shown."
- msgstr "Pokazana jest pierwsza pozycja."
-
--#: menu.c:608
-+#: menu.c:603
- msgid "Last entry is shown."
- msgstr "Pokazana jest ostatnia pozycja."
-
--#: menu.c:659
-+#: menu.c:654
- msgid "You are on the last entry."
- msgstr "To jest ostatnia pozycja."
-
--#: menu.c:670
-+#: menu.c:665
- msgid "You are on the first entry."
- msgstr "To jest pierwsza pozycja."
-
--#: menu.c:730 pattern.c:1242
-+#: menu.c:725 pattern.c:1242
- msgid "Search for: "
- msgstr "Szukaj frazy: "
-
--#: menu.c:731 pattern.c:1243
-+#: menu.c:726 pattern.c:1243
- msgid "Reverse search for: "
- msgstr "Szukaj frazy w przeciwnym kierunku: "
-
--#: menu.c:741 pattern.c:1275
-+#: menu.c:736 pattern.c:1275
- msgid "No search pattern."
- msgstr "Nie ustalono wzorca poszukiwañ."
-
--#: menu.c:771 pager.c:1931 pager.c:1947 pager.c:2055 pattern.c:1340
-+#: menu.c:766 pager.c:1931 pager.c:1947 pager.c:2055 pattern.c:1340
- msgid "Not found."
- msgstr "Nic nie znaleziono."
-
--#: menu.c:895
-+#: menu.c:890
- msgid "No tagged entries."
- msgstr "Brak zaznaczonych pozycji listy."
-
--#: menu.c:1000
-+#: menu.c:995
- msgid "Search is not implemented for this menu."
- msgstr "Poszukiwanie nie jest mo¿liwe w tym menu."
-
--#: menu.c:1005
-+#: menu.c:1000
- msgid "Jumping is not implemented for dialogs."
- msgstr "Przeskakiwanie nie jest mo¿liwe w oknach dialogowych."
-
--#: menu.c:1046
-+#: menu.c:1041
- msgid "Tagging is not supported."
- msgstr "Zaznaczanie nie jest obs³ugiwane."
-
-@@ -2992,7 +2740,6 @@ msgid "Unknown"
- msgstr "Nieznany"
-
- #: mutt_ssl.c:413
--#, c-format
- msgid "[unable to calculate]"
- msgstr "[niemo¿liwe do wyznaczenia]"
-
-@@ -3017,7 +2764,6 @@ msgid "This certificate was issued by:"
- msgstr "Ten certyfikat zosta³ wydany przez:"
-
- #: mutt_ssl.c:608
--#, c-format
- msgid "This certificate is valid"
- msgstr "Ten certyfikat jest wa¿ny"
-
-@@ -3270,7 +3016,6 @@ msgid "%c: not supported in this mode"
- msgstr "%c: nie obs³ugiwane w tym trybie"
-
- #: pattern.c:807
--#, c-format
- msgid "missing parameter"
- msgstr "brakuj±cy parametr"
-
-@@ -3325,32 +3070,20 @@ msgid "[-- Error: unable to create PGP s
- msgstr "[-- B³±d: nie mo¿na utworzyæ podprocesu PGP! --]\n"
-
- #: pgp.c:379 pgp.c:596 pgp.c:797
--msgid ""
--"[-- End of PGP output --]\n"
--"\n"
--msgstr ""
--"[-- Koniec komunikatów PGP --]\n"
--"\n"
-+msgid "[-- End of PGP output --]\n\n"
-+msgstr "[-- Koniec komunikatów PGP --]\n\n"
-
- #: pgp.c:394
--msgid ""
--"[-- BEGIN PGP MESSAGE --]\n"
--"\n"
--msgstr ""
--"[-- POCZ¡TEK LISTU PGP --]\n"
--"\n"
-+msgid "[-- BEGIN PGP MESSAGE --]\n\n"
-+msgstr "[-- POCZ¡TEK LISTU PGP --]\n\n"
-
- #: pgp.c:396
- msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
- msgstr "[-- POCZ¡TEK KLUCZA PUBLICZNEGO PGP --]\n"
-
- #: pgp.c:398
--msgid ""
--"[-- BEGIN PGP SIGNED MESSAGE --]\n"
--"\n"
--msgstr ""
--"[-- POCZ¡TEK LISTU PODPISANEGO PGP --]\n"
--"\n"
-+msgid "[-- BEGIN PGP SIGNED MESSAGE --]\n\n"
-+msgstr "[-- POCZ¡TEK LISTU PODPISANEGO PGP --]\n\n"
-
- #: pgp.c:423
- msgid "[-- END PGP MESSAGE --]\n"
-@@ -3365,44 +3098,28 @@ msgid "[-- END PGP SIGNED MESSAGE --]\n"
- msgstr "[-- KONIEC LISTU PODPISANEGO PGP --]\n"
-
- #: pgp.c:454
--msgid ""
--"[-- Error: could not find beginning of PGP message! --]\n"
--"\n"
--msgstr ""
--"[-- B³±d: nie mo¿na odnale¼æ pocz±tku listu PGP! --]\n"
--"\n"
-+msgid "[-- Error: could not find beginning of PGP message! --]\n\n"
-+msgstr "[-- B³±d: nie mo¿na odnale¼æ pocz±tku listu PGP! --]\n\n"
-
- #: pgp.c:704
- msgid "Internal error. Inform <roessler@does-not-exist.org>."
- msgstr "B³±d wewnêtrzny. Zg³o¶ go pod adres <roessler@does-not-exist.org>."
-
- #: pgp.c:764
--msgid ""
--"[-- Error: could not create a PGP subprocess! --]\n"
--"\n"
--msgstr ""
--"[-- B³±d: nie mo¿na utworzyæ podprocesu PGP! --]\n"
--"\n"
-+msgid "[-- Error: could not create a PGP subprocess! --]\n\n"
-+msgstr "[-- B³±d: nie mo¿na utworzyæ podprocesu PGP! --]\n\n"
-
- #: pgp.c:873
--msgid ""
--"[-- Error: malformed PGP/MIME message! --]\n"
--"\n"
--msgstr ""
--"[-- B³±d: uszkodzony list PGP/MIME! --]\n"
--"\n"
-+msgid "[-- Error: malformed PGP/MIME message! --]\n\n"
-+msgstr "[-- B³±d: uszkodzony list PGP/MIME! --]\n\n"
-
- #: pgp.c:886
- msgid "[-- Error: could not create temporary file! --]\n"
- msgstr "[-- B³±d: nie mo¿na utworzyæ pliku tymczasowego! --]\n"
-
- #: pgp.c:895
--msgid ""
--"[-- The following data is PGP/MIME encrypted --]\n"
--"\n"
--msgstr ""
--"[-- Nastêpuj±ce dane s± zaszyfrowane PGP/MIME --]\n"
--"\n"
-+msgid "[-- The following data is PGP/MIME encrypted --]\n\n"
-+msgstr "[-- Nastêpuj±ce dane s± zaszyfrowane PGP/MIME --]\n\n"
-
- #: pgp.c:915
- msgid "[-- End of PGP/MIME encrypted data --]\n"
-@@ -3426,25 +3143,25 @@ msgstr "Wprowad¼ numer klucza dla %s: "
- msgid "Can't invoke PGP"
- msgstr "Nie mo¿na wywo³aæ PGP"
-
--#: pgp.c:1496
-+#: pgp.c:1491
- #, c-format
- msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s, or (c)lear? "
- msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, %s , b(e)z PGP? "
-
--#: pgp.c:1497
-+#: pgp.c:1492
- msgid "PGP/M(i)ME"
- msgstr "PGP/M(i)ME"
-
--#: pgp.c:1497
-+#: pgp.c:1492
- msgid "(i)nline"
- msgstr "(i)nline"
-
--#: pgp.c:1499
-+#: pgp.c:1494
- msgid "esabifc"
- msgstr "zsabife"
-
- #. sign (a)s
--#: pgp.c:1514 smime.c:1981
-+#: pgp.c:1509 smime.c:1981
- msgid "Sign as: "
- msgstr "Podpisz jako: "
-
-@@ -3533,7 +3250,6 @@ msgid "Looking for keys matching \"%s\".
- msgstr "Wyszukiwanie odpowiednich kluczy dla \"%s\"..."
-
- #: pop.c:90 pop_lib.c:201
--#, c-format
- msgid "Command TOP is not supported by server."
- msgstr "Polecenie TOP nie jest obs³ugiwane przez serwer."
-
-@@ -3542,7 +3258,6 @@ msgid "Can't write header to temporary f
- msgstr "Nie mo¿na zapisaæ nag³ówka do pliku tymczasowego!"
-
- #: pop.c:198 pop_lib.c:203
--#, c-format
- msgid "Command UIDL is not supported by server."
- msgstr "Polecenie UIDL nie jest obs³ugiwane przez serwer."
-
-@@ -3606,7 +3321,6 @@ msgid "APOP authentication failed."
- msgstr "Uwierzytelnianie APOP nie powiod³o siê."
-
- #: pop_auth.c:268
--#, c-format
- msgid "Command USER is not supported by server."
- msgstr "Polecenie USER nie jest obs³ugiwane przez serwer."
-
-@@ -3676,7 +3390,6 @@ msgid "Query command not defined."
- msgstr "Pytanie nie zosta³o okre¶lone."
-
- #: query.c:290
--#, c-format
- msgid "Query"
- msgstr "Pytanie"
-
-@@ -3783,8 +3496,7 @@ msgstr "Przes³aæ dalej jako za³±czniki?"
-
- #: recvcmd.c:462
- msgid "Can't decode all tagged attachments. MIME-forward the others?"
--msgstr ""
--"Nie mo¿na zdekodowaæ zaznaczonych za³. Przes³aæ pozosta³e dalej (MIME)?"
-+msgstr "Nie mo¿na zdekodowaæ zaznaczonych za³. Przes³aæ pozosta³e dalej (MIME)?"
-
- #: recvcmd.c:587
- msgid "Forward MIME encapsulated?"
-@@ -3805,8 +3517,7 @@ msgstr "Nie znaleziono list pocztowych!"
-
- #: recvcmd.c:824
- msgid "Can't decode all tagged attachments. MIME-encapsulate the others?"
--msgstr ""
--"Nie mo¿na zdekodowaæ wszystkich wybranych za³. Za³±czyæ (MIME) pozosta³e?"
-+msgstr "Nie mo¿na zdekodowaæ wszystkich wybranych za³. Za³±czyæ (MIME) pozosta³e?"
-
- #: remailer.c:484
- msgid "Append"
-@@ -3859,8 +3570,7 @@ msgid "Mixmaster doesn't accept Cc or Bc
- msgstr "Mixmaster nie akceptuje nag³ówków Cc i Bcc."
-
- #: remailer.c:738
--msgid ""
--"Please set the hostname variable to a proper value when using mixmaster!"
-+msgid "Please set the hostname variable to a proper value when using mixmaster!"
- msgstr "Ustaw poprawn± warto¶æ hostname je¶li chcesz u¿ywaæ mixmastera!"
-
- #: remailer.c:772
-@@ -4018,16 +3728,16 @@ msgstr "%s nie jest zwyk³ym plikiem."
- msgid "Could not open %s"
- msgstr "Nie mo¿na otworzyæ %s"
-
--#: sendlib.c:2060
-+#: sendlib.c:2057
- #, c-format
- msgid "Error sending message, child exited %d (%s)."
- msgstr "B³±d podczas wysy³ania listu, proces potomny zwróci³ %d (%s)."
-
--#: sendlib.c:2066
-+#: sendlib.c:2063
- msgid "Output of the delivery process"
- msgstr "Wynik procesu dostarczania"
-
--#: sendlib.c:2272
-+#: sendlib.c:2267
- #, c-format
- msgid "Bad IDN %s while preparing resent-from."
- msgstr "B³êdny IDN %s w trakcie przygotowywania resent-from."
-@@ -4106,9 +3816,7 @@ msgstr "U¿yæ identyfikatora %s dla %s ?"
- #: smime.c:637
- #, c-format
- msgid "Warning: You have not yet decided to trust ID %s. (any key to continue)"
--msgstr ""
--"Ostrze¿enie: nie oke¶lono poziomu zaufania dla %s (dow. klawisz by "
--"kontynuowaæ)."
-+msgstr "Ostrze¿enie: nie oke¶lono poziomu zaufania dla %s (dow. klawisz by kontynuowaæ)."
-
- #: smime.c:796
- #, c-format
-@@ -4145,12 +3853,8 @@ msgid "No output from OpenSSL..."
- msgstr "Brak wyników dzia³ania OpenSSL..."
-
- #: smime.c:1636 smime.c:1758
--msgid ""
--"[-- End of OpenSSL output --]\n"
--"\n"
--msgstr ""
--"[-- Koniec komunikatów OpenSSL --]\n"
--"\n"
-+msgid "[-- End of OpenSSL output --]\n\n"
-+msgstr "[-- Koniec komunikatów OpenSSL --]\n\n"
-
- #: smime.c:1719 smime.c:1729
- msgid "[-- Error: unable to create OpenSSL subprocess! --]\n"
-@@ -4165,34 +3869,23 @@ msgid "[-- The following data is S/MIME
- msgstr "[-- Poni¿sze dane s± podpisane S/MIME --]\n"
-
- #: smime.c:1829
--msgid ""
--"\n"
--"[-- End of S/MIME encrypted data. --]\n"
--msgstr ""
--"\n"
--"[-- Koniec danych zaszyfrowanych S/MIME. --]\n"
-+msgid "\n[-- End of S/MIME encrypted data. --]\n"
-+msgstr "\n[-- Koniec danych zaszyfrowanych S/MIME. --]\n"
-
- #: smime.c:1831
--msgid ""
--"\n"
--"[-- End of S/MIME signed data. --]\n"
--msgstr ""
--"\n"
--"[-- Koniec danych podpisanych S/MIME. --]\n"
-+msgid "\n[-- End of S/MIME signed data. --]\n"
-+msgstr "\n[-- Koniec danych podpisanych S/MIME. --]\n"
-
- #: smime.c:1935
--msgid ""
--"S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear? "
--msgstr ""
--"S/MIME: (z)aszyfruj, (p)odpisz, (m)etoda, podp. (j)ako, (o)ba, (a)nuluj?"
-+msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear? "
-+msgstr "S/MIME: (z)aszyfruj, (p)odpisz, (m)etoda, podp. (j)ako, (o)ba, (a)nuluj?"
-
- #: smime.c:1936
- msgid "eswabfc"
- msgstr "zpmjoa"
-
- #: smime.c:1945
--msgid ""
--"1: DES, 2: Triple-DES, 3: RC2-40, 4: RC2-64, 5: RC2-128, or (f)orget it? "
-+msgid "1: DES, 2: Triple-DES, 3: RC2-40, 4: RC2-64, 5: RC2-128, or (f)orget it? "
- msgstr "1: DES, 2: Triple-DES, 3: RC2-40, 4: RC2-64, 5: RC2-128, (a)nuluj? "
-
- #: smime.c:1947
-@@ -4217,15 +3910,9 @@ msgstr "(brak skrzynki)"
-
- #: thread.c:1089
- msgid "Parent message is not visible in this limited view."
--msgstr ""
--"Pierwszy list w±tku nie jest widoczny w trybie ograniczonego przegl±dania."
-+msgstr "Pierwszy list w±tku nie jest widoczny w trybie ograniczonego przegl±dania."
-
- #: thread.c:1095
- msgid "Parent message is not available."
- msgstr "Pierwszy list tego w±tku nie jest dostêpny."
-
--#~ msgid "unspecified protocol error"
--#~ msgstr "nieznany b³±d protoko³u"
--
--#~ msgid "Closing connection to IMAP server..."
--#~ msgstr "Zamykanie po³±czenia z serwerem IMAP..."
-Index: mutt/po/ru.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/ru.po,v
-retrieving revision 3.26
-retrieving revision 3.27
-diff -u -p -r3.26 -r3.27
---- mutt/po/ru.po 13 Mar 2005 16:35:34 -0000 3.26
-+++ mutt/po/ru.po 22 Mar 2005 19:43:13 -0000 3.27
-@@ -10,10 +10,10 @@
- #
- msgid ""
- msgstr ""
--"Project-Id-Version: mutt-1.5.8i\n"
-+"Project-Id-Version: mutt-1.5.9i\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2005-02-13 11:51+0200\n"
-+"PO-Revision-Date: 2005-03-13 19:49+0200\n"
- "Last-Translator: mutt-ru@woe.spb.ru\n"
- "Language-Team: RUSSIAN <mutt-ru@woe.spb.ru>\n"
- "MIME-Version: 1.0\n"
-@@ -213,9 +213,9 @@ msgid "Create is only supported for IMAP
- msgstr "óÏÚÄÁÎÉÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ ÔÏÌØËÏ ÄÌÑ ÐÏÞÔÏ×ÙÈ ÑÝÉËÏ× ÎÁ IMAP-ÓÅÒ×ÅÒÁÈ"
-
- #: browser.c:880
--#, fuzzy
- msgid "Rename is only supported for IMAP mailboxes"
--msgstr "óÏÚÄÁÎÉÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ ÔÏÌØËÏ ÄÌÑ ÐÏÞÔÏ×ÙÈ ÑÝÉËÏ× ÎÁ IMAP-ÓÅÒ×ÅÒÁÈ"
-+msgstr ""
-+"ðÅÒÅÉÍÅÎÏ×ÁÎÉÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ ÔÏÌØËÏ ÄÌÑ ÐÏÞÔÏ×ÙÈ ÑÝÉËÏ× ÎÁ IMAP-ÓÅÒ×ÅÒÁÈ"
-
- #: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
-@@ -1410,19 +1410,18 @@ msgid "Mailbox created."
- msgstr "ðÏÞÔÏ×ÙÊ ÑÝÉË ÓÏÚÄÁÎ."
-
- #: imap/browse.c:325
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename mailbox %s to: "
--msgstr "óÏÚÄÁÔØ ÐÏÞÔÏ×ÙÊ ÑÝÉË: "
-+msgstr "ðÅÒÅÉÍÅÎÏ×ÁÔØ ÐÏÞÔÏ×ÙÊ ÑÝÉË %s ×: "
-
- #: imap/browse.c:338
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename failed: %s"
--msgstr "îÅ ÕÄÁÌÏÓØ ÕÓÔÁÎÏ×ÉÔØ SSL-ÓÏÅÄÉÎÅÎÉÅ: %s"
-+msgstr "îÅ ÕÄÁÌÏÓØ ÐÅÒÅÉÍÅÎÏ×ÁÔØ: %s"
-
- #: imap/browse.c:343
--#, fuzzy
- msgid "Mailbox renamed."
--msgstr "ðÏÞÔÏ×ÙÊ ÑÝÉË ÓÏÚÄÁÎ."
-+msgstr "ðÏÞÔÏ×ÙÊ ÑÝÉË ÐÅÒÅÉÍÅÎÏ×ÁÎ."
-
- #: imap/command.c:294
- msgid "Mailbox closed"
-@@ -2341,9 +2340,8 @@ msgid "{internal}"
- msgstr "{×ÎÕÔÒÅÎÎÉÊ}"
-
- #: keymap_alldefs.h:151
--#, fuzzy
- msgid "rename the current mailbox (IMAP only)"
--msgstr "ÕÄÁÌÉÔØ ÔÅËÕÝÉÊ ÐÏÞÔÏ×ÙÊ ÑÝÉË (ÔÏÌØËÏ IMAP)"
-+msgstr "ÐÅÒÅÉÍÅÎÏ×ÁÔØ ÔÅËÕÝÉÊ ÐÏÞÔÏ×ÙÊ ÑÝÉË (ÔÏÌØËÏ IMAP)"
-
- #: keymap_alldefs.h:152
- msgid "reply to a message"
+++ /dev/null
-Index: mutt/ChangeLog
-===================================================================
-RCS file: /home/roessler/cvs/mutt/ChangeLog,v
-retrieving revision 3.420
-retrieving revision 3.421
-diff -u -p -r3.420 -r3.421
---- mutt/ChangeLog 3 Apr 2005 00:15:36 -0000 3.420
-+++ mutt/ChangeLog 10 Apr 2005 09:38:17 -0000 3.421
-@@ -1,3 +1,7 @@
-+2005-04-10 09:37:51 Johan Svedberg <johan@svedberg.pp.se> (roessler)
-+
-+ * po/sv.po: update
-+
- 2005-04-03 00:14:51 Daniel Jacobowitz <dan@debian.org> (brendan)
-
- * imap/imap.c, imap/imap_private.h, imap/message.c: Synchronise
-@@ -405,7 +409,7 @@
- 2005-01-29 19:15:07 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
-
- * hcache.c: - make hcache.c conform to mutt codingstyle
-- - use $Id: ChangeLog,v 3.420 2005/04/03 00:15:36 brendan Exp $ CVS keyword instead of %K% BitKeeper keyword
-+ - use $Id: ChangeLog,v 3.421 2005/04/10 09:38:17 roessler Exp $ CVS keyword instead of %K% BitKeeper keyword
-
- 2005-01-29 19:15:07 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
-
-Index: mutt/po/sv.po
-===================================================================
-RCS file: /home/roessler/cvs/mutt/po/sv.po,v
-retrieving revision 3.19
-retrieving revision 3.20
-diff -u -p -r3.19 -r3.20
---- mutt/po/sv.po 13 Mar 2005 16:35:35 -0000 3.19
-+++ mutt/po/sv.po 10 Apr 2005 09:37:51 -0000 3.20
-@@ -1,13 +1,12 @@
--# Swedish translation for Mutt.
--# Copyright (C) 2004 Free Software Foundation, Inc.
--# Johan Svedberg <johan@svedberg.pp.se>, 2004.
-+# Swedish messages for Mutt.
-+# Copyright (C) Johan Svedberg 2004-2005 <johan@svedberg.com>
- msgid ""
- msgstr ""
--"Project-Id-Version: Mutt 1.5.6\n"
-+"Project-Id-Version: Mutt 1.5.9\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2005-03-13 17:38+0100\n"
--"PO-Revision-Date: 2004-08-17 14:16%z\n"
--"Last-Translator: Johan Svedberg <johan@svedberg.pp.se>\n"
-+"PO-Revision-Date: 2005-04-09 16:01+0200\n"
-+"Last-Translator: Johan Svedberg <johan@svedberg.com>\n"
- "Language-Team: Swedish <sv@li.org>\n"
- "MIME-Version: 1.0\n"
- "Content-Type: text/plain; charset=iso-8859-1\n"
-@@ -205,9 +204,8 @@ msgid "Create is only supported for IMAP
- msgstr "Endast IMAP-brevlådor kan skapas"
-
- #: browser.c:880
--#, fuzzy
- msgid "Rename is only supported for IMAP mailboxes"
--msgstr "Endast IMAP-brevlådor kan skapas"
-+msgstr "Endast IMAP-brevlådor kan döpas om"
-
- #: browser.c:901
- msgid "Delete is only supported for IMAP mailboxes"
-@@ -289,19 +287,19 @@ msgstr "%s: kommandot är endast giltigt
- #: color.c:393
- #, c-format
- msgid "%s: too few arguments"
--msgstr "%s: för få argument"
-+msgstr "%s: för få parametrar"
-
- #: color.c:567
- msgid "Missing arguments."
--msgstr "Saknar argument."
-+msgstr "Parametrar saknas."
-
- #: color.c:606 color.c:617
- msgid "color: too few arguments"
--msgstr "color: för få argument"
-+msgstr "color: för få parametrar"
-
- #: color.c:640
- msgid "mono: too few arguments"
--msgstr "mono: för få argument"
-+msgstr "mono: för få parametrar"
-
- #: color.c:660
- #, c-format
-@@ -310,11 +308,11 @@ msgstr "%s: attributet finns inte"
-
- #: color.c:700 hook.c:69 hook.c:77 keymap.c:748
- msgid "too few arguments"
--msgstr "för få argument"
-+msgstr "för få parametrar"
-
- #: color.c:709 hook.c:83
- msgid "too many arguments"
--msgstr "för många argument"
-+msgstr "för många parametrar"
-
- #: color.c:725
- msgid "default colors not supported"
-@@ -746,7 +744,7 @@ msgstr "Brevet skickades inte."
-
- #: crypt.c:398
- msgid "S/MIME messages with no hints on content are unsupported."
--msgstr "S/MIME-meddelanden utan ledtrådar på innehåll stöds inte."
-+msgstr "S/MIME-meddelanden utan ledtrådar till innehållet stöds ej."
-
- #: crypt.c:617 crypt.c:661
- msgid "Trying to extract PGP keys...\n"
-@@ -842,11 +840,11 @@ msgstr "Inga meddelanden."
-
- #: curs_main.c:53 mx.c:1135 pager.c:58 recvattach.c:44
- msgid "Mailbox is read-only."
--msgstr "Brevlåda är skrivskyddad."
-+msgstr "Brevlådan är skrivskyddad."
-
- #: curs_main.c:54 pager.c:59 recvattach.c:873
- msgid "Function not permitted in attach-message mode."
--msgstr "Funktion inte tillåten i \"bifoga-meddelnande\"-läge."
-+msgstr "Funktionen ej tillåten i \"bifoga-meddelande\"-läge."
-
- #: curs_main.c:55
- msgid "No visible messages."
-@@ -858,11 +856,11 @@ msgstr "Kan inte växla till skrivläge på
-
- #: curs_main.c:255
- msgid "Changes to folder will be written on folder exit."
--msgstr "Ändringar i foldern kommer att skrivas när foldern stängs."
-+msgstr "Ändringarna i foldern skrivs när foldern lämnas."
-
- #: curs_main.c:260
- msgid "Changes to folder will not be written."
--msgstr "Ändringar i foldern kommer inte att skrivas."
-+msgstr "Ändringarna i foldern kommer inte att skrivas."
-
- #: curs_main.c:401
- msgid "Quit"
-@@ -886,7 +884,7 @@ msgstr "Grupp"
-
- #: curs_main.c:496
- msgid "Mailbox was externally modified. Flags may be wrong."
--msgstr "Brevlådan blev externt modifierad. Flaggor kan vara felaktiga."
-+msgstr "Brevlådan har ändrats externt. Flaggor kan vara felaktiga."
-
- #: curs_main.c:499
- msgid "New mail in this mailbox."
-@@ -894,7 +892,7 @@ msgstr "Nya brev i den här brevlådan."
-
- #: curs_main.c:503
- msgid "Mailbox was externally modified."
--msgstr "Brevlådan blev externt modifierad."
-+msgstr "Brevlådan har ändrats externt."
-
- #: curs_main.c:621
- msgid "No tagged messages."
-@@ -910,7 +908,7 @@ msgstr "Hoppa till meddelande: "
-
- #: curs_main.c:749
- msgid "Argument must be a message number."
--msgstr "Argumentet måste vara ett meddelandenummer."
-+msgstr "Parametern måste vara ett meddelandenummer."
-
- #: curs_main.c:782
- msgid "That message is not visible."
-@@ -926,7 +924,7 @@ msgstr "Radera meddelanden som matchar:
-
- #: curs_main.c:826
- msgid "No limit pattern is in effect."
--msgstr "Inget begränsande mönster är aktivt."
-+msgstr "Inget avgränsande mönster är aktivt."
-
- #. i18n: ask for a limit to apply
- #: curs_main.c:831
-@@ -936,7 +934,7 @@ msgstr "Gräns: %s"
-
- #: curs_main.c:841
- msgid "Limit to messages matching: "
--msgstr "Begränsa till meddelanden som matchar: "
-+msgstr "Visa endast meddelanden som matchar: "
-
- #: curs_main.c:873
- msgid "Quit Mutt?"
-@@ -985,11 +983,11 @@ msgstr "Du är på det första meddelandet.
-
- #: curs_main.c:1342 pattern.c:1296
- msgid "Search wrapped to top."
--msgstr "Sökning fortsatte i början."
-+msgstr "Sökning fortsatte från början."
-
- #: curs_main.c:1351 pattern.c:1307
- msgid "Search wrapped to bottom."
--msgstr "Sökning fortsatte i slutet."
-+msgstr "Sökning fortsatte från slutet."
-
- #: curs_main.c:1392
- msgid "No new messages"
-@@ -1018,7 +1016,7 @@ msgstr "Du är på den första tråden."
- #: curs_main.c:1606 curs_main.c:1638 flags.c:293 thread.c:1022 thread.c:1077
- #: thread.c:1132
- msgid "Threading is not enabled."
--msgstr "Trådning är inte aktiverad."
-+msgstr "Trådning ej aktiverat."
-
- #: curs_main.c:1624
- msgid "Thread contains unread messages."
-@@ -1053,7 +1051,7 @@ msgid ""
- "~?\t\tthis message\n"
- ".\t\ton a line by itself ends input\n"
- msgstr ""
--"~~\t\tinfoga en rad som börjar med ett ~\n"
-+"~~\t\tinfoga en rad som börjar med ett ~\n"
- "~b adresser\tlägg till adresser till Bcc:-fältet\n"
- "~c adresser\tlägg till adresser till Cc:-fältet\n"
- "~f meddelanden\tbifoga meddelanden\n"
-@@ -1099,7 +1097,7 @@ msgstr "saknar filnamn.\n"
-
- #: edit.c:427
- msgid "No lines in message.\n"
--msgstr "Inga rader i meddelande.\n"
-+msgstr "Inga rader i meddelandet.\n"
-
- #: edit.c:444
- #, c-format
-@@ -1109,7 +1107,7 @@ msgstr "Dåligt IDN i %s: \"%s\"\n"
- #: edit.c:462
- #, c-format
- msgid "%s: unknown editor command (~? for help)\n"
--msgstr "%s: okänt redigerarkommando (~? för hjälp)\n"
-+msgstr "%s: okänt redigeringskommando (~? för hjälp)\n"
-
- #: editmsg.c:78
- #, c-format
-@@ -1124,7 +1122,7 @@ msgstr "kunde inte skriva tillfällig bre
- #: editmsg.c:107
- #, c-format
- msgid "could not truncate temporary mail folder: %s"
--msgstr "kunde inte stympa tillfällig brevfolder: %s"
-+msgstr "kunde inte avkorta tillfällig brevfolder: %s"
-
- #: editmsg.c:122
- msgid "Message file is empty!"
-@@ -1230,13 +1228,13 @@ msgid ""
- "[-- and the indicated external source has --]\n"
- "[-- expired. --]\n"
- msgstr ""
--"[-- och den indikerade externa källan har --]\n"
-+"[-- och den angivna externa källan har --]\n"
- "[-- utgått. --]\n"
-
- #: handler.c:1714
- #, c-format
- msgid "[-- and the indicated access-type %s is unsupported --]\n"
--msgstr "[-- och den indikerade åtkomsttypen %s stöds inte --]\n"
-+msgstr "[-- och den angivna åtkomsttypen %s stöds inte --]\n"
-
- #: handler.c:1822
- msgid "Error: multipart/signed has no protocol."
-@@ -1397,19 +1395,18 @@ msgid "Mailbox created."
- msgstr "Brevlåda skapad."
-
- #: imap/browse.c:325
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename mailbox %s to: "
--msgstr "Skapa brevlåda: "
-+msgstr "Döp om brevlådan %s till: "
-
- #: imap/browse.c:338
--#, fuzzy, c-format
-+#, c-format
- msgid "Rename failed: %s"
--msgstr "SSL misslyckades: %s"
-+msgstr "Kunde ej döpa om: %s"
-
- #: imap/browse.c:343
--#, fuzzy
- msgid "Mailbox renamed."
--msgstr "Brevlåda skapad."
-+msgstr "Brevlåda omdöpt."
-
- #: imap/command.c:294
- msgid "Mailbox closed"
-@@ -1515,9 +1512,9 @@ msgid "Could not create temporary file %
- msgstr "Kunde inte skapa tillfällig fil %s"
-
- #: imap/message.c:134
--#, fuzzy, c-format
-+#, c-format
- msgid "Evaluating cache... [%d/%d]"
--msgstr "Hämtar meddelandehuvuden... [%d/%d]"
-+msgstr "Utvärderar cache... [%d/%d]"
-
- #: imap/message.c:202 pop.c:210
- #, c-format
-@@ -1680,12 +1677,12 @@ msgstr "Oändlig slinga i macro upptäckt.
-
- #: keymap.c:673 keymap.c:681
- msgid "Key is not bound."
--msgstr "Tangent är inte knuten."
-+msgstr "Tangenten är inte knuten."
-
- #: keymap.c:685
- #, c-format
- msgid "Key is not bound. Press '%s' for help."
--msgstr "Tangent är inte knuten. Tryck \"%s\" för hjälp."
-+msgstr "Tangenten är inte knuten. Tryck \"%s\" för hjälp."
-
- #: keymap.c:696
- msgid "push: too many arguments"
-@@ -1817,7 +1814,7 @@ msgstr "redigera CC-listan"
-
- #: keymap_alldefs.h:25
- msgid "edit attachment description"
--msgstr "redigera bilagabeskrivning"
-+msgstr "redigera bilagebeskrivning"
-
- #: keymap_alldefs.h:26
- msgid "edit attachment transfer-encoding"
-@@ -1853,7 +1850,7 @@ msgstr "redigera Reply-To-fältet"
-
- #: keymap_alldefs.h:34
- msgid "edit the subject of this message"
--msgstr "redigera ärendet på det här meddelandet"
-+msgstr "redigera ämnet på det här meddelandet"
-
- #: keymap_alldefs.h:35
- msgid "edit the TO list"
-@@ -1901,7 +1898,7 @@ msgstr "växla dispositionen mellan integ
-
- #: keymap_alldefs.h:46
- msgid "toggle whether to delete file after sending it"
--msgstr "växla huruvida fil ska tas bort efter att den har sänts"
-+msgstr "växla om fil ska tas bort efter att den har sänts"
-
- #: keymap_alldefs.h:47
- msgid "update an attachment's encoding info"
-@@ -1917,7 +1914,7 @@ msgstr "kopiera ett meddelande till en f
-
- #: keymap_alldefs.h:50
- msgid "create an alias from a message sender"
--msgstr "skapa ett alias från ett meddelandes avsändare"
-+msgstr "skapa ett alias från avsändaren av ett meddelande"
-
- #: keymap_alldefs.h:51
- msgid "move entry to bottom of screen"
-@@ -1957,7 +1954,7 @@ msgstr "radera alla meddelanden i tråd"
-
- #: keymap_alldefs.h:60
- msgid "display full address of sender"
--msgstr "visa hela avsändarens adress"
-+msgstr "visa avsändarens fullständiga adress"
-
- #: keymap_alldefs.h:61
- msgid "display message and toggle header weeding"
-@@ -1969,7 +1966,7 @@ msgstr "visa ett meddelande"
-
- #: keymap_alldefs.h:63
- msgid "edit the raw message"
--msgstr "ändra i meddelandet"
-+msgstr "ändra i själva meddelandet"
-
- #: keymap_alldefs.h:64
- msgid "delete the char in front of the cursor"
-@@ -2229,7 +2226,7 @@ msgstr "sätt en statusflagga på ett medd
-
- #: keymap_alldefs.h:128
- msgid "save changes to mailbox"
--msgstr "spara ändringar till brevlåda"
-+msgstr "spara ändringar av brevlåda"
-
- #: keymap_alldefs.h:129
- msgid "tag messages matching a pattern"
-@@ -2320,9 +2317,8 @@ msgid "{internal}"
- msgstr "{internt}"
-
- #: keymap_alldefs.h:151
--#, fuzzy
- msgid "rename the current mailbox (IMAP only)"
--msgstr "radera den aktuella brevlådan (endast för IMAP)"
-+msgstr "döp om den aktuella brevlådan (endast för IMAP)"
-
- #: keymap_alldefs.h:152
- msgid "reply to a message"
-@@ -2330,7 +2326,7 @@ msgstr "svara på ett meddelande"
-
- #: keymap_alldefs.h:153
- msgid "use the current message as a template for a new one"
--msgstr "använd det aktuella meddelande som en mall för ett nytt"
-+msgstr "använd det aktuella meddelande som mall för ett nytt"
-
- #: keymap_alldefs.h:154
- msgid "save message/attachment to a file"
-@@ -2410,11 +2406,11 @@ msgstr "återställ den aktuella posten"
-
- #: keymap_alldefs.h:173
- msgid "undelete all messages in thread"
--msgstr "återställ all meddelanden i tråd"
-+msgstr "återställ all meddelanden i tråden"
-
- #: keymap_alldefs.h:174
- msgid "undelete all messages in subthread"
--msgstr "återställ alla meddelanden i undertråd"
-+msgstr "återställ alla meddelanden i undertråden"
-
- #: keymap_alldefs.h:175
- msgid "show the Mutt version number and date"
-@@ -2601,7 +2597,6 @@ msgstr ""
- "USA.\n"
-
- #: main.c:99
--#, fuzzy
- msgid ""
- "usage: mutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f "
- "<file> ]\n"
-@@ -2649,7 +2644,7 @@ msgstr ""
- " mutt -v[v]\n"
- "\n"
- "options:\n"
--" -A <alias>\texpandera den givna aliaset\n"
-+" -A <alias>\texpandera det givna aliaset\n"
- " -a <fil>\tbifoga en fil till meddelandet\n"
- " -b <adress>\tange en \"blind carbon-copy\" (BCC) adress\n"
- " -c <adress>\tange en \"carbon-copy\" (CC) adress\n"
-@@ -2740,7 +2735,7 @@ msgstr "Brevlådan blev skadad!"
-
- #: mbox.c:699 mbox.c:953
- msgid "Fatal error! Could not reopen mailbox!"
--msgstr "Fatalt fel! Kunde inte återöppna brevlåda!"
-+msgstr "Fatalt fel! Kunde inte öppna brevlådan igen!"
-
- #: mbox.c:708
- msgid "Unable to lock mailbox!"
-@@ -2869,7 +2864,7 @@ msgstr "maildir_commit_message(): kunde
-
- #: muttlib.c:846
- msgid "File is a directory, save under it? [(y)es, (n)o, (a)ll]"
--msgstr "Filen är en katalog, spar i den? [(j)a, n(ej), (a)lla]"
-+msgstr "Filen är en katalog, spara i den? [(j)a, n(ej), (a)lla]"
-
- #: muttlib.c:846
- msgid "yna"
-@@ -2877,7 +2872,7 @@ msgstr "jna"
-
- #: muttlib.c:862
- msgid "File is a directory, save under it?"
--msgstr "Filen är en katalog, spar i den?"
-+msgstr "Filen är en katalog, spara i den?"
-
- #: muttlib.c:868
- msgid "File under directory: "
-@@ -3646,11 +3641,11 @@ msgstr "Otillåtet S/MIME-huvud"
-
- #: postpone.c:556
- msgid "Decrypting message..."
--msgstr "Dekrypterar meddelande..."
-+msgstr "Avkrypterar meddelande..."
-
- #: postpone.c:565
- msgid "Decryption failed."
--msgstr "Dekryptering misslyckades."
-+msgstr "Avkryptering misslyckades."
-
- #: query.c:50
- msgid "New Query"
-@@ -3751,11 +3746,11 @@ msgstr "Kan inte radera bilaga från POP-
-
- #: recvattach.c:1075
- msgid "Deletion of attachments from encrypted messages is unsupported."
--msgstr "Radering av bilagor från krypterade meddelanden saknar stöd."
-+msgstr "Radering av bilagor från krypterade meddelanden stöds ej."
-
- #: recvattach.c:1094 recvattach.c:1111
- msgid "Only deletion of multipart attachments is supported."
--msgstr "Endast radering av \"multipart\"-bilagor har stöd."
-+msgstr "Endast radering av \"multipart\"-bilagor stöds."
-
- #: recvcmd.c:47
- msgid "You may only bounce message/rfc822 parts."
-@@ -3893,11 +3888,11 @@ msgstr "score: för många parametrar"
-
- #: send.c:252
- msgid "No subject, abort?"
--msgstr "Inget ärende, avbryt?"
-+msgstr "Inget ämne, avbryt?"
-
- #: send.c:254
- msgid "No subject, aborting."
--msgstr "Inget ärende, avbryter."
-+msgstr "Inget ämne, avbryter."
-
- #. There are quite a few mailing lists which set the Reply-To:
- #. * header field to the list address, which makes it quite impossible
-@@ -4225,9 +4220,3 @@ msgstr "Första meddelandet är inte synli
- #: thread.c:1095
- msgid "Parent message is not available."
- msgstr "Första meddelandet är inte tillgängligt."
--
--#~ msgid "unspecified protocol error"
--#~ msgstr "ospecificerat protokollfel"
--
--#~ msgid "Closing connection to IMAP server..."
--#~ msgstr "Stänger anslutning till IMAP-server..."
+++ /dev/null
---- mutt/ChangeLog
-+++ mutt/ChangeLog
-@@ -1,3 +1,16 @@
-+2005-08-04 01:15:52 brendan (brendan)
-+
-+ * compose.c: Don't unlink non-mutt files that would have been
-+ unlinked on send if the message is cancelled.
-+
-+2005-08-02 18:15:33 Brendan Cully <brendan@kublai.com> (brendan)
-+
-+ * compose.c, mutt.h: In compose menu, detach should be able to
-+ unlink files generated by mutt, but not files that existed before.
-+
-+ * compose.c: Don't unlink attachments that you've decided not
-+ to send. (closes #1328)
-+
- 2005-04-10 09:37:51 Johan Svedberg <johan@svedberg.pp.se> (roessler)
-
- * po/sv.po: update
---- mutt/mutt.h 1 Aug 2005 07:35:04 -0000 3.45
-+++ mutt/mutt.h 2 Aug 2005 14:39:56 -0000 3.46
-@@ -855,6 +855,7 @@ typedef struct attachptr
- char *tree;
- int level;
- int num;
-+ unsigned int unowned : 1; /* don't unlink on detach */
- } ATTACHPTR;
-
- typedef struct
---- mutt/compose.c 3 Feb 2005 17:01:42 -0000 3.22
-+++ mutt/compose.c 4 Aug 2005 01:15:52 -0000 3.25
-@@ -686,6 +686,7 @@ int mutt_compose_menu (HEADER *msg, /*
- {
- char *att = files[i];
- idx[idxlen] = (ATTACHPTR *) safe_calloc (1, sizeof (ATTACHPTR));
-+ idx[idxlen]->unowned = 1;
- idx[idxlen]->content = mutt_make_file_attach (att);
- if (idx[idxlen]->content != NULL)
- update_idx (menu, idx, idxlen++);
-@@ -814,6 +815,8 @@ int mutt_compose_menu (HEADER *msg, /*
-
- case OP_DELETE:
- CHECK_COUNT;
-+ if (idx[menu->current]->unowned)
-+ idx[menu->current]->content->unlink = 0;
- if (delete_attachment (menu, &idxlen, menu->current) == -1)
- break;
- mutt_update_tree (idx, idxlen);
-@@ -1143,6 +1146,8 @@ int mutt_compose_menu (HEADER *msg, /*
- /* avoid freeing other attachments */
- idx[idxlen]->content->next = NULL;
- idx[idxlen]->content->parts = NULL;
-+ if (idx[idxlen]->unowned)
-+ idx[idxlen]->content->unlink = 0;
- mutt_free_body (&idx[idxlen]->content);
- FREE (&idx[idxlen]->tree);
- FREE (&idx[idxlen]);