~kevin8t8/mutt

1dd65e6beb0f1d211d63f936d92aecc792d2f72b — Kevin McCarthy 7 months ago b1d9967 mutt-1-13-rel
automatic post-release commit for mutt-1.13.0
M ChangeLog => ChangeLog +2504 -0
@@ 1,3 1,2507 @@
2019-11-30 10:08:44 -0800  Kevin McCarthy  <kevin@8t8.us> (b1d99670)

        * Set UPDATING file release date for 1.13.0.

M	UPDATING

2019-11-30 09:56:16 -0800  Kevin McCarthy  <kevin@8t8.us> (0950403f)

        * Change "Prf Enc" to "Prf Encr".
        
        Make the abbreviation a bit clearer, that it means Encryption instead
        of Encoding.
        
        Thanks to Morten Bo Johansen for the suggestion.

M	autocrypt/autocrypt_acct_menu.c
M	po/ca.po
M	po/cs.po
M	po/da.po
M	po/de.po
M	po/ja.po
M	po/ru.po
M	po/uk.po

2019-11-29 18:22:49 +0100  Olaf Hering  <olaf@aepfle.de> (c6845bd1)

        * Update de.po
        
        Sync from mutt.pot after 'make update-po'
        
        Signed-off-by: Olaf Hering <olaf@aepfle.de>

M	po/de.po

2019-11-28 07:13:47 +0000  Tamotsu TAKAHASHI  <ttakah@gmail.com> (e8214c87)

        * Update copyright year

M	po/ja.po

2019-11-28 06:59:47 +0000  Tamotsu TAKAHASHI  <ttakah@gmail.com> (be4801f8)

        * Update ja.po

M	po/ja.po

2019-11-25 15:36:48 -0800  Kevin McCarthy  <kevin@8t8.us> (220a4c91)

        * Clarify $write_bcc documentation.
        
        The wording was ambiguous, and could give the impression that a
        message, if fcc'ed, would contain the Bcc header when sent too.

M	init.h

2019-11-23 19:45:20 -0800  Kevin McCarthy  <kevin@8t8.us> (54aa06f7)

        * Add a bit more documentation about sending.
        
        Although the behavior has now been fixed, add $write_bcc references to
        $record, $sendmail, and $smtp_url to make users more aware of the
        behavior.

M	doc/manual.xml.head
M	init.h

2019-11-23 18:33:28 -0800  Kevin McCarthy  <kevin@8t8.us> (acca75f2)

        * Minor UPDATING file edits.

M	UPDATING

2019-11-23 18:22:24 -0800  Ivan Vilata i Balaguer  <ivan@selidor.net> (b302a3e7)

        * Updated Catalan translation.

M	po/ca.po

2019-11-20 13:23:00 -0800  Petr Pisar  <petr.pisar@atlas.cz> (2e3f535a)

        * Updated Czech translation.

M	po/cs.po

2019-11-20 12:21:24 -0800  Vsevolod Volkov  <vvv@mutt.org.ua> (2e3e9556)

        * Updated Russian translation.

M	po/ru.po

2019-11-20 12:19:47 -0800  Vsevolod Volkov  <vvv@mutt.org.ua> (0c0f4518)

        * Updated Ukrainian translation.

M	po/uk.po

2019-11-18 12:54:26 -0800  Morten Bo Johansen  <listmail@mbjnet.dk> (f84c1fba)

        * Updated Danish translation.

M	po/da.po

2019-11-16 21:40:27 +0100  Olaf Hering  <olaf@aepfle.de> (40e7c914)

        * Update de.po
        
        Signed-off-by: Olaf Hering <olaf@aepfle.de>

M	po/de.po

2019-11-14 20:10:35 -0800  Kevin McCarthy  <kevin@8t8.us> (33604971)

        * Add initial UPDATING file entries for 1.13.0.
        
        This is just an initial version, complete with typos and other
        mistakes.  Committing now so translators can refer to it.

M	UPDATING

2019-11-13 20:09:37 -0800  Kevin McCarthy  <kevin@8t8.us> (24ca73ae)

        * Fix $fcc_attach to not prompt in batch mode.
        
        Include attachments if it is 'yes' or 'ask-yes', like $copy and
        $send_multipart_alternative.

M	send.c

2019-11-13 19:28:11 -0800  Kevin McCarthy  <kevin@8t8.us> (06698649)

        * Change $send_multipart_alternative to run in batch mode on ask-yes.
        
        Emulate the behavior of $copy, which performs fcc for 'yes' or
        'ask-yes' values.

M	send.c

2019-11-13 17:51:04 +0000  madroach  <madroach@gmerlin.de> (e850e89f)

        * allow autoview preview of multipart/alternative content
        
        add view-alt function, so now we have
         * view-alt "v"
         * view-alt-text "Esc v"
         * view-alt-mailcap "V"

M	OPS
M	compose.c
M	doc/manual.xml.head
M	functions.h

2019-11-13 00:27:28 +0000  David Champion  <dgc@c13.us> (20c7b0d8)

        * Fix __attribute__((warn_unused_result)) issue in query.c
        
        Changing to mutt_read_line() avoids -Wunused-result warning while
        reading the ignored line in query protocol response.

M	query.c

2019-11-13 00:27:27 +0000  David Champion  <dgc@c13.us> (f098ac2d)

        * Fix __attribute__((warn_unused_result)) issue in help.c

M	help.c

2019-11-13 00:27:27 +0000  David Champion  <dgc@c13.us> (09dfed3f)

        * Fix __attribute__((warn_unused_result)) warning in enter.c

M	enter.c

2019-11-13 00:27:25 +0000  David Champion  <dgc@c13.us> (317b7f6b)

        * Fixes unchecked return from link() in dotlock.c

M	dotlock.c

2019-11-11 10:06:44 +0000  David Champion  <dgc.github@c13.us> (afb14d62)

        * Update copyrights

M	COPYRIGHT

2019-11-11 10:06:44 +0000  David Champion  <dgc.github@c13.us> (d8b9f793)

        * Update patchlist.sh to support `guilt' patch queues

M	patchlist.sh

2019-11-10 19:58:43 -0800  Kevin McCarthy  <kevin@8t8.us> (88f26048)

        * Add gcc comments for fallthrough case statements.
        
        Most of these were already commented.  Change a few of them to
        a format gcc will recognize.  In the future, we'll want to change to
        whatever is standardized.

M	addrbook.c
M	autocrypt/autocrypt_gpgme.c
M	browser.c
M	compose.c
M	curs_main.c
M	doc/makedoc.c
M	enter.c
M	handler.c
M	hdrline.c
M	pager.c
M	pattern.c
M	pgppacket.c
M	query.c
M	recvattach.c
M	signal.c
M	smime.c

2019-11-10 18:50:41 -0800  Kevin McCarthy  <kevin@8t8.us> (aae2d87a)

        * Add $count_alternatives to count attachments inside alternatives.
        
        Some mail clients (*cough* Apple Mail) have started to put email
        attachments in one of the multipart/alternative branches.
        
        The config changes the searching to recurse inside alternatives when
        performing attachment counting.

M	doc/manual.xml.head
M	init.h
M	mutt.h
M	parse.c

2019-11-10 15:09:54 -0800  Kevin McCarthy  <kevin@8t8.us> (5835f4c0)

        * Remove nonreentrant calls from exit_handler()
        
        _() can invoke malloc, so remove l10n translations.
        
        printf() is not safe either, so use write().
        
        I'm not sure at this point about curs_set() and endwin(), but they
        seem important enough for proper terminal cleanup to risk leaving in.
        
        Thanks to Oswald Buddenhagen for pointing out the problem, and the old
        trac ticket from Vincent at:
        <https://gitlab.com/muttmua/trac-tickets/raw/master/tickets/open/3791-SIGQUIT_Ctrl_while_opening_mailbox_made_Mutt_hang.txt>

M	signal.c

2019-11-09 13:43:11 -0800  Kevin McCarthy  <kevin@8t8.us> (183c4687)

        * Add markdown2html contrib script.
        
        This was contributed by martin f. kraft, to give an example script for
        the new $send_multipart_alternative_filter funtionality.

M	contrib/Makefile.am
A	contrib/markdown2html

2019-11-09 13:29:16 -0800  Kevin McCarthy  <kevin@8t8.us> (202ec2c8)

        * Remove input buffer flush on sigwinch in index.
        
        I recall seeing a message on IRC, where someone reported their macro
        suddenly aborting after invoking an editor or something similar.  At
        the time, I wasn't sure of the problem, but this seems a likely
        culprit, if the event caused a sigwinch.
        
        Neither the menu.c nor the pager.c SigWinch handlers do such a thing.
        The line was part of the initial import 21 years ago, so there is no
        justification given.

M	curs_main.c

2019-11-08 08:07:21 -0800  Kevin McCarthy  <kevin@8t8.us> (ef7e5e42)

        * Fix sigwinch race in the index and menu processor.
        
        Reset the SigWinch flag before the screen resize/reflow, not afterwards.

M	curs_main.c
M	menu.c

2019-11-07 19:33:31 -0800  Kevin McCarthy  <kevin@8t8.us> (c64baf93)

        * Change $write_bcc to default off.
        
        Change Fcc'ing to always write a Bcc header regardless of the setting.
        
        Update the variable documentation to note the difference when Fcc'ing.

M	init.h
M	mutt.h
M	sendlib.c

2019-11-07 15:06:53 -0800  Kevin McCarthy  <kevin@8t8.us> (29167ecf)

        * Block multipart type alternatives generation.
        
        Since generating multipart types using
        $send_multipart_alternative_filter will not send properly, display an
        error message and block alternatives of that type.

M	sendlib.c

2019-11-07 02:14:05 +0000  David Champion  <dgc.github@c13.us> (127bcc3c)

        * s/Mercurial/Git/ in INSTALL

M	INSTALL

2019-11-06 10:43:09 -0800  Kevin McCarthy  <kevin@8t8.us> (ab9b7b08)

        * Ensure APP_PGP flag is enabled for autocrypt.
        
        There was no code that explicitly enabled APP_PGP mode when either the
        recommendation engine or autocrypt menu were invoked.  This would
        cause the actual encryption to fail when sending.
        
        This was hidden by the $crypt_opportunistic_encrypt config, which does
        ensure it gets turned on.  I can only guess that this variable is
        popular with the autocrypt early adopters too.
        
        Also explicity enable APP_PGP for $autocrypt_reply.  We can't rely on
        $crypt_autopgp to turn this on.

M	compose.c
M	send.c

2019-10-29 13:53:20 +0800  Kevin McCarthy  <kevin@8t8.us> (0e566a03)

        * Add ability to generate multipart/alternative using a filter script.
        
        Create config variables $send_multipart_alternative (a quadoption)
        and $send_multipart_alternative_filter.  The filter script expects
        output to be the mime type, a blank line, then the content.
        
        Add ability to preview alternative from compose menu.  <view-alt-text>
        forces viewing as text.  <view-alt-mailcap> forces using the mailcap.
        Bind them to 'v' and 'V', respectively.
        
        Improve <resend-message> so a multipart/alternative is stripped out,
        which would just confuse the compose menu.  Currently this preserves
        the first alternative.
        
        Allow alternative generation in batch mode, as long as the quadoption
        is set to 'yes'.

M	OPS
M	compose.c
M	doc/manual.xml.head
M	functions.h
M	globals.h
M	init.h
M	mutt.h
M	postpone.c
M	protos.h
M	send.c
M	sendlib.c

2019-10-29 14:58:57 +0800  Kevin McCarthy  <kevin@8t8.us> (3f911681)

        * Create multipart/mixed helpers.
        
        Since we will be dealing with multipart/alternative, we need the
        helpers to be a bit more specific.
        
        We need to distinguish a top-level multipart/alternative from a
        multipart/mixed created because of attachments.

M	compose.c
M	main.c
M	postpone.c
M	protos.h
M	send.c
M	sendlib.c

2019-10-31 13:58:22 +0100  Fabian Groffen  <grobian@gentoo.org> (4cec4b63)

        * mutt_parse_content_type: work around annoying charset behaviour from Outlook
        
        MS Outlook seems to add charset=charset=utf-8 to Content-Type, which
        results in charset_utf-8 inside Mutt, which in turn confuses others.
        
        Strip a leading charset= from charset, so we work around this odd
        behaviour.
        
        Signed-off-by: Fabian Groffen <grobian@gentoo.org>

M	parse.c

2019-10-29 13:21:51 +0800  Kevin McCarthy  <kevin@8t8.us> (e9ab7539)

        * Convert smime_decrypt_mime() to use buffer pool.

M	smime.c

2019-10-28 18:59:02 +0800  Kevin McCarthy  <kevin@8t8.us> (ccf3f493)

        * Convert smime_handle_entity() to use buffers.
        
        Because of the mutt_body_handler() invocation, we avoid using the
        buffer pool.

M	smime.c

2019-10-28 12:36:29 +0800  Kevin McCarthy  <kevin@8t8.us> (05805ddd)

        * Convert smime_verify_one() to use buffer pool.

M	smime.c

2019-10-28 12:22:45 +0800  Kevin McCarthy  <kevin@8t8.us> (56856d8e)

        * Convert smime_sign_message() to use buffer pool.

M	smime.c

2019-10-27 19:29:41 +0800  Kevin McCarthy  <kevin@8t8.us> (ce55dbbf)

        * Convert smime_build_smime_entity() to use buffer pool.

M	smime.c

2019-10-27 15:47:55 +0800  Kevin McCarthy  <kevin@8t8.us> (07e32b7a)

        * Convert smime_invoke_import() and helpers to use buffer pool.

M	smime.c

2019-10-27 13:28:59 +0800  Kevin McCarthy  <kevin@8t8.us> (d4c00c67)

        * Convert smime_verify_sender() and helpers to use buffer pool.

M	smime.c

2019-10-27 11:09:00 +0800  Kevin McCarthy  <kevin@8t8.us> (7c81cd61)

        * Convert smime_get_candidates() to use buffer pool.

M	smime.c

2019-10-26 19:36:33 +0800  Kevin McCarthy  <kevin@8t8.us> (7e29eb23)

        * Convert mutt_write_fcc() to use buffer pool.

M	sendlib.c

2019-10-25 19:29:56 +0800  Kevin McCarthy  <kevin@8t8.us> (58a81897)

        * Convert _mutt_bounce_message to use buffer pool.

M	sendlib.c

2019-10-25 19:13:50 +0800  Kevin McCarthy  <kevin@8t8.us> (8de05d5f)

        * Convert send_msg() $sendmail_wait to use buffer pool.

M	sendlib.c

2019-10-25 15:55:49 +0800  Kevin McCarthy  <kevin@8t8.us> (3565f686)

        * Convert transform_to_7bit() to use buffer pool.

M	sendlib.c

2019-10-25 15:28:25 +0800  Kevin McCarthy  <kevin@8t8.us> (671e653c)

        * Convert mutt_message_to_7bit() to use buffer.
        
        Clean up the error handling a bit.
        
        Because of the recursive invocation, avoid the buffer pool in this
        case.

M	sendlib.c

2019-10-24 14:46:06 +0800  Kevin McCarthy  <kevin@8t8.us> (c5d770ea)

        * Convert fcc to a buffer.
        
        This affects the send.c flow (ci_send_message()), the compose menu,
        and various helper functions.

M	compose.c
M	edit.c
M	headers.c
M	hook.c
M	postpone.c
M	protos.h
M	send.c
M	sendlib.c

2019-10-24 11:23:20 +0800  Kevin McCarthy  <kevin@8t8.us> (2fcde005)

        * Convert send_message() to use buffer pool.

M	send.c

2019-10-23 19:17:09 +0800  Kevin McCarthy  <kevin@8t8.us> (12cd2d52)

        * Add typelen parameter to rfc1524_mailcap_lookup().
        
        Because of mime_lookup commands, the call to mutt_check_lookup_list()
        inside the function can modify the passed in type.  Add an explicit
        length parameter to the function, rather than assume the parameter
        size.  This also makes it more evident the type parameter can be
        modified to callers.
        
        Change the len parameter to mutt_check_lookup_list() to type size_t,
        just to be correct about it.

M	attach.c
M	handler.c
M	protos.h
M	recvattach.c
M	rfc1524.c
M	rfc1524.h

2019-10-23 19:01:17 +0800  Kevin McCarthy  <kevin@8t8.us> (8997c55f)

        * Convert rfc1524_mailcap_lookup() to use buffer pool for path.
        
        Adjust the rfc1524_mailcap_parse() and get_field_text() filename and
        type parameters to be const.
        
        Note that the sizeof(type) needs to be passed to
        rfc1524_mailcap_lookup().  I'll fix that next.

M	rfc1524.c

2019-10-23 16:03:56 +0800  Kevin McCarthy  <kevin@8t8.us> (6380cbd6)

        * Convert mutt_attach_reply() to use buffer pool.

M	recvcmd.c

2019-10-23 15:36:59 +0800  Kevin McCarthy  <kevin@8t8.us> (8d12d900)

        * Convert attach_forward_msgs() to use buffer pool.

M	recvcmd.c

2019-10-23 15:04:49 +0800  Kevin McCarthy  <kevin@8t8.us> (0b59dc75)

        * Convert attach_forward_bodies to use buffer pool.

M	recvcmd.c

2019-10-23 14:44:47 +0800  Kevin McCarthy  <kevin@8t8.us> (1f71fad9)

        * Convert attach_fmt %f to use buffer pool.

M	recvattach.c

2019-10-23 14:33:09 +0800  Kevin McCarthy  <kevin@8t8.us> (80bc61db)

        * Convert mutt_num_postponed() maildir check to use buffer pool.

M	postpone.c

2019-10-23 13:53:26 +0800  Kevin McCarthy  <kevin@8t8.us> (d8b6f94e)

        * Convert pop_fetch_message() to use buffer pool.

M	pop.c

2019-10-23 11:39:22 +0800  Kevin McCarthy  <kevin@8t8.us> (08480fa8)

        * Convert pop_read_header() to use buffer pool.

M	pop.c

2019-10-20 15:52:22 +0800  Kevin McCarthy  <kevin@8t8.us> (5b53290a)

        * Convert pgp_find_hash to use buffer pool.

M	pgpmicalg.c

2019-10-20 15:27:10 +0800  Kevin McCarthy  <kevin@8t8.us> (26e89164)

        * Convert pgp_make_key_attachment() to use buffer pool.

M	pgpkey.c

2019-10-20 14:06:24 +0800  Kevin McCarthy  <kevin@8t8.us> (15f89f8e)

        * Remove make_key_attachment parameter.
        
        The parameter is not actually used anywhere.  The next commit will
        convert the classic pgp implementation to use the buffer pool.  This
        change will simplify the logic.

M	compose.c
M	crypt-gpgme.c
M	crypt-gpgme.h
M	crypt-mod-pgp-classic.c
M	crypt-mod-pgp-gpgme.c
M	crypt-mod.h
M	cryptglue.c
M	mutt_crypt.h
M	pgp.h
M	pgpkey.c
M	send.c

2019-10-20 13:41:30 +0800  Kevin McCarthy  <kevin@8t8.us> (e3408a00)

        * Convert pgp_select_key() to use buffer pool.

M	pgpkey.c

2019-10-19 15:50:22 +0800  Kevin McCarthy  <kevin@8t8.us> (782bcd7d)

        * Convert pgp_traditional_encryptsign() to use buffer pool.

M	pgp.c

2019-10-19 15:35:06 +0800  Kevin McCarthy  <kevin@8t8.us> (978cdaf7)

        * Convert pgp_encrypt_message() to use buffer pool.

M	pgp.c

2019-10-19 15:07:53 +0800  Kevin McCarthy  <kevin@8t8.us> (38291748)

        * Convert pgp_sign_message to use buffer pool.

M	pgp.c

2019-10-19 14:48:17 +0800  Kevin McCarthy  <kevin@8t8.us> (48a34377)

        * Convert pgp_encrypted_handler() to use buffer pool.

M	pgp.c

2019-10-18 15:05:33 +0800  Kevin McCarthy  <kevin@8t8.us> (aa66b414)

        * Convert pgp_decrypt_mime() to use buffer pool.

M	pgp.c

2019-10-18 14:41:06 +0800  Kevin McCarthy  <kevin@8t8.us> (e383f5c9)

        * Convert pgp_decrypt_part() to use buffer pool.

M	pgp.c

2019-10-18 14:29:56 +0800  Kevin McCarthy  <kevin@8t8.us> (f3bfb7d1)

        * Convert pgp_extract_keys_from_attachment() to use buffer pool.

M	pgp.c

2019-10-18 14:21:19 +0800  Kevin McCarthy  <kevin@8t8.us> (e2722551)

        * Convert pgp_verify_one() to use buffer pool.

M	pgp.c

2019-10-18 14:02:02 +0800  Kevin McCarthy  <kevin@8t8.us> (c1f9f00f)

        * Convert pgp_check_traditional_one_body() to use buffer pool.

M	pgp.c

2019-10-17 18:34:55 +0800  Kevin McCarthy  <kevin@8t8.us> (e750e39c)

        * Clean up pager change folder aborts to return to pager.
        
        Changing folder from within the pager behaved inconsistently when
        aborting, or upon a normal error.  It would sometimes return the pager
        and other times return to the index.
        
        Ensure it returns to the pager, except in the case where
        mx_close_mailbox() fails due to a new mail or reopen event.  In that
        case we likely want to be in the index - the message we were viewing
        could have disappeared or relocated.

M	curs_main.c

2019-10-17 17:30:03 +0800  Kevin McCarthy  <kevin@8t8.us> (b15e8659)

        * Remove menu->menu hack when redirecting pager ops through index.
        
        As noted in commit a327386c, this causes problems when redirecting ops
        that open new menus.  There is no need to change the menu->menu type,
        as a flag works perfectly well with no such side effects.
        
        This also removes the need for comments explaning the hack before
        mutt_folder_hooks() when changing folders, or before displaying a
        message in the pager.

M	curs_main.c

2019-10-17 16:01:11 +0800  Kevin McCarthy  <kevin@8t8.us> (e5f24ca8)

        * Merge branch 'stable'

2019-10-17 15:48:31 +0800  Kevin McCarthy  <kevin@8t8.us> (a327386c)

        * Stable branch quick fix for pager change-mailbox push/exec bug.
        
        The menu functions mutt_push/pop_current_menu() keep track of the menu
        stack, automatically setting CurrentMenu when exiting menus.
        
        The only gotcha was the function sharing between the index and pager
        menus.  The index uses a hack, setting menu->menu to MENU_PAGER for
        operations redirecting through the index and back to the pager
        afterwards.
        
        I thought this was covered by the restoration of the menu before
        returning to the pager, or when exiting the index switch.  However it
        is not: invoking other menus, such as the browser, will result in
        CurrentMenu being set to the Pager when exiting those (by
        mutt_pop_current_menu()).  This can result in folder hooks failing for
        unshared functions.
        
        A better fix is to remove the hack of using menu->menu, because this
        can easily cause a problem in the future in other situations.  (I will
        make this fix in master next.)  For the stable branch, I am explicitly
        setting/restoring CurrentMenu before invoking the folder hooks.

M	curs_main.c

2019-10-16 15:42:54 +0800  Kevin McCarthy  <kevin@8t8.us> (30b1ff48)

        * Convert pgp_app_handler to use buffer pool.
        
        Rename the pgp_copy_checksig() and mutt_wait_filter() return code
        variables to provide more clarity, and to make the purpose and
        assignment of rc more obvious.
        
        Change tmpfname creation failure to be like pgpoutfile and
        pgperrfile, by going to the cleanup point.

M	pgp.c

2019-10-16 14:41:04 +0800  Kevin McCarthy  <kevin@8t8.us> (f566f734)

        * Convert msg_search to use buffer.
        
        Avoid the buffer pool because of the long life cycle (across the
        invocation of mutt_body_handler().

M	pattern.c

2019-10-16 14:13:05 +0800  Kevin McCarthy  <kevin@8t8.us> (23bfc45f)

        * Convert mx_close_mailbox() to use buffer pool.

M	mx.c

2019-10-15 15:26:20 +0800  Kevin McCarthy  <kevin@8t8.us> (9506db1e)

        * Reduce line buffer size in mx_get_magic().
        
        tmp is only used for mbox and mmdf iniital line examination.  That
        only needs to look at 6 characters from the first line.

M	mx.c

2019-10-15 14:52:26 +0800  Kevin McCarthy  <kevin@8t8.us> (0944e898)

        * Convert mutt_save_confirm() to use buffer pool.
        
        These are prompts, so don't really need the larger, dynamic
        capability, but it might not hurt for a larger path.

M	muttlib.c

2019-10-15 14:38:07 +0800  Kevin McCarthy  <kevin@8t8.us> (48847904)

        * Removed unused mutt_expand_link()

M	muttlib.c
M	protos.h

2019-10-15 14:33:02 +0800  Kevin McCarthy  <kevin@8t8.us> (140cd885)

        * Change ssl_init to use buffer pool for rand filename.

M	mutt_ssl.c

2019-10-15 13:48:59 +0800  Kevin McCarthy  <kevin@8t8.us> (5572a302)

        * Convert mbox_sync_mailbox() to use buffer pool.
        
        Rewrite return(-1) to a new fatal target to ensure cleanup.
        
        Remove some repetitive unlink(tempfile) operations by adding a new
        flag pointing when to start and stop that during a bail.

M	mbox.c

2019-10-13 16:25:54 +0800  Kevin McCarthy  <kevin@8t8.us> (71d6dbea)

        * Update mime fields when piping a message with $pipe_decode set.
        
        Programs that process the message may get confused if the original
        mime fields are in the output.  Add the CH_MIME flag to strip mime
        headers and CH_TXTPLAIN to add decoded text mime headers in their
        place, just as <decode-copy> does.
        
        However, make sure not to add the flags when printing, as printers
        highly likely won't care and users probably don't want to see those
        headers in their printout.

M	commands.c

2019-10-11 19:31:58 +0800  Kevin McCarthy  <kevin@8t8.us> (9a1b08bf)

        * Merge branch 'stable'

2019-10-11 19:17:58 +0800  Beck, Andre  <beck@ibh.de> (937a1eb1)

        * Clear connection input buffer when closing.
        
        An RFC-violating reply from the Dovecot SMTP submission service
        uncovered a bug in Mutt.  Mutt was not clearing out the input buffer
        when closing the connection.
        
        Dovecot was including an extra 250 response after data submission:
        
          DATA
          354 OK
          Subject: Test 3
        
          Test 3
          .
          250 2.0.0  223 byte chunk, total 223
          250 2.0.0 OK id=1iIqT1-0004wS-Ac
          quit
          221 2.0.0 Bye
        
        The multiline 250 reply requires a hyphen in the first response.  Mutt
        closes the connection after the quit, but ends up leaving the
        unexpected second line in the input buffer.  This causes an error in
        the next usage of the connection.
        
        Clean out bufpos and available when closing the socket.

M	mutt_socket.c

2019-10-10 15:03:05 +0800  Kevin McCarthy  <kevin@8t8.us> (0e32b977)

        * Add new browse-mailboxes function in index and pager.
        
        This allows direct access to the mailboxes list in the folder menu.
        This is useful, for instance, if $browser_sticky_cursor is set and the
        current directory does not contain the open mailbox.  The macro
        version will lose the current mailbox while toggling to the mailboxes
        list.

M	OPS
M	curs_main.c
M	doc/Muttrc.head
M	functions.h

2019-10-09 12:59:41 +0800  Kevin McCarthy  <kevin@8t8.us> (e4c176b3)

        * Convert main() to use buffers for paths.
        
        Convert fpath (used for checking and creating $folder.
        
        Convert expanded_infile and tempfile which are used for the -i,-H, and
        -E options.  We allocate buffers, rather than use the pool, because
        they are used for the duration of the compose/send operation.

M	main.c
M	protos.h
M	send.c

2019-10-09 08:36:59 +0800  Kevin McCarthy  <kevin@8t8.us> (fe69e4d1)

        * Add sticky browser behavior for sorting.
        
        The menu isn't rebuilt after sorting, so the selected mailbox was not
        sticky for that operation.
        
        Refactor the sticky cursor setting out so it can be explicitly called
        after sorting too.

M	browser.c

2019-10-08 15:22:27 +0800  Kevin McCarthy  <kevin@8t8.us> (46223bc9)

        * Convert start_debug() to use buffer pool.

M	init.c

2019-10-08 15:21:44 +0800  Kevin McCarthy  <kevin@8t8.us> (fb2487c2)

        * Convert set/reset and source_rc to use buffers for paths.

M	init.c

2019-10-08 13:07:40 +0800  Kevin McCarthy  <kevin@8t8.us> (49c97808)

        * Convert parse_path_(un)list to use buffer pool for path.
        
        Don't use the buf parameter to avoid stretching it out, as it's used
        for the entire rc parsing, and typically just holds command names.

M	init.c

2019-10-08 12:28:30 +0800  Kevin McCarthy  <kevin@8t8.us> (d430f372)

        * Change message cache id to use SHORT_STRING.
        
        Even that is too big, but it doesn't make make sense to use
        _POSIX_PATH_MAX for the id string.

M	imap/message.c

2019-10-08 11:24:38 +0800  Kevin McCarthy  <kevin@8t8.us> (f055ff54)

        * Convert imap_cachepath() and callers to use buffers.

M	imap/imap_private.h
M	imap/message.c
M	imap/util.c

2019-10-07 10:39:44 +0800  Kevin McCarthy  <kevin@8t8.us> (dcdbdfee)

        * Convert imap fetch_new and fetch_message tempfiles to buffer pool.

M	imap/message.c

2019-10-07 09:55:39 +0800  Kevin McCarthy  <kevin@8t8.us> (2e0fc335)

        * Convert imap_open_new_message() to use buffer pool.

M	imap/imap.c

2019-10-06 16:32:42 +0800  Kevin McCarthy  <kevin@8t8.us> (3f5b0220)

        * Convert save-hook and fcc-hook to use buffer pool internally.
        
        The hook parameters still need to be converted, but I'm working
        towards it slowly.

M	hook.c
M	muttlib.c
M	protos.h

2019-10-06 13:37:14 +0800  Kevin McCarthy  <kevin@8t8.us> (8351c060)

        * Convert mutt_parse_hook() to use buffer pool.
        
        Remove the path variable, as this is not needed:
        mutt_buffer_expand_path() and mutt_check_simple() can operate directly
        on the pattern/command buffers.

M	hook.c

2019-10-05 14:10:04 +0800  Kevin McCarthy  <kevin@8t8.us> (43bc959c)

        * Convert shrink_histfile() tempfile to use buffer pool.

M	history.c

2019-10-05 13:59:57 +0800  Kevin McCarthy  <kevin@8t8.us> (bb62f172)

        * Convert mutt_help() to use buffer for tempfile.

M	help.c

2019-10-05 13:52:50 +0800  Kevin McCarthy  <kevin@8t8.us> (dafb1f38)

        * Convert mutt_edit_headers() to use buffer pool.

M	headers.c

2019-10-04 15:29:03 +0800  Kevin McCarthy  <kevin@8t8.us> (48cf1092)

        * Fix built-in pager checks for help and attachments.
        
        Mutt uses the built-in pager when $pager is unset too.  Fix a few
        checks to also handle that case.

M	help.c
M	muttlib.c

2019-09-30 18:50:27 -0700  Kevin McCarthy  <kevin@8t8.us> (a6bccbe1)

        * Memcpy header cache fetch values to ensure alignment.
        
        While testing the hcache buffer pool changes, I noticed a misaligned
        pointer warning when using LMDB.
        
        The other header cache backends must ensure alignment of the pointer
        they return, but LMDB apparently does not.
        
        Instead of directly assigning and dereferencing the pointer fetched,
        use memcpy to the appropriate type, just as the header cache restore
        operation does.

M	imap/imap.c
M	imap/message.c
M	imap/util.c
M	mh.c

2019-09-28 14:08:39 -0700  Kevin McCarthy  <kevin@8t8.us> (fb1686b6)

        * Convert hcache delete and open calls to use buffer pool.

M	hcache.c

2019-09-27 19:21:26 -0700  Kevin McCarthy  <kevin@8t8.us> (36ee8d39)

        * Convert hcache fetch and store raw to use buffer pool.

M	hcache.c

2019-09-27 18:12:27 -0700  Kevin McCarthy  <kevin@8t8.us> (a736d4a4)

        * Convert hcache_open to use buffer pool.
        
        Change the namer function and mutt_hcache_per_folder to operate on a
        buffer parameter.

M	hcache.c
M	hcache.h
M	imap/util.c
M	pop.c

2019-09-27 15:46:49 -0700  Kevin McCarthy  <kevin@8t8.us> (84c1b646)

        * Convert hcache db4 lockfile to buffer.

M	hcache.c

2019-09-27 14:42:45 -0700  Kevin McCarthy  <kevin@8t8.us> (34ad2134)

        * Convert run_decode_and_handler() to use buffer pool.

M	handler.c

2019-09-27 14:28:01 -0700  Kevin McCarthy  <kevin@8t8.us> (a4f99230)

        * Convert edit_one_message() to use buffer pool.

M	editmsg.c

2019-09-26 15:23:14 -0700  Kevin McCarthy  <kevin@8t8.us> (44349c11)

        * Convert mutt_error_history to use buffer pool.

M	curs_lib.c

2019-09-25 18:44:50 -0700  Kevin McCarthy  <kevin@8t8.us> (13965f79)

        * Convert crypt_extract_keys and signed handler to use buffers.

M	crypt-mod-smime-classic.c
M	crypt-mod.h
M	crypt.c
M	cryptglue.c
M	mutt_crypt.h
M	smime.c
M	smime.h

2019-09-25 15:28:30 -0700  Kevin McCarthy  <kevin@8t8.us> (fc0c2bee)

        * Convert crypt-gpgme to use BUFFER for tempfiles.
        
        Use the pool where possible, but when the function calls other
        long-running functions (such as mutt_body_handler() or
        mutt_do_pager()), allocate the buffer.
        
        smime_gpgme_decrypt_mime() was not freeing the "cur" BODY generated on
        error.  Add a call to mutt_free_body(cur) in the error handling.

M	crypt-gpgme.c

2019-09-22 15:59:27 -0700  Kevin McCarthy  <kevin@8t8.us> (4d2f645a)

        * Fix memory leak in compose write-fcc function.
        
        The outer multipart was not being freed after writing.

M	compose.c

2019-09-22 15:58:58 -0700  Kevin McCarthy  <kevin@8t8.us> (0637998b)

        * Convert compress setup_paths() to use buffer.

M	compress.c

2019-09-22 14:54:14 -0700  Kevin McCarthy  <kevin@8t8.us> (1ae6e10f)

        * Remove nonull check from _mutt_enter_fname()
        
        It was a mistake to add the check when converting to use buffers in
        commit 70ef4e9e.
        
        The buf must be non-null in the original version, and in this version
        we are copying results back to it afterwards.

M	curs_lib.c

2019-09-22 14:38:03 -0700  Kevin McCarthy  <kevin@8t8.us> (b4cd9852)

        * Convert compose menu fname variable to buffer.

M	compose.c

2019-09-22 14:16:56 -0700  Kevin McCarthy  <kevin@8t8.us> (5da50b4d)

        * Convert buffer callers of mutt_get_field() to use buffer version.

M	browser.c
M	curs_lib.c
M	muttlib.c
M	pattern.c
M	recvattach.c

2019-09-22 14:11:43 -0700  Kevin McCarthy  <kevin@8t8.us> (ecd0d6ed)

        * Create mutt_buffer_get_field().
        
        This will reduce the buffer->dptr fiddling all over the place into one
        spot until mutt_enter_string() can be converted.

M	curs_lib.c
M	protos.h

2019-09-21 19:41:28 -0700  Kevin McCarthy  <kevin@8t8.us> (4f89f530)

        * Convert compose check_attachments() to use buffer pool.
        
        Modify error message so that the filename comes last, to prevent a
        long path from hiding the error message or prompt.

M	compose.c

2019-09-21 18:34:51 -0700  Kevin McCarthy  <kevin@8t8.us> (4050cc43)

        * Fix mutt_save_message() "enter_fname()" to use buffer version.
        
        Commit be632f11 converted this function to use the buffer pool, but
        accidentally used the non-buffer prompt when there was already a
        buffer-converted version.

M	commands.c

2019-09-21 12:41:10 -0700  Kevin McCarthy  <kevin@8t8.us> (7ca52826)

        * Merge branch 'stable'

2019-09-21 12:36:56 -0700  Kevin McCarthy  <kevin@8t8.us> (34cd43c3)

        * automatic post-release commit for mutt-1.12.2

M	ChangeLog
M	VERSION

2019-09-19 18:52:24 -0700  Kevin McCarthy  <kevin@8t8.us> (192a6d0e)

        * Convert mutt_complete() to use the buffer pool.
        
        Add helper functions mutt_buffer_substrcpy() and
        mutt_buffer_concatn_path().
        
        Remove mutt_concatn_path() because mutt_complete() was the only
        caller.

M	buffer.c
M	buffer.h
M	complete.c
M	imap/imap.c
M	imap/imap.h
M	lib.c
M	lib.h
M	muttlib.c
M	protos.h

2019-09-15 15:41:42 -0700  Kevin McCarthy  <kevin@8t8.us> (a4b53e19)

        * Improve sidebar indentation and shortpath behavior.
        
        The previous implementation only enabled $sidebar_folder_indent for
        mailboxes underneath $folder.  Change indentation to be based upon the
        previous common-path mailbox in the list.  Indent one more than the
        common-path mailbox, rather than the number of delimiters after
        $folder.
        
        Change $sidebar_short_path to shorten based on the previous mailbox in
        the list too.
        
        Invoke mutt_buffer_pretty_mailbox() to prefix the mailbox with '~' or
        '=' characters.  This changes the output for the case where mailbox
        equals $folder, but provides uniform display behavior across mutt.
        
        Thanks to Christopher Zimmermann (@madroach) for the original patch,
        which this commit is based upon.

M	sidebar.c

2019-09-11 19:47:13 -0700  Kevin McCarthy  <kevin@8t8.us> (fa965230)

        * Convert print_attachment_list to use buffer pool.

M	recvattach.c

2019-09-11 19:40:48 -0700  Kevin McCarthy  <kevin@8t8.us> (70bb4fad)

        * Convert query_pipe_attachment to use buffer pool.

M	attach.c
M	protos.h
M	recvattach.c

2019-09-11 19:10:02 -0700  Kevin McCarthy  <kevin@8t8.us> (4142e2e5)

        * Convert recvattach save_attachment functions to use buffer pool.
        
        Convert utility functions prepend_curdir() and mutt_check_overwrite()
        to use BUFFER, as they are only used by those two functions.

M	muttlib.c
M	protos.h
M	recvattach.c

2019-09-11 16:23:46 -0700  Kevin McCarthy  <kevin@8t8.us> (be632f11)

        * Convert mutt_save_message() to use buffer pool.
        
        Change imap_copy_messages() dest parameter to const char *.
        
        mutt_default_save() will be converted to use a buffer next, removing
        the dptr fixups.

M	commands.c
M	imap/imap.h
M	imap/message.c

2019-09-11 15:55:01 -0700  Kevin McCarthy  <kevin@8t8.us> (67f4d1d0)

        * Convert mutt_display_message() to buffer pool.
        
        Remove an unused mime-type string generation at the top of the
        function too.  The code using the mime type was removed a long time
        ago in commit 246198ae.

M	commands.c

2019-09-09 18:39:19 -0700  Kevin McCarthy  <kevin@8t8.us> (f8e93908)

        * Merge branch 'stable'

2019-09-09 18:19:03 -0700  Kevin McCarthy  <kevin@8t8.us> (773166e9)

        * Change browser <display-filename> to show full_path.
        
        Prior to the introduction of display_name/full_path, it showed "name",
        which was the full IMAP URL but the shortname for folder/mailbox view.
        
        Now that the full_path is available, it makes sense to show that for
        all cases.

M	browser.c

2019-09-09 14:06:31 -0700  Kevin McCarthy  <kevin@8t8.us> (2e6d4903)

        * Convert remaining mutt_encode_path() call to use BUFFER.
        
        Then rename the other uses of mutt_buffer_encode_path() to
        mutt_encode_path().

M	bcache.c
M	hcache.c
M	muttlib.c
M	protos.h

2019-09-09 18:07:16 -0700  Kevin McCarthy  <kevin@8t8.us> (616b2063)

        * Merge branch 'stable'

2019-09-08 10:49:37 -0700  Kevin McCarthy  <kevin@8t8.us> (0fa71030)

        * Add $browser_sticky_cursor default set.
        
        This option attempts to keep the browser cursor on the same mailbox.
        
        It does this by keeping track of the current selected mailbox and
        comparing that when regenerating the menu.
        
        Modify imap_mailbox_create() and imap_mailbox_rename() to return the
        new mailbox name so it can be automatically selected.

M	browser.c
M	imap/browse.c
M	imap/imap.h
M	imap/imap_private.h
M	imap/util.c
M	init.h
M	mutt.h

2019-09-08 12:09:51 -0700  Kevin McCarthy  <kevin@8t8.us> (1600dd18)

        * Rename browser fields to display_name and full_path.
        
        Mailbox and Folder view don't make use of the desc field.  They store
        an abbreviated version in the name field and expand it when selecting
        or testing it.
        
        IMAP stores the full URL in name, and stores an abbreviated
        version (possibly with a trailing slash) in the desc field.
        
        The asymetricity makes it awkward, and interferes with a smart-cursor
        option in the next commit.  So instead rename the fields to
        "display_name" and "full_path".
        
        In Mailfox and Folder view, store the fully expanded path, which we
        have while iterating, in "full_path", and the shortened version in
        "display_name".
        
        Likewise in IMAP, store the full URL in "full_path" and the shortened
        version in "display_name".
        
        Simplify the code in browser.c to use the full_path instead of
        concatenating and expanding.

M	browser.c
M	browser.h
M	imap/browse.c

2019-09-06 16:14:08 -0700  Kevin McCarthy  <kevin@8t8.us> (ad72ec6c)

        * Convert bcache to use buffer pools.

M	bcache.c
M	muttlib.c
M	protos.h

2019-09-01 19:10:23 -0700  Kevin McCarthy  <kevin@8t8.us> (c28cba77)

        * Fix memory leak when attaching messages.
        
        Setting actx->idx[]->content->parts to NULL causes a memory leak,
        because message attachments store a BODY there that needs to be freed.
        
        I looked through the various use cases of ci_send_message() and
        actually believe content->parts will be NULL for all other cases
        except message attachments.  From the comment added to
        delete_attachment():
        
          Other ci_send_message() message constructors are careful to free
          any body->parts, removing depth:
           - mutt_prepare_template() used by postponed, resent, and draft files
           - mutt_copy_body() used by the recvattach menu and $forward_attachments.
        
          I believe it is safe to completely remove the "content->parts =
          NULL" statement.  But for safety, am doing so only for the case
          it must be avoided: message attachments.

M	compose.c

2019-09-01 13:25:06 -0700  Kevin McCarthy  <kevin@8t8.us> (aafe98ba)

        * Reuse the static space_stuff function for unstuffing.

M	rfc3676.c

2019-08-31 14:17:22 -0700  Kevin McCarthy  <kevin@8t8.us> (7949149a)

        * Remove manual note about space-stuffing only once.
        
        Stuffing is now performed each time.

M	doc/manual.xml.head

2019-08-31 13:37:16 -0700  Kevin McCarthy  <kevin@8t8.us> (4959e8d4)

        * Re-enable and cleanup format-flowed space stuffing.
        
        Commit 04cb5bde tried to fix re-stuffing a postponed message more than
        once, but unfortunately broke the normal case of composing a new
        message.  So actually, space-stuffing has been turned off the past 7
        years.
        
        Move format=flowed parameter setting below the standard message
        pre-processing block.  It shouldn't be performed for draft-files even
        with $resume_draft_files set.  Moving out of the block makes that
        clearer.
        
        Create mutt_rfc3676_space_(un)stuff() functions, which check the
        content type and stuff/unstuff apprpropriately.  Note that the
        stuff/unstuff does not depend on $text_flowed, which is only in charge
        of setting the format=flowed parameter.  This parameter can also come
        from resumed/resent/draft messages and should still be respected.
        
        Add unstuffing to mutt_prepare_template().  This is called by
        postponed, resent, and draft files.  This will prevent double-stuffing
        in those cases.
        
        Unstuff/restuff around editing the message in the compose menu, to
        keep everything transparent to the user.  I originally put the
        stuffing *after* the compose menu, but previewing the messages in the
        compose menu did not work properly in that case.  It's cleaner this
        way too.
        
        Change the stuff/unstuff functions to preserve the original
        hdr->content->filename.  The "hack" previously used would interact
        poorly with editable body files (mutt -i -E).  Fortunately space
        stuffing was pretty much disabled except in unusual cases before.

M	compose.c
M	doc/manual.xml.head
M	init.h
M	postpone.c
M	rfc3676.c
M	rfc3676.h
M	send.c

2019-08-31 13:36:28 -0700  Kevin McCarthy  <kevin@8t8.us> (af47e694)

        * Properly revert on an autocrypt postpone failure.

M	send.c

2019-08-28 14:47:15 -0700  Kevin McCarthy  <kevin@8t8.us> (aa6d4663)

        * Merge branch 'stable'

2019-08-28 20:22:10 +0000  Olaf Hering  <olaf@aepfle.de> (2b8dc129)

        * de.po: proper translation for term collapse
        
        The intention of the term "collapse" is something like opening and
        closing an item. The initial translation which was added two decades
        ago means something like "breaks by weakness", which does not fit in
        the context of mutt.
        
        Use a term which means literally "opening and closing an item, like a
        book".
        
        Signed-off-by: Olaf Hering <olaf@aepfle.de>

M	po/de.po

2019-08-20 15:37:06 -0700  Kevin McCarthy  <kevin@8t8.us> (c8ec78e1)

        * Clean up the autocrypt doc a bit more.

M	doc/manual.xml.head

2019-08-20 15:17:31 -0700  Kevin McCarthy  <kevin@8t8.us> (f7c70a02)

        * Update autocrypt keyring documentation.
        
        Recommend setting $autocrypt_dir to your normal keyring directory if
        you want to use your existing key.
        
        Trying to copy it over leads to signature verification issues.  Even
        if I reversed the order (which is much less clean), that would just
        lead to missing key signature errors for Autocrypt messages instead.

M	doc/manual.xml.head

2019-08-20 14:57:29 -0700  Kevin McCarthy  <kevin@8t8.us> (577d5d14)

        * Fix --with-sqlite3 test for autocrypt.
        
        Since $with_sqlite3 can contain a path, we want to check if it is
        "no", not that it isn't "yes".

M	configure.ac

2019-08-17 15:38:34 -0700  Kevin McCarthy  <kevin@8t8.us> (d4ec818a)

        * Add $ssl_use_tlsv1_3 config variable, default set.

M	init.h
M	mutt.h
M	mutt_ssl.c
M	mutt_ssl_gnutls.c

2019-06-28 15:09:51 -0700  Kevin McCarthy  <kevin@8t8.us> (be684ef2)

        * Add size display configuration variables.
        
        Although it would be nice to "open this up" more, performance and
        security/stability issues would arise.
        
        Based on the thread in mutt-dev, I hope these vars will satisfy most
        customization needs:
          $size_show_bytes
          $size_show_mb
          $size_show_fractions
          $size_units_on_left

M	doc/manual.xml.head
M	init.h
M	mutt.h
M	muttlib.c

2019-08-13 21:03:51 -0700  Kevin McCarthy  <kevin@8t8.us> (342b91cf)

        * Fix LibreSSL build.
        
        Apparently LibreSSL doesn't implement SSL_has_pending(), even for
        newer versions.

M	mutt_ssl.c

2019-08-13 15:14:37 -0700  Kevin McCarthy  <kevin@8t8.us> (536353c7)

        * Update POTFILES.in.
        
        The file was missing a few files with translation strings:
        copy.c, imap/auth_oauth.c, and safe_asprintf.c.

M	po/POTFILES.in

2019-07-28 07:54:32 -0700  Kevin McCarthy  <kevin@8t8.us> (8353407c)

        * Add checks for buffered OpenSSL or GnuTLS data when polling.
        
        I don't believe this has had an actual effect, because Mutt doesn't
        support renegotiation, and we are only polling immediately after
        sending NOOP.
        
        However, it looks like checking is technically the correct thing to do
        to avoid polling waiting for data that is already buffered.

M	mutt_ssl.c
M	mutt_ssl_gnutls.c

2019-08-13 14:20:33 -0700  Kevin McCarthy  <kevin@8t8.us> (fdfda1b7)

        * Mention base64 keydata being stored in the autocrypt database.

M	doc/manual.xml.head

2019-08-11 14:35:07 -0700  Kevin McCarthy  <kevin@8t8.us> (c79c769f)

        * Move LIBAUTOCRYPT before MUTTLIBS to fix building issues.

M	Makefile.am

2019-08-11 14:17:50 -0700  Kevin McCarthy  <kevin@8t8.us> (456737cd)

        * Add autocrypt and sqlite3 to .gitlab-ci.yml.

M	.gitlab-ci.yml

2019-08-09 14:15:18 -0700  Kevin McCarthy  <kevin@8t8.us> (ae332f72)

        * Add L10N comment about autocrypt menu help line abbreviations.

M	autocrypt/autocrypt_acct_menu.c

2019-08-09 13:58:55 -0700  Kevin McCarthy  <kevin@8t8.us> (9f692bd3)

        * Add a note about autocrypt first-run and macros.

M	doc/manual.xml.head

2019-08-09 13:37:08 -0700  Kevin McCarthy  <kevin@8t8.us> (b8e9dfc1)

        * Add autocrypt documentation about shared key and keyring strategies.

M	doc/manual.xml.head

2019-08-08 20:49:32 -0700  Kevin McCarthy  <kevin@8t8.us> (38f06669)

        * Minor autocrypt manual section updates.
        
        Mention key selection during account creation and $autocrypt_reply for
        controlling autocrypt mode setting during replies.

M	doc/manual.xml.head

2019-08-08 09:18:53 -0700  Kevin McCarthy  <kevin@8t8.us> (d0ef8c32)

        * Enabled writing protected subject with autocrypt too.

M	crypt.c

2019-08-07 18:34:58 -0700  Kevin McCarthy  <kevin@8t8.us> (1de46058)

        * Turn off macro processing during autocrypt initialization.
        
        The muttrc can push events into the macro buffer, with the assumption
        that mailbox will be opened next.  This will interfere with the
        prompts uses during first run.  The only issue is that macros won't
        work inside the folder browser, if invoked.

M	autocrypt/autocrypt.c

2019-08-07 18:24:15 -0700  Kevin McCarthy  <kevin@8t8.us> (41d9d9cf)

        * Allow nested setting of OPTIGNOREMACROEVENTS.
        
        This will be needed for the first-run of autocrypt initialization.
        The initialization involves a number of prompts, and can even use the
        folder browser.  The browser could in turn connect to IMAP which might
        invoke a certificate prompt, login prompt, etc.

M	curs_lib.c
M	mutt_ssl.c
M	mutt_ssl_gnutls.c

2019-08-07 14:31:53 -0700  Kevin McCarthy  <kevin@8t8.us> (04817c00)

        * Add $autocrypt_reply.
        
        This allows turning off the force-autocrypt mode when replying to an
        autocrypt email.

M	init.h
M	mutt.h
M	send.c

2019-08-07 14:17:28 -0700  Kevin McCarthy  <kevin@8t8.us> (01bc088c)

        * Automatically clear screen when popping the last menu.
        
        This removes the need to manually clear the screen during pre-menu
        operations, such as autocrypt first run initialization.

M	autocrypt/autocrypt.c
M	menu.c

2019-08-07 14:12:43 -0700  Kevin McCarthy  <kevin@8t8.us> (d55b0390)

        * Add ability to create autocrypt account from an existing key.
        
        This is useful when adding accounts, or for users who want to use an
        existing key from the keyring during initial account creation.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt_gpgme.c
M	autocrypt/autocrypt_private.h
M	crypt-gpgme.c
M	crypt-gpgme.h

2019-08-04 07:55:26 -0700  Kevin McCarthy  <kevin@8t8.us> (769a7765)

        * Don't try to decrypt autocrypt messages if the option is off.

M	cryptglue.c

2019-08-04 07:52:19 -0700  Kevin McCarthy  <kevin@8t8.us> (da54c660)

        * Manual typo fix.
        
        Thanks to Petr Pisar for pointing out the error.

M	doc/manual.xml.head

2019-08-03 13:53:40 -0700  Kevin McCarthy  <kevin@8t8.us> (1089deb0)

        * Add autocrypt README file

M	autocrypt/Makefile.am
A	autocrypt/README

2019-08-02 09:03:41 -0700  Kevin McCarthy  <kevin@8t8.us> (128127cb)

        * Add documentation for the autocrypt feature.

M	doc/manual.xml.head
M	init.h

2019-07-31 18:56:29 -0700  Kevin McCarthy  <kevin@8t8.us> (2822b4eb)

        * Add option to scan mailboxes during first run.
        
        The scanner will disable the header cache, allowing scanning all
        messages in the mailbox.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_private.h

2019-07-31 15:42:09 -0700  Kevin McCarthy  <kevin@8t8.us> (e01b3f02)

        * Add more translation string comments for autocrypt.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt_acct_menu.c
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_gpgme.c
M	compose.c

2019-07-28 19:24:11 -0700  Kevin McCarthy  <kevin@8t8.us> (85bd11b0)

        * Basic autocrypt account menu.
        
        Provide ability to create, delete, and toggle the prefer-encrypt and
        enabled flag for an account.
        
        Hook into the index via 'A' <autocrypt-acct-menu>.

M	OPS
M	autocrypt/Makefile.am
M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
A	autocrypt/autocrypt_acct_menu.c
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_private.h
M	curs_main.c
M	doc/manual.xml.tail
M	functions.h
M	globals.h
M	init.h
M	keymap.c
M	keymap.h
M	po/POTFILES.in

2019-07-30 19:14:56 -0700  Kevin McCarthy  <kevin@8t8.us> (36115604)

        * Convert peer_update to just pass the peer object.
        
        Unlike get and insert, there is no need for an addres parameter that
        needs to be normalized, since the address is already in the peer
        object.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_private.h

2019-07-28 19:23:12 -0700  Kevin McCarthy  <kevin@8t8.us> (71e881a6)

        * Improve gen-map-doc work on multi-word maps.

M	doc/gen-map-doc

2019-07-27 15:34:51 -0700  Kevin McCarthy  <kevin@8t8.us> (e5463f57)

        * Add account->enabled checks.
        
        Add to ui recommendation, keylist generator, and autocrypt header
        writing routines.

M	autocrypt/autocrypt.c

2019-07-27 15:11:38 -0700  Kevin McCarthy  <kevin@8t8.us> (a7a5abe4)

        * Add prefer-encrypt prompt during account creation.

M	autocrypt/autocrypt.c

2019-07-27 13:44:36 -0700  Kevin McCarthy  <kevin@8t8.us> (ec6953f5)

        * Add AUTOCRYPT header to imap fetch list.
        
        If $autocrypt is set, add the header to make IMAP behave the same as
        other formats (parsing on initial mailbox opening).
        
        This will also be useful if we perform an initial scan during account
        creation, to make that work for IMAP too.

M	imap/message.c

2019-07-26 16:27:04 -0700  Kevin McCarthy  <kevin@8t8.us> (0d94a3dc)

        * Add L10N translation message comments.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_gpgme.c
M	compose.c

2019-07-26 16:00:22 -0700  Kevin McCarthy  <kevin@8t8.us> (43c57659)

        * Add autocrypt source files to POTFILES.in

M	po/POTFILES.in

2019-07-26 15:59:47 -0700  Kevin McCarthy  <kevin@8t8.us> (baac6d68)

        * Print an error message if an autocrypt key can't be found.

M	autocrypt/autocrypt.c

2019-07-26 13:55:46 -0700  Kevin McCarthy  <kevin@8t8.us> (2aec979b)

        * Handle autocrypt message decryption.
        
        Try autocrypt first for crypt_pgp_decrypt_mime() and
        pgp_gpgme_encrypted_handler().
        
        Propagate the autocrypt bit if successful.  This is used when replying
        to an autocrypt message, to force a reply using autocrypt.

M	crypt-gpgme.c
M	crypt.c
M	cryptglue.c
M	handler.c
M	mutt.h

2019-07-25 19:12:32 -0700  Kevin McCarthy  <kevin@8t8.us> (d0a56a14)

        * Slightly improve the gossip header key update.
        
        Don't set an empty peer.gossip_keydata with a value that matches the
        current peer.keydata.  This just wastes space.

M	autocrypt/autocrypt.c

2019-07-24 18:59:07 -0700  Kevin McCarthy  <kevin@8t8.us> (78d028d7)

        * Fix process_gossip_headers() to look at the right envelope.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	commands.c

2019-07-21 15:15:06 -0700  Kevin McCarthy  <kevin@8t8.us> (963fc1ba)

        * Autocrypt outgoing emails.
        
        Change crypt_get_keys() to query autocrypt.
        
        When oppenc_mode is set, we still query the original keyring
        regardless, because the compose menu can still run oppenc even if
        autocrypt is on.
        
        Since mutt_autocrypt_ui_recommendation() checks each key as part of
        making the recommendation, add a keylist parameter and use that
        function.
        
        Add gpgme changes to use the autocrypt context for encryption.
        
        Postpone work:
        * Change mutt_protect() to have a postpone parameter.  Remove the
          manual toggling of the SIGN bit outside the call when postponing.
        
        * Since autocrypt doesn't set the SIGN bit, this allows us to turn off
          signing inside mutt_protect() for both normal and autocrypt mode.
        
        * Set the autocrypt postpone key in AutocryptDefaultKey.
        
        Write autocrypt and gossip headers in outgoing emails.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	compose.c
M	crypt-gpgme.c
M	crypt.c
M	cryptglue.c
M	globals.h
M	mutt.h
M	mutt_crypt.h
M	postpone.c
M	send.c
M	sendlib.c

2019-07-19 12:54:32 -0700  Kevin McCarthy  <kevin@8t8.us> (959628d0)

        * Add autocrypt line to the compose menu.
        
        Remove the hardcoded HDR_ATTACH offset calcuation, and add an explicit
        enum for the "-- Attachments" line to make loops and padding array
        sizes easier.
        
        Add security and recommendataion fields on the line.
        
        Add mutt_autocrypt_ui_recommendation, following the autocrypt spec
        guidelines.

M	OPS
M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	autocrypt/autocrypt_gpgme.c
M	autocrypt/autocrypt_private.h
M	compose.c
M	functions.h
M	mutt.h
M	mutt_crypt.h

2019-07-20 14:48:06 -0700  Kevin McCarthy  <kevin@8t8.us> (009b62c9)

        * Add another HEADER security bit for autocrypt.

M	mutt.h
M	mutt_crypt.h

2019-07-18 13:22:52 -0700  Kevin McCarthy  <kevin@8t8.us> (7c183407)

        * Change gossip header address comparison to use normalized addresses.

M	autocrypt/autocrypt.c

2019-07-18 13:19:47 -0700  Kevin McCarthy  <kevin@8t8.us> (8f0f0da2)

        * Change autocrypt_db normalization to return ADDRESS.
        
        This makes reusing the code in autocrypt.c easier.

M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_private.h

2019-07-15 18:36:57 -0700  Kevin McCarthy  <kevin@8t8.us> (a2a2e885)

        * Add gossip header processing.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_private.h
M	commands.c
M	mutt.h
M	muttlib.c
M	parse.c

2019-07-14 18:59:28 -0700  Kevin McCarthy  <kevin@8t8.us> (f0946c86)

        * Convert to use sqllite3_prepare_v3().
        
        The documentation suggests the SQLITE_PREPARE_PERSISTENT flag is
        helpful for long-lived prepared statements, and Mutt is using.

M	autocrypt/autocrypt_db.c

2019-07-11 18:45:45 -0700  Kevin McCarthy  <kevin@8t8.us> (c7d4b019)

        * Process autocrypt headers.
        
        Create/update peer database accounts and gpg keys based on the headers.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_gpgme.c
M	autocrypt/autocrypt_private.h
M	mutt.h
M	parse.c
M	protos.h

2019-07-11 18:06:56 -0700  Kevin McCarthy  <kevin@8t8.us> (7fd50ddd)

        * Add autocrypt header parsing to mutt_parse_rfc822_line().
        
        Convert parse_parameters() for autocrypt header usage:
        
          * change to use a BUFFER to accomodate large autocrypt keydata
            attribute values.
        
          * Autocrypt header parameters are not rfc2231 compliant.  Rather
            than rolling another very similar function, just change the
            existing one to allow space separation.

M	mutt.h
M	muttlib.c
M	parse.c
M	protos.h

2019-07-08 20:58:32 -0700  Kevin McCarthy  <kevin@8t8.us> (f92049e9)

        * Add initial autocrypt account setup.
        
        Generate gpg key and add account record to the database.

M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
M	autocrypt/autocrypt_db.c
M	autocrypt/autocrypt_gpgme.c
M	autocrypt/autocrypt_private.h
M	main.c

2019-07-08 15:23:44 -0700  Kevin McCarthy  <kevin@8t8.us> (4586444c)

        * Factor out mutt_edit_address() in send.c.
        
        For reuse by autocrypt for address prompts.

M	protos.h
M	send.c

2019-07-07 14:37:52 -0700  Kevin McCarthy  <kevin@8t8.us> (715a50a8)

        * Start autocrypt gpgme.
        
        Add a basic init function.
        
        Bump up the required gpgme version to 1.8.0 if autocrypt is enabled.

M	autocrypt/Makefile.am
M	autocrypt/autocrypt.c
A	autocrypt/autocrypt_gpgme.c
M	autocrypt/autocrypt_private.h
M	configure.ac

2019-07-06 14:01:13 -0700  Kevin McCarthy  <kevin@8t8.us> (be89dc7b)

        * Add database and schema initialization.
        
        Add mutt_mkdir() library function supporting recursive mkdir.

M	autocrypt/Makefile.am
M	autocrypt/autocrypt.c
M	autocrypt/autocrypt.h
A	autocrypt/autocrypt_db.c
A	autocrypt/autocrypt_private.h
A	autocrypt/autocrypt_schema.c
M	lib.c
M	lib.h
M	main.c

2019-07-06 11:35:22 -0700  Kevin McCarthy  <kevin@8t8.us> (e9668902)

        * Add autocrypt config vars.

M	doc/makedoc-defs.h
M	globals.h
M	init.h
M	mutt.h

2019-07-03 19:51:09 -0700  Kevin McCarthy  <kevin@8t8.us> (1fe2980d)

        * Initial autoconf and makefile setup for autocrypt.

M	.gitignore
M	Makefile.am
A	autocrypt/Makefile.am
A	autocrypt/autocrypt.c
A	autocrypt/autocrypt.h
M	check_sec.sh
M	configure.ac
M	main.c

2019-07-28 10:13:22 -0700  Kevin McCarthy  <kevin@8t8.us> (6f1e5196)

        * Add a comment to the OPTIGNOREMACROEVENTS km_dokey() change.
        
        The option was added in commit 53900afa, and its actual purpose was
        to separate out an "unget" event buffer from the "macro" buffer, to
        solve a problem with certificate prompts.
        
        The safest approach in a low-level function like km_dokey() was to
        return an error if new macros were generated when the option is set.
        However, this results in an unbuffered username/password prompt being
        aborted.
        
        Currently the only users of unbuffered input are the SSL certificate
        prompts, which use menu->dialog mode (and thus mutt_getch() directly)
        and username/password prompts.  So the only affected cases are
        editor-menu prompts, and returning the pressed keys is likely less
        surprising than aborting the prompt.
        
        If other unbuffered menus are created in the future, we may want to
        add a check for which menu mode is being used.

M	keymap.c

2019-07-26 13:54:12 +0200  Oneric  <Nyff@protonmail.ch> (a173719c)

        * Change OPTIGNOREMACROEVENTS to actuallly ignore macros instead of throwing errors on macros

M	keymap.c

2019-07-25 18:23:38 -0700  Kevin McCarthy  <kevin@8t8.us> (6d4107c8)

        * Merge branch 'stable'

2019-07-05 08:44:21 -0700  Andrew Marks  <amarks@red.ridge.amrx.net> (53d5550b)

        * Added * option to unattachments command
        
        The * option clears all previous attachments settings. A
        list_free_generic method is added to muttlib to enable generic freeing
        of specific LIST structures. free_attachments_data is used with
        list_free_generic to clear four LISTs which manage allowed and excluded
        inline and attached "attachments"
        
        refs #1

M	doc/manual.xml.head
M	init.c
M	mutt.h
M	muttlib.c

2019-07-18 16:16:15 -0400  Drew DeVault  <sir@cmpwn.com> (70d879c4)

        * Add builds.sr.ht CI manifests
        
        For Alpine Linux (musl libc), Debian (glibc), and FreeBSD.

A	.builds/alpine.yml
A	.builds/debian.yml
A	.builds/freebsd.yml

2019-07-18 13:44:19 -0700  Kevin McCarthy  <kevin@8t8.us> (ba7116d4)

        * Fix a reference to HeaderCachePageSize.
        
        Commit 4c728278 converted the config far to type DT_LNUM, but
        embarrassingly I missed a usage.

M	hcache.c

2019-07-13 21:49:05 -0400  Daniel Kahn Gillmor  <dkg@fifthhorseman.net> (82973a6e)

        * Omit User-Agent: header by default
        
        The User-Agent: header can be fun and interesting and useful for
        debugging, but it also leaks quite a bit of information about the user
        and their software stack.
        
        This represents a potential security risk (attackers can target the
        particular stack) and also an anonymity risk (a user trying to
        preserve their anonymity by sending mail from a non-associated account
        might reveal quite a lot of information if their choice of mail user
        agent is exposed).
        
        Users who want to configure `user_agent` to `yes` can still do so, but
        it makes sense to have safer defaults.
        
        Closes: #159

M	init.h

2019-06-28 13:00:57 -0700  Kevin McCarthy  <kevin@8t8.us> (7f8642d4)

        * Merge branch 'stable'

2019-06-27 15:35:12 -0700  Kevin McCarthy  <kevin@8t8.us> (8768e10f)

        * Remove unnecessary "" checks for DT_STR and DT_PATH MuttVars.
        
        MuttVars of those types are set via safe_strdup(), which returns NULL
        if the original is "".  Thus Var implies *Var.
        
        A good portion of the code relies on that axiom, but over the years
        some (Var && *Var) checks have crept in, including from me.
        
        This was partially because of the INITVAL("") that were in the code,
        which implied (incorrectly) the initial value could be "".  Commit
        2f91d43e removed those to make it more clear.
        
        This commit removes the *Var checks to make it even clearer, and help
        avoid them creeping back in again.

M	alias.c
M	bcache.c
M	charset.c
M	commands.c
M	compose.c
M	crypt-gpgme.c
M	crypt.c
M	curs_main.c
M	handler.c
M	hcache.c
M	hook.c
M	imap/auth.c
M	imap/auth_oauth.c
M	init.c
M	mutt_socket.c
M	muttlib.c
M	parse.c
M	pgpinvoke.c
M	pop_auth.c
M	rfc1524.c
M	rfc2047.c
M	rfc2231.c
M	send.c
M	sendlib.c
M	smime.c
M	smtp.c

2019-06-27 11:06:19 -0700  Kevin McCarthy  <kevin@8t8.us> (4c728278)

        * Convert $header_cache_pagesize to type DT_LNUM.
        
        Prior to commit 4bc76c2f there was no LNUM type, and so the workaround
        was to store it as a string, converting in the hcache_open_gdbm()
        call.
        
        This will not affect the user interface or config file, because DT_NUM
        and DT_LNUM read in a string from the config file and convert to a
        number.  Quotes are used for escaping style, not passed through to the
        variable setter.
        
        So essentially this simply moves the conversion to parse_set(), and
        provides feedback for a non-numeric type immediately.

M	globals.h
M	hcache.c
M	init.h

2019-06-25 14:25:33 -0700  Kevin McCarthy  <kevin@8t8.us> (793e0fc2)

        * Convert Commands to use the union pointer_long_t too.
        
        As with MuttVars, Commands was using an unsigned long to hold pointers
        as well as enums.  Convert to use the same union type of MuttVars.
        
        Adjust command functions data parameter type to the union.  Since
        these are used outside init.c, relocate the union definition to
        mutt.h.
        
        Although the number of functions affected was long, most of them did
        not need much adjustment.  Many of them made no use of the parameter.
        Those that did were easily cast into an added "data" variable at the
        top.

M	buffy.c
M	color.c
M	hook.c
M	init.c
M	init.h
M	keymap.c
M	mutt.h
M	protos.h
M	score.c

2019-06-24 19:41:30 -0700  Kevin McCarthy  <kevin@8t8.us> (0d53c86e)

        * Fix the makedoc program to cope with the new MuttVars format.
        
        Add '=' to token delimiter, to make the parsing more robust if
        someone decides to add spaces between a designator and value.

M	doc/makedoc.c

2019-06-24 18:07:54 -0700  Kevin McCarthy  <kevin@8t8.us> (5bf53035)

        * Convert MuttVars.data and .init to use a union type.
        
        They were using an "unsigned long" and casting to a pointer when
        needed.  Obviously this has "worked" for a long time, but it's not
        correct to assume a pointer can fit in unsigned long.
        
        Replace with a union contain "void *p" and "long l".  Fortunately, the
        only parts making direct use of MuttVars are in init.h and init.c, so
        we just need to update those manipulation functions.
        
        In general I don't like single letter variables, but brevity is worth
        it in this case.

M	init.c
M	init.h

2019-06-23 02:05:43 +0200  Vincent Lefevre  <vincent@vinc17.net> (6a74e24e)

        * Detail the documentation of %l for index_format.

M	init.h

2019-06-22 16:13:46 -0700  Kevin McCarthy  <kevin@8t8.us> (5e49cbf2)

        * Add NULL checks to rfc1524_free_entry().
        
        The existing code was fine, but make it robust like other free
        functions in mutt, so the behavior isn't surprising.

M	attach.c
M	rfc1524.c

2019-06-22 16:01:19 -0700  Kevin McCarthy  <kevin@8t8.us> (aea4a689)

        * Clean up mutt_print_attachment() cleanup.
        
        Check if mutt_save_attachment() fails and abort the print in that
        case.

M	attach.c

2019-06-22 15:00:59 -0700  Kevin McCarthy  <kevin@8t8.us> (cf05da7b)

        * Merge branch 'stable'

2019-06-22 13:33:11 -0700  Kevin McCarthy  <kevin@8t8.us> (6b44b8e3)

        * Remove mutt_rfc1524_expand_filename() return value and checks.
        
        The return value was of dubious value.  It returned 0 only for the
        case that a nametemplate was specified and it already matched the
        supplied oldfile.
        
        However, just because the nametemplate matched does not mean
        attachment handling in send-mode should skip the mutt_adv_mktemp()
        conversion, which includes a call to mutt_sanitize_filename().  We
        didn't do so if *no* nametemplate was supplied.
        
        Remove the return value from the function, and remove the checks and
        "special handing" in attach.c calls.

M	attach.c
M	rfc1524.c
M	rfc1524.h

2019-06-22 12:54:40 -0700  Kevin McCarthy  <kevin@8t8.us> (03f6a9cb)

        * Remove unnecessary strcmp for mutt_view_attachment().
        
        mutt_rfc1524_expand_filename() runs the result through
        mutt_adv_mktemp(), which will sanitize and relocate the filename under
        $tmpdir.  The strcmp() is unneeded and distracting to the program
        logic; none of the other routines perform or need this check.

M	attach.c

2019-06-22 12:39:50 -0700  Kevin McCarthy  <kevin@8t8.us> (a3d38b9e)

        * Merge branch 'stable'

2019-06-22 10:25:04 -0700  Kevin McCarthy  <kevin@8t8.us> (2f44aa05)

        * Merge branch 'stable'

2019-06-21 13:40:52 -0700  Kevin McCarthy  <kevin@8t8.us> (05d31caa)

        * Remove NULL and 0 INITVAL declarataions.
        
        The C standard says static storage duration variables will be
        initialized to NULL/0.

M	buffy.h
M	globals.h
M	lib.h
M	monitor.h

2019-06-21 13:36:09 -0700  Kevin McCarthy  <kevin@8t8.us> (6c01b284)

        * Combine DT_STR and DT_PATH in mutt_set_default().
        
        19 years ago, they briefly performed different things, but the
        mutt_pretty_mailbox() has been commented out since then.

M	init.c

2019-06-21 13:28:11 -0700  Kevin McCarthy  <kevin@8t8.us> (2f91d43e)

        * Remove UL "" initialization from init.h.
        
        mutt_init() calls mutt_set_default() followed by
        mutt_restore_default().  The mutt_restore_default() calls
        mutt_str_replace(), which translates "" into 0.
        
        Therefore assigning "" to the option->init field simply wastes space
        and (incorrectly) implies the option->data will be non-NULL by default.

M	init.h

2019-06-15 09:15:25 -0700  Kevin McCarthy  <kevin@8t8.us> (078654a4)

        * Merge branch 'stable'

2019-06-13 18:29:29 -0700  Kevin McCarthy  <kevin@8t8.us> (a621eaed)

        * Merge branch 'stable'

2019-06-13 17:58:56 -0700  Kevin McCarthy  <kevin@8t8.us> (ea3999ba)

        * Merge branch 'stable'

2019-06-10 14:51:50 -0700  Kevin McCarthy  <kevin@8t8.us> (ab457327)

        * Allow imap_cmd_finish() to both expunge and fetch new mail.
        
        Since commit dd327606 changed check_status setting to use bit
        operators, and imap_check_mailbox() can call imap_cmd_finish() twice,
        there is no reason to delay the processing of new mail until a second
        call.
        
        imap_read_headers() deals with msn_end < msg_begin, so remove
        the (count > idata->max_msn) check.  This will allow the reopen flag
        to be reset if somehow it's not the case.

M	imap/command.c

2019-06-09 11:12:23 -0700  Kevin McCarthy  <kevin@8t8.us> (c64084e5)

        * Merge branch 'stable'

2019-06-07 14:20:02 -0700  Kevin McCarthy  <kevin@8t8.us> (77c2a92a)

        * Merge branch 'stable'

2019-06-06 16:22:18 -0700  Kevin McCarthy  <kevin@8t8.us> (a8f9368f)

        * Merge branch 'stable'

2019-06-06 13:48:23 -0700  Kevin McCarthy  <kevin@8t8.us> (151c5711)

        * Merge branch 'stable'

2019-06-04 15:47:57 -0700  Kevin McCarthy  <kevin@8t8.us> (16bbafe6)

        * Check for GNU Make to allow version.h FORCE target.
        
        If we're using GNU Make, the FORCE target allows automatically
        updating the version number after each commit.
        
        See commit 22c6df82

M	Makefile.am
M	configure.ac

2019-06-05 14:28:20 -0700  Kevin McCarthy  <kevin@8t8.us> (cf94a879)

        * Merge branch 'stable'

2019-06-03 19:08:21 -0700  Kevin McCarthy  <kevin@8t8.us> (9bacbaa9)

        * Change --disable-doc to only skip manual generation.
        
        Instead of skipping the entire doc directory building, just skip the
        manual.html, manual.txt, and mutt.info generation.
        
        Generate and install the other files in the doc directory, which don't
        have the same involved dependencies as the DocBook generated files.

M	Makefile.am
M	doc/Makefile.am

2019-05-31 09:41:53 -0700  Kevin McCarthy  <kevin@8t8.us> (84124dd3)

        * Merge branch 'stable'

2019-05-30 09:29:35 -0700  Kevin McCarthy  <kevin@8t8.us> (ee0aebab)

        * Merge branch 'stable'

2019-05-28 09:38:38 -0700  Kevin McCarthy  <kevin@8t8.us> (79dd54c4)

        * Remove EXTRACT_MACROS check from EXTRACT_NUMBER in regex.
        
        Commit 367b1135 converted EXTRACT_NUMBER to always call a function, to
        enable the use of parameter types and local variables.  In doing this
        it removed the separate DEBUG implementation.
        
        The EXTRACT_MACROS check was accidentally left in, but no longer makes
        sense outside of the DEBUG.

M	regex.c

2019-05-27 19:45:58 -0700  Kevin McCarthy  <kevin@8t8.us> (b4b47e1c)

        * Rename --with-regex to --with-bundled-regex.
        
        This makes the configuration option purpose clearer.  Previously,
        some distros enabled the option thinking it turned on a "regex" option
        that should be enabled.
        
        Closes #89.

M	configure.ac

2019-05-27 19:36:34 -0700  Kevin McCarthy  <kevin@8t8.us> (367b1135)

        * Remove undefined left-shift on negative value from regex.c.
        
        Replace with a bitwise-or of the byte 1, byte 22, and a mask to extend
        the sign bit.
        
        Change the dest parameter type to unsigned int just to make sure the
        compiler doesn't do anything tricky or get offended somehow.
        
        See #89.

M	regex.c

2019-05-26 16:03:40 -0700  Kevin McCarthy  <kevin@8t8.us> (cd30526c)

        * Change mutt_addr_is_user() to no for a NULL address.
        
        See ticket #140.
        
        The behavior is generating a false 'F' flag for a spam message with an
        unparsable From address.
        
        After reviewing the callers, I can't see a reason returning 'yes' in
        this case.
        
        Commit 690c2945 fixed a potential segv issue, but the other callers
        seem robust against this change in behavior.

M	alias.c

2019-05-26 14:34:42 -0700  Kevin McCarthy  <kevin@8t8.us> (c186d379)

        * Turn on $ssl_force_tls by default.
        
        Ticket #135 suggests that these days, it's better to force encryption
        over all connections.  RFC8314 is recommending MUA's move in that
        direction (actually even directing towards implicit TLS over
        STARTTLS).
        
        I'm enabling this at the beginning of the 1.13 development cycle to
        give others time to chime in with any objections.  Personally, I've
        had this option set myself for years.  The only place it could become
        an issue is for a localhost IMAP server with no cert.  In that case,
        it's easy enough to have an account hook unset if needed, and I think
        a better idea that the user be forced to turn it off.

M	init.h

2019-05-26 18:52:47 +0200  Sebastian Stark  <sstark@mailbox.org> (035bd727)

        * make OP_HALF_{UP,DOWN} behave symmetric.
        
          - the calculation of number of lines to scroll up/down should not
          depend on whether the number of rows in the pager/index/terminal is
          odd or even.
          - this patch will make the behaviour symmetric such that in both cases
          (even/odd number of rows) scrolling up and down by half a page (or the
          other way round) will get you back to the exact same line as before.

M	pager.c
2019-09-21 12:27:57 -0700  Kevin McCarthy  <kevin@8t8.us> (6931c1ad)

        * Update UPDATING file for 1.12.2 release.

M VERSION => VERSION +1 -1
@@ 1,1 1,1 @@
1.12.2
1.13.0

M po/bg.po => po/bg.po +1694 -1207
@@ 9,7 9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Mutt 1.5.5.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-05-25 09:15-0700\n"
"POT-Creation-Date: 2019-11-30 10:17-0800\n"
"PO-Revision-Date: 2018-01-16 23:47+0100\n"
"Last-Translator: Velko Hristov <hristov@informatik.hu-berlin.de>\n"
"Language-Team: \n"


@@ 45,16 45,16 @@ msgstr ""
msgid "mutt_account_getoauthbearer: Command returned empty string"
msgstr ""

#: addrbook.c:37 browser.c:46 history.c:75 pager.c:1574 postpone.c:41
#: query.c:48 recvattach.c:58
#: addrbook.c:37 autocrypt/autocrypt_acct_menu.c:39 browser.c:46 history.c:75
#: pager.c:1574 postpone.c:42 query.c:48 recvattach.c:58
msgid "Exit"
msgstr "�����"

#: addrbook.c:38 curs_main.c:539 pager.c:1581 postpone.c:42
#: addrbook.c:38 curs_main.c:543 pager.c:1581 postpone.c:43
msgid "Del"
msgstr "����."

#: addrbook.c:39 curs_main.c:540 postpone.c:43
#: addrbook.c:39 curs_main.c:544 postpone.c:44
msgid "Undel"
msgstr "�����."



@@ 62,9 62,10 @@ msgstr "
msgid "Select"
msgstr "�����"

#: addrbook.c:41 browser.c:49 compose.c:126 crypt-gpgme.c:4449 curs_main.c:545
#: history.c:78 mutt_ssl.c:1290 mutt_ssl_gnutls.c:1013 pager.c:1979
#: pgpkey.c:522 postpone.c:44 query.c:53 recvattach.c:62 smime.c:453
#: addrbook.c:41 autocrypt/autocrypt_acct_menu.c:62 browser.c:49 compose.c:142
#: crypt-gpgme.c:4535 curs_main.c:549 history.c:78 mutt_ssl.c:1323
#: mutt_ssl_gnutls.c:1033 pager.c:1979 pgpkey.c:523 postpone.c:45 query.c:53
#: recvattach.c:62 smime.c:453
msgid "Help"
msgstr "�����"



@@ 94,7 95,7 @@ msgstr ""
msgid "Address: "
msgstr "�����:"

#: alias.c:307 send.c:210
#: alias.c:307 send.c:216
#, c-format
msgid "Error: '%s' is a bad IDN."
msgstr "������: '%s' � ��������� IDN."


@@ 108,8 109,8 @@ msgstr "
msgid "[%s = %s] Accept?"
msgstr "[%s = %s] �����?"

#: alias.c:348 recvattach.c:437 recvattach.c:463 recvattach.c:476
#: recvattach.c:489 recvattach.c:524
#: alias.c:348 recvattach.c:449 recvattach.c:472 recvattach.c:486
#: recvattach.c:501 recvattach.c:541
msgid "Save to file: "
msgstr "����� ��� ����:"



@@ 127,95 128,390 @@ msgstr "
msgid "Error seeking in alias file"
msgstr "������ ��� ����������� �� �����"

#: attach.c:122 attach.c:257 attach.c:421 attach.c:958
#: attach.c:122 attach.c:255 attach.c:417 attach.c:949
msgid "Can't match nametemplate, continue?"
msgstr "���� ������ � ���� ���. ������� �� �� ����������?"

#: attach.c:134
#: attach.c:132
#, c-format
msgid "Mailcap compose entry requires %%s"
msgstr "������� \"compose\" � mailcap ������� %%s"

#: attach.c:142 attach.c:277 commands.c:304 compose.c:1382 compress.c:412
#: curs_lib.c:271 curs_lib.c:950 sendlib.c:1384
#: attach.c:140 attach.c:273 commands.c:326 compose.c:1617 compress.c:414
#: curs_lib.c:297 curs_lib.c:980 sendlib.c:1424 sendlib.c:1462 sendlib.c:1525
#, c-format
msgid "Error running \"%s\"!"
msgstr "������ ��� ������������ �� \"%s\"!"

#: attach.c:151
#: attach.c:149
msgid "Failure to open file to parse headers."
msgstr "������ ��� �������� �� ����� �� ������ �� ���������� ����������."

#: attach.c:183
#: attach.c:181
msgid "Failure to open file to strip headers."
msgstr "������ ��� �������� �� ����� �� ��������� �� �������� ����������."

#: attach.c:192
#: attach.c:190
#, fuzzy
msgid "Failure to rename file."
msgstr "������ ��� �������� �� ����� �� ������ �� ���������� ����������."

#: attach.c:204
#: attach.c:202
#, c-format
msgid "No mailcap compose entry for %s, creating empty file."
msgstr "� mailcap ������ ����� \"compose\" �� %s. ��������� �� ������ ����."

#: attach.c:269
#: attach.c:265
#, c-format
msgid "Mailcap Edit entry requires %%s"
msgstr "������� \"edit\" � mailcap ������� %%s"

#: attach.c:290
#: attach.c:286
#, c-format
msgid "No mailcap edit entry for %s"
msgstr "� mailcap ������ ����� \"edit\" �� %s"

#: attach.c:387
#: attach.c:383
msgid "No matching mailcap entry found.  Viewing as text."
msgstr ""
"�� � �������� ��������� mailcap ��������. ������������ � �������� ���� �����."

#: attach.c:400
#: attach.c:396
msgid "MIME type not defined.  Cannot view attachment."
msgstr "����������� MIME ���. ������������ �� ���� �� ���� ��������."

#: attach.c:490
#: attach.c:481
msgid "Cannot create filter"
msgstr "�������� �� ���� �� ���� ��������"

#: attach.c:498
#: attach.c:489
#, c-format
msgid "---Command: %-20.20s Description: %s"
msgstr ""

#: attach.c:502
#: attach.c:493
#, c-format
msgid "---Command: %-30.30s Attachment: %s"
msgstr ""

#: attach.c:585
#: attach.c:576
#, fuzzy, c-format
msgid "---Attachment: %s: %s"
msgstr "-- ����������"

#: attach.c:588
#: attach.c:579
#, fuzzy, c-format
msgid "---Attachment: %s"
msgstr "-- ����������"

#: attach.c:663 attach.c:695 attach.c:991 attach.c:1049 handler.c:1369
#: pgpkey.c:572 pgpkey.c:760
#: attach.c:653 attach.c:685 attach.c:979 attach.c:1038 handler.c:1370
#: pgpkey.c:575 pgpkey.c:761
msgid "Can't create filter"
msgstr "������ ��� ����������� �� ������"

#: attach.c:829
#: attach.c:819
msgid "Write fault!"
msgstr "������ ��� �����!"

#: attach.c:1071
#: attach.c:1060
msgid "I don't know how to print that!"
msgstr "���������� �����������!"

#. L10N:
#. %s is a directory.  Mutt is looking for a directory it needs
#. for some reason (e.g. autocrypt, header cache, bcache), but it
#. doesn't exist.  The prompt is asking whether to create the directory
#.
#: autocrypt/autocrypt.c:55 main.c:946
#, c-format
msgid "%s does not exist. Create it?"
msgstr "%s �� ����������. �� ���� �� ��������?"

#. L10N:
#. mkdir() on the directory %s failed.  The second %s is the
#. error message returned by libc
#.
#: autocrypt/autocrypt.c:64 main.c:950
#, c-format
msgid "Can't create %s: %s."
msgstr "������ ��� ��������� �� %s: %s."

#. L10N:
#. The first time mutt is started with $autocrypt set, it will
#. create $autocrypt_dir and then prompt to create an autocrypt
#. account with this message.
#.
#: autocrypt/autocrypt.c:126
msgid "Create an initial autocrypt account?"
msgstr ""

#. L10N:
#. Autocrypt is asking for the email address to use for the
#. autocrypt account.  This will generate a key and add a record
#. to the database for use in autocrypt operations.
#.
#: autocrypt/autocrypt.c:148
msgid "Autocrypt account address: "
msgstr ""

#. L10N:
#. Autocrypt prompts for an account email address, and requires
#. a single address.  This is shown if they entered something invalid,
#. nothing, or more than one address for some reason.
#.
#: autocrypt/autocrypt.c:157
msgid "Please enter a single email address"
msgstr ""

#. L10N:
#. When creating an autocrypt account, this message will be displayed
#. if there is already an account in the database with the email address
#. they just entered.
#.
#: autocrypt/autocrypt.c:174
msgid "That email address already has an autocrypt account"
msgstr ""

#. L10N:
#. Autocrypt has a setting "prefer-encrypt".
#. When the recommendation algorithm returns "available" and BOTH
#. sender and recipient choose "prefer-encrypt", encryption will be
#. automatically enabled.
#. Otherwise the UI will show encryption is "available" but the user
#. will be required to enable encryption manually.
#.
#: autocrypt/autocrypt.c:190
#, fuzzy
msgid "Prefer encryption?"
msgstr "���������"

#. L10N:
#. Error message displayed if creating an autocrypt account failed
#. or was aborted by the user.
#.
#: autocrypt/autocrypt.c:205
msgid "Autocrypt account creation aborted."
msgstr ""

#. L10N:
#. Message displayed after an autocrypt account is successfully created.
#.
#: autocrypt/autocrypt.c:210
msgid "Autocrypt account creation succeeded"
msgstr ""

#. L10N:
#. %s is an email address.  Autocrypt is scanning for the keyids
#. to use to encrypt, but it can't find a valid keyid for this address.
#. The message is printed and they are returned to the compose menu.
#.
#: autocrypt/autocrypt.c:554 autocrypt/autocrypt.c:582
#, fuzzy, c-format
msgid "No (valid) autocrypt key found for %s."
msgstr "�� � ������� (�������) ���������� �� %s."

#. L10N:
#. The first time autocrypt is enabled, Mutt will ask to scan
#. through one or more mailboxes for Autocrypt: headers.
#. Those headers are then captured in the database as peer records
#. and used for encryption.
#. If this is answered yes, they will be prompted for a mailbox.
#.
#: autocrypt/autocrypt.c:824
msgid "Scan a mailbox for autocrypt headers?"
msgstr ""

#. L10N:
#. The prompt for a mailbox to scan for Autocrypt: headers
#.
#: autocrypt/autocrypt.c:831
#, fuzzy
msgid "Scan mailbox"
msgstr "�������� �� �������� �����"

#. L10N:
#. This is the second prompt to see if the user would like
#. to scan more than one mailbox for Autocrypt headers.
#. I'm purposely being extra verbose; asking first then prompting
#. for a mailbox.  This is because this is a one-time operation
#. and I don't want them to accidentally ctrl-g and abort it.
#.
#: autocrypt/autocrypt.c:853
msgid "Scan another mailbox for autocrypt headers?"
msgstr ""

#. L10N: Autocrypt Account Menu Help line:
#. create new account
#.
#: autocrypt/autocrypt_acct_menu.c:43
#, fuzzy
msgid "Create"
msgstr "������� �� �� ��������� %s?"

#. L10N: Autocrypt Account Menu Help line:
#. delete account
#.
#: autocrypt/autocrypt_acct_menu.c:47 remailer.c:488
msgid "Delete"
msgstr "���������"

#. L10N: Autocrypt Account Menu Help line:
#. toggle an account active/inactive
#. The words here are abbreviated to keep the help line compact.
#. It currently has the content:
#. q:Exit  c:Create  D:Delete  a:Tgl Active  p:Prf Encr  ?:Help
#.
#: autocrypt/autocrypt_acct_menu.c:54
msgid "Tgl Active"
msgstr ""

#. L10N: Autocrypt Account Menu Help line:
#. toggle "prefer-encrypt" on an account
#. The words here are abbreviated to keep the help line compact.
#. It currently has the content:
#. q:Exit  c:Create  D:Delete  a:Tgl Active  p:Prf Encr  ?:Help
#.
#: autocrypt/autocrypt_acct_menu.c:61
msgid "Prf Encr"
msgstr ""

#. L10N:
#. Autocrypt Account menu.
#. flag that an account has prefer-encrypt set
#.
#: autocrypt/autocrypt_acct_menu.c:93
msgid "prefer encrypt"
msgstr ""

#. L10N:
#. Autocrypt Account menu.
#. flag that an account has prefer-encrypt unset;
#. thus encryption will need to be manually enabled.
#.
#: autocrypt/autocrypt_acct_menu.c:100
msgid "manual encrypt"
msgstr ""

#. L10N:
#. Autocrypt Account menu.
#. flag that an account is enabled/active
#.
#: autocrypt/autocrypt_acct_menu.c:108
msgid "active"
msgstr ""

#. L10N:
#. Autocrypt Account menu.
#. flag that an account is disabled/inactive
#.
#: autocrypt/autocrypt_acct_menu.c:114
msgid "inactive"
msgstr ""

#. L10N:
#. Autocrypt Account Management Menu title
#.
#: autocrypt/autocrypt_acct_menu.c:147
msgid "Autocrypt Accounts"
msgstr ""

#. L10N:
#. This error message is displayed if a database update of an
#. account record fails for some odd reason.
#.
#: autocrypt/autocrypt_acct_menu.c:203 autocrypt/autocrypt_acct_menu.c:213
msgid "Error updating account record"
msgstr ""

#. L10N:
#. Confirmation message when deleting an autocrypt account
#.
#: autocrypt/autocrypt_acct_menu.c:258
#, fuzzy, c-format
msgid "Really delete account \"%s\"?"
msgstr "������������ �� ������� �� �������� ���������� ����� \"%s\"?"

#. L10N:
#. %s is the path to the database.  For some reason sqlite3 failed
#. to open that database file.
#.
#. L10N:
#. Error message if autocrypt couldn't open the sqlite database
#. for some reason.  The %s is the full path of the database file.
#.
#: autocrypt/autocrypt_db.c:50 autocrypt/autocrypt_db.c:93
#, fuzzy, c-format
msgid "Unable to open autocrypt database %s"
msgstr "������ ��� ���������� �� ���������� �����!"

#: autocrypt/autocrypt_gpgme.c:41 crypt-gpgme.c:576
#, fuzzy, c-format
msgid "error creating gpgme context: %s\n"
msgstr "������ � ������� ���: %s"

#. L10N:
#. Message displayed just before a GPG key is generated for a created
#. autocrypt account.
#.
#: autocrypt/autocrypt_gpgme.c:136
msgid "Generating autocrypt key..."
msgstr ""

#. L10N:
#. GPGME was unable to generate a key for some reason.
#. %s is the error message returned by GPGME.
#.
#: autocrypt/autocrypt_gpgme.c:148 autocrypt/autocrypt_gpgme.c:169
#, fuzzy, c-format
msgid "Error creating autocrypt key: %s\n"
msgstr "������ � ������� ���: %s"

#. L10N:
#. After selecting a key for an autocrypt account,
#. this is displayed if the key was revoked/expired/disabled/invalid
#. or can't be used for both signing and encryption.
#. %s is the key fingerprint.
#.
#: autocrypt/autocrypt_gpgme.c:213
#, c-format
msgid "The key %s is not usable for autocrypt"
msgstr ""

#. L10N:
#. During autocrypt account creation, this prompt asks the
#. user whether they want to create a new GPG key for the account,
#. or select an existing account from the keyring.
#.
#: autocrypt/autocrypt_gpgme.c:241
msgid "(c)reate new, or (s)elect existing GPG key? "
msgstr ""

#. L10N:
#. The letters corresponding to the
#. "(c)reate new, or (s)elect existing GPG key?" prompt.
#.
#: autocrypt/autocrypt_gpgme.c:246
msgid "cs"
msgstr ""

#. L10N:
#. During autocrypt account creation, if selecting an existing key fails
#. for some reason, we prompt to see if they want to create a key instead.
#.
#: autocrypt/autocrypt_gpgme.c:260
msgid "Create a new gpg key for this account, instead?"
msgstr ""

#. L10N:
#. The autocrypt database keeps track of schema version numbers.
#. This error occurs if the version number is too high.
#. Presumably because this is an old version of mutt and the
#. database was upgraded by a future version.
#.
#: autocrypt/autocrypt_schema.c:116
msgid "Autocrypt database version is too new"
msgstr ""

#: browser.c:47
msgid "Chdir"
msgstr "����������"


@@ 224,83 520,83 @@ msgstr "
msgid "Mask"
msgstr "�����"

#: browser.c:473 browser.c:958 browser.c:1188
#: browser.c:461 browser.c:966 browser.c:1179
#, c-format
msgid "%s is not a directory."
msgstr "%s �� � ����������."

#: browser.c:634
#: browser.c:639
#, c-format
msgid "Mailboxes [%d]"
msgstr "�������� ����� [%d]"

#: browser.c:641
#: browser.c:646
#, c-format
msgid "Subscribed [%s], File mask: %s"
msgstr "�������� [%s], ������� �����: %s"

#: browser.c:645
#: browser.c:650
#, c-format
msgid "Directory [%s], File mask: %s"
msgstr "���������� [%s], ������� �����: %s"

#: browser.c:660
#: browser.c:667
msgid "Can't attach a directory!"
msgstr "�� ���� �� ��������� ����������!"

#: browser.c:829 browser.c:1258 browser.c:1363
#: browser.c:846 browser.c:1247 browser.c:1354
msgid "No files match the file mask"
msgstr "���� �������, ���������� �� �������"

#: browser.c:1037
#: browser.c:1027
msgid "Create is only supported for IMAP mailboxes"
msgstr "���� IMAP �������� ����� ����� �� ����� ���������"

#: browser.c:1060
#: browser.c:1050
#, fuzzy
msgid "Rename is only supported for IMAP mailboxes"
msgstr "���� IMAP �������� ����� ����� �� ����� ���������"

#: browser.c:1082
#: browser.c:1072
msgid "Delete is only supported for IMAP mailboxes"
msgstr "���� IMAP �������� ����� ����� �� ����� ���������"

#: browser.c:1092
#: browser.c:1082
#, fuzzy
msgid "Cannot delete root folder"
msgstr "�������� �� ���� �� ���� ��������"

#: browser.c:1095
#: browser.c:1085
#, c-format
msgid "Really delete mailbox \"%s\"?"
msgstr "������������ �� ������� �� �������� ���������� ����� \"%s\"?"

#: browser.c:1111
#: browser.c:1101
msgid "Mailbox deleted."
msgstr "���������� ����� � �������."

#: browser.c:1115
#: browser.c:1106
#, fuzzy
msgid "Mailbox deletion failed."
msgstr "���������� ����� � �������."

#: browser.c:1118
#: browser.c:1109
msgid "Mailbox not deleted."
msgstr "���������� ����� �� � �������."

#: browser.c:1138
#: browser.c:1130
msgid "Chdir to: "
msgstr "����� �� ������������: "

#: browser.c:1177 browser.c:1252
#: browser.c:1168 browser.c:1241
msgid "Error scanning directory."
msgstr "������ ��� ������ �� ������������."

#: browser.c:1200
#: browser.c:1191
msgid "File Mask: "
msgstr "������� �����: "

#: browser.c:1273
#: browser.c:1262
#, fuzzy
msgid ""
"Reverse sort by (d)ate, (a)lpha, si(z)e, (c)ount, (u)nread, or do(n)'t sort? "


@@ 308,29 604,29 @@ msgstr ""
"������� ���������� �� ����(d), ������� ���(a), ������(z) ��� ��� "
"����������(n)?"

#: browser.c:1274
#: browser.c:1263
#, fuzzy
msgid "Sort by (d)ate, (a)lpha, si(z)e, (c)ount, (u)nread, or do(n)'t sort? "
msgstr ""
"���������� �� ����(d), ������� ���(a), ������(z) ��� ��� ����������(n)?"

#: browser.c:1275
#: browser.c:1264
msgid "dazcun"
msgstr ""

#: browser.c:1351
#: browser.c:1343
msgid "New file name: "
msgstr "���� ��� �� �����: "

#: browser.c:1380
#: browser.c:1371
msgid "Can't view a directory"
msgstr "������������ �� ���� �� ���� ��������"

#: browser.c:1396
#: browser.c:1386
msgid "Error trying to view file"
msgstr "������ ��� ����������� �� �����"

#: buffy.c:670
#: buffy.c:671
msgid "New mail in "
msgstr "���� ����� � "



@@ 344,177 640,177 @@ msgstr "%s: 
msgid "%s: no such color"
msgstr "%s: ���� ����� ����"

#: color.c:437 color.c:653 color.c:674 color.c:680
#: color.c:435 color.c:651 color.c:672 color.c:678
#, c-format
msgid "%s: no such object"
msgstr "%s: ���� ����� �����"

#: color.c:453
#: color.c:451
#, fuzzy, c-format
msgid "%s: command valid only for index, body, header objects"
msgstr "%s: ��������� � ������� ���� �� �������� �����"

#: color.c:461
#: color.c:459
#, c-format
msgid "%s: too few arguments"
msgstr "%s: ������������ ���������"

#: color.c:641 color.c:666
#: color.c:639 color.c:664
msgid "Missing arguments."
msgstr "�������� ���������."

#: color.c:698 color.c:726
#: color.c:696 color.c:724
msgid "color: too few arguments"
msgstr "color: ������������ ���������"

#: color.c:749
#: color.c:747
msgid "mono: too few arguments"
msgstr "mono: ������������ ���������"

#: color.c:769
#: color.c:767
#, c-format
msgid "%s: no such attribute"
msgstr "%s: ���� ����� �������"

#: color.c:809 hook.c:74 hook.c:82 hook.c:324 init.c:2003 init.c:2078
#: keymap.c:959
#: color.c:807 hook.c:74 hook.c:82 hook.c:317 init.c:2030 init.c:2105
#: keymap.c:973
msgid "too few arguments"
msgstr "������������ ���������"

#: color.c:818 hook.c:88 hook.c:331
#: color.c:816 hook.c:88 hook.c:324
msgid "too many arguments"
msgstr "������ ����� ���������"

#: color.c:834
#: color.c:832
msgid "default colors not supported"
msgstr "������������ ������� �� �� ���������"

#. L10N: Used for the $crypt_verify_sig prompt
#: commands.c:168
#: commands.c:184
#, fuzzy
msgid "Verify signature?"
msgstr "������� �� �� ���������� ����������� �� PGP-�������?"

#: commands.c:193 mbox.c:901
#: commands.c:210 mbox.c:902
msgid "Could not create temporary file!"
msgstr "���������� ����������� �� �������� ����!"

#: commands.c:206
#: commands.c:223
msgid "Cannot create display filter"
msgstr "�������� �� ���� �� ���� ��������"

#: commands.c:231
#: commands.c:250
msgid "Could not copy message"
msgstr "������� �� ���� �� ���� ��������."

#: commands.c:270
#: commands.c:289
msgid "S/MIME signature successfully verified."
msgstr "S/MIME-�������� � ��������� �������."

#: commands.c:272
#: commands.c:291
msgid "S/MIME certificate owner does not match sender."
msgstr "������������ �� S/MIME ����������� �� ������� � �������� �� �������."

#: commands.c:275 commands.c:286
#: commands.c:294 commands.c:305
msgid "Warning: Part of this message has not been signed."
msgstr ""

#: commands.c:277
#: commands.c:296
msgid "S/MIME signature could NOT be verified."
msgstr "S/MIME-�������� �� � ��������� �������."

#: commands.c:284
#: commands.c:303
msgid "PGP signature successfully verified."
msgstr "PGP-�������� � ��������� �������."

#: commands.c:288
#: commands.c:307
msgid "PGP signature could NOT be verified."
msgstr "PGP-�������� �� � ��������� �������."

#: commands.c:312
#: commands.c:336
msgid "Command: "
msgstr "�������: "

#: commands.c:337 commands.c:347 recvcmd.c:146 recvcmd.c:159
#: commands.c:363 commands.c:373 recvcmd.c:146 recvcmd.c:159
msgid "Warning: message contains no From: header"
msgstr ""

#: commands.c:355 recvcmd.c:169
#: commands.c:381 recvcmd.c:169
msgid "Bounce message to: "
msgstr "���������� �� ������� ���: "

#: commands.c:357 recvcmd.c:171
#: commands.c:383 recvcmd.c:171
msgid "Bounce tagged messages to: "
msgstr "���������� �� ����������� ����� ���: "

#: commands.c:365 recvcmd.c:180
#: commands.c:391 recvcmd.c:180
msgid "Error parsing address!"
msgstr "������ ��� ��������� �� �������!"

#: commands.c:373 recvcmd.c:188
#: commands.c:399 recvcmd.c:188
#, c-format
msgid "Bad IDN: '%s'"
msgstr "��� IDN: '%s'"

#: commands.c:384 recvcmd.c:202
#: commands.c:410 recvcmd.c:202
#, c-format
msgid "Bounce message to %s"
msgstr "���������� �� ������� ��� %s"

#: commands.c:384 recvcmd.c:202
#: commands.c:410 recvcmd.c:202
#, c-format
msgid "Bounce messages to %s"
msgstr "���������� �� ������� ��� %s"

#: commands.c:400 recvcmd.c:218
#: commands.c:426 recvcmd.c:218
msgid "Message not bounced."
msgstr "������� �� � ����������."

#: commands.c:400 recvcmd.c:218
#: commands.c:426 recvcmd.c:218
msgid "Messages not bounced."
msgstr "������� �� �� ����������."

#: commands.c:410 recvcmd.c:237
#: commands.c:436 recvcmd.c:237
msgid "Message bounced."
msgstr "������� � ����������."

#: commands.c:410 recvcmd.c:237
#: commands.c:436 recvcmd.c:237
msgid "Messages bounced."
msgstr "������� �� ����������."

#: commands.c:487 commands.c:523 commands.c:542
#: commands.c:520 commands.c:556 commands.c:575
msgid "Can't create filter process"
msgstr "������ ��� ����������� �� ������"

#: commands.c:573
#: commands.c:606
msgid "Pipe to command: "
msgstr "��������� ��� ������� (pipe): "

#: commands.c:590
#: commands.c:623
msgid "No printing command has been defined."
msgstr "�� � ���������� ������� �� �����������"

#: commands.c:595
#: commands.c:628
msgid "Print message?"
msgstr "������� �� �� ���������� �������?"

#: commands.c:595
#: commands.c:628
msgid "Print tagged messages?"
msgstr "������� �� �� ���������� ����������� �����?"

#: commands.c:604
#: commands.c:637
msgid "Message printed"
msgstr "������� � ����������"

#: commands.c:604
#: commands.c:637
msgid "Messages printed"
msgstr "������� �� ����������"

#: commands.c:606
#: commands.c:639
msgid "Message could not be printed"
msgstr "������� �� � ����������"

#: commands.c:607
#: commands.c:640
msgid "Messages could not be printed"
msgstr "������� �� �� ����������"



@@ 523,138 819,138 @@ msgstr "
#. * string.  Note that mutt now supports multiline prompts, so
#. * it's okay for the translation to take up to three lines.
#.
#: commands.c:621
#: commands.c:654
#, fuzzy
msgid "Rev-Sort Date/Frm/Recv/Subj/tO/Thread/Unsort/siZe/sCore/sPam/Label?: "
msgstr ""
"������� ���������� ��: ���� �� ���������(d)/��(f)/���� �� ����������(r)/"
"����(s)/���������(o)/�����(t)/��� ����������(u)/������(z)/�������(c)?: "

#: commands.c:622
#: commands.c:655
#, fuzzy
msgid "Sort Date/Frm/Recv/Subj/tO/Thread/Unsort/siZe/sCore/sPam/Label?: "
msgstr ""
"���������� ��: ���� �� ���������(d)/��(f)/���� �� ����������(r)/����(s)/"
"���������(o)/�����(t)/��� ����������(u)/������(z)/�������(c)?: "

#: commands.c:623
#: commands.c:656
#, fuzzy
msgid "dfrsotuzcpl"
msgstr "dfrsotuzc"

#: commands.c:684
#: commands.c:717
msgid "Shell command: "
msgstr "��� �������: "

#: commands.c:827
#: commands.c:864
#, c-format
msgid "Decode-save%s to mailbox"
msgstr "���������� � ����� ��%s � �������� �����"

#: commands.c:828
#: commands.c:865
#, c-format
msgid "Decode-copy%s to mailbox"
msgstr "���������� � �������� ��%s � �������� �����"

#: commands.c:829
#: commands.c:866
#, c-format
msgid "Decrypt-save%s to mailbox"
msgstr "����������� � ����� ��%s � �������� �����"

#: commands.c:830
#: commands.c:867
#, c-format
msgid "Decrypt-copy%s to mailbox"
msgstr "����������� � ����� ��%s � �������� �����"

#: commands.c:831
#: commands.c:868
#, c-format
msgid "Save%s to mailbox"
msgstr "����� ��%s � �������� �����"

#: commands.c:831
#: commands.c:868
#, c-format
msgid "Copy%s to mailbox"
msgstr "�������� ��%s � �������� �����"

#: commands.c:832
#: commands.c:869
msgid " tagged"
msgstr " ��������"

#: commands.c:897
#: commands.c:935
#, c-format
msgid "Copying to %s..."
msgstr "��������� �� ����� � %s..."

#: commands.c:1020
#: commands.c:1065
#, c-format
msgid "Convert to %s upon sending?"
msgstr "������� �� �� �� ������������ �� %s ��� ���������?"

#: commands.c:1030
#: commands.c:1075
#, c-format
msgid "Content-Type changed to %s."
msgstr "Content-Type � �������� �� %s."

#: commands.c:1035
#: commands.c:1080
#, c-format
msgid "Character set changed to %s; %s."
msgstr "�������� ������� � ��������� �� %s; %s."

#: commands.c:1037
#: commands.c:1082
msgid "not converting"
msgstr "�� � ������������"

#: commands.c:1037
#: commands.c:1082
msgid "converting"
msgstr "������������"

#: compose.c:48
#: compose.c:54
msgid "There are no attachments."
msgstr "���� ����������."

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:84
#: compose.c:94
msgid "From: "
msgstr ""

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:86 send.c:225
#: compose.c:96 send.c:231
msgid "To: "
msgstr ""

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:88 send.c:227
#: compose.c:98 send.c:233
msgid "Cc: "
msgstr ""

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:90 send.c:229
#: compose.c:100 send.c:235
msgid "Bcc: "
msgstr ""

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:92 compose.c:775 send.c:254
#: compose.c:102 compose.c:970 send.c:260
msgid "Subject: "
msgstr ""

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:94
#: compose.c:104
#, fuzzy
msgid "Reply-To: "
msgstr "�������"

#. L10N: Compose menu field.  May not want to translate.
#: compose.c:96 compose.c:792
#: compose.c:106 compose.c:987
msgid "Fcc: "
msgstr ""

#. L10N: "Mix" refers to the MixMaster chain for anonymous email
#: compose.c:99
#: compose.c:109
msgid "Mix: "
msgstr ""

#. L10N: Compose menu field.  Holds "Encrypt", "Sign" related information
#: compose.c:102
#: compose.c:112
msgid "Security: "
msgstr ""



@@ 667,497 963,698 @@ msgstr ""
#. * Since it shares the row with "Encrypt with:", it should not be longer
#. * than 15-20 character cells.
#.
#: compose.c:112 crypt-gpgme.c:5189 pgp.c:1872 smime.c:2290
#: compose.c:122 crypt-gpgme.c:5367 pgp.c:1917 smime.c:2358
msgid "Sign as: "
msgstr "������ ����: "

#: compose.c:116
#. L10N:
#. The compose menu autocrypt line
#.
#: compose.c:127
msgid "Autocrypt: "
msgstr ""

#: compose.c:132
msgid "Send"
msgstr "���������"

#: compose.c:117 remailer.c:489
#: compose.c:133 remailer.c:489
msgid "Abort"
msgstr "�����"

#. L10N: compose menu help line entry
#: compose.c:119
#: compose.c:135
msgid "To"
msgstr ""

#. L10N: compose menu help line entry
#: compose.c:121
#: compose.c:137
msgid "CC"
msgstr ""

#. L10N: compose menu help line entry
#: compose.c:123
#: compose.c:139
msgid "Subj"
msgstr ""

#: compose.c:124 compose.c:877
#: compose.c:140 compose.c:1077
msgid "Attach file"
msgstr "��������� �� ����"

#: compose.c:125
#: compose.c:141
msgid "Descrip"
msgstr "��������"

#: compose.c:195
#. L10N: Autocrypt recommendation flag: off.
#. * This is displayed when Autocrypt is turned off.
#: compose.c:150 compose.c:382
msgid "Off"
msgstr ""

#. L10N: Autocrypt recommendation flag: no.
#. * This is displayed when Autocrypt cannot encrypt to the recipients.
#: compose.c:153
msgid "No"
msgstr ""

#. L10N: Autocrypt recommendation flag: discouraged.
#. * This is displayed when Autocrypt believes encryption should not be used.
#. * This might occur if one of the recipient Autocrypt Keys has not been
#. * used recently, or if the only key available is a Gossip Header key.
#: compose.c:158
msgid "Discouraged"
msgstr ""

#. L10N: Autocrypt recommendation flag: available.
#. * This is displayed when Autocrypt believes encryption is possible, but
#. * leaves enabling it up to the sender.  Probably because "prefer encrypt"
#. * is not set in both the sender and recipient keys.
#: compose.c:163
msgid "Available"
msgstr ""

#. L10N: Autocrypt recommendation flag: yes.
#. * This is displayed when Autocrypt would normally enable encryption
#. * automatically.
#: compose.c:167
#, fuzzy
msgid "Yes"
msgstr "yes"

#. L10N:
#. The compose menu autocrypt prompt.
#. (e)ncrypt enables encryption via autocrypt.
#. (c)lear sets cleartext.
#. (a)utomatic defers to the recommendation.
#.
#: compose.c:251
msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
msgstr ""

#. L10N:
#. The letter corresponding to the compose menu autocrypt prompt
#. (e)ncrypt, (c)lear, (a)utomatic
#.
#: compose.c:257
msgid "eca"
msgstr ""

#: compose.c:290
#, fuzzy
msgid "Not supported"
msgstr "����������� �� �� ��������."

#: compose.c:202
#: compose.c:297
msgid "Sign, Encrypt"
msgstr "������, ���������"

#: compose.c:207
#: compose.c:302 compose.c:377
msgid "Encrypt"
msgstr "���������"

#: compose.c:212
#: compose.c:307
msgid "Sign"
msgstr "������"

#: compose.c:217
#: compose.c:312
msgid "None"
msgstr ""

#: compose.c:226
#: compose.c:321
#, fuzzy
msgid " (inline PGP)"
msgstr "(��-�������)\n"

#: compose.c:228
#: compose.c:323
msgid " (PGP/MIME)"
msgstr ""

#: compose.c:232
#: compose.c:327
msgid " (S/MIME)"
msgstr ""

#: compose.c:236
#: compose.c:331
msgid " (OppEnc mode)"
msgstr ""

#: compose.c:248 compose.c:257
#: compose.c:343 compose.c:352
msgid "<default>"
msgstr "<�� ������������>"

#: compose.c:267
#: compose.c:361
msgid "Encrypt with: "
msgstr "��������� c: "

#: compose.c:324
#, c-format
msgid "%s [#%d] no longer exists!"
#. L10N:
#. The autocrypt compose menu Recommendation field.
#. Displays the output of the recommendation engine
#. (Off, No, Discouraged, Available, Yes)
#.
#: compose.c:392
msgid "Recommendation: "
msgstr ""

#. L10N:
#. This message is displayed in the compose menu when an attachment
#. doesn't stat.  %d is the attachment number and %s is the
#. attachment filename.
#. The filename is located last to avoid a long path hiding the
#. error message.
#.
#: compose.c:495
#, fuzzy, c-format
msgid "Attachment #%d no longer exists: %s"
msgstr "%s [#%d] ���� �� ����������!"

#: compose.c:332
#, c-format
msgid "%s [#%d] modified. Update encoding?"
#. L10N:
#. This message is displayed in the compose menu when an attachment
#. is modified behind the scenes.  %d is the attachment number
#. and %s is the attachment filename.
#. The filename is located last to avoid a long path hiding the
#. prompt question.
#.
#: compose.c:516
#, fuzzy, c-format
msgid "Attachment #%d modified. Update encoding for %s?"
msgstr "%s [#%d] � ���������. ������� �� �� ��������� ����������?"

#: compose.c:387
#: compose.c:579
msgid "-- Attachments"
msgstr "-- ����������"

#: compose.c:409
#: compose.c:601
#, c-format
msgid "Warning: '%s' is a bad IDN."
msgstr "��������������: '%s' � ��������� IDN."

#: compose.c:429
#: compose.c:621
msgid "You may not delete the only attachment."
msgstr "�� ���� �� �������� ������������ ���� �� �������."

#: compose.c:823 send.c:2039
#: compose.c:1022 send.c:2134
#, c-format
msgid "Bad IDN in \"%s\": '%s'"
msgstr "��� IDN � \"%s\": '%s'"

#: compose.c:887
#: compose.c:1087
msgid "Attaching selected files..."
msgstr "��������� �� ��������� �������..."

#: compose.c:899
#: compose.c:1099
#, c-format
msgid "Unable to attach %s!"
msgstr "����������� �� %s � ����������!"

#: compose.c:919
#: compose.c:1119
msgid "Open mailbox to attach message from"
msgstr "�������� �� �������� �����, �� ����� �� ���� ��������� �����"

#: compose.c:949
#: compose.c:1150
#, fuzzy, c-format
msgid "Unable to open mailbox %s"
msgstr "������ ��� ���������� �� ���������� �����!"

#: compose.c:957
#: compose.c:1158
msgid "No messages in that folder."
msgstr "� ���� ����� ���� �����."

#: compose.c:966
#: compose.c:1167
msgid "Tag the messages you want to attach!"
msgstr "���������� �������, ����� ������ �� ���������!"

#: compose.c:992
#: compose.c:1193
msgid "Unable to attach!"
msgstr "����������� � ����������!"

#: compose.c:1032
#: compose.c:1233
msgid "Recoding only affects text attachments."
msgstr "��������� �� ���������� ������ ���� ���������� ����������."

#: compose.c:1037
#: compose.c:1238
msgid "The current attachment won't be converted."
msgstr "���� ���������� ���� �� ���� �����������."

#: compose.c:1039
#: compose.c:1240
msgid "The current attachment will be converted."
msgstr "���� ���������� �� ���� �����������."

#: compose.c:1113
#: compose.c:1314
msgid "Invalid encoding."
msgstr "������� � ��������� ��������."

#: compose.c:1139
#: compose.c:1340
msgid "Save a copy of this message?"
msgstr "������� �� �� �������� ����� �� ���� �����?"

#: compose.c:1193
#: compose.c:1394
#, fuzzy
msgid "Send attachment with name: "
msgstr "������� ������������ ���� �����"

#: compose.c:1211
#: compose.c:1413
msgid "Rename to: "
msgstr "������������ �: "

#. L10N:
#. "stat" is a system call. Do "man 2 stat" for more information.
#: compose.c:1218 editmsg.c:96 editmsg.c:121 sendlib.c:895
#: compose.c:1420 editmsg.c:98 editmsg.c:124 sendlib.c:907
#, c-format
msgid "Can't stat %s: %s"
msgstr "������ ��� �������� �� %s: %s"

#: compose.c:1245
#: compose.c:1447
msgid "New file: "
msgstr "��� ����: "

#: compose.c:1258
#: compose.c:1460
msgid "Content-Type is of the form base/sub"
msgstr "������ Content-Type ��� ������� �����-���/������"

#: compose.c:1264
#: compose.c:1466
#, c-format
msgid "Unknown Content-Type %s"
msgstr "�������� Content-Type %s"

#: compose.c:1272
#: compose.c:1474
#, c-format
msgid "Can't create file %s"
msgstr "������ ��� ��������� �� ����� %s"

#: compose.c:1280
#: compose.c:1482
msgid "What we have here is a failure to make an attachment"
msgstr "������ ��� ��������� �� ������������"

#: compose.c:1341
#: compose.c:1520
msgid "$send_multipart_alternative_filter is not set"
msgstr ""

#: compose.c:1574
msgid "Postpone this message?"
msgstr "������� �� �� �������� ���������?"

#: compose.c:1400
#: compose.c:1635
msgid "Write message to mailbox"
msgstr "����� �� ������� � �������� �����"

#: compose.c:1403
#: compose.c:1639
#, c-format
msgid "Writing message to %s ..."
msgstr "��������� �� ������� � %s ..."

#: compose.c:1412
#: compose.c:1646
msgid "Message written."
msgstr "������� � ��������."

#: compose.c:1423
#: compose.c:1659
msgid "No PGP backend configured"
msgstr ""

#: compose.c:1431
#: compose.c:1667 compose.c:1740
#, fuzzy
msgid "S/MIME already selected. Clear & continue ? "
msgstr "S/MIME-��������� ���� � �������. Clear & continue? "

#: compose.c:1460
#: compose.c:1695
msgid "No S/MIME backend configured"
msgstr ""

#: compose.c:1469
#: compose.c:1704
#, fuzzy
msgid "PGP already selected. Clear & continue ? "
msgstr "PGP-��������� ���� � �������. Clear & continue? "

#: compress.c:449 compress.c:519 compress.c:674 compress.c:863 mbox.c:876
#: compress.c:451 compress.c:521 compress.c:676 compress.c:865 mbox.c:877
msgid "Unable to lock mailbox!"
msgstr "������ ��� ���������� �� ���������� �����!"

#: compress.c:453 compress.c:526 compress.c:678
#: compress.c:455 compress.c:528 compress.c:680
#, c-format
msgid "Decompressing %s"
msgstr ""

#: compress.c:462
#: compress.c:464
msgid "Can't identify the contents of the compressed file"
msgstr ""

#: compress.c:469 compress.c:547
#: compress.c:471 compress.c:549
#, c-format
msgid "Can't find mailbox ops for mailbox type %d"
msgstr ""

#: compress.c:508 compress.c:802
#: compress.c:510 compress.c:804
#, c-format
msgid "Cannot append without an append-hook or close-hook : %s"
msgstr ""

#: compress.c:529
#: compress.c:531
#, fuzzy, c-format
msgid "Compress command failed: %s"
msgstr "������ ��� ���������� �� ��������� \"preconnect\""

#: compress.c:540
#: compress.c:542
msgid "Unsupported mailbox type for appending."
msgstr ""

#: compress.c:616
#: compress.c:618
#, fuzzy, c-format
msgid "Compressed-appending to %s..."
msgstr "��������� �� ����� � %s..."

#: compress.c:621
#: compress.c:623
#, fuzzy, c-format
msgid "Compressing %s..."
msgstr "��������� �� ����� � %s..."

#: compress.c:628 editmsg.c:210
#: compress.c:630 editmsg.c:213
#, c-format
msgid "Error. Preserving temporary file: %s"
msgstr "������. ��������� �� ��������� ����: %s"

#: compress.c:853
#: compress.c:855
msgid "Can't sync a compressed file without a close-hook"
msgstr ""

#: compress.c:875
#: compress.c:877
#, fuzzy, c-format
msgid "Compressing %s"
msgstr "��������� �� ����� � %s..."

#: crypt-gpgme.c:569
#, fuzzy, c-format
msgid "error creating gpgme context: %s\n"
msgstr "������ � ������� ���: %s"
#: copy.c:682
msgid "No decryption engine available for message"
msgstr ""

#: crypt.c:71
#, c-format
msgid " (current time: %c)"
msgstr " (������ �����: %c)"

#: crypt.c:76
#, c-format
msgid "[-- %s output follows%s --]\n"
msgstr "[-- %s ������ ����������%s) --]\n"

#: crypt.c:91
msgid "Passphrase(s) forgotten."
msgstr "�������� �� ���������."

#: crypt.c:167
msgid "Inline PGP can't be used with attachments.  Revert to PGP/MIME?"
msgstr ""

#: crypt.c:169
msgid "Mail not sent: inline PGP can't be used with attachments."
msgstr ""

#: crypt.c:177
msgid "Inline PGP can't be used with format=flowed.  Revert to PGP/MIME?"
msgstr ""

#: crypt.c:179
msgid "Mail not sent: inline PGP can't be used with format=flowed."
msgstr ""

#: crypt-gpgme.c:579
#: crypt.c:186 cryptglue.c:115 pgpkey.c:567 pgpkey.c:754
msgid "Invoking PGP..."
msgstr "���������� �� PGP..."

#: crypt.c:195
msgid "Message can't be sent inline.  Revert to using PGP/MIME?"
msgstr ""

#: crypt.c:197 send.c:2104
msgid "Mail not sent."
msgstr "������� �� � ���������."

#: crypt.c:548
msgid "S/MIME messages with no hints on content are unsupported."
msgstr "S/MIME ����� ��� �������� �� ������������ �� �� �� ���������."

#: crypt.c:770 crypt.c:813
msgid "Trying to extract PGP keys...\n"
msgstr "���� �� ��������� �� PGP �������...\n"

#: crypt.c:793 crypt.c:833
msgid "Trying to extract S/MIME certificates...\n"
msgstr "���� �� ��������� �� S/MIME �����������...\n"

#: crypt.c:1038
#, c-format
msgid ""
"[-- Error: Unknown multipart/signed protocol %s! --]\n"
"\n"
msgstr ""
"[-- ������: �������� multipart/signed �������� %s! --]\n"
"\n"

#: crypt.c:1072
#, fuzzy
msgid ""
"[-- Error: Missing or bad-format multipart/signed signature! --]\n"
"\n"
msgstr ""
"[-- ������: ������������� multipart/signed ���������! --]\n"
"\n"

#: crypt.c:1113
#, c-format
msgid ""
"[-- Warning: We can't verify %s/%s signatures. --]\n"
"\n"
msgstr ""
"[-- ��������������: %s/%s-������� �� ����� �� ����� �����������. --]\n"
"\n"

#: crypt.c:1126
msgid ""
"[-- The following data is signed --]\n"
"\n"
msgstr ""
"[-- �������� ����� �� ��������� --]\n"
"\n"

#: crypt.c:1133
msgid ""
"[-- Warning: Can't find any signatures. --]\n"
"\n"
msgstr ""
"[-- ��������������: �� ����� �� ����� �������� �������. --]\n"
"\n"

#: crypt.c:1139
msgid ""
"\n"
"[-- End of signed data --]\n"
msgstr ""
"\n"
"[-- ���� �� ����������� ����� --]\n"

#: cryptglue.c:94
msgid "\"crypt_use_gpgme\" set but not built with GPGME support."
msgstr ""

#: cryptglue.c:117
#, fuzzy
msgid "Invoking S/MIME..."
msgstr "���������� �� PGP..."

#: crypt-gpgme.c:586
#, c-format
msgid "error enabling CMS protocol: %s\n"
msgstr ""

#: crypt-gpgme.c:600
#: crypt-gpgme.c:607
#, fuzzy, c-format
msgid "error creating gpgme data object: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:695 crypt-gpgme.c:713 crypt-gpgme.c:1805 crypt-gpgme.c:2541
#: crypt-gpgme.c:701 crypt-gpgme.c:725 crypt-gpgme.c:1827 crypt-gpgme.c:2605
#, fuzzy, c-format
msgid "error allocating data object: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:731
#: crypt-gpgme.c:743
#, fuzzy, c-format
msgid "error rewinding data object: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:753 crypt-gpgme.c:806
#: crypt-gpgme.c:765 crypt-gpgme.c:820
#, fuzzy, c-format
msgid "error reading data object: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:779 crypt-gpgme.c:4100 pgpkey.c:560 pgpkey.c:740
#: crypt-gpgme.c:793 crypt-gpgme.c:4183 pgpkey.c:561 pgpkey.c:742
msgid "Can't create temporary file"
msgstr "������ ��� ��������� �� �������� ����"

#: crypt-gpgme.c:914
#: crypt-gpgme.c:932
#, fuzzy, c-format
msgid "error adding recipient `%s': %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:960
#: crypt-gpgme.c:982
#, c-format
msgid "secret key `%s' not found: %s\n"
msgstr ""

#: crypt-gpgme.c:977
#: crypt-gpgme.c:999
#, c-format
msgid "ambiguous specification of secret key `%s'\n"
msgstr ""

#: crypt-gpgme.c:992
#: crypt-gpgme.c:1014
#, c-format
msgid "error setting secret key `%s': %s\n"
msgstr ""

#: crypt-gpgme.c:1009
#: crypt-gpgme.c:1031
#, fuzzy, c-format
msgid "error setting PKA signature notation: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:1086
#: crypt-gpgme.c:1108
#, fuzzy, c-format
msgid "error encrypting data: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:1209
#: crypt-gpgme.c:1231
#, fuzzy, c-format
msgid "error signing data: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:1220
#: crypt-gpgme.c:1242
msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
msgstr ""

#: crypt-gpgme.c:1402
#: crypt-gpgme.c:1424
msgid "Warning: One of the keys has been revoked\n"
msgstr ""

#: crypt-gpgme.c:1411
#: crypt-gpgme.c:1433
msgid "Warning: The key used to create the signature expired at: "
msgstr ""

#: crypt-gpgme.c:1417
#: crypt-gpgme.c:1439
#, fuzzy
msgid "Warning: At least one certification key has expired\n"
msgstr "������������ �� ������� � �������"

#: crypt-gpgme.c:1433
#: crypt-gpgme.c:1455
msgid "Warning: The signature expired at: "
msgstr ""

#: crypt-gpgme.c:1439
#: crypt-gpgme.c:1461
msgid "Can't verify due to a missing key or certificate\n"
msgstr ""

#: crypt-gpgme.c:1444
#: crypt-gpgme.c:1466
#, fuzzy
msgid "The CRL is not available\n"
msgstr "SSL �� � �� ������������."

#: crypt-gpgme.c:1450
#: crypt-gpgme.c:1472
msgid "Available CRL is too old\n"
msgstr ""

#: crypt-gpgme.c:1455
#: crypt-gpgme.c:1477
msgid "A policy requirement was not met\n"
msgstr ""

#: crypt-gpgme.c:1464
#: crypt-gpgme.c:1486
msgid "A system error occurred"
msgstr ""

#: crypt-gpgme.c:1496
#: crypt-gpgme.c:1518
msgid "WARNING: PKA entry does not match signer's address: "
msgstr ""

#: crypt-gpgme.c:1503
#: crypt-gpgme.c:1525
msgid "PKA verified signer's address is: "
msgstr ""

#: crypt-gpgme.c:1518 crypt-gpgme.c:3793
#: crypt-gpgme.c:1540 crypt-gpgme.c:3873
#, fuzzy
msgid "Fingerprint: "
msgstr "������� ���������: %s"

#: crypt-gpgme.c:1578
#: crypt-gpgme.c:1600
msgid ""
"WARNING: We have NO indication whether the key belongs to the person named "
"as shown above\n"
msgstr ""

#: crypt-gpgme.c:1585
#: crypt-gpgme.c:1607
msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
msgstr ""

#: crypt-gpgme.c:1589
#: crypt-gpgme.c:1611
msgid ""
"WARNING: It is NOT certain that the key belongs to the person named as shown "
"above\n"
msgstr ""

#: crypt-gpgme.c:1619 crypt-gpgme.c:1624 crypt-gpgme.c:3788
#: crypt-gpgme.c:1641 crypt-gpgme.c:1646 crypt-gpgme.c:3868
msgid "aka: "
msgstr ""

#. L10N: You will see this message in place of "KeyID "
#. if the S/MIME key has no ID. This is quite an error.
#.
#: crypt-gpgme.c:1638
#: crypt-gpgme.c:1660
msgid "no signature fingerprint available"
msgstr ""

#: crypt-gpgme.c:1641
#: crypt-gpgme.c:1663
msgid "KeyID "
msgstr ""

#: crypt-gpgme.c:1651 crypt-gpgme.c:1656
#: crypt-gpgme.c:1673 crypt-gpgme.c:1678
#, fuzzy
msgid "created: "
msgstr "������� �� �� ��������� %s?"

#: crypt-gpgme.c:1729
#: crypt-gpgme.c:1751
#, c-format
msgid "Error getting key information for KeyID %s: %s\n"
msgstr ""

#: crypt-gpgme.c:1736 crypt-gpgme.c:1751
#: crypt-gpgme.c:1758 crypt-gpgme.c:1773
msgid "Good signature from:"
msgstr ""

#: crypt-gpgme.c:1743
#: crypt-gpgme.c:1765
msgid "*BAD* signature from:"
msgstr ""

#: crypt-gpgme.c:1759
#: crypt-gpgme.c:1781
msgid "Problem signature from:"
msgstr ""

#. L10N:
#. This is trying to match the width of the
#. "Problem signature from:" translation just above.
#: crypt-gpgme.c:1766
#: crypt-gpgme.c:1788
msgid "               expires: "
msgstr ""

#: crypt-gpgme.c:1813 crypt-gpgme.c:2039 crypt-gpgme.c:2821
#: crypt-gpgme.c:1835 crypt-gpgme.c:2065 crypt-gpgme.c:2885
msgid "[-- Begin signature information --]\n"
msgstr ""

#: crypt-gpgme.c:1825
#: crypt-gpgme.c:1847
#, fuzzy, c-format
msgid "Error: verification failed: %s\n"
msgstr "������ � ��������� ���: %s\n"

#: crypt-gpgme.c:1879
#: crypt-gpgme.c:1901
#, c-format
msgid "*** Begin Notation (signature by: %s) ***\n"
msgstr ""

#: crypt-gpgme.c:1901
#: crypt-gpgme.c:1923
msgid "*** End Notation ***\n"
msgstr ""

#: crypt-gpgme.c:1909 crypt-gpgme.c:2052 crypt-gpgme.c:2834
#: crypt-gpgme.c:1931 crypt-gpgme.c:2078 crypt-gpgme.c:2898
#, fuzzy
msgid ""
"[-- End signature information --]\n"


@@ 1166,28 1663,28 @@ msgstr ""
"\n"
"[-- ���� �� ����������� ����� --]\n"

#: crypt-gpgme.c:2007
#: crypt-gpgme.c:2036
#, fuzzy, c-format
msgid ""
"[-- Error: decryption failed: %s --]\n"
"\n"
msgstr "[-- ������: �� ���� �� ���� �������� �������� ����! --]\n"

#: crypt-gpgme.c:2549
#: crypt-gpgme.c:2613
#, fuzzy, c-format
msgid "error importing key: %s\n"
msgstr "������ � ������� ���: %s"

#: crypt-gpgme.c:2797
#: crypt-gpgme.c:2861
#, c-format
msgid "Error: decryption/verification failed: %s\n"
msgstr ""

#: crypt-gpgme.c:2842
#: crypt-gpgme.c:2906
msgid "Error: copy data failed\n"
msgstr ""

#: crypt-gpgme.c:2863 pgp.c:617
#: crypt-gpgme.c:2927 pgp.c:622
msgid ""
"[-- BEGIN PGP MESSAGE --]\n"
"\n"


@@ 1195,11 1692,11 @@ msgstr ""
"[-- ������ �� PGP-����� --]\n"
"\n"

#: crypt-gpgme.c:2865 pgp.c:619
#: crypt-gpgme.c:2929 pgp.c:624
msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
msgstr "[-- ������ �� ���� � �������� PGP-���� --]\n"

#: crypt-gpgme.c:2868 pgp.c:621
#: crypt-gpgme.c:2932 pgp.c:626
msgid ""
"[-- BEGIN PGP SIGNED MESSAGE --]\n"
"\n"


@@ 1207,19 1704,19 @@ msgstr ""
"[-- ������ �� PGP-��������� ����� --]\n"
"\n"

#: crypt-gpgme.c:2895 pgp.c:661
#: crypt-gpgme.c:2959 pgp.c:666
msgid "[-- END PGP MESSAGE --]\n"
msgstr "[-- ���� �� PGP-������� --]\n"

#: crypt-gpgme.c:2897 pgp.c:674
#: crypt-gpgme.c:2961 pgp.c:679
msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
msgstr "[-- ���� �� ����� � ��������� PGP-���� --]\n"

#: crypt-gpgme.c:2899 pgp.c:676
#: crypt-gpgme.c:2963 pgp.c:681
msgid "[-- END PGP SIGNED MESSAGE --]\n"
msgstr "[-- ���� �� PGP-����������� ����� --]\n"

#: crypt-gpgme.c:2922 pgp.c:706
#: crypt-gpgme.c:2986 pgp.c:715
msgid ""
"[-- Error: could not find beginning of PGP message! --]\n"
"\n"


@@ 1227,11 1724,11 @@ msgstr ""
"[-- ������: �������� �� PGP-������� �� ���� �� ���� ��������! --]\n"
"\n"

#: crypt-gpgme.c:2953 crypt-gpgme.c:3054 pgp.c:1131
#: crypt-gpgme.c:3020 crypt-gpgme.c:3131 pgp.c:1163
msgid "[-- Error: could not create temporary file! --]\n"
msgstr "[-- ������: �� ���� �� ���� �������� �������� ����! --]\n"

#: crypt-gpgme.c:2966
#: crypt-gpgme.c:3034
#, fuzzy
msgid ""
"[-- The following data is PGP/MIME signed and encrypted --]\n"


@@ 1240,7 1737,7 @@ msgstr ""
"[-- �������� ����� �� ��������� � PGP/MIME --]\n"
"\n"

#: crypt-gpgme.c:2967 pgp.c:1141
#: crypt-gpgme.c:3035 pgp.c:1173
msgid ""
"[-- The following data is PGP/MIME encrypted --]\n"
"\n"


@@ 1248,62 1745,62 @@ msgstr ""
"[-- �������� ����� �� ��������� � PGP/MIME --]\n"
"\n"

#: crypt-gpgme.c:3012
#: crypt-gpgme.c:3080
#, fuzzy
msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
msgstr "[-- ���� �� ����������� � PGP/MIME ����� --]\n"

#: crypt-gpgme.c:3013 pgp.c:1184
#: crypt-gpgme.c:3081 pgp.c:1216
msgid "[-- End of PGP/MIME encrypted data --]\n"
msgstr "[-- ���� �� ����������� � PGP/MIME ����� --]\n"

#: crypt-gpgme.c:3018 pgp.c:671 pgp.c:1189
#: crypt-gpgme.c:3086 pgp.c:676 pgp.c:1221
#, fuzzy
msgid "PGP message successfully decrypted."
msgstr "PGP-�������� � ��������� �������."

#: crypt-gpgme.c:3022 pgp.c:603 pgp.c:663 pgp.c:1193
#: crypt-gpgme.c:3092 pgp.c:609 pgp.c:668 pgp.c:1225
#, fuzzy
msgid "Could not decrypt PGP message"
msgstr "������� �� ���� �� ���� ��������."

#: crypt-gpgme.c:3067
#: crypt-gpgme.c:3145
#, fuzzy
msgid ""
"[-- The following data is S/MIME signed --]\n"
"\n"
msgstr "[-- �������� ����� �� ��������� ��� S/MIME --]\n"

#: crypt-gpgme.c:3068
#: crypt-gpgme.c:3146
#, fuzzy
msgid ""
"[-- The following data is S/MIME encrypted --]\n"
"\n"
msgstr "[-- �������� ����� �� ��������� ��� S/MIME --]\n"

#: crypt-gpgme.c:3121
#: crypt-gpgme.c:3199
#, fuzzy
msgid "[-- End of S/MIME signed data --]\n"
msgstr ""
"\n"
"[-- ���� �� ����������� ��� S/MIME ����� --]\n"

#: crypt-gpgme.c:3122
#: crypt-gpgme.c:3200
#, fuzzy
msgid "[-- End of S/MIME encrypted data --]\n"
msgstr ""
"\n"
"[-- ���� �� ����������� ��� S/MIME ����� --]\n"

#: crypt-gpgme.c:3706
#: crypt-gpgme.c:3786
msgid "[Can't display this user ID (unknown encoding)]"
msgstr ""

#: crypt-gpgme.c:3708
#: crypt-gpgme.c:3788
msgid "[Can't display this user ID (invalid encoding)]"
msgstr ""

#: crypt-gpgme.c:3713
#: crypt-gpgme.c:3793
msgid "[Can't display this user ID (invalid DN)]"
msgstr ""



@@ 1311,158 1808,158 @@ msgstr ""
#. * The following are the headers for the "verify key" output from the
#. * GPGME key selection menu (bound to "c" in the key selection menu).
#. * They will be automatically aligned.
#: crypt-gpgme.c:3787
#: crypt-gpgme.c:3867
msgid "Name: "
msgstr ""

#: crypt-gpgme.c:3789
#: crypt-gpgme.c:3869
#, fuzzy
msgid "Valid From: "
msgstr "��������� �����: %s"

#: crypt-gpgme.c:3790
#: crypt-gpgme.c:3870
#, fuzzy
msgid "Valid To: "
msgstr "��������� �����: %s"

#: crypt-gpgme.c:3791
#: crypt-gpgme.c:3871
msgid "Key Type: "
msgstr ""

#: crypt-gpgme.c:3792
#: crypt-gpgme.c:3872
msgid "Key Usage: "
msgstr ""

#: crypt-gpgme.c:3794
#: crypt-gpgme.c:3874
msgid "Serial-No: "
msgstr ""

#: crypt-gpgme.c:3795
#: crypt-gpgme.c:3875
msgid "Issued By: "
msgstr ""

#: crypt-gpgme.c:3796
#: crypt-gpgme.c:3876
#, fuzzy
msgid "Subkey: "
msgstr "������ �������������: 0x%s"

#. L10N: comes after the Name or aka if the key is invalid
#. L10N: describes a subkey
#: crypt-gpgme.c:3847 crypt-gpgme.c:4002
#: crypt-gpgme.c:3927 crypt-gpgme.c:4082
#, fuzzy
msgid "[Invalid]"
msgstr "���������   "

#. L10N: This is printed after "Key Type: " and looks like this:
#. *       PGP, 2048 bit RSA
#: crypt-gpgme.c:3899 crypt-gpgme.c:4058
#: crypt-gpgme.c:3979 crypt-gpgme.c:4138
#, c-format
msgid "%s, %lu bit %s\n"
msgstr ""

#. L10N: value in Key Usage: field
#: crypt-gpgme.c:3908 crypt-gpgme.c:4066
#: crypt-gpgme.c:3988 crypt-gpgme.c:4146
#, fuzzy
msgid "encryption"
msgstr "���������"

#: crypt-gpgme.c:3909 crypt-gpgme.c:3915 crypt-gpgme.c:3921 crypt-gpgme.c:4067
#: crypt-gpgme.c:4072 crypt-gpgme.c:4077
#: crypt-gpgme.c:3989 crypt-gpgme.c:3995 crypt-gpgme.c:4001 crypt-gpgme.c:4147
#: crypt-gpgme.c:4152 crypt-gpgme.c:4157
msgid ", "
msgstr ""

#. L10N: value in Key Usage: field
#: crypt-gpgme.c:3914 crypt-gpgme.c:4071
#: crypt-gpgme.c:3994 crypt-gpgme.c:4151
msgid "signing"
msgstr ""

#. L10N: value in Key Usage: field
#: crypt-gpgme.c:3920 crypt-gpgme.c:4076
#: crypt-gpgme.c:4000 crypt-gpgme.c:4156
#, fuzzy
msgid "certification"
msgstr "������������ � �������"

#. L10N: describes a subkey
#: crypt-gpgme.c:3996
#: crypt-gpgme.c:4076
#, fuzzy
msgid "[Revoked]"
msgstr "��������   "

#. L10N: describes a subkey
#: crypt-gpgme.c:4008
#: crypt-gpgme.c:4088
#, fuzzy
msgid "[Expired]"
msgstr "�������   "

#. L10N: describes a subkey
#: crypt-gpgme.c:4014
#: crypt-gpgme.c:4094
msgid "[Disabled]"
msgstr ""

#: crypt-gpgme.c:4103
#: crypt-gpgme.c:4186
#, fuzzy
msgid "Collecting data..."
msgstr "��������� � %s..."

#: crypt-gpgme.c:4121
#: crypt-gpgme.c:4204
#, fuzzy, c-format
msgid "Error finding issuer key: %s\n"
msgstr "������ ��� ��������� ��� �������: %s"

#: crypt-gpgme.c:4131
#: crypt-gpgme.c:4214
#, fuzzy
msgid "Error: certification chain too long - stopping here\n"
msgstr "������ � ��������� ���: %s\n"

#: crypt-gpgme.c:4142 pgpkey.c:582
#: crypt-gpgme.c:4225 pgpkey.c:587
#, c-format
msgid "Key ID: 0x%s"
msgstr "������ �������������: 0x%s"

#: crypt-gpgme.c:4257 crypt-gpgme.c:4310
#: crypt-gpgme.c:4343 crypt-gpgme.c:4396
#, c-format
msgid "gpgme_op_keylist_start failed: %s"
msgstr ""

#: crypt-gpgme.c:4297 crypt-gpgme.c:4341
#: crypt-gpgme.c:4383 crypt-gpgme.c:4427 crypt-gpgme.c:5131
#, c-format
msgid "gpgme_op_keylist_next failed: %s"
msgstr ""

#: crypt-gpgme.c:4412
#: crypt-gpgme.c:4498
#, fuzzy
msgid "All matching keys are marked expired/revoked."
msgstr "������ ��������� ������� �� ��������, ��������� ��� ������������."

#: crypt-gpgme.c:4441 mutt_ssl.c:1288 mutt_ssl_gnutls.c:1011 pgpkey.c:515
#: crypt-gpgme.c:4527 mutt_ssl.c:1321 mutt_ssl_gnutls.c:1031 pgpkey.c:516
#: smime.c:448
msgid "Exit  "
msgstr "�����"

#: crypt-gpgme.c:4443 pgpkey.c:517 smime.c:450
#: crypt-gpgme.c:4529 pgpkey.c:518 smime.c:450
msgid "Select  "
msgstr "����� "

#: crypt-gpgme.c:4446 pgpkey.c:520
#: crypt-gpgme.c:4532 pgpkey.c:521
msgid "Check key  "
msgstr "�������� �� ����  "

#: crypt-gpgme.c:4463
#: crypt-gpgme.c:4549
#, fuzzy
msgid "PGP and S/MIME keys matching"
msgstr "PGP �������, ��������� � \"%s\"."

#: crypt-gpgme.c:4465
#: crypt-gpgme.c:4551
#, fuzzy
msgid "PGP keys matching"
msgstr "PGP �������, ��������� � \"%s\"."

#: crypt-gpgme.c:4467
#: crypt-gpgme.c:4553
#, fuzzy
msgid "S/MIME keys matching"
msgstr "S/MIME �����������, ��������� � \"%s\"."

#: crypt-gpgme.c:4469
#: crypt-gpgme.c:4555
#, fuzzy
msgid "keys matching"
msgstr "PGP �������, ��������� � \"%s\"."


@@ 1471,65 1968,74 @@ msgstr "PGP 
#. %1$s is one of the previous four entries.
#. %2$s is an address.
#. e.g. "S/MIME keys matching <me@mutt.org>."
#: crypt-gpgme.c:4476
#: crypt-gpgme.c:4562
#, c-format
msgid "%s <%s>."
msgstr ""

#. L10N:
#. e.g. 'S/MIME keys matching "Michael Elkins".'
#: crypt-gpgme.c:4480
#: crypt-gpgme.c:4566
#, c-format
msgid "%s \"%s\"."
msgstr ""

#: crypt-gpgme.c:4507 pgpkey.c:602
#: crypt-gpgme.c:4593 pgpkey.c:608
msgid "This key can't be used: expired/disabled/revoked."
msgstr ""
"���� ���� �� ���� �� ���� ���������, ������ � �������, ����������� ��� "
"��������."

#: crypt-gpgme.c:4521 pgpkey.c:614 smime.c:481
#: crypt-gpgme.c:4607 pgpkey.c:620 smime.c:481
msgid "ID is expired/disabled/revoked."
msgstr "���� ������������� � �������, ����������� ��� ��������."

#: crypt-gpgme.c:4529 pgpkey.c:618 smime.c:484
#: crypt-gpgme.c:4615 pgpkey.c:624 smime.c:484
msgid "ID has undefined validity."
msgstr "���� ������������� � � ������������ ���������."

#: crypt-gpgme.c:4532 pgpkey.c:621
#: crypt-gpgme.c:4618 pgpkey.c:627
msgid "ID is not valid."
msgstr "���� ������������� �� �� � �������."

#: crypt-gpgme.c:4535 pgpkey.c:624
#: crypt-gpgme.c:4621 pgpkey.c:630
msgid "ID is only marginally valid."
msgstr "���� ������������� � � ���������� ���������."

#: crypt-gpgme.c:4544 pgpkey.c:628 smime.c:491
#: crypt-gpgme.c:4630 pgpkey.c:634 smime.c:491
#, c-format
msgid "%s Do you really want to use the key?"
msgstr "%s ������������ �� ������ �� ���������� ���� ����?"

#: crypt-gpgme.c:4611 crypt-gpgme.c:4727 pgpkey.c:838 pgpkey.c:965
#: crypt-gpgme.c:4697 crypt-gpgme.c:4813 pgpkey.c:841 pgpkey.c:968
#, c-format
msgid "Looking for keys matching \"%s\"..."
msgstr "������� �� �������, ���������� �� \"%s\"..."

#: crypt-gpgme.c:4878 pgp.c:1368
#: crypt-gpgme.c:4964 pgp.c:1406
#, c-format
msgid "Use keyID = \"%s\" for %s?"
msgstr "������� �� ���������� �������� ������������� \"%s\" �� %s?"

#: crypt-gpgme.c:4931 pgp.c:1417 smime.c:810 smime.c:916
#: crypt-gpgme.c:5017 pgp.c:1455 smime.c:813 smime.c:919
#, c-format
msgid "Enter keyID for %s: "
msgstr "�������� ������ ������������� �� %s: "

#: crypt-gpgme.c:4996 pgpkey.c:725
#. L10N:
#. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
#. from.  This error is displayed if no results were found.
#.
#: crypt-gpgme.c:5140
#, fuzzy
msgid "No secret keys found"
msgstr "���� ��������� �� ���������."

#: crypt-gpgme.c:5174 pgpkey.c:731
msgid "Please enter the key ID: "
msgstr "����, �������� �������� �������������: "

#: crypt-gpgme.c:5009
#: crypt-gpgme.c:5187
#, fuzzy, c-format
msgid "Error exporting key: %s\n"
msgstr "������ � ������� ���: %s"


@@ 1538,20 2044,20 @@ msgstr "
#. MIME description for exported (attached) keys.
#. You can translate this entry to a non-ASCII string (it will be encoded),
#. but it may be safer to keep it untranslated.
#: crypt-gpgme.c:5029
#: crypt-gpgme.c:5207
#, fuzzy, c-format
msgid "PGP Key 0x%s."
msgstr "PGP ���� %s."

#: crypt-gpgme.c:5071
#: crypt-gpgme.c:5249
msgid "GPGME: OpenPGP protocol not available"
msgstr ""

#: crypt-gpgme.c:5079
#: crypt-gpgme.c:5257
msgid "GPGME: CMS protocol not available"
msgstr ""

#: crypt-gpgme.c:5116
#: crypt-gpgme.c:5294
#, fuzzy
msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off? "
msgstr ""


@@ 1561,21 2067,21 @@ msgstr ""
#. 'clear'.  Please use a corresponding letter in your language.
#. Alternatively, you may duplicate the letter 'c' is translated to.
#. This comment also applies to the five following letter sequences.
#: crypt-gpgme.c:5121
#: crypt-gpgme.c:5299
msgid "sapfco"
msgstr ""

#: crypt-gpgme.c:5126
#: crypt-gpgme.c:5304
#, fuzzy
msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off? "
msgstr ""
"PGP ���������(e), ������(s), ������ ����(a), � �����(b) ��� ��� ���(f)?"

#: crypt-gpgme.c:5127
#: crypt-gpgme.c:5305
msgid "samfco"
msgstr ""

#: crypt-gpgme.c:5139
#: crypt-gpgme.c:5317
#, fuzzy
msgid ""
"S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc "


@@ 1583,12 2089,12 @@ msgid ""
msgstr ""
"PGP ���������(e), ������(s), ������ ����(a), � �����(b) ��� ��� ���(f)?"

#: crypt-gpgme.c:5140
#: crypt-gpgme.c:5318
#, fuzzy
msgid "esabpfco"
msgstr "eswabf"

#: crypt-gpgme.c:5145
#: crypt-gpgme.c:5323
#, fuzzy
msgid ""
"PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc "


@@ 1596,480 2102,366 @@ msgid ""
msgstr ""
"PGP ���������(e), ������(s), ������ ����(a), � �����(b) ��� ��� ���(f)?"

#: crypt-gpgme.c:5146
#: crypt-gpgme.c:5324
#, fuzzy
msgid "esabmfco"
msgstr "eswabf"

#: crypt-gpgme.c:5157
#: crypt-gpgme.c:5335
#, fuzzy
msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear? "
msgstr ""
"PGP ���������(e), ������(s), ������ ����(a), � �����(b) ��� ��� ���(f)?"

#: crypt-gpgme.c:5158
#: crypt-gpgme.c:5336
#, fuzzy
msgid "esabpfc"
msgstr "eswabf"

#: crypt-gpgme.c:5163
#: crypt-gpgme.c:5341
#, fuzzy
msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear? "
msgstr ""
"PGP ���������(e), ������(s), ������ ����(a), � �����(b) ��� ��� ���(f)?"

#: crypt-gpgme.c:5164
#: crypt-gpgme.c:5342
#, fuzzy
msgid "esabmfc"
msgstr "eswabf"

#: crypt-gpgme.c:5323
#: crypt-gpgme.c:5501
msgid "Failed to verify sender"
msgstr ""

#: crypt-gpgme.c:5326
#: crypt-gpgme.c:5504
#, fuzzy
msgid "Failed to figure out sender"
msgstr "������ ��� �������� �� ����� �� ������ �� ���������� ����������."

#: crypt.c:67
#, c-format
msgid " (current time: %c)"
msgstr " (������ �����: %c)"

#: crypt.c:72
#, c-format
msgid "[-- %s output follows%s --]\n"
msgstr "[-- %s ������ ����������%s) --]\n"

#: crypt.c:87
msgid "Passphrase(s) forgotten."
msgstr "�������� �� ���������."

#: crypt.c:151
msgid "Inline PGP can't be used with attachments.  Revert to PGP/MIME?"
msgstr ""

#: crypt.c:153
msgid "Mail not sent: inline PGP can't be used with attachments."
msgstr ""

#: crypt.c:161
msgid "Inline PGP can't be used with format=flowed.  Revert to PGP/MIME?"
msgstr ""

#: crypt.c:163
msgid "Mail not sent: inline PGP can't be used with format=flowed."
msgstr ""

#: crypt.c:170 cryptglue.c:110 pgpkey.c:564 pgpkey.c:753
msgid "Invoking PGP..."
msgstr "���������� �� PGP..."

#: crypt.c:179
msgid "Message can't be sent inline.  Revert to using PGP/MIME?"
msgstr ""

#: crypt.c:181 send.c:2009
msgid "Mail not sent."
msgstr "������� �� � ���������."

#: crypt.c:511
msgid "S/MIME messages with no hints on content are unsupported."
msgstr "S/MIME ����� ��� �������� �� ������������ �� �� �� ���������."

#: crypt.c:727 crypt.c:770
msgid "Trying to extract PGP keys...\n"
msgstr "���� �� ��������� �� PGP �������...\n"

#: crypt.c:750 crypt.c:790
msgid "Trying to extract S/MIME certificates...\n"
msgstr "���� �� ��������� �� S/MIME �����������...\n"

#: crypt.c:983
#, c-format
msgid ""
"[-- Error: Unknown multipart/signed protocol %s! --]\n"
"\n"
msgstr ""
"[-- ������: �������� multipart/signed �������� %s! --]\n"
"\n"

#: crypt.c:1017
#, fuzzy
msgid ""
"[-- Error: Missing or bad-format multipart/signed signature! --]\n"
"\n"
msgstr ""
"[-- ������: ������������� multipart/signed ���������! --]\n"
"\n"

#: crypt.c:1057
#, c-format
msgid ""
"[-- Warning: We can't verify %s/%s signatures. --]\n"
"\n"
msgstr ""
"[-- ��������������: %s/%s-������� �� ����� �� ����� �����������. --]\n"
"\n"

#: crypt.c:1069
msgid ""
"[-- The following data is signed --]\n"
"\n"
msgstr ""
"[-- �������� ����� �� ��������� --]\n"
"\n"

#: crypt.c:1076
msgid ""
"[-- Warning: Can't find any signatures. --]\n"
"\n"
msgstr ""
"[-- ��������������: �� ����� �� ����� �������� �������. --]\n"
"\n"

#: crypt.c:1082
msgid ""
"\n"
"[-- End of signed data --]\n"
msgstr ""
"\n"
"[-- ���� �� ����������� ����� --]\n"

#: cryptglue.c:89
msgid "\"crypt_use_gpgme\" set but not built with GPGME support."
msgstr ""

#: cryptglue.c:112
#, fuzzy
msgid "Invoking S/MIME..."
msgstr "���������� �� PGP..."

#: curs_lib.c:287
#: curs_lib.c:313
msgid "yes"
msgstr "yes"

#: curs_lib.c:288
#: curs_lib.c:314
msgid "no"
msgstr "no"

#: curs_lib.c:440
#: curs_lib.c:466
msgid "Exit Mutt?"
msgstr "������� �� �� ��������� mutt?"

#: curs_lib.c:508
#: curs_lib.c:534
msgid "Error History is disabled."
msgstr ""

#: curs_lib.c:514
#: curs_lib.c:540
#, fuzzy
msgid "Error History is currently being shown."
msgstr "������� ���� � ��������."

#: curs_lib.c:528
#: curs_lib.c:555
msgid "Error History"
msgstr ""

#: curs_lib.c:901 mutt_socket.c:608 mutt_ssl.c:599
#: curs_lib.c:931 mutt_socket.c:610 mutt_ssl.c:631
msgid "unknown error"
msgstr "��������� ������"

#: curs_lib.c:921
#: curs_lib.c:951
msgid "Press any key to continue..."
msgstr "��������� ����� ������..."

#: curs_lib.c:985
#: curs_lib.c:1015
msgid " ('?' for list): "
msgstr " (�����������'?' �� ����� �� ������): "

#: curs_main.c:61 curs_main.c:813
#: curs_main.c:65 curs_main.c:817
msgid "No mailbox is open."
msgstr "���� �������� �������� �����."

#: curs_main.c:62
#: curs_main.c:66
msgid "There are no messages."
msgstr "���� �����."

#: curs_main.c:63 mx.c:1182 pager.c:56 recvattach.c:45
#: curs_main.c:67 mx.c:1192 pager.c:56 recvattach.c:45
msgid "Mailbox is read-only."
msgstr "���� �������� ����� � ���� �� ������."

#: curs_main.c:64 pager.c:57 recvattach.c:1098
#: curs_main.c:68 pager.c:57 recvattach.c:1133
msgid "Function not permitted in attach-message mode."
msgstr "���� ������� �� ���� �� �� ������� ��� ��������� �� �����."

#: curs_main.c:65
#: curs_main.c:69
msgid "No visible messages."
msgstr "���� ������ �����."

#. L10N: %s is one of the CHECK_ACL entries below.
#: curs_main.c:111 pager.c:92
#: curs_main.c:115 pager.c:92
#, c-format
msgid "%s: Operation not permitted by ACL"
msgstr ""

#: curs_main.c:342
#: curs_main.c:346
msgid "Cannot toggle write on a readonly mailbox!"
msgstr ""
"������� �� ���������� �� ����� �������� ����� �� ���� �� ���� ��������!"

#: curs_main.c:349
#: curs_main.c:353
msgid "Changes to folder will be written on folder exit."
msgstr "��������� � ���� �������� ����� �� ����� �������� ��� ����������� �."

#: curs_main.c:354
#: curs_main.c:358
msgid "Changes to folder will not be written."
msgstr "��������� � ���� �������� ����� ���� �� ����� ��������."

#: curs_main.c:538
#: curs_main.c:542
msgid "Quit"
msgstr "�����"

#: curs_main.c:541 recvattach.c:59
#: curs_main.c:545 recvattach.c:59
msgid "Save"
msgstr "�����"

#: curs_main.c:542 query.c:49
#: curs_main.c:546 query.c:49
msgid "Mail"
msgstr "����"

#: curs_main.c:543 pager.c:1582
#: curs_main.c:547 pager.c:1582
msgid "Reply"
msgstr "�������"

#: curs_main.c:544
#: curs_main.c:548
msgid "Group"
msgstr "����. ���."

#: curs_main.c:691
#: curs_main.c:696
msgid "Mailbox was externally modified.  Flags may be wrong."
msgstr ""
"���������� ����� � ��������� �� ����� ��������. ������������ ���� �� �� "
"��������."

#: curs_main.c:694
#: curs_main.c:699
msgid "New mail in this mailbox."
msgstr "���� ����� � ���� �������� �����."

#: curs_main.c:705
#: curs_main.c:710
msgid "Mailbox was externally modified."
msgstr "���������� ����� � ��������� �� ����� ��������."

#: curs_main.c:820
#: curs_main.c:824
msgid "No tagged messages."
msgstr "���� ��������� �����."

#: curs_main.c:824 menu.c:1064
#: curs_main.c:828 menu.c:1066
msgid "Nothing to do."
msgstr "���� ����� �� �� �����."

#: curs_main.c:904
#: curs_main.c:908
msgid "Jump to message: "
msgstr "���� ��� ����� �����: "

#: curs_main.c:917
#: curs_main.c:921
msgid "Argument must be a message number."
msgstr "���������� ������ �� ���� ����� �� �����."

#: curs_main.c:949
#: curs_main.c:953
msgid "That message is not visible."
msgstr "���� ����� �� � ������."

#: curs_main.c:952
#: curs_main.c:956
msgid "Invalid message number."
msgstr "������ ����� �� �����."

#. L10N: CHECK_ACL
#: curs_main.c:966 curs_main.c:2156 pager.c:2557
#: curs_main.c:970 curs_main.c:2154 pager.c:2559
#, fuzzy
msgid "Cannot delete message(s)"
msgstr "���� ������������ �����."

#: curs_main.c:969
#: curs_main.c:973
msgid "Delete messages matching: "
msgstr "��������� �� ����� �� ������: "

#: curs_main.c:997
#: curs_main.c:1001
msgid "No limit pattern is in effect."
msgstr "���� ������� ������������� ������."

#. L10N: ask for a limit to apply
#: curs_main.c:1002
#: curs_main.c:1006
#, c-format
msgid "Limit: %s"
msgstr "������������: %s"

#: curs_main.c:1012
#: curs_main.c:1016
msgid "Limit to messages matching: "
msgstr "������������ �� �������, ���������� ��: "

#: curs_main.c:1033
#: curs_main.c:1037
msgid "To view all messages, limit to \"all\"."
msgstr ""

#: curs_main.c:1045 pager.c:2080
#: curs_main.c:1049 pager.c:2080
msgid "Quit Mutt?"
msgstr "������� �� �� ��������� mutt?"

#: curs_main.c:1135
#: curs_main.c:1139
msgid "Tag messages matching: "
msgstr "��������� �� �������, ���������� ��: "

#. L10N: CHECK_ACL
#: curs_main.c:1145 curs_main.c:2499 pager.c:2802
#: curs_main.c:1149 curs_main.c:2497 pager.c:2804
#, fuzzy
msgid "Cannot undelete message(s)"
msgstr "���� ������������ �����."

#: curs_main.c:1147
#: curs_main.c:1151
msgid "Undelete messages matching: "
msgstr "�������������� �� �������, ���������� ��: "

#: curs_main.c:1155
#: curs_main.c:1159
msgid "Untag messages matching: "
msgstr "���������� �� ������������ �� �������, ���������� ��: "

#: curs_main.c:1185
#: curs_main.c:1189
#, fuzzy
msgid "Logged out of IMAP servers."
msgstr "��������� �� �������� ��� IMAP ������..."

#: curs_main.c:1275
#: curs_main.c:1286
msgid "Open mailbox in read-only mode"
msgstr "�������� �� ���������� ����� ���� �� ������"

#: curs_main.c:1277
#: curs_main.c:1288
msgid "Open mailbox"
msgstr "�������� �� �������� �����"

#: curs_main.c:1286
#: curs_main.c:1297
#, fuzzy
msgid "No mailboxes have new mail"
msgstr "���� �������� ����� � ���� �����."

#: curs_main.c:1327 mx.c:535 mx.c:636
#: curs_main.c:1331 mx.c:535 mx.c:636
#, c-format
msgid "%s is not a mailbox."
msgstr "%s �� � �������� �����."

#: curs_main.c:1469
#: curs_main.c:1467
msgid "Exit Mutt without saving?"
msgstr "������� �� �� ��������� Mutt ��� �� �������� ���������?"

#: curs_main.c:1487 curs_main.c:1523 curs_main.c:1991 curs_main.c:2023
#: curs_main.c:1485 curs_main.c:1521 curs_main.c:1989 curs_main.c:2021
#: flags.c:303 thread.c:1026 thread.c:1082 thread.c:1151
msgid "Threading is not enabled."
msgstr "����������� �� ����� �� � ��������."

#: curs_main.c:1499
#: curs_main.c:1497
msgid "Thread broken"
msgstr ""

#: curs_main.c:1510
#: curs_main.c:1508
msgid "Thread cannot be broken, message is not part of a thread"
msgstr ""

#. L10N: CHECK_ACL
#: curs_main.c:1520
#: curs_main.c:1518
msgid "Cannot link threads"
msgstr ""

#: curs_main.c:1525
#: curs_main.c:1523
msgid "No Message-ID: header available to link thread"
msgstr ""

#: curs_main.c:1527
#: curs_main.c:1525
#, fuzzy
msgid "First, please tag a message to be linked here"
msgstr "������� ������� ���� ������� �� ��-����� ���������"

#: curs_main.c:1539
#: curs_main.c:1537
msgid "Threads linked"
msgstr ""

#: curs_main.c:1542
#: curs_main.c:1540
msgid "No thread linked"
msgstr ""

#: curs_main.c:1578 curs_main.c:1603
#: curs_main.c:1576 curs_main.c:1601
msgid "You are on the last message."
msgstr "���� � ���������� �����."

#: curs_main.c:1585 curs_main.c:1629
#: curs_main.c:1583 curs_main.c:1627
msgid "No undeleted messages."
msgstr "���� ������������ �����."

#: curs_main.c:1622 curs_main.c:1646
#: curs_main.c:1620 curs_main.c:1644
msgid "You are on the first message."
msgstr "���� � ������� �����."

#: curs_main.c:1721 menu.c:885 pager.c:2198 pattern.c:1705
#: curs_main.c:1719 menu.c:887 pager.c:2199 pattern.c:1709
msgid "Search wrapped to top."
msgstr "��������� � ��������� ������."

#: curs_main.c:1730 pager.c:2220 pattern.c:1716
#: curs_main.c:1728 pager.c:2221 pattern.c:1720
msgid "Search wrapped to bottom."
msgstr "��������� � ��������� ������."

#: curs_main.c:1774
#: curs_main.c:1772
#, fuzzy
msgid "No new messages in this limited view."
msgstr "������������ ����� �� � ������ � ���� ��������� ������"

#: curs_main.c:1776